Composantes Fortement Connexes

Rappel :

Composantes simplement connexes

Nous pouvons définir la connexité simple de la manière suivante : x, ∀y : ∃ chaîne entre x et y.

La notion « simplement connexe » (en anglais, “weakly connected”) peut s'appliquer à l'ensemble du graphe (si pour tout couple de sommet x et y il existe une chaîne entre x et y), ou à une partie du graphe (nous parlons alors de composante simplement connexe). Cette notion de connexité simple est assez évidente lorsque nous avons peu de sommets et que nous représentons graphiquement le graphe, comme dans l'exemple ci dessous. Nous pouvons dès lors constater qu'au sein d'une composante simplement connexe (csc) chaque sommet est accessible au départ de n'importe quel sommet de la composante.

Graphes simplement connexes

Si mn-1, toutes les arêtes2sont reliées. Dans ce cas, nous avons une seule composante simplement connexe.

Si m < n-1, nous nous trouvons en présence de plus d'une composante simplement connexe.

L'exemple ci-contre montre que notre graphe comporte deux composantes simplement connexes.
Les sommets {1, 2, 3, 4, 5} forment une composante simplement connexe, et les sommets {6,7} forment la deuxième.

Cet exemple montre un graphe simple non-orienté. Qu'en est-il pour les graphes orientés ?

Dans notre premier exemple, si nous appliquons cete définition le ne comportait qu'une seule csc composée des sommets {1,3}, et cinq csc composées chacune d'un seul sommet ({2}, {4}, {5}, {6}, et {7}). Or ce n'est pas le cas.
Dans le cas de graphes orientés nous devons considérer les arcs comme des arêtes, et nous pouvons ensuite appliquer la définition de la csc qui dit que chaque sommet de la composante simplement connexe doit être accessible depuis n'importe quel sommet de la même composante.

Si notre graphe comportait un huitième sommet qui n'était relié à aucun autre sommet, ou s'il était relié à lui même par une boucle, il serait considéré comme une composante simplement connexe, car tout sommet isolé respecte la définition de la csc. Nous aurions alors trois composantes simplement connexes.

Un graphe complet est donc toujours simplement connexe, mais tout graphe simplement connexe n'est pas forcément complet, car la connexité relie x et y par des chaînes (peu importe la longueur), mais un graphe complet a la contrainte que x et y soient reliés par seulement des chaînes (ou chemins) de longueur 1.

Inhoudsopgave Haut

Composantes fortement connexes

Nous pouvons définir la connexité forte de la manière suivante : x, ∀y : ∃ chemin entre x et y et ∃ chemin entre y et x.

Nous pourrions considérer chaque composante simplement connexe d'un graphe non-orienté comme une composante « fortement connexe » (en anglais, “strongly connected”) de ce graphe, en considérant chaque arête comme deux arcs de sens opposés, mais nous réserverons uniquement la connexité forte aux graphes orientés.

Comme dans le cas de la connexité simple, la connexité forte peut s'appliquer à un graphe en entier (graphe fortement connexe), ou le graphe peut être décomposé en composantes fortement connexes.

Un graphe complet est donc toujours un graphe fortement connexe (car nous pouvons remplacer les arêtes par deux arcs aux directions opposées), mais l'inverse n'est pas toujours vrai (pour être complet, les chemins doivent avoir une longueur 1).

De par sa définition, un graphe fortement connexe contient forcément des circuits.

Pour chercher les composantes fortement connexes d'un graphe, nous pouvons utiliser les algorithmes de Foulkes ou de Malgrange.

Inhoudsopgave Haut

Algorithme de Foulkes

Fonctionnalités de l'algorithme de Foulkes

  • L'algorithme de Foulkes permet de construire les composantes fortement connexes d'un graphe.

Caractéristiques de l'algorithme de Foulkes

L'algorithme de Foulkes présume que nous avons préalablement effectué une recherche de la fermeture transitive de notre graphe (par exemple avec l'algorithme de Warshall).

Si deux sommets appartiennent à la même composante fortement connexe, nous pouvons en déduire certaines similitudes au niveau de la matrice d'accessibilité (ils peuvent accéder au même ensemble de sommets). Nous devrons donc chercher au sein de la matrice de fermeture transitive les sommets pour lesquels la ligne dans cette matrice est identique. Ils appartiennent donc à la même composante fortement connexe.

Inhoudsopgave Haut

Complexité de l'algorithme de Foulkes

La complexité générale est de Ordre de grandeur(n3) car le calcul de la matrice de fermeture transitive est déjà de Ordre de grandeur(n3).

Algorithme de Malgrange

Fonctionnalités de l'algorithme de Malgrange

  • L'algorithme de Malgrange permet de construire les composantes fortement connexes d'un graphe.

Caractéristiques de l'algorithme de Malgrange

  • Choisir arbitrairement un sommet x
  • Chercher les successeurs de x, soit S(x) au moyen de DFS
  • Chercher les prédécesseurs de x, soit P(x) au moyen de DFS
  • S(x) ∩P(x) nous donne la composante fortement connexe contenant x.

Nederlandse vertaling

U hebt gevraagd om deze site in het Nederlands te bezoeken. Voor nu wordt alleen de interface vertaald, maar nog niet alle inhoud.

Als je me wilt helpen met vertalingen, is je bijdrage welkom. Het enige dat u hoeft te doen, is u op de site registreren en mij een bericht sturen waarin u wordt gevraagd om u toe te voegen aan de groep vertalers, zodat u de gewenste pagina's kunt vertalen. Een link onderaan elke vertaalde pagina geeft aan dat u de vertaler bent en heeft een link naar uw profiel.

Bij voorbaat dank.

Document heeft de 03/01/2010 gemaakt, de laatste keer de 26/10/2018 gewijzigd
Bron van het afgedrukte document:https://www.gaudry.be/nl/graphes-cfc.html

De infobrol is een persoonlijke site waarvan de inhoud uitsluitend mijn verantwoordelijkheid is. De tekst is beschikbaar onder CreativeCommons-licentie (BY-NC-SA). Meer info op de gebruiksvoorwaarden en de auteur.

Notes

  1.  simplement connexe : komt overeen met “weakly connected” en anglais

  2.  Arête ou arc : Nous utilisons ici le terme arête pour désigner aussi bien une arête qu'un arc

  3.  fortement connexe : komt overeen met “strongly connected” en anglais

Inhoudsopgave Haut

Referenties

  1. boek Taal van het document:fr INFOB321 - Théorie des graphes : JP Leclercq, Cours de Théorie des Graphes et réseaux de Petri (September 2008)
  2. Bekijk - pdf-document Taal van het document:fr Algorithmique des graphes : Jean-Michel Hélary, Circuits. Composantes fortement connexes. (2004)

Deze verwijzingen en links verwijzen naar documenten die geraadpleegd zijn tijdens het schrijven van deze pagina, of die aanvullende informatie kunnen geven, maar de auteurs van deze bronnen kunnen niet verantwoordelijk worden gehouden voor de inhoud van deze pagina.
De auteur Deze site is als enige verantwoordelijk voor de manier waarop de verschillende concepten, en de vrijheden die met de referentiewerken worden genomen, hier worden gepresenteerd. Vergeet niet dat u meerdere broninformatie moet doorgeven om het risico op fouten te verkleinen.

Inhoudsopgave Haut