Codage des voisinages et parcours en largeur en temps O(n) des graphes d'intervalles et de permutation

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Favorites, Groups & Events

    Codage des voisinages et parcours en largeur en temps O(n) des graphes d'intervalles et de permutation - Presentation Transcript

    1. Montpellier – 05/11/2009 – JGA'09 Codage des voisinages et parcours en largeur des graphes d'intervalles et de permutation Christophe Crespelle, Philippe Gambette
    2. Plan • Problème et définitions • Encodage des voisinages dans les graphes d'intervalles et les graphes de permutation • Recherche en largeur en O(n) dans les graphes d'intervalles et les graphes de permutation
    3. Plan • Problème et définitions • Encodage des voisinages dans les graphes d'intervalles et les graphes de permutation • Recherche en largeur en O(n) dans les graphes d'intervalles et les graphes de permutation
    4. Contexte Algorithmes sur les grands graphes • Stockage du graphe en mémoire Encodage compact • Requêtes sur le graphe Temps de réponse réduit 3216754 1562437
    5. Contexte Algorithmes sur les grands graphes • Stockage du graphe en mémoire Encodage compact • Requêtes sur le graphe Temps de réponse réduit Bon encodage vis à vis des requêtes d'adjacence : Nombreuses classes de graphes d'intersection
    6. Contexte Algorithmes sur les grands graphes • Stockage du graphe en mémoire Encodage compact • Requêtes sur le graphe Temps de réponse réduit Bon encodage vis à vis des requêtes d'adjacence : Nombreuses classes de graphes d'intersection Exemple : graphes d'intervalles : = {[0,2],[1,3],[3,4]} Encodage en O(n) v1 G v3 Requêtes d'adjacence en O(1) v2 I1 I3 I2 2 sommets adjacents ssi 1 ∈ [0,2] : une borne de l'intervalle de l'un est incluse dans l'intervalle de 1 et 2 adjacents l'autre.
    7. Contexte Algorithmes sur les grands graphes • Stockage du graphe en mémoire Encodage compact • Requêtes sur le graphe Temps de réponse réduit Bon encodage vis à vis des requêtes d'adjacence : Nombreuses classes de graphes d'intersection Bon encodage vis à vis des requêtes de voisinage ?
    8. Contexte Algorithmes sur les grands graphes • Stockage du graphe en mémoire Encodage compact • Requêtes sur le graphe Temps de réponse réduit Bon encodage vis à vis des requêtes d'adjacence : Nombreuses classes de graphes d'intersection Bon encodage vis à vis des requêtes de voisinage ? Exemple : graphes d'intervalles : = {[0,2],[1,3],[3,4]} Encodage en O(n) v1 G v3 Requêtes de voisinage en O(n) v2 I1 I3 I2 O(d) ?
    9. Contexte Algorithmes sur les grands graphes • Stockage du graphe en mémoire Encodage compact • Requêtes sur le graphe Temps de réponse réduit Bon encodage vis à vis des requêtes d'adjacence : Nombreuses classes de graphes d'intersection Bon encodage vis à vis des requêtes de voisinage ? Encodage en O(n) avec requêtes de voisinage en O(d) pour graphes d'intervalles et graphes de permutation. → extension aux graphes quelconques par complétion → exploitation algorithmique de la structure des voisinages
    10. Plan • Problème et définitions • Encodage des voisinages dans les graphes d'intervalles et les graphes de permutation • Recherche en largeur en O(n) dans les graphes d'intervalles et les graphes de permutation
    11. Une approche naturelle N[x] • Graphes d'intervalles propres x N(x) • Graphes biconvexes x Généralisation, 2 paramètres : • autoriser plusieurs intervalles : contiguïté • autoriser plusieurs ordres : linéarité Paramètres non bornés pour graphes d'intervalles et graphes de permutation : • contiguïté : Ω(log n) • linéarité : Ω(log n / log log n)
    12. Voisinages dans les graphes de permutation Arbres cartésiens augmentés : Max d'une fonction entière sur un intervalle : I f(x) T σ: a b x b max f(x)? a x∈I lca(a,b)?
    13. Voisinages dans les graphes de permutation Arbres cartésiens augmentés : Max d'une fonction entière sur un intervalle : I f(x) T σ: a b x b max f(x)? a x∈I lca(a,b)? Précalcul de T en temps O(|T|) pour répondre aux requêtes lca en O(1) Harel & Tarjan 1984, Vuillemin 1980
    14. Voisinages dans les graphes de permutation I π2(i) π1 : j x i max π2(i) x∈I Si π2(j) > π2(x) alors j est un voisin de x Ig Id récursion ! j x sinon x n'a pas de voisin dans I
    15. Voisinages dans les graphes de permutation I π2(i) π1 : j x i max π2(i) x∈I Si π2(j) > π2(x) alors j est un voisin de x Ig Id récursion ! j x sinon x n'a pas de voisin dans I Au plus deux appels récursif par un appel réussi Chaque appel non réussi lancé par un appel réussi → complexité en temps en O(d)
    16. Voisinages dans les graphes d'intervalles 2 types de voisins : • recouvrement • inclusion
    17. Voisinages dans les graphes d'intervalles 2 types de voisins : • recouvrement • inclusion Recouvrements : Bornes gauches Bornes droites Inclusions : graphe de permutation
    18. Plan • Problème et définitions • Encodage des voisinages dans les graphes d'intervalles et les graphes de permutation • Recherche en largeur en O(n) dans les graphes d'intervalles et les graphes de permutation
    19. BFS dans les graphes d'intervalles Entrée : ordre des bornes : π : 2g 3g 1g 1d 6g 6d 5g 2d 4g 3d 7g 5d 4d 7d 1 1 2 3 2 7 6 4 3 6 5 4 5 ordre de priorité σ : 1 2 3 4 5 6 7 7 Sortie : arbre BFS respectant σ 1 2 3 6 5 4 7
    20. BFS dans les graphes d'intervalles π : 2g 3g 1g 1d 6g 6d 5g 2d 4g 3d 7g 5d 4d 7d 1 2 7 3 6 5 4 1 2 3
    21. BFS dans les graphes d'intervalles π : 2g 3g 1g 1d 6g 6d 5g 2d 4g 3d 7g 5d 4d 7d 1 2 7 3 6 5 4 1 2 3 père courant : 3 borne droite : 3 priorité' : 1
    22. BFS dans les graphes d'intervalles π : 2g 3g 1g 1d 6g 6d 5g 2d 4g 3d 7g 5d 4d 7d 1 2 7 3 6 5 4 1 2 3 père courant : 3 borne droite : 4 4 priorité' : 1 3
    23. BFS dans les graphes d'intervalles π : 2g 3g 1g 1d 6g 6d 5g 2d 4g 3d 7g 5d 4d 7d 1 2 7 3 6 5 4 1 2 3 père courant : 2 borne droite : 4 4 priorité' : 1 2 3
    24. BFS dans les graphes d'intervalles π : 2g 3g 1g 1d 6g 6d 5g 2d 4g 3d 7g 5d 4d 7d 1 2 7 3 6 5 4 1 2 3 père courant : 2 borne droite : 4 5 4 priorité' : 1 2 3
    25. BFS dans les graphes d'intervalles π : 2g 3g 1g 1d 6g 6d 5g 2d 4g 3d 7g 5d 4d 7d 1 2 7 3 6 5 4 1 2 3 père courant : 2 borne droite : 4 5 4 priorité' : 1 2 3
    26. BFS dans les graphes d'intervalles π : 2g 3g 1g 1d 6g 6d 5g 2d 4g 3d 7g 5d 4d 7d 1 2 7 3 6 5 4 1 2 3 père courant : 2 borne droite : 4 6 5 4 priorité' : 1 2 3
    27. BFS dans les graphes d'intervalles π : 2g 3g 1g 1d 6g 6d 5g 2d 4g 3d 7g 5d 4d 7d 1 2 7 3 6 5 4 1 2 3 père courant : 4 borne droite : 4 6 5 4 priorité' : 1 2 3 4
    28. BFS dans les graphes d'intervalles π : 2g 3g 1g 1d 6g 6d 5g 2d 4g 3d 7g 5d 4d 7d 1 2 7 3 6 5 4 1 2 3 père courant : 5 borne droite : 4 6 5 4 priorité' : 1 2 3 5 4
    29. BFS dans les graphes d'intervalles π : 2g 3g 1g 1d 6g 6d 5g 2d 4g 3d 7g 5d 4d 7d 1 2 7 3 6 5 4 1 2 3 père courant : 5 borne droite : 7 6 5 4 priorité' : 1 2 3 5 4 7
    30. BFS dans les graphes d'intervalles π : 2g 3g 1g 1d 6g 6d 5g 2d 4g 3d 7g 5d 4d 7d 1 2 7 3 6 5 4 1 2 3 chaque borne visitée 6 4 une seule fois : 5 algorithme en O(n) 7
    31. BFS dans les graphes de permutation Extension de l'algorithme : • Exploration de π1 et π2 vers la gauche et vers la droite • Gestion plus complexe de la liste des parents visités
    32. Des questions ? Merci pour votre attention ! Plus de détails dans : • Christophe Crespelle et Philippe Gambette. Efficient Neighbourhood Encoding for Interval Graphs and Permutation Graphs and O(n) Breadth-First Search, Proceedings of the 20th International Workshop on Combinatorial Algorithms (IWOCA'09), LNCS 5874, p. 146-157. • Christophe Crespelle et Philippe Gambette. O(n) Breadth First Search of Some Intersection Graph Classes. En préparation. Slides available at http://www.lirmm.fr/~gambette/RePresentations.php
    33. BFS dans les graphes d'intervalles π : 2g 3g 1g 1d 6g 6d 5g 2d 4g 3d 7g 5d 4d 7d 1 2 7 3 6 5 4 1 2 3 père courant : 3 borne droite : 3 priorité' : 1
    34. Une approche naturelle N[x] • Graphes d'intervalles propres x N(x) • Graphes biconvexes x Généralisation, 2 paramètres : • autoriser plusieurs intervalles : contiguïté • autoriser plusieurs ordres : linéarité Paramètres non bornés pour graphes d'intervalles et graphes de permutation : • contiguïté : Ω(log n) • linéarité : Ω(log n / log log n)
    35. Des questions ? Merci pour votre attention ! Plus de détails dans : • Christophe Crespelle et Philippe Gambette. Efficient Neighbourhood Encoding for Interval Graphs and Permutation Graphs and O(n) Breadth-First Search, Proceedings of the 20th International Workshop on Combinatorial Algorithms (IWOCA'09), LNCS 5874, p. 146-157. • Christophe Crespelle et Philippe Gambette. O(n) Breadth First Search of Some Intersection Graph Classes. En préparation. Slides available at http://www.lirmm.fr/~gambette/RePresentations.php
    36. Contexte Algorithmes sur les grands graphes • Stockage du graphe en mémoire Encodage compact • Requêtes sur le graphe Temps de réponse réduit Bon encodage vis à vis des requêtes d'adjacence : Nombreuses classes de graphes d'intersection Bon encodage vis à vis des requêtes de voisinage ? Encodage en O(n) avec requêtes de voisinage en O(d) pour graphes d'intervalles et graphes de permutation. → extension aux graphes quelconques par complétion → exploitation algorithmique de la structure des voisinages
    SlideShare Zeitgeist 2009

    + Philippe GambettePhilippe Gambette Nominate

    custom

    76 views, 0 favs, 0 embeds more stats

    Présentation aux JGA 2009 (Journées Graphes et Al more

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 76
      • 76 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 0
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories