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

21
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’Ev Christian Laforest (LIMOS, Université Blaise Pascal de Clermont-Fe

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

Page 1: Lundi 4 octobre 2010 Comparaison de 4 algorithmes pour le problème du vertex cover François Delbot Laboratoire dAnalyse, Topologie, Probabilités (CNRS.

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)

Page 2: Lundi 4 octobre 2010 Comparaison de 4 algorithmes pour le problème du vertex cover François Delbot Laboratoire dAnalyse, Topologie, Probabilités (CNRS.

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

[email protected] 2

Page 3: Lundi 4 octobre 2010 Comparaison de 4 algorithmes pour le problème du vertex cover François Delbot Laboratoire dAnalyse, Topologie, Probabilités (CNRS.

Présentation du problème

Une couverture Une couverture optimale

Un problème NP-complet

Le problème du Vertex Cover

[email protected] 3

≈log()

Page 4: Lundi 4 octobre 2010 Comparaison de 4 algorithmes pour le problème du vertex cover François Delbot Laboratoire dAnalyse, Topologie, Probabilités (CNRS.

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

[email protected]

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

Page 5: Lundi 4 octobre 2010 Comparaison de 4 algorithmes pour le problème du vertex cover François Delbot Laboratoire dAnalyse, Topologie, Probabilités (CNRS.

L’algorithme online et les étoiles

[email protected]

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

Page 6: Lundi 4 octobre 2010 Comparaison de 4 algorithmes pour le problème du vertex cover François Delbot Laboratoire dAnalyse, Topologie, Probabilités (CNRS.

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

[email protected]

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

Page 7: Lundi 4 octobre 2010 Comparaison de 4 algorithmes pour le problème du vertex cover François Delbot Laboratoire dAnalyse, Topologie, Probabilités (CNRS.

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.

[email protected]

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

Page 8: Lundi 4 octobre 2010 Comparaison de 4 algorithmes pour le problème du vertex cover François Delbot Laboratoire dAnalyse, Topologie, Probabilités (CNRS.

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

[email protected]

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

Page 9: Lundi 4 octobre 2010 Comparaison de 4 algorithmes pour le problème du vertex cover François Delbot Laboratoire dAnalyse, Topologie, Probabilités (CNRS.

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

[email protected]

Le problème du Vertex Cover

9

≤0

Page 10: Lundi 4 octobre 2010 Comparaison de 4 algorithmes pour le problème du vertex cover François Delbot Laboratoire dAnalyse, Topologie, Probabilités (CNRS.

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

10 [email protected]

Le problème du Vertex Cover

Ce qui prouve le résultat !

Page 11: Lundi 4 octobre 2010 Comparaison de 4 algorithmes pour le problème du vertex cover François Delbot Laboratoire dAnalyse, Topologie, Probabilités (CNRS.

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 [email protected]

Le problème du Vertex Cover

online liste offline

Manipulation/connaissance du graphe

Page 12: Lundi 4 octobre 2010 Comparaison de 4 algorithmes pour le problème du vertex cover François Delbot Laboratoire dAnalyse, Topologie, Probabilités (CNRS.

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 [email protected]

Le problème du Vertex Cover

4 5 3 21 6

1 2

3 4 5 6

Page 13: Lundi 4 octobre 2010 Comparaison de 4 algorithmes pour le problème du vertex cover François Delbot Laboratoire dAnalyse, Topologie, Probabilités (CNRS.

L’algorithme List-Right

Algorithme List-Right

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

13 [email protected]

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

Page 14: Lundi 4 octobre 2010 Comparaison de 4 algorithmes pour le problème du vertex cover François Delbot Laboratoire dAnalyse, Topologie, Probabilités (CNRS.

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 [email protected]

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

Page 15: Lundi 4 octobre 2010 Comparaison de 4 algorithmes pour le problème du vertex cover François Delbot Laboratoire dAnalyse, Topologie, Probabilités (CNRS.

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

15 [email protected]

• 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

Page 16: Lundi 4 octobre 2010 Comparaison de 4 algorithmes pour le problème du vertex cover François Delbot Laboratoire dAnalyse, Topologie, Probabilités (CNRS.

Présentation des algorithmes

16 [email protected]

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

Page 17: Lundi 4 octobre 2010 Comparaison de 4 algorithmes pour le problème du vertex cover François Delbot Laboratoire dAnalyse, Topologie, Probabilités (CNRS.

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

[email protected]

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

Page 18: Lundi 4 octobre 2010 Comparaison de 4 algorithmes pour le problème du vertex cover François Delbot Laboratoire dAnalyse, Topologie, Probabilités (CNRS.

Bilan des performances des différents algorithmes sur les chemins

18 [email protected]

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

Page 19: Lundi 4 octobre 2010 Comparaison de 4 algorithmes pour le problème du vertex cover François Delbot Laboratoire dAnalyse, Topologie, Probabilités (CNRS.

Graphes de Erdös-Renyi

19 [email protected]

Le problème du Vertex Cover

Page 20: Lundi 4 octobre 2010 Comparaison de 4 algorithmes pour le problème du vertex cover François Delbot Laboratoire dAnalyse, Topologie, Probabilités (CNRS.

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 [email protected]

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 »

Page 21: Lundi 4 octobre 2010 Comparaison de 4 algorithmes pour le problème du vertex cover François Delbot Laboratoire dAnalyse, Topologie, Probabilités (CNRS.

Lundi 4 octobre 2010

Je vous remercie de votre attention.

C’est terminé !

[email protected]