• Aucun résultat trouvé

Arbres couvrants

N/A
N/A
Protected

Academic year: 2022

Partager "Arbres couvrants"

Copied!
7
0
0

Texte intégral

(1)

Arbres couvrants

Master 2 Informatique - UFR S.A.T

Pr. Ousmane THIARE

[email protected] http://www.ousmanethiare.com/

(2)

Arbres en larger d’abord (BFS) [Breath First Search]

Arbres en profondeur d’abord (DFS) [Depth First Search]

Arbres de poids minimum (MST) [Minimum Spanning Tree

Chapitre 4 : Arbres couvrants

(3)

Arbres en larger d’abord (BFS) [Breath First Search]

Arbres en profondeur d’abord (DFS) [Depth First Search]

Arbres de poids minimum (MST) [Minimum Spanning Tree

Chapitre 4 : Arbres couvrants

Dans ce chapitre on s’intéresse au calcul d’arbres couvrants (BFS, DFS, de poids minimum) en mode asynchrone. On suppose donc dans la suite qu’on est en mode asynchrone (model ASYNC).

1 Arbres en larger d’abord (BFS) [Breath First Search]

2 Arbres en profondeur d’abord (DFS) [Depth First Search]

3 Arbres de poids minimum (MST) [Minimum Spanning

(4)

Arbres en larger d’abord (BFS) [Breath First Search]

Arbres en profondeur d’abord (DFS) [Depth First Search]

Arbres de poids minimum (MST) [Minimum Spanning Tree

Arbre et diffusion

Arbres en largeur d’abord (BFS) [Breath First Search]

Un arbre BFS de raciner0est un arbre T tel que dT(r0,u) =dG(r0,u)pour tout sommet u de T. L’arbre T est couvrant s’il passe par tous les sommets de G, c’est-à-dire si V(T) = V(G).

Nous avons vu au chapitre précédant comment construire un arbre couvrant à partir de Flood (corollaire). En mode synchrone cet arbre est précisément un BFS. L’enjeux ici est de le faire en mode asynchrone.

(5)

Arbres en larger d’abord (BFS) [Breath First Search]

Arbres en profondeur d’abord (DFS) [Depth First Search]

Arbres de poids minimum (MST) [Minimum Spanning Tree

Arbre et diffusion

Arbres en profondeur d’abord (DFS) [Depth First Search]

Il s’agit maintenant de visiter tous les sommets d’un graphe en suivant les arêtes. En séquentiel on utilise un parcours en profondeur d’abord (DFS). Le principe est de démarrer depuis un sommetr0et pour chaque sommet v faire : si v a des voisins non encore visités, alors on en visite un. Sinon, on revient vers le sommet qui a visité v en premier. Si aucun de ces sommets n’existe, la recherche est terminée. En séquentiel, cela prend un tempsΘ(|E|), tous les voisins de tous les sommets pouvant être testés.

...

(6)

Arbres en larger d’abord (BFS) [Breath First Search]

Arbres en profondeur d’abord (DFS) [Depth First Search]

Arbres de poids minimum (MST) [Minimum Spanning Tree

Arbre et diffusion

Arbres de poids minimum (MST) [Minimum Spanning Tree

En séquentiel, il y a principalement deux algorithmes : PRIM et KRUSKAL. Pour PRIM, on maintient un arbre T de raciner0qui grossit en ajoutant à chaque fois l’arête sortante de poids minimum, c’est-à-dire l’arête incidente dont une seule extrémité est dans T et qui est de poids le plus petit possible. L’arbre est initialisé au sommet seulr0. Pour KRUSKAL, on trie les arêtes, puis on ajoute à la forêt l’arête la plus petite ne créant pas de cycle. Au départ T est vide.

Prendre un exemple et faire tourner avec PRIM puis KRUSKAL.

(7)

Arbres en larger d’abord (BFS) [Breath First Search]

Arbres en profondeur d’abord (DFS) [Depth First Search]

Arbres de poids minimum (MST) [Minimum Spanning Tree

Arbre et diffusion

Arbres de poids minimum (MST) [Minimum Spanning Tree

Remarque de culture générale

Le problème de MST peut être généralisé de la manière suivante, appelé « arbre de Steiner » : on fixe un

ensemble de sommets, disonsU⊆V(G), et on demande de construire un arbre couvrant U et de poids minimum.

Donc MST=Steiner avec U=V(G). Motivation : un groupe d’utilisateurs doit recevoir le même film vidéo et il faut optimiser le coût de diffusion.

Calculer un arbre de Steiner est un problème est NP-complet [Karp 1972] (c’est-à-dire on ne connaît pas

Références

Documents relatifs

\\ Julien se couchera dans son lit.. \\ Tu regarderas

(f) Trouver un algorithme plus rapide que celui de Dijkstra pour trouver les plus court chemins et leur longueur ` a partir d’un sommet u donn´ e dans un graphe non-pond´ er´

Et pour être précis, la masse dépend du nombre des atomes mais aussi de leur nature ; En effet, tous les atomes n'ont pas la même masse, certains sont plus lourds que d'autres?.

En effet, si l'on aborde le point P par une route sur la surface qui ne soit pas tangente à l'arête, on ob- tiendra nécessairement la même l i m i t e ; car les courbes C qui

Compétence: Reconnaître des mots écrits dans des systèmes graphiques différents Reconnaître un mot dans une phrase.. ARBRE

Un arbre couvrant de poids minimum est unique si et seulement si les poids de ces arêtes sont deux à deux

pour trouver l’arête de poids minimum sortante du fragment Les fragments sont fusionner entre eux. grâce à l’arête de poids minimum La démarche est

Our algorithm uses the GHS approach to merge the fragments using minimum outgoing edges to construct a spanning tree, and deletes the edge of maximum weight in each fundamental cycle