Coupe maximum
En théorie des graphes et en algorithmique, une coupe maximum est une coupe contenant au moins autant d'arêtes que n'importe quelle autre coupe. Une extension de la définition consiste à considérer des poids associés aux arêtes. On considère alors la coupe ayant le poids total maximum.
Les coupes maximums sont des objets utiles notamment en physique théorique et en électronique. Mais elles sont surtout connues pour le problème algorithmique qui consiste à trouver une coupe maximum, appelé couramment MAX-CUT, un problème relativement bien étudié, notamment dans le contexte de l'approximation.
Définition de l'objet et remarques préliminaires
Coupes et poids

Étant donné un graphe, et des poids sur les arêtes, une coupe peut-être décrite comme un ensemble de sommets, et le poids de la coupe est alors la somme des poids des arêtes ayant une extrémité à l'intérieur de cet ensemble et l'autre à l'extérieur. Une coupe est maximum si son poids est maximum (parmi toutes les coupes).
Un cas particulier est celui de la coupe de cardinalité maximum, qui correspond à des poids égaux à 1. Dans ce cas le poids d'une coupe est simplement le nombre d'arêtes.
Remarques
Remarquons qu'a priori il peut y avoir plusieurs coupes maximums, c'est-à-dire plusieurs coupes différentes mais de même cardinal : le cardinal maximum.
On peut aussi considérer l'objet « jumeau » qui est la coupe minimum, et qui a des propriétés complètement différentes, par exemple la relation donnée par le théorème flot-max/coupe-min.
Une généralisation de l'objet est la k-coupe maximum : on considère alors non plus deux composantes mais k composantes[1].
Définition du problème algorithmique
Définition classique
On considère le problème d'optimisation combinatoire suivant :
- Étant donné un graphe G, trouver une coupe maximum.
Et le problème de décision associé :
- Étant donné un graphe G et un entier k, existe-t-il une coupe de poids au moins k ?
On considère le plus souvent des poids positifs rationnels[2].
Écriture en équation
Le problème peut-être reformulé sous forme d'équations à satisfaire. Cette écriture permet notamment de rapprocher le problème de la conjecture des jeux uniques[3], en le présentant comme un problème de satisfaction de contraintes.
Pour chaque arête du graphe, on considère l'équation . Le problème de la coupe maximum consiste alors à donner une affectation binaire aux variables , qui maximise le nombre d'équations vérifiées.
Résolution exacte
NP-complétude
Le problème de décision MAX-CUT est NP-complet[4]. Le problème d'optimisation MAX-CUT est NP-dur. La version dans laquelle les arêtes ont des poids fait partie des 21 problèmes NP-complets de Karp[5], où l'on fait une réduction depuis le problème du séquençage de tâches en ordonnancement , lui-même réduit du problème du sac à dos.
Le problème de décision reste NP-complet si l'on se restreint aux graphes cordaux, aux split graphs, aux graphes tripartis, et co-bipartis[6].
Algorithmes efficaces pour des cas particuliers
Pour les graphes planaires, le problème peut être résolu en temps polynomial[7], car il se réduit à un problème de couplage maximum lui-même polynomial (par exemple avec l'algorithme d'Edmonds). C'est un résultat important pour les applications.
Dans le cas des graphes denses, on peut définir un schéma d'approximation en temps polynomial (PTAS)[8].
Approximation
Algorithmes
Un algorithme probabiliste très simple permet d'obtenir un ratio 1/2 : chaque nœud choisit indépendamment et uniformément de quel côté de la coupe il va être. Chaque arête a une probabilité 1/2 d'être dans la coupe, ainsi on obtient au moins la moitié de la valeur de la coupe maximum en espérance. Cet algorithme peut-être dérandomisé pour obtenir un algorithme déterministe, grâce à la Modèle:Lien[9].
Une meilleure approximation peut être atteinte en faisant appel à des techniques plus élaborées. L'algorithme de Goemans et Williamson, permet d'atteindre un ratio , où plus exactement en utilisant l'optimisation semi-définie positive[10]Modèle:,[11]. Il est possible d'utiliser une approximation de la solution du problème SDP pour obtenir un algorithme plus rapide ; cette approximation utilise une forme de la méthode des poids multiplicatifs[12]Modèle:,[13].
Complexité et non-approximabilité
Le problème est difficile à approximer, plus précisément il est APX-hard[14]. En conséquence, il ne possède pas de PTAS, sauf si P=NP, mais il existe des algorithmes d'approximation ayant des ratios constants.
Subhash Khot, Guy Kindler, Elchanan Mossel et Ryan O'Donnell ont montré qu'en supposant la conjecture des jeux uniques (Unique Games Conjecture) l'approximation de Goemans et Williamson est optimale[15]. En supposant seulement que P est différent de NP, on obtient une limite à 16/17[16]Modèle:,[17].
Cas particulier
Il existe un schéma d'approximation en temps polynomial dans le cas des graphes denses[18].
Autres modèles de calcul
Le problème a aussi été étudié du point de vue des algorithmes de streaming[19].
Applications
La coupe maximum est un objet assez naturel qui trouve des applications en physique statistique et en intégration à très grande échelle notamment[20].
Modèle d'Ising
L'une des applications est le modèle d'Ising, les sommets du graphe représentent les atomes et les arêtes représentent les interactions non négligeables. Chaque atome a un spin, up ou down, et les interactions définissent alors des poids. Les coupes maximums correspondent alors aux états d'énergie minimale[21]Modèle:,[22].
Problème de Pinter
Le problème de Pinter consiste à placer des fils des deux côtés d'une plaque, sans intersections, en minimisant le nombre de fils traversant la plaque[23]. Ce problème peut lui aussi être décrit comme un problème de coupe maximum[24].
Bibliographie
Ouvrages généraux
Articles sur le problème algorithmique
Sur les applications
Notes et références
Modèle:Traduction/Référence Modèle:Références
Liens externes
- Modèle:Lien web.
- Un billet de Luca Trevisan sur son blog, à propos de Max-cut et le lien avec la théorie spectrale des graphes.
- Couper, attendrir, trancher, réduire: un conte culinaire sur la résolution informatique des problèmes difficiles, une métaphore culinaire du problème et de sa résolution approchée, par Nicolas Schabanel et Pierre Pansu, dans Modèle:Ouvrage
- Modèle:Lien web
Modèle:Palette 21 problèmes NP-complets de Karp
- ↑ Modèle:Approximation algorithms (Vazirani) Modèle:P..
- ↑ Modèle:Approximation algorithms (Vazirani).
- ↑ Cette remarque est présente dans le billet de Tim Gowers sur le prix Nevanlinna 2014. Il cite lui-même une présentation de Johan Håstad.
- ↑ Modèle:Garey Johnson NP
- ↑ Modèle:Chapitre
- ↑ Modèle:Chapitre
- ↑ Modèle:Article
- ↑ Voir l'article suivant, notamment pour la définition précise de "dense" : Modèle:Article.
- ↑ Modèle:Ouvrage, section 4.10.1
- ↑ Article original : Modèle:Harv
- ↑ Explication en français : Modèle:Harv.
- ↑ Modèle:Article.
- ↑ Modèle:Chapitre
- ↑ Modèle:Article
- ↑ Modèle:Article.
- ↑ Modèle:Article
- ↑ Modèle:Chapitre.
- ↑ Modèle:Article
- ↑ Modèle:Chapitre
- ↑ Voir Modèle:Article.
- ↑ Cette application est tirée de Modèle:Harv, qui contient une explication plus complète.
- ↑ Cette application a été décrite pour la première fois dans : Modèle:Article
- ↑ Voir Modèle:Article.
- ↑ Voir Modèle:Harv. La dénomination "problème de Pinter", provient elle aussi de ce document.