Problème de l'isomorphisme de sous-graphes

En informatique théorique, le problème de l'isomorphisme de sous-graphes est le problème de décision suivant : étant donnés deux graphes G et H, déterminer si G contient un sous-graphe isomorphe à H[1]. C'est une généralisation du problème de l'isomorphisme de graphes.

Le problème est de savoir si un graphe contient un autre graphe comme sous-graphe.

Définition modifier

Soient   et   deux graphes. Le problème de décision de l'isomorphisme de sous-graphe est : « Est-ce qu'il existe un sous-graphe  , avec   et  , tel qu'il existe une bijection   telle que   ? ».

Complexité modifier

Le problème est NP-complet[2].

Réduction du problème de la clique modifier

Le problème de la clique se réduit en temps polynomial au problème de l'isomorphisme de sous-graphe. Il suffit de prendre pour   une  -clique, dès lors, par définition le problème de l'isomorphisme de sous-graphes généralise le problème de la clique. Puisque le problème de la clique est NP-difficile, alors le problème de l'isomorphisme est NP-difficile.

Un autre réduction consiste à utiliser le problème du chemin hamiltonien, et a l'avantage de montrer que le problème est aussi difficile sur les graphes planaires[3].

Algorithme non-déterministe polynomial modifier

Il existe un algorithme non-déterministe qui résout en temps polynomial le problème. L'algorithme consiste à prendre le sous-graphe   et une fonction   aléatoirement, puis à vérifier si   est un isomorphisme. Vérifier que   est bien un isomorphisme se calcule en temps polynomial : il suffit de voir si tous les voisinages sont conservés par l'isomorphisme.

Relation à d'autres problèmes modifier

Le problème de l'isomorphisme de sous-graphes est un problème plus général que le problème de l'isomorphisme de graphes, où on demande si G et H sont isomorphes. En effet, on peut décider l'isomorphisme de G et H et donnant (G, H) en entrée à un algorithme qui décide l'isomorphisme de sous-graphes.

Notes et références modifier

  1. J. R. Ullmann, « An Algorithm for Subgraph Isomorphism », J. ACM, vol. 23, no 1,‎ , p. 31–42 (ISSN 0004-5411, DOI 10.1145/321921.321925, lire en ligne, consulté le )
  2. Ingo Wegener, Complexity Theory : Exploring the Limits of Efficient Algorithms, Springer, , 308 p. (ISBN 978-3-540-21045-0, lire en ligne), p. 81.
  3. Colin de la Higuera, Jean-Christophe Janodet, Émilie Samuel, Guillaume Damiand et Christine Solnon, « Polynomial algorithms for open plane graph and subgraph isomorphisms », Theoretical Computer Science, vol. 498,‎ , p. 76-99 (DOI 10.1016/j.tcs.2013.05.026, lire en ligne) « It is known since the mid-70’s that the isomorphism problem is solvable in polynomial time for plane graphs. However, it has also been noted that the subisomorphism problem is still NP-complete, in particular because the Hamiltonian cycle problem is NP-complete for planar graphs. »