• Aucun résultat trouvé

Traitement des CSP partiellement symétriques

N/A
N/A
Protected

Academic year: 2021

Partager "Traitement des CSP partiellement symétriques"

Copied!
11
0
0

Texte intégral

(1)

HAL Id: inria-00085805

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

Submitted on 14 Jul 2006

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.

Traitement des CSP partiellement symétriques

Florent Verrroust, Nicolas Prcovic

To cite this version:

Florent Verrroust, Nicolas Prcovic.

Traitement des CSP partiellement symétriques.

Deuxièmes

Journées Francophones de Programmation par Contraintes (JFPC06), 2006, Nîmes - Ecole des Mines

d’Alès / France. �inria-00085805�

(2)

Traitement des CSP partiellement symétriques

Florent Verroust et Ni olas Pr ovi

ILOG - SophiaAntipolis,LSIS- Université PaulCézanne -Aix-Marseille III

fverroustilog.fr, ni olas.pr ovi lsis.org

Résumé

Denombreux CSP ontiennentunmélangede

on-traintes symétriques et asymétriques. Nous

présen-tons une appro he générale quipermet d'appliquerles

méthodesd'éliminationdesymétries onnuesàlapartie

symétrique d'un CSP puisde her herunesolution au

problème entier en intégrant postérieurement les

on-traintesasymétriques. Nousétudionsaussile as

parti- ulierdesproblèmesd'optimisationoùseulelafon tion

de oûtàminimiserempê helessymétries. Nous

mon-trons expérimentalementquedans e ontexte-lànous

pouvonsa élérerlarésolutionde ertainsproblèmes.

Abstra t

Many CSPs ontain a ombination of symmetri al

andasymmetri al onstraints. Wepresentaglobal

ap-proa hthatallowstoapplyalreadyknownmethodsfor

breakingsymmetriesonthesymmetri alpartof aCSP

andthentosear hforaglobalsolutionbyintegrating

af-terwards theasymmetri al onstraints. Then,we fo us

onoptimizationproblemswhereonlythe ostfun tionis

asymmetri al. Weshowexperimentallythatinthis ase

we anspeedupthesear hofsomeproblems.

1 Introdu tion

Letraitementdessymétriesdanslesproblèmesde

sat-isfa tion de ontraintes (CSP) est un sujet de plus

en plus étudié depuis une bonne dizaine d'années.

Lorsqu'un CSP ontient de nombreuses symétries,

éviter d'explorer les larges portions de l'espa e de

re her hequi ontiennentdesinstan iationspartielles

équivalentespermet d'obtenirdesgains detempstrès

importants. Le formalismeCSP autorisequ'une

on-trainte soit dénie omme une relation quel onque

entre plusieurs variables, plus pré isément omme

n'importe quel sous ensemble du produit artésien

de leurs domaines. En onséquen e, très peu de

ontraintes sont sus eptibles a priori d'asseoir des

symétries. Cependant, les problèmes pratiques

on-tenant des symétries sont loin d'être négligeables

même s'ils sont tout de même minoritaires. En fait,

il s'avère qu'un nombre important de CSP

ontien-nent un mélange de ontraintes symétriques

( on-traintes d'égalité, de diéren e, somme de plusieurs

variables égale à une onstante, et ) et de

on-traintesasymétriques. CesCSPsontdon globalement

asymétriquesetnepeuventbéné ierdire tementdes

nombreuseste hniquesdetraitementdesymétries

pro-poséesjusqu'àprésent. L'obje tif prin ipalde et

ar-ti leest deproposeruns hémagénéraldetraitement

de es CSP asymétriques ontenant des problèmes

partiels symétriques et d'étendre ainsi l'appli ation

deste hniques existantes detraitementde symétries.

Cette idée de séparer le traitement des ontraintes

symétriquesde elui des ontraintes asymétriquesest

apparueré emmentdans[4℄etdans[3℄.

En se tion 2, nous illustrons l'intérêt de ette

ap-pro heà traversdeux exemples de CSP simples. En

se tion 3, nous rappelons plusieurs notions sur les

groupesdesymétriesquinoussontutilespour

présen-ter formellement notre s héma général de résolution

en se tion 4. Puis, nous traitons en se tion 5 du

as plus spé ique d'un ertain type de problèmes

d'optimisationoùnotreméthodeestsus eptibled'être

parti ulièrement e a e. Nous l'expérimentons sur

deuxtypesdeproblèmesense tion6.

2 Exemples introdu tifs

Nousallons ommen er pardonnerune idéegénérale

de notre s héma de résolution à travers deux

exem-ples simples. Dans le premier, nous onsidérons un

CSP P à 3 variables

x

,

y

et

z

, dénies ha une sur

le même domaine{1, 2, 3}. Le CSP ne ontientque

deux ontraintes :

xyz

= 6

et

x

+ 2y + 3z = 10

. Ce

problèmen'a qu'uneseulesolution :

x

= 3

,

y

= 2

et

z

= 1

. Ce problèmene ontientau unesymétrie. La

(3)

tailledel'espa edere her heàexplorerestde

3

3

= 27

ombinaisonsdevaleurs.

Considérons maintenant le problème P', qui est le

mêmeproblème queP, maisqui negarde quela

pre-mière ontrainte :

xyz

= 6

. Ce problème ontient

touteslessymétriesdevariablepossibles,quifontqu'à

partird'une solutionquel onque, on peut en obtenir

uneautreenpermutantdesvariables. Enl'o urren e,

l'ensemble des6 solutionsde P' est

x

= 1

,

y

= 2

et

z

= 3

ainsiquen'importelaquelledesespermutations

devariables(é hangeentre

x

et

y

,é hangeentre

x

et

z

ou ompositionsde esdeuxé hanges). Uneméthode

dere her hepermettantl'éliminationdesymétriesest

apable de déterminer une solution très rapidement.

Par exemple, les te hniquesajoutant des ontraintes

brisant les symétries avant la résolution (par

exem-ple [7℄)permettraient de poser les ontraintes

x < y

et

y < z

qui briseraient les symétries de façon à e

qu'onn'obtiennequ'uneseulesolution,dite anonique

:

x

= 1

,

y

= 2

et

z

= 3

. I i,à ausedel'ajoutde

on-traintes brisantles symétries, une simple appli ation

dela ohéren ed'ar permettraitd'ailleursderéduire

les domaines des variables à la valeur de la solution

nale(

x < y

permetd'éliminer1dudomainede

y

et

3dudomainede

x

,puis

y < z

permet d'éliminer1et

2dudomainede

z

,et ).

Nous savons que l'ensemble des solutionsde P est

in lus dans eluide P'. Pourobtenir une solutionde

P, il sut d'énumérer les solutions de P' et de

véri-ersiellesrespe tentla ontrainte

x

+ 2y + 3z = 10

.

Enumérerles solutionsde P', 'est essayertoutes les

permutationsdevariablesdelasolution anonique. Le

gainentemps quenousattendonsest basésur lefait

que l'espa e de re her he de P n'est plus l'ensemble

des ombinaisonsdevaleursdesvariables(i i,detaille

3

3

=

27) mais l'ensembledes solutions de P' (i i, de

taille 3!

=

6), qui est bien plus petit. Pour que

notre méthode soit e a e, il faut que le temps de

al uldessolutions anoniquesdeP'ajoutéautemps

d'énumération de leurs symétriques soit plus ourt

qu'unerésolution lassiquedeP.

Notredeuxièmeexempleestune versionsimpliée

1

duproblèmede Vellino[9℄. L'obje tifde e problème

est deremplir

k

onteneursde diérentstypes (bleu,

rouge ou vert) ave une liste de omposants de

dif-férents types (verre, plastique, fer, bois ou uivre).

Chaque onteneur peut a ueillir

c

omposants, quel

que soit le type du onteneur ou du omposant. Le

pla ement des omposants dans les onteneurs doit

respe ter un ertain nombre de ontraintes : tous

les onteneursn'a eptentpastouslestypesde

om-1

Dansleproblèmeoriginel, haquetypede onteneuraune

apa itéquiluiestpropreetlavaleurde

k

n'estpasdonnée,il fautlaminimiser.

posants ou n'en a eptent qu'un nombre limité,

er-tains omposantsne peuvent pasêtre simultanément

présentsdans un onteneur, et . On peut modéliser

leproblèmesouslaformed'unCSP ommesuit. Les

variablessont,d'unepart,

t

1

,...

t

k

,dedomaine{

rouge

,

vert

,

bleu

},où

t

i

représentela ouleurdu

i

e

onteneur

et,d'autrepart,

c

1,1

, ...,

c

1,c

,

c

2,1

,...,

c

k,c

,

k

× c

vari-ables de domaine {

rien

,

verre

,

plastique

,

f er

,

bois

,

cuivre

}, où

c

i,j

représente le

j

e

omposant présent

dansle

i

e

onteneur. Apartles ontraintesexpli ites

mentionnées plus haut,nous avonsles ontraintesde

ardinalité suivantes : pour haque type

x

de

om-posants, le nombre total de omposants requis doit

être égalà

r

x

:

|

{

c

i,j

=

x:

1 ≤ i ≤ k, 1 ≤ j ≤ c

}

| =

r

x

.

Si nous ne onsidérons que es ontraintes de

ar-dinalité, nous sommes fa e à un problème ontenant

beau oup de symétries

2

puisqu'il n'y a plus de

on-traintes entre les types de onteneurset les typesde

omposants. Nous avons des symétries de valeurs

: toute valeur d'une variable

t

i

peut être hangée

parn'importequelle autre(la ouleurdes onteneurs

est indiérente). Nous avons des symétries de

vari-ables : les variables

c

i,j

sont permutables entre elles

(l'empla ementd'un omposantestindiérent). Nous

pouvons don résoudre très e a ement e problème

partielsymétriqueenn'engénérantqu'uneseule

solu-tion anonique:

on utilise une seule ouleur pour tous les

on-teneurs.

onimposeunordretotalsurlesvariables

c

i,j

etles typesde omposants(

verre

<

plastique

<

f er

<

bois

<

cuivre

<

rien

). Onae tealors les

vari-ables

c

i,j

ainsi : on ae te les

r

verre

premières

variables

c

i,j

à

verre

, les

r

plastique

suivantes à

plastique

, et , et, une fois tous les omposants

pla és,onae telesvariablesrestantesà

rien

.

Nous savons maintenant que si une solution à notre

problème omplet existe, e seraune permutationde

valeurs des variables

t

i

et une permutation des

vari-ables

c

i,j

. Nouspouvonsdon énumérer es

permuta-tionsenvériantles ontraintesde ompatibilités

en-tretypesde onteneursettypesde omposants.Notre

espa e de re her he est alors d'emblée réduit ar le

nombre depermutationsde la solution anonique du

problèmepartielestbieninférieuraunombrede

om-binaisonsdevaleursàae terauxvariables(

6

k.c

×3

k

).

Avantdeprésenterles hémaderésolutiondansun

adre général, nous allons rappeler quelques notions

utiles sur les symétries, les groupes de symétries et

leurexploitation.

2

Ilyenadéjàun ertainnombresiongardetoutesles

(4)

3 Rappel de dénitions

Les dénitions et notations que nous rappelons i i

sontusuellesetpeuventparexempleseretrouverdans

[8℄. Au sens mathématique, un groupe est un

en-semble G stru turé par une opération binaire

por-tant sur les éléments de et ensemble, qui respe te

les propriétésde fermeture(lerésultat del'opération

sur deux éléments de G est un élément de G),

d'asso iativité,d'élémentneutre(l'élémentneutreest

noté

e

)etd'inversion(toutélémentdeGauninverse).

Hestunsous-groupedeG, equ'onnoteH

G,siH

estunsous-ensembledeGmunidelamêmeopération

binaire

etqueHformelui-mêmeungroupe.

Unepermutationestunebije tiond'unensemblesur

lui-même. Nousreprésentonsunepermutationparun

ensemblede y lesdelaforme(

ω

1

ω

2

...

ω

k

)qui signi-eque

∀ω

j

,

ω

j+1

estl'imagede

ω

j

etque

ω

1

estl'image

de

ω

k

. Ex: étantdonnéelapermutation(124)(35),

lesimagesrespe tivesde1,2,3,4et 5sont2,4,5,1

et 3. Nouspouvonsappliquerdespermutationsàdes

ensemblesoudessuitesd'éléments. Ex: étantdonnée

la permutation (1 2 4)(3 5), l'image du ouple (1,5)

est (2,3),l'imagede(1,2,3,4,5)est(2,4,5,1,3),l'image

del'ensemble{2,3,4}est{1,4,5}.

Informellement, une symétrie est une permutation

desélémentsd'unensemble

quipréservelesrelations

portantsurlesélémentsde etensemble. L'ensemble

des symétries de

forment ungroupeG,l'opération

binaire

étantla omposition (desymétries). Ondit

que G agit sur

. Pour éviter ertainesambiguïtés,

on appelle points les éléments de

et on réserve

habituellement le terme élément aux éléments de G.

Si

σ

G, et

ω

∈ Ω

, on note (de façon standard)

ω

σ

l'imagedupoint

ω

parla symétrie

σ

. Plutt que

d'é rire

σ

1

◦ σ

2

(ave

σ

2

devants'appliqueravant

σ

1

), onabrègepar

σ

1

σ

2

, ar

estlaseuleopération

possi-bleentredeuxsymétries.

Dénition 1 Mi rostru tured'unCSP

La mi rostru ture (

, A) d'un CSP est un

(hy-per)graphedont haquesommetde

orrespondàune

ae tation d'une de ses variables ave une valeur de

son domaine et dont haque (hyper)arête de A

orre-spond à un

k

-uplet de valeurs autorisé par une

on-trainte d'arité

k

.

Dénition 2 Symétriede CSP

Soit(

,A)lami rostru tured'unCSP.Unesymétrie

de CSP est une permutationde

qui, appliqué à A,

laisse Ain hangé.

Lessymétriesquenoustraitonssontàprendredans

le sens le plus général possible. Nous ne nous

re-streignons ni aux symétries de variables ( onserv

a-tiondesvaleursd'uneinstan iationmaispasdes

vari-ables) ni aux symétries de valeurs ( onservation des

variables d'une instan iation mais pas des valeurs) :

appliquéeàuneinstan iation(partielleou omplète),

l'ensemble des valeurset des variables peut hanger.

Cette dénition orrespond à la symétrie syntaxique

de [1℄ ou symétrie de ontraintes de [2℄. Le groupe

G des symétries du CSP agit sur

en préservant la

relationA.

Lagure1présente notammentune grille

4 × 4

de

16 points. Chaque point orrespond à l'ae tation

d'unevaleuràunevariablemaisnousn'avonspas

be-soindesavoirlesquelspourappliquerlesméthodesque

nous allonsprésenter. Ce pourrait être une grille du

problème des 4 dames à pla er sur un é hiquier (et

on aurait les points 1, 2, 3, 4, 5, et orrespondant

auxae tationsde variables

x

1

= 1

,

x

1

= 2

,

x

1

= 3

,

x

1

= 4

,

x

2

= 1

, et )ou àn'importe quel autre CSP

dont lasomme des tailles des domaines est 16 (CSP

ave uniquementdeuxvariablesdedomainesdetaille

4ou huit variables booléennes, et ) et qui possèdent

lesmêmessymétries.

Dénition3 Orbite

L'orbite

ω

G

du point

ω

d'un ensemble

sur lequel

agit un groupe G est

ω

G

=

{

ω

σ

:

σ

G},

'est-à-direl'ensemble desimagesde

ω

par appli ation d'une

permutationde G.Onpeutaussi généraliserla notion

d'orbite à un ensemble

∆ ⊆ Ω

:

G

= {{ω

σ

: ω ∈

∆} : σ ∈ G}

.

Ex : dans l'exemplede lagure1,

1

G

=

{1, 4,13, 16},

2

G

=

{2, 3,5, 8, 9,12, 14, 15}, {1, 2}

G

=

{{1, 2}, {1,5}, {3,4},{4, 8},{9, 13},{13,14},{12,16}, {15,16}}.

Dans le adre de et arti le, nous pourrons avoir

aaire à l'orbite d'un sommet du graphe de la

mi- rostru ture( 'est-à-dired'uneae tationdevariable

deCSP) ouàl'orbited'uneinstan iationpartielle ou

d'unesolutiondeCSP,quiimpliquentplusieurs

ae -tationsdevariables. Si I={

ω

1

,

ω

2

, ...,

ω

i

}estune

in-stan iationpartielleou omplètedesvariablesduCSP

alorsl'ensembledesinstan iationssymétriquesI

G

est {I

σ

:

σ

G}, 'est-à-dire{{

ω

σ

1

,

ω

σ

2

,...,

ω

σ

i

}:

σ

G}. Enparti ulier,siIestunesolutionduCSPalorsI

G

ne

ontientquedessolutions(symétriques),tandisquesi

I n'est pas une solution alors I

G

ne ontient au une

solution.

Dénition4 Générateursde groupe

Les générateurs d'un groupe G onstituent un

sous-ensemble H des éléments de G qui permettent, en

se omposant un ertain nombre de fois entre eux,

d'obtenirtouslesélémentsdeG.OnlenoteG=<H>.

(5)

Ex : le groupe des 8 symétries d'une grille (voir

gure1)peutêtregénéréàpartirde ompositionsdes

deuxgénérateurssuivants: laréexionverti ale

γ

1

et

laréexion diagonale

γ

2

. L'ensembledes 8symétries

peuts'exprimerainsi:

e

(l'identité),

γ

1

,

γ

2

,

γ

2

γ

1

,

γ

1

γ

2

,

γ

2

γ

1

γ

2

,

γ

1

γ

2

γ

1

et

γ

1

γ

2

γ

1

γ

2

.

5

1

2

3

4

6

7

8

9

10

11

12

13

14

15

16

1

4

2

5

8

14

6

7

13

16

10

3

9

11

12

15

γ1

γ2

γ1

γ1

γ2

γ1

γ1

γ2

γ1

γ2

γ2

γ1

γ2

γ1

Figure1: Unegrille

4 × 4

etsongraphed'orbites.

Ω =

{1,2,...,16}. G=<{

γ

1

,

γ

2

}>ave

γ

1

=

{(14)(23)(5

8)(67)(912)(10 11)(1316)(14 15)} et

γ

2

=

{(25)(3

9)(413)(710)(814)(1215)}.

Unepropriétéimportantedel'ensembledes

généra-teurs est que son ardinal est borné par une

fon -tionpseudolinéaire de

|Ω|

. Ce i est àrappro herdu

ardinalmaximal d'un groupe, qui est

|Ω|!

. Si nous

obtenonslasolutiond'un CSPet quenous disposons

expli itement du groupe de symétries du CSP, nous

pouvonsobtenir ha unedessolutionssymétriquesen

lui appliquant une fois haque symétrie du groupe.

Cependant, mémoriser ha unede essymétriespeut

ex éder les apa ités d'une ma hine si le groupe est

tropgrand. Par ontre,lataillemodéréedel'ensemble

des générateurs d'un groupe nous permet de

mé-moriser le groupe en ompréhension et de générer

toutes les solutions équivalentes en appliquant de

touteslesmanièrespossiblesunesu essionde

généra-teursàlasolutiontrouvée.

Dénition5 Stabilisateurparpoint

Le stabilisateur parpointG

(∆)

de

∆ ⊆ Ω

estle

sous-groupeG

(∆)

= {σ ∈ G : ∀ω ∈ ∆, ω

σ

= ω}

, 'est-à-dire

l'ensemble des symétries de G qui laissent xes tous

lespointsde

.

Ex: dansl'exempledelagure1,G=<{

γ

1

,

γ

2

}>, G

(1)

=

<{

γ

2

}>,G

(1,2)

={

e

}.

Il est possible de représenter en ompréhension

un groupe de permutations G grâ e à une base

B=(

β

1

, ..., β

k

)

,quiestunesuitedepointsde

. Best

unebasepourGsil'uniquestabilisateurparpointde

Best l'identité, i.e : G

(B)

=

{

e

}

. La base Bdénit alorsla haînedestabilisateursparpointsuivante :

G=G

[1]

≥ G

[2]

≥ ... ≥ G

[k]

≥ G

[k+1]

= {e}

où G

[j]

= G

1

,...,β

j−1

)

. Cette base permet de

dénirlesélémentsdeGqui générentsu essivement

G

[1]

,...,G

[k+1]

. Grâ e par exemple à l'algorithme de

S hreier-Sims [8℄, on peut onstruire un ensemble de

générateurs {

γ

(j)

i

:

1 ≤ j ≤ k

,

1 ≤ i ≤ t

j

}deG,

ap-peléensemblede générateursforts,detellefaçonque:

G

1

,...,β

h−1

)

=<{

γ

(j)

i

:

h

≤ j ≤ k

,

1 ≤ i ≤ t

j

}>

En d'autres termes, les générateurs

γ

(j)

1

, ..., γ

(j)

t

j

lais-sentxesles points

β

1

,...

β

h−1

mais paslepoint

β

h

.

Un outiltelqueNauty[5℄permetd'obtenirunebase,

une haîne de stabilisateurs et ses générateurs forts

à partir d'un graphe. Nous pouvons ainsi obtenir

automatiquement une représentation ompa te du

groupedesymétriesd'unemi rostru turedeCSP.

Dénition6 Graphed'orbites

Un graphe d'orbites est un graphe orienté dont les

sommets sont les points de

. Quels que soient les

sommets

i

et

j

,ilexiste unar (

i

,

j

),etilestétiqueté

γ

,ssi

j

= i

γ

et

γ

estungénérateurde G.

Grâ eàungraphed'orbites, ertainesquestionssur

lesgroupesdepermutationspeuventserameneràune

question sur les graphes. Par exemple, les sommets

d'une omposante onnexed'ungraphed'orbites

on-stituentuneorbite( fgure1).

4 S héma général de résolution

ConsidéronsunCSP,appeléP, ontenant

n

variables,

dontlesdomainessontdis retsetdontles ontraintes

sontd'aritéquel onque. On partitionnel'ensemble C

des ontraintesendeuxensemblesC

sym

etC

reste

.

Ap-pelons P

sym

le CSP qui orrespond au problème P

auquelonenlèveles ontraintesdeC

reste

pourne

on-serverque ellesdeC

sym

.

Pourquenotres hémaderésolutionaitunintérêt,il

faut hoisirC

sym

detellemanièrequeP

sym

ontienne

dessymétries. Enpratique,laplupartdes ontraintes

ontleursémantiqueetilestfa iledesavoirsielles

in-duisentisolémentdessymétries. Parailleurs,dans[6℄,

des méthodes générales sont proposées pour agréger

es ontraintes et en avoir une représentation sous

formedegraphedontonpeutdéterminerlessymétries.

Ilyadon beau oupde aspratiques où ette

bipar-tition de ontraintes est fa ile à déterminer, voire à

automatiser.

Lare her hed'unesolutiondeP sefaitd'unepart

en her hantdessolutions anoniquesdeP

sym

,d'autre

partenexplorantl'orbitede haquesolution anonique

deP

sym

pourytrouveruneinstan iationquirespe te

les ontraintesdeC

reste

.

Pour résoudre P

sym

, nous pouvons utiliser

(6)

onnue. Il nous faut alors modier l'algorithme

de façon à e que dès qu'une solution anonique I

de P

sym

est trouvée, on explore l'orbite de I pour

trouverune instan iation qui respe te les ontraintes

de C

reste

. S'il y en a une, on s'arrête ar 'est une

solution de P. Sinon, on ontinue la re her he de

nouvelles solutions anoniques de P

sym

. Ce s héma

de résolution a été ré emment proposé dans [3℄ mais

il n'y est dé rit au un moyen on ret et e a e de

par ourir l'orbite. C'est e quenous allonsprésenter

maintenant. On peut envisager une exploration de

l'orbitedeIquisoitee tuéedemanièresystématique

ou bien de manière in omplète(en prenant le risque

demanquerunesolution).

4.1 Re her he lo aledans uneorbite

Lorsquel'orbited'unesolution anoniquedeP

sym

est

grande, on peut envisager de n'en explorer qu'une

partie grâ e à une méthode de réparation lo ale.

Or, nous pouvons très fa ilement adapter n'importe

quelleméthode(Min- oni ts,re her hetabou,re uit

simulé, et )en onsidérantquelevoisind'une

instan- iation omplètenerésultepasdelamodi ationdela

valeurd'uneseulevariable maisde l'appli ationd'un

générateur. Ainsi, le voisinage d'une instan iation

omplète

I

est{

I

γ

:

γ

H}siG=<H>. L'évaluation

del'instan iation omplètesefaiten omptantle

nom-brede ontraintes violéesdansC

reste

.

On peut guider la re her he grâ e à une

heuris-tique de hoix de générateurs. La première

heuris-tiquevenantnaturellementàl'espritest ellequi

séle -tionneenpremierlegénérateurquiamélioreleplusle

oût de la solution. Une deuxième heuristique plus

évoluée hoisitparmilesgénérateursaméliorantla

so-lution elui qui stabilise le plus de points et, en as

d'ex-aequo, eluiaméliorant le plusla solution. Une

telleheuristiqueaméliorelasolutionenapportantune

modi ationlaplus lo alepossible( elle portant sur

les points non xés), se rappro hant de e que fait

une re her he lo ale traditionnellement. Lapremière

heuristiqueest ellequiamélioreleplusrapidementle

oûtmaiselleestlesus eptibled'atteindrerapidement

unminimumlo al. Par ontre,lase ondeheuristisque

avan e plus prudemment en ee tuant des

modi a-tions les plus indépendantes les unes des autres an

de ontinuerd'améliorerlasolutionlepluslongtemps

possible.

4.2 Explorationsystématique d'uneorbite

Si maintenantnous voulonsénumérertoutes les

solu-tions symétriquesd'une orbite de solution anonique

de P

sym

, il faut être apable de retrouver toutes les

symétries dugroupeG dela mi rostru turede P

sym

àpartirdesonensembledegénérateurs.

Une méthode ouramment utilisée pour énumérer

toutes les permutations de G est d'ee tuer une

re her he arbores ente où à haque n÷ud de l'arbre

se trouve une permutation. On obtient tous les ls

d'unn÷udenappliquant ha undesgénérateursàla

permutation. On mémorise toutes les permutations

au fur et àmesure qu'on les génèretout en vériant

ha une poursavoirsi on l'avait déjà dé ouverte. Si

'est le as, on abandonnela bran he (onba ktra ke

si 'estunere her heenprofondeurd'abord). Legros

in onvénientde etteméthodeestla omplexitéen

mé-moire, qui est elle del'ordre(lenombre d'éléments)

du groupe, dans le pire des as égal à

|Ω|!

. Il est

né essairedemémorisertouteslespermutationspour

la raison suivante. Chaque permutation de G peut

s'exprimer omme étant la omposée de générateurs

deG souslaforme d'unmot

a

1

a

2

...a

m

, où haque

a

i

estsoitungénérateur,soitsoninverse. Or,unemême

permutationpeuts'exprimersouslaformedeplusieurs

motsdiérents. Dansl'exempledelagure1,le

demi-tour peut se représenter par les mots

γ

1

γ

2

γ

1

γ

2

ou

γ

2

γ

1

γ

2

γ

1

. Ilest fa ileet peu oûteuxen mémoirede

générertouslesmotsd'une ertainelongueur. Anotre

onnaissan e,iln'existepasd'autreméthodegénérale

permettantd'éviter degénérerplusieursfoislamême

permutation (sous la forme de mots tous diérents)

que elle qui al ule la permutation orrespondant à

haquemotet maintientlalistedetoutes les

permu-tationsdéjàgénérées.

Comme l'orbite d'une solution est potentiellement

tropgrande pourêtre mémorisée,il nous faut quand

même nous résigner à énumérer des mots, même si

ça implique de générer plusieurs représentants d'une

même symétrie. Cependant, notre but n'est pas de

générertouteslespermutationsd'unesolution

anon-iquedeP

sym

maisuniquementunepermutation dont

l'imageestunesolutiondeP(ie,quirespe teles

on-traintes de

C

reste

). Il nous faut en fait trouver un

moyendegénérerlemoinspossibledepermutations.

Arbrede permutations

Considérons un groupede permutations G, une base

(

β

1

, ..., β

k

)

de G et ses générateurs forts

Γ

={

γ

(j)

i

:

1 ≤ j ≤ k

,

1 ≤ i ≤ t

j

}, où le groupe induit

par

i

1

, ..., γ

t

i

i

, ..., γ

k

1

, ..., γ

t

k

k

}

est

G

[i]

= G

1

,...,β

i−1

)

, le stabilisateur de

1

, ..., β

i−1

)

. Toute permutation

va bouger un ertain nombre de points et en laisser

ertains xes. Grâ e à l'emboîtement des

stabilisa-teurs déterminé par la base ainsi que du

partition-nement de ses générateurs forts, nous pouvons

tou-jours dé omposer une permutation en plusieurs

(7)

mutationsnebougeantqu'unepartiedespoints. Plus

pré isément, toute permutation peut s'exprimersous

laforme

σ

1

σ

2

...σ

k

,où haque

σ

i

est unepermutation

( omposée de plusieurs générateurs) qui bouge

β

i

et

éventuellementd'autrespointsmaisquilaissexesles

points

β

j

,

∀j < i

. Les permutations

σ

i

sont elles

du stabilisateur G

1

,...β

i−1

)

qui bougent

β

i

. Toute

permutation

σ

i

peut don s'exprimer sous la forme

de ompositions de générateurs de l'ensemble {

γ

(j)

h

:

i

≤ j ≤ k

,

1 ≤ h ≤ t

j

}. Enumérerl'orbited'une

solu-tion anonique en lui appliquanttoutes les

permuta-tionsdeGvaalors onsisteràee tuerunere her he

arbores ente en profondeur d'abord. On part de la

solution anonique et on lui applique toutes les

per-mutationsdelaforme

σ

1

(y omprisl'identité),puisà

ha uned'entre ellesonapplique toutesles

permuta-tionsdelaforme

σ

2

, et , jusqu'à

σ

k

. L'ensemble des feuillesdel'arbredere her hereprésentel'orbitedela

solution anonique. Ilnous restemaintenant à

expli-quer ommentdéterminertoutes lespermutations de

laforme

σ

i

.

Considéronslegraphed'orbitesdeG.Tout hemin

dans e graphe ommençant par

β

i

est étiqueté par

une suite de générateurs qui forment un mot qui,

d'unepart, orrespond àune permutation qui bouge

β

i

, d'autrepart, ommen eparungénérateur

appar-tenant à {

γ

(i)

h

:

1 ≤ h ≤ t

i

}. L'ensemble de es

hemins orrespond don aux mots représentant les

permutationsquibougent

β

i

. Simaintenantonretire

du graphe d'orbites tous les ar s dont l'étiquette se

retrouvesur unar dontune extrêmité faitpartie de

l'ensemble{

β

1

,

β

2

, ...

β

i−1

},l'ensemble des hemins

ommençant par

β

i

qui restent sont eux

orrespon-dantauxpermutationsqui laissentxeslespointsde

{

β

1

,

β

2

,...

β

i−1

}. Ilsreprésententlesmotsdelaforme

σ

i

quenous her hions.

Lagure2montre l'arbrede re her hedans le as

oùl'ensemble depoints{1,2,14}est unensemblede

pointsdonton her hel'orbite.

Choixde labase

L'intérêtd'avoirunensembledegénérateursforts

on-struità partird'une base est quenous ne xons pas

touslespointsà haquefoisquenousdes endonsd'un

niveau dans l'arbre de re her he. Or, un point

or-respond àl'ae tation d'une variable. Nous sommes

don sûrsque ettevariablene hangeraplusdevaleur

dans le sous-arbre de re her he où son point a été

xé. Remarquons qu'à haque niveau de l'arbre de

re her he, le fait de xer un point entraîne souvent

la xation d'autres points. Sur le graphe d'orbites

de

G

(1)

de la gure2, onpeut onstater quexer le

point1aaussixélespoints6,11et16. La

onnais-{1, 2, 14}

{1, 2, 14}

{4, 3, 15}

{16, 12, 9}

e

{16, 15, 3}

{16, 12, 9}

{13, 9, 12}

{4, 3, 15}

{1, 5, 8}

{1, 2, 14}

e

e

e

e

1

4

2

5

8

14

6

7

13

10

3

9

16

11

12

15

{4, 8, 5}

{4, 8, 5} {13, 14, 2}

1

4

2

5

8

14

6

7

13

16

10

3

9

11

12

15

γ1

γ2

γ1

γ1

γ2

γ1

γ1

γ2

γ1

γ2

γ2

γ1

γ2

γ1

γ2

γ2

γ2

γ2

γ2

γ2

γ1

γ2γ1

γ1γ2γ1

γ2

γ2

γ2

γ2

Figure 2: A droite, l'arbre de re her he générant

l'orbite de {1, 2, 14}. A gau he, deux graphes

d'orbites. Celuiduhautestlegraphed'orbitesdeGet

permet degénérerles4débutsdepermutations dela

forme

σ

1

dupremierniveaudel'arbre. Celuidubasest legraphed'orbitesde

G

(1)

etpermetdegénérerlesns

de permutations de laforme

σ

2

dudeuxième niveau.

Lafeuille{4,8,5}permetdedéterminerqu'enlui

ap-pliquantla permutation

γ

2

γ

1

e

= γ

2

γ

1

on retrouvela ra inedel'arbre{1,2,14}.

san edel'ensembledesvariablesdontonsait qu'elles

ne hangeront plus de valeur nous permet de tester

les ontraintes de

C

reste

(ou d'appliquer des

mé an-ismes de ltrage de domaines) et de ba ktra keren

asd'in onsistan esansavoiràexplorerlesous-arbre

de re her he. Ba ktra keren profondeur

i

nous

per-metdenepasexaminerlesous-arbre ontenanttoutes

lespermutationsde laforme

σ

i+1

...σ

k

permettantde

ompléterlapermutation

σ

1

...σ

i

àlaquellenousétions

arrivés. Lataille de labaseest égaleàlaprofondeur

maximale de l'arbre, 'est-à-direau nombre d'étapes

où on peut tester ertaines ontraintes avant qu'une

permutation de la forme

σ

1

σ

2

...

soit omplète. En

onséquen e, il faut faire en sorte de hoisir la base

qui ontientleplusdepoints, aronaplussouventla

possibilitéd'éliminerdessous-arbres orrespondantà

des omplétionsdepermutations.

Filtrage

Parailleurs,l'examend'ungraphed'orbitespermetde

onnaître l'ensemble des valeursae tables à haque

variable, 'est-à-dire son domaine de valeurs

possi-bles. L'union des orbites des points d'une solution

représente les points qui peuvent apparaîtredans les

solutions symétriques. Certains points ne font

par-tie d'au une de es orbites et onpeut don les

élim-iner des domaines des variables. Ex : si l'ensemble

de points {1, 2, 14} (gure 2) est une solution d'un

CSP alors les points 6, 7, 10 et 11 ne sont pas

at-teignables parune permutation et peuvent don être

(8)

se ompléterà haquefoisqu'onprogressedansla

pro-fondeur de l'arbre de re her he. En eet, le graphe

d'orbitesperddesar s(puisquedespointssontxés)

etdenouveauxpointsdeviennentinatteignables. Ex:

aun÷uddeprofondeur1del'arbredere her hedela

gure2 ontenantl'ensembledepoints{1,2,14},nous

pouvons en oreéliminer lespoints4, 13, 3,9, 12, 15

et 16quisontdevenusinatteignablesvialespoints1,

2ou14. Evidemment,l'éliminationd'unevaleurdans

un domaine par e moyen peut permettre d'éliminer

d'autres valeurs grâ e aux ontraintes de

C

reste

par

appli ation des te hniques lassiques de propagation

( onsistan e d'ar , et ). De façon omplémentaire,

l'élimination d'une valeur par ltrage de ontraintes

de

C

reste

peutéliminerdespointsdugraphed'orbites

et don xer d'autres points. Ex : si on onsidère

le n÷ud de l'exemple pré edent, éliminer par

propa-gation de ontraintes le point 5 du graphe d'orbites

(du deuxième niveau) xe le point 2. On ne peut

don plus appliquer de permutation à {1, 2, 14}, il

devientinutilededévelopperlesous-arbreàpartirde

e n÷ud. L'intera tionentre leltragedes domaines

parexamendugraphed'orbitesetparlemaintiende

formes de ohéren es lo ales est omplexe à erner.

Son étudedépasse le adrede et arti lemais

mérit-eraqu'ons'yatta hesionveutrendrelepluse a e

possiblel'exploration d'uneorbite desolution

anon-iquedeP

sym

.

4.3 Complexitédelare her hedans uneorbite

Le gain detemps quenous pouvons espérer est basé

surlefaitquelatailledel'espa edere her hedePest

supérieureouégaleàlasommedestaillesdetoutesles

orbitesdesolutions anoniquesdeP

sym

. En eet, es

orbites ontiennent l'ensemble des solutions

( anon-iques ounon)de P

sym

, quiest potentiellement

beau- ouppluspetitquel'espa edere her hedeP(quiest

l'ensembledes ombinaisonsdevaleursduproblème).

Iln'estpaspossibled'évaluerdansun adregénéral

le rapport de taille entre l'espa e de re her he de P

et la taille d'une orbite d'une solution anonique de

P

sym

. Maisnouspouvonslefairepourdes as

parti -uliers. Nousallonslefairedansle asoùnousn'avons

aaire qu'à des symétries de variables. Dans e as,

les solutionssymétriques de l'orbite ontiendront les

mêmesvaleursmaisdistribuéesdiéremmentdansles

variables.

Un CSP P à

n

variables de domainesde taille

d

a

unespa edere her hede

d

n

ombinaisonsdevaleurs.

Cal ulons maintenant la taille maximale de l'orbite

d'une solution anonique de P

sym

. Dans le pire des

as en terme de taille d'orbite, toute permutation

de variables est une symétrie du groupe. Il y a

m

valeurs diérentes dans la solution, ave

m

≤ d

et

d

d

n

T(

n

,

m

= d

) 2

2

n

O(

2

n

n

)

3

3

n

O(

3

n

n

)

n

n

n

O(

n

(2π)

n

2

n

n

)

Table 1: Comparaison entre taille de l'espa e de

re her hed'unCSPettailledel'orbited'unesolution

dansle asdesymétriesdevariables. Parexemple,la

ligneoù

d

= 3

montre que sila omplexité du al ul

dessolutions anoniquesde

P

sym

estinférieurà

O(3

n

)

et que le nombre de es solutions anoniques est

in-férieur à

n

alorsla omplexité de résolutionde P est

réduitegrâ eànotreméthode.

m

≤ n

. Nommons

v

i

le nombre d'o urren esde la

i

e

valeur dans une solution. La taille de l'orbite est

T(

n

,

m

)=

n!

Q

1≤i≤m

v

i

!

(n! estle nombrede

permuta-tionsdenélémentsqu'ilfautdiviserpar haque

v

i

!

,le

nombre de permutations é hangeant inutilement des

valeurs identiques). Comme nous avons la relation

P

1≤i≤m

v

i

= n

, on minimise le produit

Q

1≤i≤n

v

i

!

quand les

v

i

ontlesvaleurslespluspro hespossibles

les unes des autres. Dans le pire des as, toutes les

valeurs

v

i

sontégalesà

n

m

. Nousavonsdon T(

n

,

m

)

((

n

n!

m

)!)

m

. En approximantlesfa toriellesgrâ e àla

formuledeStirling

n! =

2πn

n+

1

2

e

−n

(1+ǫ(n))

ǫ(n)

tend vers0quand n est grand, nous arrivonsàT(

n

,

m

)

≤ (

2π)

1−m

n

(

n

m

)

m

m

n

1

(1+ǫ(n)

m−1

)

. Nous avons don T(

n

,

m

)

∈ O(

m

n+ m

2

(2π)

m

2

n

m−1

2

)

. Comme il n'est pas

évident de omparer ette omplexité ave

d

n

, nous

présentons en table 1 une omparaison des

omplex-ités en fon tionde quelques valeursde

d

, en prenant

le aslemoinsfavorableoù

m

= d

.

Pour avoir une omparaison globale entre une

ré-solution lassique et notre appro he, il faut prendre

en ompte le temps de résolution de P

sym

, qui reste

aprioride l'ordrede

Θ(d

n

)

, et lefaitque P

sym

peut

avoirungrandnombredesolutions anoniquesetdon

d'orbitesàexplorer. Notreappro henepeutdon être

apriori e a e que si P

sym

est rapideà résoudre et

ontientpeudesolutions. Dansl'exempleduproblème

de Vellino que nous avonsdonné en se tion 2, P

sym

possède une unique solution qui se al ule en temps

linéaire. La taille de l'espa e de re her he des

vari-ables

c

i,j

est

6

n

tandisque elledel'orbitedel'unique

solution est en

O(

6

n

n

5

2

)

. Don (sa hant que rien ne

hange au niveaudel'énumération desvariables

t

i,j

)

nousavonsdiviséla omplexitédelatailledel'espa e

dere her hepar

n

5

2

.

(9)

5 Etude de as : problème

d'optimisation

Nous présentons maintenant un as spé ique

d'appli ationdenotreméthodeoù elle- iadebonnes

han es d'être e a e. Un problème d'optimisation

peut sedénirpar unCSP enri hi d'unefon tion de

oût portant sur lesvariables duCSP. L'obje tif est

de trouver la solution du problème qui minimise la

fon tionde oût. Cetypedeproblèmepeutsetraiter

enutilisantlaméthode lassiqueduBran h

&

Bound

(B&B). On peut voir ette méthode omme

ee tu-ant la re her hed'une solution puis posant une

on-trainte de non dépassement du oût de la solution,

réa tualisée à haque fois qu'une solution à un oût

meilleur est trouvée. Si nous avonsaaireàun CSP

symétriquedontlafon tionde oûtbriselessymétries,

notre appro he s'applique dire tement. Nous nous

trouvonsdans un as parti ulier où 'est la méthode

de résolution B&B elle-même qui applique une

on-trainte brisant les symétries après avoir trouvé une

premièresolution. L'idée est don de générer les

so-lutions anoniquesduCSPet,aufuret àmesureque

essolutionssonttrouvées, depar ourirleur orbiteà

lare her hedelasolutionsymétriqueayantlemoindre

oût. L'intérêtde etteméthodeestquenoussommes

à même de passer dire tement d'une solution à une

autresansavoirà ontinuerlarésolutionduCSP.

5.1 Version omplète

Dans une version omplète de notre méthode, nous

devonspar ourirl'orbitegrâ eàlare her he

arbores- ente que nous avons dé rite dans la se tion

pré é-dente. Pendant e par oursd'orbite,ilpeutêtre

pos-sible deminorer et de majorerle oût de lameilleur

solution symétrique de l'orbite, selon le type de la

fon tion de oût qui entre en jeu. Par exemple, si

le oûtest une fon tionmonotoneoulinéairede

ha- une des variables, le graphe d'orbites nous indique

les plus petites et les plus grandes valeurs que

peu-ventprendre haquevariableetdon uneborne

mini-maledu oût. Si laborneminimaleest supérieureau

oûtdelameilleuresolutiontrouvéejusqu'àprésent,il

est inutiled'explorerl'orbite. Laborne minimaleest

anée lors de la des ente dans une bran he ar des

points(et don des valeurs) sont xés oudeviennent

inatteignables, ommenousl'avonsvudanslase tion

pré édente.

5.2 Versionlo alere omplétée

Siunpar ours omplet de l'espa edere her hen'est

pas envisageable à ause de la taille du problème,

on peut envisager une méthode in omplète qui

on-siste en une re her helo ale d'unemeilleure solution

dans les orbites. La re her he lo ale peut passer à

té de l'optimum de l'orbite mais elle peut

perme-ttre de trouver une solution àun oût susamment

bon. Nous pouvons essayer de trouver une solution

à un bon oût grâ e un algorithme glouton : on

es-saie d'appliquer su essivement ha un des

généra-teurs jusqu'à e qu'un d'eux produise une meilleure

solution,etonitère epro essusjusqu'àaboutiràun

optimumlo al.

Or,ils'avèreque etteméthodepeutfa ilementêtre

rendue omplète. IlsutqueleB&Bquigénèreles

so-lutionsnesoitplussoumisàdes ontraintesde

anon-i itéetdon qu'ilgénèretouteslessolutionsy ompris

les symétriques. Dans ette version de la méthode,

nous avons un B&B qui n'utilise au une te hnique

de traitement de symétrie mais qui, lorsqu'il trouve

unenouvellesolution,va her herdefaçonin omplète

dans son orbite une solution àmeilleur oût. Si une

telle solutionest trouvée, il va ontinuer lare her he

où il s'était arrêté mais ave une borne de oût

en- ore améliorée. Il va don pouvoir élaguer en ore

plus l'arbre de re her he que s'il n'avait pas essayé

d'explorerl'orbite. LeB&Bétant uneméthode

om-plète,lefaitdeluiajouterunepro éduredere her he

d'une meilleure borne onserve la omplétude de la

méthode.

6 Expérimentations et résultats

Le premier problème que nous expérimentons est le

arré magique pondéré, qu'on trouve mentionné par

exempledans[4℄. Lebutestderemplirunegrille

n

×n

ave lesentiersde1à

n

2

defaçonà e quelasomme

de haqueligne,de haque olonneetde ha unedes

deuxdiagonalessoitégaleà

n(n

2

+1)

2

. Deplus, haque

aseaunpoidsquiluiest propreet ilfautminimiser

lasommedesproduitsdu ontenudes asesave leur

poids. La fon tion oût est don linéaire. Dans nos

expérimentations, nousavons hoisi haquevaleurde

poidsau hasardentre 1et 100

n

2

. L'ordredugroupe

de symétries est 8 ( e sont les mêmes symétries que

pourunproblèmededamesàpla ersuruné hiquier).

Notre programme est é rit en utilisant Ilog Solver.

A partir de la mi rostru ture du CSP, on ré upère

une base de songroupede permutation ainsi queses

générateursfortsgrâ eàNauty[5℄.

Nousavons omparétroisméthodesderésolution:

leB&B lassique,lemêmeB&Bave uneexploration

gloutonned'orbites,quenousappelonsGreedySym,et

leB&Bave re her her hearbores entesystématique

danslesorbitesdesolutions anoniques,quenous

(10)

prob-Figure 3: Vitesse de onvergen everslameilleure

so-lution pourleproblèmedu arrémagiquepondéré de

taille 5. TreeSear hSym onvergeplusrapidementau

début maislestrois ourbesnissentpas oïn ideret

leurstempsderésolutionsontégaux.

lème, nous avons exé uté 20 instan es diérentes et

nous avonsreporté le temps moyen( f table 3 et 4).

Nous pouvons onstaterqueTreeSear hSym onverge

beau oup plusrapidementque lesdeux autres

méth-odes vers une solution quasi-optimale pour

n

= 5

.

Pour

n

= 6

, il trouve une solution à plus bas oût

quelesautresdansletempsimpartide3minutesqui

avaitétéxé.

Figure 4: Vitesse de onvergen everslameilleure

so-lution pourleproblèmedu arrémagiquepondéré de

taille 6. TreeSear hSym atteintplus rapidementune

meilleure solution que GreedySear h and B&B à la

n des3minutes. Au un ne terminelare her heau

boutdeplusieursheures. (Finalement,l'outil de

pro-grammationmathématiqueCPLEXd'Ilogaétéutilisé

pourtrouverlameilleuresolutionandenous

perme-ttrede onnaîtreladistan eentre elle- iet ellesque

nosméthodesavaienttrouvées.)

Lese ondproblème hoisipourtesternosméthodes

est un problème de oloriage de graphe. Le

prob-lème ontient n (n est un multiple de 5) variables

{x

1

, ..., x

n

}

àvaleursdans{0,1,2,3,4}. L'ensembledes

ontraintesest dénipar,

∀i

telque iest unmultiple

de5:

• {x

i

, x

i+1

, x

i+2

, x

i+3

}

ontdesvaleursdiérentes.

• {x

i

, x

i+4

, x

i+5

, x

i+9

}

ont des valeurs diérentes

(saufsii=n-5).

X12

X0

X4

X9

X14

X1

X6

X3

X2

X7

X11

Xn−2

Xn−1

Xn−5

Xn−4

Xn−3

X8

X13

X10

X5

Figure 5: Grapheà olorier

Ce problèmeest dé rit parlagure5. Nousavons

hoisi eproblème ar,bienqu'arti iel,ilal'avantage

que sonnombrede variables peut aisémentêtre

aug-menté tout en onservant les mêmes symétries. En

eet, quelque soit le nombre de variables présentes

dans le modèle, il existe deux typesde symétries de

variable. Celles du premier type sont lo ales :

i

multiple de5,lesvariables

{x

i+1

, x

i+2

, x

i+3

}

sont

in-ter hangeables. Ilexisteundeuxièmetypedesymétrie

quiest global. Considéronslapartitiondel'ensemble

de variables en k parties de 5 variables dénies par

:

∀j ∈ [1; k]{x

j

, x

j+1

, x

j+2

, x

j+3

, x

j+4

}

. Ces

ensem-blesdevariablessontsymétriquesparlaréexionqui

é hange

x

j

et

x

k−j

. Cettefois- i,l'ordredugroupede

symétriesestunefon tionexponentielledunombrede

variables.

Lafon tion oûtestunefon tionlinéaireportantsur

lesvaleursprisesparlesvariables. Chaque oe ient

asso iéàunevariableestunentier omprisentre 1et

n. Pour éviter de résoudre ontinuellement le même

problème, es oe ients sont tirés aléatoirementde

façonindépendante.

Nbvariables TreeSear hSym GreedySym B&B

15 0.054 0.0035 0.0042 20 0.25 0.025 0.026 25 2.35 0.16 0.17 30 11.6 1.04 1.11 35 94.6 6.39 6.7 40 492 44.5 47.3

Table2: Temps derésolution (ense ondes)du

prob-lèmede oloriagedegraphe.

La omparaison entre les trois te hniques de

réso-lution(B&B,GreedySymetTreeSear hSym)aété

(11)

fe tuéeave 50résolutionsdeproblèmesdetaille

iden-tiquedontlafon tion oût hangeaitaléatoirementà

haquefois. Lesrésultats sont indiquésentable 2et

engure6.

Figure6: Vitesse de onvergen everslameilleure

so-lution pourle problème de oloriagede graphe pour

n

= 30

. GreedySym onverge plus rapidement que

B&B. TreeSear hSym onverge très lentement. Le

même omportement a été observé pour les autres

valeursde

n

.

Les temps de résolution ave GreedySym ne sont

qu'unpeuplusrapide(

<

10%)que elleave leB&B.

Cependant, GreedySym atteint la solution optimale

bien avant B&B. TreeSear hSym a de mauvaises

ré-sutlatspar equ'ilprend beau oupdetempsàfouiller

systématiquementdegrandesorbites.

7 Con lusion et perspe tives

Grâ eàuneidéesimple,nousavonsétendule hamp

d'appli ationdesméthodesd'éliminationdesymétries:

lorsqu'unproblèmene ontientpasdesymétriespar e

que quelques ontraintes sont asymétriques, e qui

onstitue un as beau oup plus ourantque elui où

lesproblèmes sont symétriques,nous pouvons quand

même appliquer es méthodes en laissant les

on-traintes gênantes momentanément de té pour les

réintégrer plustard et terminer de résoudre le

prob-lème. Cela implique qu'on sa he explorer

e a e-ment l'orbite d'une solution anonique. Nous avons

vuqu'uneexplorationin omplètedel'orbitepar

répa-ration lo ale est fa ile à mettre en ÷uvre. Par

on-tre, une exploration systématique par re her he

ar-bores ente est plus déli ate et né essite que soient

étudiés plusieurs aspe ts fondamentaux ( hoix de la

base, adaptation des te hniques de ltrage de

do-maines) pour qu'elle soit le plus e a e possible.

Notreétudede es aspe tsreste embryonnaire et

de-vra être poursuivie. De plus, nous nous sommes

in-téressésà une lasse spé iquede problèmesqui

en-traient dans le adre généralde notre appro he: les

problèmesd'optimisationoùseulelafon tionde oût

estasymétrique. Dans e ontexte,nousavonsproposé

une autre méthode omplète basée sur l'exploration

lo ale d'orbites desolution. Comme ellepeutsauter

très rapidement d'une solution à une autre lors de

l'exploration d'une orbite, elle permet d'améliorer la

borne de oût plus rapidement. Il nous reste à

véri-er l'e a ité de notre démar he dans le adre plus

général dans lequel nous nous sommes pla és au

dé-part : elui des problèmes de dé ision ontenant un

nombre onséquent de ontraintes asymétriques. Ce

type de problème est très ourant en pratique et il

serait très utile que nous perfe tionnions notre

ap-pro he susamment pour qu'elle reste e a e dans

e ontexte.

Referen es

[1℄ B. Benhamou. Study of symmetry in onstraint

satisfa tion problems. In Se ond Workshop on

Prin iples and Pra ti e of Constraint

Program-ming(PPCP'94),1994.

[2℄ D.Cohen,P.Jevons,C.Jeerson,K.E.Petrie,and

B.Smith.Symmetrydenitionsfor onstraint

sat-isfa tionproblems. InPro eedingsofCP'05, pages

1731,2005.

[3℄ W. Harvey. Symmetri relaxation te hniques for

onstraintprogramming.InSymNetWorkshopon

Almost-SymmetryinSear h,pages2059,2005.

[4℄ R. Martin. Approa hes to symmetry breaking

for weak symmetries. In SymNet Workshop on

Almost-SymmetryinSear h,pages3749,2005.

[5℄ BrendanD.M Kay. Pra ti algraphisomorphism.

CongressusNumerantium,30:4587,1981.

[6℄ JeanFrançoisPuget. Automati dete tionof

vari-able and value symmetries. In Pro eedings of

CP'05,pages475489,2005.

[7℄ Jean François Puget. Breaking all value

symme-tries in surje tion problems. In Pro eedings of

CP'05,pages490504,2005.

[8℄ AkoSeress.PermutationGroupAlgorithms.

Cam-bridgeUniversityPress,1999.

[9℄ Vellino.http://www. s.york.a .uk/aig/ onstraints/

Figure

Figure 1: Une grille 4 × 4 et son graphe d'orbites. Ω =
Figure 2: A droite, l'arbre de reherhe générant
Table 1: Comparaison entre taille de l'espae de
Figure 5: Graphe à olorier
+2

Références

Documents relatifs

Deux figures sont symétriques par rapport à une droite si elles se superposent par pliage le long de cette droite.. Cette droite est appelée l'axe

L'acteur de la sécurité routière

L'acteur de la sécurité routière

L'acteur de la sécurité routière

L'acteur de la sécurité routière

Cécile Geneste, Directrice de Cabinet, Chef de projet sécurité routière, Préfecture de la Vienne.. L'info

Pour une valeur se trouvant à l'adresse (de mémoire vive) désignée par le ontenu d'uno. registre (de seize bits, puisque 'est la taille du déplaement), on indique le nom de

Ce sont des acides et bases faibles, mais (pourvu qu'ils ne soient pas trop dilués) leur action est nettement plus importante en comparaison des rôles d'acide et