• Aucun résultat trouvé

De FC à MAC : un algorithme paramétrable pour la résolution des CSP

N/A
N/A
Protected

Academic year: 2021

Partager "De FC à MAC : un algorithme paramétrable pour la résolution des CSP"

Copied!
10
0
0

Texte intégral

(1)

HAL Id: inria-00000063

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

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.

De FC à MAC : un algorithme paramétrable pour la résolution des CSP

Assef Chmeiss, Lakhdar Sais

To cite this version:

Assef Chmeiss, Lakhdar Sais. De FC à MAC : un algorithme paramétrable pour la résolution des CSP.

Premières Journées Francophones de Programmation par Contraintes, CRIL - CNRS FRE 2499, Jun 2005, Lens, pp.267-276. �inria-00000063�

(2)

De FC à MAC : un algorithme paramétrable

pour la résolution des CSP

Assef Chmeiss Lakhdar Saïs

CRIL CNRS Université d'Artois

rue Jean Souvraz -SP 18

62307Lens Cedex

{hmeiss, sais}ril.univ-artois.fr

Résumé

Beauoupd'algorithmesderésolutiondeProblèmes

deSatisfationdeContraintesontétéproposésesder-

nièresannées.Parmiesalgorithmesnouspouvonsmen-

tionner les deux les plus populaires et les plus étu-

diés : le Forward-Cheking (FC) et Maintaining Ar-

Consisteny(MAC).Dans epapier,nous étudionses

deuxalgorithmesetnousréévaluonsleursperformanes

sur des problèmesgénérés aléatoirement. Préisément,

nous montrons expérimentalementqueFC est meilleur

que MAC sur des CSP diiles dont le graphe de

ontraintes est très dense et la dureté desontraintes

estfaible.Enrevanhe,MACsemontreplusperformant

que FC sur desproblèmes diilesave un graphede

ontraintespeudenseetuneduretéélevée.Cesrésultats

montrentquelemaintiende l'Ar-onsistanependant

lareherhepeutêtreunepertedetemps.Ensuite,Nous

proposonsuneapprohegénériquequipermet,pendant

la reherhe,un maintienpartielet paramétrablede la

onsistaneloale.

Abstrat

Manybaktraksearhalgorithmshasbeendesigned

over the last yearsto solveonstraint satisfation pro-

blems.Amongthem,ForwardCheking(FC)andMain-

tainingArConsisteny(MAC)algorithmsarethemost

popularandstudied algorithms. Inthis paper,suhal-

gorithmsare revisitedandextensively ompared giving

risetointerestingharaterizationoftheireienywith

respet to random instanes. More preisely, we pro-

vide experimental evidenethat FC outperforms MAC

onhardCSPswithhighgraphdensityandlowonstraint

tightnesswhereasMACisbetteronhardCSPswithlow

densityandhighonstraintstightness.Thisresultsshow

thatonsomeCSPsmaintainingfullaronsistenydu-

ringsearhmightbetimeonsuming.Then,wepropose

anewgeneriapproahthatmaintainpartialandpara-

meterizableformofloalonsisteny.

1 Introdution

LesProblèmesdeSatisfationdeContraintes(CSP)

sontlargementutilisésdanslarésolutiondeproblèmes

ombinatoiresapparaissantdansdiversesappliations.

Ils onernent la reherhe de solutions dans un ré-

seaux de ontraintes 'est-à-dire aeter des valeurs

à des variables,tout en satisfaisant un ensemble de

ontraintes portant sur es diérentes variables. La

tehnique lassique utilisée pour résoudre un CSP

estlebaktraksystématique.Cetteproédure(bak-

trak)hoisit, defaçonrépétitive, une variable et es-

sayedeluiaeterl'unedesvaleursdanssondomaine.

Ensuite,soitellehoisitunenouvellevariablesoitelle

eetueunretourenarrièreenasd'éhe.Cetteteh-

niqueestàlabasedelaplupartdesalgorithmesderé-

solutiondes CSP.Néanmoins, pourrésoudreertains

problèmesombinatoiresdiiles,ilfaut améliorerla

performanedeetteproédureàl'aidedetehniques

plusintelligentes.Uneaméliorationimportanteàajou-

terest leltrage,qui onsisteàenleverdes domaines

futurs des valeurs inompatibles ave l'instaniation

ourante.Beauoupdetravauxontétudiédiérentsni-

veauxdeltragequipeutêtreappliquéàhaquen÷ud

del'arbredereherhe.Lesdeuxalgorithmeslesplus

onnusdanse adresontFC(Forward-Cheking)et

MAC(MaintainingAr-Consisteny).Laperformane

de es algorithmesa été disutée dans plusieurs tra-

vaux dans la littérature [1, 5, 16, 17℄. Il semble que

estravauxsoientd'aordqueMAConstitueunbon

hoixpourlarésolutiondesCSP[5,17,20℄.Paronsé-

quent,beauoupd'améliorationsdelaomplexitétem-

porelle et/ou spatialedes algorithmes de onsistane

d'arontétéproposées[3,4,7,15, 21℄.

(3)

sont tirées à partir de résultats expérimentaux. La

omplexité de es algorithmes reste dans le pire des

asdel'ordreded n

avedlatailledesdomaineset n

lenombredevariables.Lesexpérimentationssont,en

général,eetuées sur des instanes générées aléatoi-

rementetsurunnombrelimité deproblèmesréels.

Nous pensons que es deux algorithmes (FC et

MAC)sontomplémentaires etque leurperformane

dépend des problèmes testés. En d'autres termes,

la rentabilité du maintien de la onsistane d'ar

pendant lareherhe dépend des aratéristiquesdes

CSPtestés.

Dans e papier, nous présentons une réévaluation

omparative de FC et MAC sur des problèmes aléa-

toires ave des aratéristiques diérentes omme la

densité du graphe de ontraintes et la dureté des

ontraintes.Pluspréisément,nousfournissonsdesré-

sultats montrant que FC est meilleur que MAC sur

des CSP diiles dont le graphe de ontraintes est

trèsdenseetaveunefaibledureté.Ens'appuyantsur

esobservations,nousproposonsunnouvelalgorithme

générique de baktrak appelé MAC(dist

k

). Cet al-

gorithme maintient, pendant la reherhe, une forme

partielle de onsistane d'arpar rapport àun para-

mètrekappelédistane.Nousmontrons,surquelques

instanes, qu'il existe une distane i pour laquelle

MAC(dist

i

) amélioreà lafois FC(qui ltreunique-

mentle voisinagede lavariable) et MAC(qui main-

tientlaonsistaned'ar).

Ce artile organisé omme suit. Après un rappel de

quelques dénitions, nous rappelons les algorithmes

FC et MAC. Ensuite, nous présentons le nouvel al-

gorithme générique MAC(dist

k

) qui permet de pa-

ramétrer le niveau de onsistane d'ar à maintenir.

Nousmontrons,ensuite,uneomparaisonexpérimen-

tale entre FC et MAC sur des problèmes aléatoires

diiles.Nousprésentonségalementdesrésultatspré-

liminaires sur le omportement de MAC(dist

k ) ave

plusieursvaleursde k. Enn, nous donnons quelques

diretionspossiblessurdesfuturstravauxetnouster-

minonsparuneonlusionsure papier.

2 Préliminaires

UnCSP(ProblèmedeSatisfationdeContraintes)à

domainesnisestdéniparletripletP =(X;D;C):

X = fx

1

;x

2

;:::x

n

g est un ensemble de n va-

riables.

D=fd

1

;d

2

;:::d

n

gest unensemblededomaines

nis,une variable x

i

prend ses valeursdans son

domaine d

i . jd

i

j représente la taille du domaine

d.Siunevariablex possèdeuneseulvaleurdans

i

valeur.

C = f

1

;

2

;:::;

m

g est un ensemble de m

ontraintes. Chaque ontrainte

i

est une paire

(vars(

i );rel(

i

))telle que:

vars(

i

)Xestunsous-ensembledevariables.

jvars(

i

)jreprésentel'arité delaontrainte.

rel(

i )

Q

xk2vars(i) d

k

est larelationdénie

parlaontrainte

i

.Ellespéielesouplesde

valeursautorisésparlaontrainte.Nousappe-

lons testde onsistane letest d'appartenane

d'unoupledevaleursàlarelationrel(

i ).

Unesolutionestuneaetationdesvaleursauxva-

riablesquisatisfaittouteslesontraintes.Étantdonné

unCSP,lesquestionsqui seposentsontdesavoirs'il

existe une solution,d'en exhiber unesi telest leas,

ouenoredetrouvertouteslessolutions.Lapremière

questionpermet de dénirun problèmeNP-omplet.

Pourdesraisonsdesimpliiténousnouslimitons,dans

e papier, auxréseaux deontraintes binaires, les

ontraintes n'impliquent que deux variables. Dans le

asdesCSPbinaires,uneontrainteentrelesvariables

x

i et x

j

est notée C

ij

. Nous pouvonsassoier àtout

CSP binaire P = (X;D;C) un graphe G

P

= (X;C)

appeléle graphede ontraintesdanslequellesn÷uds

sontlesvariablesduréseau,etunearêterelieunepaire

den÷uds siet seulementsiily aune ontraintessur

les variables orrespondantes. L'ensemble des n÷uds

qui partagent une arête ave x

i

(le voisinage de x

i )

est notée (x

i

). Ainsi, j (x

i

)j représente le degré de

x

i

.Unevariablex

i

dontledegréest égalà1seraap-

pelésingletondegré.Undomained

i

estar-onsistant

ssi, 8a 2 d

i

;8x

j

2 X tel que

ij

2 C, 9b 2 d

j t.q.

(a;b) 2 rel(

ij

). b est appelé support de a par rap-

portàlaontrainte

ij

.UnCSPest ar-onsistantssi

8d

i 2D;d

i

6=;et d

i

est ar-onsistant.

3 Tehniques de résolution des CSP

Pour résoudre unCSP, on peut employerun algo-

rithme de reherhe en profondeur de type baktra-

king (BT) [6, 13℄. A haque étape de l'arbre de re-

herhe,on essayed'aeter une variable, siette af-

fetationproduitunonitunretourenarrièreestef-

fetué.Dansl'objetifderéduirel'espaedereherhe,

beauoupd'améliorationsonernantl'algorithmeBT

ont été proposées. Ces améliorations onernent es-

sentiellement les questions suivantes : quel type de

onsistaneloaledoit-onappliquer?Quelleestlapro-

hainevariableàaeter?et quedoit-onfaireenas

deonit?

Les tehniques qui ont été proposés dans l'obje-

tif de prendre en ompte les questions préédentes

peuvent être lassier en deux atégories : les ap-

(4)

trospetives(Look-bak):

Les approhes prospetives : elles détetent à

l'avanedesfuturessituationsd'éhe.Ellesee-

tuentune sortede ltragedanslesdomainesdes

variablesnonenoreinstaniées.Ellessuppriment

donlesvaleursinompatiblesavel'instaniation

(solutionpartielle)ourante.Celtrageest,engé-

néral,réaliséàl'aidedetehniquesbaséessurdes

propriétés de onsistaneloale.Les algorithmes

lesplusonnusdanseadresontleForwardChe-

kinget MAC(MaintainingArConsisteny).

Les approhes rétrospetives : elles onsistent à

déterminer la ause de l'éhe et ensuite ee-

tuer unretour enarrière diretementverslava-

riable responsable de l'éhe et non pas vers la

variable préédente. Onpeut ainsi éviterdes re-

tours en arrières inutiles. Parmi es tehniques,

nous pouvonsiter l'algorithme de bakjumping

[11℄, onit-direted bakjumping [16℄ et dyna-

mibaktraking[12℄.

D'autresapprohesombinentlesdeuxpréédentes.

Parexemple, on peut intégreronit-direted bak-

jumpingaveforward-heking(FC-CBJ)[16℄.Ilsem-

bleraitqu'ilyaunerelationinverseentrelesapprohes

prospetives et les approhes rétrospetives, plus on

eetue du ltrage en avant moins on fait de retour

en arrière.Pour plus de détails voirle livre de Rina

Dehter[8℄.

Laomplexitéentempsdeesalgorithmesresteex-

ponentielle dans le pire des as. Par onséquent, la

omparaisondes performanes dees algorithmesest

basée essentiellement sur l'analyse de résultats expé-

rimentauxobtenussurdiérenteslassesdeCSP.Ces

résultats permettent d'observer le omportement de

es algorithmes. Il semble que MAC soit le meilleur

proédure de résolution de CSP et partiulièrement

sur des CSP diiles de grande taille. Par exemple,

Bessière et Regin[5℄ ont armé : MAC is not only

more eient than FC to solve large pratial pro-

blems, but itis also really moreeient thanFC on

hardandlargerandomproblems.

D'autresonlusionsonernantl'eaitéd'autres

algorithmes de résolution se trouvent dans la

littérature[1, 16℄. Nous pensonsque lesperformanes

des diérentes algorithmes de reherhe sontliées au

hoixfait:

dans la façon dont es algorithmes sont implé-

mentés:heuristiquesutiliséespourlehoixdeva-

riableset/oudevaleurs,ombinaisond'approhes

prospetivesetrétrospetives.

dans les aratéristiques des instanes testées :

taille,densitédugraphedeontraintes,duretédes

niques prospetivessont en général très eaessur

des instanes aléatoires diiles. D'un autre oté,

les approhes rétrospetivesse montrent plusperfor-

mantessurdesproblèmesréels[19,2,22,14,9℄.Notre

intuition est que es observations seraient valables

danslesadredesCSP.

Dansepapier,nousnousintéressonsauomporte-

mentdes approhes prospetiveset leur performane

sur des problèmes générés aléatoirement. Plus pré-

isément, nous onsidérons les deux algorithmes les

pluspopulaires:Forward-Cheking(quimaintientune

formepartielledeltrage)etMAC(quieetueunl-

trageparonsistaned'arsurl'ensembledesvariables

non aetées. L'objetif prinipal de e travail n'est

pasdedéterminerlequeldesdeuxalgorithmesdomine

l'autre.Nousherhonsàaratériserlesinstanessur

lesquellesl'unestmeilleurquel'autre.Notreintuition

estqueleniveaudeltrage(partieloutotal)àappli-

querdépend des problèmestestés, plus laduretédes

ontraintesestélevée,plusleltrageenavantestutile.

4 FC versus MAC

Dansettesetion,nousomparonslaperformane

deFCetMACsurdesproblèmesaléatoires.Nousdé-

rivonslesprinipauxpointsonernantl'implémenta-

tiondees deuxalgorithmes.Dans lesdeuxas,nous

employonslesmêmesheuristiquesetlamêmeétapede

pré-traitement:

heuristiques :la prohaine variableàaeter est

hoisieselonl'heuristiquelapluseaedom/deg

[5℄. Cetteheuristiquehoisitlavariablequimini-

mise le rapport entre la taille de domaine et le

degrédelavariable.

pré-traitement:une étapede ltrageest réalisée

par onsistane d'ar avant la résolution. Nous

utilisonsl'algorithmeAC8[7℄poureetuerette

étape.

TandisqueFCréaliseune formelimitéedeltrage

pendant la reherhe (propagation par rapport aux

voisinsfutursdelavariableourante),MACmaintient

àhaqueétapedelareherheunCSPar-onsistant.

Ainsi,MACpeutgrâeaumaintiendelaonsistane

d'ardéonneterlesvariablessingletonvaleuretsin-

gletondegré[18℄.

LesexpérimentationsontétéeetuéessurdesCSP

générésaléatoirementselonlemodèleB[10℄.Cegéné-

rateuradmetquatreparamètres:

lenombredevariablesN

latailleinitialedesdomainesD

la proportion p1 des ontraintes dans le réseau

(ou le nombre de ontraintes C donné par C =

(5)

par les ontraintes (ou T le nombre de ouples

interditsT =p2DD)

Danslasuite,nousutilisonsC etT aulieudep1et

p2.Cestappeléladensité dugraphedeontrainteset

T ladureté desontraintes.Les lassestestéesseront

dondésignéesparlequadruplet<N;D;T;C>

Avantdeprésenterune omparaisonexpérimentale

entre FCet MAC, nous rappelonsquelques résultats

extraitsdel'artiledeBessièreet Regin[5℄.Dansleur

artile, ils omparent la performane de FC-CBJ et

MAC sur des CSP aléatoires.Les résultats montrent

que MAC est plus performant que FC-CBJ qui est

généralement meilleur que FC. On peut, don, dire

queMACestpluseaequeFC.Lerapportd'ea-

itédonné(siononsidèreletempsd'exéution)varie

entre2.16et476(MACpeutêtre476plusrapideque

FC-CBJ).Latable1,rappelleleslassestestées dans

l'artilementionné[5℄

<N;D;T;C>

<35;6;4;501>

<35;9;27;178>

<50;6;8;325>

<50;20;300;95>

<100;12;110;120>

<125;3;1;929>

<350;3;1;2292>

<250;3;3;391>

<350;3;3;524>

Tab.1Classesextraitesde[5℄

A l'exeption des trois premières lasses (elles ne

sontpasvraimentdiiles), lesautreslassesorres-

pondentàdesproblèmesdontlegraphedeontraintes

est peu dense. En plus, les problèmes issus des deux

dernièreslassessontar-inonsistantsequipeutêtre

prouvé par une étape de pré-traitement par onsis-

taned'ar.

Nous avons eetué des expérimentations sur des

CSP aléatoires an de omparer FC et MAC. Nous

avons hoisi des lasses pour lesquelles MAC est

meilleur que FC et d'autres pour lesquelles FC est

plusperformant.Lesrésultatssontreportésdansdeux

tables, la première montrentles problèmes FC se

montrepluseaetandisqueMAC estmeilleur sur

leslassesdeladeuxièmetable.

Lesritèresquenousonsidéronsdanslaomparai-

sonsont:lenombredetestsdeonsistane(#heks),

lenombreden÷udsvisités(#nodes)etletempsd'exé-

utionexpriméenseondes 1

.

1

LesexpérimentationsontétéréaliséessurunPCPentium4

sieurs lasses en modiant le nombre de variables N

et lataille desdomainesD.Dans l'objetifde traiter

des problèmes prohes de la phase de transition,

nous avons herhé pour haque ouple (N;D) la

valeurappropriée pourladureté(T)et lenombrede

ontraintes(C).

La table 2, présente les résultats sur une variété

de lasses. Pour haquelasse, nous avons généré20

ou 10 CSP (la deuxième olonne préise le nombre

de problèmes testés) et les résultats reportés or-

respondent à la moyenne des résultats sur les CSP

testés. La première olonne présente la lasse testée

(< N;D;T;C >). La deuxième indique le nombre

de problèmes onsistants et le nombre de problèmes

inonsistants (une ligne par atégorie). La troisième

et la quatrième olonnes donnent le nombre de tests

de onsistane eetués par FC et MAC respetive-

ment.La inquièmeet lasixièmeolonnesprésentent

le nombre de n÷uds visités par FC et MAC. Enn,

lesdeuxdernièresolonnesfournissentletempsd'exé-

utiondehaquealgorithme.Noussignalonsquenous

avonshoisideprésenterlesrésultatssurlesproblèmes

onsistants et sur eux inonsistants séparément. Ce

hoix permet d'avoir une idée sur le omportement

desalgorithmessuresdeuxatégories.

La table 2, montre que FC est meilleur que MAC

sur toutes les lasses si on onsidère le nombre de

tests de onsistane et le temps d'exéution omme

mesures d'eaité. Nous pouvons remarquer que le

graphe des ontraintes des lasses testées est dense

(pourertaineslasses, quand N = 20, legraphe est

omplet),equifaitlapartiularitédeeslasses.En

général, plus legraphe est dense, plus FC semontre

performant. FC peut être 2 à 5 fois plus rapide que

MAC selon la densité du graphe. Par exemple, le

rapportd'eaitésurleslasses<30;20;177;150>

et < 60;10;20;600 > (densité de graphe est de

33%) est d'environ 2. Ce rapport peut arriver à 5

sur les lasses dont le graphe est omplet (la lasse

<20;20;108;190>).Ces résultats montrent queFC

est plus performant que MAC sur des CSP dont le

graphedeontrainteestdense.

Danslatable 3,nousprésentonsquelquesrésultats

montrant que MAC est plus eae que FC sur des

CSP ave ungraphe de ontraintes peu dense. Nous

avons testé la lasse < 90;20;272;222 > dont la

densité de son graphe est d'environ 5.5%. La table

donne la moyenne des résultats sur 20 problèmes

aléatoires. Nous remarquons que, sur ette lasse,

MACestmeilleur queFC,lerapport deperformane

Références

Documents relatifs

Nous présentons ici différents algorithmes d’analyse pour grammaires à conca- ténation d’intervalles (Range Concatenation Grammar, RCG), dont un nouvel algorithme de type Earley,

Nous définissons ensuite l’arbre de clusters et les chefs en se basant sur la profondeur de chaque noeud dans l’arbre : un chef est élu lorsque sa distance au chef plus haut dans

Nous présentons dans cette annexe les différentes données ayant permis de réaliser les figures du chapitre de résultats sur les classes de carrefours ainsi que les clusters que

Chapitre 4 MATAM, validation sur données expérimentales Dans ce chapitre, nous présentons une évaluation approfondie des résultats de MATAM sur des données de séquençage : un

Nous allons maintenant donner quelques détails sur notre système, pour cela nous présentons le savoir supporté par notre outil et nous analysons les difficultés que rencontrent

Dans cette section, nous présentons une étude expérimentale où nous évaluons l’efficacité de notre algorithme pour le clustering structurel de grands graphes distribués..

En nous basant sur quelques définitions populaires, ainsi que sur des recherches spécialisées montrant la dimension fondamentalement mythique du western, nous avons

Après quelques définitions, nous présenterons les opé- rations élémentaires sur les arbres ainsi que la grammaire correspondante. Nous introduirons ensuite les