Upload
rohit-gothwal
View
217
Download
0
Embed Size (px)
Citation preview
7/30/2019 steel stacking.pdf
1/47
7/30/2019 steel stacking.pdf
2/47
Problem descriptionSolution methodsProblem variants
Conclusions
Contents
1 Problem description
2 Solution methodsMIP solution
Branch-and-boundSimulation-based optimization
3 Problem variantsMore general structures
Limited movementsDynamicsOther objectives
4 Conclusions
Joao Pedro Pedroso Steel stacking
7/30/2019 steel stacking.pdf
3/47
Problem descriptionSolution methodsProblem variants
Conclusions
Contents
1 Problem description
2 Solution methodsMIP solution
Branch-and-boundSimulation-based optimization
3 Problem variantsMore general structures
Limited movementsDynamicsOther objectives
4 Conclusions
Joao Pedro Pedroso Steel stacking
7/30/2019 steel stacking.pdf
4/47
Problem descriptionSolution methodsProblem variants
Conclusions
Informal problem description
Context
A steel producer has a warehouse where the final product isstocked
large steel bars enter the warehouse when production finishesbars leave the warehouse on trucks or ships for transportingthem to the final customer
there is a crane in the warehouse, which moves the bars one
at a timethe warehouse has p different places
each place can be empty, or keep a stack of steel bars
Joao Pedro Pedroso Steel stacking
P bl d i i
7/30/2019 steel stacking.pdf
5/47
Problem descriptionSolution methodsProblem variants
Conclusions
Informal problem description
Assumptions
capacity of the stacks is infinite
no delays on crane movements
crane can move only one item at a time
only the item on the top of the stack can be moved
item on top of each stack may have to be relocated(reshuffling)
Objective
minimize the number of movements made by the crane
Joao Pedro Pedroso Steel stacking
P bl d i ti
7/30/2019 steel stacking.pdf
6/47
Problem descriptionSolution methodsProblem variants
Conclusions
Steel stacking
Joao Pedro Pedroso Steel stacking
Problem description
7/30/2019 steel stacking.pdf
7/47
Problem descriptionSolution methodsProblem variants
Conclusions
Steel stacking
Data
p N number of stacks on the warehousen N number of itemsRi N, i = 1, . . . , n release datesDi N, i = 1, . . . , n delivery dates
Joao Pedro Pedroso Steel stacking
Problem description
7/30/2019 steel stacking.pdf
8/47
Problem descriptionSolution methodsProblem variants
Conclusions
Steel stacking
Constraintscrane can move only the item on top of the stack
release and delivery dates must be satisfied
the valid movements depend on R, D, and on the choices
made up to the moment.
Solution representation
List of movements from a stack (o) to another (d)M = [(o1, d1), . . . , (ok, dk)]
0 oi p and 1 di p+ 1}
stack 0 represents the production facility
stack p+ 1 represents the customer track/ship.
we want to minimize the number of movements (size of M)Joao Pedro Pedroso Steel stacking
Problem description
7/30/2019 steel stacking.pdf
9/47
Problem descriptionSolution methodsProblem variants
Conclusions
Example
A16
B10
C
12D14
stack 2stack 1stack 0 stack 3
(client)(production)
Movements:
[]
Joao Pedro Pedroso Steel stacking
Problem description
7/30/2019 steel stacking.pdf
10/47
Problem descriptionSolution methodsProblem variants
Conclusions
Example step 1
A16
B10
C
12D14
stack 2stack 1stack 0 stack 3
(client)(production)
Movements:
[]
Joao Pedro Pedroso Steel stacking
Problem description
7/30/2019 steel stacking.pdf
11/47
pSolution methodsProblem variants
Conclusions
Example step 1
B10
C
12D14
stack 2stack 1stack 0 stack 3
(client)(production)
A16
Movements:
[(0, 1)]
Joao Pedro Pedroso Steel stacking
Problem description
7/30/2019 steel stacking.pdf
12/47
pSolution methodsProblem variants
Conclusions
Example step 2
B10
C
12D14
stack 2stack 1stack 0 stack 3
(client)(production)
A16
Movements:
[(0, 1)]
Joao Pedro Pedroso Steel stacking
Problem description
7/30/2019 steel stacking.pdf
13/47
Solution methodsProblem variants
Conclusions
Example step 2
C
12D14
stack 2stack 1stack 0 stack 3
(client)(production)
A16
B10
Movements:
[(0, 1), (0, 1)]
Joao Pedro Pedroso Steel stacking
Problem descriptionS l h d
7/30/2019 steel stacking.pdf
14/47
Solution methodsProblem variants
Conclusions
Example step 3
C
12D14
stack 2stack 1stack 0 stack 3
(client)(production)
A16
B10
Movements:
[(0, 1), (0, 1)]
Joao Pedro Pedroso Steel stacking
Problem descriptionS l i h d
7/30/2019 steel stacking.pdf
15/47
Solution methodsProblem variants
Conclusions
Example step 3
D14
stack 2stack 1stack 0 stack 3
(client)(production)
A16
B10
C12
Movements:
[(0, 1), (0, 1), (0, 2)]
Joao Pedro Pedroso Steel stacking
Problem descriptionSol tio ethods
7/30/2019 steel stacking.pdf
16/47
Solution methodsProblem variants
Conclusions
Example step 4
D14
stack 2stack 1stack 0 stack 3
(client)(production)
A16
B10
C12
Movements:
[(0, 1), (0, 1), (0, 2)]
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methods
7/30/2019 steel stacking.pdf
17/47
Solution methodsProblem variants
Conclusions
Example step 4
stack 2stack 1stack 0 stack 3
(client)(production)
A16
B10
C12
D14
Movements:
[(0, 1), (0, 1), (0, 2), (0, 2)]
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methods
7/30/2019 steel stacking.pdf
18/47
Solution methodsProblem variants
Conclusions
Example step 5
stack 2stack 1stack 0 stack 3
(client)(production)
A16
B10
C12
D14
Movements:
[(0, 1), (0, 1), (0, 2), (0, 2)]
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methods
7/30/2019 steel stacking.pdf
19/47
Solution methodsProblem variants
Conclusions
Example step 5
stack 2stack 1stack 0 stack 3
(client)(production)
A16
C12
D14
B10
Movements:
[(0, 1), (0, 1), (0, 2), (0, 2), (1, 3)]
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methods
7/30/2019 steel stacking.pdf
20/47
So ut o et odsProblem variants
Conclusions
Example step 6
stack 2stack 1stack 0 stack 3
(client)(production)
A16
C12
D14
B10
Movements:
[(0, 1), (0, 1), (0, 2), (0, 2), (1, 3)]
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methods
7/30/2019 steel stacking.pdf
21/47
Problem variantsConclusions
Example step 6
stack 2stack 1stack 0 stack 3
(client)(production)
A16
C12
B10
D14
Movements:
[(0, 1), (0, 1), (0, 2), (0, 2), (1, 3), (2, 1)]
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methods
7/30/2019 steel stacking.pdf
22/47
Problem variantsConclusions
Example step 7
stack 2stack 1stack 0 stack 3
(client)(production)
A16
C12
B 10D14
Movements:
[(0, 1), (0, 1), (0, 2), (0, 2), (1, 3), (2, 1), (2, 3), (1, 3), (1, 3)]This information is complemented with release and due dates.
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methods
7/30/2019 steel stacking.pdf
23/47
Problem variantsConclusions
Solution representation: MIP
If we want to solve the problem with standard optimization tools:MIP formulation:
Sets
T N time horizon (the number of periods in the model)N N number of items
W N the number of stacks in the warehouse (warehousewidth).
H N the maximum number of items that can be in a stack
at any given instant (warehouse height).R RN item release dates (Ri denotes the release date of itemi).
D RN item due dates (Di denotes the due date of item i).
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methodsP bl i
7/30/2019 steel stacking.pdf
24/47
Problem variantsConclusions
Solution representation: MIP
Problem: number of periods that have to be considered
Worst case: T = 2N +N1
n=1 n
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methodsP bl i t
7/30/2019 steel stacking.pdf
25/47
Problem variantsConclusions
Solution representation: MIP
MIP formulation
Variables
xijnt 1 if item n is released into position (i,j) at period t
yijklnt 1 if item n is relocated from position (i,j) into (k, l)at period t
zijnt 1 if item n is delivered from position (i,j) at period tant 1 if item n has not entered the warehouse yet at pe-
riod tbijnt 1 if item n is in row j of stack i at period t
cnt 1 if item n has already left the warehouse at period t
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methodsProblem variants
7/30/2019 steel stacking.pdf
26/47
Problem variantsConclusions
Solution representation: branch-and-bound
Branch-and-bound
When an item is released/relocated:Check all stacks where it can be placedCreate a branch for each of them
When an item is delivered from top: move without branching.
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methodsProblem variants
MIP solutionBranch-and-bound
7/30/2019 steel stacking.pdf
27/47
Problem variantsConclusions
Simulation-based optimization
Contents
1 Problem description
2 Solution methodsMIP solutionBranch-and-boundSimulation-based optimization
3 Problem variantsMore general structuresLimited movements
DynamicsOther objectives
4 Conclusions
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methodsProblem variants
MIP solutionBranch-and-boundS
7/30/2019 steel stacking.pdf
28/47
Problem variantsConclusions
Simulation-based optimization
MIP
formulate the problem, create modelread an instance
send it to a solver
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methodsProblem variants
MIP solutionBranch-and-boundSi l i b d i i i
7/30/2019 steel stacking.pdf
29/47
Problem variantsConclusions
Simulation-based optimization
Branch-and-bound method
(1) create empty queue Q(2) push root node into Q(3) while Q is not empty
(4) pop a node from Q(5) i item to be placed next on node (6) foreach stack s where i can be placed(7) a copy of node (8) place item i in stack s on node
(9) execute deliveries from top of stacks in
(10) if is a leaf node(11) check if contains a better solution(12) push node into Q
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methodsProblem variants
MIP solutionBranch-and-boundSi l ti b d ti i ti
7/30/2019 steel stacking.pdf
30/47
ConclusionsSimulation-based optimization
Discrete event simulation
type of simulation used on systems where the state variationsare discrete
computationally inexpensive
In our case:each simulation run involves some randomness: stack for each itemis selected randomly from list of candidates
different runs lead to different solutions
at the end, choose the best run (a large number of runs may berequired for obtaining good results)
several stacking strategies (heuristics) can be used and tested
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methodsProblem variants
MIP solutionBranch-and-boundSimulation based optimization
7/30/2019 steel stacking.pdf
31/47
ConclusionsSimulation-based optimization
Simulation strategy:
Heuristics for choosing a stack for an item are applied
1 on arrival of an item
2 when moving an item from the top, to reach another below it
(reshuffling).
Processing order
delivery has precedence over stacking released items
simultaneous releases are processed by inverse delivery datesimultaneous deliveries are processed from top to bottom ofthe stack
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methodsProblem variants
MIP solutionBranch-and-boundSimulation-based optimization
7/30/2019 steel stacking.pdf
32/47
ConclusionsSimulation-based optimization
Simultaneous deliveries:
10
stack 2stack 1
16
10
14
12
A
B
C
D
E
No specified order onsimultaneous deliveries:
1 {C, D} : s2 s1
2 E : s2 client3 {D, C, A} : s1 s24 B : s1 client
7 movements
Deliveries processed by itemdepth:
1 A : s1 s2
2 B : s1 client3 {A, C, D} : s2 s14 E : s2 client
6 movements
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methodsProblem variants
C l i
MIP solutionBranch-and-boundSimulation-based optimization
7/30/2019 steel stacking.pdf
33/47
ConclusionsSimulation based optimization
Positioning heuristics
When placing an item
each position (i.e., each stack) is assigned a value, accordingto some rules
construct a candidate list of positions with best classification(depends on the heuristics used)
from this list, randomly choose one for placing the item
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methodsProblem variants
C l i
MIP solutionBranch-and-boundSimulation-based optimization
7/30/2019 steel stacking.pdf
34/47
ConclusionsSimulation based optimization
Heuristics: Optimize flexibility
we define flexibility of a position as the maximum number ofitems with different delivery dates that can be stacked,without causing an inversion
candidate stacks for an item are those which:
maximize flexibility and cause no inversionminimize flexibility, if an inversion is unavoidable
stack 1
3
8
5
1
23
6 4
stack 1 stack 2
3A B
C
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methodsProblem variants
Conclusions
MIP solutionBranch-and-boundSimulation-based optimization
7/30/2019 steel stacking.pdf
35/47
Conclusionsp
Simulation-based optimization
For this stacking heuristics:
do N independent simulation runschoose the run that lead to less crane movements
For each of the N runs:for each item, choose a stack according to the selectedheuristicscontinue processing item releases and deliveries, until havingall items delivered
return the number of movements required, and thecorresponding movement list
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methodsProblem variants
Conclusions
More general structuresLimited movementsDynamicsOther objectives
7/30/2019 steel stacking.pdf
36/47
Conclusions Other objectives
Contents
1 Problem description
2 Solution methodsMIP solutionBranch-and-bound
Simulation-based optimization
3 Problem variantsMore general structuresLimited movements
DynamicsOther objectives
4 Conclusions
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methodsProblem variants
Conclusions
More general structuresLimited movementsDynamicsOther objectives
7/30/2019 steel stacking.pdf
37/47
Conclusions Other objectives
Problem variants
There are many variants of the problem with practical interest:1 stacks are replaced by more general structures, such as
double-ended queues; this allows modeling e.g. cases whereitems are placed in a horizontal configuration, with accessfrom two ends;
2 crane movements are limited, and thus the number of stacksthat can be reached from a given position is limited;
3 placement in certain stacks limits crane movements, i.e., thegraph of connections is dynamically changed when items are
placed;4 crane movements induce significant delays, making the
assumption of immediate delivery unviable;
5 other objectives.
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methodsProblem variants
Conclusions
More general structuresLimited movementsDynamicsOther objectives
7/30/2019 steel stacking.pdf
38/47
Conclusions Other objectives
More general structures
E.g., double ended queues
B10
queue 1
C12
queue 3
A16
D14
queue 2
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methodsProblem variants
Conclusions
More general structuresLimited movementsDynamicsOther objectives
7/30/2019 steel stacking.pdf
39/47
u j
Limited movements
queue 1 queue 3queue 2
21 3
queue n
n
C12
B10
16A
14D
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methodsProblem variants
Conclusions
More general structuresLimited movementsDynamicsOther objectives
7/30/2019 steel stacking.pdf
40/47
j
Dynamics
queue 1 queue 3queue 2
21 3
queue n
n
C12
B10
16A
14D
1510
71510
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methodsProblem variants
Conclusions
More general structuresLimited movementsDynamicsOther objectives
7/30/2019 steel stacking.pdf
41/47
Dynamics: allowed movements change 1
queue 1 queue 3queue 2
21 3
queue n
n
C12
B10
16A
14D
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methodsProblem variants
Conclusions
More general structuresLimited movementsDynamicsOther objectives
7/30/2019 steel stacking.pdf
42/47
Dynamics: allowed movements change 2
queue 1 queue 3queue 2
21 3
queue n
n
C12
B10
16A
14D
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methodsProblem variants
Conclusions
More general structuresLimited movementsDynamicsOther objectives
7/30/2019 steel stacking.pdf
43/47
Dynamics: allowed movements change 3
queue 1 queue 3queue 2
21 3
queue n
n
C12
B10
16A
14D
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methodsProblem variants
Conclusions
More general structuresLimited movementsDynamicsOther objectives
7/30/2019 steel stacking.pdf
44/47
Dynamics: times change
queue 1 queue 3queue 2
21 3
queue n
n
C12
B10
16A
14D
15 25
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methodsProblem variants
Conclusions
More general structuresLimited movementsDynamicsOther objectives
7/30/2019 steel stacking.pdf
45/47
Other objectives
Another interesting variant:
1 minimize time of service of track/ship;
2 items are rearranged before track of ship arrive;3 aim: having the minimum number of movements for loading
the track/ship;
4 in some variants: more than one item may be moved a the
same time.
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methodsProblem variants
Conclusions
7/30/2019 steel stacking.pdf
46/47
Contents
1 Problem description
2 Solution methodsMIP solutionBranch-and-bound
Simulation-based optimization
3 Problem variantsMore general structuresLimited movements
DynamicsOther objectives
4 Conclusions
Joao Pedro Pedroso Steel stacking
Problem descriptionSolution methodsProblem variants
Conclusions
7/30/2019 steel stacking.pdf
47/47
Conclusions
Problem tackled: difficult (decision in one step may haveconsequences much later).
For tackling it:
MIP model;Specialized branch-and-bound;Simulation-based optimization.
Problem has many interesting variants.
Dynamics: configuration may change upon decisions taken.
Modeling issues: language for formalizing problem description.
New solution approaches: finite state automata.
Joao Pedro Pedroso Steel stacking