Stochastic Constraint Programming

From: AAAI Technical Report FS-01-04. Compilation copyright © 2001, AAAI (www.aaai.org). All rights reserved.
Stochastic
Constraint Programming
Toby Walsh
Departmentof ComputerScience
University of York
York
England
twOcs,york.ac. uk
Abstract
act nowand observe later. For example, we mayhave to
decide nowwhichnurses to haveon duty and only later discover the actual workload.Wecan easily invert the instantiation order if the application demands,
with the stochastic
variables givenvalues before the decisionvariables are set.
Tomodeldecisionproblems
involvinguncertaintyand
probability,weproposestochasticconstraintprogramming. Stochastic constraint programscontain both
decisionvariables(whichwecan set) andstochastic
variables(whichfollowsomeprobabilitydistribution),
and combine
togetherthe best features of traditional
constraintsatisfaction,stochasticintegerprogramming,
andstochasticsatisfiability. Wegive a semantics
for
stochastic constraint programs,and proposea number
of completealgorithmsand approximation
procedures.
Usingthesealgorithms,weobservephasetransitionbehaviorin stochasticconstraintprograms.
Interestingly,
the cost of bothoptimization
andsatisfactionpeaksin
the satisfaction phaseboundary.
Finally, wediscussa
number
of extensionsof stochasticconstraintprogrammingto relax variousassumptionslike the independencebetween
stochasticvariables.
Introduction
Manyreal world decision problems contain uncertainty.
Data about events in the past maynot be knownexactly
dueto errors in measuring
or difficulties in sampling,whilst
data about events in the future maysimply not be known
with certainty. For example, whenscheduling powerstations, we need to cope with uncertainty in future energy
demands.As a second example, nurse rostering in an accident and emergencydepartmentrequires us to anticipate
variability in workload.Asa final example,whenconstructing a balancedbondportfolio, wemustdeal with uncertainty
in the future price of bonds. Todeal with such situations,
we propose an extension of constraint programming
called
stochastic constraint programming
in whichwe distinguish
betweendecision variables, whichweare free to set, and
stochastic (or observed)variables, whichfollowsomeprobability distribution.
Stochastic constraint programs
Wedefine a numberof modelsof stochastic constraint programming
of increasing complexity.In an one stage stochastic constraint satisfaction problem(stochastic CSP),the decision variables are set before the stochastic variables are
given values. This can modelsituations in whichwe must
Constraintsare defined(as in traditional constraint satisfaction) by relations of allowedtuples of values. Constraints
can, however,be implemented
with specialized and efficient
algorithms for consistency checking. The stochastic variables independentlytake values with probabilities given by
a fixed probabilitydistribution. Wediscuss later howto relax these assumptions, and howthis modelcompareswith
related frameworks
like mixedconstraint satisfaction. Aone
stage stochasticCSPis satisfiable iff there exists valuesfor
the decision variables so that, given randomvalues for the
stochastic variables, the probabilitythat all the constraints
are satisfied equals or exceedssomethreshold probability,
8. Theprobabilistic satisfaction of constraints allowsus to
ignore worlds(values for the stochastic variables) whichare
too rare to require consideration.
In a twostage stochastic CSP,there are twosets of decision variables, Vatand Vd2,and twosets of stochastic variables, Vet and V82.Theaim is to find values for the variables in Vat, so that given randomvalues for Vst, we can
find values for Va2,so that givenrandomvalues for V82,the
probabilitythat all the constraintsare satisfied equalsor exceeds 8. Notethat the values chosenfor the secondset of
decision variables Va2are conditionedon both the values
chosenfor the first set of decision variables Vat and on the
randomvalues given to the first set of stochastic variables
Vst. This can modelsituations in whichitems are produced
and can be consumedor put in stock for later consumption.
Future productionthen dependsboth on previous production
(earlier decision variables) and on previousdemand
(earlier
stochastic variables). A mstage stochastic CSPis definedin
an analogouswayto one and two stage stochastic CSPs.
A stochastic constraint optimization problem(stochastic
COP)is a stochastic CSPplus a cost function defined over
the decision and stochastic variables. Theaim is to find a
solution that satisfies the stochastic CSPwhichminimizes
(or, if desired, maximizes)the expectedvalue of the cost
function.
Copyright@2000,American
Associationfor Artificial Intelligence(www.aaai.org).
All rights reserved.
129
Production planning example
The followingmstage stochastic constraint programmodels
a simple mquarter production planning problem. In each
quarter, there is a equal chancethat we will sell anywhere
between100 and 105 copies of a book. To keep customers
happy,wewantto satisfy demandin all mquarters with 80%
probability. At the start of each quarter, wemustdecidehow
manybooksto print for that quarter. This problemcan be
modellingby a mstage stochastic CSP.There are mdecision variables, zi representingproductionin each of the ith
quarter. Thereare also ra stochastic variables, Yl representing demandin the ith quarter. Thesetakes values between
100and 105with equal probability. Thereis a constraint to
ensurefirst quarter productionmeetsfirst quarter demand:
Xl ~> Yl
Thereis a also constraint to ensure secondquarter production meetssecondquarter demandeither plus any unsatisfied
demand
fromthe first quarter or less any stock carried forwardfromthe first quarter:
x2 > y2 + (yl - xl)
Andthere is a constraint to ensure jth quarter production
(j >_ 2) meetsjth quarter demandeither plus any unsatisfied demandfromearlier quarters or less any stock carried
forwardfromearlier quarters:
j-1
i=l
Wemust satisfy these mconstraints with a threshold probability 0 = 0.8. This stochastic CSPhas a numberof solutions includingxl = 105for each i (i.e. alwaysproduceas
manybooks as the maximum
demand). However,this solution will tend to producebookssurplus to demandwhichis
undesirable.
Supposestoring surplus book costs $1 per quarter. We
can define a mstage stochastic COPbasedon this stochastic
CSPin whichweadditionally miminizethe expectedcost of
storing surplus books. Asthe numberof surplus booksin the
jth quarter is min(~"~=
1 xi - Yi, 0), wehavea cost function
overall quartersof:
m
j
all the stochastic variables. In a twostage stochastic CSP,
Vcontainsthe first set of decisionvariables, the first set of
stochastic variables, then secondset of decision variables,
andfinally the secondset of stochasticvariables.
Apolicyis a tree withnodeslabelled withvariables, starting withthe first variablein Vlabelling the root, andending
with the last variable in V labelling the nodesdirectly above
the leaves. Nodeslabelled with decision variables have a
single child, whilst nodeslabelled with stochastic variables
have one child for every possible value. Edgesin the tree
are labelled with values assigned to the variable labelling
the nodeabove.Finally, each leaf nodeis labelled with 1 if
the assignmentof values to variables along the path to the
root satisfies all the constraints, and 0 otherwise.Eachleaf
node correspondsto a possible world and has an associated
probability; if 81 is the ith stochastic variable on a path to
the root, di is the valuegivento si on this path(i.e. the label
of the followingedge), and prob(8i = di) is the probability that sl =di, then the probabilityof this worldis simply
l-IiProb(8i = dl). Wedefine the satisfaction of a policy
as the sumof the leaf values weightedby their probabilities. Apolicysatisfies the constraintsiff its satisfaction is
at least 0. Astochastic CSPis satisfiable iff there exists a
policy which satisfies the constraints. WhenS = {} and
/9 = 1, this reducesto the traditional definitionof constraint
satisfaction. Theoptimalsatisfaction of a stochastic CSP
is the maximum
satisfaction of all policies. For a stochastic
COP,the expectedvalue of a policy as sumof the objective
valuationsof each of the leaf nodesweightedby their probabilities. Apolicyis optimalif it satisfies the constraintsand
maximizes
(or, if desired, minimizes)the expectedvalue.
Consider again the production planning problemand a
two-quarter policy that sets xl = 104 and if yl > 100then
x2 = Yl + 1 else Yl = 100 and z2 = 100. Wecan represent
this policyby the following(partial) tree:
~1104
10~~~~-~1
x~106 xl05
10~0~Y2
i:l
Semantics
A stochastic constraint satisfaction problemis a 6-tuple
(V, S, D, P, C, 0) whereV is a list of variables, S is the
subset of V whichare stochastic varibles, D is a mapping
from V to domains,P is a mappingfrom S to probability
distributions for the domains,C is a set of constraints over
V,and0 is a thresholdprobabilityin the interval [0, 1]. Constraints are defined(as in traditional constraintsatisfaction)
by a set of variables anda relation giving the allowedtuples
of values for these variables. Variablesare set in the order
in whichthey appear in V. Thus, in an one stage stochastic CSP,Vcontains first all the decisionvariables and then
130
O0
x~104x ~ x~102 x~100
y2 .........
/~
01 11 11
000000 1 1 1 1 1 1
Bydefinition, eachof the leaf nodesin this tree is equally
probable. Thereare 62 leaf nodes, of whichonly 7 are labelled 0. Hence,this policy’s satisfaction is (36 - 7)/36,
and the policy satisfies the constraints as this just exceeds
0=0.8.
Complexity
Constraint satisfaction is NP-complete
in general. Notsurprisingly, stochastic constraint satisfaction movesus up the
complexityhierarchy. It maytherefore be useful for modelling problemslike reasoning underuncertainty whichlie
in these higher complexityclasses. Weshowhowa number
of satisfiability problemsin these higher complexityclasses
reduceto stochastic constraintsatisfaction. In eachcase, the
reduction is very immediate.Note that each reduction can
be restricted to stochastic CSPson binary constraints using
a hiddenvariable encodingto mapnon-binaryconstraints to
binaryconstraints. Thehiddenvariablesare addedto the last
stage of the stochastic CSP.
PP, or probabilistic polynomialtime is characterized by
the PP-completeproblem,MAJSAT
whichdecides if at least
half the assignmentsto a set of Booleanvariables satisfy a
given clausal formula. This can be reducedto a one stage
stochastic CSPin which there are no decision variables,
the stochastic variables are Boolean,the constraints are the
clauses, the twotruth valuesfor eachstochastic variable are
equally likely and the threshold probability 0 = 0.5. Anumber of other reasoningproblemslike plan evaluationin probabilistic domainsare PP-complete.
NPPPis the class of problemsthat can be solved by nondeterministic guessing a solution in polynomialtime (NP)
and then verifyingthis in probabilistic polynomial
time(PP).
Givena clausal formula, E-MAJSAT
is the problemof deciding if there exists an assignmentfor a set of Booleanvariables so that, given randomizedchoices of values for the
other variables, the formulais satisfiable withprobabilityat
least equal to somethreshold O. This can be reduced very
immediatelyto an one stage stochastic CSP. A numberof
other reasoningproblemslike finding optimal size-bounded
PP-com
plans pinlete.
uncertain domainsare NP
PSPACE
is the class of problemsthat can be solved in
polynomialspace. Note that NPC_ PP C_ NPPP C_ PSPACE.
SSAT, or stochastic satisfiability is an exampleofa PSPACEcomplete problem. In SSAT, we are given a clausal formulawith ra alternating decision and stochastic variables,
and mustdecide if the formulais satisfiable with probability at least equal to somethreshold 0. This can be immediately reducedto a mstage stochastic CSP.Anumberof other
reasoningproblemslike propositional STRIPSplanningare
PSPACE-complete.
Complete algorithms
Wepresent a backtrackingalgorithm, whichis then extended
to a forwardcheckingprocedure.
Backtracking
Weassumethat variables are instantiated in order. However, if decisionvariables occur together, wecan choosein
whichorder to instantiate them. A branchingheuristic like
fail first maytherefore be useful to order decisionvariables
whichoccur together. Onmeetinga decision variable, the
backtracking(BT) algorithmtries each value in its domain
in turn. Themaximum
value foundis returned to the previous recursive call. Onmeetinga stochastic variable, the BT
algorithmtries eachvalue in turn, and returns the sumof the
all answersto the subproblems
weightedby the probabilities
of their occurrence.At any time, if instantiating a decision
or stochastic variable breaks a constraint, we return 0. If
wemanageto instantiate all the variables withoutbreaking
any constraint, we return 1. The algorithmcan be trivially
adaptedto record the optimalpolicy.
131
procedureBT(i,Ol,Oh
ifi > n thenreturn 1
0:=O
q:=l
for each dj 6 D(zi)
ifxl E S then
p := prob(xi ~ dj)
q:=q-p
ff consistent(zi -} dj ) then
0 := 0 +px BT(i + 1~, o~-o-v
’ o~-o~
p
p J
if 8 > Ohthenreturn0
if 0 + q < 0l then return 0
else
if consistent(xi --~ dj) then
0 := max(O,BT(i+ 1,max(0, Ot),Oh))
if 0 > Ohthenreturn0
return 0
Figure 1: The backtracking (BT) algorithm for stochastic
CSPs.Thealgorithmis called with the search depth, i and
with upperand lowerbounds,8h and 01. If the optimalsatisfaction lies betweenthese bounds,BTreturns the exact satisfaction. If the optimalsatisfaction is Ohor more,BTreturns
a value greaterthan or equalto Oh.If the optimalsatisfaction
is 0~or less, BTreturnsa valueless than or equal to Or. S is
the set of stochasticvariables.
As in the Davis-Putnam
like algorithmfor stochastic satisfiability (Littman, Majercik, &Pitassi 2000), upperand
lower bounds, OhandOt are used to prune search. Bysetting Ot = Oh= 0, we can determine if the optimal satisfaction is at least 0. Alternatively, by setting Ot = 0 and
Oh = 1, we can determine the optimal satisfaction. The
calculation of upperand lowerboundsin recursive calls requires someexplanation. Supposethat the current assignmentto a stochastic variable returns a satisfaction of 0o. We
can safely ignore other values for this stochastic variable if
0 + p x 00 >_ Oh. That is, if 0o --> 0h--0
p " This gives the
upperboundin the recursive call to BTon a stochastic variable. Alternatively,wecannothopeto satisfy the constraints
adequatelyif O +p x Oo+q < Ot as q is the maximum
that
the remainingvalues can contribute to the satisfaction. That
is, if Oo
This gives the lower boundin the re- < 0~-0-q.
p
cursive call to BTon a stochastic variable. Finally, suppose
that the current assignmentto a decision variable returns a
satisfaction of 0. If this is morethat 0l, then any other values mustbetter 0 to be part of a better policy. Hence,we
can replace the lowerboundin the recursive call to BTon
a decision variable by max(0,Or). Note that value ordering heuristics mayreducesearch. For decision variables, we
shouldchoosevaluesthat are likely to return the optimalsatisfaction. For stochastic variables, we shouldchoosevalues
that are morelikely.
Forward checking
The ForwardChecking(FC) procedure is based on the
algorithm.Oninstantiating a decisionor stochastic variable,
the FCalgorithmchecks forwardand prunes values fromthe
domainsof future decision and stochastic variables which
breakconstraints. Checkingforwardsfails if a stochastic or
decision variable has a domainwipeout,or if a stochastic
variable has so manyvalues removedthat we cannot hope
to satisfy the constraints. As in the regular forwardchecking algorithm, we use an 2-dimensionalarray, prune(i,j)
to record the depth at whichthe value dj for the variable xi
is removedby forwardchecking.This is used to restore values on backtracking.In addition, each stochastic variable,
zi has an upperbound,qi on the probability that the values
left in its domaincancontribute to a solution. When
forward
checkingremovessomevalue, dj from xl, we reduce ql by
prob(xi --} dj), the probability that xi takes the value dj.
This reduction of qj is undoneon backtracking. If forward
checkingever reducesqi to less than 0t, wecan immediately
backtrackas it is nowimpossibleto set xi and satisfy the
constraints adequately.
procedureFC(i,Ot,Oh)
ifi > n then return 1
O:=O
for each dj E D(xi)
ifprune(i,j) = 0 then
ifcheck(xi -+ dj,Ot)then
if xi E S then
p := prob(zi ~ dj)
qi := qi - P
0 := O+p×
FC(i + -°)
1,°’-°-~’,°~
restore(i)
if 0 + qi < Ot then return 0
if 0 > Ohthenreturn 0
else
0 := max(O,FC(i+ 1,max(O,Ot),Oh))
restore(i)
if 0 > Ohthenreturn0
else restore(i)
return 0
Phasetransition behavior
As in other search problems(Cheeseman,Kanefsky,&Taylor 1991),stochastic constraint programsdisplay phasetransition behavior.Toinvestigate such behavior,wehavedevelopeda modelof randomstochastic constraint programswith
four parameters:the numberof variables n, the domainsize
m, the constraint density Pt, and the constraint tightness/~.
For simplicity, weassumethat decision and stochastic variables strictly alternate, and that eachof the rn valuesfor a
stochasticvariable are equallylikely. It wouldbe interesting
to relax these assumptions.
Binary constraints are generated betweentwo decision
variables or one decision and one stochastic variable. As
with the usual models of randomCSPs, Pl and pz can be
either probabilities or fractions. For example,we can construet a fraction Pt of the possible binary constraints. Alternatively, wecan add each possible binary constraint with
probability/71.Similarly, whengeneratingconflict matrices,
either we generate a fixed fraction ofpz.mz nogoodsor we
add each of the m2 possible nogoodswith probability p2. To
prevent trivially insoluble problems,we recommend
"flawless" conflict matricesare generatedso that each value has
at least one support(Maclntyreet al. 1998).
In Figure3, weplot the averageoptimalsatisfaction as the
constraint densityand tightness is varied. Asin traditional
constraint satisfaction, weobservea ridge alongwhichthere
is a rapid changein the satisfaction of problems.As might
be expected,there is a complexitypeakin the cost to solve
problemsalong this ridge. In Figure 4, weplot the search
cost to find the optimalsatisfaction. Althoughthis is an optimization and not a decision problemas often studied in
phasetransition experiments,we observea complexitypeak
along the ridge. The search cost for the decision problemof
determiningif a policy exists to meeta given fixed threshold 0 displaysa similar (but slightly lower)complexitypeak.
The runtime(as well as nodes visited) for FCdominates
at least a factor of 2 on all but the easiest problems.
procedurecheck(zl --+ dj,Ot)
for k =i + l to n
dwo:= true
fordt E D(zk)
if prune(k, i) = 0 then
ifinconsistent(xl ~ dj,xk ~ all)then
prune(k,i) := i
ifzk E S then
qk := qk-- prob(xk ~ dr)
ifqk < Ol then return false
else dwo:= false
if dwothenreturn false
return true
procedurerestore(i)
for j = i +l to n
ford~ ~ D(xj)
if prune(j, k) =then
prune(j, k) =
ifxj E S then qj := qj+ prob(zj --+ dR)
Figure 2: The forwardchecking(FC) algorithmfor stochastic CSPs.The algorithmis called with the search depth, i
and with upper and lower bounds, Ohand Ol. S is the set
of stochastic variables. The array qi is an upper boundon
the probability that the stochastic variable xi satisfies the
constraintsandis initially set to 1, whilst prune(i,d) is the
depthat whichthe value d is prunedfromzi and is initially
set to 0 whichindicates that the valueis not yet pruned.
132
Extensions
n=lO,m=3 --
0.6
0.4
o.~
1
8
Figure3: Averageoptimalsatisfaction (z-axis) against constraint density(x-axis) and tightness (y-axis). Problems
10 variables, each with 3 values. 100problemsare ~enerated
at eachvalue of pl andp2 from0 to 1 in steps of i’6.
n=lO, m=3 -nodes
visited
70000
6OOO0
5OOO0
40000
3O0O0
20000
o.
I__~ p~
Figure 4: Meannodes visited by FCcomputingthe optimal
satisfaction (z-axis) against constraint density(x-axis)
tightness(y-axis).
Approximationprocedures
There are a numberof methodsfor approximatingthe answer to a stochastic constraint program.For example, we
can replace the stochastic variables in a stochastic CSPby
their mostprobablevalues (or in ordered domainslike integers by their medianor integer meanvalues), and then
solve (or approximatethe answerto) the resulting traditional constraint satisfaction problem.Similarly, wecanestimate the optimalsolution for a stochastic COPby replacing the stochastic variables by their mostprobablevalues
and then finding (or approximating
the answerto) the resulting traditional constraint optimizationproblem.Wecan also
use MonteCarlo samplingto test a subset of the possible
worlds. For example, we can randomlygenerate values for
the stochastic variablesaccordingto their probabilitydistribution. It wouldalso be interesting to developlocal search
procedures like GSAT
and WalkSAT
which explore the"policy space"of stochastic constraint programs.
133
Wehave assumedthat stochastic variables are independent.
Thereare problemswhichmayrequire us to relax this restriction. For example,a stochastic variable representing
electricity demandmaydependon a stochastic variable representing temperature. It maytherefore be useful to combine stochastic programmingwith techniques like Bayes
networkswhichallow for conditional dependenciesto be efficiently andeffectively represented.Analternative solution
is to replace the dependentstochastic variables by a single
stochastic variable whosedomainis the productspaceof the
dependentvariables. This is only feasible whenthere are a
small numberof dependentvariables with small domains.
Wehavealso assumedthat the probability distribution of
stochastic variables is fixed. In particular, wehaveassumed
that it doesnot dependon earlier decisionvariables. Again,
there are problemswhichmayrequire us to relax this restriction. For example,the decision variable representing price
mayinfluence a stochastic variable representing demand.A
solution mayagain be to combinestochastic programming
with techniqueslike Bayesnetworks.
Wehave also assumedthat all variable domainsare finite. Thereare problemswhichmayrequire us to relax this
restriction. For example,in schedulingpowerstations, we
mayuse 0/1 decision variables to modelwhether a power
station runs or not, but havecontinuous(observed)variables
to modelfuture electricity demands.A continuousprobability densityfunctioncouldbe associatedwiththese variables.
Similarly, a continuousdecision variable couldbe useful to
modelthe poweroutput of the powerstations that we decide
to operate. Interval reasoningtechniquescould be extended
to deal withsuch variables.
Related work
Stochastic constraint programmingis inspired by both
stochastic integer programming
and stochastic satisfiability
(Littman, Majercik, &Pitassi 2000). It shares the advantages that constraint programming
has over integer programming(e.g. global constraints, non-linear constraints, and
constraint propagation). It also shares the advantagesthat
constraint programming
has over satisfiability (e.g. global
constraints, and arithmetic constraints). Optimizationis
likely to play a fundamental
role in stochastic constraintprogramming.
This adds to the distinction with stochastic satisfiability as the latter purelyconcernsdecisionproblems.
Mixedconstraint satisfaction (Fargier, Lang, &Sehiex
1996)is closely related to one stage stochastic constraint
satisfaction. In a mixedCSP,the decision variables are set
after the stochastic variables are givenrandomvalues. In addition, the randomvalues are chosenuniformly.In the ease
of full observability,the aimis to find conditionalvaluesfor
the decisionvariablesso that wesatisfy all possibleworlds.
In the case of no observability,the aimis to find valuesfor
the decision variables so that wesatisfy as manypossible
worlds.Anearlier constraint satisfaction modelfor decision
makingunderuncertainty(Fargier et al. 1995)also included
a probabilitydistribution overthe spaceof possibleworlds.
Constraintsatisfaction has beenextendedto include prob-
abilistie preferences on the values assigned to variables
(Shazeer, Littman, &Keim1999). Associatedwith the values for eachvariable is a probability distribution. A "best"
solution to the constraint satisfaction problemis then found.
This maybe the maximum
probability solution (whichsatisfies the constraints and is mostprobable),or the maximum
expectedoverlapsolution (whichis mostlike the true solution). Thelatter can be viewedas the solution whichhas the
maximum
expected overlap with one generated at random
using the probability distribution. The maximum
expected
overlap solution could be found by solving a suitable one
stage stochastic constraint optimizationproblem.
Branchingconstraint satisfaction (Fowler&Brown2000)
modelsproblemsin whichthere is uncertainty in the number
of variables. For example,we can modela nurse rostering
problemby assigningshifts to nurses. Branchingconstraint
satisfaction then allowsus to deal with the uncertainty in
whichnurses are available for duty. Wecan represent such
problemswith a stochastic CSPwith a stochastic 0/1 variable for eachnurserepresentingtheir availability.
Anumberof extensionsof the traditional constraint satisfaction problemmodelconstraints that are uncertain, probabilistic or not necessarily satisfied. For example,in partial constraint satisfaction we maximize
the numberof constraints satisfied (Freuder&Wallacs1992). Asa secondexample,in probabilisticconstraintsatisfaction eachconstraint
has a certain probability independentof all other probabilities of being part of the problem(Fargier &Lang1993).
a third example,both valued and semi-ringbasedconstraint
satisfaction (Bistarelli et al. 1996)generalizesprobabilistic
constraint satisfaction as well as a numberof other frameworks.In semi-ringbasedconstraint satisfaction, a value is
associatedwith each tuple in a constraint, whilst in valued
constraint satisfaction, a value is associatedwith eachconstraint. However,noneof these extensions deal with variables that mayhaveuncertain or probabilistic values. Indeed, stochastic constraint programming
can easily be combined with most of these techniques. For example,we can
definestochastic partial constraint satisfaction in whichwe
maximize
the numberof satisfied constraints, or stochastic
probabilisticconstraint satisfaction in whicheachconstraint
has an associatedprobability of beingin the problem.
Stochastic constraint programsare closely related to
Markovdecision problems (MDPs).These have been very
influential in AIof late for dealingwithsituations involving
reasoningunder uncertainty (Kaelbling, Littman, &Cassandra 1998). Stochastic constraint programming
could be used
to modelproblemswhichlack the Markovproperty that the
next state and rewarddependonly on the previousstate and
action taken. Stochastic constraint optimizationcould also
be used to modelmore complexreward functions than the
(discounted)sumof individual rewards. Onthe other hand,
MDPs
can, at least in theory, be solvedefficiently using linear programming(Littrnan, Dean, &Kaelbling 1995) and
canhaveinfinite state spaces.
cision variables (whichwe can set) and stochastic variables
(whichfollow someprobability distribution). This frameworkis designedto take advantageof the best features of traditional constraint satisfaction, stochastic integer programming,and stochastic satisfiability. It canbe used to modela
widevariety of decision problemsinvolvinguncertainty and
probability. Wehavegiven a semanticsfor stochastic constraint programsbased uponpolicies. Thesedeterminehow
decision variables are set dependingon earlier decision and
stochastic variables. Wehave proposed a numberof complete algorithmsand approximationproceduresfor stochastic constraint programming.Using these algorithms, we
have observedphasetransition behaviorin stochastic constraint programs.Interestingly, the cost of bothoptimization
and satisfaction peaksalong the satisfaction phaseboundary. Finally, we have discussed a numberof extensions of
stochastic constraint programming
to relax assumptionslike
the independencebetweenstochastic variables.
Acknowledgements
The author is an EPSRCadvanced research fellow. He
thanks the other membersof the APESresearch group
(http://apes.cs.strath.ac.uk/), especially Ian Gentfor his
helpful discussions.
Conclusions
Wehave proposed stochastic constraint programming,an
extension of constraint programming
to deal with both de-
134
References
Bistarelli, S.; Fargier, H.; Montanari,U.; Rossi,F.; Schiex,
T.; and Verfaillie, G. 1996. Semi-ring based CSPsand
valued CSPs:Basic properties and comparison.In Jample,
M.; Freuder, E., and Maher, M., eds., Over-Constrained
Systems, 111-150. Springer-Verlag. LNCS1106.
Cheeseman,P.; Kanefsky,B.; and Taylor, W.1991. Where
the really hard problemsare. In Proc. of the 12th IJCAL
331-337.Int. Joint Conference
on Artificial Intelligence.
Fargier, H., and Lang,J. 1993. Uncertaintyin constraint
satisfaction problems:a probabilistic approach.In Proc.
ofECSQARU.
Springer-Verlag. LNCS747.
Fargier, H., Lang,J.; Martin-Clouaire,R.; and Schiex,T.
1995.A constraint satisfaction framework
for decision under uncertainty. In Proc. of the 11th Int. Conferenceon
Uncertainty
in Artificial Intelligence.
Fargier, H.; Lang, J.; and Schiex, T. 1996. Mixedconstraint satisfaction: a framework
for decision problemsunder in completeinformation.In Proc. of the 13th National
Conference
on Artificial Intelligence.
Fowler, D., and Brown,K. 2000. Branching constraint
satisfaction problemsfor solutions robust under likely
changes.In Proc. of 6th lnt. Conferenceon Principles and
Practices of Constraint Programming.
Springer-Verlag.
Freuder,E., and Wallacs,R. 1992.Partial constraint satisfaction. Artificial Intelligence58:21-70.
Kaelbling, L.; Littman, M.; and Cassandra,A. 1998. Planning and acting in partially observablestochastic domains.
Artificial lntelligence 101(I-2):99-134.
Littman, M.; Dean, T., and Kaelbling, L. 1995. On the
complexityof solving Markovdecision problems.In Proc.
of the 8th AnnualConferenceon Uncertaintyin AL
Littman,M.; Majereik,S.; and Pitassi, T. 2000.Stochastic
Booleansatisfiability. Journalof Automated
Reasoning.
Maclntyre,E.; Prosser, P.; Smith, B.; and Walsh,T. 1998.
Random
constraint satisfaction: Theorymeetspractice. In
4th Int. Conferenceon Principles and Practices of Constraint Programming
(CP-98), 325-339. Springer.
Shazeer, N.; Littman, M.; and Keim,G. 1999. Constraint
satisfaction with probabilistic preferenceson variable values. In Proc. of the 16th NationalConference
on Artificial
Intelligence.
135