francebalade.fr       Cours de Mathématiques       Table des matières       Votre avis sur ce site

Théorie des graphes

Le problème de la clique maximum

Une clique est un sous-ensemble de sommets d'un graphe qui sont tous adjacents deux à deux : il existe une arête entre chaque paire de sommets du sous-ensemble. Autrement dit, c'est un sous-graphe complet. Le problème du clique maximum (max clique) consiste à trouver la taille de la plus grande clique d'un graphe donné, ou à identifier les sommets qui la composent.

On note ω(G) le nombre de clique du graphe G : la taille de sa plus grande clique. Trouver ω(G) et une clique qui atteint cette taille est, en toute généralité, un problème NP-difficile — on ne connaît aucun algorithme rapide qui le résolve pour tous les graphes. Les cinq planches qui suivent explorent la notion sur des exemples manipulables, un algorithme de recherche efficace, une limite structurelle exacte (Turán), et une conséquence spectaculaire du problème des fêtes de Ramsey.
1

Qu'est-ce qu'une clique ?

glissez les sommets · un clic les sélectionne · mode « arêtes » : deux clics relient ou délient
Cliquez des sommets pour composer un sous-ensemble S, ou passez en mode « arêtes » pour modifier le graphe.
Graphes prêts à l'emploi
Mode d'édition
Sélectionnez au moins deux sommets.
Cliques trouvées, par taille (énumération complète des 2ⁿ sous-ensembles)

Un sous-ensemble S de k sommets est une clique lorsque les k(k−1)/2 paires possibles sont toutes des arêtes du graphe — aucune exception. Le panneau de droite compare en permanence le nombre de paires nécessaires à celui des paires réellement présentes ; l'écart entre les deux, affiché en rouge, tombe à zéro exactement quand S est une clique. Les paires manquantes sont tracées en pointillé rouge sur le graphe pour qu'on voie immédiatement ce qui empêche S d'être une clique complète.

Le graphe de Petersen (préréglage 3) est instructif : dix sommets, quinze arêtes, une allure dense — et pourtant ω(G) = 2. Aucune paire de sommets adjacents ne partage un troisième voisin commun : il n'existe pas le moindre triangle. La densité visuelle d'un graphe ne dit rien de la taille de sa plus grande clique.

Le préréglage 6, à l'inverse, cache une clique de taille 4 au milieu d'arêtes de bruit disposées pour brouiller la lecture visuelle — la force brute la retrouve en un instant, quelle que soit la disposition des sommets à l'écran, puisqu'elle ne regarde que la matrice d'adjacence.

2

Recherche exhaustive et dualité avec l'ensemble indépendant

une clique de G est un ensemble indépendant du graphe complémentaire Ḡ, et réciproquement

G — le graphe

Ḡ — le complémentaire (arêtes inversées)

Une clique de G — tous les sommets choisis pairwise adjacents — devient, vue dans le graphe complémentaire Ḡ (où l'on relie exactement les paires qui n'étaient pas reliées dans G), un ensemble indépendant : aucun des sommets choisis n'y est adjacent à un autre. La plus grande clique de G a donc exactement la taille du plus grand ensemble indépendant de Ḡ : ω(G) = α(Ḡ). Le panneau numérique calcule les deux quantités par deux algorithmes de force brute entièrement indépendants — l'un cherchant des paires toutes présentes, l'autre des paires toutes absentes — et affiche l'écart, qui doit rester rigoureusement nul.

Nombre de cliques maximales (celles qu'on ne peut agrandir par aucun sommet, même si elles ne sont pas les plus grandes) : Moon et Moser ont montré en 1965 qu'un graphe à n sommets n'en compte jamais plus que 3^(n/3) — borne atteinte par une union disjointe de triangles. Le compteur ci-dessus confronte le nombre mesuré par énumération complète à cette borne théorique.
3

L'algorithme de Bron–Kerbosch

énumération de toutes les cliques maximales, avec ou sans choix d'un pivot
■ R — clique en construction   ■ P — candidats encore possibles   ■ X — déjà explorés, exclus
Graphe
Lecture pas à pas

L'énumération par force brute des planches précédentes teste les 2ⁿ sous-ensembles un par un — praticable jusqu'à une vingtaine de sommets, ingérable au-delà. L'algorithme de Bron et Kerbosch (1973) énumère exactement les mêmes cliques maximales, mais en construisant R sommet par sommet et en coupant aussitôt les branches condamnées : P contient les candidats qui pourraient encore rejoindre R, X ceux qu'on a déjà essayés dans cette branche et qu'il est donc inutile de retenter. Quand P et X sont tous deux vides, R est une clique maximale.

Le choix d'un pivot u dans P∪X — le sommet qui a le plus de voisins communs avec P — permet de ne développer que les candidats non voisins de u : tout candidat voisin de u sera de toute façon exploré (ou dominé) par la branche de u, inutile de le retenter séparément. Le compteur d'appels récursifs, avec et sans pivot, mesure le gain réel sur le graphe affiché — et le nombre de cliques maximales trouvées est recontrôlé face à celui de la planche 2, à écart nul.
4

Le théorème de Turán : la limite avant la clique

combien d'arêtes peut-on placer sur n sommets sans jamais former de Kr+1 ?
Épreuve de Monte-Carlo — au-delà de la borne
—

Le graphe de Turán T(n,r) répartit les n sommets en r parts aussi égales que possible et relie deux sommets si et seulement s'ils appartiennent à des parts différentes : c'est un graphe r-parti complet, sans aucune arête à l'intérieur d'une part. Sa plus grande clique vaut exactement r — on ne peut prendre qu'un sommet par part sous peine de retomber sur une paire non reliée — et le panneau confirme ω = r par l'algorithme de Bron–Kerbosch à chaque réglage de n et r.

Turán (1941) a démontré que T(n,r) est l'unique graphe, à isomorphisme près, qui atteint le nombre maximal d'arêtes parmi tous les graphes à n sommets ne contenant aucun Kr+1 : (1 − 1/r)·n²/2, arrondi selon les tailles exactes des parts. Le bouton « ajouter une arête interne » casse cette extrémalité en un clic : une seule arête ajoutée à l'intérieur d'une part fait immédiatement apparaître un Kr+1, visible et recompté. L'épreuve de Monte-Carlo confirme la réciproque sur des graphes aléatoires tirés au-delà de la borne : ils contiennent, sans exception mesurée, une clique de taille r+1 ou plus.
5

Le problème des fêtes : les nombres de Ramsey

signature
colorier les arêtes d'un graphe complet en deux couleurs, sans jamais éviter un triangle monochrome

K₅ — quinze coloriages sur mille vingt-quatre y échappent

K₆ — aucun des trente-deux mille sept cent soixante-huit n'y échappe

K₅ — cliquez une arête pour la basculer rouge / bleu
K₆ — cliquez une arête pour la basculer rouge / bleu

Imaginons une fête où chaque paire d'invités est soit déjà amie, soit inconnue l'une de l'autre. Représentons les invités par les sommets d'un graphe complet, et colorions chaque arête en rouge (amis) ou bleu (inconnus). Un « trio homogène » — trois invités mutuellement amis, ou mutuellement inconnus — est exactement une clique de taille 3 dans l'un des deux sous-graphes monochromes. Combien faut-il d'invités pour garantir un tel trio, quelle que soit la façon de colorier les arêtes ?

La réponse est le nombre de Ramsey R(3,3) = 6, et la page le vérifie ici par force brute plutôt que de l'énoncer : sur K₅, l'énumération complète des 2¹⁰ = 1024 coloriages possibles en retrouve 12 qui échappent à tout triangle monochrome — dont le « pentagone » (un cycle rouge à cinq côtés, son complémentaire bleu) affiché par le bouton témoin. Sur K₆, l'énumération complète des 2¹⁵ = 32768 coloriages ne trouve, sans une seule exception, aucun coloriage capable d'éviter le trio homogène.

Généraliser à des cliques plus grandes explique pourquoi le problème est redoutable : R(4,4) = 18 est connu, mais R(5,5) est seulement encadré — 43 ≤ R(5,5) ≤ 46 (Exoo 1989 ; Angeltveit et McKay, 2024) — malgré des décennies de calcul sur des ordinateurs bien plus puissants que celui qui affiche cette page. Erdős racontait qu'il jugeait plus facile, si des extraterrestres exigeaient R(5,5) sous peine de détruire la Terre, de mobiliser tous les mathématiciens et tous les ordinateurs du monde pour le calculer — que s'ils exigeaient R(6,6). C'est la même explosion combinatoire que celle mesurée à la planche 4 : au-delà d'une poignée de sommets, chercher une clique maximum devient, très vite, hors de portée de toute force brute.

En savoir plus sur le théorème et les nombres de Ramsey