Graphe - Couplage
Cours inspiré des cours intégrés dispensés par Nicolas Hanusse et du polycopié de Denis Lapoire
Le problème posé à l'aviation anglaise durant la bataille d'angleterre état de pouvoir former un nombre maximum de couples de pilotes parmi un ensemble de pilotes venant des quatre coins du monde. On confiait à deux pilotes les commandes d'un avion à l'unique condition qu'ils partageaint une même langue. Un grand nombre de pilotes parlaient plusieurs langues.
Ce problème se formalise aisément en un problème de graphes, qui a pour nom le problème du couplage maximum.
Définition
Les graphes que nous considérerons dans ce chaptire sont non orientés. Afin de simplifier l'étuder, nous pourrons supposer qu'ils sont dépourvus de boucle
Un couplage
d'un graphe non orienté est un ensemble d'arêtes 2 à 2 non adjacentes et qui ne soient pas des boucles. Un sommet est saturé dans un couplage si il est incident à l'une des arêtes de . Un couplage est
- maximum si il est de cardinalité maximale parmi tous les couplages
- parfait si tout sommet est saturé
Le problème du couplage maximum peut ainsi être formalisé.
Première caractérisation d'un couplage maximum
Une condition suffisante pour qu'un couplage ne soit pas maximum est l'existence de deux sommets insaturés adjacents, voir l'existence de deux sommets insaturés reliés par un chemin alternant des arcs du couplage et des arcs n'appartenant pas à ce couplage. Une propriété remarquable des couplages est que cette condition est non seulement suffisante mais aussi nécessaire. Cette section est consacrée à cette caractérisation.
Un chemin alterné
relativement à un couplage d'un graphe est un chemin élémentaire à extrémités distinctes telle que pour toute arête de et pour toute arête succédant immédiatement sur on ait . Un chemin alterné est augmentant relativement à si ses deux extrémités sont insaturés par .
La différence symétrique de deux ensembles est est notée
Soit un chemin alterné relativement à un couplage d'un graphe . Si chaque extrémité de est soit insaturé soit incidente à une arête de appartenant à , alors est un couplage de
Si et sont deux couplages d'un graphe , alors chaque composante connexe est de l'un des trois types suivant
- un sommet isolé
- un cycle élémentaire paire à arêtes alternativement dans et
- un chemin élémentaire à arêtes alternativement dans et
Pour tout couplage d'un graphe , les deux assertions suivantes sont équivalentes
- est maximum
- il n'existe aucun chemin alterné augmentant
Caractérisation algorithmique
La solution algorithmique requiert la définition de ce qu'est un arbre alterné, extension aux arbres de la notion d'alternance définie sur les chemmins.
Un arbre alterné
selon un graphe et un couplage de est un triplet tel que
- est un arbre qui est sous-graphe de
- est un sommet de appelé sa racine et est insaturé selon
- toute feuille de est paire c'est à dire est à distance paire de
- tout sommet pair de autre que la racine est adjacent à son père (impair) selon une arête de
Afin de simplifier les énoncés, un graphe muni d'un de ses couplages sera appelé un graphe couplé, un graphe muni d'un de ses couplages et d'un arbre alterné sera appelé un arbre couplé arboré
Pour résoudre le problème Couplage maximum, on utilise deux fonctions auxiliaires CMC et CMCA résolvant les deux problèmes suivants
Couplage Maximum d'un graphe couplé
Entrée : un graphe couplé (G,J)
Sortie : un couplage maximum K de G tel que K != J => |K| > |J|
Couplage Maximum d'un graphe couplé arboré
Entrée : un graphe couplé arboré (G,J,T)
Sortie : un couplage maximum K de G tel que K != J => |K| > |J|
Le lien entre ces problèmes est immédiat :
- une définition de CM résolvant Couplage Maximum est simplement
fonction CM(G:graphe):couplage
retourner CMC(G,0)
- une définition de CMC résolvant Couplage Maximum2 est simplement
fonction CMC((G,K):graphe couplé):couplage
si il existe au plus un sommet instaturé selon K
retourner K
sinon
r=instaturé(G,K)
T=arbreAlterné1Sommet(r)
retourner CMCA(G,K,T)
L'écrirture de CMCA nécessite quelques notations et définitions préalables
Le graphe obtenu à partir d'un graphe en fusionnant une partie de sommets est noté dans cette section . On suppose en outre que les boucles sont supprimées.
LE sous graphe d'un graphe induit par un ensemble de sommets est noté . L'expression dénote le sous-graphe
Une orbite
d'un graphe couplé arboré est une arête incidente à deux sommets pairs de . Nous noterons
- le graphe obtenu à partir de en fusionnant tous les sommets de (c'est à dire )
- le couplage obtneu à partir de en supprimant toutes les arêtes dont les deux extrémités appartiennent à . Clairement est un couplage de
- l'arbre obtenu à partir de en fusionnant tous les sommets de (c'est à dire ). Clairement est un arbre alterné de où désigne l'ensemble des sommets de l'unique circuit élementaire du graphe augmenté de l'arête .