Mise en correspondance de graphes - PowerPoint PPT Presentation

1 / 97
About This Presentation
Title:

Mise en correspondance de graphes

Description:

Id e : construire un isomorphisme de G1(k) vers un sous-graphe de G2 et essayer d' tendre l'isomorphisme G1(k 1) en ajoutant un n ud inutilis de G2 ... – PowerPoint PPT presentation

Number of Views:118
Avg rating:3.0/5.0
Slides: 98
Provided by: fan571
Category:

less

Transcript and Presenter's Notes

Title: Mise en correspondance de graphes


1
Mise en correspondance de graphes
2
Sommaire
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
  • Isomorphisme exact
  • Graphes
  • Sous-graphes
  • Isomorphisme inexact
  • Heuristique
  • Relaxation probabiliste
  • Etude dalgorithmes
  • Dinitz, Itai et Rodeh (isomorphisme de
    sous-arbres), 99
  • Peura (heuristique - isomorphisme inexact de
    sous-graphe), 99

3
Isomorphisme exact de graphes (GI)
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Isomorphisme de graphe Isomorphisme de
sous-graphes
  • Formalisation
  • Graphes G1(V1,E1) et G2(V2,E2)
  • Il existe une bijection f V1 ? V2
  • ?a,b ? V1 ,
  • (a,b) ? E1 ? (f(a),f(b)) ? E2
  • Complexité
  • Problème NP-difficile en général
  • (GI ? NP, GI ? P,
    GI ? NP-complet)
  • Pour certaines classes de graphes, GI ? P
    (algorithme polynomial)

?
?
4
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
5
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
  • Deux approches
  • Tenter de trouver directement un isomorphisme
  • Idée construire un isomorphisme de G1(k) vers
    un sous-graphe de G2 et essayer détendre
    lisomorphisme à G1(k1) en ajoutant un nud
    inutilisé de G2
  • Calculer une étiquette canonique C(G) pour chaque
    graphe
  • C(G) C(H) ? G et H isomorphes

6
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
  • Invariants de noeuds
  • Utilisés dans la plupart des techniques
  • Nombre i(v) associé à un nud tel que si il
    existe un isomorphisme qui  mappe  v et v on a
  • i(v) i(v)
  • degré 
  • twopaths nuds à distance 2 de v
  • k-cliques cliques différentes de taille k qui
    contiennent v
  • independant k-sets ensembles indépendants de
    taille k qui contiennent v
  • distances nuds à chaque distance 1,,n de v
  • Coût élevé (sauf degré) résoudre isomorphisme
    souvent plus rapide que le calcul de tous les
    invariants

7
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
  • Résoudre directement
  • Calculer linvariant pour chaque nud de G1 et G2
  • Si les vecteurs triés inv1 ? inv2 ? pas
    disomorphisme

8
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
  • Résoudre directement
  • Calculer linvariant pour chaque nud de G1 et G2
  • Si les vecteurs triés inv1 ? inv2 ? pas
    disomorphisme
  • Sinon trier les nuds selon linvariant et
    exécuter la procédure récursive
  • Isomorphe (ensemble S, entier k, tab f) booléen
  • Si k n1 alors retourner vrai
  • Pour j ? V2 / S
  • si inv1 (k) inv2(j) ET matchPossible (k,j,f)
  • fk ? j
  • si Isomorphe (S ? j, k1, f) retourner vrai
  • retourner faux

9
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
  • Etiquetage canonique
  • Exemple 1
  • Calcul de tous les automorphismes du graphe
  • Étiquette canonique  plus petit 
    automorphisme du graphe G.

b
a
b
c
a
0
1
0
b
0
1
1
a
c
c
0
0
1
10
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
  • Etiquetage canonique
  • Exemple 1
  • Calcul de tous les automorphismes du graphe
  • Étiquette canonique  plus petit 
    automorphisme du graphe G.

b
a
b
c
c
a
b
a
0
1
0
c
0
0
1
b
0
1
1
a
0
0
1
a
c
c
0
0
1
b
1
0
1
11
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
  • Etiquetage canonique
  • Exemple 1
  • Calcul de tous les automorphismes du graphe
  • Étiquette canonique  plus petit 
    automorphisme du graphe G.

Automorphisme c?a, a ?b, b ?c
b
a
b
c
c
a
b
a
c
b
a
0
1
0
c
0
0
1
a
0
0
1
b
0
1
1
a
0
0
1
c
0
0
1
a
c
c
0
0
1
b
1
0
1
b
1
0
1
C(G) 001001110
12
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
  • Etiquetage canonique
  • Exemple 1
  • Calcul de tous les automorphismes du graphe
  • Étiquette canonique  plus petit 
    automorphisme du graphe G.
  • Recherche automorphisme ? recherche isomorphisme

Automorphisme c?a, a ?b, b ?c
b
a
b
c
c
a
b
a
c
b
a
0
1
0
c
0
0
1
a
0
0
1
b
0
1
1
a
0
0
1
c
0
0
1
a
c
c
0
0
1
b
1
0
1
b
1
0
1
C(G) 001001110
13
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
  • Etiquetage canonique
  • Exemple 2
  • Étiquette canonique la permutation de nuds
    qui donne la matrice dadjacence minimale

a
b
c
d
b
a
0
1
0
0
d
b
0
1
1
1
a
c
c
0
0
1
1
d
0
1
1
0
14
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
  • Etiquetage canonique
  • Exemple 2
  • Étiquette canonique la permutation de nuds
    qui donne la matrice dadjacence minimale
  • Partition des nuds selon linvariant

a
b
c
d
b
a
0
1
0
0
d
b
0
1
1
1
a
c
c
0
0
1
1
d
0
1
1
0
15
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
  • Etiquetage canonique
  • Exemple 2
  • Étiquette canonique la permutation de nuds
    qui donne la matrice dadjacence minimale
  • Partition des nuds selon linvariant
  • Permutations intra-partition

degré
a
b
c
d
a
c
d
b
b
a
0
1
0
0
a
0
0
0
1
d
b
0
1
1
1
c
0
0
1
1
a
c
c
0
0
1
1
d
0
0
1
1
d
0
1
1
0
b
1
1
1
0
16
Isomorphisme exact de sous-graphes
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
  • Deux définitions
  • Isomorphisme de G2 avec un sous-graphe de G1
  • Isomorphisme dun sous-graphe de G1 avec un sous
    graphe de G2
  • Les algorithmes précédents sappliquent à
    lisomorphisme de sous-graphes
  • Complexité
  • Problème NP-complet Alt, Mehlhorn, Munro, 1984
  • Exponentielle pour les graphes généraux Messmer,
    1995

17
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
  • Technique Arbre de recherche avec backtracking
    Corneil, Gotlieb,70
  • G1 G2

a
b
c
d
a
b
c
a
0
1
1
1
a
0
1
0
b
0
1
1
0
b
0
1
1
c
1
0
1
0
c
0
0
1
d
1
0
0
0
b
a
b
?
?
?
?
a
c
a
b
c
d
c
?
0
1
0
?
a
0
1
0
?
0
1
1
?
b
0
1
1
?
0
0
1
?
c
0
0
1
?
?
?
?
?
18
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
  • Technique Arbre de recherche avec backtracking
  • Représentation ligne-colonne de la matrice
    dadjacence

19
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
  • Méthode
  • Construire toutes les matrices de permutations de
    G1

20
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
  • Méthode
  • Construire toutes les matrices de permutations de
    G1
  • Construire larbre de décision des matrices de
    permutations

21
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
22
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
23
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
24
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
25
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
26
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
  • Méthode
  • Construire toutes les matrices de permutations de
    G1
  • Construire larbre de décision des matrices de
    permutations
  • Graphes non dirigés, non étiquetés O(3n)
  • n nuds G1

27
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
  • Méthode
  • Construire toutes les matrices de permutations de
    G1
  • Construire larbre de décision des matrices de
    permutations
  • Graphes non dirigés, non étiquetés O(3n)
  • n nuds G1
  • Recherche de lisomorphisme de G2 avec un
    sous-graphe de G1
  • Automate de décision

28
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
1
1
2
2
3
a1 0 a2 101
0
000
101
11011
10001
01010
29
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
1
1
2
2
3
a1 0 a2 101
0
000
101
11011
10001
01010
30
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
1
1
2
2
3
a1 0 a2 101
0
000
101
11011
10001
01010
31
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
1
1
2
2
3
a1 0 a2 101
1
0
000
101
2
3
11011
10001
01010
a1 0 a2 101 a3 11011
32
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
  • Méthode
  • Construire toutes les matrices de permutations de
    G1
  • Construire larbre de décision des matrices de
    permutations
  • Graphes non dirigés, non étiquetés O(3n)
  • n nuds G1
  • Recherche de lisomorphisme de G2 avec un
    sous-graphe de G1
  • Automate de décision
  • Graphes non dirigés, non étiquetés O(m2)
  • m nuds G2

33
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
  • Améliorations proposées
  • Ullman O(m2n2) Ullman, 76
  • Forward-checking and looking-ahead Haralick,
    Elliot, 80
  • Relaxation discrete Kim, Kack, 91
  • Maximal clique detection Blake, 94

34
Isomorphisme de graphe Isomorphisme de
sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
35
Isomorphisme inexact de graphes et sous-graphes
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Généralités Heuristique Relaxation probababiliste
  • Motivations
  • Obtenir une approximation de la solution optimale
    en un temps de calcul raisonnable (polynomial)
  • On ne cherche pas toujours des appariements
     parfaits  (ex graphe bruités, recherche
    dune similarité de structure ou dobjets, )
  • Approches
  • Informations topologiques uniquement
  • Distance entre les nuds et/ou arêtes et
    information structurelles (le plus souvent
    locale)
  • Optimisations continues

36
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Généralités Heuristique Relaxation probababiliste
  • Heuristique Auber, Delest, Domenger, Dulucq,
    2004
  • Vecteurs de caractéristiques pour chaque nud
  • Caractéristiques structurelles
  • Degré
  • Taille du sous-arbre
  • Nombre de Strahler
  • Hauteur
  • Distance entre les vecteurs (distance
    euclidienne)

37
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Généralités Heuristique Relaxation probababiliste
  • Construction de classes de nuds ?-équivalents
  • n,n ? Ci ? d(n,n) gt ? ? n ?? n

1
2
3
5
6
7
4
8
38
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Généralités Heuristique Relaxation probababiliste
  • Construction de classes de nuds ?-équivalents
  • n,n ? Ci ? d(n,n) gt ? ? n ?? n

1
2
3
5
6
7
4
8
39
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Généralités Heuristique Relaxation probababiliste
  • Construction de classes de nuds ?-équivalents
  • n,n ? Ci ? d(n,n) gt ? ? n ?? n
  • Problème
  • 1er nud 1
  • ? ?

1
1
3
2
8
4
2
3
5
6
7
4
8
40
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Généralités Heuristique Relaxation probababiliste
  • Construction de classes de nuds ?-équivalents
  • n,n ? Ci ? d(n,n) gt ? ? n ?? n
  • Problème
  • 1er nud 1
  • ? ?
  • 1er nud 2
  • ? ?

1
1
3
2
8
4
2
3
5
6
7
4
8
1
3
2
8
4
41
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Généralités Heuristique Relaxation probababiliste
  • Construction de classes de nuds ?-équivalents
  • n,n ? Ci ? d(n,n) gt ? ? n ?? n
  • Heuristique trier les nuds
  • selon leur valeur de Strahler
  • décroissante

1
2
3
5
6
7
4
8
42
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Généralités Heuristique Relaxation probababiliste
  • Prolongation des classes déquivalences
  • Si card (F) ? card (F), on prolonge

u
v
..
..
F
F
??
43
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Généralités Heuristique Relaxation probababiliste
  • Prolongation des classes déquivalences
  • Procédure récursive sur les fils prolongés

u
v
..
..
F
F
??
44
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Généralités Heuristique Relaxation probababiliste
  • Questions
  • Clustering dépendant de lordre de considération
    des nuds (K-means ? Strahler bon choix ? )
  • Choix des paramètres dépend des structures
    étudiées, des éléments recherchée (en étude)
  • Prolongation
  • Récursive sur lensemble du graphe ? Sur le sous
    graphe ?
  • Reconnaissance de motifs fréquents / premier
    candidat
  • Complexité ?
  • Conjecture O(n log(n))

45
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Généralités Heuristique Relaxation probababiliste
  • Relaxation probabiliste Hummel, Zucker, 1983
  • Principe
  • Mesure de similarité ? entre les nuds
    (paramètres intrinsèques)

?(u,u) 0,7
Décision impossible
u
u
46
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Généralités Heuristique Relaxation probababiliste
  • Relaxation probabiliste Hummel, Zucker, 1983
  • Principe
  • Mesure de similarité ? entre les nuds
  • Utiliser linformation contextuelle locale pour
    compenser la similarité basée sur les
    caractéristiques

Taux de similarité ?
?(u,u) 0,7
Décision impossible
u
u
Utilisation de linformation sur les voisinages
47
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Généralités Heuristique Relaxation probababiliste
  • Graphe biparti valué complet des voisins des
    nuds
  • ui uj
  • Poids sur les arêtes
  • w(ui,uj) ?(ui,uj)

u
u
48
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Généralités Heuristique Relaxation probababiliste
  • Graphe biparti complet des voisins des nuds
    valué
  • ui vj
  • Recherche du couplage maximal
  • similarité du voisinage

u
u
49
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Généralités Heuristique Relaxation probababiliste
  • Renforcement de la similarité entre une paire de
    nuds en fonction de son voisinage
  • ?(u,u) ?(u,u) sim(V(u), V(u))

50
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Généralités Heuristique Relaxation probababiliste
  • Renforcement de la similarité entre une paire de
    nuds en fonction de son voisinage
  • ?(u,u) ?(u,u) sim(V(u), V(u))
  • Procédure récursive
  • ?0(u,u) ?(u,u)
  • ?i1(u,u) ?i(u,u) simi(V(u), V(u))

51
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Généralités Heuristique Relaxation probababiliste
  • Renforcement de la similarité entre une paire de
    nuds en fonction de son voisinage
  • ?(u,u) ?(u,u) sim(V(u), V(u))
  • Procédure récursive
  • ?0(u,u) ?(u,u)
  • ?i1(u,u) ?i(u,u) simi(V(u), V(u))
  • Heuristique Assignations
  • Si ?(u,u) gt seuil
  • Si il nexiste pas dautre candidat potentiel

52
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Généralités Heuristique Relaxation probababiliste
  • Problèmes
  • Convergence
  • Maxima locaux
  • Ne prend pas en compte la structure globale du
    graphe
  • Avantages
  • Fournit un appariement un à un
  • Reste lune des méthodes les plus efficaces

53
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
  • Étude dalgorithmes plus récents
  • Attribute Trees in Image Analysis Heuristic
    Matching and Learning Techniques, Markus Peura,
    Proc. ICIAP99, Venice, Italy, pp 1160-1165,
    Sept. 1999,
  • On an algorithm of Zemlyachenko for subtree
    isomorphism, Y. Dinitz, A. Itai, M. Rodeh,
    Information Processing Letters, 70(3) pp
    141-146, 1999
  • Substructure Similarity Search in Graph
    Databases, X. Yan, P.S. Yu, J. Han, Proc. Of Int.
    Conf. On Management of Data, Session Research
    papers graph and tree-structured data pp
    766-777, 2005

54
Attribute trees in image analysis, M. Peura, 1999
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Motivations
  • Indexer, mettre en correspondance, généraliser
    des arbres étiquetés enracinés non ordonnés
  • Mise en correspondance basée sur la division
    récursive de larbre en sous-arbres
  • Mesure de similarité basée sur la distance entre
    les vecteurs de caractéristiques des racines

55
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Indices des nuds

56
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Mise en correspondance
  • Construction de larbre Tm, association des
    arbres Ta et Tb

57
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Mise en correspondance
  • On part de la racine vm va, vb
  • On appelle la fonction récursive Match(vm)

vm
va
vb
Ta
Tb
Tm
58
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Match(vm) // cas vm va, vb
  • Calcul de dist(vai, vbj) pour chaque fils de va
    et vb
  • Pour chaque paire vai, vbj non déjà représentée
    dans Tm ET minimisant dist(vai,vbj) ajouter
    vmvai,vbj
  • Appeler Match(vm)

vm
va
vb
Ta
Tb
Tm
59
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Match(vm) // cas vm va, vb
  • Calcul de dist(vai, vbj) pour chaque fils de va
    et vb
  • Pour chaque paire vai, vbj non déjà représentée
    dans Tm ET minimisant dist(vai,vbj) ajouter
    vmvai,vbj
  • Appeler Match(vm)

vm
va
vb
vm
Ta
Tb
Tm
60
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Match(vm)
  • Calcul de dist(vai, vbj) pour chaque fils de va
    et vb
  • Pour chaque paire vai, vbj non déjà représentée
    dans Tm ET minimisant dist(vai,vbj) ajouter
    vmvai,vbj
  • Appeler Match(vm)

va
vb
vm
vm
Ta
Tb
Tm
61
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Match(vm)
  • Calcul de dist(vai, vbj) pour chaque fils de va
    et vb
  • Pour chaque paire vai, vbj non déjà représentée
    dans Tm ET minimisant dist(vai,vbj) ajouter
    vmvai,vbj
  • Appeler Match(vm)

vm
va
vb
vm
Ta
Tb
Tm
62
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Match(vm)
  • Calcul de dist(vai, vbj) pour chaque fils de va
    et vb
  • Pour chaque paire vai, vbj non déjà représentée
    dans Tm ET minimisant dist(vai,vbj) ajouter
    vmvai,vbj
  • Appeler Match(vm)

va
vb
vm
vm
Ta
Tb
Tm
63
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Match(vm)
  • Calcul de dist(vai, vbj) pour chaque fils de va
    et vb
  • Pour chaque paire vai, vbj non déjà représentée
    dans Tm ET minimisant dist(vai,vbj) ajouter
    vmvai,vbj
  • Appeler Match(vm)

vm
va
vb
vm
Ta
Tb
Tm
64
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Match(vm)
  • Calcul de dist(vai, vbj) pour chaque fils de va
    et vb
  • Pour chaque nud vai (resp. vbj) non  matché 
    ajouter vmvai (resp. vmvbj)
  • Appeler Match(vm)

vm
va
vb
vm
Ta
Tb
Tm
65
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Match(vm) // cas vm va ou vm vb
  • Pour chaque fils nud vai (resp. vbj) de va
    (resp. vb) ajouter vmvai (resp. vmvbj)
  • Appeler Match(vm)

vb
vm
va
vm
Ta
Tb
Tm
66
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Sous-arbre commun maximal
  • Super-arbre minimal Tm composition des arbres
    Ta et Tb

vb
vm
va
vm
Ta
Tb
Tm
67
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Distances
  • Distance topologique (Proportion nuds non mis en
    correspondance)
  • Déviation des attributs

68
Attribute trees in image analysis, M. Peura, 1999
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Intérêts
  • Fournit une mise en correspondance
  • Faible coût
  • Prend en compte
  • La topologie
  • Caractéristiques extrinsèques (descripteurs
    divers)
  • Fournit une distance entre les arbres
  • Construction du plus petit super-arbre contenant
    Ta et Tb
  • Applicable aux DAGs
  • Inconvénients
  • Pas de tolérance structurelle (isomorphisme exact)

69
On an algorithm of Zemlyachenko for subtree
isomorphism, Dinitz, Itai, Rodeh, 1999
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Motivations
  • Isomorphisme exact sur les arbres (enracinés ou
    non)
  • Ordre canonique
  • Principe de classes déquivalence de sous-arbres
    isomorphes

70
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Lordre canonique, indices des nuds, classes
    déquivalence
  • Les feuilles sont le plus petit élément de
    lordre canonique noté ?c

71
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Méthode

72
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Lordre canonique, indices des nuds, classes
    déquivalence
  • Les feuilles sont le plus petit élément de
    lordre canonique noté ?c
  • Si h(u) lt h(v) alors u ?c v

73
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Méthode

74
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Lordre canonique, indices des nuds, classes
    déquivalence
  • Les feuilles sont le plus petit élément de
    lordre canonique noté ?c
  • Si h(u) lt h(v) alors u ?c v
  • Si h(u) h(v)
  • Tri des fils u1 ?c u2 ?c ?c ud(u) et v1 ?c
    ?c vd(v)
  • u ?c v ssi u1u2 ud(u) ?lexico v1v2 vd(v)
  • u c v ssi u ?c v et v ?c u
  • u c v ssi
  • h(u) h(v)
  • d(u) d(v)
  • ui c vi pour i 1 d(u)

75
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Méthode

76
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Méthode
  • Construction un arbre (automate) auxiliaire Dh
  • Liste triée des indices des fils pour chaque
    ui?niveauh

u1 12 u2 22 u3 12 u4 2
77
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Méthode
  • Construction un arbre (automate) auxiliaire Dh
  • Liste triée des indices des fils pour chaque
    w?niveauh
  • Construction de lautomate ordonné Dh pour ces
    mots

u1 12 u2 22 u3 12 u4 2
2
1
u4
2
2
u1,u3
u2
78
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Méthode
  • Parcours en profondeur de lautomate
  • Affectation de ? ?max1 pour chaque ensemble non
    vide

u1 12 u2 22 u3 12 u4 2
2
1
?4
u4
2
2
?5
u1,u3
u2
?3
79
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Méthode

80
On an algorithm of Zemlyachenko for subtree
isomorphism, Dinitz, Itai, Rodeh, 1999
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Intérets
  • Applicables aux DAG
  • Index canoniques en temps linéaire
  • Classification de sous-arbres isomorphes
  • Inconvénients
  • Pas de tolérance sur la structure (isomorphisme
    exact)
  • Indice de classe non représentatif de la
    topologie du sous-arbre

81
Substructure similarity search in Graph
Databases, X. Yan, P.S. Yu, J. Han 2005
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Motivations
  • Recherche dun sous-graphe similaire au graphe
    requête dans une base de données de graphes
  • Méthode de filtrage de la base de données
  • Basé sur la relaxation du graphe requête (édition
    du graphe)

82
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Ratio de relaxation
  • G et Q deux graphes.
  • P sous-graphe commun maximal de G et Q
  • Similarité de sous-structure
  • Ratio de relaxation
  • Exprime le taux de relaxation du graphe Q pour
    quil soit contenu dans G

83
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Ratio de relaxation
  • Similarité de sous-structure 92
  • Si on relâche le graphe requête de 8, il est
    contenu dans le graphe cible

Graphe requête Q
Graphe cible G
84
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Mesure de similarité basée sur les
    caractéristiques (feature-based)
  • Structures élémentaires spécifiques au domaine
    (composant chimique)
  • Similarité basée sur le nombre de de structures
    élémentaires communes

85
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Mesure de similarité basée sur les
    caractéristiques (feature-based)
  • Structures élémentaires spécifique au domaine
    (composant chimique)
  • Similarité basée sur le nombre de de structures
    élémentaires communes
  • Avantage efficacité (comparaison de vecteurs)
  • Inconvénients
  • Ne tient pas compte de la structure globale
  • Difficulté de construire un  dictionnaire  de
    structures élémentaires

86
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Filtrage
  • Éliminer le plus de candidats possibles en
    utilisant lapproches par caractéristiques
  • Étant donné un taux de relaxation pour le graphe
    requête, supprimer de la base les graphes qui ne
    peuvent pas contenir le graphe requête relâché

87
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Filtrage
  • Table qui représente le nombre doccurrences de
    chaque motif élémentaire contenu dans le graphe

88
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Filtrage
  • Base de données ? matrice de caractéristiques de
    graphe (feature-graph matrix)

89
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Estimation des composantes manquantes
  • Choix des composantes élémentaires que lon
    souhaite étudier
  • Calcul dune borne maximale dmax sur le nombre de
    composantes élémentaires manquantes autorisées,
    étant donné un ratio de relaxation
  • Problème NP-complet
  • Méthode dapproximation de cette borne

90
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Filtrage
  • Comparaison du nombre de structures élémentaires

91
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Filtrage
  • Calcul de la différence de fréquence pour chaque
    motif fi en terme de motif manquant dans le
    graphe cible
  • Différence entre le graphe requête et le graphe
    cible

92
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Filtrage
  • Q graphe requête admettant une relaxation de k
    arêtes
  • G le graphe cible
  • 1) Sélection des motifs à étudier
  • 2) Calcul de la borne dmax (nombre de motifs
    manquants autorisés)
  • 3) Calcul de la différence des graphes G et Q
  • Si d(G,Q) gt dmax
  • G ne contient pas Q en relâchant k arêtes

93
Substructure similarity search in Graph
Databases, X. Yan, P.S. Yu, J. Han 2005
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
Peura, 1999 Dinitz, Itai, Rodeh, 1999 Yan, Yu,
Han, 2005
  • Intérets
  • Applicables aux graphes, DAG
  • Notion de similarité (tolérence)
  • Filtrage rapide de bases de données
  • Inconvénients
  • Choix des motifs élémentaires représentatifs
  • Algorithme de décision (ne fournit pas
    dinformation sur les zones similaires)
  • Efficace lorsque le dictionnaire nest pas trop
    grand

94
Conclusion
Isomorphisme exact Isomorphisme inexact Étude
dalgorithmes
  • Reconaissance de graphes/sous-graphes très
    utilisée dans beaucoup de domaines (chimie,
    biologie, visu, image, )
  • Problème encore très ouvert
  • Méthodes efficaces ne proposent que des
    approximations de la solution optimale
  • Problème de tolérance au niveau structurel encore
    peu exploré

95
Bibliographie isomorphisme de graphes
Hopcroft, Tarjan, 1972 Isomorphism of planar
graphs, Complexity of Computer Computations pp
143-150, 1972 Hopcroft, Wong, 1974 A linear
time algorithm for isomorphism of planar graphs,
Proceedings of the sixth annual ACM Symposium on
Theory of Computing pp 172-184, 1974 Luks, 1980
Isomorphism of graphs of bounded valence can be
tested in polynomial time, Proc. 21st IEEE FOCS
Symp., pp 42-49, 1980 Babai, et al., 1982
Isomorphism of graphs with bounded eigenvalue
multiplicity, Proc. 14th ACM Symp. Theory and
Comp. pp 310-324, 1982 Hoffman, 1982
Group-theoretic algorithms and graph isomorphism,
Lecture Notes in Computer Science 136, Chap. V,
Springer 1982 Luks, Hoffman, 1987 An O(n3 log
n) deterministic and an O(n3) Las Vegas
isomorphism test for trivalent graphs, Jrnal of
the ACM, 34, pp 513-531, 1987 Babai, Luks, 1983
Canonical labeling of graphs, Proc. 15th ACM
Symp. Theory and Comp. pp 171-183, 1983
96
Bibliographie isomorphisme de sous-graphes
Alt, Mehlhorn, Munro, 1984 On the complexity
of partial match retrieval, Information
Processing Letters, 19(2) pp 61-65,
1984 Corneil, Gotlieb, 1970 An efficient
algorithm for graph isomorphism, Journal of the
ACM, 17 pp 51-64, 1970 Messmer, 1995 Efficient
graph matching algorithms, PhD thesis, Univ. Of
Bern, Switzerland, 1995 Ullman, 1976 An
algorithm for subgraph isomorphism, Journal of
the Association for Computing Machinery, 23(1) pp
31-42, 1976 Haralick, Elliot, 1980 Increasing
tree search efficiency for constraint
satisfaction problems, Artificial Intelligence,
14, pp 263-313. Elsiever, 1980 Kim, Kack, 1991
3-D object recognition using bipartite matching
embedded in discrete relaxation, IEEE Trans. On
PAMI, 13, pp 224-251, 1991 Blake, 1994
Partitionning graph matching with constraints,
Pattern Recognition, 27(3) pp 439-446, 1994
97
Bibliographie isomorphisme inexact
Auber, Delest, Domenger, Dulucq, 2004
Efficient drawing of RNA secondary structure,
2004 Hummel, Zucker, 1983 On the foundations of
relaxation labeling processes, IEEE Trans. on
PAMI, 5(3) pp 267-287, 1983
Write a Comment
User Comments (0)
About PowerShow.com