a tour of modeling techniques - tepper school of...
TRANSCRIPT
![Page 1: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/1.jpg)
Slide 1
A Tour of Modeling Techniques
John HookerCarnegie Mellon University
June 2008
![Page 2: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/2.jpg)
Slide 2
Outline
• Mixed integer linear (MILP) modeling
• Disjunctive modeling
• Examples: fixed charge problems, facility location, lot sizing with setup costs.
• Knapsack modeling
• Examples: Freight packing and transfer
• Constraint programming models
• Example: Employee scheduling
• Integrated Models
• Examples: Product configuration, machine scheduling
![Page 3: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/3.jpg)
Slide 3
Mixed Integer/Linear Modeling
MILP Modeling SystemsMILP Models
Disjunctive ModelingKnapsack Modeling
![Page 4: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/4.jpg)
Slide 4
MILP Modeling Systems
• Commercial modeling systems
• AMPL
• GAMS
• AIMMS
![Page 5: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/5.jpg)
Slide 5
MILP Modeling Systems
• Commercial modeling systems with dedicated solvers
• OPL Studio (runs CPLEX)
• Xpress-BCL (runs Xpress-MP)
• Xpress-Mosel (runs Xpress-MP)
• Excel and Quattro Pro, Frontline Systems (spreadsheet based)
• LINGO
• MINOPT (also nonlinear)
![Page 6: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/6.jpg)
Slide 6
MILP Modeling Systems
• Non-commercial modeling systems
• ZIMPL
• Gnu Mathprog (GMPL)
![Page 7: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/7.jpg)
Slide 7
An mixed integer linear programming (MILP) model has the form
min
, 0
integer
cx dy
Ax by b
x y
y
++ ≥≥
MILP models
![Page 8: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/8.jpg)
Slide 8
A principled approach to MILP modeling
• MILP modeling combines two distinct kinds of modeling.
• Modeling of subsets of continuous space, using 0-1 auxiliary variables.
• Knapsack modeling, using general integer variables.
• MILP can model subsets of continuous space that are unions of polyhedra.
• …that is, represented by disjunctions of linear systems.
• So a principled approach is to analyze the problem as
disjunctions integer of linear + knapsack systems inequalities
![Page 9: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/9.jpg)
Slide 9
Disjunctive Modeling
Theorem. A subset of continuous space can be represented by an MILP model if and only if it is the union of finitely many polyhedrahaving the same recession cone.
Polyhedron
Recession cone of polyhedron
Union of polyhedra with the same recession cone
(in this case, the origin)
![Page 10: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/10.jpg)
Slide 10
Modeling a union of polyhedra
Start with a disjunction of linear systems to represent the union of polyhedra.
The kth polyhedron is {x | Akx ≥ b}
( )min
k k
k
cx
A x b≥∨
Introduce a 0-1 variable yk that is 1 when x is in polyhedron k.
Disaggregate x to create an xk for each k.
{ }
min
, all
1
0,1
k k kk
kk
k
k
k
cx
A x b y k
y
x x
y
≥=
=
∈
∑
∑
![Page 11: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/11.jpg)
Slide 11
Tight Relaxations
• Basic fact: The continuous relaxation of the disjunctive MILP model provides a convex hull relaxation of the disjunction.
• This is the tightest possible linear model for the disjunction.
Union of polyhedra Convex hull relaxation(tightest linear relaxation)
![Page 12: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/12.jpg)
Slide 12
Tight Relaxations
Convex hull relaxation(tightest linear relaxation)
To derive convex hull relaxation of a disjunction…
{ }
min
, all
1
0,1
k k k
kk
kk
k
k
cx
A x b k
y
x y x
y
≥=
=
∈
∑
∑
Write each solution as a convex combination of points in the polyhedron
x1x
2x
![Page 13: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/13.jpg)
Slide 13
Tight Relaxations
Convex hull relaxation(tightest linear relaxation)
{ }
min
, all
1
0,1
k k kk
kk
k
k
k
cx
A x b y k
y
x x
y
≥=
=
∈
∑
∑
To derive convex hull relaxation of a disjunction…
{ }
min
, all
1
0,1
k k k
kk
kk
k
k
cx
A x b k
y
x y x
y
≥=
=
∈
∑
∑
Write each solution as a convex combination of points in the polyhedron
x1x
2x
Change of variable
kkx y x=
![Page 14: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/14.jpg)
Slide 14
Example: Fixed charge function
Minimize a fixed charge function:
x1
x2
2
12
1 1
1
min
0 if 0
if 0
0
x
xx
f cx x
x
= ≥ + >
≥
![Page 15: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/15.jpg)
Slide 15
Fixed charge problem
Minimize a fixed charge function: 2
12
1 1
1
min
0 if 0
if 0
0
x
xx
f cx x
x
= ≥ + >
≥
x1
x2
Feasible set
![Page 16: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/16.jpg)
Slide 16
Fixed charge problem
Minimize a fixed charge function: 2
12
1 1
1
min
0 if 0
if 0
0
x
xx
f cx x
x
= ≥ + >
≥
x1
x2
Union of two polyhedraP1, P2
P1
![Page 17: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/17.jpg)
Slide 17
Fixed charge problem
Minimize a fixed charge function: 2
12
1 1
1
min
0 if 0
if 0
0
x
xx
f cx x
x
= ≥ + >
≥
x1
x2
Union of two polyhedraP1, P2
P1
P2
![Page 18: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/18.jpg)
Slide 18
Fixed charge problem
Minimize a fixed charge function: 2
12
1 1
1
min
0 if 0
if 0
0
x
xx
f cx x
x
= ≥ + >
≥
x1
x2
The polyhedrahave different recession cones.
P1
P1recession
cone
P2
P2recession
cone
![Page 19: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/19.jpg)
Slide 19
Fixed charge problem
Minimize a fixed charge function:
Add an upper bound on x1
2
12
1 1
1
min
0 if 0
if
0
0
x
xx
f cx x
x M
=
≤
≥ + >
≤
x1
x2
The polyhedrahave the same recession cone.
P1
P1recession
cone
P2
P2recession
coneM
![Page 20: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/20.jpg)
Slide 20
Fixed charge problem
Start with a disjunction of linear systems to represent the union of polyhedra
2
1 1
2 2 1
min
0 0
0
x
x x M
x x f cx
= ≤ ≤ ∨ ≥ ≥ +
x1
x2
P1
P2
M
![Page 21: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/21.jpg)
Slide 21
Fixed charge problem
Start with a disjunction of linear systems to represent the union of polyhedra
2
1 1
2 2 1
min
0 0
0
x
x x M
x x f cx
= ≤ ≤ ∨ ≥ ≥ +
{ }
2
1 21 1 21 2 22 1 2 2
1 21 2 1 2
1 1 1 2 2 2
min
0 0
0
1, 0,1
,k
x
x x My
x cx x fy
y y y
x x x x x x
= ≤ ≤≥ − + ≥+ = ∈= + = +
Introduce a 0-1 variable yk
that is 1 when x is in polyhedron k.
Disaggregate x to create an xk for each k.
![Page 22: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/22.jpg)
Slide 22
{ }
2
1 21 1 21 2 22 1 2 2
1 21 2 1 2
1 1 1 2 2 2
min
0 0
0
1, 0,1
,k
x
x x My
x cx x fy
y y y
x x x x x x
= ≤ ≤≥ − + ≥+ = ∈= + = +
To simplify, replace with x1
since
21x
11 0x =
![Page 23: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/23.jpg)
Slide 23
{ }
2
21 22 2 2
1 21 2
2 2
1
1
2
min
0
0
1, 0,1 k
x
My
x c x fy
y y y
x x x
x
x
≤ ≤≥ − + ≥+ = ∈= +
To simplify, replace with x1
since
21x
11 0x =
![Page 24: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/24.jpg)
Slide 24
{ }
2
1 21 22 1 2 2
1 21 2
2 2 2
min
0
0
1, 0,1 k
x
x My
x cx x fy
y y y
x x x
≤ ≤≥ − + ≥+ = ∈= +
Replace with x2
because plays no role in the model
22x12x
![Page 25: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/25.jpg)
Slide 25
{ }
2
1 2
1 2
1
2
2
min
0
1, 0,1 k
x
x My
cx fyx
y y y
≤ ≤− + ≥
+ = ∈
Replace with x2
Because plays no role in the model
22x12x
![Page 26: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/26.jpg)
Slide 26
{ }
2
1 2
1 2 2
1 2
min
0
1, 0,1 k
x
x My
cx x fy
y y y
≤ ≤− + ≥
+ = ∈
Replace y2 with y
Because y1 plays no role in the model
![Page 27: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/27.jpg)
Slide 27
{ }
2
1
2 1
min
0
0,1
x
x M
x cx
y
yf
y
≤ ≤≥ +
∈
Replace y2 with y
Because y1 plays no role in the model
{ }
min
0
0,1
cx fy
x My
y
+≤ ≤
∈or
“Big M”
![Page 28: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/28.jpg)
Slide 28
Example: Uncapacitated facility location
i j
fi cij
Fixed cost Transport
cost
m possible factory
locations n markets Locate factories to serve markets so as to minimize total fixed cost and transport cost.
No limit on production capacity of each factory.
![Page 29: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/29.jpg)
Slide 29
Uncapacitated facility location
i j
fi cij
Fixed cost Transport
cost
n markets Disjunctive model:
min
0 1, all 0, all , all
0
1, all
i ij iji ij
ij ij
i i i
iji
z c x
x j x ji
z f z
x j
+
≤ ≤ = ∨ ≥ =
=
∑ ∑
∑
Factory at location i
No factoryat location i
Fraction of market j’s demand satisfied from location im possible
factory locations
![Page 30: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/30.jpg)
Slide 30
Uncapacitated facility location
MILP formulation:
Disjunctive model:
{ }
1 2
1 2
1 2 1 2
min
0 , all , 0, all ,
, all 0, all
, , 0,1
1, all
i ij iji ij
ij i ij
i i i i
ij ij ij i i i i
iji
z c x
x y i j x i j
z f y i z i
x x x z z z y
x j
+
≤ ≤ =≥ =
= + = + ∈=
∑ ∑
∑
min
0 1, all 0, all , all
0
1, all
i ij iji ij
ij ij
i i i
iji
z c x
x j x ji
z f z
x j
+
≤ ≤ = ∨ ≥ =
=
∑ ∑
∑
![Page 31: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/31.jpg)
Slide 31
Uncapacitated facility location
Let since 1ij ijx x= 2 0ijx =
Let since 1i iz z= 2 0iz =
MILP formulation:
{ }
1 2
1 2
1 2 1 2
min
0 , all , 0, all ,
, all 0, all
, , 0,1
1, all
i ij iji ij
ij i ij
i i i i
ij ij ij i i i i
iji
z c x
x y i j x i j
z f y i z i
x x x z z z y
x j
+
≤ ≤ =≥ =
= + = + ∈=
∑ ∑
∑
![Page 32: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/32.jpg)
Slide 32
Uncapacitated facility location
Let since
{ }
min
0 , all ,
, all
0,1
1, all
i ij iji ij
i
i i
i
ij
ij
i
i
x
z
z c x
y i j
f y i
y
x j
+
≤ ≤≥∈
=
∑ ∑
∑
1ij ijx x= 2 0ijx =
Let since 1i iz z= 2 0iz =
MILP formulation:
![Page 33: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/33.jpg)
Slide 33
Uncapacitated facility location
Let since
{ }
min
0 , all ,
, all
0,1
1, all
i ij iji ij
i
i i
i
ij
ij
i
i
x
z
z c x
y i j
f y i
y
x j
+
≤ ≤≥∈
=
∑ ∑
∑
1ij ijx x= 2 0ijx =
Let since 1i iz z= 2 0iz =
{ }
min
0 , all ,
0,1
1, all
i i ij iji ij
ij i
i
iji
c x
x y i
f
j
y
x
y
j
+
≤ ≤∈
=
∑ ∑
∑
or
MILP formulation:
![Page 34: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/34.jpg)
Slide 34
Uncapacitated facility location
MILP formulation: Beginner’s model:
{ }
min
, all
0,1
1, all
i i ij iji ij
ij ij
i
iji
f y c x
x ny i
y
x j
+
≤
∈=
∑ ∑
∑
∑
Based on capacitated location model.
It has a weaker continuous relaxation
This beginner’s mistake can be avoided by starting with disjunctive formulation.
Maximum output from location i
{ }
min
0 , all ,
0,1
1, all
i i ij iji ij
ij i
i
iji
f y c x
x y i j
y
x j
+
≤ ≤∈
=
∑ ∑
∑
![Page 35: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/35.jpg)
Slide 35
Example: Lot sizing with setup costs
Determine lot size in each period to minimize total production, inventory, and setup costs.
t = 0 1 2 3 4 5 6
Demand = D0 D1 D2 D3 D4 D5 D6
Max production level
Setup cost incurred
![Page 36: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/36.jpg)
Slide 36
0 0
0 0 0t t t t t
t t t t t
v f v v
x C x C x
≥ ≥ ≥ ∨ ∨ ≤ ≤ ≤ ≤ =
(1)
Start production
(incurs setup cost)
(2)
Continue production(no setup
cost)
(3)
Produce nothing
(no production cost)
Fixed-cost variable
Fixed cost
Production level
Production capacity
Logical conditions:
(2) In period t ⇒ (1) or (2) in period t − 1
(1) In period t ⇒ neither (1) nor (2) in period t − 1
![Page 37: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/37.jpg)
Slide 37
0 0
0 0 0t t t t t
t t t t t
v f v v
x C x C x
≥ ≥ ≥ ∨ ∨ ≤ ≤ ≤ ≤ =
(1)
Start production
(2)
Continue production
(3)
Produce nothing
11
110
t t t
t t t
v f y
x C y
≥≤ ≤
2
22
0
0t
t t t
v
x C y
≥≤ ≤
3
3
0
0t
t
v
x
≥=
3 3 3
1 1 1
, ,
{0,1}, 1,2,3
k kt t t t t tk
k k k
tk
v v x x y y
y k= = =
= = =
∈ =
∑ ∑ ∑
Convex hull MILP model of disjunction:
![Page 38: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/38.jpg)
Slide 38
11
110
t t t
t t t
v f y
x C y
≥≤ ≤
2
22
0
0t
t t t
v
x C y
≥≤ ≤
3
3
0
0t
t
v
x
≥=
3 3 3
1 1 1
, ,
{0,1}, 1,2,3
k kt t t t t tk
k k k
tk
v v x x y y
y k= = =
= = =
∈ =
∑ ∑ ∑
Convex hull MILP model of disjunction:
To simplify, define
zt = yt1
yt = yt2
![Page 39: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/39.jpg)
Slide 39
1
10t
t t
t
t
tv f
x
z
zC
≥≤ ≤
2
2
0
0 t
t
t t
v
x yC
≥≤ ≤
3
3
0
0t
t
v
x
≥=
3 3
1 1
, ,
{0,1}, 1,
1
2,3,
k kt t t t t t
t t
k k
v v x x
k
z y
z y= =
+
∈ =
≤= =∑ ∑
Convex hull MILP model of disjunction:
To simplify, define
zt = yt1
yt = yt2
= 1 for startup = 1 for continued production
![Page 40: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/40.jpg)
Slide 40
1
10t t t
t t t
v f z
x C z
≥≤ ≤
2
2
0
0t
t t t
v
x C y
≥≤ ≤
3
3
0
0t
t
v
x
≥=
3 3
1 1
, , 1
, {0,1}, 1,2,3
k kt t t t t t
k k
t t
v v x x z y
z y k= =
= = + ≤
∈ =
∑ ∑
Convex hull MILP model of disjunction:
Sinceset
3 0tx =1 2
t t tx x x= +
![Page 41: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/41.jpg)
Slide 41
1
0 ( )t
t t t
t t tx C y
v z
z
f
≤ ≤ +≥ 2 0tv ≥ 3 0tv ≥
3
1
, 1
, {0,1}, 1,2,3
kt t t t
k
t t
v v z y
z y k=
= + ≤
∈ =
∑
Convex hull MILP model of disjunction:
Sinceset
3 0tx =1 2
1 1 2x x x= +
![Page 42: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/42.jpg)
Slide 42
1
0 ( )t t t
t t t t
v f z
x C z y
≥≤ ≤ +
2 0tv ≥ 3 0tv ≥
3
1
, 1
, {0,1}, 1,2,3
kt t t t
k
t t
v v z y
z y k=
= + ≤
∈ =
∑
Convex hull MILP model of disjunction:
Since vt occurs positively in the objective function, and do not play a role, let 2 3,t tv v 1
t tv v=
![Page 43: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/43.jpg)
Slide 43
0 ( )t t t
t t t t
v f z
x C z y
≥≤ ≤ +
1
, {0,1}, 1,2,3t t
t t
z y
z y k
+ ≤∈ =
Convex hull MILP model of disjunction:
Since vt occurs positively in the objective function, and do not play a role, let 2 3,t tv v 1
t tv v=
![Page 44: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/44.jpg)
Slide 44
0 ( )t t t
t t t t
v f z
x C z y
≥≤ ≤ +
1 1
1 1
1
, {0,1}, 1,2,3
1t t t
t
t
t
t
t
t t
y z y
z y
z
z z
y
y
k
− −
− −
+
≤∈
≤ −
≤=
+−
Formulate logical conditions:
(2) In period t ⇒ (1) or (2) in period t − 1
(1) In period t ⇒ neither (1) nor (2) in period t − 1
![Page 45: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/45.jpg)
Slide 45
1
m
0 ( )
in ( )n
t t t t
t t
tt
t
t t t t
v f z
x
p x h s
z
v
C y
=
≥≤ ≤ +
+ +∑
1 1
1 1
1
, {0,1}, 1,2,3
1
t t
t t
t t t
t t t
z y
z y k
y z y
z z y− −
− −
+ ≤∈ =
≤ +≤ − −
Add objective function
Unit production cost Unit holding cost
![Page 46: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/46.jpg)
Slide 46
Knapsack Models
Integer variables can also be used to express counting ideas.
This is totally different from the use of 0-1 variables to express unions of polyhedra.
![Page 47: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/47.jpg)
Slide 47
Example: Freight Transfer
• Transport 42 tons of freight using 8 trucks, which come in 4 sizes…
40334
50433
60532
90731
Cost per
truck
Capacity
(tons)
Number available
Truck size
![Page 48: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/48.jpg)
Slide 48 40334
50433
60532
90731
Cost per
truck
Capacity
(tons)
Number available
Truck type
1 2 3 4
1 2 3 4
1 2 3 4
min 90 60 50 40
7 5 4 3 42
8
{0,1,2,3}i
x x x x
x x x x
x x x x
x
+ + ++ + + ≥
+ + + ≤∈
Number of trucks of type 1
Knapsack covering constraint
Knapsack packing constraint
![Page 49: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/49.jpg)
Slide 49
Example: Freight Packing and Transfer
• Transport packages using n trucks
• Each package j has size aj.• Each truck i has capacity Qi.
![Page 50: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/50.jpg)
Slide 50
Knapsack component
The trucks selected must have enough capacity to carry the load.
1
n
i i ji j
Q y a=
≥∑ ∑
= 1 if truck i is selected
![Page 51: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/51.jpg)
Slide 51
Disjunctive component (with embedded knapsack constraint)
0
0
0 1, all
i ii
j ij ij ij
ij
z cz
a x Qx
x j
≥
≥ ≤ ∨ = ≤ ≤
∑
Truck iselected
Truck i notselected
= 1 if package j is loaded on truck i
Cost of operating truck i
Cost variable
Use continuous relaxation
because we want a disjunction of linear systems
![Page 52: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/52.jpg)
Slide 52
0
0
0 1, all
i ii
j ij ij ij
ij
z cz
a x Qx
x j
≥
≥ ≤ ∨ = ≤ ≤
∑
Truck iselected
Truck i notselected
0
i i i
j ij i ij
ij i
z c y
a x Q y
x y
≥≤
≤ ≤
∑
Convex hull MILP
formulation
Disjunctive component (with embedded knapsack constraint)
![Page 53: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/53.jpg)
Slide 53
The resulting model
Disjunctive component
Logical condition (each package must be shipped)
Knapsack component
1
1
1
min
, all
0 , all ,
1 , all
, {0,1}
n
i ii
j ij i ij
ij i
n
iji
n
i i ji j
ij i
c y
a x Q y i
x y i j
x j
Q y a
x y
=
=
=
≤
≤ ≤
=
≥
∈
∑
∑
∑
∑ ∑
![Page 54: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/54.jpg)
Slide 54
The resulting model
1
1
1
min
, all
0 , all ,
1 , all
, {0,1}
n
i ii
j ij i ij
ij i
n
iji
n
i i ji j
ij i
c y
a x Q y i
x y i j
x j
Q y a
x y
=
=
=
≤
≤ ≤
=
≥
∈
∑
∑
∑
∑ ∑
The yi is redundant but makes the continuous relaxation
tighter.
This is a modeling “trick,” part of the folklore of modeling.
![Page 55: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/55.jpg)
Slide 55
The resulting model
1
1
1
min
, all
0 , all ,
1 , all
, {0,1}
n
i ii
j ij i ij
ij i
n
iji
n
i i ji j
ij i
c y
a x Q y i
x y i j
x j
Q y a
x y
=
=
=
≤
≤ ≤
=
≥
∈
∑
∑
∑
∑ ∑
The yi is redundant but makes the continuous relaxation
tighter.
This is a modeling “trick,” part of the folklore of modeling.
Conventional modeling wisdom would not use this constraint,
because it is the sum of the first constraint over i.
But it radically reduces solution time, because it generates
knapsack cuts.
This argues for a principled approach to modeling.
![Page 56: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/56.jpg)
Slide 56
Constraint Programming Models
CP Modeling SystemsGlobal Constraints
Employee Scheduling
![Page 57: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/57.jpg)
Slide 57
CP Modeling Systems
• Commercial modeling systems with dedicated solvers
• OPL Studio (runs ILOG Solver, ILOG Scheduler)
• CHIP (runs CHIP solver)
• Mosel (runs Xpress-Kalis)
• Mozart (uses Oz language)
• Non-commercial modeling system with dedicated solvers
• ECLiPSe (runs ECLiPSe CP solver)
![Page 58: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/58.jpg)
Slide 58
Global constraints
• A global constraint represents a set of constraints with special structure.
• The structure is exploited by filtering algorithms in the CP solver.
![Page 59: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/59.jpg)
Slide 59
Some general-purpose global constraints
Alldiff - Requires that all the listed variables take different values.
Among - Bounds the number of listed variables that take one of the values in a list.
Cardinality - Bounds the number of listed variables that take each of the values in a list.
Element - Requires that a given variable take the yth value in a list, where y is an integer variable.
Path - Requires that a given graph contain a path of at most a given length.
![Page 60: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/60.jpg)
Slide 60
Some global constraints for scheduling
Disjunctive - Requires that no two jobs overlap in time.
Cumulative - Limits the resources consumed by jobs running at any one time. In particular, it can limit the number of jobs running at any one time.
Stretch - Bounds the length of a stretch of contiguous periods assigned the same job.
Sequence – A set of overlapping among constraints.
Regular – Generalizes stretch and sequence.
Diffn - Requires that no two boxes in a set of multidimensional boxes overlap. Used for space or space-time packing.
![Page 61: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/61.jpg)
Slide 61
Example: Employee Scheduling
• Schedule four nurses in 8-hour shifts.
• A nurse works at most one shift a day, at least 5 days a week.
• Same schedule every week.
• No shift staffed by more than two different nurses in a week.
• A nurse cannot work different shifts on two consecutive days.
• A nurse who works shift 2 or 3 must do so at least two days in a row.
![Page 62: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/62.jpg)
Slide 62
Two ways to view the problem
DCCDDDDShift 3
BBBBCCCShift 2
AAAAABAShift 1
SatFriThuWedTueMonSun
Assign nurses to shifts
3003333Nurse D
0330222Nurse C
2222010Nurse B
1111101Nurse A
SatFriThuWedTueMonSun
Assign shifts to nurses
0 = day off
![Page 63: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/63.jpg)
Slide 63
Use both formulations in the same model!
First, assign nurses to shifts.
Let wsd = nurse assigned to shift s on day d
1 2 3alldiff( , , ), all d d dw w w d The variables w1d, w2d, w3d take different values
That is, schedule 3 different nurses on each day
![Page 64: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/64.jpg)
Slide 64
( )1 2 3alldiff( , , ), all
cardinality | ( , , , ),(5,5,5,5),(6,6,6,6)d d dw w w
w A B C
d
D
A occurs at least 5 and at most 6 times in the array w, and similarly for B, C, D.
That is, each nurse works at least 5 and at most 6 days a week
Use both formulations in the same model!
First, assign nurses to shifts.
Let wsd = nurse assigned to shift s on day d
![Page 65: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/65.jpg)
Slide 65
( )( )
( )
1 2 3
,Sun ,Sat
alldiff , , , all
cardinality | ( , , , ),(5,5,5,5),(6,6,6,6)
nvalues ,..., |1,2 , all
d d d
s s
w w w
w
d
A B C D
w w s
The variables ws,Sun, …, ws,Sat take at least 1 and at most 2 different values.
That is, at least 1 and at most 2 nurses work any given shift.
Use both formulations in the same model!
First, assign nurses to shifts.
Let wsd = nurse assigned to shift s on day d
![Page 66: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/66.jpg)
Slide 66
Remaining constraints are not easily expressed in this notation.
So, assign shifts to nurses.
Let yid = shift assigned to nurse i on day d
( )1 2 3,alldiff , all ,d d dy y y d
Assign a different nurse to each shift on each day.
This constraint is redundant of previous constraints, but redundant constraints speed solution.
![Page 67: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/67.jpg)
Slide 67
( )( )
1 2 3
,Sun ,Sat
alldiff , all
stretch , , | (2,3),(2,2),(6,6), , all
, ,d d d
i i
y
P i
y
y y
dy
…
Every stretch of 2’s has length between 2 and 6.Every stretch of 3’s has length between 2 and 6.
So a nurse who works shift 2 or 3 must do so at least two days in a row.
Remaining constraints are not easily expressed in this notation.
So, assign shifts to nurses.
Let yid = shift assigned to nurse i on day d
![Page 68: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/68.jpg)
Slide 68
( )( )
1 2 3
,Sun ,Sat
alldiff , all
stretch , , | (2,3),(2,2),(6,6), , all
, ,d d d
i i
y
P i
y
y y
dy
…
Here P = {(s,0),(0,s) | s = 1,2,3}
Whenever a stretch of a’s immediately precedes a stretch of b’s, (a,b) must be one of the pairs in P.
So a nurse cannot switch shifts without taking at least one day off.
Remaining constraints are not easily expressed in this notation.
So, assign shifts to nurses.
Let yid = shift assigned to nurse i on day d
![Page 69: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/69.jpg)
Slide 69
Now we must connect the wsd variables to the yid variables.
Use channeling constraints:
, all ,
, all ,i
d
d
s
d
w
y
dy
i iw d
s s d
=
=
Channeling constraints increase propagation and make the problem easier to solve.
![Page 70: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/70.jpg)
Slide 70
The complete model is:
, all ,
, all ,i
d
d
s
d
w
y
dy
i iw d
s s d
=
=
( )( )
( )
1 2 3
,Sun ,Sat
alldiff , , , all
cardinality | ( , , , ),(5,5,5,5),(6,6,6,6)
nvalues ,..., |1,2 , all
d d d
s s
w w w
w
d
A B C D
w w s
( )( )
1 2 3
,Sun ,Sat
alldiff , all
stretch , , | (2,3),(2,2),(6,6), , all
, ,d d d
i i
y
P i
y
y y
dy
…
![Page 71: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/71.jpg)
Slide 71
Integrated Models
Modeling SystemsProduct Configuration
Machine Assignment and Scheduling
![Page 72: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/72.jpg)
Slide 72
Integrated Modeling Systems
• Commercial modeling systems with dedicated solvers
• OPL Studio (runs CPLEX, ILOG Solver/Scheduler)
• Mosel (runs Xpress-MP, Xpress-Kalis)
• Non-commercial modeling systems with dedicated solvers
• ECLiPSe (runs ECLiPSe CP solver, Xpress-MP)
• SIMPL (just released, open source)
![Page 73: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/73.jpg)
Slide 73
This example combines MILP modeling with variable indices, used in constraint programming.
• It can be solved by combining MILP and CP techniques.
Example: Product Configuration
![Page 74: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/74.jpg)
Slide 74
Memory
Memory
Memory
Memory
Memory
Memory
Powersupply
Powersupply
Powersupply
Powersupply
Disk drive
Disk drive
Disk drive
Disk drive
Disk drive
Choose what type of each component, and how many
Personal computer
The problem
![Page 75: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/75.jpg)
Slide 75
min
, all
, all
i
j jj
j i ijtik
j j j
c v
v q A j
L v U j
=
≤ ≤
∑
∑
Amount of attribute jproduced
(< 0 if consumed): memory, heat, power,
weight, etc.
Quantity of component i
installed
Integrated model
Amount of attribute jproduced by type ti
of component i
Unit cost of producing attribute j
![Page 76: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/76.jpg)
Slide 76
min
, all
, all
i
j jj
j i ijtik
j j j
c v
v q A j
L v U j
=
≤ ≤
∑
∑
Integrated model
ti is a variable index
( )1
, all
element ,( , , ), , all ,
j ii
i i ij i ijn i
v z j
t q A q A z i j
=∑
…
This is reformulated
![Page 77: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/77.jpg)
Slide 77
min
, all
, all
i
j jj
j i ijtik
j j j
c v
v q A j
L v U j
=
≤ ≤
∑
∑
Integrated model
ti is a variable index
( )1
, all
element ,( ), , all ,, ,i
j ii
i ij i i n ij
v z j
t zq A q A i j
=∑
…
This is reformulated
Set zi equal to the tith item in the red list.
![Page 78: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/78.jpg)
Slide 78
Machine Assignment and Scheduling
• Assign jobs to machines and schedule the machines assigned to each machine within time windows.
• The objective is to minimize makespan.
• Combine MILP and CP modeling
Time lapse between start of first job and end of last job.
![Page 79: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/79.jpg)
Slide 79
Machine Scheduling
( )
min
, all
, all
disjunctive ( ),( ) , all
j
j
j x j
j j j x j
j j ij j
M
M s p j
r s d p j
s x i p x i i
≥ +
≤ ≤ −
= =
Start time variable for job j
Makespan
The model is Processing time of job jon machine xj Machine
assigned to job j
![Page 80: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/80.jpg)
Slide 80
Machine Scheduling
( )
min
, all
, all
disjunctive ( ),( ) , all
j
j
j x j
j j j x j
j j ij j
M
M s p j
r s d p j
s x i p x i i
≥ +
≤ ≤ −
= =
Release time for job j Time windows
The model is
Deadline for job j
![Page 81: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/81.jpg)
Slide 81
Machine Scheduling
( )
min
, all
, all
disjunctive ( ),( ) , all
j
j
j x j
j j j x j
j j ij j
M
M s p j
r s d p j
s x i p x i i
≥ +
≤ ≤ −
= =
Start times of jobs assigned to machine i
Disjunctive global constraint requires that Jobs do not overlap
The model is
![Page 82: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/82.jpg)
Slide 82
Machine Scheduling
( )
min
, all
, all
disjunctive ( ),( ) , all
j
j
j x j
j j j x j
j j ij j
M
M s p j
r s d p j
s x i p x i i
≥ +
≤ ≤ −
= =
The problem can be solved by logic-based Benders decomposition.
Master problem is this plus Benders cuts, solved as an MILP
![Page 83: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/83.jpg)
Slide 83
Machine Scheduling
( )
min
, all
, all
disjunctive ( ),( ) , all
j
j
j x j
j j j x j
j j ij j
M
M s p j
r s d p j
s x i p x i i
≥ +
≤ ≤ −
= =
The problem can be solved by logic-based Benders decomposition.
Master problem is this plus Benders cuts, solved as an MILP
Subproblem is this, solved by CP
![Page 84: A Tour of Modeling Techniques - Tepper School of Businesspublic.tepper.cmu.edu/jnh/modelingUK.pdf · 2008-06-03 · Slide 9 Disjunctive Modeling Theorem . A subset of continuous space](https://reader033.vdocument.in/reader033/viewer/2022060306/5f097b447e708231d42708d1/html5/thumbnails/84.jpg)
Slide 84
Proposal
• Replace atomistic modeling with modeling based on global constraints.
• Including specially-structured families of inequalities.
• Build solvers with constraint-based control.
• Each global constraint invokes specialized filters, relaxations, cutting planes.