Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

27
Berth and Quay Crane Allocation Problems: Dynamic Modeling and Nested Tabu Search Alan Erera 1 , Xiaole Han 2 1 School of Industrial and Systems Engineering, Georgia Tech 2 Department of Mechanical Engineering, Shanghai Jiao Tong TSL Workshop 2013

Transcript of Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

Page 1: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

Berth and Quay Crane Allocation Problems: Dynamic Modeling and Nested Tabu Search

Alan Erera1, Xiaole Han2

1 School of Industrial and Systems Engineering, Georgia Tech 2 Department of Mechanical Engineering, Shanghai Jiao Tong

TSL Workshop 2013

Page 2: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

What to remember

1. Berth and quay crane allocation problems are dynamic and stochastic

2. List-based multi-layer tabu search heuristics fast and effective for dynamic problems

3. Multistage problems with stochastic arrival times can be solved effectively with two-stage rolling horizon approximation models that minimize sample average cost

Page 3: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

Costly, bottleneck resources

• Multiple vessel berthing areas

Page 4: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

Costly, bottleneck resources

• Quay cranes

Page 5: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

Berth and crane allocation

• Assign berthing time, berthing position, and crane assignment to vessels

1 2 3 4 5 6 7 8 9 10

1

2

3

4

5

6

7

Time

Be

rth

Time period

Ber

thin

g a

rea

(dis

cret

ized

) Vessel

1

2

3

Page 6: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

Berth and crane allocation

• Minimize– Total dwell (flow) time – Total vessel delay time

vessel arrival

berthed departed

scheduled depart

dwell (flow) time

delay (non-negative)

Page 7: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

Dynamic BAP: Relative Position MIP

• Pack vessel rectangles in time and space, and ensure no pairwise overlap

Page 8: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

Deterministic Dynamic BAP

• Solving Relative Position MIP– Difficulty arises when vessel arrival times clustered

and when berth length accommodates several heterogeneous length vessels

– Short berth problems remain NP-hard: single machine scheduling problem with release time minimizing total completion (flow) time

– CPLEX for easier problems– Nested Tabu Search (Ak, 2008) for harder problems

Page 9: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

Nested Tabu Search for BAP

• Solution encoding–L : Vessel priority list

–B : Berth location of vessels

(2,1,3,4,5)

Page 10: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

Nested Tabu Search for BAP

• Fast search– Default decoding: first-fit bin packing– Second layer: berth position tweaking only for

primal non-tabu listsInitial Solution

L

B

Move 1

Move 2

Iter

atio

n

1Move 1

Move 2

Ite

rati

on

1

Move 1

Move 2

Ite

rati

on

2Move 1

Move 2

Iter

atio

n

2

LAYER 1: PRIORITY LIST MOVESLAYER 2: BERTH MOVES

Best Solution

First Fit

L P

Page 11: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

Dynamic BAP Results

• Easier instances– 10, 12, 14 vessels– Berth length per avg vessel length: 3– Arrival times in [0, 10], processing times in [1, 6]

• Harder instances– 20, 25, 30 vessels– Berth length per avg vessel length: 6– Arrival times in [0, 20], processing times in [1, 6]

Page 12: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

Dynamic BAP Results

• Easier instances– 69% solved to optimality by CPLEX– Tabu search finds equal or better solutions in every

instance• Harder instances

– None solved to optimality by CPLEX– Best lower bounds found by machine scheduling lower

bounding approach– Tabu search improves initial solutions by ~ 70%, similar

to performance on easier instances

Page 13: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

Dynamic BAP Results

• Tabu search is fast– Computation time in seconds

Page 14: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

Dynamic BQCAP Modeling

• Vessel processing times depend on number of quay cranes assigned– Assume crane assignment fixed for a shift– Completion time for a vessel is equal to start

time plus required crane-time divided by cranes assigned

– Fixed number of cranes available3

4

1

5

6 10

7

2

9

Time

Berth space

k-1 k k+1 k+2 k+3

8

11

12

13

Crane amount

Page 15: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

Dynamic and Stochastic BQCAP

• Decision stages: shifts• Information dynamics

– Vessel arrival times stochastic– Known with certainty as arrival time nears

• Decision dynamics– Berthing time, crane assignment adjustable each

shift– Berth position fixed in advance, for effective

container yard operations

Page 16: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

Dynamic and Stochastic BQCAP

• Assumptions– Vessels arriving, and arrival times, during a shift known– Berth position fixed one shift in advance

3

4

1

5

6 10

7

2

9

Time

Berth space

k-1 k k+1 k+2 k+3

8

11

12

13

A: berthed but unfinished at shift k

B: not berthed at shift k, but will arrive during k

C: uncertain arrival during k+1, k+2, …

num cranes

berth time*, num cranes**

berth pos, time**, cranes**

Decisions

Page 17: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

Modeling approach

• Multi-stage expected cost minimization (dynamic program)

• Approximate solution approach– Rolling horizon (roll-out)– Two-stage sample-average stochastic program

• In each scenario, assume that all arrival times are known at shift k+1

• Note that some actually some will indeed only become known later: approximation!

C Type Vessel

Page 18: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

cA

Two-stage approximation scheme

k k+1 k+m+1

AB ,bB

Par

amet

er AA, bA, sA

CA

1st stage 2nd stage

uB, sB0, cB0

bC

B1 B1,s c C C,s c

Certain info Uncertain scenarios

Fixed decisions

Recourse decisions under each scenario

executed adjustable by scenario

Fixed cost expected recourse cost

dec

isio

ns

Page 19: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

3-Layer Nested Tabu Search

TS1 LcA

uB,sB0,cB0

TS2

TS3

Decode

Re-decode

Pass 1

Pass 2

Supplement

Re-supplement

L

cA,cB0

bC

cA

uB,sB0,cB0

Pass 1

Pass 2 bC

L Pass 2

Pass 2

AA, AB

AA, AB

B1 B1

C C

,

,

s c

s c

B1 B1

C C

,

,

s c

s c

2 ( )L

CB1,A A

B1 C,A A

CB1,A A

B1 C,A A

0k

01k

k

k

k

1k Scenario decision

Executed decision

Best Fit

Sampled scenarios

Certain info &

expected uncertain

info

Page 20: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

3-Layer Nested Tabu Search

• Ideas– Greedy decisions (most cranes, earliest possible

berthing time) are used when decoding– Neighborhoods all variations of swap

• Swap positions of two vessels in priority lists• Swap one or more cranes between two vessels of the

same category that are simultaneously berthed

Page 21: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

Dynamic BQCAP Results

• “Easier” instances than Ak (2008)– Meisel & Bierwirth (2009)– 1000m quay, 10m sections, 1 hr time buckets, 10

quay cranes– 20, 30, 40 vessels per week– Two weeks– Shift length 24 hrs; horizon length 72 hrs– Minor arrival time uncertainty: +/- 3 hrs

Page 22: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

Dynamic BQCAP Results

• CPLEX solvable a posteriori

20 30 400

50

100

150

200

250

300

350

posterior cplex

rolling cplex

one-sample dynamic

calling vessel # per week

tota

l dw

ell

tim

e (

hr)

Page 23: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

Dynamic BQCAP Results

• CPLEX solvable a posteriori

20 30 400

2000

4000

6000

8000

10000

12000

14000

16000

2883

10854

14671

107 94 2931 4 22

posterior cplex

rolling cplex

one-sample dynamic

calling vessel # per week

cp

u r

un

tim

e (

s)

Page 24: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

Dynamic BQCAP Results

• CPLEX solvable a posteriori

20 30 400

2000

4000

6000

8000

10000

12000

14000

16000

2883

10854

14671

107 94 2931 4 22

posterior cplex

rolling cplex

one-sample dynamic

calling vessel # per week

cp

u r

un

tim

e (

s)

Page 25: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

Two-stage outperforms one-stage

• CPLEX solvable a posteriori

20 30 400.00%

1.00%

2.00%

3.00%

4.00%

5.00%

6.00%

1.49%

2.07%

5.31%

2.22%

5.07%

5.67%

0.67% 0.84%

1.70%

rolling cplex-expect

rolling cplex-estimate

30-sample dynamic

calling vessel # per week

op

tim

alit

y g

ap

of

tota

l dw

ell

tim

e

Page 26: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

Dynamic BQCAP Results

• CPLEX cannot solve a posteriori in 16 hours– measure gap to best upper bound

0 20000 40000 60000 800000.00%

1.00%

2.00%

3.00%

4.00%

5.00%

6.00%

7.00%

8.00%

9.00%

10.00%

0.37%

1.90%

9.09%

3.31%

rolling cplex-expect

rolling cplex-estimate

30-sample dynamic

one-sample dynamic

rolling cplex

cpu run time (s)

ga

p o

f to

tal d

we

ll ti

me

Page 27: Dynamic and Stochastic Berth and Quay Crane Allocation, TSL Workshop, 2013

What to remember

1. Berth and quay crane allocation problems are dynamic and stochastic

2. List-based multi-layer tabu search heuristics fast and effective for dynamic problems

3. Multistage problems with stochastic arrival times can be solved effectively with two-stage rolling horizon approximation models that minimize sample average cost