Stochastic Constraint Programming: a seamless modeling ... · A Stochastic Combinatorial Optimization Problem", Journal of Combinatorial Optimization Applications R. Rossi, S. A.
Post on 07-Jun-2020
4 Views
Preview:
Transcript
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Stochastic Constraint Programming: aseamless modeling framework for decision
making under uncertainty
Dr Roberto Rossi1
1LDI, Wageningen UR, the Netherlands
Mansholt Lecture
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Research
A Complete Overview
Theoretical Results
Applications
Decision Support Systems
Modeling Frameworks
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Research
Theoretical Results
Applications
Decision Support Systems
Modeling Frameworks
Theoretical Results
B. Hnich, R. Rossi, S. A. Tarim and S. Prestwich,"Synthesizing Filtering Algorithms for Global Chance-Constraints",submitted for possible publication to the 15th International Conferenceon Principles and Practice of Constraint Programming (CP-09) Lisbon,Portugal, September 21-24, 2009
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Research
Modeling Frameworks
Theoretical Results
Applications
Decision Support Systems
Modeling Frameworks
S. A. Tarim, S. Manandhar and T. Walsh,"Stochastic Constraint Programming:A Scenario-Based Approach",Constraints, Vol.11, pp.53-80, 2006.
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Research
Applications
Theoretical Results
Decision Support Systems
Modeling Frameworks
R. Rossi, S. A. Tarim, B. Hnich, S. Prestwich andS. Karacaer, "Scheduling Internal Audit Activities:A Stochastic Combinatorial OptimizationProblem", Journal of Combinatorial Optimization
Applications
R. Rossi, S. A. Tarim, B. Hnich and S. Prestwich,"Replenishment Planning for Stochastic InventorySystems with Shortage Cost", In proceedings ofThe Fourth International Conference on Integrationof AI and OR Techniques in Constraint Programmingfor Combinatorial Optimization Problems (CP-AI-OR 07)May 23-26, 2007, Brussels, Belgium, Lecture Notes inComputer Science, Springer-Verlag, LNCS 4510, pp.229-243, 2007
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Research
Decision Support Systems
Theoretical Results
Applications
Modeling Frameworks
S. A. Tarim, B. Hnich, R. Rossi and S. Prestwich,"A Decision Support System for Computing Optimal(R,S) Policy Parameters", In proceedings of the 19thIrish Conference on Artificial Intelligence and CognitiveScience (AICS 2008) Aug. 27, 2008, Cork, Ireland
Decision Support Systems
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Why going stochastic?
Decision Making Under Uncertainty
UNCERTAINTY
Theoretical Results
Applications
Decision Support Systems
Modeling Frameworks
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Why going stochastic?
Decision Making Under Uncertainty: A Pervasive Issue
UNCERTAINTY
Theoretical Results
Applications
Decision Support Systems
Modeling Frameworks
Production Planning
Inventory Control
Land-Crop Allocation
Sustainable Energy Production
Financial Planning
Food Quality Control
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
What is available
Decision Making in a Deterministic Setting
DETERMINISTIC
Theoretical Results
Applications
Decision Support Systems
Modeling Frameworks
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
What is available
Decision Making in a Deterministic Setting
DETERMINISTIC
Theoretical Results
Applications
Decision Support Systems
Modeling Frameworks
MIP
CP
LPSimplex Shortest Path
CRM
ERPInventory Control
Production Planning
Transport Scheduling
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
What is available
Decision Making in a Deterministic Setting
DETERMINISTIC
Theoretical Results
Applications
Decision Support Systems
Modeling Frameworks
MIP
CP
LPSimplex Shortest Path
CRM
ERPInventory Control
Production Planning
Transport Scheduling
CPLEXCPLEX
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
What is available
Decision Making in a Deterministic Setting
DETERMINISTIC
Theoretical Results
Applications
Decision Support Systems
Modeling Frameworks
MIP
CP
LPSimplex Shortest Path
CRM
ERPInventory Control
Production Planning
Transport Scheduling
OPL STUDIOOPL STUDIO
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
What is missing
Decision Making under Uncertainty
UNCERTAINTY
Theoretical Results
Applications
Decision Support Systems
Modeling Frameworks
Stochastic Dynamic Programming
Stochastic Programming
Simplex Convex Analysis
CRM
ERPInventory Control
Production Planning
Transport Scheduling
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
What is missing
Decision Making under Uncertainty
UNCERTAINTY
Theoretical Results
Applications
Decision Support Systems
Modeling Frameworks
Stochastic Dynamic Programming
Stochastic Programming
Simplex Convex Analysis
CRM
ERPInventory Control
Production Planning
Transport Scheduling
STOCHASTIC OPLSTOCHASTIC OPL
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
An example
Decision Making in a Deterministic Setting
0-1 Knapsack Problem
Problem : we have k kinds of items , 1 through k . Each kind ofitem i has
a value ri
a weight wi .
We usually assume that all values and weights arenonnegative. The maximum weight that we can carry in thebag is W .Objective : find a set of objects that provides the maximumvalue and that fits in the given capacity.
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
An example
Decision Making in a Deterministic Setting
0-1 KP: MIP Formulation
Objective:max
∑ki=1 rixi
Constraints:∑ki=1 wixi ≤ W
Decision variables:xi ∈ {0, 1} ∀i ∈ {1, . . . , k}
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
An example
Decision Making under Uncertainty
Static Stochastic Knapsack ProblemProblem : we have k kinds of items and a knapsack of size c into which to fit them.
Each item i , if included in the knapsack, brings a deterministic profit ri .
The size Wi of each item is not known at the time the decision has to be made,but we assume that the decision maker knows the probability distribution ofW = (W1, . . . ,Wk ).
A per unit penalty cost p has to be paid for exceeding the capacity of theknapsack.
Furthermore, the probability of not exceeding the capacity of the knapsackshould be greater or equal to a given threshold θ.
Objective : find the knapsack that maximizes the expected profit.
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
An example
Decision Making under Uncertainty
SSKP: Stochastic Programming Formulation
Objective:
max
Pki=1 riXi − pE
h
Pki=1 Wi Xi − c
i+ff
Subject to:
Prn
Pki=1 WiXi ≤ c
o
≥ θ
Decision variables:Xi ∈ {0, 1} ∀i ∈ 1, . . . , k
Stochastic variables:Wi → item i weight ∀i ∈ 1, . . . , k
Stage structure:V1 = {X1, . . . , Xk}S1 = {W1, . . . ,Wk}L = [〈V1, S1〉]
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Seamless stochastic optimization
A First Step Towards Seamless Stochastic Optimization
UNCERTAINTY
Theoretical Results
Applications
Decision Support Systems
Modeling Frameworks
Stochastic Constraint ProgrammingScenario-Based Formulation
Scenario-based Compilation toa classic (deterministic) Constraint Program
Stochastic OPL
S. A. Tarim, S. Manandhar and T. Walsh,"Stochastic Constraint Programming:A Scenario-Based Approach",Constraints, Vol.11, pp.53-80, 2006.
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Seamless stochastic optimization
A First Step Towards Seamless Stochastic Optimization
Advantages
Seamless Modeling under Uncertainty!
Stochastic OPL not necessarily linked to CP
DrawbacksSize of the compiled model
Propagation not fully supported
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Seamless stochastic optimization
A Viable Approach for Seamless Stochastic Optimization
UNCERTAINTY
Theoretical Results
Applications
Decision Support Systems
Modeling Frameworks
Stochastic Constraint ProgrammingFiltering Algorithms forGlobal Chance-Constraints
Compilation using Global Chance-Constraints
Stochastic OPL
S. A. Tarim, S. Manandhar and T. Walsh,"Stochastic Constraint Programming:A Scenario-Based Approach",Constraints, Vol.11, pp.53-80, 2006.
B. Hnich, R. Rossi, S. A. Tarim and S. Prestwich,"Synthesizing Filtering Algorithms for Global Chance-Constraints",submitted for possible publication to the 15th International Conferenceon Principles and Practice of Constraint Programming (CP-09) Lisbon,Portugal, September 21-24, 2009
T. Walsh,"Stochastic Constraint Programming",Proceedings of the European Conference on AI, 2002.
Rossi, S. A. Tarim, B. Hnich and S. Prestwich,"A Global Chance-Constraint for Stochastic Inventory Systemsunder Service Level Constraints", Constraints, Springer-Verlag,Vol. 13(4):490-517, 2008
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Seamless stochastic optimization
A Viable Approach for Seamless Stochastic Optimization
Constraint Programming Solversupporting Global Chance-Constraints
stoch myrand[onestage]=...;int nbItems=...;float c = ...;float q = ...;range Items 1..nbItems;range onestage 1..1;float W[Items,onestage]^myrand = ...;float r[Items] = ...;dvar float+ z;dvar int x[Items] in 0..1;
maximizesum(i in Items) x[i]*r[i] - expected(c*z)
subject to{z >= sum(i in Items) W[i]*x[i] - q;prob(sum(i in Items) W[i]*x[i] <= q) >= 0.6;};
Solution
Stochastic Constraint Program Stochastic OPL Model
Filtering Algorithms forGlobal Chance-Constraints
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Seamless stochastic optimization
A Viable Approach for Seamless Stochastic Optimization
In what follows we shall discuss:
Constraint Programming
Stochastic Constraint Programming
Global Chance-Constraints
Stochastic OPL.
During the discussion the SSKP will be employed as runningexample.
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Constraint Programming
Introduction
“Constraint programming (CP) represents one of the closestapproaches computer science has yet made to the Holy Grail ofprogramming: the user states the problem, the computersolves it”.Eugene C. Freuder, Constraints, April 1997
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Constraint Programming
Formal Background
A slightly formal definition
A Constraint Satisfaction Problem (CSP) is a triple 〈V , D, C〉.
V = {v1, . . . , vn} is a set of variables
D is a function mapping each variable vi to a domain D(vi)of values
C is a set of constraints.
A Constraint Optimization Problem (COP) consists of a CSPand objective function f (V ) defined on a subset V of thedecision variables in V . The aim in a COP is to find a feasiblesolution that minimizes (maximizes) the objective function.
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Constraint Programming
An Example
Sample COP: 0-1 KP
V = {x1, . . . , x3}
D(xi) = {0, 1} ∀i ∈ {1, . . . , 3}
C = {8x1 + 5x2 + 4x3 ≤ 10}
f (x1, . . . , x3) = 8x1 + 15x2 + 10x3
The optimal solution for the COP has a value of 25 and corre-sponds to the assignment is x2 = x3 = 1 and x1 = 0.
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Constraint Programming
An Example
Sample COP: 0-1 KP
r=8w=8
r=15w=5
r=10w=4
Capacity: 10
Objects:
Knapsack:
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Constraint Programming
An Example
Sample COP: 0-1 KP
r=8w=8
r=15w=5
r=10w=4
Capacity: 10Required: 9
Decision:
Knapsack:
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Constraint Programming
Solution Method
Strategy
Constraint Programming proposes to solve CSPs/COPsby associating with each constraint a filtering algorithm .
A filtering algorithm removes from decision variabledomains values that cannot belong to any solution of theCSP/COP.
Constraint Propagation is the process that repeatedlycalls filtering algorithms until no new deduction can bemade.
Constraint Solving interleaves filtering algorithms and asearch procedure (for instance a backtracking algorithm).
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Constraint Programming
An Example
Sample COP: 0-1 KP
V = {x1, . . . , x3}
D(xi) = {0, 1} ∀i ∈ {1, . . . , 3}
C = {8x1 + 5x2 + 4x3 ≤ 10}
f (x1, . . . , x3) = 8x1 + 15x2 + 10x3
Constraint Propagation initially does not produce any effect .
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Constraint Programming
An Example
Sample COP: 0-1 KP
V = {x1, . . . , x3}
D(xi) = {0, 1} ∀i ∈ {1, . . . , 3}
C = {8x1 + 5x2 + 4x3 ≤ 10}
f (x1, . . . , x3) = 8x1 + 15x2 + 10x3
To build a search tree, we apply the lexicographic variableand value ordering heuristics and use labeling as domainsplitting procedure .
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Constraint Programming
An Example
P0
Sample COP: 0-1 KPV = {x1, . . . , x3}D(xi) = {0, 1} ∀i ∈ {1, . . . , 3}C = {8x1 + 5x2 + 4x3 ≤ 10}f (x1, . . . , x3) = 8x1 + 15x2 + 10x3
Filtered domains at P0
D(x1) = {0, 1} D(x2) = {0, 1} D(x3) = {0, 1}D(z) = {0, . . . , 33}
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Constraint Programming
An Example
P0
P1
x1 ∈ {0}
Sample COP: 0-1 KPV = {x1, . . . , x3}D(xi) = {0, 1} ∀i ∈ {1, . . . , 3}C = {8x1 + 5x2 + 4x3 ≤ 10}f (x1, . . . , x3) = 8x1 + 15x2 + 10x3
Filtered domains at P1
D(x1) = {0} D(x2) = {0, 1} D(x3) = {0, 1}D(z) = {0, . . . , 25}
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Constraint Programming
An Example
P0
P1
x1 ∈ {0}
Sample COP: 0-1 KPV = {x1, . . . , x3}D(xi) = {0, 1} ∀i ∈ {1, . . . , 3}C = {8x1 + 5x2 + 4x3 ≤ 10}f (x1, . . . , x3) = 8x1 + 15x2 + 10x3
Optimal solution associated with P1
D(x1) = {0} D(x2) = {1} D(x3) = {1} D(z) = {25}
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Constraint Programming
An Example
P0
P1 P2
x1 ∈ {0} x1 ∈ {1}
Sample COP: 0-1 KPV = {x1, . . . , x3}D(xi) = {0, 1} ∀i ∈ {1, . . . , 3}C = {8x1 + 5x2 + 4x3 ≤ 10}f (x1, . . . , x3) = 8x1 + 15x2 + 10x3
Filtered domains at P2
D(x1) = {1} D(x2) = {0} D(x3) = {0} D(z) = {8}
We backtrack to P0 and we return the optimal solution withvalue 25 found in the subtree associated with node P1.
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Constraint Programming
Global Constraints
Efficiency
Filtering algorithms
detect inconsistencies in a proactive fashion
speed up the search
provided that the time spent in filtering is less then the timesaved in terms of search efforts.A challenging research topic is the design of efficient filteringstrategies.
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Constraint Programming
Global Constraints
Not only binary relations
In constraint programming is common to find constraints over anon-predefined number of variables
alldifferent
element
cumulative
...
These constraints are called global constraints
they can be used in a variety of situations
they are associated with powerful filtering strategies
new custom global constraints can be defined
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Stochastic Constraint Programming
A slightly formal definition
Stochastic Constraint Satisfaction ProblemA Stochastic Constraint Satisfaction Problem (SCSP) is a7-tuple
〈V , S, D, P, C, θ, L〉.
V = {v1, . . . , vn} is a set of decision variables
S = {s1, . . . , sn} is a set of stochastic variables
D is a function mapping each variable to a domain of potential values
P is a function mapping each variable in S to a probability distribution for itsassociated domain
C is a set of (chance)-constraints, possibly involving stochastic variables
θh is a threshold probability associated to chance-constraint h
L = [〈V1, S1〉, . . . , 〈Vi , Si〉, . . . , 〈Vm, Sm〉] is a list of decision stages.
By considering an objective function f (V , S) we obtain a SCOP.
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Stochastic Constraint Programming
An Example
Sample SCOP: SSKP
V = {x1, . . . , x3}
D(xi) = {0, 1} ∀i ∈ {1, . . . , 3}
S = {w1, . . . , w3}
D(w1) = {5(0.5), 8(0.5)}, D(w2) ={3(0.5), 9(0.5)}, D(w3) = {15(0.5), 4(0.5)}
C = {Pr(w1x1 + w2x2 + w3x3 ≤ 10) ≥ 0.2}
L = [〈V , S〉]
f (x1, . . . , x3) =
8x1 + 15x2 + 10x3 − 2E max[0,
∑3i=1 wixi − 10
]
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Stochastic Constraint Programming
Sample SCOP: SSKP
r=8w=5 OR 8
r=15w=3 OR 9
r=10w=15 OR 4
Capacity: 10
Objects:
Knapsack:
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Stochastic Constraint Programming
Sample SCOP: SSKP
r=8w=5 OR 8
r=15w=3 OR 9
r=10w=15 OR 4
Capacity: 10Required: 11
Decision:
Knapsack:
Y Y N
Observation:
r=8w=8
r=15w=3
r=10w=15
Y Y N
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Stochastic Constraint Programming
Sample SCOP: SSKP
x1=1x2=1
x3=0w1=5
w1=8
w2=3
w2=9
w2=3
w2=9
w3=15
w3=4
w3=15
w3=4
w3=15
w3=4
w3=15
w3=4
0
0
4
4
1
1
7
7
Obj: 17
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Stochastic Constraint Programming
An Example
Sample SCOP: DSKP
V = {x1, . . . , x3}
D(xi) = {0, 1} ∀i ∈ {1, . . . , 3}
S = {w1, . . . , w3}
D(w1) = {5(0.5), 8(0.5)}, D(w2) ={3(0.5), 9(0.5)}, D(w3) = {15(0.5), 4(0.5)}
C = {Pr(w1x1 + w2x2 + w3x3 ≤ 10) ≥ 0.2}
L = [〈{x1}, {w1}〉, 〈{x2}, {w2}〉, 〈{x3}, {w3}〉]
f (x1, . . . , x3) =
E[8x1 + 15x2 + 10x3] − 2E max[0,
∑3i=1 wixi − 10
]
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Stochastic Constraint Programming
Sample SCOP: DSKP
r=8w=5 OR 8
r=15w=3 OR 9
r=10w=15 OR 4
Capacity: 10
Objects:
Knapsack:
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Stochastic Constraint Programming
Sample SCOP: DSKP
r=8w=5 OR 8
Decision stage 1:
Y
Observation:
r=8w=8
r=15w=3 OR 9
r=10w=15 OR 4
Capacity: 10Required: 8
Knapsack:
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Stochastic Constraint Programming
Sample SCOP: DSKP
r=8w=8
r=15w=3 OR 9
Decision stage 2:
Y
Observation:
r=15w=3
r=10w=15 OR 4
Capacity: 10Required: 11
Knapsack:
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Stochastic Constraint Programming
Sample SCOP: DSKP
r=8w=8
r=15w=3
r=10w=15 OR 4
Capacity: 10Required: 26
Decision stage 3:
Knapsack:
Observation:
r=18w=8
r=10w=15
Y
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Stochastic Constraint Programming
Sample SCOP: DSKP
x3=0
x3=1
x3=1
x3=1
x2=1
x2=1
x1=1
0
0
19
8
16
5
22
11
w1=5
w1=8
w2=3
w2=9
w2=3
w2=9
w3=15
w3=4
w3=15
w3=4
w3=15
w3=4
w3=15
w3=4
Obj: 27.9687
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Stochastic Constraint Programming
Scenario-based Compilation
By using the approach discussed in
S. A. Tarim, S. Manandhar and T. Walsh,Stochastic Constraint Programming: A Scenario-Based Approach,Constraints, Vol.11, pp.53-80, 2006
it is possible to compile any SCSP/SCOP down to a determinis-tic equivalent CSP.
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Stochastic Constraint Programming
Scenario-based Compilation
SSKP: Compiled Deterministic Equivalent CSP
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Stochastic Constraint Programming
An Alternative Compilation Strategy Employing GCCs
SSKP: Compiled Deterministic Equivalent CSP withGlobal Chance-Constraints
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Global Chance-Constraints
Filtering in SCSPs
Also in Stochastic Constraint Programming (SCP) we have
constraints
filtering algorithms
In contrast to CP, in SCP constraints divide into
hard constraints
chance-constraints
Global Chance-ConstraintsPerhaps the most interesting aspect of SCP is that the conceptof global constraint can be also adopted in a stochasticenvironment, thus leading to
Global Chance-Constraints (Rossi et al., 2008)
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Global Chance-Constraints
Filtering in SCSPs
Stochastic Constraint Programming
Global Chance-Constraints
represent relations among a non-predefined number ofdecision and random variablesimplement dedicated filtering algorithms based on
feasibility reasoningoptimality reasoning
Global Chance-Constraints performing optimality reasoning arecalled Optimization-Oriented Global Chance-Constraints(Rossi et al., 2008).
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Global Chance-Constraints
Filtering in SCSPs
“Synthesizing Filtering Algorithms for Global Chance-Constraints” (Hnich et al., 2009)
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Global Chance-Constraints
Filtering Algorithms for GCCs
Stochastic Programming Model
Pr{∑k
i=1 WiXi ≤ c}≥ θ
Stochastic Constraint Programming Model
C = {Pr(w1x1 + w2x2 + w3x3 ≤ 10) ≥ 0.2}
Global Chance-ConstraintstochLinIneq(x,W,Pr,q,0.2);
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Global Chance-Constraints
Filtering Algorithms for GCCs
x1={0,1}x2={0,1}
x3={0,1}w1=5
w1=8
w2=3
w2=9
w2=3
w2=9
w3=15
w3=4
w3=15
w3=4
w3=15
w3=4
w3=15
w3=4
Pr(w1x1+w2x2+w3x3²10)>0.5
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Global Chance-Constraints
Filtering Algorithms for GCCs
x1={0,1}x2={0,1}
x3={0,1}w1=5
w1=8
w2=3
w2=9
w2=3
w2=9
w3=15
w3=4
w3=15
w3=4
w3=15
w3=4
w3=15
w3=4
0
0
0
0
0
0
0
0
Pr(w1x1+w2x2+w3x3²10)>0.5
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Global Chance-Constraints
Filtering Algorithms for GCCs
w1=5
w1=8
w2=3
w2=9
w2=3
w2=9
w3=15
w3=4
w3=15
w3=4
w3=15
w3=4
w3=15
w3=4
5
0
5
0
5
0
5
0
Pr(w1x1+w2x2+w3x3²10)>0.5
x1={0,1}x2={0,1}
x3={0,1}
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Global Chance-Constraints
Filtering Algorithms for GCCs
x3={0,1}
x3=1
x3=1
x3=1
x2=1
x2=1
x1={0,1}w1=5
w1=8
w2=3
w2=9
w2=3
w2=9
w3=15
w3=4
w3=15
w3=4
w3=15
w3=4
w3=15
w3=4
Pr(w1x1+w2x2+w3x3²10)³0.5
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Global Chance-Constraints
Filtering Algorithms for GCCs
x3={0,1}
x3=1
x3=1
x3=1
x2=1
x2=1
x1={0,1}
8
0
0
0
8
0
14
3
w1=5
w1=8
w2=3
w2=9
w2=3
w2=9
w3=15
w3=4
w3=15
w3=4
w3=15
w3=4
w3=15
w3=4
Pr(w1x1+w2x2+w3x3²10)³0.5
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Global Chance-Constraints
Filtering Algorithms for GCCs
x3={0,1}
x3=1
x3=1
x3=1
x2=1
x2=1
x1={0,1}
8
0
14
3
8
0
14
3
w1=5
w1=8
w2=3
w2=9
w2=3
w2=9
w3=15
w3=4
w3=15
w3=4
w3=15
w3=4
w3=15
w3=4
Pr(w1x1+w2x2+w3x3²10)³0.5
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Stochastic OPL
Stochastic OPL
A language specifically introduced by Tarim et al. (Tarim et al.,2006) for modeling decision problems under uncertainty .It captures several high level concepts that facilitate theprocess of modeling uncertainty:
stochastic variables (independent or conditionaldistributions)
several probabilistic measures for the objective function(expectation, variance, etc.)
chance-constraints
decision stages
...
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Stochastic OPL
Stochastic OPL
SSKPint N = 3;int c = 10;int p = 2;float θ = 0.2range Object [1..3];int value[Object] = [8,15,10];stoch int weight[Object] = [<5(0.5),8(0.5)>,
<3(0.5),9(0.5)>,<15(0.5),4(0.5)>];var int+ X[Object] in 0..1;stages = [<X,weight>];var int+ z;
maximize sum(i in Object) X[i]*value[i] - p*zsubject to{z = max(0,expected(sum(i in Object) X[i]*weight[i] - c));prob(sum(i in Object) X[i]*weight[i] - c ≤ 0) ≥ θ;};
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Stochastic OPL
Stochastic OPL
DSKPint N = 3;int c = 10;int p = 2;float θ = 0.2range Object [1..3];int value[Object] = [8,15,10];stoch int weight[Object] = [<5(0.5),8(0.5)>,
<3(0.5),9(0.5)>,<15(0.5),4(0.5)>];var int+ X[Object] in 0..1;stages = [<X[1],weight[1]>,<X[2],weight[2]>,<X[3],weight[3]>];var int+ z;
maximize sum(i in Object) X[i]*value[i] - p*zsubject to{z = max(0,expected(sum(i in Object) X[i]*weight[i] - c));prob(sum(i in Object) X[i]*weight[i] - c ≤ 0) ≥ θ;};
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Overview of the Framework
A Viable Approach for Seamless Stochastic Optimization
Constraint Programming Solversupporting Global Chance-Constraints
stoch myrand[onestage]=...;int nbItems=...;float c = ...;float q = ...;range Items 1..nbItems;range onestage 1..1;float W[Items,onestage]^myrand = ...;float r[Items] = ...;dvar float+ z;dvar int x[Items] in 0..1;
maximizesum(i in Items) x[i]*r[i] - expected(c*z)
subject to{z >= sum(i in Items) W[i]*x[i] - q;prob(sum(i in Items) W[i]*x[i] <= q) >= 0.6;};
Solution
Stochastic Constraint Program Stochastic OPL Model
Filtering Algorithms forGlobal Chance-Constraints
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Filtering Algorithms
B. Hnich, R. Rossi, S. A. Tarim and S. Prestwich,Synthesizing Filtering Algorithms for GlobalChance-Constraints ,submitted for possible publication to the 15th InternationalConference on Principles and Practice of ConstraintProgramming (CP-09) Lisbon, Portugal, September 21-24,2009
ContributionA generic approach for constraint reasoning underuncertainty .Works with any existing propagation algorithm!
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Filtering Algorithms
B. Hnich, R. Rossi, S. A. Tarim and S. Prestwich,Synthesizing Filtering Algorithms for GlobalChance-Constraints ,submitted for possible publication to the 15th InternationalConference on Principles and Practice of ConstraintProgramming (CP-09) Lisbon, Portugal, September 21-24,2009
DrawbackOnly implemented for linear inequalities/equalities:stochLinIneq(x,W,Pr,q,0.2);
i.e. SSKP → Pr(w1x1 + w2x2 + w3x3 ≤ 10) ≥ 0.2
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Filtering Algorithms
B. Hnich, R. Rossi, S. A. Tarim and S. Prestwich,Synthesizing Filtering Algorithms for GlobalChance-Constraints ,submitted for possible publication to the 15th InternationalConference on Principles and Practice of ConstraintProgramming (CP-09) Lisbon, Portugal, September 21-24,2009
Future workConsidering more global constraints :allDifferent()NValue()Cumulative()...
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Language Compiler
S. A. Tarim, S. Manandhar and T. Walsh,Stochastic Constraint Programming: A Scenario-Based Approach,Constraints, Vol.11, pp.53-80, 2006
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Language Compiler
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Sampling Strategies
Scenario Reduction
Inspired by:
A. J. Kleywegt, A. Shapiro, T. Homem-De-MelloThe Sample Average Approximation Method for StochasticDiscrete OptimizationSIAM Journal of Optimization, 12:479–502
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Sampling Strategies
Scenario Reduction
w1=5
w1=8
w2=3
w2=9
w2=3
w2=9
w3=15
w3=4
w3=15
w3=4
w3=15
w3=4
w3=15
w3=4
5
0
5
0
5
0
5
0
Pr(w1x1+w2x2+w3x3²10)³0.5
x1={0,1}x2={0,1}
x3={0,1}
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Sampling Strategies
Scenario Reduction
x1={0,1}x2={0,1}
x3={0,1}w1=5
w1=8
w2=3
w2=3
w3=15
Pr(w1x1+w2x2+w3x3²10)³0.5 w3=15
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Sampling Strategies
Scenario Reduction
x1={0,1}x2={0,1}
x3={0,1}w1=5
w1=8
w2=3
w2=3
w3=15
Pr(w1x1+w2x2+w3x3²10)³0.5 0
0
w3=15
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Sampling Strategies
Scenario Reduction
x1={0,1}x2={0,1}
x3={0,1}w1=5
w1=8
w2=3
w2=3
w3=15
Pr(w1x1+w2x2+w3x3²10)³0.5
5
w3=15 5
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Policy Compression
Neuro-evolutionary Stochastic Constraint Programming
x3=0
x3=1
x3=1
x3=1
x2=1
x2=1
x1=1
0
0
19
8
16
5
22
11
w1=5
w1=8
w2=3
w2=9
w2=3
w2=9
w3=15
w3=4
w3=15
w3=4
w3=15
w3=4
w3=15
w3=4
S. Prestwich, S. A. Tarim, R. Rossi, B. Hnich,Evolving Parameterised Policies for Stochastic Constrain t Programming ,submitted for possible publication to the 15th International Conference on Principlesand Practice of Constraint Programming (CP-09) Lisbon, Portugal, September 21-24,2009
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Applications
Food Supply Chain Networks
Farm - Slaugherhouse allocation (with W. Rijpkema)
Inventory Control for Perishable Items (with K.Pauls-Worms)
Agrifood Domain
Land Allocation
Pest Control
Environmental Domain...
EducationDecision Science II ???
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
The LDI research framework
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
The LDI research framework
StochasticConstraintProgramming
IDE &Compiler
Filtering Algorithms
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Final remarks
Summary
We discussed a Framework for Modeling DecisionProblems under Uncertainty
Stochastic Constraint ProgrammingGlobal Chance-constraintsStochastic OPL
We presented some current and possible futureapplication areas
We positioned our Framework within the LDI researchframework
Introduction Modeling Framework Ongoing Research SCP and LDI Conclusions
Final remarks
Questions
top related