• Aucun résultat trouvé

Une Stratégie de Résolution Orientée par la Topologie des CSPs Numériques

N/A
N/A
Protected

Academic year: 2021

Partager "Une Stratégie de Résolution Orientée par la Topologie des CSPs Numériques"

Copied!
9
0
0

Texte intégral

(1)

HAL Id: inria-00000087

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

Submitted on 26 May 2005

HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci- entific research documents, whether they are pub- lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

Une Stratégie de Résolution Orientée par la Topologie des CSPs Numériques

Heikel Batnini, Michel Rueher, Claude Michel

To cite this version:

Heikel Batnini, Michel Rueher, Claude Michel. Une Stratégie de Résolution Orientée par la Topologie

des CSPs Numériques. Premières Journées Francophones de Programmation par Contraintes, CRIL

- CNRS FRE 2499, Jun 2005, Lens, pp.211-218. �inria-00000087�

(2)

Une Stratégie de Résolution Orientée par

la Topologie des CSPs Numériques

Heikel Batnini Mihel Rueher Claude Mihel

Université de Nie Sophia-Antipolis

Projet COPRINI3S-CNRS/INRIA/CERMICS

INRIA, 2004 Route des Luioles

BP 93,06902 Sophia-Antipolis

hbatninisophia.inria.fr rueheressi.fr pjmessi.fr

Abstrat

Les méthodes lassiques de résolution de

CSPsnumériquessontbaséessurunalgorithme

ombinantunetehniquedebissetionetunl-

trage paronsistane loale. En général,le l-

trageestbasésurlaHull-onsistaneoulaBox-

onsistane. Les algorithmesde ltrage orres-

pondants identientsouventdestrous dansles

domaines,'est-à-diredesintervallessurlesquels

ertainesontraintesnesontpassatisfaites.Ces

trous sont ependant utilisés uniquementpour

déterminerlepluspetitintervalle englobantles

solutions.

Ce papier présente une stratégie de re-

herhe, nommée TopSearh (Topologial

Searh),quiexploitelestrous identiéspares

ltrages. TopSearh utilise es informations

pourséletionnerladiretiondeoupeainsique

pourdénirlepointde oupedans ledomaine

séletionné. Si auun trou n'est identié une

bissetion standard est mise en oeuvre. Les

premiers résultatsexpérimentauxmontrent que

ette heuristique de reherhe dont lesur-oût

est minime, peut améliorer de manière très

signiative les performanes de la bissetion

lassique.

1 Introdution

Cet artile présente une nouvelle straté-

gie de reherhe pour la résolution de CSPs

(ConstraintSatisfation Problem)numériques.

Ce problème apparaît dans de nombreux do-

mainesd'appliationommeenrobotique,hi-

mie ou enore en géométrie. L'objetif est de

trouveruneapproximationnedessolutionsde

systèmesdeontraintesnon-linéaires.

Les méthodes lassiques pour résoudre les

CSPsnumériquessontbaséessurunalgorithme

ombinantunetehniquedebissetionetunl-

trageparonsistaneloale.

La bissetion onsisteà hoisirun intervalle

enutilisantdiversesstratégiesdeséletion.Cet

intervalleestalorsoupéenplusieurspartie,en

généralen son milieu, puis les sous-problèmes

orrespondants sont résolus de manière indé-

pendante.

Parmilesstratégiesdeséletiondedomaine,

laméthodeonsidéréeommeétantlaplusef-

aeen moyenne est le Round Robin (RR),

qui traite les domaines des variables les uns

aprèslesautresdemanièreirulaire.D'autres

stratégiesdeséletionutilisentdesinformations

syntaxiques ou sémantiques. La stratégie Lar-

gest First (LF), aussi appelée geometri split-

ting [17℄, onsiste à hoisir la variable dont le

domaineest le plus grand.La stratégie Maxi-

mal Smear (MS) [6, 13℄ séletionne le domaine

quimaximise lasmear funtion 1

.De manière

informelle,MSidentie lavariabledont lapro-

jetionalaplusgrandepente.

1

Lasmearfuntion de

x

kest:

s

k

= max

1≤j≤m

{max {|J

i,j

|,|J

i,j

|}w(

xi

)},

Ji,j

= [J

i,j

, J

i,j

]

estla

(i, j)

-èmeentréedel'exten-

sionauxintervallesdelamatrieJaobiennedusystème

(3)

sont basées sur la Hull-onsistane [15, 2℄ ou

la Box-onsistane [3, 19℄. Les algorithmes de

ltrage orrespondants identient souvent des

trous dans lesdomaines,'est-à-diredes inter-

vallessur lesquelsertainesontraintesnesont

passatisfaites. Ces trous sontependantutili-

sés uniquement pour déterminer le plus petit

intervalleenglobantlessolutions.

Cepapierprésenteunestratégiedereherhe,

nommée TopSearh (Topologial Searh), qui

exploite les trous identiés par es ltrages.

TopSearh utilise es informations pour séle-

tionnerladiretiondeoupeainsiquepourdé-

nir le point de oupe dans le domaine séle-

tionné.Siauuntroun'estidentiéune bisse-

tionstandardestmiseenoeuvre.

Plus préisément, les trous dans les do-

maines sont identiés par l'algorithme HC4

qui permet d'implanter eaement à la fois

la Hull-onsistane et la Box-onsistane [2℄.

TopSearh réupère es informations ave un

sur-oût négligeablepuislesexploite durantla

phase de reherhe. Plusieurs heuristiques ex-

ploitantesinformationspeuventêtreutilisées,

parexempledesheuristiquesbaséessurlataille

destrousidentiés.

Un retour-arrière hronologique est la plu-

partdutempsutilisépourtraiterlessous-CSPs

générés par la bissetion. D'autres stratégies

plussophistiquéespeuventependantêtreutili-

sées,parexempleunestratégiederetour-arrière

dynamiquetellequeellequiaétéprésentéepar

[11℄. TopSearh est une stratégie dereherhe

pouvant être ombinée ave n'importe quelle

stratégiederetour-arrière.

D'autrepart,desonsistane plusfortesba-

séessurl'utilisationdestrousidentiésontété

proposéespar[8,4℄.L'originalitédeTopSearh

provientdufaitquelestroussontexploitésuni-

quementpourlareherhedesolutions.

Ce papier est organisé de la manière sui-

vante:lasetion2rappellelesnotionsdebase

sur l'arithmétique d'intervalles.Le shéma gé-

néral de TopSearh est dérit dans la setion

3. La setion 4 présente la tehnique utilisée

pourolleterlestrousdans lesdomaines.En-

n,lasetion5présente quelquesrésultatsex-

périmentaux sur des problèmesissus de la lit-

Cette setion présente quelques rappels sur

les CSPs numériques, ainsi que les notations

utilisées dans le reste du papier. Le leteur

pourrasereporterà[16,6,12,9℄pourplusde

détails.

2.1 Notations

L'intervalle x

= [x, x]

dénotel'ensemble des

réels

x

tels que

x ≤ x ≤ x

. Les variables

sont notées

x, y

, les veteurs de variables par

X, Y

et les veteurs d'intervalles - ou boîtes

- par X

,

Y. Le milieu

m(

x

)

de l'intervalle x est

(x + x)/2

et sa taille est le nombre posi-

tif

x − x

. Une union d'intervalles sera notée U

x

= S

x(j),xestlepluspetitintervalleen-

globanttouslessous-intervallesx

(j).Préisons

que es x

(j) sont disjoints et triés par borne

inférieure roissante,'est-à-dire

x

(j)

< x

(j+1).

Nousonsidérons dans e papier lesCSPs nu-

mériquesdénisparunensembledeontraintes

C

= { c

1

, . . . , c

m

}

, mettantenjeuleveteurde

variables

X = (x

1

, . . . , x

n

)

dontlesvaleurssont

restreintesàlaboîteX

= (

x1

, . . . ,

xn

)

.

2.2 Arithmétique des intervalles

Soit

f

, une fontion à valeurs réelle et à

n

inonnues

X = (x

1

, . . . , x

n

)

. L'évaluation par intervalles de

f

pour une boîte donnée X

= (

x1

, . . . ,

xn

)

est unintervalleytelque:

y ≤ f (x

1

, . . . , x

n

) ≤ y, ∀ x

i

xi

, 1 ≤ i ≤ n

End'autrestermes,yestunintervalleonte-

nantlesvaleursde

f

lorsquelesvaleursdesin-

onnuessontrestreintes àlaboîteX.

Lamanièrelaplussimplede aluleretin-

tervalle est de substituer tous les opérateurs

mathématiques, les onstantes et les variables

parleurextensionauxintervalles.Unearithmé-

tiquedesintervallesétenduepermetdealuler

uneuniond'intervallesontenantlesvaleursde

f

enappliquantlemêmeprinipe.Parexemple,

soit

f (x) = √ x

pour

x ∈

x

= [4, 9]

. L'évalua-

tionde

f

parrapportàxestl'intervalle

[ − 3, 3]

,

alorsquel'uniond'intervalles ontenanttoutes

lesvaleursde

f

est

[ − 3, − 2] ∪ [2, 3]

.

2.3 Consistanesloales

La plupart des solveurs de ontraintes sont

basés surlaHull-onsistane[15,2℄oulaBox-

(4)

manièreinformelle,soit

c

j uneontrainte

n

-aire

déniepar

f

j

(x

1

, . . . , x

n

) = 0

.

c

jestonsistante

si pour haune desesvariables

x

i, lesbornes

x

iet

x

ipossèdentunsupportdanslesdomaines

desautresvariables.

Leltragedesdomainesonsisteàappliquer

itérativement un opérateur de rédution asso-

àhaqueouple

(c

j

, x

k

)

.Cesopérateursré-

duisent les bornes des domaines de

x

k en al-

ulant une approximation par intervalle de la

fontion de projetion

π

kj, qui exprime la va-

riable

x

kenfontiondesdesautresvariablesde

c

j. Notons que l'évaluation exate de

π

jk n'est

en général pas un simple intervalle, mais sou-

vent une uniond'intervalles omme le montre

lagure1.

00000 00000 11111 11111

000000000000 000000000000 111111111111 111111111111 1

16

−2 −1 1 4

y

c:y=x2

x

X

x

(1)

x

(2)

Fig. 1 Considérons laontrainte

c : y = x

2

ave

x ∈ [ − 2, 4]

et

y ∈ [1, 16]

. Les fontions

de projetion assoiées sont

π

x

(y) = √ y

et

π

y

(x) = x

2. L'approximation de

π

x

(y)

al-

ulée par la Hull-onsistane ou par la Box-

onsistanesurlesintervallesxetyest

[ − 2, 4]

,

alors que l'évaluation exate de

π

x

(y)

est

[ − 2, − 1] ∪ [1, 4]

.

L'unedes implantations lespluseaesde

laHull-onsistane(Realpaver[5℄)estbaséesur

laproédureHC4revisequiimplémentelesopé-

rateurs de rédution. Cette proédure alule

une rédution des domaines en parourant la

représentationarboresentedelaontraintedes

feuilles à la raine (propagation asendante)

et inversement (propagation desendante). La

gure 2 illustre l'exéution de HC4revise sur

la ontrainte

c : y = x

2 ave

x ∈ [ − 2, 4]

et

y ∈ [1, 16]

. La propagation asendante (- gure 2(a)) évalue par intervalle haque noeud

de l'arbreen partantdes feuilles et enremon-

enutilisantlesfontionsdeprojetionsassoiés

auxopérateurs.Parexemple,laprojetionde

c

sur

x

est

x ← √ y

;ledomainede

y

étant

[1, 16]

,

le domaine de

x

est réduit à

[ − 2, − 1] ∪ [1, 4]

.

HC4reviseidentieuntroudansledomainede

x

: l'intervalle ouvert

] − 1, 1[

, qui n'a pas de

support pour

c

lorsque

y

est dans l'intervalle

[1, 16]

.

y ^

=

2 x

[1,16]

[−2,4]

[0,16]

2 [1,16]

(a)Propagationasendante

^

2 x

=

y [0,16]

2

[1,16] [1,16]

[−2,−1]∪[1,4]

[1,16]

[−2,4]

(b)Propagationdesendante

Fig.2L'opérateurderédutionHC4revise.

LesonsistanesloalesbaséessurHC4revise

identientdondestrousdanslesdomainesdes

variables,'est-à-diredesintervallessurlesquels

plusieursontraintesnesontpassatisfaites.Ces

trouspermettentdealulerunerédutionplus

forte des domaines mais ne sont plus utilisés

après l'étapedeltrage.

La setion suivante montre omment es

trouspeuventêtreexploitéspourorienterlare-

herhedesolutions.

3 Reherhe orientée par les trous

Ce papier présente une nouvelle stratégie

de reherhe, nommée TopSearh (Topologi-

al Searh), dérivée de la bissetion standard.

Contrairementauxstratégieslassiquesdebis-

setion,TopSearhexploiteladistribution des

solutionsàl'intérieurdesdomaines.TopSearh

s'appuiesurlestrousidentiéspendantl'étape

(5)

joints qui ne ontiennent auune solution du

CSP.

Funtion TopSearh(in:X

0

,

Cout:

S

)

%%X0

= (

x1

, . . . ,

xn

)

1:

Q ←

X0

2:

S ← ∅

3: while

Q 6 = ∅

do

4: ExtratX from

Q

5: X

Prune

(

X

,

C

)

6: if X

6 = ∅

then

7: if

w(

X

) ≤ ω

sol then

8: %%

S

isasolution

9:

S ← S ∪

X

10: else

11: U

X

ComputeGaps

(

X

,

C

)

12: if somegap existsthen

13: SeletU

xk fromUX

14: Seletg

k(p) fromUxk

15:

x

1k

← x

k(p)

16:

x

2k

← x

k(p+1)

17: else

%%Standardbisetion

18: Seletxk fromX

19:

x

1k

← m(

xk

)

20:

x

2k

← m(

xk

)

21: endif

22:

Q ← Q ∪ (

x1

, . . . , [x

k

, x

1k

], . . . ,

xn

)

23:

Q ← Q ∪ (

x1

, . . . , [x

2k

, x

k

], . . . ,

xn

)

24: endif

25: endif

26: endwhile

27: return

S

Fig. 3 Shéma général de l'algorithme

TopSearh.

Ces trous apportent une information signi-

ative à la fois pour hoisir la diretion de

oupe et le point de oupe dans le domaine

hoisi. TopSearh déoupe en priorité les do-

maines pour lesquels des trous ont été identi-

és.Ladéoupeproprementditeonsisteàéli-

miner un troudu domaine séletionné, réant

ainsideuxsous-problèmesdisjoints.

Le shéma général de e nouvel algorithme

est donné par la gure 3. Le domaine ou-

rant est tout d'abord réduit par la proédure

Prune (ligne 5), qui est un algorithme stan-

darddeltragebasé surlaBox-onsistaneou

la Hull-onsistane. Si la boîte ourante X

= (

x1

, . . . ,

xn

)

n'est pas une solution du CSP,

xi(ligne11).

U

X

dénote le veteur d'union d'intervalles

(

Ux1

, . . . ,

Uxn

)

retourné par la proédure

ComputeGaps(voirsetion4).Pourhaqueva-

riable

x

i, ette proédure alule une union

d'intervalles

U

xi

= [

xi(j)

,

xi(j)

= [x

i(j)

, x

i(j)

]

dénote le

j

-ème sous-

domainedelavariable

x

i.

Le

p

-èmetroude Uxi est l'intervalleouvert entrele

p

-èmeet le

p + 1

-èmesous-domaine:

gi(p)

=]x

i(p)

, x

i(p+1)

[

TopSearhséletionneundomaineontenant

aumoinsuntrou(ligne13).Puis,lespointsde

oupe sont déterminés de manière à éliminer

untroug

k(p) (lignes 15 et 16). Plusieurs heu-

ristiquespourséletionnerladiretiondeoupe

(ligne13)ainsiqueletrouàéliminer(ligne14)

ontétéétudiées(voirsetion5).

Si auun troun'aété identié,unbissetion

lassiqueest mise enoeuvre (lignes 18-20). La

stratégiedehoixdeladiretiondeoupeuti-

lisée est une des heuristiques dérites dans la

setion1(RR,LF,ouMS).

La setion suivante présente la proédure

ComputeGapsquiolletelestrousaluléspen-

dantlaphasedeltrage.

4 Calul des trous

Cette setion présente un algorithme pour

aluler les trous dans les domaines des va-

riables. TopSearh ollete et intersete les

unions d'intervalles qui ont été alulées dans

haquedomaineparHC4revisedurantlaphase

deltrage.Lesur-oûtengendréestdonlimité

àdesopérationsd'intersetionsentreesunions

d'intervalles.

En d'autre termes, pour haque ouple

(x

i

, c

j

)

, HC4revise alule une union d'inter-

valles qui approxime la fontion de proje-

tion

π

i(j).Pourhaquevariable

x

i,l'algorithme ComputeGapsalulel'intersetiondetoutesles

approximationsdes fontionsdeprojetionas-

soiéesauxontraintesmettantenjeu

x

i (voir

gure4).

Plus préisément,soient

c

j une ontrainteet

x

i une variable de

c

j et soit U(j)

xi l'approxi-

mation exate de

π

ji qui a été alulée pen-

dant laphase de ltrage.L'union d'intervalles

(6)

alulées pour la variable

x

i par l'algorithme ComputeGaps (voir gure 5) est l'intersetion

des U

(j)

xi, pour toutes les ontraintes

c

j dans

lesquelles

x

i apparaît.

000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000

111111 111111 111111 111111 111111 111111 111111 111111 111111 111111 111111 111111 111111 111111 111111 111111

0000000 0000000 0000000 0000000 0000000 0000000 0000000 0000000 0000000 0000000 0000000 0000000 0000000 0000000 0000000 0000000

1111111 1111111 1111111 1111111 1111111 1111111 1111111 1111111 1111111 1111111 1111111 1111111 1111111 1111111 1111111 1111111

c

2

c

1

x

1

x

2

x2

x1

g1(1) x1(2) g1(2)

x

11(2)

x

11(1)

x

21(2)

x

21(1)

U

1

x1

U

2

x1

Ux1

x1(3)

x1(1)

X1 X2

Fig. 4 L'approximation des projetions de

c

1 et

c

2 surla variable

x

1 sont respetivement U

1

x1

=

x11(1)

x11(2) et U2

x1

=

x21(1)

x21(2).

L'uniond'intervalles générée parComputeGaps

pourlavariable

x

1 est l'intersetionde U

1

x1 et

U

2

x1 : Ux1

=

x1(1)

x1(2)

x1(3). Les deux

trousidentiés,g

1(1)etg1(1),permettentd'éli-

minerlesboîtesinonsistantesX

1 etX2,dans

lesquellesunedesdeuxontraintesn'estpasvé-

riée.

En terme d'implantation, lealul des U

(j)

xi

aété réalisé parune légèremodiationde la

proédureHC4revise.Pendantl'évaluationdes-

endante del'arbre,lorsque lenoeudonsidéré

estune variable

x

i et quedestrous ontétédé-

tetésdanssondomainexi,l'uniond'intervalles

assoiéà

x

i est intersetéaveUxi.

Lasetionsuivanteprésenteuneomparaison

entrel'algorithmestandarddebissetionetl'al-

gorithmedereherheTopSearhsurunesérie

deCSPsnumériques.

5 Résultats expérimentaux

Cette setionprésente des résultats obtenus

ave TopSearh sur une série de problèmes

lassiques:

FuntionComputeGaps(in:X

,

C out:UX)

%%X

= (

x1

, . . . ,

xn

),

UX

= (

Ux1

, . . . ,

Uxn

)

1: U

X

X

%%SetU

xi

=

xi for

1 ≤ i ≤ n

2: for eah

c

j

Cdo

3: for eah

x

i

Vars

(c

j

)

do

4: U

xi

Uxi

U(j)xi

%%U

(j)

xi isomputedbyHC4revise

5: endfor

6: endfor

7: returnU

X

Fig.5Computationofthegaps

l'arithmétiquedesintervalles.

- d1 [7℄ est une appliation de la inématique

diretederobots.

- nbody5 [14℄estune instaneduproblèmeà5

orps issudelaméaniqueéleste.

- eo7 et eo8 [19℄ sont deux appliations de

modélisationéonomique.

- ponts [10℄, ext-penta et ext-pentaX [1℄ sont

des problèmes de ontraintes géométriques,

ext-pentaX est une instane partiulière de

ext-penta.

- aprasse [18℄ est un système d'équations

polynomialesissudesproblèmesdePosso.

n m s

X

d1

12 12 16 [ − 10

3

, 10

3

]

eo8

8 8 8 [ − 10

3

, 10

3

]

eo7

7 7 8 [ − 10

3

, 10

3

]

ext-penta0

18 19 64 [ − 10, 10]

ext-penta1

18 19 64 [ − 10, 10]

ext-penta2

18 19 320 [ − 10, 10]

ponts

26 26 128 [ − 10

2

, 10

2

]

ext-penta

19 19 448 [ − 10, 10]

nbody5

6 6 12 [ − 10

8

, 10

8

]

i4

10 10 1024 [ − 1, 1]

aprasse

4 6 28 [ − 10, 10]

Tab.1

n

estlenombredevariables,

m

est le

nombredeontraintes,

s

estlenombresolutions

danslaboîteinitialeX.

Latable 1donne unedesriptionsyntaxique

dees problèmes.

La bissetion lassique est omparée ave

TopSearh;touteslesdeuxsontombinéesave

RR. Le ltrage est réalisé par HC4 seul (ta-

Références

Documents relatifs

Le prix d’une petite pizza est la moitié du prix d’une grande pizza. Combien coûte une

Combien de moutons blancs y- a-t-il dans ce troupeau.. 23

Supposons M racine d'un polynôme à coecients entier de degré d ∈ J 0, 9 K et formons une contradiction entre la majoration de III.3 et la minoration qui résulte du théorème

Puis écris le nombre de boîtes que tu peux remplir, le nombre de poupées qui restent. Nombre

[r]

Celle qui correspond à la dépense minimale est la droite parallèles à d 5 qui a une ordonnée à l'origine minimale tout en ayant au moins un point dans l'ensemble des

NOMBRE DÉRIVÉ ET APPLICATIONS Dénition Soit f une fonction dénie sur un intervalle contenant un réel a... On dit que f admet un maximum (resp. minimum) de f

Dénition Soit f une fonction et a et l des réels.. NOMBRE DÉRIVÉ ET APPLICATIONS Dénition Soit f une fonction dénie sur un intervalle contenant un réel a. Faire observer que c'est