• Aucun résultat trouvé

Algorithmes de recherche locale (2) Initiation Recherche EiLCO - ING2

N/A
N/A
Protected

Academic year: 2022

Partager "Algorithmes de recherche locale (2) Initiation Recherche EiLCO - ING2"

Copied!
40
0
0

Texte intégral

(1)

Initiation Recherche EiLCO - ING2

S´ebastien Verel [email protected]

http://www-lisic.univ-littoral.fr/~verel

Universit´e du Littoral Cˆote d’Opale Laboratoire LISIC Equipe OSMOSE

(2)

Plan

1 Introduction

2 Recherche locales

(3)

Optimization

Inputs

Search space : Set of all feasible solutions, X

Objective function : Quality criterium f :X →IR Goal

Find the best solution according to the criterium x?=argmax f

But, sometime, the set of all best solutions, good approximation of the best solution, good ’robust’ solution...

(4)

Contexte

Black box Scenario

We have only{(x0,f(x0)),(x1,f(x1)), ...} given by an ”oracle”

No information is either not available or needed on the definition of objective function

Objective function given by a computation, or a simulation Objective function can be irregular, non differentiable, non continous, etc.

Typologie des probl`emes

Espace de recherche tr`es large dont les variables sont discr`etes (cas NP-complet) : optimisation combinatoire

Espace de recherche dont les variables sont continues : optimisation num´erique

(5)

Stochatic algorithms with unique solution (Local Search)

S set of solutions (search space) f :S →IRobjective function V(s) set of neighbor’s solutions of s

(6)

Id´ ee derri` ere la strat´ egie locale

Pourquoi une strat´egie locale de recherche bas´e sur un voisinage ?

(7)

Id´ ee derri` ere la strat´ egie locale

Pourquoi une strat´egie locale de recherche bas´e sur un voisinage ?

(8)

Introduction Recherche locales

Id´ ee derri` ere la strat´ egie locale

Pourquoi une strat´egie locale de recherche bas´e sur un voisinage ?

Départ

Arrivée

R´eduire la r´esolution du probl`eme global

`

a une suite de probl`emes de petite taille Avantage : r´eduire la complexit´e

(9)

Id´ ee derri` ere la strat´ egie locale

Pourquoi une strat´egie locale de recherche bas´e sur un voisinage ?

Départ

Arrivée Optimum

global

R´eduire la r´esolution du probl`eme global

`

a une suite de probl`emes de petite taille Avantage : r´eduire la complexit´e

Risque : ne pas aboutir `a une solution optimale

(10)

Concevoir et impl´ ementer une recherche locale

Points critiques dans la conception S, codage des solutions

f :S →IR, ”bonne” mesure de la qualit´e des solutions V, les voisins doivent ˆetre ”voisins par rapport `af” S´election du voisin, crit`ere d’acceptation

Crit`ere d’arrˆet (algorithme anytime, non)

Introduction d’une expertise particuli`ere sur un probl`eme Points critiques dans l’impl´ementation

Choix des structures de donn´ees (complexit´e) Evaluation incr´ementale (complexit´e de l’´evaluation) G´en´erateur al´eatoire

...

(11)

Points critiques

Codage des solutions

Codage plus ou moins redondant,

Introduction dans le codage de connaissances au probl`eme, Complexit´e du codage, de l’´evaluation

Voisinage

Taille (nombre de voisins) : ]V(s)

Continuit´e : Pour touts ∈ S et s0 ∈ V(s), Pr(|f(s0)−f(s)| ≤) est grande

Probabilit´e d’am´elioration de la solution grande : Pr({s0 ∈ V(s) :f(s0)>f(s)})

Fonction ´evaluation (fitness)

Fonction f doit ˆetre un guide vers l’optimalit´e : Plus f(x) est grand, plus x est proche de l’optimum.

Fonction f ne doit pas ˆetre ”trompeuse”

(12)

Recherche Locale Al´ eatoire (marche al´ eatoire)

Heuristique d’explorationmaximale Recherche locale al´eatoire

Marche al´eatoire Choisir solution initiales ∈ S

Evaluer s avecf repeat

choisirs0 ∈ V(s) al´eatoirement Evaluer s0 avecf

s ←s0

until Nbr d’´eval. ≤maxNbEval Algorithme inutilisable en pratique Algorithme de comparaison

Op´erateur local de base de nombreuses m´etaheuristiques

(13)

Hill-Climber (HC)

Heuristique d’exploitation maximale.

Hill Climber (best-improvement)

Choisir solution initiales ∈ S Evaluer s avecf

repeat

Choisirs0 ∈ V(s) telle quef(s0) est maximale if s0 strictement meilleur que s then

s ←s0 end if

until s optimum local

Algorithme de comparaison

Op´erateur local de base de m´etaheuristique

(14)

Hill-Climber (HC)

Quel est l’inconv´enient majeur du Hill-Climbing ?

(15)

Optimum local

Optimum local

Etant donn´e (S,f,V),f `a maximiser.

x? est un optimum local ssi pour toutx ∈ V(x?),f(x)≤f(x?)

Optimum local strict

Etant donn´e (S,f,V),f `a maximiser

x? est un optimum local ssi pour toutx ∈ V(x?),f(x)<f(x?)

(16)

Hill-Climber (HC)

Peut-on imaginer des situations o`u ce n’est qu’un inconv´enient relatif ?

(17)

Optimum local

Exercice

Trouver les maximum locaux (strict et non strit)

(18)

Metaheuristics

Random search / Hill Climbing

Algorithm 1 Random walk Choose randomly initial solu- tion s ∈ S

repeat

Choose s0 ∈ V(s) randomly s ←s0

until ...

Algorithm 2 Hill-climbing Choose randomly initial solu- tion s ∈ S

repeat

Choose s0 ∈ V(s) such as f(s0) is maximal

if f(s0) is better than f(s) then

s ←s0 end if

untils local optimum

(19)

Metaheuristics

Random search / Hill Climbing

Random walk

Objective function

local optimum

search space

maximal exploration , diversification

Hill-climbing

Objective function

local optimum

search space

maximal exploitation , intensification Compromis Exploration / Exploitation

Escape from local optima, etc.

=⇒ simulated annealing, tabu search, Iterated Local Searc

(20)

Recuit Simul´ e (Simulated Annealing)

Utilis´e depuis les ann´ees 80,

Metropolis (1953) simulation du refroidissement de mat´eriaux (Thermodynamique)

Kirkpatrick et al (IBM 1983) utilisation pour la r´esolution de probl`eme d’optimisation.

But: ´echapper aux optima locaux

Principe: probabilit´e non nulle de s´election d’une solution voisine d´egrad´ee

(21)

Recuit Simul´ e : analogie

Syst`eme physique Probl`eme d’optimisation Energie fonction objectif Etats du syst`eme solution Etats de basse ´´ energie bonne solution

Temp´erature param`etre de contrˆole

Solutions Performance

Optimum local

(22)

Recuit Simul´ e

Choisir solution initiales ∈ S et temperature initialeT repeat

choisir al´eatoirements0 ∈ V(s), ∆ =f(s0)−f(s) if ∆>0 then

s ←s0 else

u nombre al´eatoire de [0,1]

if u <eT then s ←s0 end if end if

update temperature T until Crit`ere d’arrˆet v´erifi´e

(23)

Recuit Simul´ e : remarques

Si ∆<0 alors la probabilit´e exp(T) est proche de 0 lorsque : la diff´erence |∆ =f(s0)−f(s)|est grande

la temperature est petite

Cons´equences :

lorsque temp´erature grande (d´ebut de la recherche) :

−→ recherche al´eatoire

lorsque temp´erature petite (fin de la recherche) :

−→ Hill-Climbing

(24)

Recuit Simul´ e : temp´ erature initiale

Evaluer ∆0 =f(s00)−f(s0) :

Choisirn (grand si possible) solutions al´eatoires initiales s0 et une solution voisine s00

calculer la moyenne de ∆0 sur l’´echantillon

Temp´erature initialeT0 telle queτ0 =e∆0T0 d´esir´e :

qualit´e “m´ediocre” (τ0 = 0.50) : d´emarrage `a haute temp´erature qualit´e “bonne” (τ0 = 0.20) : d´emarrage `a basse temp´erature

(25)

Recuit Simul´ e : d´ ecroissance de “temp´ erature”

d´ecroissance suivant une loi g´eom´etriqueTk+1 =αTk

souvent 0.8≤α <1.0

Changement par pallier de temp´erature suivant l’une des deux conditions :

12.N perturbations accept´ees (mouvements de solution) 100.N perturbations tent´ees (mouvement ou non mouvement) o`u N est un param`etre qui d´ecrit la taille du probl`eme (nombre de villes, de variables...)

(26)

Recuit Simul´ e : Crit` ere d’arrˆ et

Arrˆet apr´es 3 palliers successifs sans aucune acceptation.

(27)

Recuit Simul´ e : Remarques

Toutes ces indications ne sont pas universelles : L’analyse du probl`eme et l’exp´erience de concepteur permettent de les adapter

V´erifier votre g´en´erateur al´eatoire

La qualit´e du r´esultat doit d´ependre “peu” de l’ex´ecution de l’algorithme

Premi`eres Applications : dans le placement de circuits ´electroniques

(28)

Recuit Simul´ e : Bibliographie

E. Aarts, J. Korst : ”Simulated Annealing and Boltzmann machine” John Wiley, New-York 1989

P. Siarry : ”La m´ethode du recuit simul´e : th´eorie et application”

ESPCI - IDSET , 10 rue Vauquelin, Paris 1989

(29)

Recherche Tabou (Tabu Search)

Introduite par Glover en 1986 :

”Future paths for Integer Programming and Links to Artificial Intelligence”, Computers and Operations Research, 5 :533-549, 1986.

But: ´echapper aux optima locaux

Principe: Introduction d’une notion de m´emoire dans la strat´egie d’exploration

Interdiction de reprendre des solutions d´ej`a (ou r´ecemment) rencontr´ees

(30)

Recherche Tabou (Tabu Search)

Choisir solution initiales ∈ S Initialiser Tabou M

repeat

choisirs0 ∈ V(s) telle que :

( f(s0) meilleure solution de V(s) ET Crit`ere d’aspiration v´erifi´e )

OU f(s0) meilleure solution de V(s) non taboue s ←s0

update Tabou M until Crit`ere d’arrˆet v´erifi´e

(31)

Recherche Tabou : m´ emoire des tabous

Les tabous sont souvent des mouvements tabous pendant une dur´ee

exemple : probl`eme maxsat avecn = 6 M = (0,3,0,0,0,0)

le deuxi`eme bit ne peut ˆetre modifi´e pendant 3 it´erations.

M = (1,2,0,0,2,5) seuls bits non tabou 3 et 4

Lorsqu’un mouvement est effectu´e : interdiction pendantn it´erations

(32)

Exercice Tabou

Exercice

Ex´ecuter un Tabou sur un probl`eme MAX-SAT.

(33)

Recherche Tabou : m´ emoire des tabous

Lorsqu’un mouvement est effectu´e : interdiction pendantn it´erations Sin trop faible, tabou peu efficace

Sin trop grand, les solutions sont “`a flanc de coteau”.

−→ Strat´egie de diversification

(34)

Recherche Tabou : M´ emoire ` a long terme

Statistique sur les mouvements :

Rep´erer les mouvements trop utilis´es (difficult´e de recherche, optimum local...)

Fr´equence freq(m) d’utilisation d’un mouvementm :

p´enalisation du mouvementm par ajout d’interdiction en fonction defreq(m).

(35)

Recherche Tabou : Crit` ere d’aspiration

Enlever le caract`ere tabou d’une solution :

Lorsque la solution est la meilleure jamais rencontr´ee

(36)

Recherche Tabou : Bibliographie

Gloveret al : ”Tabu Search” Kluwer Academic Publishers, 1997

(37)

Iterated Local Search

Principe

Une fois la solution courante dans un optimum local, Perturbation (grande modification) de la solution courante pour initier une nouvelle recherche locale `a partir de celle-ci.

(38)

Iterated Local Search (ILS)

Algorithme

Choisir solution initiales ∈ S s ← localSearch(s)

repeat

s0 ←perturbation(s) s0 ← localSearch(s0) Si accept(s,s0) Alors

s ←s0 FinSi

until Crit`ere d’arrˆet v´erifi´e

(39)

Travaux pratiques

Comparer les performances du recuit simul´e et l’Iterated local search sur le probl`eme knapsack

(40)

Conclusion

Probl`emes d’optimisation combinatoire fr´equents dans l’industrie (et fondamentaux en informatique th´eorique) M´etaheuristiques de recherche locale :

−→ Recherche al´eatoire

−→ Hill-climbing Best-improvment ou first-ascent

−→ Recuit simul´e

−→ Recherche tabou

−→ Iterated Local Search

Paysage de Fitness : m´etaphore qui permet

−→ l’analyse du lien entre m´etaheurisque et probl`eme

−→ imaginer de nouvelles metaheurisques (par ex. NILS) Propri´et´e principale :

−→ rugosit´e : optima locaux, structure de corr´elation

−→ neutralit´e : r´eseau de neutralit´e

Références

Documents relatifs

De fait, le krigeage, calculé globalement à partir d’une situation aussi hétérogène, améliore très peu les performances des régressions locales et entraîne

– GWW-LS g`ere plusieurs param`etres : le nombre B de particules, un param`etre T utilis´e pour baisser le seuil, la longueur S de la marche, et les param`etres addi- tionnels de

De fait, le krigeage, calculé globalement à partir d’une situation aussi hétérogène, améliore très peu les performances des régressions locales et entraîne

Le problème est que les équipes de recherche académique ont beaucoup moins de contraintes, et si elles investissent dans un sujet, elles le maîtrisent plus vite que nous…

Une fois la solution courante dans un optimum local, Perturbation (grande modification) de la solution courante pour initier une nouvelle recherche locale ` a partir de

M´ ethode : Pour un nombre d’´evaluation fix´e, ex´ecuter plusieurs fois la recherche al´eatoire (au moins 30 fois), puis calculer les statistiques de la qualit´e des

Introduction Probl` emes d’optimisation combinatoire Probl` emes d’optimisation num´ erique Optimisation.. Voyageur de

1) chaque descente sur la donnée bruitée est suivie par une descente effectuée sur la donnée non bruitée. 2) la configuration courante est régulièrement remplacée par la