© J. Christopher Beck 20081 Lecture 24: Workforce Scheduling.

19
© J. Christopher Beck 2008 1 Lecture 24: Workforce Scheduling

Transcript of © J. Christopher Beck 20081 Lecture 24: Workforce Scheduling.

Page 1: © J. Christopher Beck 20081 Lecture 24: Workforce Scheduling.

© J. Christopher Beck 2008 1

Lecture 24: Workforce Scheduling

Page 2: © J. Christopher Beck 20081 Lecture 24: Workforce Scheduling.

© J. Christopher Beck 2008 2

Outline Bank Personnel Scheduling Demo Shift Scheduling

Example 12.3.1 Cyclic Staffing

Algorithm 12.4.1 Example 12.4.2

Call Centre Scheduling

Page 3: © J. Christopher Beck 20081 Lecture 24: Workforce Scheduling.

© J. Christopher Beck 2008 3

Readings

P Ch 12.1, 12.3, 12.4, 12.5, 12.7

Questions I Like 12.5a

Page 4: © J. Christopher Beck 20081 Lecture 24: Workforce Scheduling.

© J. Christopher Beck 2008 4

Workforce Timetabling

Arrange shifts and assign people to them

Constraints: Number of people per shift Minimum Days off (x/k days must be off) Weekends

Nurses, call centres, hotels, restaurants, plane crew, …

Bank Demo

Page 5: © J. Christopher Beck 20081 Lecture 24: Workforce Scheduling.

© J. Christopher Beck 2008 5

ShiftScheduling

Fixed cycle Month, week, day

Predefined set of shift patterns Each worker is assigned to exactly one

pattern Each pattern has its own cost

Assign workers to patterns such that Staffing requirements are met and cost is

minimized

Page 6: © J. Christopher Beck 20081 Lecture 24: Workforce Scheduling.

© J. Christopher Beck 2008 6

Example 12.3.1

Pattern

Hours Total Hour

s

Cost

1 10AM – 6PM

8 50

2 1PM – 9PM 8 60

3 12PM – 6PM

6 30

4 10AM – 1PM

3 15

5 6PM – 9PM 3 16

Hour Staff

10AM – 11AM

3

11AM – 12PM

4

12PM – 1PM 6

1PM – 2PM 4

2PM – 3PM 7

3PM – 4PM 8

4PM – 5PM 7

5PM – 6PM 6

6PM – 7PM 4

7PM – 8PM 7

8PM – 9PM 8

Page 7: © J. Christopher Beck 20081 Lecture 24: Workforce Scheduling.

© J. Christopher Beck 2008 7

Shift Scheduling Definition

m periods bi: # people required in period i n shift patterns

nj = (a1j, a2j, …, amj) = (1, 0, 0, …, 0) aij = 1: workers on pattern j work period i aij = 0: workers on pattern j don’t work period i

cj: cost of assigning a worker to pattern j

xj: # of people assigned to pattern j

Length of each periodmay be different

Page 8: © J. Christopher Beck 20081 Lecture 24: Workforce Scheduling.

© J. Christopher Beck 2008 8

IP Formulation(see Example 12.3.1)

n

jjjxc

1

minimize

subject to mibxan

jijij ,...,1

1

int;,...,10 jj xnjx

Each period has enough workers

Number workers assigned to apattern is an positive integer or 0

Such an IP is hard unless there isspecial structure such as having

no split shifts

Page 9: © J. Christopher Beck 20081 Lecture 24: Workforce Scheduling.

© J. Christopher Beck 2008 9

LS Formulation

Develop a local search formulation that doesn’t depend on having no split shifts

Page 10: © J. Christopher Beck 20081 Lecture 24: Workforce Scheduling.

© J. Christopher Beck 2008 10

Apply Your LS to Example 12.3.1

Pattern

Hours Total Hour

s

Cost

1 10AM – 6PM

8 50

2 1PM – 9PM 8 60

3 12PM – 6PM

6 30

4 10AM – 1PM

3 15

5 6PM – 9PM 3 16

Hour Staff

10AM – 11AM

3

11AM – 12PM

4

12PM – 1PM 6

1PM – 2PM 4

2PM – 3PM 7

3PM – 4PM 8

4PM – 5PM 7

5PM – 6PM 6

6PM – 7PM 4

7PM – 8PM 7

8PM – 9PM 8

Page 11: © J. Christopher Beck 20081 Lecture 24: Workforce Scheduling.

© J. Christopher Beck 2008 11

A Variation ofExample 12.3.1

Pattern

Hours Total Hour

s

Cost

1 10AM – 6PM 8 50

2 1PM – 9PM 8 60

3 12PM – 6PM 6 30

4 10AM – 1PM 3 15

5 6PM – 9PM 3 16

6 2PM – 5PM,7PM – 9PM

5 35

Hour Staff

10AM – 11AM

3

11AM – 12PM

4

12PM – 1PM 6

1PM – 2PM 4

2PM – 3PM 7

3PM – 4PM 8

4PM – 5PM 7

5PM – 6PM 6

6PM – 7PM 4

7PM – 8PM 7

8PM – 9PM 8

Would you solve this problem with IP or LS?

Page 12: © J. Christopher Beck 20081 Lecture 24: Workforce Scheduling.

© J. Christopher Beck 2008 12

Cyclic Staffing

m period cycle Each period i has requirement bi

Each person works k consecutive periods and has the other m – k off

cj is the cost of putting a worker on pattern j

Find minimum cost schedule

Page 13: © J. Christopher Beck 20081 Lecture 24: Workforce Scheduling.

© J. Christopher Beck 2008 13

(5,7)-Cyclic Staffing Problem

1 0 0 1 1 1 1

1 1 0 0 1 1 1

1 1 1 0 0 1 1

1 1 1 1 0 0 1

1 1 1 1 1 0 0

0 1 1 1 1 1 0

0 0 1 1 1 1 1

Periods

Patterns

80 70 100

105

75 90 100

3

8

9

11

11

11

4

Cost

Requirements

There are split shifts!

Page 14: © J. Christopher Beck 20081 Lecture 24: Workforce Scheduling.

© J. Christopher Beck 2008 14

(Different) Special Structure Makes The Problem Easy

Solve LP1 (x’1,x’2, …, x’n) If integral, you have optimal Otherwise LP2:

LP1 + If integral, you have optimal

Otherwise LP3: LP1 + Always integral, so you have optimal

nn xxxxxx 2121

nn xxxxxx 2121

Page 15: © J. Christopher Beck 20081 Lecture 24: Workforce Scheduling.

© J. Christopher Beck 2008 15

Call Centre Scheduling: Demand

time6AM 12 6PM

demand

Page 16: © J. Christopher Beck 20081 Lecture 24: Workforce Scheduling.

© J. Christopher Beck 2008 16

Call Centre Scheduling:Shift Patterns

time6AM 12 6PM

Breaks (moveable)

Page 17: © J. Christopher Beck 20081 Lecture 24: Workforce Scheduling.

© J. Christopher Beck 2008 17

Solution Framework (Fig 12.4)

Select solidtours

Place breaks Compare fits

Closeenough?

Modify targetdemand

demand

DONE

Y

N

Page 18: © J. Christopher Beck 20081 Lecture 24: Workforce Scheduling.

© J. Christopher Beck 2008 18

Call Centre Scheduling

Assign people to shifts to meet the demand and minimize costs

It gets worse: workers with different skills! {English}, {English, French},

{French}

Page 19: © J. Christopher Beck 20081 Lecture 24: Workforce Scheduling.

© J. Christopher Beck 2008 19

Call Centre Scheduling: Demand

time6AM 12 6PM

demand English

French

What do you do withbilingual people?