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:A→Rune fonction de
pond´eration des arˆetes.
•Probl`eme : trouver un sous-ensemble T⊆Atel 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
E←E∪ {(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 S−U.
•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 S−U.
•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:A→Rune
fonction de pond´eration. Soit E⊆Ainclus 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 l'interface ou les textes ? Ou savez-vous comment améliorer l'interface utilisateur de StudyLib ? N'hésitez pas à envoyer vos suggestions. C'est très important pour nous!