SlideShare une entreprise Scribd logo
1  sur  24
Télécharger pour lire hors ligne
préparé par Moez Hammami 
1 
le Recuit Simulé
préparé par Moez Hammami 
2 
Plan (Recuit Simulé) 
•I. Présentation générale 
•II. Origines 
•III. Recuit thermique et recuit simulé 
•IV. Algorithme du recuit simulé : 
IV.1. Convergence théorique du recuit simulé : 
IV.2. Espace des configurations : 
IV.3. Règles d'acceptation : 
IV.4. Programme de recuit : 
•IV.4.1. comment initialiser un programme de recuit simulé 
•IV.4.2. Règle d’acceptation de Metropolis : 
•IV.4.3. Changement de palier de température 
•IV.4.4. Décroissance de la température 
•IV.4.5. Arrêt du programme : 
•IV.4.6. Vérifications indispensables lors des premières exécutions du programme: 
•V. Parallélisation de l'algorithme du recuit simulé : 
•VI. Application aux problèmes types d’optimisation combinatoire : 
•VII. Application aux problèmes industriels 
•VIII. Conclusion: Avantages et faiblesses de la méthode
préparé par Moez Hammami 
3 
Présentation générale 
Le recuit Simulé « Simulated Annealing » est une meta-heuristique destinée à résoudre au mieux les problèmes dits d’optimisation difficile 
Evite le piégeage dans les minima locaux de la fonction objectif 
Fonction Objectif 
configurations 
Optimum local 
Optimum global 
Inspirée par la technique expérimentale du recuit dans la métallurgie
préparé par Moez Hammami 
4 
Origine: Recuit thermique 
Chauffer le matériau et le porter à l’état liquide (énergie élevée) 
Refroidissement lent de la température en marquant des paliers de température de durée suffisante 
Refroidissement rapide de la température 
Technique de la trempe 
Etat solide cristalisé, état stable. 
Apparition de défauts dans le matériau, structure 
amorphe, état meta-stable 
Minimum absolu de l’énergie 
Minimum local d’énergie 
Transformation désordre ordre 
Figer un état désordonné, non cristalisé
préparé par Moez Hammami 
5 
Recuit thermique et recuit simulé 
L’algorithme s’appuie sur 2 résultats de la physique statistique 
1er résultat de la physique statistique 
Lorsque l’équilibre thermodynamique est atteint à une température T, la possibilité pour un système physique de posséder une énergie E est: 
P(E) = e[-E/(KB*T)] 
KB: constante de bolzman 
À Température élevée, P(E) tend vers 1 pour tous les états d’énergie 
T élevée 
KB * T  + 
-E/(KB T)  0 
e[-E/(KB*T)]  1 
DEM 
La probabilité d’accepter un état à énergie élevée est faible a faible Température 
DEM 
E élevée, T faible 
-E  - 
-E/(KB T)  - 
e[-E/(KB*T)]  0 
Même si la probabilité d’accepter un état à énergie élevée est faible, elle n’est pas nulle. 
La distribution de bolzman permet au système d’échapper au minimum local d’énergie en donnant une chance même faible de passer à un état à énergie plus élevée 
Conclusion
préparé par Moez Hammami 
6 
Recuit thermique et recuit simulé 
L’algorithme s’appuie sur 2 résultats de la physique statistique 
2ième résultat de la physique statistique 
Metropolis[1953] a établit un algorithme qui simule l’évolution du système physique vers son équilibre thermodynamique à une température donnée T 
Configuration 1 donnée (E1) 
Nouvelle configuration (E2) 
modification 
E2<E1 
non 
oui 
Accepter avec une probabilité Exp(-E/T) 
Accepter la nouvelle configuration 
Si le nombre d’itérations est suffisamment long, le système aboutit à l’équilibre thermodynamique pour la température T: 
IL aboutit à la distribution de bolzman
préparé par Moez Hammami 
7 
Recuit thermique et recuit simulé 
KirkPatrick et al 1983 proposent un algorithme qui est basé sur une analogie entre le recuit thermique 
et la résolution de problèmes d’optimisation combinatoire 
Recuit thermique 
Recuit simulé 
Les états du solide 
Les solutions réalisables 
Les énergies des états 
Les valeurs de la fonction objectif calculées sur ces solutions 
L’état à énergie minimale 
Solution optimale du problème 
Le refroidissement rapide 
Recherche locale
préparé par Moez Hammami 
8 
Algorithme du recuit simulé : 
Commencer avec une solution initiale : solution courante Température := T0 (*Température initiale*) Tant que la condition d’arret n’est pas remplie faire Pour i de 1 à N faire Calculer nouvelle solution (perturber la solution)  = coût (nouvelle solution) - coût (solution courante) si  < 0 alors conserver nouvelle solution sinon si random[0,1] < e[- /Température] alors conserver nouvelle solution fin si fin si fin pour Température =  * Température (*nouveau palier de température*) fin Tant que
préparé par Moez Hammami 
9 
Algorithme du recuit simulé : 
Température 
/Température  0 P = e[- /Température]  1 
P 
Il est plus probable qu’une valeur aléatoire entre 0 et 1 soit inférieure à P 
A température élevée la plupart des mouvements sont acceptés 
L’algorithme équivaut à une simple marche dans l’espace des configurations 
Température 
-/Température  -  P = e[- /Température]  0 
P 
Il est plus probable qu’une valeur aléatoire entre 0 et 1 soit supérieure à P 
A température faible la plupart des mouvements augmentant la température sont refusés 
L’algorithme se ramène à une amélioration itérative classique 
Température intermédiaire 
L’algorithme autorise de temps en temps des transformations qui dégradent la fonction objectif 
L’algorithme laisse une chance au système pour s’extraire d’un minimum local 
0 
1 
0 
1
préparé par Moez Hammami 
10 
Algorithme du recuit simulé : 
Abaissement de la température 
Une fois l’équilibre est atteint à une température donnée (optimum local) on abaisse légèrement la température et on effectue une nouvelle série d’itérations 
Condition d’arret 
La température a atteint une valeur presque nulle 
 ou bien plus aucun mouvement améliorant la fonction objectif n’a été accepté au cours du palier
préparé par Moez Hammami 
11 
Convergence théorique du recuit simulé : 
De nombreux mathématiciens se sont intéressés à la convergence du recuit vers l’optimum global 
[Aarts 85] [Hajek 89] 
Principales résultats des études 
Sous certaines conditions, le RS converge en probabilité vers un optimum global. ( il permet d’obtenir une solution arbitrairement proche de cet optimum avec une probabilité arbitrairement proche de 1) Ce résultat différencie le RS d’autres heuristiques concurrentes comme la recherche Tabou dont la convergence n’est pas garantie 
Condition de convergence 
•Réversibilité : le changement inverse de tout mouvement permis doit être permis 
•Connexité : tout état du système peut être atteint à partir de n’importe quel état moyennant un nombre fini de changements d’états 
Les avantages de cette formalisation 
• Elle légitime la décroissance de la température par paliers qui en pratique améliore la vitesse de convergence de l’algorithme 
• Elle permet d’établir qu’une solution de bonne qualité peut-être établie par RS en un temps polynomial pour certains problèmes NP-difficiles
préparé par Moez Hammami 
12 
Convergence théorique du recuit simulé : 
Autre Formalisation de la convergence [Hajek 88] [Hajek 89] 
• L’algorithme converge vers un optimum global avec une probabilité égale à 1 lorsque le temps t tend vers l’infini, la température T(t) ne décroît pas plus vite que C/ log(t), avec C une constante qui est liée à la profondeur des puits d’énergie (ou vallées) du problème. 
• Cette formalisation n’est pas utilisée en pratique pour deux raisons 
• Il est généralement impossible d’évaluer la profondeur des puits d’énergie du problème 
• Cette loi induit un temps de calcul notoirement prohibitif
préparé par Moez Hammami 
13 
Examen des différents composants de l’algorithme Espace des configurations 
L’espace des configurations joue un rôle fondamental dans l’éfficacité du RS pour résoudre un problème complexe d’optimisation 
Topologie 
• Elle résulte de la proximité entre deux configurations . (La distance entre deux configurations représente le nombre minimum de changements élémentaires nécessaires pour passer d’une configuration à l’autre) 
•À chaque configuration correspond un coût « énergie » 
•L’espace des configurations est caractérisé par un paysage d’énergie 
La difficulté du problème d’optimisation réside dans le fait que le paysage d’énergie comporte un grand nombre de vallées plus au moins profondes et plus au moins proches qui correspondent à des minima locaux du coût 
L’allure du paysage dépend du choix de la fonction coût et du choix des changements élémentaires Mais l’optimum global dépend essentiellement de la nature du problème considéré et très peu des choix précédents 
configuration
préparé par Moez Hammami 
14 
Examen des différents composants de l’algorithme Espace des configurations 
Dans [Siarry 89] Il a été démontré qu’un problème apparamment délicat à traiter peut être simplifié par le choix d’une topologie mieux adaptée 
•Une fonction coût adaptée 
•Une stratégie de choix des changements élémentaires adaptée 
Des recherches [Kirkpatrick 85] [Solla 86] se sont penchés sur l’établissement d’une relation entre les propriétés de l’espace de recherche et la convergence du RS Résultats La méthode du RS serait plus efficace pour traiter les problèmes d’optimisation dont les optima locaux les plus bas forment un ensemble très proche
préparé par Moez Hammami 
15 
Examen des différents composants de l’algorithme Règles d’acceptation 
Problème ! 
A basse température, le taux d’acceptation de l’algorithme devient très faible de sorte que la méthode est inéfficace 
Solution !! [Siarry 89] substituer à la règle classique de Metropolis une variante accélérée dite de thermostat. Dès que la température d ‘acceptation est tombée trop bas, la température est augmentée Remarque : Cette technique est peu utilisée en pratique.
préparé par Moez Hammami 
16 
Examen des différents composants de l’algorithme Programme du recuit 
La vitesse de convergence dépend de: 
•l’espace des configurations 
•Le programme du recuit 
Il s’agit de contrôler au mieux la température du système pour atteindre, le plus vite possible, une bonne solution 
Le programme du recuit doit préciser les valeurs des paramètres du recuit suivants 
•La température initiale t0 
•Le nombre de configurations visitées dans un palier de température 
•La loi de décroissance de la température 
•Le critère d’arrêt du programme 
Absence de résultats théoriques réellement exploitables 
Réglage empirique de ces paramètres 
? Un bon réglage
préparé par Moez Hammami 
17 
Examen des différents composants de l’algorithme Réglage des paramètres du recuit simulé 
1. Définition de la fonction objectif : 
•Intégerer certaines contraintes dans la fonction objectif 
•d’autres constituent une limitation des perturbations du problème 
2. Choix des mécanismes de perturbation d’une “configuration courante” : le calcul de la variation correspondante E de la fonction objectif doit être direct et rapide 
3. Détermination de la température initiale T0 
Faire 100 perturbations au hazard 
Évaluer la moyenne <E> des variations E correspondantes 
Choisir un taux initial d’acceptation 0 des « perturbations dégradantes », selon la qualité supposée de la configuration initiale 
•Qualité médiocre 0 = 50% (démarrage à haute température) 
•Qualité bonne 0 = 20% (démarrage à basse température) 
Déduire T0 de la relation e[- <E> /T0] = 0 
log (e[- <E> /T0] )= log(0) 
 [- <E> /T0] = log(0) 
 T0 = - <E>/ log(0)
préparé par Moez Hammami 
18 
PVC: heuristique 2-opt 
i 
i+1 
j 
j+1 
i 
i+1 
j 
j+1 
Pour calculer la valeur de la variation de la fonction objectif il suffit de calculer distance(i,j)+distance(i+1,j+1) - distance(i,i+1) - distance(j, j+1) les distances sont extraites directement de la matrice des distances
préparé par Moez Hammami 
19 
Examen des différents composants de l’algorithme Réglage des paramètres du recuit simulé 
4. Règle d’acceptation de Métropolis: 
Si E > 0 tirer un nombre r au hazard dans [0 1] et accepter la perturbation si r < e[- /Température] 
5. Changement du palier de température 
12 N perturbations acceptées 
100 N perturbations tentées 
N désignant la taille du problème 
6. Décroissance de la température Loi géométrique Tk+1 = 0.9 Tk 
7. Arrêt du programme : 3 paliers de température successifs sans aucune acceptation 
8. Vérifications indispensables lors des premières exécutions du programme 
•Le générateur de nombres réels aléatoires doit être bien uniforme 
•La qualité du résultat doit varier peu lorsque le programme est lancé plusieurs fois 
•Avec des générateurs de nombres aléatoires différents 
•Avec des configurations initiales différentes 
9. Variante du programme pour essayer de gagner du temps: Interrompre prématurément le RS et lancer un algorithme d’optimisation locale spécifique au problème pour affiner l’optimum
préparé par Moez Hammami 
20 
Parallélisation du recuit simulé 
[Kravitz 86][Roussel-Ragot 86] 
Calcul en parallèle de plusieurs configurations d’un même palier Il s’appuie sur la remarque suivante: A basse température le nombre de configurations refusés devient très important. Ces configurations sont indépendantes, donc susceptibles de se dérouler en parallèle. Une stratégie consiste à subdiviser l’algorithme en K processus élémentaires, chargés pour chacun d’eux de : 
- Calculer ΔE correspondant à un ou plusieurs mouvements élémentaires 
•- Réaliser le test de Metropolis 
A haute température 
A basse température 
1 processus  1 mouvement élémentaire 
Exécuter k processus en parallèle 
Choisir au hazard parmi celles qui ont été acceptées 
Mettre à jour la mémoire contenant la meilleure solution connue avec la nouvelle configuration 
Les mouvements acceptés deviennent très rares. Généralement, moins d’une transition acceptée pour K mouvement effectués. 
Repeter Chaque processus  Calculer ΔE correspondant à une suite de perturbation Jusqu’à ce que l’un des processus accepte une solution Mettre à jour la solution
préparé par Moez Hammami 
21 
Parallélisation du recuit simulé 
[Ghédira 93 94] 
Autres références [Diekman 92] 
Parallèlisation du RS sur des systèmes Multi-processus à mémoire globale ou à mémoires distribuées 
Associer le recuit simulé à l’éco-résolution pour les problèmes CSP 
Des agents contraintes et des agents variables cherchent à se satisfaire grâce à un dialogue et des décisions basées sur le critères de Metropolis.
préparé par Moez Hammami 
22 
Application aux problèmes d’optimisation et analyse de performance. 
Pour le problème du voyageur de commerce, comparé aux techniques classiques, Le RS est moins rapide pour N< 100 plus performant pour N> 800 
Autres problèmes "Partitionnement logique", "Couplage Minimal de points", "Affectation quadratique" la comparaison aboutit à des résultats variables selon le problème et les auteurs. 
Généralement, les résultats sont à l'avantage du RS pour les exemples de grande taille (quelques centaines de variables). 
Inconvénients : temps de calculs élevé. 
Même conclusion faite lors de l'application du RS aux problèmes industriels - Placement et routage des circuits électriques. 
-Alignements du laser et du fibre optique. 
-Problème d’allocation et de séquencement des stations d’inspection dans le domaine du contrôle de qualité
préparé par Moez Hammami 
23 
Conclusions Avantages et faiblesses 
Avantages 
Faiblesses 
RS procure généralement une solution de bonne qualité. 
C'est une méthode générale, facile à programmer, applicable à la majorité des problèmes d'optimisation, à condition que l'on puisse calculer ΔE rapidement (éviter de recalculer complètement la fonction objectif après chaque transformation) 
Nombre important de paramètres (température initiale, taux de décroissance de la température, durée des paliers de la température, critère d'arrêt du programme) 
Réglage souvent empirique des paramètres. 
Temps de calculs excessif dans certaines applications 
Des efforts pour gommer ces inconvénients sont faits dans la direction de parallélisation de l'algorithme et la prise en considération des progrès effectués par la physique statistique dans l'étude des milieux désordonnés.
préparé par Moez Hammami 
24 
Références bibliographiques 
Johann Dréo , Alain Pétrowski , Patrick Siarry , Eric Taillard , Métaheuristiques pour l'optimisation difficile, édition Eyrolles 
Khaled Ghédira, Optimisation Combinatoire par Méta heuristiques, Origines Concepts et éléments de base, Algorithmes canoniques et étendus, édition TECHNIP Juillet 2007.

Contenu connexe

Tendances

Problème De Sac à Dos
Problème De Sac à Dos Problème De Sac à Dos
Problème De Sac à Dos chagra bassem
 
Rapport (Mémoire de Master) de stage PFE pour l’obtention du Diplôme Nationa...
Rapport (Mémoire de Master) de stage PFE pour  l’obtention du Diplôme Nationa...Rapport (Mémoire de Master) de stage PFE pour  l’obtention du Diplôme Nationa...
Rapport (Mémoire de Master) de stage PFE pour l’obtention du Diplôme Nationa...Mohamed Amine Mahmoudi
 
Introduction to Machine learning
Introduction to Machine learningIntroduction to Machine learning
Introduction to Machine learningQuentin Ambard
 
La complexité des algorithmes récursives Géométrie algorithmique
La complexité des algorithmes récursivesGéométrie algorithmiqueLa complexité des algorithmes récursivesGéométrie algorithmique
La complexité des algorithmes récursives Géométrie algorithmiqueHajer Trabelsi
 
Chapitre 2 problème de plus court chemin
Chapitre 2 problème de plus court cheminChapitre 2 problème de plus court chemin
Chapitre 2 problème de plus court cheminSana Aroussi
 
Quelques points sur les métaheuristiques
Quelques points sur les métaheuristiquesQuelques points sur les métaheuristiques
Quelques points sur les métaheuristiquesBENSMAINE Abderrahmane
 
Projet de fin d étude (1)
Projet de fin d étude (1)Projet de fin d étude (1)
Projet de fin d étude (1)Sanaa Guissar
 
Intelligence Artificielle - Systèmes experts
Intelligence Artificielle - Systèmes expertsIntelligence Artificielle - Systèmes experts
Intelligence Artificielle - Systèmes expertsMohamed Heny SELMI
 
Chapitre 4-Apprentissage non supervisé (1) (1).pdf
Chapitre 4-Apprentissage non supervisé (1) (1).pdfChapitre 4-Apprentissage non supervisé (1) (1).pdf
Chapitre 4-Apprentissage non supervisé (1) (1).pdfZizoAziz
 
TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - CorrectionLilia Sfaxi
 
recherche operationnelle
recherche operationnelle recherche operationnelle
recherche operationnelle mohamednacim
 
Rapport- Conception et réalisation d'une plateforme social learning
Rapport- Conception et réalisation d'une plateforme social learningRapport- Conception et réalisation d'une plateforme social learning
Rapport- Conception et réalisation d'une plateforme social learningRouâa Ben Hammouda
 
Embarqués temps réel
Embarqués temps réelEmbarqués temps réel
Embarqués temps réelmikhailether
 
Ontology concept et applications
Ontology concept et applicationsOntology concept et applications
Ontology concept et applicationsbenouini rachid
 
présentation soutenance PFE.ppt
présentation soutenance PFE.pptprésentation soutenance PFE.ppt
présentation soutenance PFE.pptMohamed Ben Bouzid
 
Vincent T'KINDT - Aide à la décision multicritère
Vincent T'KINDT - Aide à la décision multicritèreVincent T'KINDT - Aide à la décision multicritère
Vincent T'KINDT - Aide à la décision multicritèreGroupe ARTICQUE
 
Perceptron monocouche en français
Perceptron monocouche en françaisPerceptron monocouche en français
Perceptron monocouche en françaisHakim Nasaoui
 
Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Ines Ouaz
 

Tendances (20)

Problème De Sac à Dos
Problème De Sac à Dos Problème De Sac à Dos
Problème De Sac à Dos
 
Data mining - Associativité
Data mining - AssociativitéData mining - Associativité
Data mining - Associativité
 
Rapport (Mémoire de Master) de stage PFE pour l’obtention du Diplôme Nationa...
Rapport (Mémoire de Master) de stage PFE pour  l’obtention du Diplôme Nationa...Rapport (Mémoire de Master) de stage PFE pour  l’obtention du Diplôme Nationa...
Rapport (Mémoire de Master) de stage PFE pour l’obtention du Diplôme Nationa...
 
Introduction to Machine learning
Introduction to Machine learningIntroduction to Machine learning
Introduction to Machine learning
 
La complexité des algorithmes récursives Géométrie algorithmique
La complexité des algorithmes récursivesGéométrie algorithmiqueLa complexité des algorithmes récursivesGéométrie algorithmique
La complexité des algorithmes récursives Géométrie algorithmique
 
Chapitre 2 problème de plus court chemin
Chapitre 2 problème de plus court cheminChapitre 2 problème de plus court chemin
Chapitre 2 problème de plus court chemin
 
Quelques points sur les métaheuristiques
Quelques points sur les métaheuristiquesQuelques points sur les métaheuristiques
Quelques points sur les métaheuristiques
 
Projet de fin d étude (1)
Projet de fin d étude (1)Projet de fin d étude (1)
Projet de fin d étude (1)
 
Intelligence Artificielle - Systèmes experts
Intelligence Artificielle - Systèmes expertsIntelligence Artificielle - Systèmes experts
Intelligence Artificielle - Systèmes experts
 
Chapitre 4-Apprentissage non supervisé (1) (1).pdf
Chapitre 4-Apprentissage non supervisé (1) (1).pdfChapitre 4-Apprentissage non supervisé (1) (1).pdf
Chapitre 4-Apprentissage non supervisé (1) (1).pdf
 
Présentation ERP
Présentation ERPPrésentation ERP
Présentation ERP
 
TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - Correction
 
recherche operationnelle
recherche operationnelle recherche operationnelle
recherche operationnelle
 
Rapport- Conception et réalisation d'une plateforme social learning
Rapport- Conception et réalisation d'une plateforme social learningRapport- Conception et réalisation d'une plateforme social learning
Rapport- Conception et réalisation d'une plateforme social learning
 
Embarqués temps réel
Embarqués temps réelEmbarqués temps réel
Embarqués temps réel
 
Ontology concept et applications
Ontology concept et applicationsOntology concept et applications
Ontology concept et applications
 
présentation soutenance PFE.ppt
présentation soutenance PFE.pptprésentation soutenance PFE.ppt
présentation soutenance PFE.ppt
 
Vincent T'KINDT - Aide à la décision multicritère
Vincent T'KINDT - Aide à la décision multicritèreVincent T'KINDT - Aide à la décision multicritère
Vincent T'KINDT - Aide à la décision multicritère
 
Perceptron monocouche en français
Perceptron monocouche en françaisPerceptron monocouche en français
Perceptron monocouche en français
 
Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)
 

En vedette

Simulated annealing -a informative approach
Simulated annealing -a informative approachSimulated annealing -a informative approach
Simulated annealing -a informative approachRanak Ghosh
 
Optimization Simulated Annealing
Optimization Simulated AnnealingOptimization Simulated Annealing
Optimization Simulated AnnealingUday Wankar
 
Metaheurística Simulated Annealing
Metaheurística Simulated AnnealingMetaheurística Simulated Annealing
Metaheurística Simulated AnnealingMarcos Castro
 
Simulated Annealing
Simulated AnnealingSimulated Annealing
Simulated Annealingkellison00
 
Simulated annealing.ppt
Simulated annealing.pptSimulated annealing.ppt
Simulated annealing.pptKaal Nath
 
Simulated Annealing - A Optimisation Technique
Simulated Annealing - A Optimisation TechniqueSimulated Annealing - A Optimisation Technique
Simulated Annealing - A Optimisation TechniqueAUSTIN MOSES
 

En vedette (8)

Simulated annealing
Simulated annealingSimulated annealing
Simulated annealing
 
Simulated annealing -a informative approach
Simulated annealing -a informative approachSimulated annealing -a informative approach
Simulated annealing -a informative approach
 
Optimization Simulated Annealing
Optimization Simulated AnnealingOptimization Simulated Annealing
Optimization Simulated Annealing
 
Tabu search
Tabu searchTabu search
Tabu search
 
Metaheurística Simulated Annealing
Metaheurística Simulated AnnealingMetaheurística Simulated Annealing
Metaheurística Simulated Annealing
 
Simulated Annealing
Simulated AnnealingSimulated Annealing
Simulated Annealing
 
Simulated annealing.ppt
Simulated annealing.pptSimulated annealing.ppt
Simulated annealing.ppt
 
Simulated Annealing - A Optimisation Technique
Simulated Annealing - A Optimisation TechniqueSimulated Annealing - A Optimisation Technique
Simulated Annealing - A Optimisation Technique
 

Similaire à Chapitre 2 le recuit simulé

Similaire à Chapitre 2 le recuit simulé (6)

Introduction à la théorie de graphes et application
Introduction à la théorie de graphes et applicationIntroduction à la théorie de graphes et application
Introduction à la théorie de graphes et application
 
Chapitre3 conf th
Chapitre3 conf thChapitre3 conf th
Chapitre3 conf th
 
RAPP-THERMO.pdf
RAPP-THERMO.pdfRAPP-THERMO.pdf
RAPP-THERMO.pdf
 
Gpao 6 - Ordonnancement
Gpao 6 - OrdonnancementGpao 6 - Ordonnancement
Gpao 6 - Ordonnancement
 
Presentation Internship Cythelia
Presentation Internship CytheliaPresentation Internship Cythelia
Presentation Internship Cythelia
 
Approximation de ritter
Approximation de ritterApproximation de ritter
Approximation de ritter
 

Chapitre 2 le recuit simulé

  • 1. préparé par Moez Hammami 1 le Recuit Simulé
  • 2. préparé par Moez Hammami 2 Plan (Recuit Simulé) •I. Présentation générale •II. Origines •III. Recuit thermique et recuit simulé •IV. Algorithme du recuit simulé : IV.1. Convergence théorique du recuit simulé : IV.2. Espace des configurations : IV.3. Règles d'acceptation : IV.4. Programme de recuit : •IV.4.1. comment initialiser un programme de recuit simulé •IV.4.2. Règle d’acceptation de Metropolis : •IV.4.3. Changement de palier de température •IV.4.4. Décroissance de la température •IV.4.5. Arrêt du programme : •IV.4.6. Vérifications indispensables lors des premières exécutions du programme: •V. Parallélisation de l'algorithme du recuit simulé : •VI. Application aux problèmes types d’optimisation combinatoire : •VII. Application aux problèmes industriels •VIII. Conclusion: Avantages et faiblesses de la méthode
  • 3. préparé par Moez Hammami 3 Présentation générale Le recuit Simulé « Simulated Annealing » est une meta-heuristique destinée à résoudre au mieux les problèmes dits d’optimisation difficile Evite le piégeage dans les minima locaux de la fonction objectif Fonction Objectif configurations Optimum local Optimum global Inspirée par la technique expérimentale du recuit dans la métallurgie
  • 4. préparé par Moez Hammami 4 Origine: Recuit thermique Chauffer le matériau et le porter à l’état liquide (énergie élevée) Refroidissement lent de la température en marquant des paliers de température de durée suffisante Refroidissement rapide de la température Technique de la trempe Etat solide cristalisé, état stable. Apparition de défauts dans le matériau, structure amorphe, état meta-stable Minimum absolu de l’énergie Minimum local d’énergie Transformation désordre ordre Figer un état désordonné, non cristalisé
  • 5. préparé par Moez Hammami 5 Recuit thermique et recuit simulé L’algorithme s’appuie sur 2 résultats de la physique statistique 1er résultat de la physique statistique Lorsque l’équilibre thermodynamique est atteint à une température T, la possibilité pour un système physique de posséder une énergie E est: P(E) = e[-E/(KB*T)] KB: constante de bolzman À Température élevée, P(E) tend vers 1 pour tous les états d’énergie T élevée KB * T  + -E/(KB T)  0 e[-E/(KB*T)]  1 DEM La probabilité d’accepter un état à énergie élevée est faible a faible Température DEM E élevée, T faible -E  - -E/(KB T)  - e[-E/(KB*T)]  0 Même si la probabilité d’accepter un état à énergie élevée est faible, elle n’est pas nulle. La distribution de bolzman permet au système d’échapper au minimum local d’énergie en donnant une chance même faible de passer à un état à énergie plus élevée Conclusion
  • 6. préparé par Moez Hammami 6 Recuit thermique et recuit simulé L’algorithme s’appuie sur 2 résultats de la physique statistique 2ième résultat de la physique statistique Metropolis[1953] a établit un algorithme qui simule l’évolution du système physique vers son équilibre thermodynamique à une température donnée T Configuration 1 donnée (E1) Nouvelle configuration (E2) modification E2<E1 non oui Accepter avec une probabilité Exp(-E/T) Accepter la nouvelle configuration Si le nombre d’itérations est suffisamment long, le système aboutit à l’équilibre thermodynamique pour la température T: IL aboutit à la distribution de bolzman
  • 7. préparé par Moez Hammami 7 Recuit thermique et recuit simulé KirkPatrick et al 1983 proposent un algorithme qui est basé sur une analogie entre le recuit thermique et la résolution de problèmes d’optimisation combinatoire Recuit thermique Recuit simulé Les états du solide Les solutions réalisables Les énergies des états Les valeurs de la fonction objectif calculées sur ces solutions L’état à énergie minimale Solution optimale du problème Le refroidissement rapide Recherche locale
  • 8. préparé par Moez Hammami 8 Algorithme du recuit simulé : Commencer avec une solution initiale : solution courante Température := T0 (*Température initiale*) Tant que la condition d’arret n’est pas remplie faire Pour i de 1 à N faire Calculer nouvelle solution (perturber la solution)  = coût (nouvelle solution) - coût (solution courante) si  < 0 alors conserver nouvelle solution sinon si random[0,1] < e[- /Température] alors conserver nouvelle solution fin si fin si fin pour Température =  * Température (*nouveau palier de température*) fin Tant que
  • 9. préparé par Moez Hammami 9 Algorithme du recuit simulé : Température /Température  0 P = e[- /Température]  1 P Il est plus probable qu’une valeur aléatoire entre 0 et 1 soit inférieure à P A température élevée la plupart des mouvements sont acceptés L’algorithme équivaut à une simple marche dans l’espace des configurations Température -/Température  -  P = e[- /Température]  0 P Il est plus probable qu’une valeur aléatoire entre 0 et 1 soit supérieure à P A température faible la plupart des mouvements augmentant la température sont refusés L’algorithme se ramène à une amélioration itérative classique Température intermédiaire L’algorithme autorise de temps en temps des transformations qui dégradent la fonction objectif L’algorithme laisse une chance au système pour s’extraire d’un minimum local 0 1 0 1
  • 10. préparé par Moez Hammami 10 Algorithme du recuit simulé : Abaissement de la température Une fois l’équilibre est atteint à une température donnée (optimum local) on abaisse légèrement la température et on effectue une nouvelle série d’itérations Condition d’arret La température a atteint une valeur presque nulle  ou bien plus aucun mouvement améliorant la fonction objectif n’a été accepté au cours du palier
  • 11. préparé par Moez Hammami 11 Convergence théorique du recuit simulé : De nombreux mathématiciens se sont intéressés à la convergence du recuit vers l’optimum global [Aarts 85] [Hajek 89] Principales résultats des études Sous certaines conditions, le RS converge en probabilité vers un optimum global. ( il permet d’obtenir une solution arbitrairement proche de cet optimum avec une probabilité arbitrairement proche de 1) Ce résultat différencie le RS d’autres heuristiques concurrentes comme la recherche Tabou dont la convergence n’est pas garantie Condition de convergence •Réversibilité : le changement inverse de tout mouvement permis doit être permis •Connexité : tout état du système peut être atteint à partir de n’importe quel état moyennant un nombre fini de changements d’états Les avantages de cette formalisation • Elle légitime la décroissance de la température par paliers qui en pratique améliore la vitesse de convergence de l’algorithme • Elle permet d’établir qu’une solution de bonne qualité peut-être établie par RS en un temps polynomial pour certains problèmes NP-difficiles
  • 12. préparé par Moez Hammami 12 Convergence théorique du recuit simulé : Autre Formalisation de la convergence [Hajek 88] [Hajek 89] • L’algorithme converge vers un optimum global avec une probabilité égale à 1 lorsque le temps t tend vers l’infini, la température T(t) ne décroît pas plus vite que C/ log(t), avec C une constante qui est liée à la profondeur des puits d’énergie (ou vallées) du problème. • Cette formalisation n’est pas utilisée en pratique pour deux raisons • Il est généralement impossible d’évaluer la profondeur des puits d’énergie du problème • Cette loi induit un temps de calcul notoirement prohibitif
  • 13. préparé par Moez Hammami 13 Examen des différents composants de l’algorithme Espace des configurations L’espace des configurations joue un rôle fondamental dans l’éfficacité du RS pour résoudre un problème complexe d’optimisation Topologie • Elle résulte de la proximité entre deux configurations . (La distance entre deux configurations représente le nombre minimum de changements élémentaires nécessaires pour passer d’une configuration à l’autre) •À chaque configuration correspond un coût « énergie » •L’espace des configurations est caractérisé par un paysage d’énergie La difficulté du problème d’optimisation réside dans le fait que le paysage d’énergie comporte un grand nombre de vallées plus au moins profondes et plus au moins proches qui correspondent à des minima locaux du coût L’allure du paysage dépend du choix de la fonction coût et du choix des changements élémentaires Mais l’optimum global dépend essentiellement de la nature du problème considéré et très peu des choix précédents configuration
  • 14. préparé par Moez Hammami 14 Examen des différents composants de l’algorithme Espace des configurations Dans [Siarry 89] Il a été démontré qu’un problème apparamment délicat à traiter peut être simplifié par le choix d’une topologie mieux adaptée •Une fonction coût adaptée •Une stratégie de choix des changements élémentaires adaptée Des recherches [Kirkpatrick 85] [Solla 86] se sont penchés sur l’établissement d’une relation entre les propriétés de l’espace de recherche et la convergence du RS Résultats La méthode du RS serait plus efficace pour traiter les problèmes d’optimisation dont les optima locaux les plus bas forment un ensemble très proche
  • 15. préparé par Moez Hammami 15 Examen des différents composants de l’algorithme Règles d’acceptation Problème ! A basse température, le taux d’acceptation de l’algorithme devient très faible de sorte que la méthode est inéfficace Solution !! [Siarry 89] substituer à la règle classique de Metropolis une variante accélérée dite de thermostat. Dès que la température d ‘acceptation est tombée trop bas, la température est augmentée Remarque : Cette technique est peu utilisée en pratique.
  • 16. préparé par Moez Hammami 16 Examen des différents composants de l’algorithme Programme du recuit La vitesse de convergence dépend de: •l’espace des configurations •Le programme du recuit Il s’agit de contrôler au mieux la température du système pour atteindre, le plus vite possible, une bonne solution Le programme du recuit doit préciser les valeurs des paramètres du recuit suivants •La température initiale t0 •Le nombre de configurations visitées dans un palier de température •La loi de décroissance de la température •Le critère d’arrêt du programme Absence de résultats théoriques réellement exploitables Réglage empirique de ces paramètres ? Un bon réglage
  • 17. préparé par Moez Hammami 17 Examen des différents composants de l’algorithme Réglage des paramètres du recuit simulé 1. Définition de la fonction objectif : •Intégerer certaines contraintes dans la fonction objectif •d’autres constituent une limitation des perturbations du problème 2. Choix des mécanismes de perturbation d’une “configuration courante” : le calcul de la variation correspondante E de la fonction objectif doit être direct et rapide 3. Détermination de la température initiale T0 Faire 100 perturbations au hazard Évaluer la moyenne <E> des variations E correspondantes Choisir un taux initial d’acceptation 0 des « perturbations dégradantes », selon la qualité supposée de la configuration initiale •Qualité médiocre 0 = 50% (démarrage à haute température) •Qualité bonne 0 = 20% (démarrage à basse température) Déduire T0 de la relation e[- <E> /T0] = 0 log (e[- <E> /T0] )= log(0)  [- <E> /T0] = log(0)  T0 = - <E>/ log(0)
  • 18. préparé par Moez Hammami 18 PVC: heuristique 2-opt i i+1 j j+1 i i+1 j j+1 Pour calculer la valeur de la variation de la fonction objectif il suffit de calculer distance(i,j)+distance(i+1,j+1) - distance(i,i+1) - distance(j, j+1) les distances sont extraites directement de la matrice des distances
  • 19. préparé par Moez Hammami 19 Examen des différents composants de l’algorithme Réglage des paramètres du recuit simulé 4. Règle d’acceptation de Métropolis: Si E > 0 tirer un nombre r au hazard dans [0 1] et accepter la perturbation si r < e[- /Température] 5. Changement du palier de température 12 N perturbations acceptées 100 N perturbations tentées N désignant la taille du problème 6. Décroissance de la température Loi géométrique Tk+1 = 0.9 Tk 7. Arrêt du programme : 3 paliers de température successifs sans aucune acceptation 8. Vérifications indispensables lors des premières exécutions du programme •Le générateur de nombres réels aléatoires doit être bien uniforme •La qualité du résultat doit varier peu lorsque le programme est lancé plusieurs fois •Avec des générateurs de nombres aléatoires différents •Avec des configurations initiales différentes 9. Variante du programme pour essayer de gagner du temps: Interrompre prématurément le RS et lancer un algorithme d’optimisation locale spécifique au problème pour affiner l’optimum
  • 20. préparé par Moez Hammami 20 Parallélisation du recuit simulé [Kravitz 86][Roussel-Ragot 86] Calcul en parallèle de plusieurs configurations d’un même palier Il s’appuie sur la remarque suivante: A basse température le nombre de configurations refusés devient très important. Ces configurations sont indépendantes, donc susceptibles de se dérouler en parallèle. Une stratégie consiste à subdiviser l’algorithme en K processus élémentaires, chargés pour chacun d’eux de : - Calculer ΔE correspondant à un ou plusieurs mouvements élémentaires •- Réaliser le test de Metropolis A haute température A basse température 1 processus  1 mouvement élémentaire Exécuter k processus en parallèle Choisir au hazard parmi celles qui ont été acceptées Mettre à jour la mémoire contenant la meilleure solution connue avec la nouvelle configuration Les mouvements acceptés deviennent très rares. Généralement, moins d’une transition acceptée pour K mouvement effectués. Repeter Chaque processus  Calculer ΔE correspondant à une suite de perturbation Jusqu’à ce que l’un des processus accepte une solution Mettre à jour la solution
  • 21. préparé par Moez Hammami 21 Parallélisation du recuit simulé [Ghédira 93 94] Autres références [Diekman 92] Parallèlisation du RS sur des systèmes Multi-processus à mémoire globale ou à mémoires distribuées Associer le recuit simulé à l’éco-résolution pour les problèmes CSP Des agents contraintes et des agents variables cherchent à se satisfaire grâce à un dialogue et des décisions basées sur le critères de Metropolis.
  • 22. préparé par Moez Hammami 22 Application aux problèmes d’optimisation et analyse de performance. Pour le problème du voyageur de commerce, comparé aux techniques classiques, Le RS est moins rapide pour N< 100 plus performant pour N> 800 Autres problèmes "Partitionnement logique", "Couplage Minimal de points", "Affectation quadratique" la comparaison aboutit à des résultats variables selon le problème et les auteurs. Généralement, les résultats sont à l'avantage du RS pour les exemples de grande taille (quelques centaines de variables). Inconvénients : temps de calculs élevé. Même conclusion faite lors de l'application du RS aux problèmes industriels - Placement et routage des circuits électriques. -Alignements du laser et du fibre optique. -Problème d’allocation et de séquencement des stations d’inspection dans le domaine du contrôle de qualité
  • 23. préparé par Moez Hammami 23 Conclusions Avantages et faiblesses Avantages Faiblesses RS procure généralement une solution de bonne qualité. C'est une méthode générale, facile à programmer, applicable à la majorité des problèmes d'optimisation, à condition que l'on puisse calculer ΔE rapidement (éviter de recalculer complètement la fonction objectif après chaque transformation) Nombre important de paramètres (température initiale, taux de décroissance de la température, durée des paliers de la température, critère d'arrêt du programme) Réglage souvent empirique des paramètres. Temps de calculs excessif dans certaines applications Des efforts pour gommer ces inconvénients sont faits dans la direction de parallélisation de l'algorithme et la prise en considération des progrès effectués par la physique statistique dans l'étude des milieux désordonnés.
  • 24. préparé par Moez Hammami 24 Références bibliographiques Johann Dréo , Alain Pétrowski , Patrick Siarry , Eric Taillard , Métaheuristiques pour l'optimisation difficile, édition Eyrolles Khaled Ghédira, Optimisation Combinatoire par Méta heuristiques, Origines Concepts et éléments de base, Algorithmes canoniques et étendus, édition TECHNIP Juillet 2007.