La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Journées Graphes & Algorithmes, Novembre 2006, Orléans

Présentations similaires


Présentation au sujet: "Journées Graphes & Algorithmes, Novembre 2006, Orléans"— Transcription de la présentation:

1 Journées Graphes & Algorithmes, Novembre 2006, Orléans
Enumération des cliques maximales d’un graphe, des bicliques maximales d’un graphe biparti Alain Gély, Lhouari Nourine, Bachir Sadi 10 Novembre 2006 LIMOS – Clermont-Ferrand

2 Problématique de l’énumération Mesure de Complexité
Définitions Problématique de l’énumération Mesure de Complexité Méthodes d’énumération Enumération des Cliques Maximales Existant Graphe des transitions des cliques maximales Propriétés du graphe de Transitions Enumération des Bicliques Maximales Propriétés du graphe de transition Conclusion

3 Problématique de l’énumération Mesure de Complexité
Définitions Problématique de l’énumération Mesure de Complexité Méthodes d’énumération Enumération des Cliques Maximales Existant Graphe des transitions des cliques maximales Propriétés du graphe de Transitions Enumération des Bicliques Maximales Propriétés du graphe de transition Conclusion

4 Clique maximale, Biclique maximale
Définitions Clique maximale, Biclique maximale Clique Maximale x,y  C  (x,y)  E Pour tout zC , C  z n’est pas une clique 1 2 3 4 5 7 6 G = ( V , E ) G = ( U, V , E )

5 Clique maximale, Biclique maximale
Définitions Clique maximale, Biclique maximale Clique Maximale Biclique Maximale x,y  C  (x,y)  E Pour tout zC , C  z n’est pas une clique x,y  B, x  U, y  V  (x,y)  E Pour tout zB , B  z n’est pas une biclique 1 2 3 4 5 7 6 1 2 3 6 4 7 5 G = ( V , E ) G = ( U, V , E )

6 Problématique de l’énumération Mesure de Complexité
Définitions Problématique de l’énumération Mesure de Complexité Méthodes d’énumération Enumération des Cliques Maximales Existant Graphe des transitions des cliques maximales Propriétés du graphe de Transitions Enumération des Bicliques Maximales Propriétés du graphe de transition Conclusion

7 Algorithme d’Enumération
Définition Entrée : S une structure discrète, P une propriété Sortie : Liste des configurations de S satisfaisant P S = un graphe G(V,E) P = être une clique maximale de G Sortie : Liste des cliques maximales de G Taille de l’entrée : n Taille de la sortie : N ( # Configurations )

8 Problématique de l’énumération Mesure de Complexité
Définitions Problématique de l’énumération Mesure de Complexité Méthodes d’énumération Enumération des Cliques Maximales Existant Graphe des transitions des cliques maximales Propriétés du graphe de Transitions Enumération des Bicliques Maximales Propriétés du graphe de transition Conclusion

9 Algorithme d’énumération
Taille de l’entrée : n Taille de la Sortie : N ( # configurations ) Complexité temporelle Polynomiale : O((n+N)k) Polynomiale par objet : O(nk N) A délai polynomial : O(nk N) C1 C2 Ci Ci-1 CN Début Fin O(nk) Complexité Spatiale Polynomiale : O(nk) Exponentielle : O(nkN) ( stockage nécessaire au traitement)

10 Problématique de l’énumération Mesure de Complexité
Définitions Problématique de l’énumération Mesure de Complexité Méthodes d’énumération Enumération des Cliques Maximales Existant Graphe des transitions des cliques maximales Propriétés du graphe de Transitions Enumération des Bicliques Maximales Propriétés du graphe de transition Conclusion

11 Méthodes d’énumération
(exemple : sous-ensembles de {1,2,3}) Enumération dans l’ordre lexicographique Trouver une première configuration C Calculer Suivant(C) Première configuration :  Suivant() : 1 Suivant(1) : 12 Suivant(12) : 123 Suivant(123) : 13 Suivant(13) : 2 Suivant(2) : 23 Suivant(23) : 3

12 Méthodes d’énumération
(exemple : sous-ensembles de {1,2,3}) Retour-Arrière Choisir une propriété P Enumérer les configurations qui vérifient P Enumérer les configurations qui ne vérifient pas P Contenir 1 Ne pas contenir 1 1, 12, 123  , 2, 23

13 Méthodes d’énumération
(exemple : sous-ensembles de {1,2,3}) Code de Gray (Gray 54) - Notion de proximité entre objets à générer - « construction » d’un graphe de proximité - Recherche d’un chemin Hamiltonien 123 12 13 23 1 2 3

14 Méthodes d’énumération
(exemple : sous-ensembles de {1,2,3}) Méthode de Recherche Locale Inverse (Avis Fukuda 96) - Fonction de voisinage - Optimisation d’un critère 123 - Inversion de la recherche 2 23 13 3 12 Ø 1

15 Méthodes d’énumération
Dans tous les cas Utilisation d’arbre / de graphe ayant pour sommet des objets à construire 123 2 12 3 13 23 123 Ø 1 Code de Gray 12 13 23 1 2 3 Ø 2 12 3 13 23 123 Ø 1 Retour-arrière( ) Ø 1 12 123 13 2 Suivant( ) 23 3

16 Problématique de l’énumération Mesure de Complexité
Définitions Problématique de l’énumération Mesure de Complexité Méthodes d’énumération Enumération des Cliques Maximales Existant Graphe des transitions des cliques maximales Propriétés du graphe de Transitions Enumération des Bicliques Maximales Propriétés du graphe de transition Conclusion

17 Enumération des cliques maximales
C(G) G = ( V , E ) Existant 1 2 3 4 5 7 6 {1,2,3} C(G) exponentielle {1,5} {1,6} Prochaine clique maximale lexicographique : NP-complet {2,3,4} {2,3,7} Algorithmes : Espace polynomial Délai polynomial Ordre lexicographique {4,5} {6,7} [Tsukiyama & al 77] [Johnson & al 88]

18 Problématique de l’énumération Mesure de Complexité
Définitions Problématique de l’énumération Mesure de Complexité Méthodes d’énumération Enumération des Cliques Maximales Existant Graphe des transitions des cliques maximales Propriétés du graphe de Transitions Enumération des Bicliques Maximales Propriétés du graphe de transition Conclusion

19 C(G) , Ensemble de sommets
Enumération des cliques maximales Intuition Définir un graphe de proximité G = ( U , V ) C(G) C(G) , Ensemble de sommets {1,2,3} C0 1 2 3 4 5 7 6 {1,5} C1 {1,6} C2 ? Reste à déterminer L’ensemble des transitions {2,3,4} C3 {2,3,7} C4 T(G) = (C(G) ,T) Graphe des transitions des cliques max de G {4,5} C5 {6,7} C6

20 Enumération des cliques maximales
ensemble des arcs Cx Cy j Transition utilisant un sommet j de V j n’appartient pas à Cx j appartient à Cy Soit Kj( ), un opérateur sur une clique maximale Transition ssi Cy = Kj( Cx ),

21 C est une clique maximale de G
Enumération des cliques maximales Kj( ) ? j n 1 2 3 4 i Voisinage de J j n Est une clique Complétion (gloutonne) pour obtenir une clique maximale C C est une clique maximale de G … ou non

22 Plus petite clique max. de { Cx  { 1, … , j }  v(j) }  { j , … , n}
Enumération des cliques maximales Kj( ) j Cx, Kj(Cx) Plus petite clique max. de { Cx  { 1, … , j }  v(j) }  { j , … , n} 1 2 3 4 5 7 6 Préfixe de Cx Voisinage de j dans le préfixe de Cx Labels supérieur à j

23 Enumération des cliques maximales
K4({1,2,3}) ? { 1,2,3}  { 1,…,4 } = {1,2,3} V(4) = {2,3,5} {1,2,3}  {2,3,5} = {2,3} Plus petite clique maximale de {2,3}  {4,…,7} 1 2 3 4 5 7 6 1 2 3 4 5 7 6 K3({1,2,3}) = {2,3,4}  C(G) {1,2,3} {2,3,4} 4 Transition

24 Enumération des cliques maximales
K3({1,6}) ? { 1,6}  { 1,2,3 } = {1} V(3) = {1,2,4,7} {1}  {1,2,4,7} = {1} Plus petite clique maximale de {1 }  {3,…,10} 1 2 3 4 5 7 6 1 2 3 4 5 7 6 K3({1,6}) = {1,3}  C(G) {1,6} ? 3 Pas de transition de label 3

25 T(G) Graphe des transitions de G
G(V,E) T(G) Graphe des transitions de G 1 2 3 4 5 7 6 123 1 67 15 6 1 1 2 5 6 7 6 4 7 2 16 237 2 4 1 6 4 7 4 4 2 234 5 45

26 Problématique de l’énumération Mesure de Complexité
Définitions Problématique de l’énumération Mesure de Complexité Méthodes d’énumération Enumération des Cliques Maximales Existant Graphe des transitions des cliques maximales Propriétés du graphe de Transitions Enumération des Bicliques Maximales Propriétés du graphe de transition Conclusion

27 T(G) est fortement connexe
Propriétés de T(G) T(G) est fortement connexe Idée de la preuve : Soit C0 la plus petite clique maximale de G Il existe un chemin de C0 vers n’importe quelle Ci Il existe un chemin de Ci vers C0 C0 Ci Cj Ck Cl

28 T(G) Graphe de transitions de G
G(V,E) T(G) Graphe de transitions de G 1 2 3 4 5 7 6 123 1 67 15 6 1 1 2 5 6 7 6 4 7 2 16 237 2 4 1 6 4 7 4 4 2 234 5 45

29 T(G) : Chemin de C0 vers Ci
1 2 3 4 5 6 7 1 2 3 4 5 7 6 1 2 3 4 5 6 7 1 2 3 4 5 6 7 1 2 3 4 5 7 6 1 2 3 4 5 7 6 1 2 3 4 5 7 6 1 Induction structurelle 12 123 123 234 123 15 234 45 123 16 15 234 6 45 123 237 16 67 15 7 234 45

30 1 2 3 4 5 7 6 1 2 3 4 5 7 6 1 2 3 4 5 6 7 1 2 3 4 5 6 7 1 2 3 4 5 6 7 1 2 3 4 5 7 6 1 2 3 4 5 7 6 1 12 123 4 123 234 5 5 123 15 234 45 6 6 123 16 15 16 234 45 7 7 7 123 237 16 67 15 16 234 237 45

31 G(V,E) T(G) 1 2 3 4 5 7 6 123 1 67 15 6 1 1 2 5 6 7 6 4 7 2 16 237 2 4 1 6 4 7 4 4 2 234 5 45

32 G(V,E) T(G) 1 2 3 4 5 7 6 123 1 67 15 6 1 1 2 5 6 7 6 4 7 2 16 237 2 4 1 6 4 7 4 4 2 234 5 45

33 T(G) : plus de chemins de C0 vers Ci que de séquences de construction
1 2 3 4 5 6 7 1 2 3 4 5 7 6 1 2 3 4 5 7 6 1 2 3 4 5 6 7 1 2 3 4 5 7 6 1 2 3 4 5 6 7 1 2 3 4 5 7 6 1 12 123 4 123 234 5 5 123 15 234 45 6 6 123 16 15 16 234 45 7 7 7 123 237 16 67 15 16 234 237 45

34 T(G) possède plusieurs arbres couvrant
Résultat : T(G) possède plusieurs arbres couvrant enracinés en C0

35 T(G) Graphes de transitions de G – Algorithmes & Complexités
2 Etapes : Choisir une arborescence T(G) (enracinée en C0) (plusieurs choix) Parcourir l’arborescence recouvrante (plusieurs choix) G(V,E) |V|=n, |E|=m 1 i n C0 Construction de C0 O(m) calcule des Transitions O(m) Tester la maximalité O(m) # transitions pour une clique max. O(n) O(n.m)

36 Ordre quelconque – espace polynomial – Délai Polynomial
Graphe de transitions [ Tsukiyama & al. 77 ] Ordre quelconque – espace polynomial – Délai Polynomial 123 237 16 67 15 234 45 237 Arbre couvrant : Chemins définis par des séquences de construction Choisir la plus petite séquence lexicographique 7 15 5 123 4 6 67 7 234 Parcours : En profondeur d’abord 16 5 45

37 Ordre lexicographique – espace exponentiel
Graphe de transitions [Johnson & al. 88] Ordre lexicographique – espace exponentiel Délai polynomial 123 15 16 234 237 45 67 Propriété de l’arbre couvrant de Tsukiyama : If Cx atteignable depuis Cy, alors Cy < Cx 237 Parcours : Stockage et reprise 7 15 5 123 15 16 234 237 67 45 123 4 6 67 7 234 16 5 45

38 Classes particulières - Graphes de Comparabilité
Ordre lexicographique – espace polynomial Délai polynomial [Cai, Kong, 92] 7 8 5 6 6 4 7 2 8 3 4 1 2 3 5 Hypothèse Sommets numérotés selon une extension linéaire de l’ordre 1

39 Classes particulières - Graphes de Comparabilité
Ordre lexicographique – espace polynomial Délai polynomial 7 8 5 6 6 4 7 2 8 3 4 1 2 3 5 Résultat La séquence des cliques maximales de G dans l’ordre lexicographique forment un chemin Hamiltonien dans T(G) 1

40 Problématique de la génération Mesure de Complexité
Définitions Problématique de la génération Mesure de Complexité Méthodes de génération Génération des Cliques Maximales Existant Graphe des transitions des cliques maximales Propriétés du graphe de Transitions Génération des Bicliques Maximales Propriétés du graphe de transition Conclusion

41 II. Enumération des bicliques maximales
G = (U,V,E) 7 1 8 2 6 3 5

42 Problématique de la génération Mesure de Complexité
Définitions Problématique de la génération Mesure de Complexité Méthodes de génération Génération des Cliques Maximales Existant Graphe des transitions des cliques maximales Propriétés du graphe de Transitions Génération des Bicliques Maximales Propriétés du graphe de transition Conclusion

43 Enumération des bicliques d’un graphe Biparti
Hypothèse de numérotations Si i  U , j  V alors i < j n+1 n+1 m n 1 2 G = (U,V,E)

44 atteignables par une séquence sur V
T(G) : chemin de C0 vers Ci avec des labels dans V (exclusivement) 1 Sommets de U : clique 12 123 1234 i j Cliques max. atteignables par une séquence sur V Propriété

45 Enumération des bicliques d’un graphe Biparti
Sommets de U Sommets de V j n 1 2 3 4 i j Transition => Cx ∩ V  Cy ∩ V Propriété i  Cy i  Cx j  V

46 Propriétés du graphe de transitions
Treillis de Galois sous graphe de T(G) Propriétés Utiliser la structure de treillis = utiliser un sous graphe de T(G) Propriété (1,5678) 5 6 1 2 3 4 (12,678) (13,578) U 6 5 (123,78) 5 6 V 5 6 7 8 7 (1234,8 )

47 Connexion entre algorithmes connus
[Tsukiyama & al. 77] équivalent à un génération dans l’ordre lectique 123 4 5 15 6 7 234 5 237 Bicliques énumérables à partir de V seulement 16 7 45 67 Remarque Next-Closure [Ganter 84] et [Tsukiyama & al 77] énumèrent les bicliques maximales selon la même séquence

48 Problématique de la génération Mesure de Complexité
Définitions Problématique de la génération Mesure de Complexité Méthodes de génération Génération des Cliques Maximales Existant Graphe des transitions des cliques maximales Propriétés du graphe de Transitions Génération des Bicliques Maximales Propriétés du graphe de transition Conclusion

49 Conclusion Perspectives Mise en place d’un cadre général d’énumération
Comparaison d’algorithmes en utilisant T(G) Adaptation à la génération des bicliques maximales Algorithmes de génération des cliques et des bicliques Perspectives Propriétés supplémentaires de T(G) ? Etudes de Classes de graphes particulières

50 Merci


Télécharger ppt "Journées Graphes & Algorithmes, Novembre 2006, Orléans"

Présentations similaires


Annonces Google