MTH 6414A Exemple de recherche avec taboux
Labyrinthe de cristal Placez les nombres 1 à 8 sur les cases de manière à ce qu’aucune case connectée n’ait de nombre consécutif. ?
La recherche local (concept de base) On assigne des valeurs aléatoires la première solution sera très probablement irréalisable On fait des “modifications” pour rendre la solution réalisable.
Solution initiale aléatoire 2 ? ? 5 1 ? ? 3 6 ? 8 ? ? 4 7 ?
Solution initiale aléatoire Coût de la solution = nombre de contraintes violées ? 2 5 ? ? 1 3 ? ? 6 8 ? ? 4 7 ? Contrainte violée
Ensuite comment procéder ? Modification : Échanger deux nombres... Oui, mais lesquels? On choisit une paire au hasard La paire qui permettra de réduire au maximum le nombre de violations
Solution initiale aléatoire 2 ? ? 5 ? 1 ? 3 ? 6 8 ? ? 4 7 ?
Table définissant les coût d’échange 1 2 3 4 5 6 7 8
Solution initiale aléatoire 2 ? ? 5 1 ? ? 3 6 ? 8 ? ? 4 7 ?
Échanger 1 & 2 1 ? ? 5 2 ? ? 3 6 ? 8 ? ? 4 7 ?
Table définissant les coût d’échange 1 2 3 4 5 6 7 8
Solution initiale aléatoire 2 ? ? 5 1 ? ? 3 6 ? 8 ? ? 4 7 ?
Échanger 1 & 3 2 ? ? 5 3 ? ? 1 6 ? 8 ? ? 4 7 ?
Table définissant les coût d’échange 1 2 3 4 5 6 7 8
Solution initiale aléatoire 2 ? ? 5 1 ? ? 3 6 ? 8 ? ? 4 7 ?
Échanger 1 & 4 2 ? ? 5 4 ? ? 3 6 ? 8 ? ? 1 7 ?
Table définissant les coût d’échange 1 2 3 4 5 6 7 8 -1
Table définissant les coût d’échange 1 2 3 4 5 6 7 8 -1 -2 -3
Table définissant les coût d’échange 1 2 3 4 5 6 7 8 -1 -2 -3
Solution courante 2 ? ? 5 1 ? ? 3 6 ? 8 ? ? 4 7 ?
Échanger 1 & 7: coût = 3 2 ? ? 5 7 ? ? 3 6 ? 8 ? ? 4 1 ?
Table définissant les coût d’échange 1 2 3 4 5 6 7 8 -1
Solution courante 2 ? ? 5 7 ? ? 3 6 ? 8 ? ? 4 1 ?
Échanger 3 & 8: coût 2 2 ? ? 5 7 ? ? 8 6 ? 3 ? ? 4 1 ?
Échanger 6 & 7: coût 1 2 ? ? 5 6 ? ? 8 7 ? 3 ? ? 4 1 ?
Table définissant les coût d’échange 1 2 3 4 5 6 7 8
Et maintenant ? Il n’y a plus de modification améliorante Jusqu’à présent nous avons fait une “descente” Solution initial: Coût 6 Échanger 1 & 7: Coût 3 Échanger 3 & 8: Coût 2 Échanger 6 & 7: Coût 1 coût modifications
Et maintenant ? Options : Recommencer d’une nouvelle solution aléatoire Continuer et choisir la moins mauvaise modification Essayer une autre méthode de recherche locale
Table définissant les coût d’échange 1 2 3 4 5 6 7 8
Échanger 1 & 2: Coût 2 1 ? ? 5 6 ? ? 8 7 ? 3 ? ? 4 2 ?
Table définissant les coût d’échange 1 2 3 4 5 6 7 8 -1
Table définissant les coût d’échange 1 2 3 4 5 6 7 8 -1
Modifications Solution initiale: Coût 6 Échanger 1 & 7: Coût 3
Modifications Solution initiale: Coût 6 Échanger 1 & 7: Coût 3
Modifications Solution initiale: Coût 6 Échanger 1 & 7: Coût 3 Échanger 1 & 2: Coût 1 … et ainsi de suite
Et maintenant ? Options : Recommencer d’une nouvelle solution aléatoire Continuer et choisir la moins mauvaise modification Essayer une autre méthode de recherche locale
Recherche avec tabou (concept de base) Une recherche locale : Conserver une liste des modifications effectuées de manière à ne pas revisiter les mêmes solutions. Dans notre exemple, nous conserverons la liste des 4 dernières paires (valeur,noeud) avant modifications.
Minimum local B E 2 ? 5 ? C F 6 ? ? 8 ? 7 3 ? A H D G 4 ? 1 ? Solution initiale: Coût 6 Échanger 1 & 7: Coût 3 Échanger 3 & 8: Coût 2 Échanger 6 & 7: Coût 1 B E 2 ? 5 ? C F 6 ? ? 8 ? 7 3 ? A H D G 4 ? 1 ?
Minimum local B E 2 ? 5 ? C F ? 6 ? 8 7 ? 3 ? A H D G ? 4 1 ?
Échanger 1 & 2: Coût 2 B E 1 ? 5 ? C F ? 6 8 ? 7 ? 3 ? A H D G ? 4 ? 2 Tabou: [(1G,2B)]
Table définissant les coût d’échange 1 2 3 4 5 6 7 8 -1
Table définissant les coût d’échange 1 2 3 4 5 6 7 8 X -1
Table définissant les coût d’échange 1 2 3 4 5 6 7 8 X -1
Échanger 3 & 5: Coût 1 B E 1 ? 3 ? C F ? 6 ? 8 7 ? 5 ? A H D G ? 4 ? 2 Tabou: [(3H,5E),(1G,2B)]
Table définissant les coût d’échange 1 2 3 4 5 6 7 8 X
Échanger 1 & 3: Coût 1 B E 3 ? 1 ? C F ? 6 ? 8 7 ? 5 ? A H D G ? 4 ? 2 Tabou: [(1B,3E),(3H,5E),(1G,2B)]
Échanger 5 & 7: Coût 1 B E 3 ? 1 ? C F ? 6 ? 8 5 ? 7 ? A H D G ? 4 ? 2 Tabou: [(5H,7F),(1B,3E),(3H,5E),(1G,2B)]
Échanger 1 & 5: Coût 1 B E 3 ? 5 ? C F ? 6 ? 8 1 ? 7 ? A H D G ? 4 ? 2 Tabou: [(1E,5F),(5H,7F),(1B,3E),(3H,5E),(1G,2B)]
Échanger 2 & 4: Coût 1 B E 3 ? 5 ? C F ? 6 ? 8 1 ? 7 ? A H D G ? 2 ? 4 Tabou: [(2G,4D),(1E,5F),(5H,7F),(1B,3E)]
Échanger 2 & 6: Coût 1 B E 3 ? 5 ? C F ? 2 ? 8 1 ? 7 ? A H D G ? 6 ? 4 Tabou: [(2D,6A),(2G,4D),(1E,5F),(5H,7F)]
Échanger 3 & 5: Coût 0 B E 5 ? 3 ? C F ? 2 8 ? 1 ? 7 ? A H D G ? 6 ? 4 Tabou: [(3B,5E),(2D,6A),(2G,4D),(1E,5F)]