Coloration de graphe
Transcription
Coloration de graphe
Coloration de graphe méthodes, applications et variantes Alexandre Gondran ÉNAC Laboratoire MAIAA [email protected] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 1 / 47 Plan 1 2 Problème de coloration de graphe 1 Quelques définitions 2 Quelques applications 3 Principales méthodes de résolution Exemples d’applications et variantes 1 Aviation civile 2 Télécommunications A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 2 / 47 k-coloration du graphe G = (V, E) k-coloration de G graphe G = (V, E) V : ensemble des sommets E : ensemble des arêtes k : nombre de couleurs c:V v → {1, 2, ..., k} 7→ c(v) Définitions k-coloration légale : respect des contraintes : c(vi ) 6= c(vj ), ∀(vi , vj ) ∈ E G est k-coloriable s’il admet une k-coloration légale Le nombre chromatique χ(G) est le plus petit entier k tel que G est k-coloriable Une classe de couleur est un ensemble des sommets coloriés de la même couleur Un stable est un ensemble de sommets non adjacents ⇒ une k-coloration légale = un partitionnement du graphe en k stables A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 3 / 47 k-coloration du graphe G = (V, E) k-coloration de G 3-coloration légale V : ensemble des sommets E : ensemble des arêtes k : nombre de couleurs c:V v → {1, 2, ..., k} 7→ c(v) Définitions k-coloration légale : respect des contraintes : c(vi ) 6= c(vj ), ∀(vi , vj ) ∈ E G est k-coloriable s’il admet une k-coloration légale Le nombre chromatique χ(G) est le plus petit entier k tel que G est k-coloriable Une classe de couleur est un ensemble des sommets coloriés de la même couleur Un stable est un ensemble de sommets non adjacents ⇒ une k-coloration légale = un partitionnement du graphe en k stables A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 3 / 47 k-coloration du graphe G = (V, E) k-coloration de G 3-coloration non légale V : ensemble des sommets E : ensemble des arêtes k : nombre de couleurs c:V v → {1, 2, ..., k} 7→ c(v) Définitions k-coloration légale : respect des contraintes : c(vi ) 6= c(vj ), ∀(vi , vj ) ∈ E G est k-coloriable s’il admet une k-coloration légale Le nombre chromatique χ(G) est le plus petit entier k tel que G est k-coloriable Une classe de couleur est un ensemble des sommets coloriés de la même couleur Un stable est un ensemble de sommets non adjacents ⇒ une k-coloration légale = un partitionnement du graphe en k stables A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 3 / 47 k-coloration du graphe G = (V, E) k-coloration de G arrêtes en conflit V : ensemble des sommets E : ensemble des arêtes k : nombre de couleurs c:V v → {1, 2, ..., k} 7→ c(v) Définitions k-coloration légale : respect des contraintes : c(vi ) 6= c(vj ), ∀(vi , vj ) ∈ E G est k-coloriable s’il admet une k-coloration légale Le nombre chromatique χ(G) est le plus petit entier k tel que G est k-coloriable Une classe de couleur est un ensemble des sommets coloriés de la même couleur Un stable est un ensemble de sommets non adjacents ⇒ une k-coloration légale = un partitionnement du graphe en k stables A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 3 / 47 k-coloration du graphe G = (V, E) k-coloration de G sommets en conflit V : ensemble des sommets E : ensemble des arêtes k : nombre de couleurs c:V v → {1, 2, ..., k} 7→ c(v) Définitions k-coloration légale : respect des contraintes : c(vi ) 6= c(vj ), ∀(vi , vj ) ∈ E G est k-coloriable s’il admet une k-coloration légale Le nombre chromatique χ(G) est le plus petit entier k tel que G est k-coloriable Une classe de couleur est un ensemble des sommets coloriés de la même couleur Un stable est un ensemble de sommets non adjacents ⇒ une k-coloration légale = un partitionnement du graphe en k stables A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 3 / 47 k-coloration du graphe G = (V, E) k-coloration de G 3-coloration légale V : ensemble des sommets E : ensemble des arêtes k : nombre de couleurs c:V v → {1, 2, ..., k} 7→ c(v) Définitions k-coloration légale : respect des contraintes : c(vi ) 6= c(vj ), ∀(vi , vj ) ∈ E G est k-coloriable s’il admet une k-coloration légale Le nombre chromatique χ(G) est le plus petit entier k tel que G est k-coloriable Une classe de couleur est un ensemble des sommets coloriés de la même couleur Un stable est un ensemble de sommets non adjacents ⇒ une k-coloration légale = un partitionnement du graphe en k stables A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 3 / 47 k-coloration du graphe G = (V, E) k-coloration de G 3-coloration légale V : ensemble des sommets E : ensemble des arêtes k : nombre de couleurs c:V v → {1, 2, ..., k} 7→ c(v) Définitions k-coloration légale : respect des contraintes : c(vi ) 6= c(vj ), ∀(vi , vj ) ∈ E G est k-coloriable s’il admet une k-coloration légale Le nombre chromatique χ(G) est le plus petit entier k tel que G est k-coloriable Une classe de couleur est un ensemble des sommets coloriés de la même couleur Un stable est un ensemble de sommets non adjacents ⇒ une k-coloration légale = un partitionnement du graphe en k stables A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 3 / 47 k-coloration du graphe G = (V, E) k-coloration de G 3-coloration légale V : ensemble des sommets E : ensemble des arêtes k : nombre de couleurs c:V v → {1, 2, ..., k} 7→ c(v) Définitions k-coloration légale : respect des contraintes : c(vi ) 6= c(vj ), ∀(vi , vj ) ∈ E G est k-coloriable s’il admet une k-coloration légale Le nombre chromatique χ(G) est le plus petit entier k tel que G est k-coloriable Une classe de couleur est un ensemble des sommets coloriés de la même couleur Un stable est un ensemble de sommets non adjacents ⇒ une k-coloration légale = un partitionnement du graphe en k stables A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 3 / 47 k-coloration du graphe G = (V, E) k-coloration de G 3-coloration légale V : ensemble des sommets E : ensemble des arêtes k : nombre de couleurs c:V v → {1, 2, ..., k} 7→ c(v) Définitions k-coloration légale : respect des contraintes : c(vi ) 6= c(vj ), ∀(vi , vj ) ∈ E G est k-coloriable s’il admet une k-coloration légale Le nombre chromatique χ(G) est le plus petit entier k tel que G est k-coloriable Une classe de couleur est un ensemble des sommets coloriés de la même couleur Un stable est un ensemble de sommets non adjacents ⇒ une k-coloration légale = un partitionnement du graphe en k stables A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 3 / 47 k-coloration du graphe G = (V, E) k-coloration de G 3-coloration légale V : ensemble des sommets E : ensemble des arêtes k : nombre de couleurs c:V v → {1, 2, ..., k} 7→ c(v) Problèmes Problème de coloration de graphe : trouver χ(G) ⇒ NP-difficile Problème de k-coloration : pour k donné, G est-il k-coloriable ? ⇒ NP-complet (pour k > 2) A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 3 / 47 Plan 1 2 Problème de coloration de graphe 1 Quelques définitions 2 Quelques applications 3 Principales méthodes de résolution Exemples d’applications et variantes 1 Aviation civile 2 Télécommunications A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 4 / 47 Applications : allocation de ressources rares Emplois du temps Allocation de créneaux horaires à des événements : cours, examens... Sommets : les événements Arêtes : les contraintes; deux événements ne peuvent se dérouler simultanément Couleurs : les créneaux horaires ⇒ Minimiser la durée totale des événements A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 5 / 47 Applications : allocation de ressources rares Allocation de fréquences dans les réseaux GSM Attribuer aux antennes relais des bandes de fréquences pour communiquer avec les usagers. Sommets : les antennes relais Arêtes : entre deux antennes trop proches géographiquement l’une de l’autre (niveau d’interférence trop important) Couleurs : les canaux de fréquences radio ⇒ Minimiser le nombre de fréquences utilisées ou pour un nombre de fréquences donné minimiser les interférences Beaucoup de contraintes supplémentaires sur les interférences et la qualité de service A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 6 / 47 Applications : allocation de ressources rares Allocation de niveaux de vol Attribuer un niveau de vol aux avions pour éviter les conflits aériens. Sommets : les avions Arêtes : entre deux avions en conflits (ne respectant pas les distances de sécurité) Couleurs : les niveaux de vol ⇒ Minimiser le nombre de niveaux de vol utilisés A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 7 / 47 Applications : allocation de ressources rares Coloration de carte géographique Sommets : les départements Arêtes : entre deux départements frontaliers ⇒ colorier en 4 couleurs Sudoku, carré latin... Compléter une grille de sudoku Sommets : les cases de la grille Arêtes : entre deux cases de la même ligne, même colonne et même carré Couleurs : les numéros ⇒ Existence d’une solution à partir d’une solution partielle A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 8 / 47 Plan 1 2 Problème de coloration de graphe 1 Quelques définitions 2 Quelques applications 3 Principales méthodes de résolution 1 Stratégies de résolution 2 Principales approches Exemples d’applications et variantes 1 Aviation civile 2 Télécommunications A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 9 / 47 Stratégies de résolution Définir l’espace de recherche Nombre de couleurs disponibles k est fixe ou pas Solutions légales ou non légales Solutions complètes ou partielles 4 stratégies principales [Galinier et Hetz 06] Stratégies légales : solutions légales et k non fixé Stratégies légales partielles et à k fixe : solutions partielles et légales et k fixé Stratégies de pénalisation à k fixe : solutions non légales et k fixé Stratégies de pénalisation : solutions non légales et k non fixé A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 10 / 47 Stratégies de résolution Définir l’espace de recherche Nombre de couleurs disponibles k est fixe ou pas Solutions légales ou non légales Solutions complètes ou partielles 4 stratégies principales [Galinier et Hetz 06] Stratégies légales : solutions légales et k non fixé minimiser k s.c. contraintes solutions complètes Stratégies légales partielles et à k fixe : solutions partielles et légales et k fixé Stratégies de pénalisation à k fixe : solutions non légales et k fixé Stratégies de pénalisation : solutions non légales et k non fixé A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 10 / 47 Stratégies de résolution Définir l’espace de recherche Nombre de couleurs disponibles k est fixe ou pas Solutions légales ou non légales Solutions complètes ou partielles 4 stratégies principales [Galinier et Hetz 06] Stratégies légales : solutions légales et k non fixé Stratégies légales partielles et à k fixe : solutions partielles et légales et k fixé minimiser nbre de sommets non coloriés s.c. contraintes k couleurs max Stratégies de pénalisation à k fixe : solutions non légales et k fixé Stratégies de pénalisation : solutions non légales et k non fixé A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 10 / 47 Stratégies de résolution Définir l’espace de recherche Nombre de couleurs disponibles k est fixe ou pas Solutions légales ou non légales Solutions complètes ou partielles 4 stratégies principales [Galinier et Hetz 06] Stratégies légales : solutions légales et k non fixé Stratégies légales partielles et à k fixe : solutions partielles et légales et k fixé Stratégies de pénalisation à k fixe : solutions non légales et k fixé minimiser nbre de contraintes violées s.c. solutions complètes k couleurs max Stratégies de pénalisation : solutions non légales et k non fixé A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 10 / 47 Stratégies de résolution Définir l’espace de recherche Nombre de couleurs disponibles k est fixe ou pas Solutions légales ou non légales Solutions complètes ou partielles 4 stratégies principales [Galinier et Hetz 06] Stratégies légales : solutions légales et k non fixé Stratégies légales partielles et à k fixe : solutions partielles et légales et k fixé Stratégies de pénalisation à k fixe : solutions non légales et k fixé Stratégies de pénalisation : solutions non légales et k non fixé minimiser nbre de contraintes violées et k s.c. solutions complètes A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 10 / 47 Stratégies de résolution Autres stratégies Orientation relative des sommets - graphe orienté sans cycle [Gendron et al.07] Théorème [Vitaver 62]: la longueur du plus long chemin dans une orientation d’un graphe est supérieure ou égale à son nombre chromatique. Orientation totale des sommets - [Davis 91] Graphe simple A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 11 / 47 Stratégies de résolution Autres stratégies Orientation relative des sommets - graphe orienté sans cycle [Gendron et al.07] Théorème [Vitaver 62]: la longueur du plus long chemin dans une orientation d’un graphe est supérieure ou égale à son nombre chromatique. Orientation totale des sommets - [Davis 91] Graphe avec une orientation sans cycle Couleurs numérotées A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 11 / 47 Stratégies de résolution Autres stratégies Orientation relative des sommets - graphe orienté sans cycle [Gendron et al.07] Théorème [Vitaver 62]: la longueur du plus long chemin dans une orientation d’un graphe est supérieure ou égale à son nombre chromatique. Orientation totale des sommets - [Davis 91] Plus long chemin : 5 sommets ⇒ coloration en 5 couleurs Couleurs numérotées A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 11 / 47 Stratégies de résolution Autres stratégies Orientation relative des sommets - graphe orienté sans cycle [Gendron et al.07] Théorème [Vitaver 62]: la longueur du plus long chemin dans une orientation d’un graphe est supérieure ou égale à son nombre chromatique. Orientation totale des sommets - [Davis 91] Plus long chemin : 3 sommets ⇒ coloration en 3 couleurs Couleurs numérotées A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 11 / 47 Stratégies de résolution Autres stratégies Orientation relative des sommets - graphe orienté sans cycle [Gendron et al.07] Théorème [Vitaver 62]: la longueur du plus long chemin dans une orientation d’un graphe est supérieure ou égale à son nombre chromatique. Orientation totale des sommets - [Davis 91] Couleurs numérotées Ordre de coloration des sommets Règle : colorier les sommets avec la plus petite couleur disponible A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 11 / 47 Stratégies de résolution Autres stratégies Orientation relative des sommets - graphe orienté sans cycle [Gendron et al.07] Théorème [Vitaver 62]: la longueur du plus long chemin dans une orientation d’un graphe est supérieure ou égale à son nombre chromatique. Orientation totale des sommets - [Davis 91] Couleurs numérotées Règle : colorier les sommets avec la plus petite couleur disponible Ordre de coloration des sommets : E→D→C→B→A→F→G ⇒ coloration en 4 couleurs A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 11 / 47 Stratégies de résolution Autres stratégies Orientation relative des sommets - graphe orienté sans cycle [Gendron et al.07] Théorème [Vitaver 62]: la longueur du plus long chemin dans une orientation d’un graphe est supérieure ou égale à son nombre chromatique. Orientation totale des sommets - [Davis 91] Couleurs numérotées Règle : colorier les sommets avec la plus petite couleur disponible Ordre de coloration des sommets : A→B→C→D→E→F→G ⇒ coloration en 3 couleurs A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 11 / 47 Plan 1 2 Problème de coloration de graphe 1 Quelques définitions 2 Quelques applications 3 Principales méthodes de résolution 1 Stratégies de résolution 2 Principales approches Exemples d’applications et variantes 1 Aviation civile 2 Télécommunications A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 12 / 47 Méthodes de résolution - Principales approches Quatre principales approches 1 Méthodes constructives : méthodes gloutonnes, évaluations et séparations, recherches arborescentes, programmation par contraintes... 2 Recherches locales ou par voisinage : descentes, recuits simulés, méthodes tabou, min-conflit... 3 Approches d’évolution ou à population : algorithme génétique, stratégies d’évolution, programmation évolutive... 4 Hybridation : combinaison évolution + RL, PPC + RL... A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 13 / 47 Méthodes de résolution - Principales approches Quatre principales approches 1 Méthodes constructives : méthodes gloutonnes, évaluations et séparations, recherches arborescentes, programmation par contraintes... 2 Recherches locales ou par voisinage : descentes, recuits simulés, méthodes tabou, min-conflit... 3 Approches d’évolution ou à population : algorithme génétique, stratégies d’évolution, programmation évolutive... 4 Hybridation : combinaison évolution + RL, PPC + RL... A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 13 / 47 Méthodes de résolution - Principales approches Quatre principales approches 1 Méthodes constructives : méthodes gloutonnes, évaluations et séparations, recherches arborescentes, programmation par contraintes... 2 Recherches locales ou par voisinage : descentes, recuits simulés, méthodes tabou, min-conflit... 3 Approches d’évolution ou à population : algorithme génétique, stratégies d’évolution, programmation évolutive... 4 Hybridation : combinaison évolution + RL, PPC + RL... A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 13 / 47 Méthodes de résolution - Principales approches Quatre principales approches 1 Méthodes constructives : méthodes gloutonnes, évaluations et séparations, recherches arborescentes, programmation par contraintes... 2 Recherches locales ou par voisinage : descentes, recuits simulés, méthodes tabou, min-conflit... 3 Approches d’évolution ou à population : algorithme génétique, stratégies d’évolution, programmation évolutive... 4 Hybridation : combinaison évolution + RL, PPC + RL... A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 13 / 47 Plan 1 2 Problème de coloration de graphe 1 Quelques définitions 2 Quelques applications 3 Principales méthodes de résolution 1 Stratégies de résolution 2 Principales approches - Méthodes constructives - Recherches locales ou à voisinage - Approches d’évolution ou à population - Hybridation Exemples d’applications et variantes 1 Aviation civile 2 Télécommunications A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 14 / 47 Méthodes constructives Approches exactes Méthode par séparation et évaluation très performante pour de petits graphes [Caramia et Dell’Olmo 02] Problème NP-difficile ⇒ Impossibilité de colorier de manière exacte des graphes aléatoires de densité 0.5 et de plus de 100 sommets [Johnson et al. 91] Méthodes gloutonnes Ordre de coloration des sommets statique dynamique I I DSATUR [Brélaz 79] RLF (Recursive-Large-First) [Leighton 79] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 15 / 47 Méthodes constructives Approches exactes Méthode par séparation et évaluation très performante pour de petits graphes [Caramia et Dell’Olmo 02] Problème NP-difficile ⇒ Impossibilité de colorier de manière exacte des graphes aléatoires de densité 0.5 et de plus de 100 sommets [Johnson et al. 91] Méthodes gloutonnes Ordre de coloration des sommets statique dynamique I I DSATUR [Brélaz 79] RLF (Recursive-Large-First) [Leighton 79] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 15 / 47 Méthodes constructives Approches exactes Méthode par séparation et évaluation très performante pour de petits graphes [Caramia et Dell’Olmo 02] Problème NP-difficile ⇒ Impossibilité de colorier de manière exacte des graphes aléatoires de densité 0.5 et de plus de 100 sommets [Johnson et al. 91] Méthodes gloutonnes Ordre de coloration des sommets statique dynamique I I DSATUR [Brélaz 79] RLF (Recursive-Large-First) [Leighton 79] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 15 / 47 Méthodes constructives Approches exactes Méthode par séparation et évaluation très performante pour de petits graphes [Caramia et Dell’Olmo 02] Problème NP-difficile ⇒ Impossibilité de colorier de manière exacte des graphes aléatoires de densité 0.5 et de plus de 100 sommets [Johnson et al. 91] Méthodes gloutonnes Ordre de coloration des sommets statique dynamique I I DSATUR [Brélaz 79] RLF (Recursive-Large-First) [Leighton 79] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 15 / 47 Méthodes constructives Approches exactes Méthode par séparation et évaluation très performante pour de petits graphes [Caramia et Dell’Olmo 02] Problème NP-difficile ⇒ Impossibilité de colorier de manière exacte des graphes aléatoires de densité 0.5 et de plus de 100 sommets [Johnson et al. 91] Méthodes gloutonnes Ordre de coloration des sommets statique dynamique I I DSATUR [Brélaz 79] RLF (Recursive-Large-First) [Leighton 79] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 15 / 47 Méthodes constructives Approches exactes Méthode par séparation et évaluation très performante pour de petits graphes [Caramia et Dell’Olmo 02] Problème NP-difficile ⇒ Impossibilité de colorier de manière exacte des graphes aléatoires de densité 0.5 et de plus de 100 sommets [Johnson et al. 91] Méthodes gloutonnes Ordre de coloration des sommets statique dynamique I I DSATUR [Brélaz 79] RLF (Recursive-Large-First) [Leighton 79] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 15 / 47 Méthodes constructives Approches exactes Méthode par séparation et évaluation très performante pour de petits graphes [Caramia et Dell’Olmo 02] Problème NP-difficile ⇒ Impossibilité de colorier de manière exacte des graphes aléatoires de densité 0.5 et de plus de 100 sommets [Johnson et al. 91] Méthodes gloutonnes Ordre de coloration des sommets statique dynamique I I DSATUR [Brélaz 79] RLF (Recursive-Large-First) [Leighton 79] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 15 / 47 Méthodes constructives Approches exactes Méthode par séparation et évaluation très performante pour de petits graphes [Caramia et Dell’Olmo 02] Problème NP-difficile ⇒ Impossibilité de colorier de manière exacte des graphes aléatoires de densité 0.5 et de plus de 100 sommets [Johnson et al. 91] Méthodes gloutonnes Ordre de coloration des sommets statique dynamique I I DSATUR [Brélaz 79] RLF (Recursive-Large-First) [Leighton 79] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 15 / 47 Méthodes constructives Approches exactes Méthode par séparation et évaluation très performante pour de petits graphes [Caramia et Dell’Olmo 02] Problème NP-difficile ⇒ Impossibilité de colorier de manière exacte des graphes aléatoires de densité 0.5 et de plus de 100 sommets [Johnson et al. 91] Méthodes gloutonnes Ordre de coloration des sommets statique dynamique I I DSATUR [Brélaz 79] RLF (Recursive-Large-First) [Leighton 79] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 15 / 47 Méthodes constructives Approches exactes Méthode par séparation et évaluation très performante pour de petits graphes [Caramia et Dell’Olmo 02] Problème NP-difficile ⇒ Impossibilité de colorier de manière exacte des graphes aléatoires de densité 0.5 et de plus de 100 sommets [Johnson et al. 91] Méthodes gloutonnes Ordre de coloration des sommets statique dynamique I I DSATUR [Brélaz 79] RLF (Recursive-Large-First) [Leighton 79] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 15 / 47 Méthodes constructives Approches exactes Méthode par séparation et évaluation très performante pour de petits graphes [Caramia et Dell’Olmo 02] Problème NP-difficile ⇒ Impossibilité de colorier de manière exacte des graphes aléatoires de densité 0.5 et de plus de 100 sommets [Johnson et al. 91] Méthodes gloutonnes Ordre de coloration des sommets statique dynamique I I DSATUR [Brélaz 79] RLF (Recursive-Large-First) [Leighton 79] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 15 / 47 Méthodes constructives Approches exactes Méthode par séparation et évaluation très performante pour de petits graphes [Caramia et Dell’Olmo 02] Problème NP-difficile ⇒ Impossibilité de colorier de manière exacte des graphes aléatoires de densité 0.5 et de plus de 100 sommets [Johnson et al. 91] Méthodes gloutonnes Ordre de coloration des sommets statique dynamique I I DSATUR [Brélaz 79] RLF (Recursive-Large-First) [Leighton 79] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 15 / 47 Méthodes constructives Approches exactes Méthode par séparation et évaluation très performante pour de petits graphes [Caramia et Dell’Olmo 02] Problème NP-difficile ⇒ Impossibilité de colorier de manière exacte des graphes aléatoires de densité 0.5 et de plus de 100 sommets [Johnson et al. 91] Méthodes gloutonnes Ordre de coloration des sommets statique dynamique I I DSATUR [Brélaz 79] RLF (Recursive-Large-First) [Leighton 79] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 15 / 47 Méthodes constructives Approches exactes Méthode par séparation et évaluation très performante pour de petits graphes [Caramia et Dell’Olmo 02] Problème NP-difficile ⇒ Impossibilité de colorier de manière exacte des graphes aléatoires de densité 0.5 et de plus de 100 sommets [Johnson et al. 91] Méthodes gloutonnes Ordre de coloration des sommets statique dynamique I I DSATUR [Brélaz 79] RLF (Recursive-Large-First) [Leighton 79] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 15 / 47 Méthodes constructives Approches exactes Méthode par séparation et évaluation très performante pour de petits graphes [Caramia et Dell’Olmo 02] Problème NP-difficile ⇒ Impossibilité de colorier de manière exacte des graphes aléatoires de densité 0.5 et de plus de 100 sommets [Johnson et al. 91] Méthodes gloutonnes Ordre de coloration des sommets statique dynamique I I DSATUR [Brélaz 79] RLF (Recursive-Large-First) [Leighton 79] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 15 / 47 Méthodes constructives Approches exactes Méthode par séparation et évaluation très performante pour de petits graphes [Caramia et Dell’Olmo 02] Problème NP-difficile ⇒ Impossibilité de colorier de manière exacte des graphes aléatoires de densité 0.5 et de plus de 100 sommets [Johnson et al. 91] Méthodes gloutonnes Ordre de coloration des sommets statique dynamique I I DSATUR [Brélaz 79] RLF (Recursive-Large-First) [Leighton 79] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 15 / 47 Méthodes constructives Approches exactes Méthode par séparation et évaluation très performante pour de petits graphes [Caramia et Dell’Olmo 02] Problème NP-difficile ⇒ Impossibilité de colorier de manière exacte des graphes aléatoires de densité 0.5 et de plus de 100 sommets [Johnson et al. 91] Méthodes gloutonnes Ordre de coloration des sommets statique dynamique I I DSATUR [Brélaz 79] RLF (Recursive-Large-First) [Leighton 79] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 15 / 47 Méthodes constructives Approches exactes Méthode par séparation et évaluation très performante pour de petits graphes [Caramia et Dell’Olmo 02] Problème NP-difficile ⇒ Impossibilité de colorier de manière exacte des graphes aléatoires de densité 0.5 et de plus de 100 sommets [Johnson et al. 91] Méthodes gloutonnes Ordre de coloration des sommets statique dynamique I I DSATUR [Brélaz 79] RLF (Recursive-Large-First) [Leighton 79] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 15 / 47 Méthodes constructives Approches exactes Méthode par séparation et évaluation très performante pour de petits graphes [Caramia et Dell’Olmo 02] Problème NP-difficile ⇒ Impossibilité de colorier de manière exacte des graphes aléatoires de densité 0.5 et de plus de 100 sommets [Johnson et al. 91] Méthodes gloutonnes Ordre de coloration des sommets statique dynamique I I DSATUR [Brélaz 79] RLF (Recursive-Large-First) [Leighton 79] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 15 / 47 Extraction de stables de taille maximale Problème connexe : rechercher des stables de taille maximale Suite de problèmes d’extraction de stables de taille maximale ? ⇔ Coloration de graphe optimale recherche d’un stable de taille maximale ⇔ recherche d’une clique de taille maximale (dans le graphe complémentaire) ⇒ tous les deux NP-difficiles A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 16 / 47 Extraction de stables de taille maximale Problème connexe : rechercher des stables de taille maximale Suite de problèmes d’extraction de stables de taille maximale ? ⇔ Coloration de graphe optimale recherche d’un stable de taille maximale ⇔ recherche d’une clique de taille maximale (dans le graphe complémentaire) ⇒ tous les deux NP-difficiles A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 16 / 47 Extraction de stables de taille maximale Problème connexe : rechercher des stables de taille maximale Suite de problèmes d’extraction de stables de taille maximale ? ⇔ Coloration de graphe optimale recherche d’un stable de taille maximale ⇔ recherche d’une clique de taille maximale (dans le graphe complémentaire) ⇒ tous les deux NP-difficiles A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 16 / 47 Extraction de stables de grande taille XRLF [Johnson et al. 91] Idée : hybrider séquentiellement un RLF randomisé avec une méthode exacte 1 RLF randomisé jusqu’à ce que le nombre de sommets non coloriés inférieur à 70 2 Méthode exacte de séparation et évaluation ⇒ Bons résultats pour l’époque sur certains graphes DIMACS difficiles EXTRACOL [Wu et Hao 11] Idée : réduire la taille du graphe en extrayant un ensemble de stables. 1 Générer un pool de stables de tailles p par une méthode Tabou (Adaptive Tabu Search, ATS) 2 Sélectionner dans ce pool un ensemble maximal de stables disjoints deux à deux (toujours par ATS) 3 Réitérer les étapes 1 et 2 tant que le nombre de sommets non coloriés >1000 4 Colorier le graphe résiduel (<1000 sommets) avec une heuristique performante A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 17 / 47 Extraction de stables de grande taille XRLF [Johnson et al. 91] Idée : hybrider séquentiellement un RLF randomisé avec une méthode exacte 1 RLF randomisé jusqu’à ce que le nombre de sommets non coloriés inférieur à 70 2 Méthode exacte de séparation et évaluation ⇒ Bons résultats pour l’époque sur certains graphes DIMACS difficiles EXTRACOL [Wu et Hao 11] Idée : réduire la taille du graphe en extrayant un ensemble de stables. 1 Générer un pool de stables de tailles p par une méthode Tabou (Adaptive Tabu Search, ATS) 2 Sélectionner dans ce pool un ensemble maximal de stables disjoints deux à deux (toujours par ATS) 3 Réitérer les étapes 1 et 2 tant que le nombre de sommets non coloriés >1000 4 Colorier le graphe résiduel (<1000 sommets) avec une heuristique performante A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 17 / 47 Extraction de stables de grande taille XRLF [Johnson et al. 91] Idée : hybrider séquentiellement un RLF randomisé avec une méthode exacte 1 RLF randomisé jusqu’à ce que le nombre de sommets non coloriés inférieur à 70 2 Méthode exacte de séparation et évaluation ⇒ Bons résultats pour l’époque sur certains graphes DIMACS difficiles EXTRACOL [Wu et Hao 11] Idée : réduire la taille du graphe en extrayant un ensemble de stables. 1 Générer un pool de stables de tailles p par une méthode Tabou (Adaptive Tabu Search, ATS) 2 Sélectionner dans ce pool un ensemble maximal de stables disjoints deux à deux (toujours par ATS) 3 Réitérer les étapes 1 et 2 tant que le nombre de sommets non coloriés >1000 4 Colorier le graphe résiduel (<1000 sommets) avec une heuristique performante A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 17 / 47 Extraction de stables de grande taille XRLF [Johnson et al. 91] Idée : hybrider séquentiellement un RLF randomisé avec une méthode exacte 1 RLF randomisé jusqu’à ce que le nombre de sommets non coloriés inférieur à 70 2 Méthode exacte de séparation et évaluation ⇒ Bons résultats pour l’époque sur certains graphes DIMACS difficiles EXTRACOL [Wu et Hao 11] Idée : réduire la taille du graphe en extrayant un ensemble de stables. 1 Générer un pool de stables de tailles p par une méthode Tabou (Adaptive Tabu Search, ATS) 2 Sélectionner dans ce pool un ensemble maximal de stables disjoints deux à deux (toujours par ATS) 3 Réitérer les étapes 1 et 2 tant que le nombre de sommets non coloriés >1000 4 Colorier le graphe résiduel (<1000 sommets) avec une heuristique performante A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 17 / 47 Extraction de stables de grande taille XRLF [Johnson et al. 91] Idée : hybrider séquentiellement un RLF randomisé avec une méthode exacte 1 RLF randomisé jusqu’à ce que le nombre de sommets non coloriés inférieur à 70 2 Méthode exacte de séparation et évaluation ⇒ Bons résultats pour l’époque sur certains graphes DIMACS difficiles EXTRACOL [Wu et Hao 11] Idée : réduire la taille du graphe en extrayant un ensemble de stables. 1 Générer un pool de stables de tailles p par une méthode Tabou (Adaptive Tabu Search, ATS) 2 Sélectionner dans ce pool un ensemble maximal de stables disjoints deux à deux (toujours par ATS) 3 Réitérer les étapes 1 et 2 tant que le nombre de sommets non coloriés >1000 4 Colorier le graphe résiduel (<1000 sommets) avec une heuristique performante A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 17 / 47 Extraction de stables de grande taille XRLF [Johnson et al. 91] Idée : hybrider séquentiellement un RLF randomisé avec une méthode exacte 1 RLF randomisé jusqu’à ce que le nombre de sommets non coloriés inférieur à 70 2 Méthode exacte de séparation et évaluation ⇒ Bons résultats pour l’époque sur certains graphes DIMACS difficiles EXTRACOL [Wu et Hao 11] Idée : réduire la taille du graphe en extrayant un ensemble de stables. 1 Générer un pool de stables de tailles p par une méthode Tabou (Adaptive Tabu Search, ATS) 2 Sélectionner dans ce pool un ensemble maximal de stables disjoints deux à deux (toujours par ATS) 3 Réitérer les étapes 1 et 2 tant que le nombre de sommets non coloriés >1000 4 Colorier le graphe résiduel (<1000 sommets) avec une heuristique performante A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 17 / 47 Extraction de stables de grande taille XRLF [Johnson et al. 91] Idée : hybrider séquentiellement un RLF randomisé avec une méthode exacte 1 RLF randomisé jusqu’à ce que le nombre de sommets non coloriés inférieur à 70 2 Méthode exacte de séparation et évaluation ⇒ Bons résultats pour l’époque sur certains graphes DIMACS difficiles EXTRACOL [Wu et Hao 11] Idée : réduire la taille du graphe en extrayant un ensemble de stables. 1 Générer un pool de stables de tailles p par une méthode Tabou (Adaptive Tabu Search, ATS) 2 Sélectionner dans ce pool un ensemble maximal de stables disjoints deux à deux (toujours par ATS) 3 Réitérer les étapes 1 et 2 tant que le nombre de sommets non coloriés >1000 4 Colorier le graphe résiduel (<1000 sommets) avec une heuristique performante A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 17 / 47 Extraction de stables de grande taille XRLF [Johnson et al. 91] Idée : hybrider séquentiellement un RLF randomisé avec une méthode exacte 1 RLF randomisé jusqu’à ce que le nombre de sommets non coloriés inférieur à 70 2 Méthode exacte de séparation et évaluation ⇒ Bons résultats pour l’époque sur certains graphes DIMACS difficiles EXTRACOL [Wu et Hao 11] Idée : réduire la taille du graphe en extrayant un ensemble de stables. 1 Générer un pool de stables de tailles p par une méthode Tabou (Adaptive Tabu Search, ATS) 2 Sélectionner dans ce pool un ensemble maximal de stables disjoints deux à deux (toujours par ATS) 3 Réitérer les étapes 1 et 2 tant que le nombre de sommets non coloriés >1000 4 Colorier le graphe résiduel (<1000 sommets) avec une heuristique performante A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 17 / 47 PPC - Programmation Par Contraintes Mauvais résultats en coloration de graphe IDB - Incomplete Dynamic Backtracking [Prestwich 01] fondée sur l’algorithme DBT (Dynamic Backtracking) Les contraintes d’inégalité ne se propagent pas bien. Hybridation nécessaire avec la recherche locale FCNS - Forward Checking with Consistent Partial Colorations [Prestwich 02] Tabu-NG - Recherche Tabou fondée sur les No Good [Dib 10] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 18 / 47 Plan 1 2 Problème de coloration de graphe 1 Quelques définitions 2 Quelques applications 3 Principales méthodes de résolution 1 Stratégies de résolution 2 Principales approches - Méthodes constructives - Recherches locales ou à voisinage - Approches d’évolution ou à population - Hybridation Exemples d’applications et variantes 1 Aviation civile 2 Télécommunications A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 19 / 47 Recherches locales ou à voisinage Éléments de base Voisinage : fonction qui perturbe une solution s ∈ S N : S → 2S s 7→ N (s) ⊂ S Fonction d’évaluation objectif initial + (pénalité) + (autres fonctions) Stratégie de mouvement Quel espace de recherche ? k fixé ou non Solutions légales ou non, partielles ou non A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 20 / 47 Stratégies des méthodes locales [Galinier et Hetz 06] 1-move A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 21 / 47 Stratégies des méthodes locales [Galinier et Hetz 06] i-swap A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 21 / 47 Interchange fondée sur les chaînes de Kempe A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 22 / 47 Interchange fondée sur les chaînes de Kempe A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 22 / 47 Interchange fondée sur les chaînes de Kempe A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 22 / 47 Interchange fondée sur les chaînes de Kempe A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 22 / 47 Interchange fondée sur les chaînes de Kempe A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 22 / 47 Stratégies des méthodes locales [Galinier et Hetz 06] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 23 / 47 Algorithme TabuCol [Hertz et de Werra 87] Éléments de base Voisinage : 1-moves critiques Fonction d’évaluation : minimiser le nombre de contraintes violées Stratégie de mouvement : mouvement vers le meilleur de tous les voisins non tabous (même s’il dégrade la fonction objectif) Liste tabou Le mouvement inverse Durée tabou dynamique dépends de la taille du voisinage Structure de données et rapidité des algorithmes Différences entre [Hertz et de Werra 87] et [Galiner et Hao 99] Évaluation incrémentale [Fleurent et Ferland 96] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 24 / 47 Plan 1 2 Problème de coloration de graphe 1 Quelques définitions 2 Quelques applications 3 Principales méthodes de résolution 1 Stratégies de résolution 2 Principales approches - Méthodes constructives - Recherches locales ou à voisinage - Approches d’évolution ou à population - Hybridation Exemples d’applications et variantes 1 Aviation civile 2 Télécommunications A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 25 / 47 Approches d’évolution ou à population Les croisements Croisements fondés sur l’ordre de coloration des sommets [Davis 91] Croisements fondés sur l’affectation de couleurs : uniforme... [Costa et al. 95] ⇒ mauvais résultats Croisements fondés sur les classes de couleurs : GPX - Greedy Pertition Crossover [Galinier et Hao 99] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 26 / 47 Greedy Pertition Crossover dans HEA [Galinier et Hao 99] Stratégie de pénalisation à k fixe Idée : les classes de grand cardinal doivent être transmises à l’enfant. A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 27 / 47 GPX et améliorations Adaptative Multi-Parent Crossover (AMPaX) [Lu et Hao 11, MACOL] Croisement avec m > 2 parents Sélectionner à chaque étape, la plus grande classe parmi tous les parents Un parent sélectionné est tabou pendant les m/2 étapes suivantes AMACOL [Galinier et al. 08] Population de solutions partielles, légales à k fixe ∼ pool de stables Construction d’une k-coloration en combinant k stables du pool + colorier les sommets non présents dans les stables Améliorer la k-coloration par recherche locale (Tabucol) Décomposer la k-coloration en stables à incorporer dans le pool A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 28 / 47 GPX et améliorations Adaptative Multi-Parent Crossover (AMPaX) [Lu et Hao 11, MACOL] Croisement avec m > 2 parents Sélectionner à chaque étape, la plus grande classe parmi tous les parents Un parent sélectionné est tabou pendant les m/2 étapes suivantes AMACOL [Galinier et al. 08] Population de solutions partielles, légales à k fixe ∼ pool de stables Construction d’une k-coloration en combinant k stables du pool + colorier les sommets non présents dans les stables Améliorer la k-coloration par recherche locale (Tabucol) Décomposer la k-coloration en stables à incorporer dans le pool A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 28 / 47 Plan 1 2 Problème de coloration de graphe 1 Quelques définitions 2 Quelques applications 3 Principales méthodes de résolution 1 Stratégies de résolution 2 Principales approches - Méthodes constructives - Recherches locales ou à voisinage - Approches d’évolution ou à population - Hybridation Exemples d’applications et variantes 1 Aviation civile 2 Télécommunications A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 29 / 47 Hybridation Trois outils à combiner Recherche locale : élément essentiel pour l’intensification et la reconstruction de solutions Algorithme à base de population : élément essentiel pour l’exploration globale Extraction de stables : nécessaire pour les grand graphe (supérieur à 1000 sommets) A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 30 / 47 Hybridation EXTRACOL [Wu et Hao 11] Prétraitement avec extraction de stables : fondé sur Adaptive Tabu Search ATS ⇒ utilisation de p couleurs Algorithme mémétique MACol [Lu et Hao 10] pour le graphe restant : I I Croisement : AMPaX Mutation : TabuCol Distributed Hybrid Quantum Annealing [Titiloye et Crispin 11] Recuit quantique : population coopérant en partageant une fonction coût (somme des énergies) Recherche locale : recuit simulé adaptatif (rayon du voisinage est aussi contrôlé) A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 31 / 47 Hybridation EXTRACOL [Wu et Hao 11] Prétraitement avec extraction de stables : fondé sur Adaptive Tabu Search ATS ⇒ utilisation de p couleurs Algorithme mémétique MACol [Lu et Hao 10] pour le graphe restant : I I Croisement : AMPaX Mutation : TabuCol Distributed Hybrid Quantum Annealing [Titiloye et Crispin 11] Recuit quantique : population coopérant en partageant une fonction coût (somme des énergies) Recherche locale : recuit simulé adaptatif (rayon du voisinage est aussi contrôlé) A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 31 / 47 Hybridation PPC+RL Tabu-NG : Tabu Search based on NoGoods [Dib 10] Contexte PPC : I I solution partielle et légale recherche arborescence Extension de la solution c-à-d choix (variable, valeur) à instancier : recherche tabou [CN-Tabu Vasquez 05] Réparation de la solution pour garder la consistance: recherche locale (i-swap) Management des NoGood : liste tabou [Descision-Repair Jussien et Lhomme 02] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 32 / 47 Résultats Meilleurs algorithmes pour les graphes DIMACS : site de Daniel Porumbel www.info.univ-angers.fr/pub/porumbel/graphs/ A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 33 / 47 Plan 1 2 Problème de coloration de graphe 1 Quelques définitions 2 Quelques applications 3 Principales méthodes de résolution Exemples d’applications et variantes 1 Aviation civile 2 Télécommunications A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 34 / 47 Gestion des confits aériens par allocation de niveaux de vol Contexte 25% des conflits aériens ont lieu en croisière (6= montée ou descente) Contrôle aérien : circulation aérienne, manœuvre en virages Temps Sujet de la thèse de Cyril Allignol [2011] DTI/ÉNAC (N. Barnier, N. Durand) Idée : allouer au décollage un niveau de vol pour faire disparaître les conflits A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 35 / 47 Gestion des confits aériens par allocation de niveaux de vol Problème Sommets = Avions Arrètes lorsque deux avions sont en conflits Couleurs = Niveaux de vol Contraintes/Objectifs supplémentaires Chaque avion a un niveau de vol de préférence : ∀i, c(vi ) ∈ [refi − ∆max ; refi + ∆max ] ⇒ list-coloring Minimiser la somme des écarts avec le niveau de vol demandé ⇒ list-coloring avec une coloration cible A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 36 / 47 Gestion des confits aériens par allocation de niveaux de vol Méthodes solveur PPC : FaCiLe (ÉNAC) Tabucol modifié : min. le nombre de conflits, puis les écarts en cas d’égalité Jeux de données Trafic français : 7 journées ≈ 8 500 avions et 18 000 conflits Trafic européen : 3 journées ≈ 22 à 32 000 avions et 150 à 700 000 conflits + 3 scénarios avec retards ⇒ augmente la densité du graphe A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 37 / 47 Gestion des confits aériens par allocation de niveaux de vol Méthodes solveur PPC : FaCiLe (ÉNAC) Tabucol modifié : min. le nombre de conflits, puis les écarts en cas d’égalité Jeux de données Trafic français : 7 journées ≈ 8 500 avions et 18 000 conflits Trafic européen : 3 journées ≈ 22 à 32 000 avions et 150 à 700 000 conflits + 3 scénarios avec retards ⇒ augmente la densité du graphe 10000 0 10 20 30 8000 PPC ∼ Tabucol PPC : optimalité du maximum des écarts 6000 4000 2000 0 A. Gondran (ÉNAC) 08/12 Coloration de graphe 08/13 08/14 10/06 10/07 10/08 10/10 05/03/2012 37 / 47 Gestion des confits aériens par allocation de niveaux de vol Méthodes solveur PPC : FaCiLe (ÉNAC) Tabucol modifié : min. le nombre de conflits, puis les écarts en cas d’égalité Jeux de données Trafic français : 7 journées ≈ 8 500 avions et 18 000 conflits Trafic européen : 3 journées ≈ 22 à 32 000 avions et 150 à 700 000 conflits + 3 scénarios avec retards ⇒ augmente la densité du graphe Tabucol > PPC PPC : pas toujours l’optimalité du maximum des écarts Tabucol : meilleur en max et pour max identique meilleur en somme des écarts A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 37 / 47 Allocation de fréquences pour les réseaux Wi-Fi Couleurs ordonnées : fréquences T-coloration de graphe G = (V, E) graphe T = {Tij ∈ N | (vi , vj ) ∈ E} Contraintes sur les écarts de couleurs : ∀(vi , vj ) ∈ E, |c(vi ) − c(vj )| ∈ / Tij Généralisation de la coloration pour Tij = {0} : c(vi ) 6= c(vj ) ⇔ |c(vi ) − c(vj )| = 6 0 T-coloration restreinte Tij = {0, 1, 2, ..., tij } Contraintes : écarts de couleurs |c(vi ) − c(vj )| > tij Challenge ROADEF 2001 A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 38 / 47 Allocation de fréquences pour les réseaux Wi-Fi Couleurs ordonnées : fréquences T-coloration de graphe G = (V, E) graphe T = {Tij ∈ N | (vi , vj ) ∈ E} Contraintes sur les écarts de couleurs : ∀(vi , vj ) ∈ E, |c(vi ) − c(vj )| ∈ / Tij Généralisation de la coloration pour Tij = {0} : c(vi ) 6= c(vj ) ⇔ |c(vi ) − c(vj )| = 6 0 T-coloration restreinte Tij = {0, 1, 2, ..., tij } Contraintes : écarts de couleurs |c(vi ) − c(vj )| > tij Challenge ROADEF 2001 A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 38 / 47 Allocation de fréquences pour les réseaux Wi-Fi Couleurs ordonnées : fréquences T-coloration de graphe G = (V, E) graphe T = {Tij ∈ N | (vi , vj ) ∈ E} Contraintes sur les écarts de couleurs : ∀(vi , vj ) ∈ E, |c(vi ) − c(vj )| ∈ / Tij Généralisation de la coloration pour Tij = {0} : c(vi ) 6= c(vj ) ⇔ |c(vi ) − c(vj )| = 6 0 T-coloration restreinte Tij = {0, 1, 2, ..., tij } Contraintes : écarts de couleurs |c(vi ) − c(vj )| > tij Challenge ROADEF 2001 A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 38 / 47 Allocation de fréquences pour les réseaux Wi-Fi Couleurs ordonnées : fréquences T-coloration de graphe G = (V, E) graphe T = {Tij ∈ N | (vi , vj ) ∈ E} Contraintes sur les écarts de couleurs : ∀(vi , vj ) ∈ E, |c(vi ) − c(vj )| ∈ / Tij Généralisation de la coloration pour Tij = {0} : c(vi ) 6= c(vj ) ⇔ |c(vi ) − c(vj )| = 6 0 T-coloration restreinte Tij = {0, 1, 2, ..., tij } Contraintes : écarts de couleurs |c(vi ) − c(vj )| > tij Challenge ROADEF 2001 A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 38 / 47 Allocation de fréquences pour les réseaux Wi-Fi Contexte Installation de hotspots Wi-Fi de grandes taille (∼100 bornes) dans des bâtiments 2 problèmes NP-difficiles combinés : Set Covering Problem et Frequency Allocation Problem Sujet de ma thèse [2008] UTBM-Belfort, Orange Lab (A. Caminada, O. Baala) A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 39 / 47 Allocation de fréquences pour les réseaux Wi-Fi SINR : mesure de la qualité de la liaison usager-antenne Client k Antenne j : serveur de l’usager k Antennes i : interférentes de l’usager k Réduction à la T-coloration restreint p ⇔ ⇒ ⇔ SINRk = P pik γ(|fjki −fj |)+N > sk i P pjk p γ(|f ik i − fj |) 6 sk − N i6=j ∀i 6= j, ∀i 6= j, pik γ(|fi − fj |) 6 |fi − fj | > tij := γ −1 Équivalence des problèmes si : A. Gondran (ÉNAC) P i6=j pjk sk contrainte n-aire non linéaire −N pjk /sk −N pik pik γ(tij ) 6 Coloration de graphe sous-contraintes binaires pjk sk 05/03/2012 40 / 47 Allocation de fréquences pour les réseaux Wi-Fi SINR : mesure de la qualité de la liaison usager-antenne Client k Antenne j : serveur de l’usager k Antennes i : interférentes de l’usager k Réduction à la T-coloration p ⇔ ⇐ ⇔ SINRk = P pik γ(|fjki −fj |)+N > sk i P pjk i6=j pik γ(|fi − fj |) 6 sk − N ∀i 6= j, ∀i 6= j, A. Gondran (ÉNAC) pik γ(|fi − fj |) 6 contrainte n-aire non linéaire p ( sjkk − N)/n n nbre d’interférents p /s −N |fi − fj | > tij := γ −1 jk npkik sur-contraintes binaires Coloration de graphe 05/03/2012 40 / 47 Allocation de fréquences pour les réseaux Wi-Fi Résultats - - Résultats avec les (sous- ou sur-)contraintes binaires + + Résultats avec les contraintes n-aires Conclusions identiques avec données CELAR (DGA) [Palpant 08] PPC - Programmation Par Contraintes Ajouter les sous-contraintes binaires au problème PPC : meilleure propagation que les contraintes n-aire [Palpant 08, Dib 10] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 41 / 47 Gestion des confits aériens par retards aux décollages Contexte 75% des conflits aériens ont lieu en en approche (montée ou descente) Contrôle aérien : circulation aérienne Temps Sujet de la thèse de Cyril Allignol [2011] DTI/ÉNAC (N. Barnier, N. Durand) Idée : retarder ou avancer l’heure de décollage des avions pour faire disparaître les conflits A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 42 / 47 Gestion des confits aériens par retards aux décollages Problème Sommets = avions Arêtes lorsque deux avions risquent d’être en conflits Couleurs = retards ou avances au décollage Contraintes : la différence de 2 retards ne doit pas prendre certaines valeurs ∀i, |c(vi ) − c(vj )| ∈ / Tij avec Tij une union d’intervalles ⇒ T-coloration de graphe Contraintes/Objectifs supplémentaires Chaque avion a une heure de décollage prévue : ∀i, c(vi ) ∈ [avancemax ; retardmax ] (discrétisation à la minute) Minimiser la somme des retards ou le maximum des retards ⇒ T-coloration avec une coloration cible A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 43 / 47 Gestion des confits aériens par retards aux décollages Méthodes solveur PPC : FaCiLe (ÉNAC) Algorithme Évolutionnaire Jeux de données Trafic français : 7 journées ≈ 8 500 avions et 18 000 conflits Résultats PPC > AE PPC : optimalité du retard maximum (∼ 80 minutes) PPC : retard moyen 4 minutes (vs. 10 minutes pour l’AÉ) Très sensible aux aléas : 1 2 Transformer en un problème de T-coloration restreint (sur-contraint) Utilisation d’un Tabucol dédié à la T-coloration restreinte [Dorne et Hao 98] A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 44 / 47 Conclusions Revue des méthodes Variété des méthodes utilisées : I I I I Méthodes constructives Recherches locales Approches à population Hybridations ⇒ Ensemble d’outils complémentaires ⇒ Pas d’algorithme qui domine toutes les autres approches sur tous les graphes Coloration de graphe Problème générique ⇒ Réutiliser facilement les idées développées Axe de travail Hybridation PPC et RL Voisinage fondé sur les chaînes de Kempe A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 45 / 47 Conclusions Revue des méthodes Variété des méthodes utilisées : I I I I Méthodes constructives Recherches locales Approches à population Hybridations ⇒ Ensemble d’outils complémentaires ⇒ Pas d’algorithme qui domine toutes les autres approches sur tous les graphes Coloration de graphe Problème générique ⇒ Réutiliser facilement les idées développées Axe de travail Hybridation PPC et RL Voisinage fondé sur les chaînes de Kempe A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 45 / 47 Conclusions Revue des méthodes Variété des méthodes utilisées : I I I I Méthodes constructives Recherches locales Approches à population Hybridations ⇒ Ensemble d’outils complémentaires ⇒ Pas d’algorithme qui domine toutes les autres approches sur tous les graphes Coloration de graphe Problème générique ⇒ Réutiliser facilement les idées développées Axe de travail Hybridation PPC et RL Voisinage fondé sur les chaînes de Kempe A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 45 / 47 Références Bibliographie de coloration de graphes de Marco Chiarandini (plus de 200 références) www.imada.sdu.dk/ marco/gcp/ Philippe Galinier et Alain Hertz A survey of local search methods for graph coloring. Journal Computers and Operations Research - Volume 33 Issue 9, sept. 2006. Philippe Galinier, Jean-Philippe Hamiez, Jin-Kao Hao, Daniel Cosmin Porumbel Recent advances in graph vertex coloring. In I. Zelinka, A. Abraham, V. Snasel (Eds.) Handbook of Optimization. 2012. Springer. A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 46 / 47 Merci A. Gondran (ÉNAC) Coloration de graphe 05/03/2012 47 / 47