Plus petit cycle d`homologie, coupe minimale et graphes plongés

publicité
Plus petit cycle d’homologie, coupe minimale et graphes
plongés dans des surfaces
FMIN307 - Complexité avancée
Boris Albar
Reference : Minimum Cuts And Shortest Homologous Cycle
E. W. Chambers, J. Erickson, A. Nayyeri
26 novembre 2010
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
A.
26 Nayyeri)
novembre
dans des
2010
surfaces 1 / 20
Introduction
Topologie algorithmique
Arbre de plus court chemin (sources multiples) : g 2 nlog n
Plus petit cycle non-contractile : g O(g ) n4/3 .
Flot maximum : g O(g ) n3/2
Shortest Splitting Cycle : g O(g ) n2 log n
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
A.
26 Nayyeri)
novembre
dans des
2010
surfaces 2 / 20
Rappels
Rappels (ou pas !) de topologie algébrique
Definition
Une surface (ou 2-variété) est un espace topologique séparé à base
dénombrable tel que tout point admette un voisinage ouvert homéomorphe
à un ouvert de R2 ou à R × R+ .
On considère ici uniquement les surfaces orientables, compactes, connexes.
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
A.
26 Nayyeri)
novembre
dans des
2010
surfaces 3 / 20
Rappels
Rappels (ou pas !) de topologie algébrique
Definition
Une surface (ou 2-variété) est un espace topologique séparé à base
dénombrable tel que tout point admette un voisinage ouvert homéomorphe
à un ouvert de R2 ou à R × R+ .
On considère ici uniquement les surfaces orientables, compactes, connexes.
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
A.
26 Nayyeri)
novembre
dans des
2010
surfaces 3 / 20
Rappels
Genre d’une surface
Definition
On appelle genre de la surface Σ, le nombre maximal g de courbes
fermées simples γi (pas de recoupements)
incluses dans la surface telles
!
S
que le complémentaire Σ\
γi soit connexe.
i<g
Cela correspond au nombre de ”trous” de la surfaces.
Figure: Surface de genre 2 sans composantes de bord
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
A.
26 Nayyeri)
novembre
dans des
2010
surfaces 4 / 20
Chemins et boucles
Chemins et boucles
Definition
Un cycle est une application continue p : S 1 → Σ où S 1 est le cercle
unité.
Un cycle est dit contractile si il est homotope à un point.
Un cycle γ est dit séparant si Σ\γ n’est pas connexe
Figure: Cycle contractile, séparant et non-séparant
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
A.
26 Nayyeri)
novembre
dans des
2010
surfaces 5 / 20
Surfaces combinatoires
Surfaces combinatoires
Definition
Une surface combinatoire est la donnée d’une surface Σ, d’un graphe
pondéré G (Σ) = (V , E ) et d’un plongement (immersion + homéo sur son
image) de G dans Σ et tel que toute face ouverte est (homéomorphe à) un
disque (plongement cellulaire).
On a des sommets, des arêtes et des faces, complexité de la surface
n = |V | + |E | + |F |
Notion du dualité du graphe G plongé dans une surface sans bords ⇒
plongement de G ∗ dans Σ.
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
A.
26 Nayyeri)
novembre
dans des
2010
surfaces 6 / 20
Surfaces combinatoires
Surfaces combinatoires
Definition
Une surface combinatoire est la donnée d’une surface Σ, d’un graphe
pondéré G (Σ) = (V , E ) et d’un plongement (immersion + homéo sur son
image) de G dans Σ et tel que toute face ouverte est (homéomorphe à) un
disque (plongement cellulaire).
On a des sommets, des arêtes et des faces, complexité de la surface
n = |V | + |E | + |F |
Notion du dualité du graphe G plongé dans une surface sans bords ⇒
plongement de G ∗ dans Σ.
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
A.
26 Nayyeri)
novembre
dans des
2010
surfaces 6 / 20
Surfaces combinatoires
Surfaces combinatoires
Definition
Une surface combinatoire est la donnée d’une surface Σ, d’un graphe
pondéré G (Σ) = (V , E ) et d’un plongement (immersion + homéo sur son
image) de G dans Σ et tel que toute face ouverte est (homéomorphe à) un
disque (plongement cellulaire).
On a des sommets, des arêtes et des faces, complexité de la surface
n = |V | + |E | + |F |
Notion du dualité du graphe G plongé dans une surface sans bords ⇒
plongement de G ∗ dans Σ.
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
A.
26 Nayyeri)
novembre
dans des
2010
surfaces 6 / 20
Surfaces combinatoires
Surfaces combinatoires (2)
Figure: Surface combinatoire
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
A.
26 Nayyeri)
novembre
dans des
2010
surfaces 7 / 20
Caractéristique d’Euler-Poincaré
Caractéristique d’Euler-Poincaré
Soit G = (V , E ) un graphe et un plongement cellulaire de G dans une
surface Σ.
Definition
La caractéristique d’Euler de la surface Σ est définie par :
χ(Σ) = |V | − |E | + |F |
où |F | est le nombre de faces.
Ne dépend pas du plongement cellulaire ! ⇒ Invariant topologique
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
A.
26 Nayyeri)
novembre
dans des
2010
surfaces 8 / 20
Caractéristique d’Euler-Poincaré
Caractéristique d’Euler-Poincaré
Soit G = (V , E ) un graphe et un plongement cellulaire de G dans une
surface Σ.
Definition
La caractéristique d’Euler de la surface Σ est définie par :
χ(Σ) = |V | − |E | + |F |
où |F | est le nombre de faces.
Ne dépend pas du plongement cellulaire ! ⇒ Invariant topologique
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
A.
26 Nayyeri)
novembre
dans des
2010
surfaces 8 / 20
Homologie et graphes
Homologie et graphes
Soit G = (V , E ) un graphe et un plongement cellulaire de ce graphe dans
une surface Σ.
L’ensemble des arcs à une structure naturelle de Z2 = Z/2Z espace
|E |
vectoriel isomorphe à Z2 pour les opérations de différence symétrique et
multiplication.
Definition
Les cycles sont les sous-graphe de G tel que tous les sommets soient
de degré pair (”even graphs” = graphes 2k-réguliers).
Les bords sont les sous-graphe de G formés par la différence
symétrique des ”frontières” d’un sous-ensemble des faces.
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
A.
26 Nayyeri)
novembre
dans des
2010
surfaces 9 / 20
Homologie et graphes
Homologie et graphes (2)
Definition
L’espace des cycles Z (G ) est l’espace vectoriel engendré par les cycles
|E |−|V |+1
de G , Z (G ) ' Z2
.
L’espace des bords B(G ) le sous-espace vectoriel engendré par les
|F |
|F |−1
bords de G , B(G ) ' Z2 (où Z2
pour une surface sans bords
(topologique !))
L’espace d’homologie H(G ) = Z (G )/B(G ).
dim H(G ) = β1 = 2g − max{0, b − 1}.
H cycle ⇔ H ∗ cocycle, H bord ⇔ H ∗ coupe ou cobord
Deux sous-graphes pairs sont dit homologues si leur différence
symétrique est un bord.
Un cycle est séparant si sa classe homotopique est l’élément neutre.
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
26
A.novembre
Nayyeri)
dans des
2010
surfaces10 / 20
Homologie et graphes
Homologie et graphes (2)
Definition
L’espace des cycles Z (G ) est l’espace vectoriel engendré par les cycles
|E |−|V |+1
de G , Z (G ) ' Z2
.
L’espace des bords B(G ) le sous-espace vectoriel engendré par les
|F |
|F |−1
bords de G , B(G ) ' Z2 (où Z2
pour une surface sans bords
(topologique !))
L’espace d’homologie H(G ) = Z (G )/B(G ).
dim H(G ) = β1 = 2g − max{0, b − 1}.
H cycle ⇔ H ∗ cocycle, H bord ⇔ H ∗ coupe ou cobord
Deux sous-graphes pairs sont dit homologues si leur différence
symétrique est un bord.
Un cycle est séparant si sa classe homotopique est l’élément neutre.
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
26
A.novembre
Nayyeri)
dans des
2010
surfaces10 / 20
Coupe minimale
Coupe de poids minimum
Proposition
On considère S = (Σ, G ) une surface combinatoire où G = (V , E ) est un
graphe pondéré et Σ une surface sans bords. Soit s et t deux sommet de G
et X la (s, t)-coupe de poids minimum de G , alors X ∗ est le sous-graphe
pair de poids minimal homologue au bord s ∗ dans la surface Σ\{s ∗ ∪ t ∗ }.
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
26
A.novembre
Nayyeri)
dans des
2010
surfaces11 / 20
NP-Difficulté
NP-Difficulté et FPT
Théorème
Étant donné un sous-graphe 2k-régulier H (i.e. une classe d’homologie),
trouver le sous-graphe 2k-régulier de poids minimal dans la classe de H est
un problème NP-difficile.
Théorème
Soit G un graphe pondéré (positivement) plongé dans une surface de
genre g et avec b composantes de bords. Soit H un sous-graphe
2k-régulier de G . On peut calculer le sous-graphe 2k-régulier de poids
minimal homologue à H en temps (g + b)O(g +b) nlog n.
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
26
A.novembre
Nayyeri)
dans des
2010
surfaces12 / 20
NP-Difficulté
NP-Difficulté et FPT
Théorème
Étant donné un sous-graphe 2k-régulier H (i.e. une classe d’homologie),
trouver le sous-graphe 2k-régulier de poids minimal dans la classe de H est
un problème NP-difficile.
Théorème
Soit G un graphe pondéré (positivement) plongé dans une surface de
genre g et avec b composantes de bords. Soit H un sous-graphe
2k-régulier de G . On peut calculer le sous-graphe 2k-régulier de poids
minimal homologue à H en temps (g + b)O(g +b) nlog n.
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
26
A.novembre
Nayyeri)
dans des
2010
surfaces12 / 20
Algorithme (Etape 1)
Calcul d’un système de boucles
(Σ, G ) une surface combinatoire avec Σ de genre g et b composantes de
bords. H un sous-graphe 2k-régulier de G .
Calcul d’un système fondamental de boucles : Soit L un ensemble de
boucles. L est un système fondamental de boucles si Σ\L est
homéomorphe à un disque (cas sans bords).
Étape 1 : Calculer une plus petite base d’homotopie/homologie.
Algorithme Glouton en O(nlog n + (b + g )n).
On note P = {p1 , . . . , pβ1 } les chemins générés.
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
26
A.novembre
Nayyeri)
dans des
2010
surfaces13 / 20
Borne des croisements
Borne des croisements
Lemme
Tout sous-graphe H 2k-régulier admet une décomposition en cycles, i.e un
ensemble de cycles arêtes-disjoints ne se recoupant pas deux à deux (à
l’intérieur d’une arête) et tels que l’union soit égal à H.
Attention : Il n’y a pas unicité de la décomposition
Lemme
Soit G un graphe pondéré plongé dans une surface de genre g et avec b
composantes de bords. Soit H un sous-graphe de G de poids minimal dans
sa classe d’homologie et soit γ1 , . . . γr la décomposition en cycles de H. Le
nombre total de croisements entre un plus court chemin dans G et les
cycles γ1 , . . . , γr est au plus 6g + 2b − 3.
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
26
A.novembre
Nayyeri)
dans des
2010
surfaces14 / 20
Borne des croisements
Borne des croisements
Lemme
Tout sous-graphe H 2k-régulier admet une décomposition en cycles, i.e un
ensemble de cycles arêtes-disjoints ne se recoupant pas deux à deux (à
l’intérieur d’une arête) et tels que l’union soit égal à H.
Attention : Il n’y a pas unicité de la décomposition
Lemme
Soit G un graphe pondéré plongé dans une surface de genre g et avec b
composantes de bords. Soit H un sous-graphe de G de poids minimal dans
sa classe d’homologie et soit γ1 , . . . γr la décomposition en cycles de H. Le
nombre total de croisements entre un plus court chemin dans G et les
cycles γ1 , . . . , γr est au plus 6g + 2b − 3.
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
26
A.novembre
Nayyeri)
dans des
2010
surfaces14 / 20
Énumeration des cycles
Énumeration des cycles
Vecteur de croisements : V (γ) = (x1 (γ), . . . , xβ (γ)) où xi (γ) le
nombre de croisements de γ avec pi .
P
V =
Vi
0≤i≤β1
Vecteur de parité : Ṽ (H) = (x̃1 , x̃2 , . . . , x̃β1 ) le vecteur réduit
modulo 2.
Ṽ (H) est indépendant de la décomposition en cycles de H.
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
26
A.novembre
Nayyeri)
dans des
2010
surfaces15 / 20
Énumeration des cycles
Énumeration des cycles (2)
Lemme
Deux sous-graphe 2k-réguliers sont homologues si et seulement si leur
vecteur de parités sont égaux.
On peut calculer le vecteur de parité d’un sous-graphe H en temps O(gn).
Etape 2 : On énumère tous les vecteur ”valide” i.e. de la forme
x = (x1 , x2 , . . . , xβ1 ) avec xi ≤ 12g + 4b − 6 (cf. borne des croisements) et
(x1 mod 2, x2 mod 2, . . . , xβ1 mod 2) = x̃(H).
⇒ (g + b)O(g +b) vecteurs enumérés par bruteforce.
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
26
A.novembre
Nayyeri)
dans des
2010
surfaces16 / 20
Triangulations
Triangulations
On considère le 2β1 -gone associé au système de boucles L (rappel : Σ\L
homéo à D 2 ). Pour tout vecteur de croisement, considère l’ensemble des
triangulations pondérés possibles du 2β1 -gone.
Figure: Construction d’une triangulation
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
26
A.novembre
Nayyeri)
dans des
2010
surfaces17 / 20
Triangulations
Triangulations (2)
Bijection entre les triangulations pondérés du 2β1 -gone et les
ensemble de cycles ne se recoupant pas.
Les poids de la triangulation sont majorés par O(g + b) (cf. borne des
croisements).
⇒ (g + b)O(g +b) triangulations pondérés associés à un vecteur de
croisement.
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
26
A.novembre
Nayyeri)
dans des
2010
surfaces18 / 20
Conclusion
Conclusion
Étape 3 : Pour chaque triangulation pondéré, on calcule l’ensemble de
cycles associés (bruteforce O((g + b)2 )) et une séquence de croisement
avec les pi pour chacun des cycles.
Étant donné un cycle c et sa séquence de croisements de taille x, on
calcule le plus petit cycle homotope à c (O(xnlog n)).
Pour chaque triangulation pondérée, on a le plus petit ensemble de
cycles en temps O((g + b)2 nlog n.
On a (g + b)O(g +b) triangulations pondérés pour chacun des
(g + b)O(g +b) vecteurs de croisements.
Complexité totale : (g + b)O(g +b) nlog n
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
26
A.novembre
Nayyeri)
dans des
2010
surfaces19 / 20
Conclusion
Conclusion (2)
Corollaire
Soit (Σ, G ) une surface combinatoire et Σ une surface de genre g sans
bords. Soit s, t ∈ G , on peut calculer la (s, t)-coupe de poids minimale en
temps g O(g ) nlog n.
Boris Albar (Reference : Minimum Cuts And Plus
Shortest
petitHomologous
cycle d’homologie,
Cycle E.coupe
W. Chambers,
minimale et
J. graphes
Erickson,plongés
26
A.novembre
Nayyeri)
dans des
2010
surfaces20 / 20
Téléchargement