• Aucun résultat trouvé

Elimination des symétries dans les problèmes injectifs

N/A
N/A
Protected

Academic year: 2021

Partager "Elimination des symétries dans les problèmes injectifs"

Copied!
9
0
0

Texte intégral

(1)

HAL Id: inria-00000092

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

Submitted on 27 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.

Elimination des symétries dans les problèmes injectifs

Jean-François Puget

To cite this version:

Jean-François Puget. Elimination des symétries dans les problèmes injectifs. Premières Journées

Francophones de Programmation par Contraintes, CRIL - CNRS FRE 2499, Jun 2005, Lens, pp.259-

266. �inria-00000092�

(2)

Elimination des symétries dans les problèmes

injetifs

Jean-François Puget

ILOG

9Avenue de Verdun

94253 Gentilly Cedex

pugetilog.fr

Résumé

L'ajoutde ontraintesest utilisé depuis longtemps

pouréliminerlessymétries danslesCSP.Parexemple,

on peut enlever toutes les symétries dans le problème

du'pigeonholeenordonnantlesvariables.Nousavons

généraliséerésultatàtouslesproblèmesinjetifs,'est-

à-direoù lesvariablesdoiventprendredesvaleurstoutes

distintes.Dans e asilest possible d'éliminertoutes

les symétries ave un ordre partiel sur les variables.

Nousmontronsomment automatiquementalulerun

telordreenutilisantdesalgorithmessurlesgroupes -

nis.Nousmontronségalementqueetordrepartielpeut

êtreombinéaveuneméthodeéliminantlessymétries

de valeurs. Des expérienes variées montrent l'intérêt

pratiquedenotreméthode.

Abstrat

Addingsymmetrybreakingonstraintsisoneofthe

oldest ways of breaking variablesymmetries for CSPs.

For instane, it iswell known thatall the symmetries

for the pigeon hole problem an be removed by orde-

ringthevariables.Wehavegeneralizedthisresulttoall

CSPswherethe variablesaresubjettoanalldierent

onstraint. Insuhaseit ispossible toremoveallva-

riablesymmetrieswithapartialorderingofthevariables.

Weshowhowthispartialorderinganbeautomatially

omputedusingomputationalgrouptheory(CGT).We

furthershowthatpartialordersanbesafelyusedtoge-

therwiththeGE-treemethodof[10 ℄.Experimentsshow

theeienyofourmethod.

1 Introdution

Une symétrie pour un problème de satisfation de

ontraintes (CSP, Constraint Satisfation Problem)

sa struture et ses solutions.Si un CSP ades symé-

tries, il se peut que toutes les variantes symétriques

d'unéhesoienttestésavantdetrouverunesolution.

Même si le problème est faile à résoudre, toute va-

riantesymétriqued'unesolutionestunesolution,etil

peutêtreimpossibledeleslister.

L'ajout de ontraintes est une des méthodes les

plus aniennes pour éliminer des symétries [9℄. Par

exemple,ilestmontrédans[1℄qu'ilest possibled'éli-

miner toutes les symétries de variables en ajoutant

uneontraintelexiographiqueparsymétrie.Malheu-

reusement, ette méthode n'est pas pratique ar il

peut y avoir un nombre exponentiel de symétries. Il

est d'ailleurs montré dans [11℄ qu'il n'est pas pos-

sible en général d'éliminer toutes les symétries ave

un nombre polynomial de ontraintes. Dans [2℄, un

nombrelinéairedeontraintesestutilisépouréliminer

lessymétriesdansdesproblèmespouvantsereprésen-

terparunematriedevariables.Commelenombrede

ontraintes ajoutées est polynomial, ertaines symé-

triesnesontpaséliminées.Toutefois,dansertainsas

partiuliers,ilpeutêtre possibled'éliminertoutesles

symétries ave unnombrepolynomialde ontraintes.

Parexemple,dans[9℄,nousmontronsqueleproblème

dupigeonhole peutêtrefailementrésoluenordon-

nanttouteslesvariables.

Dansetartilenousonsidéronsunelassedepro-

blèmesplusgénérale:lesproblèmesinjetifs.Ils'agit

de problèmes où les variables doivent prendre des

valeurs diérentes deux à deux, par exemple pare

qu'une ontrainte tous diérents est présente dans

le problème. Dans e as, la fontion ayantpourdo-

mainelesvariablesetpourimagelesvaleursestinje-

tive.Nousmontronsdanslasetion3quedanseas

(3)

ave

n − 1

ontraintes binaires,

n

étant lenombrede

variables.

Dans[10℄uneméthodegénéralepouréliminertoutes

lessymétries devaleursestprésentée.Nousmontrons

dans la setion 4 omment ombiner ette méthode

ave les ontraintes éliminant les symétries de va-

riables.

Danslasetion5nousappliquonsnotreméthodeà

quelquesproblèmesomplexes,etnousonluonsdans

lasetion6.

2 Symétries, Graphes et CSPs

Lessymétriesquenousonsidéronssontdespermu-

tations, 'est-à-dire des bijetions d'un ensemble ni

surlui même. Sansperte de généraliténous pouvons

nousrestreindreàl'étudedespermutationsde

I n

,ave

I n = {0, 1, 2, . . . , n − 1}

. Parexemple, nous pouvons

indexerlesvariablesd'unCSPavedesentiers,defa-

çonà e que toute symétrie de variables soit dénie

par une permutation des indies des variables. Cei

estformaliséommesuit.

2.1 Algorithmesdethéorie des groupes

Soit

S n

l'ensembledespermutationsde

I n

.L'image

par

i

parlapermutation

σ

est notée

i σ

.Une permu-

tation

σ ∈ S n

est entièrement dérite par leveteur

[0 σ , 1 σ , . . . , (n − 1) σ ]

.Laompositiondedeuxpermu-

tations

σ

et

θ

est déniepar

i (σθ) = (i σ ) θ

.

Etant donné

i ∈ I n

et ungroupede permutations

G ⊆ S n

,l'orbitede

i

dans

G

,notée

i G

, estl'ensemble

desimages de

i

parlesélémentsde

G

:

i G = {i σ |σ ∈ G}

Etant donné

i ∈ I n

et ungroupede permutations

G ⊆ S n

, le stabilisateur de

i

dans

G

, noté

i G

, est

l'ensembledesélémentsde

G

quilaissent

i

invariant:

i G = {σ ∈ G|i σ = i}

2.2 CSP etsymétries

Un CSP

P

ave

n

variables est un triplet

P = (V , D, C)

V

est un ensemble ni de variables

(v i ) i∈I n

,

D

unensemblenid'ensemblesnis

(D i ) i∈I n

,

et haque ontrainte de

C

un sous ensemble du pro-

duitartésien

N

i∈I n D i

.Sanspertedegénéralité,nous pouvonssupposerque

D i ⊆ I k

pourkdonné

k

.

Un assignement est un veteur de valeurs

(a i ) i∈I n

tel que

a i ∈ D i

pour tout

i ∈ I n

, et est noté

(v i = a i ) i∈I n

. Un assignement partiel est un sous veteur d'unassignement.

Unesolutionde

(V , D, C)

estunassignementquisa- tisfaittouteslesontraintes.

Etantdonnéunepermutation

σ

de

I n

,ondénitune

permutationdevariablessurlesassignements(partiels

ounon)par:

((v i = a i ) i∈I n ) σ = ((v i σ = a i ) i∈I n )

De telles permutations sont des symétries de va-

riablessiellesenvoientlessolutionssurdessolutions.

Etantdonnéunepermutation

θ

de

I k

,ondénitune

permutationde valeurssur lesassignements(partiels

ounon)par:

((v i = a i ) i∈I n ) θ = ((v i = a θ i −1 ) i∈I n )

Detellespermutationssontdessymétriesdevaleurs

siellesenvoientlessolutionssurdessolutions.

2.3 Unoloriage degraphes

L'exemplequisuitvaêtreutilisépourillustrernotre

méthode.Ungrapheave

m

arêtesestditgraieuxs'il

existeunétiquetage

f

desessommetstelque:

0 ≤ f (i) ≤ m

pourtoutsommet

i

,

f

estinjetive,

les valeurs

abs(f (i), f (j))

pour toutes les arêtes

(i, j)

sonttoutesdiérentes.

Cei peutsemodélisernaturellementommeunCSP

ave une variable

v i

par sommet [4℄. Les symétries

duproblèmesontinduites parlesautomorphismesdu

graphe.Ilyaunesymétriedevaleursnontriviale,qui

envoie

v

sur

m − v

. Pour plus d'information sur les symétriesdesgraphesgraieuxvoir[7℄,[8℄.

@ @ @ @ @

@ @ @ @ @

0

2

3

5

1 4

Figure1.Legraphe

K3 × P 2

.

Considéronslegraphedelagure1.Legroupedes

symétries devariablespourleCSP orrespondantest

équivalent au groupe des symétries du graphe. Un

tel groupe peut être alulé ave un logiiel tel que

Nauty[5℄.Ce groupe

G

est:

{[0, 1, 2, 3, 4, 5], [0, 2, 1, 3, 5, 4], [1, 0, 2, 4, 3, 5],

[1, 2, 0, 4, 5, 3], [2, 0, 1, 5, 3, 4], [2, 1, 0, 5, 4, 3],

[3, 4, 5, 0, 1, 2], [3, 5, 4, 0, 2, 1], [4, 3, 5, 1, 0, 2],

[4, 5, 3, 1, 2, 0], [5, 3, 4, 2, 0, 1], [5, 4, 3, 2, 1, 0]}

(4)

Comme nous l'avonsdit, l'ajout de ontraintes est

une méthode onnue pour éliminer les symétries de

variables.

3.1 Contrainteslexiographiques

Dans [1℄, il est montré que toutes lessymétries de

variablespouvaientêtreéliminéesave lesontraintes

suivantes.

∀σ ∈ G, V V σ

(1)

Pourunesymétrie

σ

donnée,laontrainte

(V V σ )

est équivalentàladisjontiondesontraintes:

v 0 < v 0 σ

v 0 = v 0 σ ∧ v 1 < v 1 σ

.

.

.

v 0 = v 0 σ ∧ . . . ∧ v i−1 = v (i−1) σ ∧ v i < v i σ

.

.

.

v 0 = v 0 σ ∧ . . . ∧ v n−2 = v (n−2) σ ∧ v n−1 < v (n−1) σ

v 0 = v 0 σ ∧ . . . ∧ v n−2 = v (n− 2) σ ∧ v n−1 = v (n− 1) σ

Si la dernière ontrainte est omise, l'ensemble des

ontraintesestnoté

V ≺ V σ

.

Dansnotreexemple,lesontraintesdonnéespar[1℄

sont:

(v 0 , v 1 , v 2 , v 3 , v 4 , v 5 ) (v 0 , v 1 , v 2 , v 3 , v 4 , v 5 ) (v 0 , v 1 , v 2 , v 3 , v 4 , v 5 ) (v 0 , v 2 , v 1 , v 3 , v 5 , v 4 ) (v 0 , v 1 , v 2 , v 3 , v 4 , v 5 ) (v 1 , v 0 , v 2 , v 4 , v 3 , v 5 ) (v 0 , v 1 , v 2 , v 3 , v 4 , v 5 ) (v 1 , v 2 , v 0 , v 4 , v 5 , v 3 ) (v 0 , v 1 , v 2 , v 3 , v 4 , v 5 ) (v 2 , v 0 , v 1 , v 5 , v 3 , v 4 ) (v 0 , v 1 , v 2 , v 3 , v 4 , v 5 ) (v 2 , v 1 , v 0 , v 5 , v 4 , v 3 ) (v 0 , v 1 , v 2 , v 3 , v 4 , v 5 ) (v 3 , v 4 , v 5 , v 0 , v 1 , v 2 ) (v 0 , v 1 , v 2 , v 3 , v 4 , v 5 ) (v 3 , v 5 , v 4 , v 0 , v 2 , v 1 ) (v 0 , v 1 , v 2 , v 3 , v 4 , v 5 ) (v 4 , v 3 , v 5 , v 1 , v 0 , v 2 ) (v 0 , v 1 , v 2 , v 3 , v 4 , v 5 ) (v 4 , v 5 , v 3 , v 1 , v 2 , v 0 ) (v 0 , v 1 , v 2 , v 3 , v 4 , v 5 ) (v 5 , v 3 , v 4 , v 2 , v 0 , v 1 ) (v 0 , v 1 , v 2 , v 3 , v 4 , v 5 ) (v 5 , v 4 , v 3 , v 2 , v 1 , v 0 )

3.2 Unnombrepolynomialde ontraintes

Lenombredeontraintes(1)peutêtreexponentiel

ave le nombre de variables

V

. Ce nombre peut être

grandementréduiten utilisantl'utilisationde l'inje-

tivité delafontiondesvariableverslesvaleurs.Pre-

nonsunedessymétriesdenotreexemple:

σ = [0, 2, 1, 3, 5, 4]

(v 0 , v 1 , v 2 , v 3 , v 4 , v 5 ) (v 0 , v 2 , v 1 , v 3 , v 5 , v 4 )

Puisque

v 0 = v 0

est trivialement vraie, et puisque

v 1 = v 2

ne peut pas être vrai par injetivité, ette ontraintepeutsesimplieren:

v 1 < v 2

Cettesimpliationestvraieengénéral,etpeutêtre

formaliséeommesuit. Etantdonnéune permutation

σ

,notons

s(σ)

lepluspetit

i

telque

i σ 6= i

,etnotons

t(σ)

l'imagede

(s(σ))

par

σ

.

Lemme 1.Etant donné unCSP (V,D,C) injetif,

etungroupede symétriesdevariables GpourleCSP,

alors touteslessymétries de Gpeuventêtreéliminées

parlesontraintessuivantes:

∀σ ∈ G, v s(σ) < v t(σ)

(2)

Preuve. Par dénition,

k σ = k

si

k < s(σ)

, et

s(σ) σ 6= s(σ)

. Examinonslaontrainte

V V σ

.L'in-

jetivité duCSP implique

v i = v i σ

si et seulementsi

i σ = i

. En partiulier,

v k = v k σ

for all

k < s(σ)

, et

v s(σ) 6= v (s(σ)) σ

.Donunseulélémentdeladisjontion

peutêtrevrai.Ils'agitde:

v 0 = v 0 σ ∧ . . . ∧ v s(σ)−1 = v (s(σ)−1) σ ∧ v s(σ) < v (s(σ)) σ

Comme

k σ = k

pour

k < s(σ)

et

s(σ) σ = t(σ)

, ei

peutêtresimplieren

v s(σ) < v t(σ)

.

2

Notons que nous n'avons utilisé qu'une propriété

plusfaiblequel'injetivité.Enefet,pourquelelemme

soitvrai,ilsutque

v s(θ)

et

v t(θ)

soientdiérentes.

Notons égalementque sideux permutations

σ

et

θ

sont telles que

s(σ) = s(θ)

et

t(σ) = t(θ)

, alors les

ontrainteséliminantessymétries sontidentiques.Il

sutdond'ajouteruneseuleontraintepourhaque

paire

i, j

tellequ'ilexisteunepermutation

σ

ave

i = s(σ)

et

j = t(σ)

.

L'ensemble de es paires peut être alulé ave

l'algorithme de Shreier Sims [12℄. Cet algorithme

onstruit une suite de stabilisateurs

G 0 , G 1 , . . . , G n

ommesuit:

G 0 = G

∀i ∈ I n , G i = (i − 1) G i−1

Pardénition,

G i = {σ ∈ G : 0 σ = 0 ∧ . . . ∧ (i − 1) σ = i − 1}

G n ⊆ G n−1 ⊆ . . . G 1 ⊆ G 0

(5)

sembles de représentant

U i

qui sont les orbites de

i

dans

G i

:

U i = i G i

Pardénition,

U i

estl'ensembledesimagesde

i

par

lespermutationsde

G

quilaissent

0, . . . , (i − 1)

inva-

riants.

Nous supposerons désormais que les groupes sont

déritsparunesuitedestabilisateursetparlesrepré-

sentantsassoiés.

Dansnotreexemple,lasuitedestabilisateursest :

G 0 = G

G 1 = 0 G 0 = {[0, 1, 2, 3, 4, 5], [0, 2, 1, 3, 5, 4]}

G 2 = 1 G 1 = {[0, 1, 2, 3, 4, 5]}

Touslesstabilisateurssuivants

G 3 , G 4 , G 5

sontégaux

à

G 2

.

Lesreprésentantssont:

U 0 = 0 G 0 = {0, 1, 2, 3, 4, 5}

U 1 = 1 G 1 = {1, 2}

U 2 = 2 G 2 = {2}

U 3 = 3 G 3 = {3}

U 4 = 4 G 4 = {4}

Théorème 2.Etant donné unCSPinjetif ave

n

variables

V

,et étantdonné desreprésentants

U i

pour

le groupe des symétries de variables du CSP, alors

touteslessymétriesdeGpeuventêtreéliminéesparau

plus

n(n − 1)/2

ontraintes binaires. Ces ontraintes

sontdonnées par :

∀i ∈ I n , ∀j ∈ U i , i 6= j → v i < v j

(3)

Preuve. Par dénition, pour haque élément

j ∈ U i

,ilexisteaumoinsunepermutation

σ ∈ G i

telleque

i σ = j

et

j = t(σ)

. Laréiproqueestvraie:s'il existe

unepermutation

σ

tellesque

i = s(σ)

ettelle

j = t(σ)

,

alors

j ∈ U i

. Don, parle lemme 1,laontrainte (2)

peutêtreréériteen:

∀i ∈ I n , ∀j ∈ U i , i 6= j → v i < v j

Ilyaauplus

P n−1

i=0 (|U i | − 1)

ontraintes.Toutesles permutations

G i

laissent

0, . . . , i − 1

invariants.Don

U i

estunsousensemblede

{i, . . . , n − 1}

.Don

|U i | − 1 ≤ n − i − 1

, et le nombrede ontraintes est borné

supérieurementpar

P n−1

i=0 (n − i − 1) = n(n − 1)/2

.

2

Notonsqued'aprèslapremièreremarquedulemme

1,ettepreuven'utilise pasl'injetivitéengénéral.Il

tintes. Lerésultatreste vraisi leproblèmen'estpas

injetif,maissilaonditionsuivantestvraie:

∀i, j, k, j ∈ U i ∧ k ∈ U i → v j 6= v k

(4)

Dans notre exemple,lesontraintesduthéorème 2

sont:

v 0 < v 1 , v 0 < v 2 , v 0 < v 3 , v 0 < v 4 , v 0 < v 5 , v 1 < v 2

Notonsqueertainesdeesontraintessontredon-

dantes. Par exemple, la ontrainte

v 0 < v 2

est im-

pliquée parla premièreet ladernièreontrainte,par

transitivité. Nous pouvons don la supprimer. Cette

remarqueestgénéraleommenousallonslevoirdans

lasetionsuivante.

3.3 Unnombrelinéaire deontraintes

Lerésultatpréédentpeutêtreamélioréenutilisant

latransitivitédelarelationd'ordre.Etantdonné

j ∈ I n

, il sepeut que

j

appartienneàplusieurs

U i

.Dans

eas,dénissons

r(j)

leplusgrand

i

diérentde

j

tel

que

j

appartienne à

U i

. Si

j

n'appartientàauun

U i

autreque

U j

,alors

r(j) = j

.

Avant d'énoner notre résultat prinipal,prouvons

equi suit.

Lemme 3.Aveles notationsqui préèdent, si

j ∈ U i

et

i 6= j

alors

r(j) ∈ U i

et

r(j) < j

Preuve. Supposons que

j ∈ U i

et

i 6= j

. Par dé-

nition de

U i

il existe une permutation

σ ∈ G i

telle

que

i σ = j

. Posons

k = r(j)

. Par dénition de

r(j)

,

i ≤ k

et

j ∈ U k

. Don, il existe une permutation

θ ∈ G k

telle que

k θ = j

. Posons

ν = σθ −1

. alors,

i ν = i σθ −1 = j θ −1 = k

. Deplus,

ν ∈ G i

ar

σ ∈ G i

et

θ ∈ G k ⊆ G i

. Don,

k ∈ U i

. Lefait que

r(j) < j

est

une onséqueneimmédiatedeladénition de

r(j)

.

2

Nous pouvons maintenant énoner notre résultat

prinipal.

Théorème 4. Ave les notations qui préèdent,

étantdonné unCSPinjetifave

n

variables

V

,alors

touteslessymétriesdevariablespeuventêtreéliminées

aveauplus

n−1

ontraintesbinaires.Cesontraintes

sont donnéespar:

∀j ∈ I n , r(j ) 6= j → v r(j) < v j

(5)

Preuve. Lenombre de ontraintes (5) est au plus

n

par dénition. Comme

r(0) = 0

par dénition, le

nombre de ontraintes est au plus

n − 1

. Examinons

(6)

une des ontraintes de(3)

c = (v i < v j )

, ave

j ∈ U i

et

i 6= j

. Nous herhons à prouver que

c

est impli-

quée parlesontraintes(5). Considérons la séquene

(j, r(j), r(r(j)), r(r(r(j))), . . .)

. Supposons qu'elle ne

renontrejamais

i

.Nousavons

j ∈ U i

et

i 6= j

.D'après

le lemme 3,

r(j) ∈ U i

et

r(j) < j

. Comme

r(j) 6= i

parhypothèse,lelemme3peutêtreappliqué denou-

veau.Pardesappliationsrépétéesdeelemme,nous

onstruisons une séquenedéroissanteinnieinluse

dans

U i

. Cei est impossible ar

U i

est ni. Don il

existe

k

tel que

i = r k (j)

. De plus, nous avons éta-

bli que

r k (j) 6= r k− 1 (j), . . . , r(r(j)) 6= r(j), r(j) 6= j

.

Don les ontraintes

v r k (j) < v r k−1 (j) , . . . v r(r(j)) <

v r(j) , v r(j) < v j

sont dans (5). Ensemble, elles im-

pliquent

v r k (j) < v j

qui est la ontrainte

c

. Nous

avons donprouvéque l'ensemble des ontraintes de

(3)estimpliquéparlesontraintesde(5).Comme(5)

est unsousensemblede (3),es deux ensembles sont

équivalents.Don,parappliation duthéorème2,les

ontraintes(5)éliminenttouteslessymétries.

2

Notons que erésultat restevalable si laondition

(4)est vraiemêmesileproblèmen'estpasinjetif:

Corollaire 5. Ave les notations qui préèdent,

étant donné un CSP ave

n

variables

V

tel que (4)

estvrai,alorstouteslessymétriesdevariablespeuvent

êtreéliminées ave auplus

n − 1

ontraintesbinaires.

Cesontraintessontdonnéespar(5).

Dansnotreexemplenousavons:

r(0) = 0, r(1) = 0, r(2) = 1, r(3) = 0, r(4) = 0, r(5) = 0

Donlesontraintes(5)duthéorème4sont:

v 0 < v 1 , v 0 < v 3 , v 0 < v 4 , v 0 < v 5 , v 1 < v 2

Notons quelaontrainte

v 0 < v 2

n'apparaîtplus.

Pour illustrer l'utilité du orollaire 5, prenons

l'exempledes

n ×n

reines.Ils'agitdeolorierunéhi-

quier de

n

ases de ave

n

ouleurs de façon à

equ'auuneligne,olonneoudiagonaleneontienne

deuxfoislamêmeouleur.Ceipeutêtrevuommela

reherhede

n

solutionsdisjointesauproblèmedes

n

reines.Chaquesolutionestdonnéeparlesasesd'une

ouleur donnée. Ce problème peut-être modélisé par

uneCSPave

n 2

variables,uneparasedel'éhiquier, et une ontrainte tousdiérentsparligne, olonneet

diagonale.Nousordonnonslesvariablesligneparligne

(voirgure2).

v 0 v 1 . . . v n−1

v n v n+1 . . . v 2n−1

.

.

.

.

.

. .

.

. .

.

.

v n(n−1) . . . . . . v n 2 −1

Lessymétries devariablesproviennentdes 8symé-

tries du arré. Calulons l'orbite de la première va-

riable,

v 0

. Cette variable est dans un oin, et peut

êtreenvoyéesurn'importequelautreoin.Donnous

avons:

U 0 = {0, n − 1, n 2 − 1, n(n − 1)}

Ensuite nous alulons le stabilisateur de

v 0

. La

seule symétrie non triviale qui laisse le premier oin

invariant est une réexion sur lapremière diagonale.

L'orbitede

v 1

danse stabilisateurestdon:

U 1 = {1, n}

Lesstabilisateurssuivantssontréduitsàl'identité.

Lesontraintesduproblèmesonttellesquelaondi-

tion(4)estsatisfaite.Eneet,deuxoinsdonnéssont

surunemêmeligne,dondoiventprendredesvaleurs

diérentes. De plus,lesasede

v 1

et

v n

sontsur une

même diagonale, don leurs valeurs doivent être dis-

tintes. Nous pouvons don appliquer le orollaire 5

pourobtenirlesontraintessuivantes:

v 0 < v n−1 , v 0 < v n(n−1) , v 0 < v n 2 −1 , v 1 < v n

Cesontrainteséliminenttouteslessymétriesdeva-

riablespoureproblème.

4 Elimination des symétries de variables

et de valeurs

Une méthode générale pour éliminer les symétries

devaleursestprésentéedans[10℄.Cetteméthodeuti-

lisele groupedessymétries de valeursdu CSP.Nous

allonsprouverqueetteméthodepeutêtreutiliséeen

même tempsque l'ajout deontraintespouréliminer

lessymétriesdevariables.

Soit un CSP injetif

P

ave

n

variables

v i

, et des

domainesinlusdans

I k

.Uneméthodepourtransfor-

mer toutes les symétries de valeurs en symétries de

variables est présentée dans [2℄. Un nouveauCSP

P

est rééenajoutant

n × k

variables binaires

x ij

à

P

.

Ces variablessontreliéesauxvariables originellespar

lesontraintessuivantes:

∀i ∈ I n , j ∈ I k , (x ij = 1) ≡ (v i = j)

Lavariable

x ij

égale1sietseulementsilavariable

v j

égalej.L'ajoutdeesvariablesetdeesontraintes

ne hange pas lessolutions du CSP. De plus, lessy-

métries de variables de

P

sont équivalentes aux per- mutations des lignes de la matrie

x ij

, alors que les

symétries de valeursde

P

sontéquivalentes auxper-

(7)

Soit

X

le veteur de variables obtenu en onaté-

nantles lignesdelamatrie

x ij

.Danse veteur,les

variables

x ij

sonttriées parordre roissantde

i

puis

de

j

.

Considérons une symétrie de valeur

θ

de

P

.

θ

est

unepermutationdesolonnesdelamatrie.Cettesy-

métrieest éliminéeparlaontrainte[1℄:

X X θ

(6)

Soit

X i

leveteurdesvariablesdanslaligne

i

dela

matrie.Lasymétrie devaleurs

θ

envoie lesvariables

d'unelignedelamatriesurdesvariablesdelamême

ligne:

X i = (x i0 , x i1 , . . . , x i(k− 1) )

(X θ ) i = (x i0 θ−1 , x i1 θ−1 , . . . , x i(k− 1) θ−1 )

Par dénition de

, nous avons que (6) est équi-

valentàladisjontiondesontraintessuivantes:

X 0 ≺ (X θ ) 0

X 0 = (X θ ) 0 ∧ X 1 ≺ (X θ ) 1

.

.

.

X 0 = (X θ ) 0 ∧ . . . ∧ X i−1 = (X θ ) i−1 ∧ X i ≺ (X θ ) i

.

.

.

X 0 = (X θ ) 0 ∧. . .∧X n−2 = (X θ ) n−2 ∧X n−1 ≺ (X θ ) n−1

X 0 = (X θ ) 0 ∧. . .∧X n−2 = (X θ ) n−2 ∧X n−1 = (X θ ) n−1

Comparons

X i

ave

(X θ ) i

.Soit

a i

lavaleuraetée

à

v i

.Alors

x i(a i ) = 1

et

x ij = 0

for

j 6= a i

.Demême,

x i(j) θ − 1 = 1

si et seulementsi

j θ 1 = a i

, 'est-à-dire

a θ i = j

.Don,

X i = (X θ ) i

sietseulementsi

a i = (a i ) θ

,

et

X i ≺ (X θ ) i

siet seulementsi

a i < (a i ) θ

.

Don (6) est équivalent à la disjontion des

ontraintes:

a 0 < (a 0 ) θ a 0 = (a 0 ) θ ∧ a 1 < (a 1 ) θ

.

.

.

a 0 = (a 0 ) θ ∧ . . . ∧ a i−1 = (a i−1 ) θ ∧ a i < (a i ) θ

.

.

.

a 0 = (a 0 ) θ ∧ . . . ∧ a n− 2 = (a n− 2 ) θ ∧ a n− 1 < (a n− 1 ) θ a 0 = (a 0 ) θ ∧ . . . ∧ a n− 2 = (a n− 2 ) θ ∧ a n− 1 = (a n− 1 ) θ

Examinons l'un des termes de la disjontion, par

exemple:

a 0 = (a 0 ) θ ∧ . . . ∧ a i−1 = (a i−1 ) θ ∧ a i < (a i ) θ

Cei indiqueque

θ

laisse invariant

a 0 , a 1 , . . . , a i−1

.

Danseas

a i

doitêtreleminimumparmilesvaleurs

sur lesquelles

θ

peut l'envoyer. Nousavonsdémontré

lerésultatsuivant.

Lemme 6.Aveles notations i-dessus,

a i

estmi-

nimaldanssonorbite pourlegroupedessymétries de

valeursqui laissent

a 0 , a 1 , . . . a i−1

invariants.

CeiestéquivalentàlaméthodeGE-tree[10℄quand

lesvariables etlesvaleurssonttestées enordrerois-

santpendantlareherhe.

D'après [1℄, il est orret de d'ajouter toutes les

ontraintes (1) pour

P

. En partiulier, il est orret d'ajouterlesontraintes(1)pourlessymétriesdeva-

riablesde

P

avetouteslesontraintes(6).D'aprèsle

lemme6,l'ensembledesontraintes(6)estéquivalent

à laméthode GE-tree pouréliminer lessymétries de

valeurs.Nousavonsdonprouvélerésultatsuivant.

Théorème 7.Etant donnéunCSP,son groupede

symétries de variables

G 1

,etson groupede symétries

devaleurs

G 2

,alorslaombinaisondelaméthodeGE-

tree ave les ontraintes (1) alule un ensemble de

solutions

S

telque:

∀S ∈ sol(P), ∃σ ∈ G 1 , ∃θ ∈ G 2 , ∃S ∈ S, S σθ = S

Le orollaire duthéorème 4dit que l'ensemble des

ontraintes(1)estéquivalentauxontraintes(5)pour

lesproblèmessatisfaisantlaondition(4).Ceidonne:

Corollaire 8. Etant donné un CSP vériant (4),

songroupedesymétriesdevariables

G 1

,etsongroupe

desymétriesdevaleurs

G 2

,alorslaombinaisondela

méthode GE-tree ave les ontraintes (1) alule un

ensemble desolutions

S

telque:

∀S ∈ sol(P), ∃σ ∈ G 1 , ∃θ ∈ G 2 , ∃S ∈ S, S σθ = S

5 Résultats expérimentaux

Nous avons implanté un algorithme similaire à

Nauty[5℄pouralulerlesautomorphismesdegraphes,

ainsi qu'un algorithme de ShreierSims [12℄. Ces al-

gorithmes ont étéutilisés dansles exemplessuivants.

Dansnotreimplantationnousn'avonspasimplémenté

toute laméthode GE-tree,arellerequiert plusd'al-

gorithmes de groups nisque e quenous avons im-

plémenté.Nousn'avonsqueodélealuldesorbites

dans le groups

G 2

dessymétries devaleurs. Ensuite,

seule la valeur minimaledans haque orbite est lais-

sée dans le domaine de la variable

v 0

. Nous appe-

lons notre méthode SBC (pour Symmetry Breaking

Constraints) dans e qui suit, an de la distinguer

desméthodespréédemmentpubliées.

(8)

Nousavonstesténotre approhesurlesgraphesde

[7℄ [8℄. Les symétries de variables sont éliminées par

les ontraintes (5). Il y a une seule symétrie de va-

leurs non triviale, qui envoie

a

sur

e − a

,

e

est le

nombred'arêtesdugraphe.Lesorbitespourlessymé-

triesdevaleurssontdonlesensembles

{a, e−a}

pour

0 ≤ a ≤ e/2

.Dononpeutrestreindrele domainede

v 0

engardantlapluspetitevaleurdanshaunedees

orbites.

Pourhaquegraphenousdonnonslenombredeso-

lutions duCSP (sol), lataille de l'arbrede reherhe

(noeud) et le temps de réponse. Les variables et les

valeurssonttestées enordre roissant.Nous donnons

es informations pour une reherhesansélimination

de symétrie (nosym) et pour notre méthode (SBC).

Danseasletempsderéponseinlueletempsnées-

sairepourlareherhedesautomorphismesdugraphe

et pour l'algorithme de ShreierSims. Les temps de

réponse sont mesurés sur un PC portable Dell Lati-

tude D800a1.4MHzsousWindowsXP.Le CSPest

résoluaveILOGSolver6.0[3℄.

graph nosym SBC

sol no eud temps sol no eud temps

K 3 × P 2

96 1518 0.12 8 83 0.01

K 4 × P 2

1440 216781 13.6 30 1863 0.27

K 5 × P 2

480 34931511 4454 2 53266 6.5

K 6 × P 2

0 1326585 305

Table1.Caluldetouteslessolutionsp ourlesgraphesgraieux.

Les tempes de réponse sont 30 foisplus petits que

eux obtenus parlesméthodes GAP-SBDDet GAP-

SBDS[8℄surunordinateurenviron2foispluslentque

le notre. La division par 15 dutemps de réponse ne

peut pas être entièrement imputée à la diérene de

logiieldeprogrammationparontraintesutilisé.Cet

exemple montre que l'ajout de ontraintes est beau-

oup plus eae que les méthodes modiant la re-

herhede solution. Toutefois,notre méthode trouve

deux fois plus de solutions. Voyons pourquoi sur le

graphe

K 5 × P 2

.Cegraphea10sommetset25arêtes.

Nous donnonslavaleurdes

10

variablesduCSP or-

respondantpourlesdeuxsolutionstrouvées:

(0, 4, 18, 19, 25, 23, 14, 6, 3, 1) (0, 6, 7, 21, 25, 24, 22, 19, 11, 2)

L'appliationde lasymétriedevaleursnontriviale

àladeuxièmesolutiondonne:

(25, 19, 18, 4, 0, 1, 3, 6, 14, 23)

Appliquonslasymétriedevariablessuivanteàette

solution:

[4, 3, 2, 1, 0, 9, 8, 7, 6, 5]

lessymétriesquisontlaompositiond'unesymétriede

variablesaveunesymétriedevaleursbienquehaque

typedesymétriesoitéliminé séparément.

5.2 Carrés magiquesplusparfaits

Lesarrésmagiquesplusparfaits(mostperfetma-

gi squares), étudiés dans [6℄, sont donnés omme

exemple de CSP ave des symétries de valeurs om-

plexesdans[10℄.Lesauteursontdéidéd'utiliser une

représentation duale pour que les symétries de va-

riables du problème deviennent des symétries de va-

leurs,and'utiliserlaméthodeGE-tree.Ilestprouvé

dans[6℄quelesarrésmagiquesplusparfaitsétaienten

bijetionavelesarrésréversibles.Unarréréversible

estunarréde

n

ellulesde(

n = 0

modulo4)rem-

plitdesnombres

1 . . . n 2

telque(i)lasommededeux

oinsdiagonalementopposésdansn'importequelsous

retangle est égaleàla somme desdeux autres oins

(ii)danshaqueligneouolonne,lasommedupremier

et derniernombreégalelasomme dudeuxièmeet de

l'avant dernier, et (iii) la somme de deux nombres

diamétralementopposésfait

n 2 + 1

.

Toute solution a

2 n+1 ((n/2)!) 2

variantes symé-

triques[6℄.Pour

n = 16

eifaitenviron2.13e+14.

Le modèle naturel pour e problème a une va-

riable par ellule du arré de domaine

{1, 2, .., n 2 }

.

Uneontraintetousdiérentsest ajoutéeenplusdes

3 ontraintes listées plus haut. Comme le problème

estinjetif,nouspouvonsutilisernotreméthodepour

éliminerlessymétriesdevariable.Nousdonnonspour

diérentestaillesdeproblèmeletempsnéessairepour

alulerlessymétries duproblèmeainsi queletemps

néessairepouralulertouteslessolutionsnonsymé-

triques.Nousdonnonségalementlestempsde[10℄,ob-

tenus aveGAP-SBDDetlaméthodeGE-treesurun

ordinateur deuxfoispluslentquele notre.Une om-

paraisondireteestdiilearleCSPutilisén'estpas

exatementlemême.Toutefois,nouspouvonsompa-

rerle temps dealul lié augroupede symétries ar

ils'agitdumêmegroupedanslesdeuxas.Notremé-

thoderequiertbeauoupmoinsdetempsarlealul

n'a besoin d'être fait qu'une fois, avant de laner la

(9)

SBC 4 3 0.01 0.02

8 10 0.09 0.39

12 42 0.44 22.2

16 35 4.6 275.6

GAP-SBDD 4 3 0.3 0.3

8 10 5.4 125.4

12 42 2745 12518

GE-tree 4 3 0.2 0.1

8 10 0.7 90.0

12 42 29.1 10901.8

Table2.Caluldetouteslessolutionspourlesarrés

magiques plusparfaits.

6 Conlusion

Nousavonsétablideuxrésultats(i)touteslessymé-

triesdevariablespouvaientêtreéliminéespasauplus

n − 1

ontraintesbinairespourlesCSP injetifsave

n

variables (ii)laméthode GE-tree peutêtre utilisée

en même temps que l'ajout de ontraintes éliminant

lessymétries devariables.

Notre méthode peut être entièrement automatisée

en utilisant des logiiels de alul d'automorphisme

de graphes tels que Nauty[5℄ et des algorithmes sur

lesgroupes nis [12℄.Nous avons implémenté es al-

gorithmes.Desexpérienesvariéesenmontrentl'inté-

rêt pratique. Toutefois, il est bon de noter que bien

quenotreméthodeéliminetouteslessymétries deva-

riablesettouteslessymétriesdevaleurs,ellen'enlève

pas leurs ombinaisons. Il nous semble judiieux de

herheràamélioreretaspet.

Remeriements

Nous tenons à remerier Marie Puget et les rele-

teursanonymespourleursremarquesqui ontgrande-

mentontribuéàaméliorerlalisibilité deetartile.

Référenes

[1℄ Crawford, J., Ginsberg, M., LuksE.M., Roy, A.

Symmetry Breaking Prediates for Searh Pro-

blems. InproeedingsofKR'96,148-159.

[2℄ P. Flener, A. M. Frish, B. Hnih, Z. Kiziltan,

I.Miguel,J.Pearson,T.Walsh.:BreakingRow

andColumnSymmetriesinMatrixModels.Pro-

eedingsofCP'02, pages462-476,2002

[3℄ ILOG : ILOG Solver 6.0. User Manual. ILOG,

S.A.,Gentilly,Frane,Septembre2003

[4℄ Lustig, I.J., and Puget, J.F. (2001). "Program

ming and itsRelationshipto Mathematial Pro-

gramming,"Interfaes31(6),29-53.

[5℄ M Kay, B. : Pratial Graph Isomorphism

Congr.Numer.30, 45-87,1981

[6℄ DameOllenrenshaw,K.Onmostperfetorom-

plete 8x8 pandiagonal magi squares Proee-

dingsRoyalSoietyLondon,407,259-281,1986.

[7℄ Petrie,K.,Smith,B.M.:Symmetry breakingin

graefulgraphs.InproeedingsofCP'03,LNCS

2833,930-934,SpringerVerlag,2003.

[8℄ Petrie, K. : "Combining SBDS and

SBDD" Tehnial report APES-86-

2004. Available from http ://www.ds.st-

and.a.uk/apes/apesreports.html"

[9℄ Puget, J.-F. : On the Satisability of Symme-

trialConstraintSatisfationProblems. Proee-

dingsofISMIS'93(1993),350361.

[10℄ Roney-Dougal C.M., Gent, I.P., Kelsey T., Lin-

tonS.: Tratablesymmetrybreakingusingres-

tritedsearhtrees Toappearin proeedingsof

ECAI'04.

[11℄ Roy.A.,Luks,E.:Theomplexityofsymmetry-

breaking formulas, Annals of Mathematis and

ArtiialIntelligene,41 (2004),19-45(withA.

Roy).

[12℄ Seress,A.:PermutationGroupAlgorithmsCam-

brigeUniversityPress,2003.

Références

Documents relatifs

Ces deux coins ne pour- raient pas être des coins d'un petit carré, ils devraient donc être «noyés» dans un des petits carrés, ce qui demande au moins deux pièces de plus, et

Once these two messages have been exchanged for all edges in the tree, agent self contains in its cluster (formed by ψ(self ) and the CF messages received from its neighbors)

il faut écrire une lettre par case et une lettre peut être utilisée pour deux

Les instances de CSP ferm´ees par mjx ´etant r´esolues en temps polynomial par l’´etablis- sement de la 3-consistance forte (voir Section 4), cet article inclut dans la Section 5

Dans ette étude, nous onsidérons les systèmes temps réel à ontraintes dures et un ordonnane-.. ment sera dit faisable si toutes les ontraintes de temps

Nous souhaitons montrer, à travers quelques exemples empruntés à la théorie des applications harmoniques entre variétés, que le théorème de Noether joue égale- ment un rôle

Dans cet article, nous proposons de détecter automati- quement des symétries de variables en calculant une parti- tion de la portée de chaque contrainte pour exhiber les va-

Nous avons utilisé le modèle de base (CSP), dans lequel aucune symmétrie n’est éliminée, le modèle où les symétries de variable sont éliminées en postant des