Download - Arc consistance et généralisation

Transcript
Page 1: Arc consistance et généralisation

Arc consistance et généralisation

Michel LiquièreLirmm

Page 2: Arc consistance et généralisation

Langages de descriptionDescription

languageGeneralization

orderComplexity Generalization

operatorComplexity

Set inclusion P Intersection P

Sequence Prefix inclusion p Maximal common prefix

P

Rooted Tree Rooted tree inclusion

P Maximal common rooted tree

P

Locally injective labeled graph

Morphism P Graph product and reduction

P

Labeled Graph

Morphism NP Graph product and reduction

NP

Labeled Graph

? ? ? ?

Page 3: Arc consistance et généralisation

CSPRésoudre un probléme de satisfaction de contraintes (CSP)<=> trouver un morphisme d’un graphe G1 vers un graphe G2.

QuickTime™ et undécompresseur

sont requis pour visionner cette image.QuickTime™ et undécompresseur

sont requis pour visionner cette image.

Un morphisme de G dans H correspond à une solution du CSP

Page 4: Arc consistance et généralisation

Arc consistance• Morphisme => NP-complet

• CSP utilise un filtrage basé sur des contraintes de voisinages (l’arc consistance)

• Nous proposons d’utiliser un nouveau type de projection (AC-projection) basé sur l’arc consistance

Page 5: Arc consistance et généralisation

Ensembles N-compatible

1 2

4

5

7

8

9

Pour un graphe dirigé G, deux ensembles S, S’ de sommets de G sont dit N-compatible ssi

Pour tout x dans S il y a un successeur (voisin) de x dans S’ et

pour tout x’ dans S’ il y a un predecesseur de x’ dans S.

Notation S ~> S’.Nous avons {A1,A2) ~> {B4,B5} puisque (A1,B4),(A2,B5) sont des arcs de G.

De même {C7,C8) ~> {A1,A2,A9}

{A1,A2,A9} et {B4,B5} ne sont pas N-compatible puisqu’il n’y a aucun arc entre A9 et B4 ou B5

G

Page 6: Arc consistance et généralisation

AC-Projection

AC

0

123

4

56

7

8

9

G1 G2

AC: A0 -> {A1,A2}, B3 -> {B4,B5} et C6 ->{C7,C8} est une AC- projection de G1 dans G2. Par exemple pour l’arc (A0,B3) nous avons:

AC(A0)={A1,A2} ~> AC(B3)= {B4,B5}

Pour deux graphes dirigés (étiquetés) G1 et G2, une application AC: N(G1) -> N(G2)* est une AC- projection (Notation G1--• G2) ssi pour tout (x,y) dans E(G1) nous avons

AC(x) ~> AC(y) et pour tout x’ dans AC(x) label(x’)= label(x).

Page 7: Arc consistance et généralisation

Propriétés de l’AC-projection

• La recherche d’une AC-projection de G1 dans G2 est polynomial

• S’il n’y a pas d’AC-projection de G1 dans G2 alors il n’y a pas de morphisme de G1 dans G2.

• S’il y a une AC-projection de G1 dans G2 Alors tout arbre qui a un morphisme dans G1 a un morphisme dans G2.

Pour G1 et G2 deux graphes:

Page 8: Arc consistance et généralisation

Interpretation

AC

G1 G2

T

Morphism

Morphism

Page 9: Arc consistance et généralisation

Operations

• Il existe un opérateur produit de complexité polynomiale

• Il existe un opérateur de réduction de complexité polynomiale (élément minimal d’une classe d’équivalence).

Page 10: Arc consistance et généralisation

Generalization operator

E

D

R(G1 G2)

Page 11: Arc consistance et généralisation

Treillis des concepts et

AC-Projection

Calcul via l’opérationProduit (généralisation)

Page 12: Arc consistance et généralisation

Operation de spécialisationOn définit l’opération ~ entre deux ensembles de sommets S1,S2 d’un graphe G. (S’1,S’2)= S1 ~ S2 avecS’1= {x S1 / y S2 avec (x,y) arc de G}S’2= {y S2 / x S1 avec (x,y) arc de G}

Rectangle

on on

Rectangle Circle

right

0

1 2

3 4

Rectangle 0,3 on 1,2

0Rectangle

~

1,2

Page 13: Arc consistance et généralisation

Méthode en spécialisationRectangle

on on

Rectangle Circle

right

Rectangle

on on

Circle Rectangle

right

Square

on

Rectangle Square

on

0

1 2

3 4

5

6

7 8

9 10

11

12

13

14

15

16

Rectangle 0,3,6,10,14 on 1,2,7,8,13,15 Circle 4,9 Right 5,11 Square 12,16

Rectangle 0,6,14 on 1,2,7,8,15 on 1,8 13 Rectangle 3,10,14

Rectangle 0,6 on 1,8

on 1,2,7,8

Rectangle 3,10,14

on 2,7

Support 2

Page 14: Arc consistance et généralisation

Conclusion

Résultats:

• Une nouvelle relation d’ordre partiel pour les graphes: AC-projection.

• Un opérateur de généralisation pour cet ordre partiel.

• Calcul des opérations de projections et de généralisation: polynomial.

• Les graphes trouvés représentent un grand (potentiellement infini) ensemble d’arbres.

• On posséde un opérateur de spécialisation ~ très simple à calculer ce qui donne une méthode de parcours en spécialisation.

• L’algorithme est parallélisable