Scenario-based Stochastic Constraint Programming - PowerPoint PPT Presentation

About This Presentation
Title:

Scenario-based Stochastic Constraint Programming

Description:

Scenario-based Stochastic Constraint Programming ... Stochastic variables. nature sets according to ... replace stochastic vars with their scenario value ... – PowerPoint PPT presentation

Number of Views:171
Avg rating:3.0/5.0
Slides: 22
Provided by: cseUn
Category:

less

Transcript and Presenter's Notes

Title: Scenario-based Stochastic Constraint Programming


1
Scenario-based Stochastic Constraint Programming
  • Suresh Manandhar, Armagan Tarim, University of
    York
  • Toby Walsh, 4C, University College Cork

2
Motivation
  • Constraint programming (CP)
  • tool of choice for many domains
  • scheduling, routing, assignment,
  • .. but perhaps not for cliff diving
  • But CP poor at dealing with uncertainty present
    in real world
  • past data contain errors
  • present data hard to collect
  • future data is uncertain

3
Stochastic constraint programs
  • Introduced at ECAI-2002
  • Decision variables
  • user sets
  • Stochastic variables
  • nature sets according to probability distribution
  • examples demand, market up/down, arrival time,
  • Can be (in)dependent

ECAI 2002 conference dinner
Walsh 2002
4
Stochastic constraint programs
  • Hard constraints
  • over decision vars, or decision and stochastic
    vars
  • demandi productionistocki
  • not purely over stochastic vars
  • relation of (dis)allowed values
  • Chance constraints
  • not necessarily satisfied in all worlds
  • Prob(demandi productionistocki) gt
    0.95

New
5
Stochastic constraint programs
  • Many different objectives supported
  • expectation maximized or minimized
  • downside minimized or upside maximized
  • spread or variance minimized
  • .

New
6
One stage
  • user makes decisions
  • nature then sets stochastic variables

Outcome 1
M11
S13 B12
M10
Outcome 2
7
Two stages
  • user makes decisions
  • nature sets stochastic variables
  • user then makes some more decisions

S210 B26
M11
S13 B12
M10
S21 B21
8
Multiple stages
  • user makes decisions
  • nature sets stochastic variables
  • user then makes some more decisions

S332 B320
M21
S210 B26
M11
S34 B32
M20
S13 B12
S34 B32
M21
M10
S21 B21
S30 B31
M20
9
Financial planning example
  • Decision variables
  • Si in stocks in ith year
  • Bi in bonds in ith year
  • Stochastic variables
  • Mi 1, market up
  • Mi 0, market down
  • with 50 probability

S332 B320
M21
S210 B26
M11
S34 B32
M20
S13 B12
S34 B32
M21
M10
S21 B21
S30 B31
M20
10
Financial planning example
  • Market up
  • stocks make 300
  • bonds make 100
  • Market down
  • stocks make -100
  • bonds make 0
  • All money must be put in bonds or stocks
  • Maximize expected profit
  • E(SnBn)

S332 B320
M21
S210 B26
M11
S34 B32
M20
S13 B12
S34 B32
M21
M10
S21 B21
S30 B31
M20
11
Financial planning example
  • Solution now policy
  • tree of decisions
  • one path for each possible scenario
  • Goal is to find policy that maximizes expected
    profit
  • EProfit sum(paths)
  • prob(path) (SnBn)

S332 B320
M21
S210 B26
M11
S34 B32
M20
S13 B12
S34 B32
M21
M10
S21 B21
S30 B31
M20
12
Solving stochastic CPs
  • Search method
  • and/or search tree ECAI 2002
  • stochastic vars gt and nodes
  • decisions vars gt or nodes
  • Compilation method
  • gives regular (deterministic) constraint program

New
13
Compiling stochastic CPs
  • Introduce new decision vars for each scenario
  • replace stochastic vars with their scenario value
  • scenarios with common paths share decision vars
  • ve
  • gives regular (deterministic) CP
  • -ve
  • exponential space in worst case

14
Stochastic OPL
  • Compiles down into ILOGs OPL modelling language
  • itself compiles down into C Solver code
  • Exploits powerful propagators and modelling
    features found in OPL/Solver

15
Stochastic OPL
  • int n
  • var int stocksn
  • var int bondsn
  • stochastic var 0..1 marketn uniform
  • maximize
  • expected 4stocksnmarketn
  • 2bondsnmarketn
  • bondsn(1-marketn)
  • subject to
  • stocks1bonds15
  • forall(i in 1..n-1)
  • stocksi1bondsi1
    4stocksimarketi

  • 2bondsimarketi

  • bondsi(1-marketi)

16
Stochastic OPL
  • Variable declarations
  • var int stocksn
  • var int bondsn
  • stochastic var 0..1 marketn uniform
  • stochastic var 100..105 demandn 1,2,3,3,2,1
  • stochastic var int incomingCallsn poisson(100)

17
Stochastic OPL
  • Hard constraints
  • forall(i in 1..n-1)
  • stocksi1bondsi1
    4stocksimarketi

  • 2bondsimarketi

  • bondsi(1-marketi)
  • Chance constraints
  • forall(i in 1..n)
  • prob(demandi lt productionistocki)
    gt 0.96

18
Stochastic OPL
  • Objectives
  • maximize expected profitn
  • subject to
  • maximize min profitn
  • subject to
  • minimize variance profitn
  • subject to
  • minimize spread profitn
  • subject to
  • maximize chance profitngt100
  • subject to

19
Scenario reduction
  • To cope with the exponential number of scenarios
  • scenario mean
  • scenario median
  • scenario sample 100 montecarlo
  • scenario sample 100 latinhypercube
  • scenario top 10
  • scenario top 95 percent

20
Robust solutions
  • Insist on identical decisions in different
    scenarios
  • robust solution
  • robust production0
  • robust production1
  • maximize chance
  • wealthn gt 2wealth0
  • subject to ..
  • maximize robustness
  • subject to ..

21
Conclusions
  • Stochastic constraint programs
  • stochastic vars
  • chance constraints
  • several different objectives
  • maximized expectation
  • minimized downside
  • Stochastic OPL
  • compiles to (regular) OPL
  • exploits power of CP toolkit

Interesting new way to reason with uncertainty?
Write a Comment
User Comments (0)
About PowerShow.com