Supply Chain Management
Chapter 5:
Unified Optimization Methodology for
Operational Planning Problems
What to do when ILP takes too much
computation time?
Application of ILP
• Timetable Dutch Railways (NS)
• Bus and driver scheduling at Connexxion, GVU, Qbuzz
• Production planning at Hoogovens
• Advanced blending at Shell
• Plant location at Interbrew
• Cutting plastics at Exxon Mobil
• Crew planning at American Airlines Emerging area: Healthcare
Links:
• Customers of AIMMS
• http://www.ompartners.com/
Unified optimization methodology
= Decomposition approach= Column generation
• Faster than straightforward ILP, often better than heuristic
• Possibility to find very good (but not necessary optimal) solution with quality measure
• Many successful applications in SCM
• More advanced
Beun de Haas
Working timeDay
4 hours Friday
8 hours Thursday
4 hours Wednesday
8 hours Tuesday
6 hours Monday
Wed, thu, fri 4
2 hours 3
….. …..
….. etc
Mon, tue, thu 6
3 hours 2
Days Revenue
Duration Job
Mon, wed, fri 5
2 hours 1
The Beunhaas problem
• Beun de Haas is an independent entrepreneur.
• Clients contact him for small jobs.
• For each job j is given:
– the reward (cj); – the time it takes (aj);
– the days on which they can be done
• Planning period: days 1, . . . , T.
• Beun has Qt time on day t (t = 1, . . . , T). • Goal.Choose and plan the work to earn as much as possible.
Advanced ILP formulation
•
Formulation with day plans.
•
A day plan for day
t
is a set of jobs that Beun
can do on day
t
.
•
S
tis the set of feasible day plans for day
t
•
The reward of day plan
j
is equal to
C
jt•
Use a binary variable:
– xjt = 1 if day plan jfrom St is the chosen day plan for day t (and 0 otherwise).
Decomposition!!!!!
Job at most once
One plan per day
ILP with day plans
• Disadvantage: solving ILP may take a long time
• Solution: relax integrality constraints, LP-relaxation.
• Disadvantage: There are so many possible day plans
• Solution:Consider only interesting day plans
Job at most once
One plan per day
Column generation for LP
1. Start with a small set of day plans
2. Solve LP-relaxation.
3. Find out if there is a new dayplans that can improve the solution (= pricing)
4. No ⇒optimum found
5. Yes ⇒add plan to model and go to 2.
Pricing= Lagrangean subproblem
•
Finding out if there are day plans to improve
solution
•
Recall: variable can improve solution if and
only if reduced cost are positive
•
Pricing problem:
– Find day plan with maximal reduced cost
• If maximum > 0, add day plan
• Otherwise stop
Pricing (2)
•
So, find a `optimal’ dayplan for each day
t
– Yi = 1if job i is selected, 0 otherwise – Reduced cost
– Day plan has to fit
t n
1 i
i i n
1 i
i
iy y
c −
∑
π −λ∑
= =
∑
=≤
n
1 i
t i
iy Q
Pricing problem for given
t
}
1
,
0
{
y
Q
y
a
subject to
y
)
c
(
max
i n
1 i
t i i
i i n
1 i
i
∈
≤
π
−
∑
∑
= =
Finding integral solution
•
Solve LP-relaxation = upper bound
•
Then:
– Rounding
– Solve ILP with resulting set of columns
– Branch-and-price
Decomposition
• Master IP:
– Variables: 0/1 (or integer) for selection of feasible sub plans
– In principle huge number of variables
• Solve Master LP:
– Only include restricted collection of variables,i.e. only interesting variables
• Solution procedure:
1. Start with feasible solution from Master LP
2. Solve LP and find shadow prices
3. Consider sub problem to find interesting variables (with negative reduced cost for minimization problem)
4. Go to 2. if interesting columns (with negative reduced cost for minimization problem) were found
Master LP
Master IP
Lagrangean Subproblem (pricing problem)
Shadow prices
Feasible Subplan
Feasible Plan
Depot
Local delivery problem
– Chemicals are transported by truck from depot to 13 customers
– What should be the routes of the truck such that the cost are minimal?
Local delivery problem
• Master problem: Is every customer visited?
– Decision variablexrindicates selection of route r
– cr: cost of router
– ajr=1 if customeriin route r
r
x
i
x
a
x
c
r n
i
r ir
r r
all
for
}
1
,
0
{
all
for
1
s.t.
min
1
∈
≥
∑
∑
=
Local delivery problem (2)
•
Subproblem: Routes for individual trucks.
Solving the sub problem:
Maximize
corresponds with minimize reduced cost route
route in customer
i
−
c
π
∑
∑
π
−
route in customer
i route
c
Gate assignment at Schiphol
1.
ILP: 80 flights
2.
column generation: 560 flights = one day at
Gate assignment: Wat is het
probleem?
• We hebben een verzameling vluchten:
– Aankomst- en vertrektijd
– Type vliegtuig
– Herkomst en bestemming
– Eventuele voorkeuren van de maatschappij
– Grondafhandelaar
• En we hebben een verzameling gates:
– Mogelijke regio's (Schengen/EU/Non-EU)
– Mogelijke vliegtuigtypes (grootte)
– Mogelijke grondafhandelaren
• Gezocht: een optimale planning
Twee fasen aanpak
•
Gateplannen: verzameling vluchten op een
gate
1.
Zoek voor elke groep van `gelijke’ gates een
even groot aantal gateplannen.
2.
Koppel de gateplannen aan fysieke gates.
Kostenfunctie
•
Robuuste oplossingen
•
Variantie: (tussentijden)
2•
Of soortgelijke functie
•
Eventueel correcties voor:
– Vluchten zelfde maatschappij
– Vluchten zelfde grondafhandelaar
– Betrouwbaarheid maatschappij
Gate assignment at Schiphol fase 1
•
Master problem:
– Variables are plans for one gate
– Each flight is on exactly one gate
– Flight assigned to gate of correct type
– Other constraints …..
– Maximize robustness
•
Subproblem:
Kolom generatie fase 1
• Model
– xsgeeft selectie van plan s aan
– cs: kosten van plans
– ais=1 als vluchti in plan s
s x
i x a
x c
s s
s is
s s
∀ ∈
∀ =
∑
∑
} 1 , 0 {
n beperkinge overige
1 s.t.
min
Rekenresultaten
•
Een dagje Schiphol:
– Looptijd LP: 70-234 seconden
– Looptijd ILP: 5-333 seconden
Production scheduling
• 6 types of tires, planning for 8 weeks
• demands are given
• limited machine capacity
• cost: set up cost and inventory cost
Master problem: overall machine capacity
Production Schedule
Tire 1
Production Schedule
Tire 6
………..
Cutting stock
•
Iron bars of given length
•
Orders for small bars of different lengths
•
How to cut given orders from minimal
number of bars?
Decomposition:
•
Master LP: production of all ordered formats
•
Lagrangean subproblem: patterns for
Customer order
8 60 cm
22 48 cm
16 42 cm
13 35 cm
23 31 cm
24 27 cm
32 19 cm
Number
mi
Length
bi
Lengte staaf L: 1 meter
ILP with patterns
• Disadvantage: solving ILP may take a long time
• Solution: relax integrality constraints, LP-relaxation.
• Disadvantage: There are so many possible patterns
• Solution:Consider only interesting patterns:
Column generation.
Column generation for LP
1. Start with a small set of patterns
2. Solve LP-relaxation.
3. Find out if there is a new pattern that can improve the solution
4. No ⇒optimum found