HAL Id: inria-00085789
https://hal.inria.fr/inria-00085789
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.
Inférence d’Inconsistances pour la Résolution de MAX-N CSP
Fayçal Djerourou, Hachemi Bennaceur
To cite this version:
Fayçal Djerourou, Hachemi Bennaceur. Inférence d’Inconsistances pour la Résolution de MAX-N CSP.
Deuxièmes Journées Francophones de Programmation par Contraintes (JFPC06), 2006, Nîmes - Ecole
des Mines d’Alès / France. �inria-00085789�
Inférene d'inonsistanes pour la résolution du
Max-CSP
Fayçal Djerourou Hahemi Bennaeur
LIPN-UMR CNRS 7030- Institut Galiliée,Université de Paris Nord,
99,avenue Jean-Baptiste Clément,93430, Villetaneuse, Frane.
{Fayal.Djerourou,Hahemi.Be nna eur} lip n.un iv-p ari s13. fr
Résumé
Leprésent artileporte surla résolutionexate du
problèmedesatisfationmaximaledeontraintes(Max-
CSP).La résolutiondu Max-CSP est généralementef-
fetuéeàl'aided'algorithmesdetypebranhandbound.
L'eaitédeesalgorithmesdépendétroitementdela
borneinférieuredelavaleurduMax-CSPqu'ilsutilisent
auoursdelareherhe. Lesbornesinférieurespourle
Max-CSP se basent, en général, sur le onept d'ar
onsistane (AC). Nous présentons ii un méanisme
d'inférenes d'inonsistane entre valeurs dans le but
d'augmenter les valeurs des bornes inférieures basées
sur l'AC. Cei est eetué en détetant les inonsis-
tanes ignorées par les ompteurs d'ar-inonsistane
dirigéeda. L'inférened'inonsistanespourunevaleur
a d'unevariablenon instaniéei,onsiste àrajouterà
laontributiondealenombredevariablesfuturesdont les valeurs partiipantau alul de la borne inférieure
sontinohérentesavea. Uneimplémentationdeette tehniqueestprésentéeettestéesurdesMax-CSPaléa-
toires.
Abstrat
This paperdeals withanexat algorithmdesigned
forsolving over-onstrainedproblems. It iswellknown
that the eieny of aomplete algorithm deeply de-
pends on the quality of its lower bound. This lower
bound should be as large as possible and as heap to
omputeaspossible. Weproposeanewtehniquewhih
enhanesthe lassialaronsistenylowerboundsfor
Max-CSP.Inadditiontoinonsisteny anddiretedar
onsistenyountsofavalue,weinferfurtherinonsis-
teniesresultingfrominonsisteniesbetweenthisvalue
andminimavaluesofunassignedvariables.Wewillshow
in this paper that this idea an be generalized to the
Weighted CSP framework (see setion 4.2). The in-
ferred inonsistenies tehniqueis embedded in a for-
ward hekingalgorithm, it isused to tightthe lower
bound during the searh in order to lter future do-
mains. This newalgorithm, PFC-VRDAC (PFC-Value
infereneReversibleDiretedArConsisteny),isom-
paredwithsome referene algorithmsfor solving Max-
CSP.Obtainedresultsonsomerandomproblems,show
improvementsintimeandsearheort.
1 Introdution
Le problèmede satisfationde ontraintes (CSP) est
donné par un ensemble de variables soumises à des
ontraintes. Chaque variable possède un domaine
disrêt et ni. Le but est d'aeter à haune des
variables une valeur de son domaine an de satis-
fairel'ensembledesontraintes.Nousnousintéressons
ii aux problème de satisfation de ontraintes sur-
ontraint oû la satisfation de toutes les ontraintes
du CSP est impossible. Dans e as, le but est de
herherl'instaniation omplètesatisfaisantlemaxi-
mumde ontraintes(Max-CSP). LeMax-CSP est un
problème d'optimisation. Dans [13℄, le CSP a été
étendu vers un modèle plus général le problème de
satisfation de ontraintes valué (VCSP). Ce modèle
prend en ompte les ontraintes molles et rend pos-
sible l'expression despréférenes entre solutions. En
VCSP des valuations sont assoiées aux
n
-uplets etle oût d'une instaniation omplète est alulé en
agrégeant les valuations des
n
-uplets appartenant à ette instaniation. L'objetif en VCSP est de trou-ver l'instaniation omplète ayant le oût minimal.
Dans[6℄,leWeightedCSP,unaspartiulierduVCSP
est proposé. En WCSP les valuations sont des en-
tierspositifsetl'opérateurd'agrégationestl'addition.
Le VCSP et ses spéiations (WCSP et Max-CSP)
possèdent plusieurs domaines d'appliation tels que
l'alloationderessoures,labioinformatique,leraison-
129
nementprobabiliste et l'ordonnanement.
LarésolutionexateduMax-CSP estgénéralement
eetuée ave des méthodes suivant le shéma du
branhandbound. Cesméthodesparourentl'arbrede
reherhedes solutionsen profondeur d'abord. Pour
dirigerla reherhe, ils utilisent une borne inférieure
dunombreminimaldeontraintesviolées. L'eaité
d'unbranhandbounddépendétroitementdelaqual-
itédesaborne,elle-idoitêtrelaplusprohepossible
de lavaleur duproblème et non oûteuseà aluler.
Diérentes bornes inférieures ont été dénies pour le
Max-CSP, ellessontbasées sur le onept d'aron-
sistane(AC)[1,3,4,6,7,8,9,14,15℄,ou/etsurdes
tehniques exploitantla struture duproblème Max-
CSP[5, 12℄.
Dans et artile, nous présentons une tehnique
d'inférened'inonsistanespouraméliorerlesbornes
inférieureslassiquesbaséessurl'aronsistane. Cei
est eetué en inférant desinonsistanes non dété-
tées parles bornes inférieures lassiques. Dans ette
tehnique, pour une valeur d'une variable non in-
staniée (variable future), nous omptons le nombre
d'inonsistanes qu'elle a ave les valeurs des vari-
ablesnon instaniées partiipantdans le alul de la
borneinférieure. Parexemple,dansleasd'uneborne
inférieure utilisant les ompteurs d'inonsistanes et
d'inonsistanesdirigées (i+da), pour une valeur
a
d'unevariablenon instaniée, nousalulonsle nom-
bre d'inonsistanes, non alulées par la borne in-
férieure, entre
a
et les valeurs des variables futuresayant le minimum i+da. Par omparaison aux
bornesinférieureslassiques,notretehniquepeutra-
jouterdesinonsistanesauompteursdade
a
mêmesiettedernièrepossèdedessupportssurlesvariables
futures. Nous montrons omment utiliser ette nou-
velle borne dans un algorithme de réolution omplet
pour antiiperlesretours arrièreet ltrerlesvaleurs
desvariablesfutures. Cettetehniqueaété ombinée
avel'algorithmePFC-RDAC[8℄,lenouvelalgorithme
PFC-VRDAC(PartialForwardCheking Value infer-
ring Reversible Direted Ar Consisteny)aété testé
sur quelquesinstanes Max-CSP aléatoires. Les pre-
miers résultas sont omparés ave eux obtenus par
PFC-MRDAC [7℄, un algorithme longtemps onsid-
éré ommeune référenepour larésolution du Max-
CSP.Lesgainsentempsetennombredenoeudsvis-
itées,montrentl'eaitédel'utilisationdel'inférene
d'inonsistanesavelesbornes lassiquespourlaré-
solutionduMax-CSP.
Ce artile est organisé omme suit. La setion 2
présente quelques notions de base relatives au prob-
lèmeCSP.Lasetion3déritl'utilisationdel'inférene
d'inonsistanesdanslebut d'améliorerlesbornesin-
férieuresbasées sur lesompteurs i+da. Les avan-
tages de la nouvelleborne inférieure par apport aux
bornes lassiques sont dérits dans la setion 4. La
proédure de alul d'inférene d'inonsistanes est
donnée dans la setion 5. La setion 6 traite des
questions relatives à la mise en ouvre de l'infèrene
d'inonsistanes dans un branh and bound pour le
Max-CSP. Lasetion7présentequelquesrésultasex-
périmentaux préliminaires obtenus sur les Max-CSP
aléatoires. Enn, lasetion8traequelquesperspe-
tivespourlapoursuitedeetravail.
2 Préliminaires
2.1 CSPetMax-CSP
Un problème de satisfation de ontraintes (CSP)
est déni par un ensemble ni de variables
X = {1, . . . , n}
, un ensemble de domainesnis et disrêtsD = {d
1, . . . , d
n}
et un ensemble de ontraintesC = {C
1, . . . , C
m}
. Chaque variablei
prend ses valeursdans ledomaine
d
i. ChaqueontrainteC
j estdéniesur un sous ensemble de
X
appelé saportée et notéscope(C
j)
. UneontrainteC
j estunsousensembleduproduitartésien
d
i1×d
i2×. . .×d
ip,
ave{i
1, . . . , i
p} ∈ scope(C
j)
, elle ontient l'ensemble den
-uplets au-toriséspourlesvariablesde
scope(C
j)
.L'instaniationd'unevariable
i
onsiste àluiaeterune valeurdepuisson domaine
d
i. Uneinstaniation est ditepartielle sielleportesurunsousensembledevariablesde
X
. Elleestditeomplètesielleportesurtouteslesvariablesde
X
.La solution d'un CSP est une instaniation om-
plètequi satisfaittouteslesontraintesde l'ensemble
C
. Si une telle instaniationn'existepas, leCSP est dit inonsistant. Dans e as, il est intéressant deherher l'instaniation omplète satisfaisant le plus
de ontraintes, 'estla satisfationmaximalede on-
traintes(Max-CSP)[4℄.
Ces dernièresannées, le modèle CSP aété étendu
versunmodèleplusgénéralleproblèmedesatisfation
de ontraintesvalué(VCSP)[13℄. Cenouveaumodèle
prend enomptelesontraintesmolles et rendpossi-
blelehoixentre solutionsenassoiantunevaluation
àhaque
n
-uplet d'uneontrainte. En VCSP,leoûtglobale d'une instaniation omplète est l'agrégation
desvaluationsdes
n
-upletappartenantàetteinstan- iation. La solution d'un VCSP est une instania-tion omplète de oût minimal. Un as partiulier
duVCSP,leCSPbinairepondéré (WCSP),est déni
dans [6℄. Dans e modèle, les ontraintes sont soit
unaires (
C
i), soit binaires (C
ij). A haque valeura
d'unevariable
i
est assoié unoûtunitaireC
i(a)
, etàhaqueouple
(a, b) ∈ d
i×d
jd'uneontraintebinaireC
ij∈ C
est assoié unoûtC
ij(a, b)
. Ces oûtssontdes naturelset l'opérateurd'agrégationestl'addition
(+). RemarquonsqueleMax-CSPpeutêtreéritsous
forme d'un WCSP binaire où à tout ouple interdit
(inohérent) onassoie unoût 1et à unouple au-
thorisé unoût nul. Lasolutionestune instaniation
omplèteminimisantlasommedesoûtsdesouples.
Cei revient à trouver l'instaniation omplète min-
imisantlenombredeontraintesviolées.
Danset artile,
i, j, k, . . .
désignentdesvariableseta, b, c, . . .
des valeurs.(i, a)
désigne la valeura
dela variable
i
.P
désigneune instaniation partielle etF
l'ensemble des variablesnon enoreinstaniées(li-bresoufutures). On appelvaleur future toutevaleur
d'une variable de
F
. La valeur(i, a)
est inonsis-tante ave la variable
j
si elle est inohérente avetoutes les valeurs de
d
j. Soit la valeur future(i, a)
,ic
iaest lenombredevaleursdeP
inonsistantesave(i, a)
. Soitlafontiondac(i, a, j)
dénie ommesuit.dac(i, a, j) = 1
si(i, a)
est inonsistanteavej
etsilesinonsistanes sont omptés de
j
versi
; 0sinon. Lenombre d'inonsistanes d'ar dirigées,
dac
ia, est lenombredevariables
j ∈ F
telquedac(i, a, j) = 1
. Soitle Max-CSP
P
,P
P est le Max-CSPP
obtenu aprèspropagation de l'instaniation partielle
P
etV (P )
lenombreminimaldeontraintesvioléesdans
P
.2.2 Survoldes bornes inférieuresenMax-CSP
L'un des premiers algorithmes pour la résolution du
Max-CSP,PFC[4℄utiliseuneborneinférieuresimple.
Elleestaluléeenrajoutantàladistane(leoûtde
l'instaniationpartielle
P
)lasommedesic
minimumsdes variables futures
F
(LB(P)
P F C= distance(P ) + P
i∈F
min
a∈di(ic
ia)
). Cette borne a été améliorée,dansPFC-DAC[14℄,enonsidérantlesinonsistanes
entrelesvariablesfutures. Endénissantunordresur
les variables et en dirigeant legraphe de ontraintes
suivant et ordre, PFC-DAC utilise les ompteursi
et da et alule sa borne inférieure omme suit :
LB(P )
DAC=distance(P)+ P
i∈F
min
a∈di{ic
ia+ dac
ia}
.Une sensible améliorationdePFC-DAC,l'algorithme
PFC-RDAC, a été proposée dans [8℄. A haque
instaniation d'une variable, PFC-RDAC realule
une bonne orientation des ontraintes entre les vari-
ables futures dans le but d'augmenter lasomme des
i+da minimums. Dans[7℄,lapropriétéd'aronsis-
tane dirigée est maintenue durant larésolution. Ce
maintienonduitgénéralementàl'inrémentationdes
ompteursdasetdonàunepossibleaméliorationde
laborne inférieure. Dansasadedda [15℄,lesomp-
teurs das sont augmentés en inférant des nouvelles
inonsistanes ense basantsur l'ordreutilisé dans le
alul des das. Ce proessus d'inférene est limité
par l'ordre statique des variables. De plus, il nées-
site une gestion des inonsistanes redondantes an
de maintenirune borne inférieure valide. Dans [1℄ la
la onsistene d'ar pondérée (WAC), une borne in-
férieure ne néessitant auun ordre sur les variables
est proposée. ContrairementàDAC et RDAC, dans
WAC les inonsistanes sont alulées dans les deux
sens. An d'éviterlesredondanes, deux poids om-
plémentaires
w ≤ 1
et1−w
sontassoiésauxdeuxsensdelaontraintes. Dans[5℄,uneborne inférieurepour
le Max-CSP est alulée en partitionnant l'ensemble
des ontraintes en plusieurs sous ensembles appelés
mini-bukets. Dans[12℄(Conit Sets),desnouvelles
ontraintes sont rajoutées au Max-CSP dans le but
d'identierdes inonsistanesnon détetées parl'ar
onsistanedirigée.
Dans [6, 10℄, de nouvelles onsistanes loales
(NC,NC*,AC,AC*) sont dénies pour le WCSP.
Théoriquement, ei généralise les onsistanes las-
siques au WCSP et permet de dénir des nouvelles
bornes inférieures beauoup plus élégantes. Cepen-
dant, les résultats expérimentaux sur les Max-CSP
aléatoiresontmontréquelesalgorithmes(PFC-RDAC
etPFC-MRDAC)proposésdans[7,8℄restentplusef-
aes. Dans [9℄, en sebasantsur les travauxde[2℄,
des nouvellesformes de onsistane loale(l'ar on-
sistanedirigée)DAC*and(l'aronsistaneomplète
dirigée)FDAC*,sontdéniespourleWCSP.Comme
dans le as du Max-CSP, DAC* et FDAC* néessi-
tent qu'un ordre statique soit dénisur les variables
duWCSP. LesalgorithmesMDAC*etMFDAC*,qui
maintiennentrespetivementlesonsistanesDAC*et
FDAC*, ont été développés et testés sur des Max-
CSPsaléatoires. Lesrésultatsobtenusontmontréque
lemaintiendeFDAC*sembleêtrelemeilleureniveau
de onsistane pourla résolution desMax-CSP aléa-
toires. Réemmentdans[3℄,unenouvelleformed'ar
onsistane est dénie, 'est la onhérene d'ar ex-
istentielle EDAC*. EDAC* renfore la propriété de
FDAC*andeserapproherleplusdelaonsistane
d'ar omplète. MEDAC*, un algorithme qui main-
tientlapropriétéEDAC*,aétédeveloppéettestésur
des WCSPs aléatoires et réels. Les tests ont montré
que MEDAC* est plus eae que MFDAC* sur de
nombreuseslassesdeproblèmes.
3 Amélioration des bornes in-
férieures lassiques par inférene
d'inonsistanes
Sans perte degénéralité,nous ne onsidéronsqueles
bornes inférieures basées sur les ompteurs i+da.
L'inférene d'inonsistanespeutégalementêtre util-
iséeavelesbornesinférieuresbaséessur l'aronsis-
taneommel'aronsistanepodérée WAC.
Inférence d’inconsistances pour la résolution du Max−CSP 131
3.1 L'inférene d'inonsistanes après
l'instaniationd'une variable
Pendant l'instaniation d'une variable
i
par lavaleur
a ∈ d
i, le branh and bound alule uneborne inférieure du nombre de ontraintes violées
par l'instaniation partielle
P ∪ {(i, a)}
. Cetteborne inférieure est donnée par la formule suiv-
ante,
LB(P, i, a) = distance(P) + ic
ia+ dac
ia+ P
j∈F
min
a∈dj{ic
ja+ dac
ja}
. La sommeic
ia+ dac
iareprésentelaontributiondelavaleur
(i, a)
dansetteborne. Sous ertaines onditions, ette ontribution
peut être augmentée même si
(i, a)
est onsistanteave quelques variables futures
F
. De plus, à ausedel'orientationdesontraintes,lesinonsistanesave
quelquesvariablesde
F
nesontpasomptéesmêmesi(i, a)
estinonsistanteaveesvariables. Enutilisant es remarques, nous proposons dans e qui suit unetehniqued'inférened'inonsistanesand'améliorer
lesbornesinférieuresbaséessuri+da.
Soit
(i, a)
lavaleuratuellementinstaniéeài
et soitj ∈ F
une variable future partageant une ontrainteave
i
. Considéronslasituationsuivante:• b
est l'unique valeur dej
minimisant la sommei+da.
•
le ouple(i, a)
et(j, b)
est inohérent etdac(i, a, j) = dac(j, b, i) = 0
.Soit
k ≥ 0
le nombredevariables futures vériantlesonditionsi-dessusetpartageantuneontrainteave
i
. Alorslaborneinférieure assoiéeàlavaleur(i, a)
,LB(P, i, a)
, peut être inrémentée dek
. Comme lesinonsistanesrajoutéesnesontaluléesnipardas,
niparis,
LB(P, i, a) + k
peutêtreonsidéréeommeuneborne inférieureduMax-CSP.
Dans le préédent paragraphe, nous avons onsid-
éré les variables futures ave un minimum unique.
L'inférene d'inonsistanes est aussi appliable ave
les variables futures possédant plusieurs valeurs at-
teignant le minimum i+da. Soit
M(j)
l'ensembledes valeursde
j
ayant une somme i+da minimale.Laquantité à rajouter àla ontribution de lavaleur
(i, a)
dansLB(P, i, a)
est donnéepar :Inf er(i, a) = P
j∈F
min
b∈M(j){r(i, a, j, b)}
,oùr(i, a, j, b) =
1
si(i, a)
et(j, b)
sontinohérentset,
dac(i, a, j) = 0
etdac(j, b, i) = 0 0
sinonLa propriété suivante montre que
LB
Inf er(P, i, a) = LB(P, i, a) + Inf er(i, a)
est une borne inférieure dunombre de ontraintes violées par toute instania-
tion omplète extension de l'instaniation partielle
P ∪ {(i, a)}
.Propriété1. SoientleMax-CSP
P
etl'instaniation partielleP
,LB
Inf er(P, i, a)
est une borne inférieurede
V (P
P∪{(i,a)})
.Preuve. Soit l'instaniation omplète
A = (a
1, a
2, . . . , a
n)
extension deP
avea
aetée ài
. Le oût deA
, le nombre de ontraintes violéespar
A
, est noté pardistance(A)
. SoitLB(A, i, a) = distance(P )+ic
ia+dac
ia+ P
j∈F
(ic
jaj+dac
jaj)
où:• distance(P)
repésente le nombre de ontraintesvioléesparl'instaniation partielle
P
.• ic
ia+ dac
ia représente le nombre de ontraintesviolées entre
(i, a)
et l'instaniation partielleP
et unesousestimation dunombredeontraintes
violéesentre
(i, a)
etlesvariablesfutures.• P
j∈F
(ic
jaj+ dac
jaj)
est une sous estimation dunombre de ontraintes violées entre les valeurs
a
j, j ∈ F
deA
,etlenombredeontraintesvioléesentrelesvaleurs
a
j, j ∈ F
deA
etl'instaniation partielleP ∪ {(i, a)}
.Pardénition nousavons
distance(A) ≥ LB(A, i, a)
.Nous allons d'abord prouver que
ic
jaj+ dac
jaj+ r(i, a, j, a
j) ≥ min
a∈dj{dac
ja+ ic
ja} + min
b∈M(j){r(i, a, j, b)}
. Commeic
jaj+ dac
jaj≥ min
a∈dj{dac
ja+ ic
ja}
alors l'inégalité est vériée sir(i, a, j, a
j)≥min
b∈M(j){r(i, a, j, b)}
.Considérons maintenant le as où
r(i, a, j, a
j) = 0
et
min
b∈M(j){r(i, a, j, b)} = 1
et supposons queic
jaj+ dac
jaj+ r(i, a, j, a
j) < min
a∈dj{dac
ja+ ic
ja} + min
b∈M(j){r(i, a, j, b)}
, alorsic
jaj+ dac
jaj<
min
a∈dj{dac
ja+ ic
ja} + 1
e qui implique queic
jaj+ dac
jaj≤ min
a∈dj{dac
ja+ ic
ja}
. Dona
j∈ M(j)
etr(i, a, j, a
j) = 1
,equiestenontradi-tionaveleshypothèses.
En sommant sur l'ensemble des variables
futures, nous avons
P
j∈F
(ic
jaj+ dac
jaj+ r(i, a, j, a
j)) ≥ P
j∈F
min
a∈dj{dac
ja+ ic
ja} + P
j∈F
min
b∈M(j){r(i, a, j, b)}
. Cetteinégalitépeutêtreériteommesuit.
P
j∈F
(ic
jaj+ dac
jaj+r(i, a, j, a
j))≥
P
j∈F
min
a∈dj{dac
ja+ic
ja}+Inf er(i, a)
. Enrajoutantdistance(P )+ic
ia+dac
iaauxdeuxtésdel'inégalité nousavonsLB(A, i, a) ≥LB
Inf er(P, i, a)
.La nouvelle borne inférieure
LB
Inf er(P, i, a)
estau moins égale à
LB(P, i, a)
et au plus égale àLB(P, i, a) + ρ(i)
, oùρ(i)
est le nombre devariablespartageantune ontraintesave
i
.3.2 L'inférene d'inonsistanes pendant le l-
trage
Leproessusdeltrageestutilisépartouslessolveurs
Max-CSP, avant et au ours de la reherhe. Le