29
Optimal Crane Scheduling Samid Hoda, John Hooker Latife Genc Kaya, Ben Peterson Carnegie Mellon University 1/16 EWO - 13 November 2007 Iiro Harjunkoski ABB Corporate Research

Track-mounted cranes move materials & equipment

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Track-mounted cranes move materials & equipment

Optimal Crane SchedulingSamid Hoda, John Hooker

Latife Genc Kaya, Ben Peterson

Carnegie Mellon University

1/16EWO - 13 November 2007

Iiro Harjunkoski

ABB Corporate Research

Page 2: Track-mounted cranes move materials & equipment

3/16

Problem

• Track-mounted cranes move materials & equipment.

– We focus on longitudinal moves (left-right).– Cranes must not cross paths.

Page 3: Track-mounted cranes move materials & equipment

Example crane trajectories

time

longitude

4/16

• Schedule cranes to transfer material between locations.– 50-300 jobs with 1-8 tasks each.– Origin/destination and stop times for

each task.– Time windows and priorities.– Precedence constraints.

• Goal:– Follow production schedule as

closely as possible.

Problem

Page 4: Track-mounted cranes move materials & equipment

• Three problem levels.– Assign jobs to cranes.

– Sequence jobs on each crane.

– Plan crane trajectories.• Time granularity ≈ 10 sec over ∼24 hrs

6/16

Crane 1

14

5

10

7

9 11

15

1217

Crane 2

38

6

2 16

13

1814

Crane 1

Crane 2

Problem

…171512111097541Crane 1

…181614138632Crane 2

Page 5: Track-mounted cranes move materials & equipment

…1097541Crane 1

…8632Crane 2

…109746Crane 1

85312Crane 2

Algorithm 1: Two-phase search

• For 2-crane problems.• Phase 1

– Assign and sequence with local search.

• Phase 2– Compute optimal trajectory with dynamic programming.

Page 6: Track-mounted cranes move materials & equipment

Computes penalty

( )

+

=

∑ +

+⋅

+⋅

+⋅

+

+⋅

+⋅

+⋅

⋅ ctcctct

t

t

t

t

s

u

x

S

s

u

x

t

t

t

t ssg

s

u

x

f

s

u

x

f

t

t

t

t

t

t1,

1,

1,

1,

1 ,min

1,

1,

1,

• Basic DP recursion:

Transitions that satisfy constraints

Position

Loading/unloading time

Segment

Algorithm 1: Two-phase search

Page 7: Track-mounted cranes move materials & equipment

State Space Reduction

• Only certain trajectories must be considered.– Canonical trajectory for the left crane:

Wait as long as possible

Move as soon as possible

Follow leftmost trajectory that never moves backward (away from destination)

Page 8: Track-mounted cranes move materials & equipment

Depart from canonical trajectory

At each moment, follow canonical trajectory or right

crane’s trajectory, whichever is further to the left

Left crane Right crane

State Space Reduction

Page 9: Track-mounted cranes move materials & equipment

– Properties of the minimal trajectory:

• The left crane never stops en route unless it is adjacent to the right crane.

• The left crane never moves backward unless it is adjacent to the right crane.

State Space Reduction

Depart from canonical trajectory

Left crane Right crane

Page 10: Track-mounted cranes move materials & equipment

• Theorem: Some optimal pair of trajectories are minimal with respect to each other.

State Space Reduction

Page 11: Track-mounted cranes move materials & equipment

• Represent processing-time states as an interval of states.– Exploit the fact that cranes are processing (and

therefore at rest) most of the time.– Store these states in a 2-dimensional circular queue

data structure that persists through time.

State Space Reduction

Page 12: Track-mounted cranes move materials & equipment

c15c14c13c12c11

c21

c31

c41Compute these costs when a task pair for which both tasks are at their stop locations appears in the state space.

cij = cost-to-go when the left crane has been processing i time units and the right crane has been processing j time units.

State Space Reduction

Page 13: Track-mounted cranes move materials & equipment

c21c25c24c23c22

c31c32

c41c42

c11c15c14c13c12Compute these costs in the next period. No need to update existing costs.

Data structure is a 2-dimensional circular queue.

cij = cost-to-go when the left crane has been processing i time units and the right crane has been processing j time units.

State Space Reduction

Page 14: Track-mounted cranes move materials & equipment

c32c31c35c34c33

c42c41c43

c12c11c15c14c13

c22c21c25c24c23And similarly in the next period.

cij = cost-to-go when the left crane has been processing i time units and the right crane has been processing j time units.

State Space Reduction

Page 15: Track-mounted cranes move materials & equipment

c43c42c41c45c44

c13c12c11c15c14

c23c22c21c25c24

c33c32c31c35c34These costs do not correspond to separate states.

After this point the table is no longer needed and memory can be released.

cij = cost-to-go when the left crane has been processing i time units and the right crane has been processing j time units.

State Space Reduction

Page 16: Track-mounted cranes move materials & equipment

• New data structure reduced computation time an order of magnitude.– Computation time is sensitive to width of time

windows.– Can now solve 60-job problem with wide time

windows (∼1 hour)• Wide windows are necessary for feasible solution.

Computational Results

Page 17: Track-mounted cranes move materials & equipment

Effect of New Data Structure

Page 18: Track-mounted cranes move materials & equipment

Solution of 20-job Problem

Page 19: Track-mounted cranes move materials & equipment

State Space Size

Page 20: Track-mounted cranes move materials & equipment

Solution of 40-job Problem

Page 21: Track-mounted cranes move materials & equipment

State Space Size

Page 22: Track-mounted cranes move materials & equipment

Solution of 60-job Problem

Page 23: Track-mounted cranes move materials & equipment

State Space Size

Page 24: Track-mounted cranes move materials & equipment

Computation Time for one DP

Page 25: Track-mounted cranes move materials & equipment

crane 1new job:1,2,none

crane 2new job:2,3,none

craneyield:1,2

TrimStates

TrimStates

TrimStates

SimulationTime

State Space

12/16

Algorithm 2: Inexact DP

• Crane simulation.– Splits at decision

points.

• State trimming:– Eliminates inferior

states

• Applies to > 2 cranes.

Page 26: Track-mounted cranes move materials & equipment

WORKING

WAITING

MOVING

YIELDING

13/16

Algorithm 2: Inexact DP

• Discrete-event simulation– Continuous time– 4 crane actions– State transition only when an action is completed

• Cranes will work and move until:– Time to pick up new job.

• Path splits for each job choice.

– Cranes interfere.• Path splits for each

yielding choice.

Page 27: Track-mounted cranes move materials & equipment

14/16

C1 C2 C3 …

S

D

SD

S

D

• Exact state trimming by domination.– State D dominates state S if

• Obj fcn value of D ≤ Obj fcn value of S

• {jobs completed in D} ⊂ {jobs completed in S}• For all cranes c,

– c working on same job in D & S or c is waiting in D, and

– progress on c’s job in D ≥ progress on c’s job in S

• Inexact state trimming by size limit– Drop states with higher obj fcn values

Algorithm 2: Inexact DP

Page 28: Track-mounted cranes move materials & equipment

0

100

200

300

400

500

600

700

800

900

1000

0 2000 4000 6000 8000 10000 12000 14000 16000 18000 20000 22000 24000 26000 28000 30000 32000 34000

15/16

Uncut States

Cut States

- Schedules hundreds of tasks per minuteunder typical conditions

- State explosions caused by specific schedule features

2-crane, 72-job schedule test

- Runtime is essentially linear in number of jobs.

Computational Results

Page 29: Track-mounted cranes move materials & equipment

16/16

• Inexact DP algorithm:– Meets runtime goals.– Can accommodate multiples cranes.

• State space size:– Still sensitive to time window width.

– Inexact pruning required for ∼1 hour windows.

• Unfinished business:– Compare solution quality with Algorithm 1.– Solve additional problems.

Computational Results