Vous êtes sur la page 1sur 30

Université de Monastir

Théorie des Graphes et Optimisation:


Arbres couvrants minimaux

Ali Ben Mrad


https://sites.google.com/view/alibenmrad

Faculté des Sciences de Monastir


Département d’informatique
Spring 2018–1019

March 12, 2019


Plan

1 Arbres couvrants minimaux

2 Méthode de PRIM

3 Méthode de Krushkal

2
Arbres couvrants minimaux

Graphe pondéré

Definition
Un graphe pondéré est un graphe étiqueté où chaque arête est affectée
d’un nombre réel positif, appelé poids de cette arête.

3
Arbres couvrants minimaux

Motivation

Un réseau comporte des machines a, b, c, d, e, f , et g qui doivent


pouvoir communiquer entre elles. Les liaisons envisagées sont
représentées par le graphe suivant (les arêtes sont étiquetées par la
distance entre les machines):

Question : Comment câbler le réseau à moindre coût?

4
Arbres couvrants minimaux

Motivation

Réponse : Il s’agit d’enlever des arêtes au graphe de façon qu’il reste


connexe, et que la somme des pondérations des arêtes soit la plus
petite possible.

Remarquons que le graphe partiel recherché est sans cycle (pourquoi ?)

5
Arbres couvrants minimaux

Arbre couvrant

Definition
Un arbre couvrant du graphe G est un graphe partiel qui est aussi un arbre.

6
Arbres couvrants minimaux

Arbres couvrants minimaux


Le problème de l’arbre couvrant de poids minimal (ou arbre couvrant
minimal) consiste à trouver un arbre couvrant du graphe tel que son
poids soit minimal.
Ce problème se pose, par exemple, lorsqu’on désire relier n villes par
un réseau routier de coût minimum. Les sommets du graphe
représentent les villes, les arêtes, les tronçons qu’il est possible de
construire et les poids des arêtes correspondent aux coûts de
construction du tronçon correspondant.
L’exemple suivant montre que la solution n’est pas unique:

7
Arbres couvrants minimaux

Origine

Otakar Boruvka (1926).

Electrical Power Company of Western Moravia in Brno, Czeck republic.

Most economical construction of electrical power network.

8
Arbres couvrants minimaux

Applications
Medical Image Processing

Figure: MST describes arrangement of nuclei in the epithelium for cancer research
9
Arbres couvrants minimaux

Applications
Genetic Research

Figure: MST of tissue relationships measured by gene expression correlation


coefficient 10
Arbres couvrants minimaux

Coupe

Definition
Une coupe ou coupure d’un graphe est une partition des sommets en deux
sous-ensembles. On appelle aussi coupe, l’ensemble des arêtes ayant une
extrémité dans chaque sous-ensemble de la partition.

11
Arbres couvrants minimaux

Coupure

Dans un graphe non connexe, une coupure respecte un sous-ensemble


d’arêtes si aucune arête traverse la coupure.

L’exemple suivant montre un sous-ensemble qui respecte la coupure:

12
Arbres couvrants minimaux

Arête sûre

Propriété.
Soit GP un graphe partiel de l’arbre couvrant minimal, une arête est sûre si
lorsqu’elle est ajoutée à GP , GP est toujours un graphe partiel de l’arbre
couvrant minimal.
N.B. Une arête de poids minimal traversant la coupe est sûre.

13
Méthode de PRIM

Méthode de PRIM

Les étapes de la méthode sont les suivantes:


1 Poser AR = ∅ et SO = ∅.

2 Choisir un sommet du graphe que l’on ajoute à SO.

3 Créer une coupure à partir de SO.

4 Ajouter une arête traversante minimale dans AR.

5 Ajouter l’extrémité de cette arête dans SO.


Les trois dernières étapes doivent être effectuées jusqu’à ce SO contiennent
tous les sommets du graphe.

14
Méthode de PRIM

Méthode de PRIM
Exemple

À partir du graphe défini dans l’exemple suivant, on pose AR = ∅ et


SO = ∅.

Pour illustrer cet exemple, le code couleur retenu est le suivant:


bleu: coupure entre SO et le reste du graphe,
jaune: arête traversante,
rouge: arête traversante minimale,
violet: arête traversante retenue,
vert: arête de l’arbre couvrant. 15
Méthode de PRIM

Méthode de PRIM
Exemple1

On choisit le sommet s1 que l’on ajoute à SO.


On constate que les arêtes a1 , a3 et a4 traversent la coupure
construite à partir de SO.
On choisit a3 comme arête traversante minimale et l’on ajoute s4 à
SO.
Il est à noter que l’arête a1 est également une arête minimale.

1
bleu: coupure entre SO et le reste du graphe; jaune: arête traversante;
rouge: arête traversante minimale; violet: arête traversante retenue; vert: arête
16
Méthode de PRIM

Méthode de PRIM
Exemple2

A partir de SO, on construit une nouvelle coupure.


On constate que les arêtes a1 , a4 , a9 et a11 traversent la coupure
construite à partir de SO.
On choisit a1 comme arête traversante minimale et on ajoute s3 à SO.

2
bleu: coupure entre SO et le reste du graphe; jaune: arête traversante;
rouge: arête traversante minimale; violet: arête traversante retenue; vert: arête
de l’arbre couvrant.
17
Méthode de PRIM

Méthode de PRIM
Exemple3

A partir de SO, on construit une nouvelle coupure.


On constate que les arêtes a2 , a4 , a5 , a6 , a9 et a11 traversent la
coupure construite à partir de SO.
On choisit a6 comme arête traversante minimale et on ajoute s6 à SO.

3
bleu: coupure entre SO et le reste du graphe; jaune: arête traversante;
rouge: arête traversante minimale; violet: arête traversante retenue; vert: arête
de l’arbre couvrant.
18
Méthode de PRIM

Méthode de PRIM
Exemple4

A partir de SO, on construit une nouvelle coupure.


On constate que les arêtes a2 , a4 , a5 , a7 , a9 , a10 et a12 traversent la
coupure construite à partir de SO.
On choisit a12 comme arête traversante minimale et on ajoute s8 à
SO.
Il est à noter que a11 n’et plus une arête traversante.

4
bleu: coupure entre SO et le reste du graphe; jaune: arête traversante;
rouge: arête traversante minimale; violet: arête traversante retenue; vert: arête 19
Méthode de PRIM

Méthode de PRIM
Exemple5

A partir de SO, on construit une nouvelle coupure.


On constate que les arêtes a2 , a4 , a5 , a7 , a8 , a9 et a10 traversent la
coupure construite à partir de SO.
On choisit a8 comme arête traversante minimale et on ajoute s7 à SO.

5
bleu: coupure entre SO et le reste du graphe; jaune: arête traversante;
rouge: arête traversante minimale; violet: arête traversante retenue; vert: arête
de l’arbre couvrant.
20
Méthode de PRIM

Méthode de PRIM
Exemple6

A partir de SO, on construit une nouvelle coupure.


On constate que les arêtes a4 , a5 , a9 et a10 traversent la coupure
construite à partir de SO.
On choisit a10 comme arête traversante minimale et on ajoute s5 à
SO.

6
bleu: coupure entre SO et le reste du graphe; jaune: arête traversante;
rouge: arête traversante minimale; violet: arête traversante retenue; vert: arête
de l’arbre couvrant.
21
Méthode de PRIM

Méthode de PRIM
Exemple7

A partir de SO, on construit une nouvelle coupure.


On constate que les arêtes a4 et a5 traversent la coupure construite à
partir de SO.
On choisit a4 comme arête traversante minimale et on ajoute s2 à SO.

7
bleu: coupure entre SO et le reste du graphe; jaune: arête traversante;
rouge: arête traversante minimale; violet: arête traversante retenue; vert: arête
de l’arbre couvrant.
22
Méthode de PRIM

Méthode de PRIM
Exemple8

Suite à la sélection de l’arête a4 dans la dernière étape et à l’ajout de


s2 dans SO, l’ensemble SO contient tous les sommets du graphe.

8
bleu: coupure entre SO et le reste du graphe; jaune: arête traversante;
rouge: arête traversante minimale; violet: arête traversante retenue; vert: arête
de l’arbre couvrant.
23
Méthode de Krushkal

Méthode de Krushkal
Principe

L’algorithme construit un arbre couvrant minimal en sélectionnant des


arêtes par poids croissant.

Plus précisément, l’algorithme considère toutes les arêtes du graphe


par poids croissant et pour chacune d’elle, il la sélectionne si elle ne
crée pas un cycle.

24
Méthode de Krushkal

Méthode de Krushkal
Exemple

AD et CE sont les arêtes de poids les plus faibles, ici 5.

AD est sélectionnée de manière arbitraire.

25
Méthode de Krushkal

Méthode de Krushkal
Exemple

CE est l’arête suivante de poids le plus faible.

Elle est sélectionnée car elle ne forme pas de cycle.

26
Méthode de Krushkal

Méthode de Krushkal
Exemple

L’arête DF de poids 6 est ensuite choisie.

27
Méthode de Krushkal

Méthode de Krushkal
Exemple

Les arêtes de poids faibles (7) suivantes sont AB et BE.


AB est choisie de manière arbitraire.
L’arête BD est dessinée en rouge car il existe un chemin (en vert)
entre B et D. BD ne sera donc jamais sélectionnée.

28
Méthode de Krushkal

Méthode de Krushkal
Exemple

La prochaine arête considérée est BE de poids 7.


BC ne sera jamais choisie car la choisir formerait le cycle BCE.
De même DE formerait le cycle DEBA et FE formerait le cycle
FEBAD.

29
Méthode de Krushkal

Méthode de Krushkal
Exemple

Finalement, l’arête EG de poids 9 est choisie et un arbre couvrant


minimal est trouvé (en vert).

On remarque que lors du déroulement de l’algorithme, les arêtes


sélectionnées ne forment pas nécessairement un graphe connexe.
Mais à la fin, les arêtes sélectionnées (en vert) forment un graphe
connexe.
30

Vous aimerez peut-être aussi