Largeur arborescente

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher

En théorie des graphes et en informatique théorique, la largeur arborescente ou largeur d'arbre d'un graphe (treewidth en anglais) est un nombre associé au graphe. La largeur d'arbre est une façon de savoir si, intuitivement un graphe est proche d'un arbre[1]. Ce nombre peut être défini de plusieurs manières, notamment en utilisant la décomposition arborescente.

Ce paramètre est souvent utilisé en algorithmique de graphes, notamment pour les schémas d'approximation polynomiaux.

Définition[modifier | modifier le code]

Avec la décomposition arborescente[modifier | modifier le code]

Exemple d'un graphe G et d'une décomposition arborescente de G.

Définition d'une décomposition arborescente[modifier | modifier le code]

Informellement, étant donné un graphe non orienté , une décomposition arborescente de est un arbre dont les nœuds sont annotés par des sous-ensembles de sommets de , et où les conditions suivantes sont vérifiées :

  • chaque sommet de apparaît dans l'étiquette d'un nœud de  ;
  • pour toute arête de , il existe un nœud de dont l'étiquette contient et  ;
  • Pour tout sommet de , les nœuds de l'arbre qui contiennent forment un sous-arbre connexe de .

Formellement, étant donné un graphe non orienté , une décomposition arborescente de est un couple est un arbre, et est une fonction associant à chaque nœud de un sous-ensemble , de sorte que les conditions suivantes soient vérifiées :

  • Pour tout sommet , il existe un nœud de l'arbre tel que . Cette condition revient à imposer que l'union soit égale à .
  • Pour toute arête , il existe un nœud de tel que .
  • Pour tout sommet , les nœuds forment un sous-arbre connexe de . Cette condition revient à imposer que, pour tous nœuds et de qui contiennent un même sommet (c'est-à-dire et ), tous les nœuds de sur l'unique chaîne simple entre et satisfont également .

Tout graphe a au moins une décomposition arborescente, par exemple celle où l'arbre a un seul sommet et où . Dans ce cas, tous les sommets et les arêtes du graphe sont couvertes dans , et la condition sur les chemins est trivialement satisfaite. Cependant, cette décomposition n'est pas unique. Plus généralement, tout graphe admet une infinité de décompositions arborescentes : on peut par exemple choisir n'importe quel arbre , et définir par pour tout nœud .

Définition de la largeur arborescente[modifier | modifier le code]

La largeur arborescente d'une décomposition arborescente est le cardinal de la plus grande étiquette moins un. Formellement, il s'agit de . Dans l'exemple de la figure, toutes les étiquettes de cardinal 3, donc la largeur arborescente de cette décomposition arborescente est 2. La largeur arborescente (treewidth) d'un graphe G est le minimum de la largeur arborescente parmi toutes les décompositions arborescentes de ce graphe.

Si l'on considère une décomposition arborescente triviale où les nœuds sont étiquetés par l'ensemble de tous les sommets du graphe, on constate que tout graphe avec sommets a une largeur arborescente de au plus. En revanche, si est un arbre, si on construit en suivant la structure de , on peut obtenir une décomposition arborescente de où chaque étiquette contient exactement deux éléments, donc de largeur 1.

Familles de graphes de largeur arborescente bornée[modifier | modifier le code]

Aspects algorithmiques[modifier | modifier le code]

Calcul de la largeur arborescente[modifier | modifier le code]

Le calcul de la largeur arborescente est NP-difficile[2]. Néanmoins, si est fixé, il existe un algorithme linéaire pour déterminer si la largeur arborescente d'un graphe est . La dépendance en du temps d'exécution de l'algorithme est cependant exponentielle. Pour certaines classes particulières de graphes, calculer la largeur arborescente se fait en temps polynomial (arbres, graphes triangulés,… ).

Utilisations en algorithmique[modifier | modifier le code]

De nombreux problèmes de graphes NP-difficiles dans le cas général peuvent être résolus en temps polynomial si on se restreint aux graphes de largeur arborescente bornée. C'est donc un bon paramètre pour la complexité paramétrée. Il existe même un théorème général : si le problème est exprimable en logique monadique du second ordre, il peut même être résolu en temps linéaire (mais la constante est une tour d'exponentielles en qui rend l'algorithme inapplicable en général).

Par exemple le problème du stable maximum pour des graphes planaires, peut-être résolu en temps polynomial pour une largeur arborescente bornée (on prend alors cette largeur comme une constante)[3], ce qui permet d'obtenir un schéma d'approximation en temps polynomial quand on ne contraint pas la largeur.

Liens avec les graphes triangulés[modifier | modifier le code]

Le concept de décomposition arborescente a un lien très fort avec les graphes triangulés. Premièrement, la largeur arborescente d'un graphe triangulé H est égale à la taille de sa plus grande clique moins un. Deuxièmement, la valeur peut être calculée à l'aide d'un algorithme linéaire si le graphe H est triangulé. Dans la littérature de recherche opérationnelle, les algorithmes de calcul de la largeur arborescente d'un graphe G cherchent souvent à déterminer le graphe triangulé H de plus petite valeur qui contient G.

Paramètres de graphes associés[modifier | modifier le code]

La largeur arborescente peut-être reliée à d'autres paramètres de graphes, comme la dégénérescence.

Une variante pour les graphes orientés a été définie, elle vaut zéro sur les graphes orientés acycliques[4].

Bibliographie[modifier | modifier le code]

Ouvrages[modifier | modifier le code]

Articles[modifier | modifier le code]

  • S. Arnborg, D. Corneil et A. Proskurowski, « Complexity of finding embeddings in a k-tree », SIAM Journal on Matrix Analysis and Applications, vol. 8, no 2,‎ , p. 277–284 (DOI 10.1137/0608024)

Notes et références[modifier | modifier le code]

  1. (en) David P. Williamson et David B. Shmoys, Design of approximation algorithms, Cambridge University Press, , 500 p. (présentation en ligne, lire en ligne), chap. 10.2 (« The maximum independent set problem in planar graphs ») p. 272
  2. (Arnborg, Corneil et Proskurowski 1987)
  3. Williamson et David B. Shmoys, The design of approximation algorithms, p. 273
  4. Thor Johnson, Neil Robertson, Paul D. Seymour et Robin Thomas, « Directed Tree-Width », J. Comb. Theory, Ser. B, vol. 8, no 1,‎ , p. 138-154 (DOI 10.1006/jctb.2000.2031)