CoursMeta
Short Description
Download CoursMeta...
Description
Algorithmes itératifs (et stochastiques) d'optimisation globale 200805
Métaheuristiques
Métaheuristiques
Auteurs
Johann Dréo
Yann Collette
THALES Research &
Renault
Technology Laboratoire mathématiques &
Métaheuristiques – 2008 05
techniques de la décision
2
/??
3
/??
Métaheuristiques – 2008 05
Métaheuristiques – 2008 05
Optimisation difficile
4
/??
Métaheuristiques – 2008 05
Optimisation difficile
5
/??
Métaheuristiques – 2008 05
Métaheuristique
6
/??
Plan
Problèmes
Métaheuristiques
Exemples Caractéristiques
Exemples Synthèse
Applications Métaheuristiques – 2008 05
Validation Exemples
7
/??
Plan Problèmes
Métaheuristiques
Exemples
Exemples Synthèse
Recherche opérationnelle Ingénierie Intelligence artificielle
Caractéristiques Applications Métaheuristiques – 2008 05
Validation Exemples
8
/??
Recherche opérationnelle Voyageur de commerce
Métaheuristiques – 2008 05
Minimiser la longueur du trajet
9
/??
Métaheuristiques – 2008 05 Dake, CCBYSA 2.5, http://fr.wikipedia.org/wiki/Image:Knapsack.svg
Recherche opérationnelle Sac à dos
Maximiser l'intérêt de la sélection d'objets
10
/??
Recherche opérationnelle Planification temporelle
Métaheuristiques – 2008 05
Déterminer un emploi du temps
11
/??
Ingénierie Aérodynamique
Métaheuristiques – 2008 05
Maximiser la portance
12
/??
Ingénierie Déplacement de bras robot
Métaheuristiques – 2008 05
Minimiser l'énergie dépensée
13
Adaptive Optimal Control for Redundantly Actuated Arms, Djordje Mitrovic, Stefan Klanke, and Sethu Vijayakumar, 2008
/??
Intelligence artificielle IA jeu vidéo
Métaheuristiques – 2008 05
Maximiser le gain
14
/??
Ingénierie Problème du pont
Métaheuristiques – 2008 05
Concours JET
15
/??
Caractéristiques des problèmes
Optimisation continue
Voisinage
Variables réelles
Implicite Fonctions
Optimisation combinatoire Métaheuristiques – 2008 05
Variables discrètes
16
Explicite Permutation
/??
http://commons.wikimedia.org/wiki/Image:Redblack_tree_insert_case_5.png
Difficultés avec les problèmes Trouver le problème
Modélisation
Métaheuristiques – 2008 05
Expression mathématique Contraintes
17
Qualification des solutions Objectifs contradictoires
/??
Difficultés avec les problèmes
Résolution
Complexité NP... Nombres de variables
Temps de calcul Fonction objectif par simulation Métaheuristiques – 2008 05
Conception/Production
18
/??
NP
Algorithme Non déterministe Résolution Polynomiale Oracle Estimation valeur polynomiale
Métaheuristiques – 2008 05
http://commons.wikimedia.org/wiki/Image:P_np_npcomplete_nphard.svg
19
/??
Plan Problèmes
Métaheuristiques
Exemples Caractéristiques
Exemples Recherche tabou Algorithmes évolutionnistes
Applications
Métaheuristiques – 2008 05
Validation Exemples
20
/??
Recuit simulé Colonies de fourmis Estimation de distribution
Synthèse
Métaheuristiques : un peu d'histoire 1954 : Barricelli, simulation évolution, optimisation
1965 : Rechenberg, stratégies d'évolution 1986 : terme métaheuristique, Fred Glover : « La recherche avec tabou peut être vue comme
une "métaheuristique", superposée à une autre
Métaheuristiques – 2008 05
heuristique. L'approche vise à éviter les optimums locaux par une stratégie d'interdiction
21
(ou, plus généralement, de pénalisation) de certains mouvements. »
1988 : conférence, algorithmes génétiques 1989 : premier logiciel A.G. Commercial 1996 : algorithmes à estimation de distribution /??
Terminologie Fonction objectif
Minimisation Monoobjectif Solution
Métaheuristiques – 2008 05
Représentation Valeur
22
Échantillon
Stochastique
Ensemble de solution
Probabiliste + temps
Voisinage
Itératif
Critère d'arrêt
/??
Plan Problèmes
Métaheuristiques
Exemples Caractéristiques
Exemples Recherche tabou Algorithmes évolutionnistes
Applications
Métaheuristiques – 2008 05
Validation Exemples
23
/??
Recuit simulé Colonies de fourmis Estimation de distribution
Synthèse
Métaheuristiques – 2008 05
Recherche tabou
24
/??
Recherche tabou
Recherche « tabou » ou « avec tabous » Liste « tabou » de mouvements interdits
Minimums locaux Voisinage Métaheuristiques – 2008 05
Initialisation Modification de solution existante
25
/??
Recherche tabou
Stop
initialisation
Métaheuristiques – 2008 05
Modification voisinage
26
/??
Oui
Non Itérer ?
Sélection du meilleur voisin
MàJ mémoire
Heuristique spécialisée
MàJ meilleure solution
Recherche tabou
Voisinage
Métaheuristiques – 2008 05
Liste tabou
27
/??
Recherche tabou
Voisinage
!
Métaheuristiques – 2008 05
Liste tabou
28
/??
Plan Problèmes
Métaheuristiques
Exemples Caractéristiques
Exemples Recherche tabou Algorithmes évolutionnistes
Applications
Métaheuristiques – 2008 05
Validation Exemples
29
/??
Recuit simulé Colonies de fourmis Estimation de distribution
Synthèse
Métaheuristiques – 2008 05
Algorithmes évolutionnistes
30
/??
http://en.wikipedia.org/wiki/Image:Ape_skeletons.png
Algorithmes évolutionnistes
1965 : stratégies d’évolution 1966 : programmation évolutionnaire Métaheuristiques – 2008 05
1975 : algorithmes génétiques
31
1980 : programmation génétique 1986 : systèmes immunitaire artificiels /??
Algorithmes évolutionnistes
Métaheuristiques les plus connus Différences historiques entre algorithmes Concepts équivalents
Algorithmes génétiques Algorithmes évolutionnaires Algorithmes évolutionnistes Métaheuristiques – 2008 05
Algorithmes stochastiques
32
Enchaînement d'opérateurs
/??
Terminologie = individu
Échantillon
= population
Valeur
= fitness
Représentation
= codage
Métaheuristiques – 2008 05
http://www.flickr.com/photos/wishymom/566394520/
33
Solution
/??
Opérateurs « Opérateurs »
Sélection
4
i=0
Croisement Mutation Métaheuristiques – 2008 05
Évaluation
34
Remplacement /??
∑ xi
One Max
01011 11111
00110
10101
11011
00000 01000
10010
00001
Opérateurs
« Opérateurs »
Sélection
01011 11111
10101
11011
Croisement
Métaheuristiques – 2008 05
Mutation
35
Évaluation Remplacement /??
00110
00000 01000
10010
00001
Opérateurs
« Opérateurs »
Sélection 10100
Croisement
10101 00001
Métaheuristiques – 2008 05
Mutation
36
Évaluation Remplacement /??
Opérateurs
« Opérateurs »
Sélection Croisement
Métaheuristiques – 2008 05
Mutation
37
Évaluation Remplacement /??
10100
10101
Opérateurs
« Opérateurs »
Sélection Croisement
Métaheuristiques – 2008 05
Mutation
38
Évaluation Remplacement /??
10101
10101
Opérateurs « Opérateurs »
11100 11001
Sélection
11101
Croisement Mutation Métaheuristiques – 2008 05
Évaluation
39
01011 11111
10101
11011
Remplacement /??
00110
00000
01000 10010
00001
Métaheuristiques – 2008 05
Algorithmes évolutionnistes
40
/??
Exemples d'opérateurs Sélection par « roulette proportionnelle »
surface proportionnelle à sa valeur
45% x1
15%
x2
20%
Problème
Métaheuristiques – 2008 05
Biais selon échelle de la fonction objectif
41
/??
20%
x3 x4
Exemple d'opérateurs Sélection par « tournoi stochastique »
k individus Le meilleur est sélectionné n fois
01011 00110
11111 11011
Métaheuristiques – 2008 05
00110
42
11011 10010 /??
< 11011
00001
00000 10101
01000
10010
10010
> 01000
Exemple d'opérateur
Mutation gaussienne
Pour tout x :
Métaheuristiques – 2008 05
x + N i i m,s
43
/??
Exemple d'opérateur Simulated Binary Crossover
ui ∈ U0,1 Métaheuristiques – 2008 05
bi = (2.ui)(1/(1+η)) si ui≤0.5
44
= (1/(1ui))(1/(1+η)) sinon 2.xi1(t+1) = (1bi).xi1(t) + (1+bi).xi2(t) 2.xi2(t+1) = (1+bi).xi1(t) + (1bi).xi2(t) /??
Exemple d'opérateur Croisement multipoint
11001010 01011100 11 | 0010 | 10 01 | 0111 | 00
Métaheuristiques – 2008 05
01 | 0010 | 00 11 | 0111 | 10
45
/??
Croisement uniforme
11001010 01011100 01110100 Masque 11001010 01011100 11011110 01001000
Plan Problèmes
Métaheuristiques
Exemples Caractéristiques
Exemples Recherche tabou Algorithmes évolutionnistes
Applications
Métaheuristiques – 2008 05
Validation Exemples
46
/??
Recuit simulé Colonies de fourmis Estimation de distribution
Synthèse
Métaheuristiques – 2008 05
Recuit simulé
47
http://commons.wikimedia.org/wiki/Image:Hot_metalwork.jpg
/??
Historique
Historique
1970 : Hastings propose l’algorithme de MetropolisHastings, 1983 : Kirkpatrick, Gelatt et Vecchi concoivent le recuit simulé
Métaheuristiques – 2008 05
1985 : indépendamment de ceuxci, Černý propose le même algorithme
48
/??
Recuit simulé Coté physique
Métaheuristiques – 2008 05
Coté optimisation
49
/??
Description classique
Méthode de descente
Si voisin meilleur, gardé Sinon, accepte aléatoirement un voisin moins bon
Métaheuristiques – 2008 05
Probabilité commandé par un paramètre T (« température ») T décroît avec le temps
50
/??
Algorithme Xcourant: point de départ T = T0 Xsuivant = voisin(Xcourant) Contrôle de la proba d’accepter une mauvaise solution
Si f(X
suivant
) rand(0,1) et f(Xsuivant)>f(Xcourant)
Métaheuristiques – 2008 05
Alors Xcourant = Xsuivant
51
Loi de décroissance de la température
T = g(T) Fin
/??
Algorithme Xcourant: point de départ T = T0
Méthode de Metropolis
Xsuivant = voisin(Xcourant) Si f(X
suivant
) rand(0,1) et f(Xsuivant)>f(Xcourant)
Métaheuristiques – 2008 05
Alors Xcourant = Xsuivant
52
T = g(T) Fin /??
MetropolisHastings Échantillonnage de distribution de probabilité
Non intégrable, sans expression analytique, non normalisée Fonction objectif → distribution de probabilité Via distribution de Boltzman
p x=
exp − f x / T
∑ exp − f y/ T y
Métaheuristiques – 2008 05
Recuit simulé → échantillonner une distribution paramétrique (T)
53
Algorithme de MetropolisHastings
n'importe quelle distribution /??
Métaheuristiques – 2008 05
Échantillonnage de distribution paramétrique
54
/??
Convergence Garantie d'atteindre l'optimum en un temps fini. En pratique :
lim pt x =1
Métaheuristiques – 2008 05
t→ ∞
55
/??
Quelques problèmes ergodique
Ergodicité
N'importe quelle solution atteignable Quasiergodicité : nombre fini de changements Voisinage
non ergodique
Convergence
Métaheuristiques – 2008 05
Quasiergodicité Décroissance par palier
56
T
Décroissance graduelle T ne décroit pas plus vite que : C/log(t) t C, constante liée à échelle fonction objectif /??
t
Métaheuristiques – 2008 05
Exemple variables continues
57
/??
http://en.wikipedia.org/wiki/Image:3dRosenbrock.png http://en.wikipedia.org/wiki/Image:Metropolis_hastings_algorithm.png
Décroissance température La loi classique: Tk = α.Tk1 Les lois adaptatives: Van Laarhoven:
T k =T k−1
1 1
Métaheuristiques – 2008 05
Huang:
58
ln 1 3 T k −1
T k =T k −1 exp Triki:
/??
− T k −1 T k −1
T k =T k−1 1−T k −1
T k−1
2
T k−1
Décroissance température
Δ(Tk)
Van Laarhoven
ln(1+δ)/3.σ(Tk)
Otten
ln(1+δ)/Cmax. σ2(Tk)
Huang
λ.σ(Tk)
Métaheuristiques – 2008 05
Loi de originale
59
/??
Revenu simulé f(x)
x p(x)
Métaheuristiques – 2008 05
T1
60
x T2 Pseuil → différents Au mieux, Pseuil = 0.95
Métaheuristiques – 2008 05
Applications
104 /?? http://commons.wikimedia.org/wiki/Image:Industry_Torrance.jpg
105 /??
Métaheuristiques – 2008 05
View more...
Comments