Steel stacking A problem in inventory management in the steel - - PowerPoint PPT Presentation

steel stacking
SMART_READER_LITE
LIVE PREVIEW

Steel stacking A problem in inventory management in the steel - - PowerPoint PPT Presentation

Problem description Solution methods Problem variants Conclusions Steel stacking A problem in inventory management in the steel industry Jo ao Pedro Pedroso International Symposium on Mathematics of Logistics TUMSAT, Japan, November 2011


slide-1
SLIDE 1

Problem description Solution methods Problem variants Conclusions

Steel stacking

A problem in inventory management in the steel industry Jo˜ ao Pedro Pedroso International Symposium on Mathematics of Logistics TUMSAT, Japan, November 2011 Part of the presentation concerns joint work with Rui Rei and Mikio Kubo.

Jo˜ ao Pedro Pedroso Steel stacking

slide-2
SLIDE 2

Problem description Solution methods Problem variants Conclusions

Contents

1

Problem description

2

Solution methods MIP solution Branch-and-bound Simulation-based optimization

3

Problem variants More general structures Limited movements Dynamics Other objectives

4

Conclusions

Jo˜ ao Pedro Pedroso Steel stacking

slide-3
SLIDE 3

Problem description Solution methods Problem variants Conclusions

Contents

1

Problem description

2

Solution methods MIP solution Branch-and-bound Simulation-based optimization

3

Problem variants More general structures Limited movements Dynamics Other objectives

4

Conclusions

Jo˜ ao Pedro Pedroso Steel stacking

slide-4
SLIDE 4

Problem description Solution methods Problem variants Conclusions

Informal problem description

Context A steel producer has a warehouse where the final product is stocked large steel bars enter the warehouse when production finishes bars leave the warehouse on trucks or ships for transporting them to the final customer there is a crane in the warehouse, which moves the bars one at a time the warehouse has p different places each place can be empty, or keep a stack of steel bars

Jo˜ ao Pedro Pedroso Steel stacking

slide-5
SLIDE 5

Problem description Solution methods Problem 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

  • nly 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

Jo˜ ao Pedro Pedroso Steel stacking

slide-6
SLIDE 6

Problem description Solution methods Problem variants Conclusions

Steel stacking

Jo˜ ao Pedro Pedroso Steel stacking

slide-7
SLIDE 7

Problem description Solution methods Problem variants Conclusions

Steel stacking

Data        p ∈ N number of stacks on the warehouse n ∈ N number of items Ri ∈ N, i = 1, . . . , n release dates Di ∈ N, i = 1, . . . , n delivery dates

Jo˜ ao Pedro Pedroso Steel stacking

slide-8
SLIDE 8

Problem description Solution methods Problem variants Conclusions

Steel stacking

Constraints crane 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)

Jo˜ ao Pedro Pedroso Steel stacking

slide-9
SLIDE 9

Problem description Solution methods Problem variants Conclusions

Example

A 16 B 10 C12 D14

stack 2 stack 1 stack 0 stack 3 (client) (production)

Movements: []

Jo˜ ao Pedro Pedroso Steel stacking

slide-10
SLIDE 10

Problem description Solution methods Problem variants Conclusions

Example – step 1

A 16 B 10 C12 D14

stack 2 stack 1 stack 0 stack 3 (client) (production)

Movements: []

Jo˜ ao Pedro Pedroso Steel stacking

slide-11
SLIDE 11

Problem description Solution methods Problem variants Conclusions

Example – step 1

B 10 C12 D14

stack 2 stack 1 stack 0 stack 3 (client) (production)

A 16

Movements: [(0, 1)]

Jo˜ ao Pedro Pedroso Steel stacking

slide-12
SLIDE 12

Problem description Solution methods Problem variants Conclusions

Example – step 2

B 10 C12 D14

stack 2 stack 1 stack 0 stack 3 (client) (production)

A 16

Movements: [(0, 1)]

Jo˜ ao Pedro Pedroso Steel stacking

slide-13
SLIDE 13

Problem description Solution methods Problem variants Conclusions

Example – step 2

C12 D14

stack 2 stack 1 stack 0 stack 3 (client) (production)

A 16 B 10

Movements: [(0, 1), (0, 1)]

Jo˜ ao Pedro Pedroso Steel stacking

slide-14
SLIDE 14

Problem description Solution methods Problem variants Conclusions

Example – step 3

C12 D14

stack 2 stack 1 stack 0 stack 3 (client) (production)

A 16 B 10

Movements: [(0, 1), (0, 1)]

Jo˜ ao Pedro Pedroso Steel stacking

slide-15
SLIDE 15

Problem description Solution methods Problem variants Conclusions

Example – step 3

D14

stack 2 stack 1 stack 0 stack 3 (client) (production)

A 16 B 10 C12

Movements: [(0, 1), (0, 1), (0, 2)]

Jo˜ ao Pedro Pedroso Steel stacking

slide-16
SLIDE 16

Problem description Solution methods Problem variants Conclusions

Example – step 4

D14

stack 2 stack 1 stack 0 stack 3 (client) (production)

A 16 B 10 C12

Movements: [(0, 1), (0, 1), (0, 2)]

Jo˜ ao Pedro Pedroso Steel stacking

slide-17
SLIDE 17

Problem description Solution methods Problem variants Conclusions

Example – step 4

stack 2 stack 1 stack 0 stack 3 (client) (production)

A 16 B 10 C12 D14

Movements: [(0, 1), (0, 1), (0, 2), (0, 2)]

Jo˜ ao Pedro Pedroso Steel stacking

slide-18
SLIDE 18

Problem description Solution methods Problem variants Conclusions

Example – step 5

stack 2 stack 1 stack 0 stack 3 (client) (production)

A 16 B 10 C12 D14

Movements: [(0, 1), (0, 1), (0, 2), (0, 2)]

Jo˜ ao Pedro Pedroso Steel stacking

slide-19
SLIDE 19

Problem description Solution methods Problem variants Conclusions

Example – step 5

stack 2 stack 1 stack 0 stack 3 (client) (production)

A 16 C12 D14 B 10

Movements: [(0, 1), (0, 1), (0, 2), (0, 2), (1, 3)]

Jo˜ ao Pedro Pedroso Steel stacking

slide-20
SLIDE 20

Problem description Solution methods Problem variants Conclusions

Example – step 6

stack 2 stack 1 stack 0 stack 3 (client) (production)

A 16 C12 D14 B 10

Movements: [(0, 1), (0, 1), (0, 2), (0, 2), (1, 3)]

Jo˜ ao Pedro Pedroso Steel stacking

slide-21
SLIDE 21

Problem description Solution methods Problem variants Conclusions

Example – step 6

stack 2 stack 1 stack 0 stack 3 (client) (production)

A 16 C12 B 10 D14

Movements: [(0, 1), (0, 1), (0, 2), (0, 2), (1, 3), (2, 1)]

Jo˜ ao Pedro Pedroso Steel stacking

slide-22
SLIDE 22

Problem description Solution methods Problem variants Conclusions

Example – step 7

stack 2 stack 1 stack 0 stack 3 (client) (production)

A 16 C12 B 10 D14

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.

Jo˜ ao Pedro Pedroso Steel stacking

slide-23
SLIDE 23

Problem description Solution methods Problem variants Conclusions

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 (warehouse width). 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 item i). D ∈ RN – item due dates (Di denotes the due date of item i).

Jo˜ ao Pedro Pedroso Steel stacking

slide-24
SLIDE 24

Problem description Solution methods Problem variants Conclusions

Solution representation: MIP

Problem: number of periods that have to be considered Worst case: T = 2N + N−1

n=1 n

Jo˜ ao Pedro Pedroso Steel stacking

slide-25
SLIDE 25

Problem description Solution methods Problem variants Conclusions

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 t ant – 1 if item n has not entered the warehouse yet at pe- riod t bijnt – 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

Jo˜ ao Pedro Pedroso Steel stacking

slide-26
SLIDE 26

Problem description Solution methods Problem variants Conclusions

Solution representation: branch-and-bound

Branch-and-bound When an item is released/relocated:

Check all stacks where it can be placed Create a branch for each of them

When an item is delivered from top: move without branching.

Jo˜ ao Pedro Pedroso Steel stacking

slide-27
SLIDE 27

Problem description Solution methods Problem variants Conclusions MIP solution Branch-and-bound Simulation-based optimization

Contents

1

Problem description

2

Solution methods MIP solution Branch-and-bound Simulation-based optimization

3

Problem variants More general structures Limited movements Dynamics Other objectives

4

Conclusions

Jo˜ ao Pedro Pedroso Steel stacking

slide-28
SLIDE 28

Problem description Solution methods Problem variants Conclusions MIP solution Branch-and-bound Simulation-based optimization

MIP

formulate the problem, create model read an instance send it to a solver

Jo˜ ao Pedro Pedroso Steel stacking

slide-29
SLIDE 29

Problem description Solution methods Problem variants Conclusions MIP solution Branch-and-bound 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

Jo˜ ao Pedro Pedroso Steel stacking

slide-30
SLIDE 30

Problem description Solution methods Problem variants Conclusions MIP solution Branch-and-bound Simulation-based optimization

Discrete event simulation

type of simulation used on systems where the state variations are discrete computationally “inexpensive” In our case:

each simulation run involves some randomness: stack for each item is 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 be required for obtaining good results)

several stacking strategies (heuristics) can be used and tested

Jo˜ ao Pedro Pedroso Steel stacking

slide-31
SLIDE 31

Problem description Solution methods Problem variants Conclusions MIP solution Branch-and-bound Simulation-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 date “simultaneous” deliveries are processed from top to bottom of the stack

Jo˜ ao Pedro Pedroso Steel stacking

slide-32
SLIDE 32

Problem description Solution methods Problem variants Conclusions MIP solution Branch-and-bound Simulation-based optimization

“Simultaneous” deliveries:

10 stack 2 stack 1 16 10 14 12

A B C D E

No specified order on simultaneous deliveries:

1 {C, D} : s2 → s1 2 E : s2 → client 3 {D, C, A} : s1 → s2 4 B : s1 → client

֒ → 7 movements Deliveries processed by item depth:

1 A : s1 → s2 2 B : s1 → client 3 {A, C, D} : s2 → s1 4 E : s2 → client

֒ → 6 movements

Jo˜ ao Pedro Pedroso Steel stacking

slide-33
SLIDE 33

Problem description Solution methods Problem variants Conclusions MIP solution Branch-and-bound Simulation-based optimization

Positioning heuristics

When placing an item each position (i.e., each stack) is assigned a value, according to 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

Jo˜ ao Pedro Pedroso Steel stacking

slide-34
SLIDE 34

Problem description Solution methods Problem variants Conclusions MIP solution Branch-and-bound Simulation-based optimization

Heuristics: Optimize flexibility

we define flexibility of a position as the maximum number of items 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 inversion minimize flexibility, if an inversion is unavoidable

stack 1 3 8 5 1 2 3

6 4 stack 1 stack 2 3

A B C

Jo˜ ao Pedro Pedroso Steel stacking

slide-35
SLIDE 35

Problem description Solution methods Problem variants Conclusions MIP solution Branch-and-bound Simulation-based optimization

Simulation-based optimization

For this stacking heuristics:

do N independent simulation runs choose the run that lead to less crane movements

For each of the N runs:

for each item, choose a stack according to the selected heuristics continue processing item releases and deliveries, until having all items delivered return the number of movements required, and the corresponding movement list

Jo˜ ao Pedro Pedroso Steel stacking

slide-36
SLIDE 36

Problem description Solution methods Problem variants Conclusions More general structures Limited movements Dynamics Other objectives

Contents

1

Problem description

2

Solution methods MIP solution Branch-and-bound Simulation-based optimization

3

Problem variants More general structures Limited movements Dynamics Other objectives

4

Conclusions

Jo˜ ao Pedro Pedroso Steel stacking

slide-37
SLIDE 37

Problem description Solution methods Problem variants Conclusions More general structures Limited movements Dynamics 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 where items are placed in a horizontal configuration, with access from two ends;

2 crane movements are limited, and thus the number of stacks

that can be reached from a given position is limited;

3 placement in certain stacks limits crane movements, i.e., the

graph 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. Jo˜ ao Pedro Pedroso Steel stacking

slide-38
SLIDE 38

Problem description Solution methods Problem variants Conclusions More general structures Limited movements Dynamics Other objectives

More general structures

E.g., double ended queues

B 10

queue 1

C12

queue 3

A 16 D14

queue 2

Jo˜ ao Pedro Pedroso Steel stacking

slide-39
SLIDE 39

Problem description Solution methods Problem variants Conclusions More general structures Limited movements Dynamics Other objectives

Limited movements

queue 1 queue 3 queue 2 2 1 3 queue n n

C 12 B 10

16

A

14

D

Jo˜ ao Pedro Pedroso Steel stacking

slide-40
SLIDE 40

Problem description Solution methods Problem variants Conclusions More general structures Limited movements Dynamics Other objectives

Dynamics

queue 1 queue 3 queue 2 2 1 3 queue n n

C 12 B 10

16

A

14

D

15 10 7 15 10

Jo˜ ao Pedro Pedroso Steel stacking

slide-41
SLIDE 41

Problem description Solution methods Problem variants Conclusions More general structures Limited movements Dynamics Other objectives

Dynamics: allowed movements change 1

queue 1 queue 3 queue 2 2 1 3 queue n n

C 12 B 10

16

A

14

D

Jo˜ ao Pedro Pedroso Steel stacking

slide-42
SLIDE 42

Problem description Solution methods Problem variants Conclusions More general structures Limited movements Dynamics Other objectives

Dynamics: allowed movements change 2

queue 1 queue 3 queue 2 2 1 3 queue n n

C 12 B 10

16

A

14

D

Jo˜ ao Pedro Pedroso Steel stacking

slide-43
SLIDE 43

Problem description Solution methods Problem variants Conclusions More general structures Limited movements Dynamics Other objectives

Dynamics: allowed movements change 3

queue 1 queue 3 queue 2 2 1 3 queue n n

C 12 B 10

16

A

14

D

Jo˜ ao Pedro Pedroso Steel stacking

slide-44
SLIDE 44

Problem description Solution methods Problem variants Conclusions More general structures Limited movements Dynamics Other objectives

Dynamics: times change

queue 1 queue 3 queue 2 2 1 3 queue n n

C 12 B 10

16

A

14

D

15 25

Jo˜ ao Pedro Pedroso Steel stacking

slide-45
SLIDE 45

Problem description Solution methods Problem variants Conclusions More general structures Limited movements Dynamics Other objectives

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.

Jo˜ ao Pedro Pedroso Steel stacking

slide-46
SLIDE 46

Problem description Solution methods Problem variants Conclusions

Contents

1

Problem description

2

Solution methods MIP solution Branch-and-bound Simulation-based optimization

3

Problem variants More general structures Limited movements Dynamics Other objectives

4

Conclusions

Jo˜ ao Pedro Pedroso Steel stacking

slide-47
SLIDE 47

Problem description Solution methods Problem variants Conclusions

Conclusions

Problem tackled: difficult (decision in one step may have consequences 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.

Jo˜ ao Pedro Pedroso Steel stacking