420 likes | 711 Views
Jean-Frédéric Berthelot, Paul-Alain Bugnard , Camille Capelle, Sébastien Castiel , Marion Floury , Chris Hervieux. Recuit simulé. Une métaheuristique venue de la métallurgie. Recuit réel. Matériau en fusion, à haute température Refroidissement lent, par paliers Désordre => Ordre
E N D
Jean-Frédéric Berthelot, Paul-Alain Bugnard, Camille Capelle, Sébastien Castiel, Marion Floury, Chris Hervieux Recuit simulé Une métaheuristique venue de la métallurgie.
Recuit réel • Matériau en fusion, à haute température • Refroidissement lent, par paliers • Désordre => Ordre • Minimisation de l’énergie
Analogie • Optimisation • Fonction objectif • Trouver une bonne configuration • Système physique • Energie libre • Trouver les états de basse énergie
Avantages & inconvénients • Avantages • Convergence • Ne bloque pas sur un minimum local • Inconvénients • Choix initial des paramètres
Algorithme (pseudo-code) i := i0 (* Solution initiale *)T := T0 (* Température initiale *)Tant que la condition d'arrêt n'est pas vérifiée Tant que la fin du pallier n'est pas atteinte Générer nouvelle solution jΔeij= e(j) - e(i) Si Δeij< 0 alorsi := j Sinoni :=j avec une proba de exp(-Δeij / T) Fin si Fin tant que Abaisser T Fin tant que
Convergence Asymptotique • Chaînesde Markov • Conditions de convergence
Chaînes de Markov • Une variable aléatoire X est dite chaîne de Markov si : • Une Chaîne de Markov est dite homogène si :
Conditions de convergence • Chaque chaîne de Markov homogène est de longueur fini • Les chaînes de Markov sont irréductibles et apériodiques • Seules les configurations d’énergie minimale ont une probabilité d’existence non nulle quand T tend vers 0 -> Convergence vers des solutions optimales globales asymptotique
Paramètres de l’algorithme 1 – Température initiale 2 – Modification de la température 3 – Cas d’arrêt
Valeur initiale de la température • On fait 100 perturbations et on évalue la moyenne des variations d’énergie. • On choisie un taux initiale d’acceptation selon la qualité supposé de la situation initiale • On déduit T0 de la relation de Metropolis T0 = -ΔE /ln τ0
Modification de la température • Paliers de température • 12XN perturbations sont acceptées • 100XN perturbations sont refusées • Loi de décroissance • Géométrique : Tk+1 = 0,9xTk • Arithmétique : Tk+1 = Tk - 1
Condition d’arrêt • le système devient figé => plus de permutations depuis 3 paliers • le seuil fixé est atteint
V - Amélioration du recuit simulé • Recuit simulé parallèle • Recuit simulé distribué
Recuit simulé parallèle • Plusieurs solutions sont possibles : • Architecture « Fermier/Travailleurs » proposée par Baiardi et Orlando • Architecture « Une-chaîne » proposée par Aarts • Architecture « Chaînes-Parallèles » proposée par Aarts
Architecture « Fermier/Travailleurs » Génération de configurations voisines par le processeur Fermer
Architecture « Fermier/Travailleurs » Un processeur détecte une configuration acceptable il en informe le processeur fermier. Le processeur fermier effectue la mise à jour globale du système.
Recuit simulé distribué • Subdiviser l’espace de recherche en sous-espaces • Dégager des tâches ou des rôles bien déterminés
VI - Applications 1 - Voyageur de commerce 2 - Autres applications
Problème du voyageur de commerce Il faut définir : • L’état initial • La fonction de coût • L’évolution de T° • Une modification élémentaire.
Problème du voyageur de commerce Etat initial aléatoire -Coût initiale : 33,1 Chainage des sommets
Problème du voyageur de commerce 1ère étape • On sélectionne une transformation. • On calcule le coût associé C = 25,5 • Comme le nouveau coût est plus petit, on applique la transformation.
Problème du voyageur de commerce Nouvel état obtenue - Coût à l’étape 1 : 25,5
Problème du voyageur de commerce 2ème étape • On sélectionne une autre transformation. • On calcule le coût associé C = 21,42 • Comme le nouveau coût est plus petit, on applique la transformation.
Problème du voyageur de commerce Nouvel état obtenue - Coût à l’étape 2 : 21,42
Problème du voyageur de commerce 3ème étape • On sélectionne une autre transformation. • On calcule le coût associé C = 21,96 • Le nouveau coût est plus grand. On applique la transformation avec une certaine P(T°,E)
Problème du voyageur de commerce Nouvel état obtenue - Coût à l’étape 3 : 21,96
Problème du voyageur de commerce 4ème étape • On sélectionne une autre transformation. • On calcule le coût associé C = 18,62 • Comme le nouveau coût est plus petit, on applique la transformation.
Problème du voyageur de commerce Nouvel état obtenue - Coût à l’étape 4 : 18,62
Autres applications • Placement des composants sur une carte électronique • K-partitionnement de graphes • Truc • Bidule • Construction d’images