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�
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
ave
n − 1
ontraintes binaires,n
étant lenombredevariables.
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
,aveI n = {0, 1, 2, . . . , n − 1}
. Parexemple, nous pouvonsindexerlesvariablesd'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'ensembledespermutationsdeI n
.L'imagepar
i
parlapermutationσ
est notéei σ
.Une permu-tation
σ ∈ S n
est entièrement dérite par leveteur[0 σ , 1 σ , . . . , (n − 1) σ ]
.Laompositiondedeuxpermu-tations
σ
etθ
est déniepari (σθ) = (i σ ) θ
.Etant donné
i ∈ I n
et ungroupede permutationsG ⊆ S n
,l'orbitedei
dansG
,notéei G
, estl'ensembledesimages de
i
parlesélémentsdeG
:i G = {i σ |σ ∈ G}
Etant donné
i ∈ I n
et ungroupede permutationsG ⊆ S n
, le stabilisateur dei
dansG
, notéi G
, estl'ensembledesélémentsde
G
quilaissenti
invariant:i G = {σ ∈ G|i σ = i}
2.2 CSP etsymétries
Un CSP
P
aven
variables est un tripletP = (V , D, C)
où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 pouvonssupposerqueD i ⊆ I k
pourkdonnék
.Un assignement est un veteur de valeurs
(a i ) i∈I n
tel que
a i ∈ D i
pour touti ∈ 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
σ
deI n
,ondénitunepermutationdevariablessurlesassignements(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
θ
deI k
,ondénitunepermutationde 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'ilexisteunétiquetage
f
desessommetstelque:
0 ≤ f (i) ≤ m
pourtoutsommeti
,
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étriesduproblèmesontinduites parlesautomorphismesdu
graphe.Ilyaunesymétriedevaleursnontriviale,qui
envoie
v
surm − 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]}
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 êtregrandementré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 puisquev 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
σ
,notonss(σ)
lepluspetiti
telquei σ 6= i
,etnotonst(σ)
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
sik < s(σ)
, ets(σ) σ 6= s(σ)
. ExaminonslaontrainteV V σ
.L'in-jetivité duCSP implique
v i = v i σ
si et seulementsii σ = i
. En partiulier,v k = v k σ
for allk < s(σ)
, etv s(σ) 6= v (s(σ)) σ
.Donunseulélémentdeladisjontionpeutêtrevrai.Ils'agitde:
v 0 = v 0 σ ∧ . . . ∧ v s(σ)−1 = v (s(σ)−1) σ ∧ v s(σ) < v (s(σ)) σ
Comme
k σ = k
pourk < s(σ)
ets(σ) σ = t(σ)
, eipeutêtresimplieren
v s(σ) < v t(σ)
.2
Notons que nous n'avons utilisé qu'une propriété
plusfaiblequel'injetivité.Enefet,pourquelelemme
soitvrai,ilsutque
v s(θ)
etv t(θ)
soientdiérentes.Notons égalementque sideux permutations
σ
etθ
sont telles que
s(σ) = s(θ)
ett(σ) = t(θ)
, alors lesontrainteséliminantessymétries sontidentiques.Il
sutdond'ajouteruneseuleontraintepourhaque
paire
i, j
tellequ'ilexisteunepermutationσ
avei = s(σ)
etj = 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
sembles de représentant
U i
qui sont les orbites dei
dans
G i
:U i = i G i
Pardénition,
U i
estl'ensembledesimagesdei
parlespermutationsde
G
quilaissent0, . . . , (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ésentantsU i
pourle groupe des symétries de variables du CSP, alors
touteslessymétriesdeGpeuventêtreéliminéesparau
plus
n(n − 1)/2
ontraintes binaires. Ces ontraintessontdonné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
tellequei σ = j
etj = t(σ)
. Laréiproqueestvraie:s'il existeunepermutation
σ
tellesquei = s(σ)
ettellej = 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 permutationsG i
laissent0, . . . , i − 1
invariants.DonU 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 quej
appartienneàplusieursU i
.Danseas,dénissons
r(j)
leplusgrandi
diérentdej
telque
j
appartienne àU i
. Sij
n'appartientàauunU i
autreque
U j
,alorsr(j) = j
.Avant d'énoner notre résultat prinipal,prouvons
equi suit.
Lemme 3.Aveles notationsqui préèdent, si
j ∈ U i
eti 6= j
alorsr(j) ∈ U i
etr(j) < j
Preuve. Supposons que
j ∈ U i
eti 6= j
. Par dé-nition de
U i
il existe une permutationσ ∈ G i
telleque
i σ = j
. Posonsk = r(j)
. Par dénition der(j)
,i ≤ k
etj ∈ U k
. Don, il existe une permutationθ ∈ G k
telle quek θ = 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 quer(j) < j
estune 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
variablesV
,alorstouteslessymétriesdevariablespeuventêtreéliminées
aveauplus
n−1
ontraintesbinaires.Cesontraintessont 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. Commer(0) = 0
par dénition, lenombre de ontraintes est au plus
n − 1
. Examinonsune des ontraintes de(3)
c = (v i < v j )
, avej ∈ U i
et
i 6= j
. Nous herhons à prouver quec
est impli-quée parlesontraintes(5). Considérons la séquene
(j, r(j), r(r(j)), r(r(r(j))), . . .)
. Supposons qu'elle nerenontrejamais
i
.Nousavonsj ∈ U i
eti 6= j
.D'aprèsle lemme 3,
r(j) ∈ U i
etr(j) < j
. Commer(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 arU i
est ni. Don ilexiste
k
tel quei = 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 ontraintec
. Nousavons 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
variablesV
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 té aven
ouleurs de façon àequ'auuneligne,olonneoudiagonaleneontienne
deuxfoislamêmeouleur.Ceipeutêtrevuommela
reherhede
n
solutionsdisjointesauproblèmedesn
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, olonneetdiagonale.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
. Laseule 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
etv n
sontsur unemê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
aven
variablesv i
, et desdomainesinlusdans
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 binairesx ij
àP
.Ces variablessontreliéesauxvariables originellespar
lesontraintessuivantes:
∀i ∈ I n , j ∈ I k , (x ij = 1) ≡ (v i = j)
Lavariable
x ij
égale1sietseulementsilavariablev j
égalej.L'ajoutdeesvariablesetdeesontraintesne hange pas lessolutions du CSP. De plus, lessy-
métries de variables de
P
sont équivalentes aux per- mutations des lignes de la matriex ij
, alors que lessymétries de valeursde
P
sontéquivalentes auxper-Soit
X
le veteur de variables obtenu en onaté-nantles lignesdelamatrie
x ij
.Danse veteur,lesvariables
x ij
sonttriées parordre roissantdei
puisde
j
.Considérons une symétrie de valeur
θ
deP
.θ
estunepermutationdesolonnesdelamatrie.Cettesy-
métrieest éliminéeparlaontrainte[1℄:
X X θ
(6)Soit
X i
leveteurdesvariablesdanslalignei
delamatrie.Lasymétrie devaleurs
θ
envoie lesvariablesd'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
.Soita i
lavaleuraetéeà
v i
.Alorsx i(a i ) = 1
etx ij = 0
forj 6= a i
.Demême,x i(j) θ − 1 = 1
si et seulementsij θ − 1 = a i
, 'est-à-direa θ i = j
.Don,X i = (X θ ) i
sietseulementsia i = (a i ) θ
,et
X i ≺ (X θ ) i
siet seulementsia 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 invarianta 0 , a 1 , . . . , a i−1
.Danseas
a i
doitêtreleminimumparmilesvaleurssur 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èslelemme6,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étriesdevaleurs
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
,etsongroupedesymétriesdevaleurs
G 2
,alorslaombinaisondelamé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.
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
sure − a
, oùe
est lenombred'arêtesdugraphe.Lesorbitespourlessymé-
triesdevaleurssontdonlesensembles
{a, e−a}
pour0 ≤ a ≤ e/2
.Dononpeutrestreindrele domainedev 0
engardantlapluspetitevaleurdanshaunedeesorbites.
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.01K 4 × P 2
1440 216781 13.6 30 1863 0.27K 5 × P 2
480 34931511 4454 2 53266 6.5K 6 × P 2
0 1326585 305Table1.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
ellulesdeté(n = 0
modulo4)rem-plitdesnombres
1 . . . n 2
telque(i)lasommededeuxoinsdiagonalementopposé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
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 injetifsaven
variables (ii)laméthode GE-tree peutêtre utiliséeen 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.