Calcul d’un arbre de recouvrement minimal
Ahmed Bouajjani
ENS Cachan, Magist`ere STIC, 2004-05
1
Probl`eme de l’arbre de recouvrement minimal
Soit G= (S, A)un graphe non orient´e, et soit p:ARune fonction de
pond´eration des arˆetes.
Probl`eme : trouver un sous-ensemble TAtel que
Test acyclique (un arbre)
Tconnecte tous les sommets de G
Ta un poids total
p(T) = X
(u,v)T
p(u, v)
minimal
2
Un algorithme g´en´erique
Calculer progressivement un ensemble Ed’arˆetes en maintenant l’invariant
Eest un sous-ensemble d’un arbre de recouvrement minimal
• ⇒ Ajouter `a chaque it´eration une arˆete (u, v)admissible pour E:
E∪ {(u, v)}satisfait toujours l’invariant
ARM-Gen(G, p) =
E← ∅
tant que En’est pas un ARM faire
Trouver une arˆete (u, v)admissible pour E
EE∪ {(u, v)}
retourner E
3
Trouver un arc admissible
Une coupure de G= (S, A)est une partition (U, S U)de S.
Un arc (u, v)traverse une coupure (U, S U)si une des extr´emit´es est dans
Uet l’autre dans SU.
Une coupure respecte un ensemble d’arcs Esi aucun des arcs de Ene
traverse la coupure.
Un arc est l´eger pour une coupure (U, S U)s’il traverse la coupure, et si
son poids est le poids minimum parmi ceux des arcs traversant cette coupure.
4
Trouver un arc admissible
Une coupure de G= (S, A)est une partition (U, S U)de S.
Un arc (u, v)traverse une coupure (U, S U)si une des extr´emit´es est dans
Uet l’autre dans SU.
Une coupure respecte un ensemble d’arcs Esi aucun des arcs de Ene
traverse la coupure.
Un arc est l´eger pour une coupure (U, S U)s’il traverse la coupure, et si
son poids est le poids minimum parmi ceux des arcs traversant cette coupure.
Thm 1:
Soit G= (S, A)un graphe connexe non orient´e, et soit p:ARune
fonction de pond´eration. Soit EAinclus dans un ARM de G, soit
(U, S U)une coupure de Gqui respecte E, et soit (u, v)un arc l´eger
pour la coupure (U, S U). Alors, l’arc (u, v)est admissible pour E.
5
1 / 13 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !