Méthodes arborescentes exactes et approchées

Documents pareils
Cours de Master Recherche

La NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France.

Optimisation Combinatoire (Méthodes approchées) II. Recherche Locale simple (Les bases)

Info0804. Cours 6. Optimisation combinatoire : Applications et compléments

Cours des Méthodes de Résolution Exactes Heuristiques et Métaheuristiques

Resolution limit in community detection

Stratégie de recherche adaptative en programmation par contrainte

Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes

Exemples de problèmes et d applications. INF6953 Exemples de problèmes 1

Programmation Par Contraintes

Optimisation for Cloud Computing and Big Data

Utilisation du backtrack intelligent dans un branch-and-bound Application au problème d Open-Shop

Big Data et Graphes : Quelques pistes de recherche

Contrainte de flot pour RCPSP avec temps de transfert

Big Data et Graphes : Quelques pistes de recherche

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)

En vue de l'obtention du. Présentée et soutenue par Abir BEN HMIDA SAKLY Le 12/12/2009

Algorithmes de recherche

THÈSE. présentée à l Université d Avignon et des Pays de Vaucluse pour obtenir le diplôme de DOCTORAT

ARBRES BINAIRES DE RECHERCHE

Nouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires

Problème à résoudre. min f(s) s.c. s S

Sujet 4: Programmation stochastique propriétés de fonction de recours

Cours Optimisation Partie Optimisation Combinatoire. Année scolaire Gérard Verfaillie ONERA/DCSD/CD, Toulouse

Programmation Linéaire - Cours 1

Arbres binaires de décision

Programmation linéaire

Programmation par contraintes. Laurent Beaudou

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://

Nouvelles propositions pour la résolution exacte du problème de sac à dos bi-objectif unidimensionnel en variables binaires

Quelques Algorithmes simples

introduction Chapitre 5 Récursivité Exemples mathématiques Fonction factorielle ø est un arbre (vide) Images récursives

Méthaheuristiques pour l optimisation combinatoire et l affectation sous contraintes

Annexe 6. Notions d ordonnancement.

Introduction à la théorie des graphes. Solutions des exercices

Une nouvelle approche de détection de communautés dans les réseaux sociaux

Les structures de données. Rajae El Ouazzani

Problèmes arithmétiques issus de la cryptographie reposant sur les réseaux

Trouver un vecteur le plus court dans un réseau euclidien

Algorithmes d'apprentissage

TP1 Méthodes de Monte Carlo et techniques de réduction de variance, application au pricing d options

Problèmes d ordonnancement dans les systèmes de production. Journée Automatique et Optimisation Université de Paris Mars 2003

Ordonnancement. N: nains de jardin. X: peinture extérieure. E: électricité T: toit. M: murs. F: fondations CHAPTER 1

Une comparaison de méthodes de discrimination des masses de véhicules automobiles

Organiser les informations ( approche technique )

Limites finies en un point

ALGORITHMIQUE II NOTION DE COMPLEXITE. SMI AlgoII

Algorithmique et Programmation

Le théorème de Perron-Frobenius, les chaines de Markov et un célèbre moteur de recherche

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN

Chp. 4. Minimisation d une fonction d une variable

Conception d un lecteur de musique intelligent basé sur l apprentissage automatique.

Nombres premiers. Comment reconnaître un nombre premier? Mais...

THÈSE. En vue de l obtention du DOCTORAT DE L UNIVERSITÉ DE TOULOUSE. Touria CHAFQANE BEN RAHHOU

Exercices - Polynômes : corrigé. Opérations sur les polynômes

Propriétés des options sur actions

Principe de symétrisation pour la construction d un test adaptatif

Les arbres binaires de recherche

Programmation linéaire

Chapitre 7. Récurrences

1 de 46. Algorithmique. Trouver et Trier. Florent Hivert. Mél : Florent.Hivert@lri.fr Page personnelle : hivert

Hela Boukef. To cite this version: HAL Id: tel

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test

Jean-Philippe Préaux

Chapitre VI - Méthodes de factorisation

Analyse empirique et modélisation de la dynamique de la topologie de l Internet

Rapport de stage de première année de Master Optimisation de cache d instructions

Introduction à l étude des Corps Finis

Recherche locale pour un problème d optimisation de tournées de véhicules avec gestion des stocks

La gestion de données dans le cadre d une application de recherche d alignement de séquence : BLAST.

INF 232: Langages et Automates. Travaux Dirigés. Université Joseph Fourier, Université Grenoble 1 Licence Sciences et Technologies

Quatrième partie IV. Test. Test 15 février / 71

Eléments de Théorie des Graphes et Programmation Linéaire

CH.6 Propriétés des langages non contextuels

Principes d implémentation des métaheuristiques

Laboratoire d Automatique et Productique Université de Batna, Algérie

Séminaire TEST. 1 Présentation du sujet. October 18th, 2013

FIMA, 7 juillet 2005

Pourquoi l apprentissage?

Sommaire. Introduction. I. Notions de routage a) Technologies actuelles b) Avantages et désavantages

PLANIFICATION DU RÉSEAU D ACCÈS POUR L AMÉLIORATION DE LA RENTABILITÉ DE L INFRASTRUCTURE D UN RÉSEAU FTTN

COURS EULER: PROGRAMME DE LA PREMIÈRE ANNÉE

Maîtriser les mutations

LES MÉTA-HEURISTIQUES : quelques conseils pour en faire bon usage

Parallélisme et Répartition

LE PROBLEME DU PLUS COURT CHEMIN

Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications

Développement mobile MIDP 2.0 Mobile 3D Graphics API (M3G) JSR 184. Frédéric BERTIN

Economie de l Incertain et des Incitations

Intégration de la dimension sémantique dans les réseaux sociaux

Raisonnement probabiliste

Un propagateur basé sur les positions pour le problème d Open-Shop.

Rétablissement d un réseau cellulaire après un désastre

Master of Science en mathématiques

Conception d'un réseau de transport d'électricité

Jade. Projet Intelligence Artificielle «Devine à quoi je pense»

Transcription:

Méthodes arborescentes exactes et approchées Complexité, Algorithmes Randomisés et Approchés October 8, 2015

Problème d optimisation (rappel) Définition : Nom du problème : P Paramètres génériques du problème (nombres, graphes,...) Une caractérisation de ce qu est une solution réalisable : Une instance I de P est une instanciation des paramètres génériques A chaque instance I correspond un ensemble de solutions réalisables S(I ). Une fonction objectif f Résolution (problème de minimisation) : Déterminer un algorithme A qui, pour chaque instance I détermine une solution s (I ) de S(I ) telle que : s S(I ), f (s (I )) f (s).

Exemple : le voyageur de commerce euclidien Données : plan n points dans le

Exemple : le voyageur de commerce euclidien Données : n points dans le plan Solution réalisable : Un cycle hamiltonien dans le graphe complet sous-jacent K n

Exemple : le voyageur de commerce euclidien Données : n points dans le plan Solution réalisable : Un cycle hamiltonien dans le graphe complet sous-jacent K n Fonction objectif : La longueur du cycle (que l on souhaite minimiser)

Exemple : le voyageur de commerce euclidien Données : n points dans le plan Solution réalisable : Un cycle hamiltonien dans le graphe complet sous-jacent K n Fonction objectif : La longueur du cycle (que l on souhaite minimiser) Ce problème est NP-difficile.

Trouver une solution optimale du TSP Première idée : énumérer l ensemble des solutions réalisables du TSP : (n 1)! 2 cycles possibles But : Trouver une solution optimale sans énumérer toutes les solutions.

Branch-and-bound (séparation-évaluation) Branch (brancher) Diviser (partitionner) l espace de recherche Arbre d énumération (ou arbre de recherche) Explorer l arbre de recherche

Brancher La racine de l arbre représente l ensemble des solutions. Chaque sous-arbre représente une solution partielle. Espace des solutions

Brancher La racine de l arbre représente l ensemble des solutions. Chaque sous-arbre représente une solution partielle.

Brancher La racine de l arbre représente l ensemble des solutions. Chaque sous-arbre représente une solution partielle.

Brancher La racine de l arbre représente l ensemble des solutions. Chaque sous-arbre représente une solution partielle.

Brancher La racine de l arbre représente l ensemble des solutions. Chaque sous-arbre représente une solution partielle.

Brancher : exemple sur le problème du TSP Soit 1 le premier sommet du cycle. On choisit au niveau i le i eme sommet du cycle (n i choix). 2 2 20 1 1 7 5 1 3 2 3 4 5 2 8 6 5 3 4 5 2 4 5 2 3 5 2 3 4 4 5 7 4 5 3 5 3 4 4 52 5 2 4 3 5 2 52 3 3 4 2 4 2 3

Branch-and-bound (séparation-évaluation) Branch (brancher) Diviser (partitionner) l espace de recherche Arbre d énumération (ou arbre de recherche) Explorer l arbre de recherche Bound (borner) Borne supérieure de la valeur d une solution optimale Borne inférieure de la valeur d un nœud

Borner Au noeud courant on a : une borne supérieure B sup d une solution optimale (par exemple le coût d une solution réalisable que l on a déjà rencontrée) ce que l on a déjà une borne inférieure B inf du coût de toute solution issue du noeud courant (borne inf de toute solution du sous-arbre courant) ce que l on peut espérer avoir de mieux en explorant le sous-arbre Si B inf > B sup alors on élague : on n explore pas le sous-arbre enraciné au noeud courant.

Borner : exemple sur le problème du TSP Soit G = (S, A) un graphe valué. Soit i S un sommet. Soit cout adj min1(i) le coût de la plus petite arête adjacente à i et cout adj min2(i) le coût de la 2ème plus petite arête adjacente à i. Propriété : Le coût d un cycle hamiltonien de G est 1 n 2 i=1 cout adj min1(i) + cout adj min2(i). Borne inférieure du coût d une solution dont les sommets S forment un cycle partiel = coût des arêtes du cycle partiel + cout adj min1(i) + cout adj min2(i). 1 2 i S\S

Exemple 2 2 20 5 3 1 7 1 2 8 6 5 4 5 7

Branch-and-bound (séparation-évaluation) Un algorithme de branch-and-bound pour un problème de minimisation est basé sur une procédure de branchement qui décompose le problème, et une borne inférieure pour éviter d avoir à parcourir tout l arbre.

Arbre d énumération L arbre d énumération n est pas complètement stocké en mémoire. En effet, sa taille est proportionnelle à la taille de l ensemble des solutions, qui est exponentielle. L arbre d énumération est exploré pour trouver la solution optimale. Il y a deux façons classiques d explorer l arbre : Parcours en profondeur Parcours le meilleur d abord

Explorer l arbre d énumération Parcours en profondeur Memory

Explorer l arbre d énumération Parcours en profondeur Memory Charger le problème en mémoire

Explorer l arbre d énumération Parcours en profondeur Memory Première branche = premier sous-problème

Explorer l arbre d énumération Parcours en profondeur Memory Descendre

Explorer l arbre d énumération Parcours en profondeur Memory Première feuille

Explorer l arbre d énumération Parcours en profondeur Memory Premier retour en arrière

Explorer l arbre d énumération Parcours en profondeur Memory Seconde feuille

Explorer l arbre d énumération Parcours en profondeur Memory Deuxième retour en arrière

Explorer l arbre d énumération Parcours en profondeur Memory et retourner en arrière à nouveau

Explorer l arbre d énumération Parcours en profondeur Memory et ainsi de suite...

Explorer l arbre d énumération Parcours en profondeur Memory...jusqu à la dernière feuille

Complexité La complexité temporelle est en O( S ), ce qui est généralement exponentiel en la taille du problème. La complexité en espace est en O(hn) avec n taille du problème et h hauteur de l arbre d énumération (h est polynomial en n).

Complexité La complexité temporelle est en O( S ), ce qui est généralement exponentiel en la taille du problème. La complexité en espace est en O(hn) avec n taille du problème et h hauteur de l arbre d énumération (h est polynomial en n). les feuilles intéressantes traversées pendant la recherche doivent être stockées. Si on cherche la meilleure solution, la taille de la solution est O(n). Si on cherche plusieurs bonnes solutions, la taille des solutions peut être aussi grande que la taille de S.

Explorer l arbre d énumération Parcours le meilleur d abord A chaque itération, parmi les sommets ouverts, on choisit le plus prometteur (par exemple celui qui a la borne inférieure la plus basse). Les sommets ouverts sont stockés dans un tas (priorité d un noeud = sa borne inférieure). Inconvénient : la taille du tas peut être grande.

Comment trouver une borne inférieure? Coût de la solution partielle Solution ad hoc (propriété) Relaxation du problème

Trouver une borne inférieure : relaxation du problème S

Trouver une borne inférieure : relaxation du problème S S

Trouver une borne inférieure : relaxation du problème S S

Trouver une borne inférieure : relaxation du problème S S Ignorer certaines contraintes définissant S, ou rendre ces contraintes moins fortes. Soit S le nouvel ensemble de solutions (S S ). Le minimum du problème relâché est une borne inférieure. min x S f (x) min x S f (x). On cherche un problème relâché qui est polynomial.

Exemple : TSP Un chemin hamiltonien (CH) est un chemin qui traverse tous les nœuds du graphe.

Exemple : TSP Un chemin hamiltonien (CH) est un chemin qui traverse tous les nœuds du graphe. Un CH est un arbre couvrant avec la contrainte additionnelle que l arbre doit avoir seulement deux feuilles.

Exemple : TSP Un chemin hamiltonien (CH) est un chemin qui traverse tous les nœuds du graphe. Un CH est un arbre couvrant avec la contrainte additionnelle que l arbre doit avoir seulement deux feuilles. Le problème de l arbre couvrant de poids minimum (ACPM) est une relaxation du problème du plus court CH le plus court. Le coût d un ACPM est une borne inférieure du CH de poids minimum, qui est une borne inférieure pour le TSP.

TSP : borne inf pour une solution partielle Coût d une solution partielle coût du tour partiel + coût d un arbre couvrant de poids minimum pour les noeuds qui ne sont pas couverts par le tour partiel

En pratique Plus la borne inférieure est bonne, plus le nombre de nœuds visités pendant la recherche est faible. Cependant, si la borne inférieure est meilleure, son temps de calcul peut être plus long moins de nœuds visités plus de temps passé à chaque nœud il faut faire des tests pour savoir quelle solution est la meilleure. Une bonne solution initiale est très importante.

Construire une bonne solution Algorithmes gloutons Construire une solution à partir de règles simples

Construire une bonne solution Algorithmes gloutons Construire une solution à partir de règles simples Heuristiques basées sur une relaxation du problème Construire une solution réalisable à partir d une solution relâchée qui viole certaines contraintes

Construire une bonne solution Algorithmes gloutons Construire une solution à partir de règles simples Heuristiques basées sur une relaxation du problème Construire une solution réalisable à partir d une solution relâchée qui viole certaines contraintes Branch and bound partiel Utiliser un arbre d énumération pour obtenir une bonne solution sans explorer tout l espace des solutions.

Algorithmes gloutons Un algorithme glouton peut souvent être adapté au problème traité. Il ne retourne pas l optimum mais en général la solution obtenue n est pas trop mauvaise. A chaque étape, la solution partielle courante est augmentée en ajoutant un élément tel que les contraintes ne sont pas violées. l élément minimise une règle heuristique. Cette règle exprime souvent un optimum local. On dit qu elle est myope.

Règle du PlusProcheVoisin pour le TSP

Règle du PlusProcheVoisin pour le TSP Choisir un point de départ aléatoirement

Règle du PlusProcheVoisin pour le TSP Aller vers son plus proche voisin

Règle du PlusProcheVoisin pour le TSP...et itérer

Règle du PlusProcheVoisin pour le TSP

Règle du PlusProcheVoisin pour le TSP La solution est réalisable mais pas optimale

Une autre heuristique gloutonne Comme dans l algorithme de Kruskal, connecter les points les plus proches.

Une autre heuristique gloutonne

Une autre heuristique gloutonne

Une autre heuristique gloutonne L arête peut ne pas être acceptée car le degré du nœud serait égal à 3.

Une autre heuristique gloutonne L arête la plus courte qui ne crée pas de nœud de degré 3 ni de cycle est choisie.

Une autre heuristique gloutonne

Une autre heuristique gloutonne

Une autre heuristique gloutonne

Une autre heuristique gloutonne

Une autre heuristique gloutonne

Une autre heuristique gloutonne

Une autre heuristique gloutonne

Heuristique de Clarke-Wright Cette heuristique a été initialement introduite pour le problème de tournées de véhicules (VRP). Le VRP est une généralisation du TSP dans laquelle il y a un dépôt à partir duquel tous les tours commencent et se terminent. les véhicules ont une capacité limitée : les livraisons doivent être divisées en plusieurs tournées. Pour construire un tour pour le TSP, on choisit arbitrairement une ville comme étant le dépôt et les véhicules ont une capacité illimitée.

Heuristique de Clarke-Wright Créer un tour individuel entre chaque point et le dépôt.

Heuristique de Clarke-Wright Le gain d une arête mesure la diminution de la longueur du tour obtenu en choisissant cette arête.

Heuristique de Clarke-Wright L arête avec le gain le plus important est choisie à chaque étape.

Heuristiques basées sur la relaxation du problème Trouver une relaxation du problème Le TSP euclidien est relaxé en un arbre couvrant de poids minimum

Heuristiques basées sur la relaxation du problème Trouver une relaxation du problème Le TSP euclidien est relaxé en un arbre couvrant de poids minimum Retourner une solution optimale pour le problème relâché Algorithme de Prim ou de Kruskal

Heuristiques basées sur la relaxation du problème Trouver une relaxation du problème Le TSP euclidien est relaxé en un arbre couvrant de poids minimum Retourner une solution optimale pour le problème relâché Algorithme de Prim ou de Kruskal Si la solution du problème relâché viole certaines contraintes du problème initial, réparer cette solution pour la rendre réalisable.

Construire un tour à partir d un arbre couvrant de poids minimum

Construire un tour à partir d un arbre couvrant de poids minimum

Construire un tour à partir d un arbre couvrant de poids minimum

Construire un tour à partir d un arbre couvrant de poids minimum

Construire un tour à partir d un arbre couvrant de poids minimum

Construire un tour à partir d un arbre couvrant de poids minimum

Construire un tour à partir d un arbre couvrant de poids minimum

Construire un tour à partir d un arbre couvrant de poids minimum

Construire un tour à partir d un arbre couvrant de poids minimum

Construire un tour à partir d un arbre couvrant de poids minimum

Construire un tour à partir d un arbre couvrant de poids minimum

Construire un tour à partir d un arbre couvrant de poids minimum

Construire un tour à partir d un arbre couvrant de poids minimum

Construire un tour à partir d un arbre couvrant de poids minimum

Construire un tour à partir d un arbre couvrant de poids minimum La longueur du tour retourné est inférieure ou égale à deux fois la longueur d un tour optimal.

Recherche partielle dans un arbre d énumération Le but est d utiliser une structure générale (l arbre d énumération) afin d avoir des algorithmes génériques. Au lieu de construire une seule solution, on construit plusieurs solutions en visitant plusieurs feuilles de l arbre. On a besoin d une heuristique pour évaluer à priori les différents choix représentés par les différentes branches descendant d un nœud.

Heuristique gloutonne dans un arbre de recherche La meilleure branche est dessinée comme étant la branche gauche.

Heuristique gloutonne dans un arbre de recherche La meilleure branche est dessinée comme étant la branche gauche. Choisir la meilleure branche à priori

Heuristique gloutonne dans un arbre de recherche La meilleure branche est dessinée comme étant la branche gauche. et répéter le même processus de sélection

Heuristique gloutonne dans un arbre de recherche La meilleure branche est dessinée comme étant la branche gauche.

Heuristique gloutonne dans un arbre de recherche La meilleure branche est dessinée comme étant la branche gauche.

Heuristique gloutonne dans un arbre de recherche La meilleure branche est dessinée comme étant la branche gauche.

Heuristique gloutonne dans un arbre de recherche La meilleure branche est dessinée comme étant la branche gauche. jusqu à trouver la solution

Greedy Randomized Adaptive Search Procedure Choisir la branche gauche avec la probabilité 1 p avec p < 0.5

Greedy Randomized Adaptive Search Procedure Recommencer la procédure

Greedy Randomized Adaptive Search Procedure

Greedy Randomized Adaptive Search Procedure

Greedy Randomized Adaptive Search Procedure

Greedy Randomized Adaptive Search Procedure Et choisir la meilleure

Branch-and-Greed

Branch-and-Greed?? Comment choisir entre les deux premières branches du nœud racine?

Branch-and-Greed?? 59 57 Exécuter l algorithme glouton pour chaque sous-arbre

Branch-and-Greed???? 59 57 et sélectionner la branche qui mène au sous-arbre avec la meilleure solution.

Branch-and-Greed???? 59 57 62 Exécuter à nouveau l algorithme glouton pour chaque sous-arbre du sous-arbre courant

Branch-and-Greed?????? 59 57 62 Emprunter la meilleure branche

Branch-and-Greed?????? 59 57 55 62 Jusqu à ce que le chemin rouge atteigne une feuille

Branch-and-Greed Soit H 0 l algorithme glouton basé sur un arbre d énumération. Le transparent précédent a défini une nouvelle heuristique, appellée H 1, qui appelle H 0 à chaque nœud pour choisir la meilleure branche à explorer. Plus généralement, on peut définir récursivement l heuristique H k qui appelle H k 1 à chaque nœud pour choisir la meilleure branche à explorer. Le nombre de solutions visitées par l heuristique H k est borné par un polynôme de degré k. Quand k est assez grand, l espace entier est visité.

Recherche à écarts limités (Limited Discrepancy Search) Ecart : un choix où l on n a pas sélectionné la solution à priori la meilleure. La k ieme étape explore le chemin avec k écarts.

Recherche à écarts limités (Limited Discrepancy Search) Ecart : un choix où l on n a pas sélectionné la solution à priori la meilleure. La k ieme étape explore le chemin avec k écarts. Step 0

Recherche à écarts limités (Limited Discrepancy Search) Ecart : un choix où l on n a pas sélectionné la solution à priori la meilleure. La k ieme étape explore le chemin avec k écarts. Step 0 Step 1

Recherche à écarts limités (Limited Discrepancy Search) Ecart : un choix où l on n a pas sélectionné la solution à priori la meilleure. La k ieme étape explore le chemin avec k écarts. Step 0 Step 1 Step 2

Recherche à écarts limités (Limited Discrepancy Search) Ecart : un choix où l on n a pas sélectionné la solution à priori la meilleure. La k ieme étape explore le chemin avec k écarts. Step 0 Step 1 Step 2 Step 3

Résumé : Branch-and-bound (séparation-évaluation) Branch (brancher) Diviser (partitionner) l espace de recherche Arbre d énumération (ou arbre de recherche) Explorer l arbre de recherche Bound (borner) Borne supérieure de la valeur d une solution optimale (solution réalisable) Borne inférieure de la valeur d un nœud Pour réduire (encore) le nombre de noeuds explorés : ensemble dominant, règle de dominance.

Ensemble dominant Pour certains problèmes, on peut facilement déterminer un sous-ensemble S de solutions de S tel que S contient au moins une solution optimale de S. L algorithme de branch-and-bound doit explorer S au lieu de S.

Règle de dominance On peut souvent prouver une propriété (P) qui doit être vérifiée par au moins une solution optimale du problème.

Règle de dominance On peut souvent prouver une propriété (P) qui doit être vérifiée par au moins une solution optimale du problème. En analysant une solution partielle à un nœud de l arbre de recherche, on peut quelquefois prouver que (P) ne peut pas être vérifiée par les solutions qui complètent la solution partielle courante.

Règle de dominance On peut souvent prouver une propriété (P) qui doit être vérifiée par au moins une solution optimale du problème. En analysant une solution partielle à un nœud de l arbre de recherche, on peut quelquefois prouver que (P) ne peut pas être vérifiée par les solutions qui complètent la solution partielle courante. Le nœud est dominé par une solution partielle qui satisfait (P).

Règle de dominance On peut souvent prouver une propriété (P) qui doit être vérifiée par au moins une solution optimale du problème. En analysant une solution partielle à un nœud de l arbre de recherche, on peut quelquefois prouver que (P) ne peut pas être vérifiée par les solutions qui complètent la solution partielle courante. Le nœud est dominé par une solution partielle qui satisfait (P). La propriété (P) est appelée règle de dominance.

Une règle de dominance pour le TSP Le tour partiel (chemin) (s 1 = 1, s 2,, s k ) doit être un chemin hamiltonien entre s 1 et s k dans le sous-graphe défini par les nœuds {s 1, s 2,..., s k }. lgth=41.52 lgth=45.29

Une règle de dominance pour le TSP Le tour partiel (chemin) (s 1 = 1, s 2,, s k ) doit être un chemin hamiltonien entre s 1 et s k dans le sous-graphe défini par les nœuds {s 1, s 2,..., s k }. lght=118.10 lght=118.10 159.62 163.39 lgth=41.52 lgth=45.29

Une règle de dominance pour le TSP Le tour partiel (chemin) (s 1 = 1, s 2,, s k ) doit être un chemin hamiltonien entre s 1 et s k dans le sous-graphe défini par les nœuds {s 1, s 2,..., s k }. lght=118.10 lght=118.10 159.62 163.39 lgth=41.52 lgth=45.29

Une règle de dominance pour le TSP Le tour partiel (chemin) (s 1 = 1, s 2,, s k ) doit être un chemin hamiltonien entre s 1 et s k dans le sous-graphe défini par les nœuds {s 1, s 2,..., s k }. lgth=41.52 lgth=45.29 Un tour partiel est dominé quand on peut montrer qu il existe un tour partiel plus court.