Lundi 4 octobre 2010 Comparaison de 4 algorithmes pour le problème du vertex cover François Delbot...

Post on 03-Apr-2015

104 views 0 download

Transcript of Lundi 4 octobre 2010 Comparaison de 4 algorithmes pour le problème du vertex cover François Delbot...

Lundi 4 octobre 2010

Comparaison de 4 algorithmes pour le problème du vertex cover

François Delbot Laboratoire d’Analyse, Topologie, Probabilités (CNRS - UMR 6632) Université d'Aix-Marseille 1 Post-doctorat financé par l'ANR Boole

Thèse préparée au laboratoire IBISC de l’université d’Évry Val d’Essonne

Journées Graphes et Algorithmes 2010

Travaux réalisés en collaboration avec :

Étienne Birmelé (Laboratoire Statistique & Génome, Université d’Evry)Christian Laforest (LIMOS, Université Blaise Pascal de Clermont-Ferrand)

Introduction

• Algorithmes exacts• Théorie de la complexité

– Problèmes polynomiaux (temps raisonnable) – Problèmes NP-complets (temps déraisonnable)

• Algorithmes d’approximation – Solutions dégradées– Rapport d’approximation en pire cas (rapc)– Objectif : trouver le meilleur rapc

• Rapc ne prend pas en compte toutes les exécutions possibles

francois.delbot@gmail.com 2

Présentation du problème

Une couverture Une couverture optimale

Un problème NP-complet

Le problème du Vertex Cover

francois.delbot@gmail.com 3

≈log()

Un algorithme onlineOLVC [Demange et Paschos, TCS 2005]

• Propriété : le VC construit est minimal pour l’inclusion.• Rapport d’approximation en pire cas : (atteint)

4 5 3 21 6

1 2

3 4 5 6

francois.delbot@gmail.com

Modèle on line : Sommets dévoilés un par un. Décision irrévocable pour chaque sommet révélé.

Algorithme : u est dévoilé. Si u possède un voisin dévoilé qui n’est pas dans la solution, on sélectionne u.

Le problème du Vertex Cover

4

L’algorithme online et les étoiles

francois.delbot@gmail.com

Exécution en pire cas

Le sommet central est dévoilé en premiercela concerne (n-1)! ordres de révélation

Le sommet central n’est pas dévoilé en premiercela concerne (n-1)(n-1)! ordres de révélation

Dans les autres cas

Considérons le cas des étoiles à n sommets

Sous hypothèse d’équiprobabilitéProbabilité 1/n Probabilité n-1/n

Espérance de la taille de la solution retournée:

Le problème du Vertex Cover

5

L’algorithme on line est 2-approché en moyenne

francois.delbot@gmail.com

Théorème

Au début, aucun sommet n'est sélectionné. Les sommets sont examinés un par un dans n'importe quel ordre donné.

Soit u le sommet courant (celui que l'on examine). Si u n'est pas sélectionné, alors on sélectionne tout son voisinage. Lorsque tous les sommets ont été considérés, on retourne tous les sommets sélectionnés.

Algorithme glouton

Le problème du Vertex Cover

6

Glouton et online retournent la même solution

• Le premier sommet n’est sélectionné par aucun des deux algorithmes.• (Hyp.) Les deux algorithmes sélectionnent exactement les mêmes

sommets jusqu'au sommet courant u.

francois.delbot@gmail.com

Le problème du Vertex Cover

Par induction :

7

- Glouton sélectionne uu

Déjà parcouru/révélé online sélectionne u

- Glouton ne sélectionne pas uu

online ne sélectionne pas u

Pas de voisinparcouru/révélé

u Tous les voisinsparcourus/révéléssont déjà sélectionnés

Démonstration : l’algorithme on line est 2-approché en moyenne

francois.delbot@gmail.com

Le problème du Vertex Cover

8

• Les sommets isolés n’influencent pas la solution• Par induction sur la taille optimale• Vrai pour opt(G)=1 (les étoiles)

• (Hyp.) pour tout G tel que opt(G) ≤ k-1,

• Soit G un graphe tel que opt(G)=k et une partition (H,I) de G :

OPT

V/OPT

H

I

est une couverture de

Nous pouvons donc appliquer (Hyp.) sur

Démonstration : l’algorithme on line est 2-approché en moyenne

francois.delbot@gmail.com

Le problème du Vertex Cover

9

≤0

Démonstration : l’algorithme on line est 2-approché en moyenne

10 francois.delbot@gmail.com

Le problème du Vertex Cover

Ce qui prouve le résultat !

Comparaison de deux algorithmes de liste

• Traite les sommets un par un• Ordre fixé à l’avance (une liste) • Décision irrévocable

Algorithme de liste

11 francois.delbot@gmail.com

Le problème du Vertex Cover

online liste offline

Manipulation/connaissance du graphe

L’algorithme List-LeftAlgorithme List-Left

• Avis et Imamura (ORL 2006) : si les listes sont triées par degrés décroissants alors rapc est de .

12 francois.delbot@gmail.com

Le problème du Vertex Cover

4 5 3 21 6

1 2

3 4 5 6

L’algorithme List-Right

Algorithme List-Right

Nous avons proposé un autre algorithme de liste (IPL 2008):

13 francois.delbot@gmail.com

Fait exactement les mêmes choix que l’algorithme online lorsqu’ils considèrent les sommets dans le même ordre.

Le problème du Vertex Cover

ListRight est meilleur que ListLeft

Pour toute liste, ListRight retourne une solution dont la taille estinférieure ou égale à celle retournée par ListLeft.

14 francois.delbot@gmail.com

Théorème

Le problème du Vertex Cover

Démonstration en considérant une partition des sommets d’une liste :

5 1 4 62 3

5 6

1 2

4

3

• Aucun des deux algorithmes ne retourne de sommet isolé : 4• Aucun des deux algorithmes ne retourne de sommet ne possédant que des voisins à gauche dans la liste : 3 et 6• ListLeft retourne tous les sommets possédant au moins un voisin à droite : 5, 1 et 2• Ce n’est pas le cas de ListRight qui ne retourne pas le sommet 1

Théorème

entier d>2, un graphe G tel que pour n’importe quelle liste triée :• ListRight retourne OPT. • ListLeft retourne une solution de taille |OPT|.

21d

L’algorithme on line est un très bon algorithme !

15 francois.delbot@gmail.com

• Il retourne des solutions minimales pour l’inclusion• Il peut toujours retourner une solution optimale• Il possède de bonnes performances en moyenne• Il est toujours meilleur que certains algorithmes (par exemple ListLeft)• On peut facilement le répartir

• L’algorithme online (et glouton et ListRight) possède un mauvais rapport d’approximation en pire cas, mais :

Comment se comportent les autres algorithmes ?

Le problème du Vertex Cover

Présentation des algorithmes

16 francois.delbot@gmail.com

Le problème du Vertex Cover

Algorithme Rapport d’approximation en pire cas Classement

ED 2 1

MDG ≈log() 2

ListRight 3

ListLeft Au moins au plus +1 4

Algorithme Rapport d’approximation en pire cas

ED 2

MDG ≈log()

ListRight

Algorithme Rapport d’approximation en pire casAlgorithme Rapport d’approximation en pire cas

ED 2

MDG ≈log()

Algorithme Rapport d’approximation en pire cas

ED 2

Algorithme Rapport d’approximation en pire cas

Calcul de l’espérance de différents algorithmes sur les chemins

francois.delbot@gmail.com

Exemple de lemme

1 2 3 k-1 k k+1 n-1 n

En passant par les séries génératrices, on peut les dérécursiver etobtenir une formule close :Lorsqu’on retire un sommet du chemin, on obtient deux autres chemins :

Le problème du Vertex Cover

1 2 3 k-1 k+1 n-1 n

17

Bilan des performances des différents algorithmes sur les chemins

18 francois.delbot@gmail.com

Limites atteintes dès la centaine de sommets.

Les algorithmes ayant le meilleur rapport d’approximation en pire casobtiennent les plus mauvaises performances en moyenne.

Remarque : Worst(MDG(Pn)) < Best(ED(Pn))

Le problème du Vertex Cover

Algorithme Limite de l’espérance du rapport d’approximation

ClassementEn moyenne En pire cas

GIC 1 1 2

MDG 1+e-2 ≈ 1.13 2 3

ListRight 1+e-2 ≈ 1.13 3 4

ListLeft 4/3 ≈ 1.33 4 1

Algorithme Limite de l’espérance du rapport d’approximation

MDG 1+e-2 ≈ 1.13

ListRight 1+e-2 ≈ 1.13

ListLeft 4/3 ≈ 1.33

ED 2-2e-2 ≈ 1.73

Graphes de Erdös-Renyi

19 francois.delbot@gmail.com

Le problème du Vertex Cover

Conclusion / Perspectives

Conjecture

• Poursuivre ces travaux en considérant que tous les choix ne sont pas équiprobables• Comparer des classes d’algorithmes• Passer à d’autres problèmes, notamment le problème de l’ensemble dominant

20 francois.delbot@gmail.com

Le problème du Vertex Cover

• Confirmer nos résultats expérimentaux par des résultats théoriques. Notamment, prouver la conjecture suivante :

• Evaluation en pire cas : insuffisante• L’influence du non déterminisme est importante• Online possède de bonnes performances moyennes• Les algorithmes 2-approchés se comportent mal « globalement »

Lundi 4 octobre 2010

Je vous remercie de votre attention.

C’est terminé !

francois.delbot@gmail.com