• Aucun résultat trouvé

Une procédure générale d'élimination d'isomorphismes pour les problèmes de configuration

N/A
N/A
Protected

Academic year: 2021

Partager "Une procédure générale d'élimination d'isomorphismes pour les problèmes de configuration"

Copied!
10
0
0

Texte intégral

(1)

HAL Id: inria-00000055

https://hal.inria.fr/inria-00000055

Submitted on 25 May 2005

HAL is a multi-disciplinary open access

archive for the deposit and dissemination of

sci-entific research documents, whether they are

pub-lished or not. The documents may come from

teaching and research institutions in France or

abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est

destinée au dépôt et à la diffusion de documents

scientifiques de niveau recherche, publiés ou non,

émanant des établissements d’enseignement et de

recherche français ou étrangers, des laboratoires

publics ou privés.

Une procédure générale d’élimination d’isomorphismes

pour les problèmes de configuration

Laurent Hénocque, Mathias Kleiner, Nicolas Prcovic

To cite this version:

Laurent Hénocque, Mathias Kleiner, Nicolas Prcovic.

Une procédure générale d’élimination

d’isomorphismes pour les problèmes de configuration. Premières Journées Francophones de

Program-mation par Contraintes, CRIL - CNRS FRE 2499, Jun 2005, Lens, pp.335-344. �inria-00000055�

(2)

Une pro édure générale d'élimination

d'isomorphismes pour les problèmes de

onguration

Laurent Héno que Mathias Kleiner Ni olas Pr ovi

LSIS- UniversitéPaulCézanne - Aix-Marseille III

laurent.heno que,mathias.kle iner ,ni olas .pr ovi ls is.o rg

Résumé

Une di ulté intrinséque à la résolution de pro-blèmesde ongurationrésidedansl'existen ede nom-breuxisomorphismesstru turelsdanslessolutions.Nous dénissonsdeuxpro éduresdere her he permettantla suppressiondegrandesportionsdel'espa edere her he dontonmontrequ'ellesnerenfermentquedessolutions non anoniques.Onyparvientgrâ eàuntesten haque noeuddel'arbredere her hede omplexitétemporelle linéaire. Nous présentonsdes résultatssur un exemple de onguration simple mais représentatifde e qu'on pourraobtenirsurdesproblèmesréels.

Abstra t

An inherent di ulty in solving onguration pro-blemsistheexisten eofmanystru turalisomorphisms. We dene two sear h pro eduresallowing the removal oflargeportionsofthesear hspa ethatprovablysolely ontainnon anoni alsolutions.Thetestsperformedon ea hnodearetimepolynomial.Experimentalresultsare reportedonasimpleyetrealisti ongurationexample.

1 Introdu tion

Congurer onsisteàsimulerlaréalisationd'un pro-duit omplexe à partir de omposants hoisis dans un ataloguedetypes,ens'appuyantsurlesrelations onnuesentrelesdiérentstypesde omposantseten faisantdes hoix d'instan iation pourleurs diérents attributs. Le besoin industriel de ongurateurs est an ien[9, 2℄ et a onduit au développement de nom-breux programmes de ongurationet àladénition dediversformalismes[2,12,15,1,14,16,17,8℄.

Notre obje tif prin ipal est de réduire l'explosion ombinatoire superue due à la présen e d'isomor-phismes dans la re her he de ongurations. Nous

la onguration,qui onsiste àgénérer lesstru tures des solutions potentielles

1

. Ce problème est l'un des plusimportants àrésoudre dansle adrede la on-guration,sionveutrésoudredesproblèmespratiques dontlamodélisationstru turellepermetuneréelle va-riabilitédela stru tured'unesolution.A tuellement, lessolveursnesontpas apablesdedéterminerde so-lutions à es problèmesentemps raisonnableà ause du nombre exponentiel d'isomorphes qu'ils générent inutilementpour haquestru turedesolution.

Nousproposonsunepro éduregénéraledere her he desolutionsqui élimine e a ement unegrande par-tie des solutions isomorphesdes problèmes de on-guration. Plus pré isément,nous présentonsune pro- édure dédiée aux stru tures d'arbres, qui est om-plète, non redondante et élimine e a ement toute (sous-)stru turenon anonique.Apartirde ette pro- édure,nousmontrons ommentenobteniruneautre pour générertout type de stru ture sansrestri tion, defaçon omplèteetnonredondante,enéliminantun nombre onséquentdestru turesisomorphes.Ces tra-vauxutilisentdesrésultatsobtenusdans[4℄et [6℄qui donnaientseulementdes onditionsné essaires d'exis-ten edetellespro édures.

Plandel'arti le

Lase tion2dé ritleformalismeutilisétoutaulong de l'arti le, la notion de sous-problème stru turel et la problématiqueliée à leur génération. La se tion 3 présenteunepro éduredegénérationdesolutionsdes sous-problèmesstru turelslorsqu'ilsontunestru ture d'arbre, en démontrant qu'elle est omplète tout en

1

(3)

évitant tout isomorphisme. La se tion 4 étend ette pro édure pour qu'elle traite tout type de problème de onguration.Dans e adre, il n'y aqu'une por-tion des solutions isomorphes qui sont éliminées. En se tion5, onrane la pro édure pour qu'elle rejette en oreplusdesolutionsisomorphesenexploitantleurs automorphismes.Lase tion6fournitdesrésultats ex-périmentauxmontrantlesgainsobtenusgrâ eànotre appro he.

2 Problèmes de onguration,

sous-problèmes stru turels et

isomor-phismes

Unproblèmede ongurationdé ritunproduit gé-nériquesouslaforme d'énon és dé laratifs(règlesou axiomes)portantsurlabonneformationd'unproduit. Lesinstan esvalidesd'unmodèlede onguration (ap-pelées ongurations) indiquent les objets les onsti-tuantainsiqueleursrelations,notammentdetype (re-lation unairede taxonomie)ou de omposition (rela-tionbinaire spé iantqu'unobjetn'estle omposant qued'au plusun omposite).

Voi iunexempletrès simplede problèmede on-gurationquinousserviraàillustrertouteslesnotions dontnoustraiteronsdansl'arti le.Ils'agitde ongu-rerunréseau(N)d'ordinateurs(C) etd'imprimantes (P)(voirFigure 1). Le réseau doit ontenir entre un et trois ordinateurs dont ha un peutêtre relié àun maximumde deux imprimantes.Chaque imprimante doit elle-même être en liaison ave au moins un or-dinateur et trois aumaximum. Par ailleurs, on ales ontraintes globales suivantes : il n'y a qu'un réseau et il n'yapas plusdedeux imprimantes disponibles. Dans un problème réel, les ordinateurs et les impri-mantes pourraient posséder un ertain nombre d'at-tributsàdéterminerenfon tion d'un ertainnombre de ontraintesmaisnouslaissons esélémentsde té arilsnesontpasutilespourillustrernotreappro he.

Les solutions de problèmes de onguration

ontiennentdesobjetsinter onne tés, ommel'illustre la gure 1, qui par ailleurs rend expli ite l'existen e d'isomorphismesstru turels.

Nousisolons equ'onappellelesous-problème stru -turel d'un problème de onguration, qui onsiste à déterminerunestru turedelasolutionàpartirdes re-lationsbinairesentrelesdiérentstypesd'objets dis-ponibles et en fon tion des ontraintes stru turelles qui s'appliquent sur es relations. Ce sont les iso-morphismesqui apparaissent lorsde la résolution de e sous-problème que nous traitons. An de simpli-er le propos, nous faisons abstra tion de tout for-malismehabituellementutilisépourlades riptiondes

C

N

P

1

1..3

1..3

0..2

1(N)

2(C) 4(C) 6(C)

3(P) 5(P)

1(N)

3(P)

2(C) 4(C)

1(N)

3(P) 5(P)

2(C) 4(C) 6(C)

Fig.1Un problèmede onne tiond'ordinateurset d'imprimantesen réseaux. A gau he,la modélisation del'ensembledes typesde omposantset deleurs re-lations. A droite, 3exemples de stru tures solutions. Les deuxstru tures dubassontisomorpheset repré-sententdeuxsolutionséquivalentes.

sembletotalementordonnéd'objets

O

(onutiliseraen pratique

O

= {1, 2, . . .}

),unensembletotalement or-donné de (symboles de)types

T

C

et un ensemble to-talement ordonné

R

C

de (symboles de) relations bi-naires sur

O

. Pour n'importe quelle relation binaire inje tive

R

, nous é rirons indiéremment

(x, y) ∈ R

ou

y

= R(x)

.

Dénition1 (syntaxe) Unproblème stru turel est déni parunquadruplet

(t, T

C

, R

C

, C

)

,où

t

∈ T

C

est letypede l'objet onguré(outypera inede la on-guration)et

C

estunensemblede ontraintes stru tu-rellesportantsurleséléments de

T

C

et

R

C

(typesdes omposants, ardinalités notamment).

Dans le problème du réseau de la gure 1, t

=

N,

T

C

=

{N,C, P},

R

C

=

{(N,C), (C,P)} et

C

ontient toutes les ontraintes stru turelles indiquant le mini-mum et le maximum d'objets pouvant être reliés à haqueobjetpour haquerelationbinaire.

Dénition2 (sémantique) Une instan e d'un pro-blème stru turel

(t, T

C

, R

C

, C)

est une interprétation

I

asso iéeà

t

etauxélémentsde

T

C

et

R

C

, onstruite sur le domaine

O

des objets. Si ette interprétation satisfait les ontraintes de

C

, 'est une solution du problème stru turel.

Nousemploieronsindiéremmentlestermesstru ture ou onguration pour désigner une solution du pro-blèmestru turel.

Onpeutreprésenterune ongurationparunDAG (dire ted a y li graph) oloré G

=

(t,X,E,L) ave X

⊂ O

, E

⊂ O × O

et L

⊂ O × T

C

.testletypera ine, X est l'ensemble des sommets, E est l'ensemble des ar set Lest lafon tionquiasso ie haquesommetà

(4)

(2,3),(1,4)}, {(1,N),(2, C),(3,P), (4,C)}).

Dénition 3( ongurations isomorphes) Deux

ongurations G

=

(t ,X ,E ,L) et G'

=

(t',X',E',L') sont isomorphes ssi t

=

t', L

=

L' et il existe une bije tion

σ

entreXetX'telleque

(x,y)

E,(

σ

(x),

σ

(y))

Eet

(x,l)

L,(

σ

(x),l)

L.

Ex : les 2 solutions du bas de la Figure 1 sont iso-morphes ar

σ

=

((1,1),(2,4),(3,5),(4,2),(5,3),(6,6)) est unebije tionqui orrespondaux ritèresdela dé-nition.

Testerl'isomorphismede deux graphes est un pro-blème de NP qui n'a toujours pas été ni prouvé NP- omplet ni prouvépolynomial. Son importan e a onduit à dénir la lasse des problèmes graph iso-morphism omplete,quireprésentetouslesproblèmes quiluisontéquivalentsentermede omplexité.Parmi esproblèmeséquivalents,nousretrouvonsnotre pro-blème d'isomorphismedeDAG olorés.Pour ertains types de graphes, les arbres ou les graphes de degré borné par une onstante, le test d'isomorphisme est polynomial [7℄. Par ailleurs, il existe des algorithmes e a es en pratique,leplus onnu étant Nauty[11℄. Ce i étant dit, nous devons insister sur le fait que Nauty ne peut être utilisé dans notre situation. En eet, nous devons maintenir la propriété que toute stru ture anonique doit pouvoirêtre obtenue à par-tird'unestru turepluspetiteetelle-même anonique. Cette propriété n'appartient pasà ladénition de la anoni itéutiliséeparNauty.SiNautydéte tequ'une stru turen'estpas anonique,onnepeutpaslarejeter arenla omplétantonpourraitobtenirunestru ture anonique solution. Nous donnons plus loin de plus amplesexpli ationsà e sujet.

Une lassed'isomorphismereprésentel'ensembledes graphes isomorphesentre eux. Dansune lasse d'iso-morphisme, tous les graphes sont équivalents et une pro édure de génération de graphes ayant ertaines propriétés (dansnotre ontexte,lerespe t dumodèle stru turel) ne doit idéalement générer qu'un seul re-présentant,appelé graphe anonique, par lasse d'iso-morphisme. C'est d'autant plus ru ial que le ardi-nald'une lassed'isomorphisme ontenantdesgraphes de

n

sommets est

n!

(le nombre de permutations de l'ensembledessommetsquiproduisentungraphe dif-férent) si ses graphes ne ontiennent pas d'automor-phismes (de permutations qui laissent le graphe in- hangé

2

), e quiestle asdelamajoritédesgraphes. Seuls lesgraphes omplets et les graphes sansarêtes

2

Ce qui signie (peut-être ontre-intuitivement) qu'un graphepossèded'autantmoinsd'isomorphesqu'ilpossède

beau-phisme.

Les pro édures de génération de graphes fon -tionnent généralement par extension unitaire, 'est-à-dire par ajout d'une arête à un graphe donné, de toutes les manières possibles (et valides en fon tion du ontexte),andeproduireunensembledegraphes, quiserontétendusàleurtour.Ilyadeuxtypesd'arête ajoutée : l'arête interne, qui lie deux sommets qui étaientdéjàprésentsdanslegraphe,etl'arêteexterne, quilieunsommetdéjàprésentetunsommetquel'on rée pour l'o asion. Avoirune pro édure e a e de testde anoni ité(problèmegraph-iso omplet)ne suf-t pasàobtenirune pro édure e a edegénération degraphes anoniques.En eet,vérierla anoni ité desgraphessolutionsaprèsqu'ilsaientétégénérésne fait pasgagnerde temps. Idéalement, il faut pouvoir rejeter immédiatement les graphes dont tous les su-pergraphessolutions sont non anoniques. Le moyen leplus lassiqueest de dénirle ritèrede anoni ité detellemanièrequetoutgraphe anoniquepossède au moins unsous-grapherésultantduretrait d'une seule de sesarêtesquiestlui-même anonique. Nousdisons alorsque e ritèrede anoni itéalapropriété de ré-tra tabilité anonique. C'est une ondition né essaire (maisnon susante, fplus bas)pourpouvoir ba k-tra ker dès qu'un graphe anonique est déte té pen-dantl'exé utiond'unepro éduredere her he.En ef-fet,s'ilexisteunseulgraphe anoniquequinepossède pasun telsous-graphe anonique, alorsil faut né es-sairement étendre un graphe non anonique pour le générer.Or,untel ritèrede anoni itéest di ile à trouveret ne orrespondpas en généralà eux utili-sés pour les tests de anoni ité lassiques, y ompris eluideNauty.Ilexistedespro éduresgénéralesde gé-nérationdegraphes sansisomorphequi imposentdes onditionssur la anoni ité,lesplus onnusétantles orderlyalgorithm[13℄,maisilsn'expli itentpasuntest de anoni ité qui soit e a e.A notre onnaissan e, unteltest e a en'a pasen oreété trouvédans un ontextegénéral(si tantest qu'il existe).Par ontre, il existe des pro édures spé ialisées pour générer ef- a ement les graphes qui ont ertaines propriétés : les arbres, les graphes ubiques [3℄ et, plus générale-ment, les graphes ayant des propriétés héréditaires

3 [10℄. Mais les problèmes de onguration ne rentrent pas dans e adre et il nous faut don trouver nos proprespro édures.Pour e i,nous allonsnous repo-sersurdestravauxquiontdéjàee tuésurlesujeten onguration.

3

(5)

sous-Plusieursappro hesontétéexpérimentéespour trai-terlesisomorphismesstru turels.Mais, biensouvent, on ne raisonne que sur le dernier niveau de ompo-sition d'objets, l'idée étant d'éviter l'ajout d'objets inter hangeables pendant la re her he ou de substi-tuerl'ajoutee tif d'un typed'objetpar l'in rémen-tationd'un ompteurde e type d'objet[8℄. Dans[4℄ estdonnéuntestde anoni itéde omplexité pseudo-linéairequi alapropriété derétra tabilité anonique lorsque les problèmes de onguration ne possèdent quedesrelationsde omposition, e quiimpliqueque lesstru turesdessolutionssoientdesarbres.Dans[6℄, lerésultatestgénéralisésousuneformeaaiblieàtout problèmede onguration,sansrestri tionsurles rela-tionsentretypesde omposants.Maistoutepro édure de génération de ongurations n'est pas ompatible ave un ritèrede anoni itédonnémêmes'ilala pro-priétéderétra tabilité anonique.

Graphed'étatsd'unproblème de onguration Considéronslegraphe d'états

G

P

= (X

P

, E

P

)

d'un problèmede onguration.Unétatdel'ensemble

X

P

est simplement une stru ture (un DAG oloré) res-pe tant la modélisation struturelle du problème.

E

P

ontienttousles ouples(g,h)telsqueg,h

∈ X

P

eth est lerésultat d'uneextension unitairede g.(

G

P

est lui-mêmeunDAGdontla ra ineest l'état(t,{1},

, {(1,t)})). Une pro édure de génération de stru tures doitêtre omplèteet non redondante, 'est-à-dire gé-nérerune seulefois ha une desstru turesde

X

P

en par ourant

G

P

.Ce par ourspeutêtre représentépar unarbre ouvrant

T

P

de

G

P

.Considéronsmaintenant le graphe d'états

G

P

qui est le sous-graphe de

G

P

ne ontenant que les stru tures anoniques. La pro-priétéderétra tabilité anoniquegarantitque

G

P

est onnexe et don qu'il existe une pro édure de géné-rationdestru tures anoniquespourlaquelleonpeut ba ktra kerdèsqu'onren ontreunestru turenon a-nonique.Mais elànesigniepasquetoutepro édure degénération destru ture peut onvenir.En eet, si l'interse tion

T

P

entre

T

P

et

G

P

n'est pasungraphe onnexe,ba ktra kersurlesstru turesnon anoniques feraque lapro édurene serapas omplète.Pourque lapro éduresoit omplète,ilfautque

T

P

soitunarbre ouvrantde

G

P

.Cesontdetellespro éduresquenous allonsprésenter maintenant.

3 Generation de stru tures d'arbre sans

isomorphes

Nousprésentonsi iunepro éduredegénérationde

lations de omposition. Une relation de omposition entreuntypeT1,dit omposite,et unautretypeT2, dit omposant,estunerelationbinaireentreT1etT2 spé iantquetoutobjetdetypeT2nepeutêtrerelié qu'à un objet de type T1 au maximum. Ex : la re-lation entre letype N et le type C de laFigure 1est une relationde omposition.Cen'estpasle as dela relation entre le type C et le type P. Pour que ça le soit, il faudrait qu'on impose qu'une imprimante ne puisseêtrereliéeàplusd'unordinateur.Dansle adre de ette se tion,nous onsidéreronsquel'exemplede laFigure1 omporte etterestri tionetqu'iln'adon quedesrelationsde omposition.Lesstru turesdetels problèmessontalorsné essairementarbores entes.

pro eduregenerate

(T, F )

if anoni al(T)then

outputT

//génèrel'ensembleE={(

x

1

,

y

1

),...,(

x

|E|

,

y

|E|

)}des //arêtespermettantdesextensionsunitairesvalides E

=

extensions(T,F)

for

i

:= 1

to

|E|

do generate(T

{(

x

i

,

y

i

)},

F

{(

x

1

,L(

y

1

)),...,(

x

i

−1

,L(

y

i

−1

))})

Fig. 2  La pro édure generate. Pour générer

tous les arbres, on lan e la pro édure par l'appel generate((t, {1},

, {(1,t)}),{})

Lapro édureindiquéeenFigure2est omplète,non redondanteet génèreex lusivementdesstru tures a-noniques. Lafon tionextensions(T, F)retourne la suiteEdesextensionsunitairespertinentesdeT, 'est-à-diretoutes ellesquisont ompatiblesave legraphe derelations entre lestypes(quimodélise leproblème stru turel) et qui ne sontpas interdites par F. L'en-semble E ontientdes ar s

e

i

liant deux sommetsde l'ensemble

O

des objets. Un des sommets était déjà dans l'arbre Tet l'autre n'y était pas. Le paramètre F ontientl'ensembledesextensionsunitairesqu'ilne faut pasfaireetpermet ainsid'éviterdegénérer plu-sieurs foisun même arbre.Une telle redondan e sur-viendraitsi àpartirde T,on produisaitunarbre T1 par ajout de l'ar

e

1

et un arbre T2 par l'ajout de l'ar

e

2

,puisqu'onajoutait

e

2

àT1et

e

1

àT2, equi produiraitdeuxfoislemêmearbre.Pouréviter e i,il fautpartitionnerlare her heendeux: unere her he d'extensionsdeT

{

e

1

}etunere her hed'extensions de T

{

e

2

}ave interdi tion d'utiliser

e

1

. Plus pré- isément, e qu'on interdit, 'est d'ajouterunar (x, z) si

e

1

=

(x, y)et L(y)

=

L(z). Par eque même si es deuxarbressontdiérents,ilssontisomorphes:il suf-t d'é hangeryet zpourpasser d'unarbreàl'autre. Cesontdon les ouplesdelaforme(x,L(y))quifont partie de F. Ils signient qu'on ne doit pas ajouter

(6)

detypeL(y).Dansle asgénéral,ona

|E|

extensions possibleset don onpartitionne en

|E|

parties parla suited'appels

generate(T ∪{(x

i

, y

i

)}, F ∪{(x

1

, L(y

1

)), . . . (x

i

−1

, L(y

i

−1

))})

L'ordre desar sde Epourrait êtrearbitrairesi on n'essayait pas d'éliminer les arbres non anoniques. Mais, ommenousl'avonsvuenndelase tion pré- édente, il doit être hoisi en fon tion du ritère de anoni ité si onveutque lapro édure soit omplète. Nous allons donner unordre adéquat en fon tion du ritèrede anoni itédonné dans[4℄.Dans et arti le, lesauteurs dénissentunordretotal

2

sur lesarbres andedénirla anoni itéd'unarbre ommeétantle représentant

2

-minimalde sa lasse d'isomorphisme. Ilyestdémontréque e ritèrede anoni itéala pro-priété derétra tabilité anonique.Pourquela pro é-dure soit omplète,il fautquelesarêtesdeE soit or-donnéesdelamanièresuivante:lorsqu'ilfaudra hoisir quellearêteajouterenpremier,l'ajoutd'unearête

e

i

seraessayéavantl'ajoutd'unearête

e

j

siT

{

e

i

}

2

T

{

e

j

}.

Proposition1 Lapro édure generateest omplète.

Preuve 1 (sket h)

Onmontred'abordparindu tionquelesarêtessont ajoutées en les reliant à ha un des sommets de la bran hedroited'unarbre, en ommençantparle som-metleplusprofondetenremontantjusqu'àlara ine. C'est trivialement vrai pour l'arbre vide. Si 'est vrai pourtoutarbreTà

n

sommets,çasigniequele som-metyquiaétéreliéàunsommetxdelabran hedroite d'un arbre pour former T est maintenant l'extrêmité de la bran he droitede T. Or, ave l'ajout de y,on a aussi interditdefairedesextensionsunitairesàpartir des sommets situés sous x (en omplétant l'ensemble F). Les seules possibilités restantes sont les sommets an êtres de x, ainsi que x et y, 'est-à-dire tous les sommets dela bran he droitede T.Ensuite,dans[5 ℄, la rétra tabilité anonique est montrée grâ e au fait que le retrait de l'extrêmité de la bran he droite d'un arbrepréservesa anoni ité. En onséquen e, omme, à partir de tout arbre T, la pro édure generate pro-duit toutes lesextensions de Ttellesque leretrait de l'extrêmité de leur bran he droite ferait retomber sur T,elleproduittouslesarbres anoniquespossiblesque l'on peutobtenirparextensionunitaireàpartirde T. Lapro édure estdon omplète.

Dans notre exemple de réseau de ma hines et

d'imprimantes,si nous n'autorisions les imprimantes

imprimante-ma hine serait une relation de omposi-tion. Alors, les solutions stru turelles de notre pro-blèmeauraienttoutesune formed'arbre.LaFigure 3 montrel'arbredere her hequienrésulterait.La pro- édureba ktra keraitsurlesarbresnon anoniques6, 13 et 17.Les arbres non anoniques 10, 12,16, 18 et 19neseraientdon pasgénérés.

P P

C C C

C C C

P P

N

C C C

P P

N

N

C C C

P P

N

C C C

P P

N

C C C

P P

N

C C

N

P P

N

P P

N

P

C C

C

N

N

C C

P

N

C

P

N

C C

C

N

C C C

N

P

C C C

N

P

C C C

N

P

P P

C C

N

C C

P P

N

C C C

10

1

3

2

4

5

6

7

8

9

11

12

13

14

15

16

17

18

19

C

N

P

1

1..3

1..3

0..2

Fig. 3  Une partie du graphe d'état du problème de ongurationderéseau ma hine-imprimantes.Les arbres sont représentés ave uniquement le type de leurssommets.Leslignespointillésjoignantdes som-mets sont les arêtes internes qui peuvent être ajou-tés pourfaire la omplétion. Lesarbres en adrés par des pointillés ne sont pas anoniques. Tous les ar s, pointillés ounon, àtraits nsou larges,sontdes ex-tensions unitaires a priori possibles entre les arbres. Un ar entredeuxarbresnon anoniquesest en poin-tillé.Un ar àtraitlarge(pointillé oupas)est unar empruntéparunepro éduredegénérationdegraphe. Seuls lesar spleins et àtraitslargessontdes transi-tionsee tuéesparlapro édurequi rejettelesarbres non anoniques.

4 Génération de DAG sans ertains

iso-momorphes

Nous présentons maintenant une pro édure gene-rantuniquement equenousappeleronsdesDAG fai-blement anoniques, 'est-à-diredesDAGdontl'arbre ouvrantminimalselon

2

est anonique.Nousévitons ainsi de générer tous les DAG non faiblement ano-niques ar ilssontisomorphesàleurDAGfaiblement anonique, pour la simple raison que la permutation quirendraitleurarbre ouvrant anoniqueestlamême que elle qui lesrendraitfaiblement anonique. Rap-pelonsquelagénératione a ed'unseulreprésentant

(7)

3(C) 4(C) 5(B) 9(B) 12(B)

6(D) 7(D) 10(D) 11(D) 13(D)

2(A) 8(A)

1(t)

3(C) 4(C) 5(B) 9(B) 12(B)

6(D) 7(D) 10(D) 11(D) 13(D)

2(A) 8(A)

1(t)

t

B

D

C

A

0..2

1

1..3

1..2

(1..2)

(1..4)

(1)

(1..3)

(0..5)

(2..4)

t

1

1

1..3

1..3

A

B

1..2

0..2

C

1..2

D

1..4

2..4

0..5

1..4

1..4

1..2

(1..2)

Fig.4GénérationdeDAGàpartird'arbres.Enhaut àgau he, un modèle de stru ture. En haut àdroite, unarbre ouvrantde ompositiondumodèle.En bas àdroite, une stru turepossibledumodèlerelaxé.En basà gau he, une solution possible dumodèle après omplétiondel'arbre.

problèmeouvert.C'estpourquoinousnous restreigne-ronsi iàlagénérationdeDAGfaiblement anoniques. Le prin ipe est de générer d'abord un arbre a-nonique, appelé arbre stru turel, puis d'ee tuer des extensions unitaires qui n'ajoutent que des arêtes internes. Nous pouvons générer tous les arbres a-noniques en utilisant notre pro edure de génération d'arbres anoniques qui ba ktra ke dès qu'un arbre non anoniqueest produit.Apartirde ha un de es arbres,nousgénéronstouslesDAGdontilestl'arbre stru turel.

LaFigure 4montre ommentmettre etteidée en oeuvre.Onpartd'unmodèlestru turel ontenantdes relationsbinairesquel onquesetonenextraitun sous-modèlene ontenantquedesrelationsde omposition. Ce sous-modèleest unarbre ouvrant(arbitraire)du modèled'origine.Apartirde esous-modèle,onpeut générer des solutions arbores entes,qui seront om-plétéespourformer desDAGssolutionsduproblème d'origine. Il faut faire attention à ne pas mettre en oeuvrel'idéedefaçonnaïvesouspeinedegénérer plu-sieursfoislesmêmesDAGs.

Premièrement, les arêtes qui sont des extensions possiblesd'unarbresontordonnéesselonunordre (ar-bitraire)

<

. Selon le même prin ipe que pour l'ajout d'arête que nous avons vu pré édemment pour la onstru tiond'arbre,lesarêtessonttoujoursajoutées selon l'ordre

<

et une arête ne peut plus être ajou-tées'ilexisteunearêtee'quifaitdéjàpartieduDAG et qui est telle que e

<

e'. Commepour la onstitu-tion d'arbre, il est évident que ela évite de générer des DAG déjà générés auparavant. Soit

a

le nombre d'arêtesinternes qu'on peut ajouteràunarbre T, le

2

|a|

au lieu de

|a|

|a|

. Mais ela ne sut pas à élimi-ner toutes les redondan es dues à la génération de DAG identiques. Pour y parvenir, nous allons ee -tueruntestsupplémentairesur haqueDAGgénéré: nousallonsvériers'il ontientunpluspetit(selon

2

) arbre re ouvrantqueson arbrestru turel. Si e n'est pasle as, ela signiequ'on peutba ktra kersur e DAG.En eet,il existealorsunarbre anonique iso-morphe à et arbre ouvrantqui est pluspetit (selon

2

)quel'arbrestru turelduDAG.Cetarbre anonique est lui-mêmel'arbrestru tureld'unautre DAGqui a don déjaproduit(ouquiproduira)par omplétionun DAG isomorphe au DAG ourant. La pro édure qui vériel'identitéentrearbre ouvrantminimaletarbre stru turel est de omplexitéO(

n

),

n

étantle nombre de sommets duDAG. Elle onsiste simplement en la omparaison selon

2

entre les deux arbres. Un des prin ipaux avantagede ette te hnique est qu?il est susant detrouvern?importe quel arbre re ouvrant quisoitinférieuràl?arbrestru turel,mêmesiiln?est pas anonique.

Considérons l'arête (x,y) nouvellement ajoutée, x étant le prédé esseur de y dans le DAG. Le DAG a déjàunautreprédé esseurpquiestaussilepèredey dansl'arbrestru turelTduDAG.Considérons main-tenantl'arbreT'résultantdurempla ementdel'arête (p,y) parl'arête (x,y). Si T'

2

T alorsnous rejetons leDAGrésultantdel'extension (x,y).

Parexemple, dansl'arbre15 delaFigure 3,l'arête internereliantlepremierCaudeuxièmePnedoitpas être ajoutée le plus petit arbre re ouvrant du DAG seraitalorsl'arbre14.

pro edure ompletion(G,F) outputG

//génèrel'ensembleE

=

(

e

1

,...

e

|E|

)desarêtesinternes //permettantdesextensionsunitairespasdansF E

=

extensions-internes(G,F)

for

i

:= 1

to

|E|

do

ompletion(G

{

e

i

},F

{

e

1

, ...e

i

−1

})

Fig.5Lapro édure ompletion.

Proposition2 Notre pro édure generate ave un appel à ompletion à haque arbre anonique génère une seulefois haqueDAGfaiblement anonique.

Preuve 2 (sket h) La pro édure ompletion ne gé-nèrejamaisdeuxfoislemêmeDAGàpartird'unarbre anonique donné et jamais non plus un DAGqui ré-sulteraitde la omplétiond'unautrearbre.

(8)

La pro édure ompletion(G,F) peut être amélio-réeenfaisantensorted'éliminerlesDAGisomorphes résultant des extensions unitaires d'un DAG. L'idée généraleestsimple:si

e

1

et

e

2

sontdeuxar sinternes quipeuvent ompléterGpourformerG1etG2etque G1etG2sontisomorphesalorsonnefaitpas d'exten-sionunitaireajoutant

e

2

.Parexemple,sion onsidère leDAGenbasàdroitedelaFigure1,luirajouterl'ar (4,3)produitunDAGisomorpheà eluiquirésulterait de l'ajout del'ar (6,3).Onéviteradon defaireune de esdeux extensionsunitaires.

Une premièreidée ( oûteuse) est don de onsidé-rer tout ouple de graphes omplétés par un ar de E et de tester s'ils sont isomorphes (gra e à Nauty, parexemple).Si 'estle as,onsupprimedeEundes ar s de omplétion. L'in onvénient de ette méthode estqu'ilyapotentiellementO(

n

2

)extensionsunitaires pourungrapheà

n

sommets,don 0(

n

2

)graphesdont onpeuttrouverlereprésentant anoniquegrâ eàune pro éduretelleque elledeNauty, equifaitdel'ordre de O(

n

4

) ouplesde graphes anoniquesà omparer. Parailleurs,mêmesiNautyaun omportement poly-nomialsurlaplupartdesgraphes,ilestde omplexité exponentielledanslepiredes as.Nousallonsdon uti-liseruneméthodededéte tiondegraphesisomorphes quiserain omplètemaisgarantiraune omplexitétrès faible.

Cetteméthodeutiliselessymétrieséventuelles (pré- isément,legrouped'automorphisme)del'arbre stru -turel : la anoni ité de es arbres a été dénie ré- ursivement dans [4℄ de telle manière que, pour tout sommet de l'arbre, les sous-arbres dont il est la ra- ine sont ordonnés lexi ographiquement selon

2

. En onséquen e, deux sous-arbres sont permutables en laissantl'arbrein hangéseulementsileursra inessont ls d'unmême sommetetsontvoisines.Ilsut alors que es deux sous-arbres ( anoniques) soient iden-tiques pourqu'ils soient permutables, e qui se teste entempslinéaireenfon tiondunombre

n

desommets del'arbre.En onséquen e,déterminerquelssonttous les ouplesdesommetsinter hangeablesdansunarbre estuneopérationenO(

n

3

)quipeutsefaireuneseule fois avantquene ommen e la omplétiond'un arbre stru turel.Grâ eàla onnaissan edessommets inter- hangeables,nous pouvons éviter l'ajoutinutile d'un ertains nombre d'arêtes. Il est évident qu'un DAG résultantd'uneextensionunitaire(

x

,

z

)estisomorphe auDAGrésultantdurempla ementdel'ar (

x

,

z

)par l'ar (

y

,

z

)si

x

et

y

sontinter hangeableset si

z

n'est pasunsommetàl'intérieurdessous-arbresde ra ine

x

ou

y

.Unedesdeuxextensionsunitairesn'adon pas

entre deux sommets est perdue dès lors qu'un som-met est utilisé dans une extension unitaire omplé-mentante,onintroduit unsystème demarquage sup-plémentaire.Dèsqu'unar omplémentantestajouté, il se forme un nouveau y le (mais pas un ir uit) dansleT-dag.Touslessommetsde e y lesortentde leur lassed'inter hangeablitéetserontdon marqués ommefaisantpartied'un y leetdon disponiblesà l'avenirpourfairepartied'un nouvelar omplémen-tant.Pourobtenirl'ensembledessommetsde e y le, ilsut deremonterdepèreenpèretouslessommets duT-arbreàpartirde ha unedesdeuxextrêmitésde l'ar ajoutéjusqu'àleuran être ommun( fgure6).

4

2

1

3

5

6

7

8

Fig.6Ajout d'unearêteinterne et marquaged'un y le.

Dans le l'arbre anonique de la gure 6, les sous-arbres de ra ine 6, 7 et 8 sont identiques, ainsi que lessous-arbresdera ine3et4.Si le hoix d'inter on-ne terdessommetsde esdeuxgroupesestfait,alors on le fait par exemple uniquement ave les sommets 3et6 arlessommets4,7et8sontinter hangeables ave lessommets3ou6.Dèsquel'ar (3,6)estajouté, lessommets 1,2,3et 6sont marqués ommefaisant partie d'un y le (et ils ontperdu leur inter hangea-bilité)etilredevientpossibled'utiliserultérieurement lessommets4ou7 ommeextrêmitéd'arêteinterneà ajouter.

6 Résultats expérimentaux

Nosexpérimentationsontétémenéessurl'exemple du problème de onguration du réseau ma hines-imprimantesillustrégure1enfaisantvarierlataille duproblème,surunPCà1.7Ghzave 512ModeRAM sous Linux. Pour haque hoix de nombres

c

de ma- hineset

p

d'imprimantes,nousavonsgénérétoutesles stru tures(DAG) possiblesde solutionsgrâ eàdeux variantesd'algorithme :Covering Tree ou t (généra-tiondesarbres anoniques, ha un omplété enDAG grâ e à l'ensemble ordonné de toutes ses extensions internes possibles ave ba ktra k sur les DAG dont l'arbrestru tureldevientinférieurselon

2

à ausede l'ajout de l'arête) et full ( t + élimination d'arêtes

(9)

1 3 8 4 4 0 4 0 2 3 64 16 32 0 30 0 3 3 512 46 273 0 262 0 4 3 4096 109 2234 0.01 2078 0.02 5 3 32768 219 17099 0.12 13095 0.1 6 3 262144 393 130404 1.01 69757 0.64 7 3 2.110

6

649 993197 8.34 329495 3.43 8 3 1.610

7

1006 / / 1.4510

6

17.23

Tab.1Resultatsleproblèmederéseaude( )PC -(p)imprimantes.(tempsense ondes,"/"=temps

>

60se ondes)

Nousavons omparélenombredeDAGgénéréspour lesdeuxalgorithmesave lenombredeDAGsolutions duproblèmestru turelsiau unisomorphen'était éli-miné. Ce nombre de solutions serait égal au nombre degraphesbipartis( anoniquesoupas)reliantun en-semble de

c

sommets à un ensemble de

p

sommets :

2

c.p

.

Latable 1nousmontrequelenombredeDAGest si-gni ativementdiminuégrâ eàl'algorithme t,grâ e

au nombre important de DAG isomorphes dont on

évite la génération.L'algorithmefull permet une di-minutionen oreplusimportante,ennombredeDAG ommeentempsd'exé ution.

Les ongurateursa tuelsneparviennentàrésoudre quedesproblèmesdetaillelimitée.L'utilisationde es stratégiesd'éliminationd'isomorphespourradon per-mettredetraiterdesproblèmesdeplusgrandetaille.Il fautnoter que leproblèmesur lequelnous avonsfait nos tests ne doit pas être onsidéré omme arti iel maisplutt ommegénérique: il meten jeu untype de relation ouramment utilisé dans la modélisation deproblèmede onguration:unerelationbinaire gé-nérale soumise à une limitation du nombre d'objets onne tables à haque type d'objet. Même ave un problèmequine ontientqu'uneseulede esrelations, lesstru turesdessolutionssontdesDAGbipartisdont iln'existepasdepro èdured'éliminatione a e(ave testpolynomialde rejetdeDAG non anoniques) de tous les isomorphes. Le test de anoni ité des DAG bipartisestd'ailleursgraph-iso omplet.Aussisimple etpetitàpremièrevuequesemblenotreexemple,les ongurateursa tuelsgénéreraienttouslesDAG(

2

p.c

) bipartisave touslesisomorphes.Notonsaussiquesi unproblèmemettaitenjeuplusieursrelationsbinaires généralesentredestypes(parexempleunerelationR1 entredestypesAetBetunerelationR2entreletype Bet untype C)alors legainque nous avonsobtenu suruneseulerelations'obtiendraitsur ha unedes re-lations et legain global résulteraitdes gains obtenus

Insertion dans une re her he globale de ongura-tion

Un problèmede ongurationest normalement dé-ni aussipar desattributs asso iés auxobjetset de-vantrespe ter ertaines ontraintes.Lagénérationde la stru ture de la solution n'est don qu'une partie delarésolution duproblème,lereste onsistantà af-fe ter une valeurà haqueattribut en respe tantdes ontraintes, 'est-à-direàrésoudreunCSP.Toutesles te hniquesderésolutiondeCSPsontalorsappli ables etonpeutmélangerlesphasesde omplétionde stru -ture et d'ae tation d'attribut. Par ailleurs, remar-quons que notre te hnique d'élimination d'arêtes re-posesur la onnaissan ed'inter hangeabilitéde som-metsdelastru ture, equiimpliqueaussi l'inter han-geabilitédesattributsdesobjetsquereprésentent es sommets. Ainsi, les te hniques existantes de traite-mentdesymétriesdanslesCSPpeuventêtreutilisées après la onstitutionde lastru ture pourae ter les attributs et béni ierontde ette pré-re her he d'élé-mentssymétriques.

7 Con lusion

Les travaux que nous avons présentés étendent si-gni ativement le traitement des nombreux isomor-phismes présents dans pratiquement tous les pro-blèmesde onguration,alorsqu'ilétaitlimitéjusqu'à présentàladéte tiond'inter hangeabilitéd'objetsnon en ore utilisés ou au omptage d'objets non ompo-sites.Lapro éduredegénérationdeDAG olorésque nous avons présentée s'attaque au problème des iso-morphismesde stru ture dessolutionsdes problèmes de ongurationdanstoutesagénéralitéetpermetdes gains detemps de résolution très appré iablesmême pourdesproblèmesdetailleréduite.

Référen es

[1℄ Jérme Amilhastre, Hélène Fargier, and Pierre Marquis. Consisten y restoration and explana-tions in dynami spsappli ation to ongura-tion. Arti ial Intelligen e, 135(1-2) :199234, 2002.

[2℄ Virginia Barker, Dennis O'Connor, Judith Ba- hant, and Elliot Soloway. Expert systems for ongurationatdigital:X onandbeyond. Com-muni ations of theACM,32:298318,1989. [3℄ G.Brinkmann. Fast generation of ubi graphs.

J. GraphTheory, 23:139149,1996.

[4℄ StephaneGrand olas,LaurentHeno que,and Ni- olasPr ovi .A anoni itytestfor onguration.

(10)

olas Pr ovi . Pruning isomorphi stru tural sub-problemsin onguration. Te hni alreport, LSIS, June 2003. Available from the CoRR ar- hiveathttp://arXiv.org/abs/ s/0306135. [6℄ Laurent Heno que and Ni olas Pr ovi .

Pra ti- ally handling onguration automorphisms. In pro eedingsofthe16thIEEEInternational Confe-ren e on Tools for Arti ial Intelligen e, Bo a Raton,Florida, November15172004.

[7℄ E. M. Luks. Isomorphismof graphs of bounded valen e anbetestedinpolynomialtime.J. Com-put. SystemS i.,25:4249,1982.

[8℄ DanielMailharro.A lassi ationand onstraint-based framework for onguration. AI in Engi-neering, Design and Manufa turing, (12), pages 383397,1998.

[9℄ John P. M Dermott. R1: A rule-based ongu-rer of omputer systems. Arti ial Intelligen e, 19:3988,1982.

[10℄ B. D. M Kay. Isomorph-free exhaustive genera-tion. J.Algorithms,26(2):306324,1998. [11℄ Brendan D. M Kay. Pra ti al graph

isomor-phism. Congressus Numerantium, 30 :4587,

1981.

[12℄ Sanjay Mittal and Brian Falkenhainer. Dyna-mi onstraintsatisfa tionproblems. InPro . of AAAI-90,pages2532,Boston,MA,1990. [13℄ Ronald C.Read. Everyoneawinner orhowto

avoidisomorphismsear hwhen ataloguing om-binatorial ongurations.AnnalsofDis rete Ma-themati s,2:107120,1978.

[14℄ DanielSabinandEugeneC.Freuder. Composite onstraint satisfa tion. In Arti ial Intelligen e andManufa turingResear hPlanningWorkshop, pages153161,1996.

[15℄ TimoSoininen,EstherGelle, andIlkkaNiemela. Axpointdenitionofdynami onstraint satis-fa tion. InPro . of CP'99, pages419433,1999. [16℄ Timo Soininen, Ilkka Niemela, Juha Tiihonen, and Reijo Sulonen. Representing onguration knowledgewith weight onstraintrules. InPro . of the AAAI Spring Symp. on Answer Set Pro-gramming:TowardsE ientandS alable Know-ledge, pages195201,Mar h2001.

[17℄ Markus Stumptner. An overview of

knowledge-based onguration. AI Communi ations,

Figure

Fig. 1  Un problème de onnetion d'ordinateurs et
Fig. 2  La proédure generate. Pour générer
Fig. 3  Une partie du graphe d'état du problème
Fig. 4  Génération de DAG à partir d'arbres. En haut
+2

Références

Documents relatifs

Personnes ressources TIC Contact Rôles /

The main point of this paper is to prove a similar decomposition theorem for some generalisations of quiver Hecke algebras and, hence, obtain an ana- logue of the Dipper–Mathas

ordonnée à l’origine déplacement horizontal.. Comment calculer les coordonnées du point d’intersection entre deux droites.  Le point d’intersection de la droite avec

On rajoute des zéros à chaque nombre pour qu’ils aient tous 4 chiffre après la virgule - comme

Similar results were obtained for Tb(III) species formed with the ligands 2 and 4a, suggesting in each case that no solvent molecules are directly coordinated to the

Dans cette question, toute trace de recherche, même incomplète, ou d’initiative non fructueuse, sera prise en compte dans l’évaluation... Déterminer la fonction dérivée de f

[r]

Il sera tenu compte de la rédaction dans la note finale.. 5- Donner un exemple algébrique de fonction qui admette ce tableau