Beruflich Dokumente
Kultur Dokumente
Alexandre Gondran
ÉNAC
Laboratoire MAIAA
alexandre.gondran@enac.fr
1 Quelques définitions
2 Quelques applications
3 Principales méthodes de résolution
2 Exemples d’applications et variantes
1 Aviation civile
2 Télécommunications
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
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
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
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
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
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
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
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
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
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)
1 Quelques définitions
2 Quelques applications
3 Principales méthodes de résolution
2 Exemples d’applications et variantes
1 Aviation civile
2 Télécommunications
1 Quelques définitions
2 Quelques applications
3 Principales méthodes de résolution
1 Stratégies de résolution
2 Principales approches
2 Exemples d’applications et variantes
1 Aviation civile
2 Télécommunications
minimiser k
s.c. contraintes
solutions complètes
Graphe simple
Couleurs numérotées
Couleurs numérotées
Couleurs numérotées
Couleurs numérotées
Couleurs numérotées
Couleurs numérotées
1 Quelques définitions
2 Quelques applications
3 Principales méthodes de résolution
1 Stratégies de résolution
2 Principales approches
2 Exemples d’applications et variantes
1 Aviation civile
2 Télécommunications
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
2 Exemples d’applications et variantes
1 Aviation civile
2 Télécommunications
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 DSATUR [Brélaz 79]
I RLF (Recursive-Large-First)
[Leighton 79]
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 DSATUR [Brélaz 79]
I RLF (Recursive-Large-First)
[Leighton 79]
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 DSATUR [Brélaz 79]
I RLF (Recursive-Large-First)
[Leighton 79]
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 DSATUR [Brélaz 79]
I RLF (Recursive-Large-First)
[Leighton 79]
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 DSATUR [Brélaz 79]
I RLF (Recursive-Large-First)
[Leighton 79]
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 DSATUR [Brélaz 79]
I RLF (Recursive-Large-First)
[Leighton 79]
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 DSATUR [Brélaz 79]
I RLF (Recursive-Large-First)
[Leighton 79]
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 DSATUR [Brélaz 79]
I RLF (Recursive-Large-First)
[Leighton 79]
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 DSATUR [Brélaz 79]
I RLF (Recursive-Large-First)
[Leighton 79]
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 DSATUR [Brélaz 79]
I RLF (Recursive-Large-First)
[Leighton 79]
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 DSATUR [Brélaz 79]
I RLF (Recursive-Large-First)
[Leighton 79]
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 DSATUR [Brélaz 79]
I RLF (Recursive-Large-First)
[Leighton 79]
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 DSATUR [Brélaz 79]
I RLF (Recursive-Large-First)
[Leighton 79]
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 DSATUR [Brélaz 79]
I RLF (Recursive-Large-First)
[Leighton 79]
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 DSATUR [Brélaz 79]
I RLF (Recursive-Large-First)
[Leighton 79]
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 DSATUR [Brélaz 79]
I RLF (Recursive-Large-First)
[Leighton 79]
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 DSATUR [Brélaz 79]
I RLF (Recursive-Large-First)
[Leighton 79]
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 DSATUR [Brélaz 79]
I RLF (Recursive-Large-First)
[Leighton 79]
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 DSATUR [Brélaz 79]
I RLF (Recursive-Large-First)
[Leighton 79]
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
2 Exemples d’applications et variantes
1 Aviation civile
2 Télécommunications
É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
1-move
i-swap
Liste tabou
Le mouvement inverse
Durée tabou dynamique dépends de la taille du voisinage
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
2 Exemples d’applications et variantes
1 Aviation civile
2 Télécommunications
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]
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
2 Exemples d’applications et variantes
1 Aviation civile
2 Télécommunications
1 Quelques définitions
2 Quelques applications
3 Principales méthodes de résolution
2 Exemples d’applications et variantes
1 Aviation civile
2 Télécommunications
Temps
Idée : allouer au décollage un niveau de vol pour faire disparaître les conflits
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
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
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
2000
0
08/12 08/13 08/14 10/06 10/07 10/08 10/10
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
T-coloration de graphe
G = (V, E) graphe
T = {Tij ∈ N | (vi , vj ) ∈ E}
Contraintes sur les écarts de couleurs :
T-coloration restreinte
Tij = {0, 1, 2, ..., tij }
Contraintes : écarts de couleurs
T-coloration de graphe
G = (V, E) graphe
T = {Tij ∈ N | (vi , vj ) ∈ E}
Contraintes sur les écarts de couleurs :
T-coloration restreinte
Tij = {0, 1, 2, ..., tij }
Contraintes : écarts de couleurs
T-coloration de graphe
G = (V, E) graphe
T = {Tij ∈ N | (vi , vj ) ∈ E}
Contraintes sur les écarts de couleurs :
T-coloration restreinte
Tij = {0, 1, 2, ..., tij }
Contraintes : écarts de couleurs
T-coloration de graphe
G = (V, E) graphe
T = {Tij ∈ N | (vi , vj ) ∈ E}
Contraintes sur les écarts de couleurs :
T-coloration restreinte
Tij = {0, 1, 2, ..., tij }
Contraintes : écarts de couleurs
p
SINRk = P pik γ(|fjki −fj |)+N > sk
i
P pjk
⇔ i6=j p ik γ(|f i − fj |) 6 sk − N contrainte n-aire non linéaire
pjk
⇒ ∀i 6= j, pik γ(|fi − fj |) 6 sk −N
pjk /sk −N
⇔ ∀i 6= j, |fi − fj | > tij := γ −1 pik sous-contraintes binaires
P pjk
Équivalence des problèmes si : i6=j pik γ(tij ) 6 sk
Réduction à la T-coloration
p
SINRk = P pik γ(|fjki −fj |)+N > sk
i
P pjk
⇔ i6=j pik γ(|fi − fj |) 6 sk − N contrainte n-aire non linéaire
p
⇐ ∀i 6= j, pik γ(|fi − fj |) 6 − N)/n
( sjkk n nbre d’interférents
p /s −N
⇔ ∀i 6= j, |fi − fj | > tij := γ −1 jk npkik sur-contraintes binaires
Résultats
- - Résultats avec les (sous- ou sur-)contraintes binaires
+ + Résultats avec les contraintes n-aires
Temps
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
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 Transformer en un problème de T-coloration restreint (sur-contraint)
2 Utilisation d’un Tabucol dédié à la T-coloration restreinte [Dorne et Hao 98]
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 Méthodes constructives
I Recherches locales
I Approches à population
I 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 Méthodes constructives
I Recherches locales
I Approches à population
I 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