Chapter 3
1 / 19

Chapter 3 Workforce scheduling - PowerPoint PPT Presentation

  • Uploaded on

Chapter 3 Workforce scheduling. Plan. Introduction Days-off scheduling Shift scheduling Cyclic staffing probme Crew scheduling. Intoduction.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about ' Chapter 3 Workforce scheduling' - oleg-kim

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

Chapter 3

Workforce scheduling


  • Introduction

  • Days-off scheduling

  • Shift scheduling

  • Cyclic staffing probme

  • Crew scheduling


  • Workforce allocation & personnel scheduling deal with the arrangement of work schedules and the assignment of personnel to shits to cover the demand for resources that vary over time.

  • In service environments the operations are often prolonged and irregular, and the staff requirements fluctuate over time.

  • The schedules are typically subject to various constraints dictated by equipment requirements, union rules, ...

Days-off scheduling

  • An elementary personnel assignment problem.

  • The problem is to find the minimum number of employees to cover a 7-days-a-week operation so that the following constraints are satisfied:

  • The demand per day, nj, j = 1, ..., 7 (Sunday to Saturday), is met

  • Each employee is given k1 out of every k2 weekends off

  • Each employee works exactly 5 out of 7 days (Sunday to Saturday)

  • Each employee works no more than 6 consecutive days.

k1/k2 = 1/3

Days-off scheduling : lower bounds

Weekend constraint

(k2 – k1)W >= k2 max(n1, n7)

Where W is the minimum size of the workforce

Total demand constraint:

5W >= Snj

Maximum daily demand constraint:

W >= max (n1, ..., n7)

k1/k2 = 1/3

Days-off scheduling : Algorithm

W = min workforce, n = max(n1, n7)

Step1. (Schedule the weekends off)

Assign the 1st weekend off to the first W-n employees

Assign the 2nd weekend off to the second W-n employees

This process is continued cyclically.

Days-off scheduling : Algorithm

uj = W- nj, j= 2, ..., 6, uj = n – nj, j = 1, 7

Step2. (Determine the additional off-day pairs)

Construct a list of n pairs of off days, numbered 1 to n.

Choose day k such that uk = max(u1, ..., u7)

Choose day l (lk), such that ul > 0; if ul = 0 for all lk, set l = k

Add the pair (k, l) to the list and decrease uk and ul by 1.

Repeat the process n times.

(2, 1), Sunday-Monday

(2, 2), Monday-Monday (non distinct pairs)

Days-off scheduling : Algorithm

Set i = 1

Step3. (Categorize emplyees in week i)

Type T1 : weekend i off, no days needed during week i, weekend i+1 off

Type T2 : weekend i off, 1 off day needed during week i, weekend i+1 on

Type T3 : weekend i on, 1 off day needed during week i, weekend i+1 off

Type T4 : weekend i on, 2 off days needed during week i, weekend i+1 on

|T3| + |T4| = n, |T2| + |T4| = n (as n people working each weekend)

Pair Each employee of T2 with one of T3

Step 4 (Assign off-day pairs in week i)

Assign the n pairs of days, starting from the top off the list as follows:

First assign pairs of days to the employees of T4

Then, to each employee of T3 and his companion of T2, assign the one of T3 the earliest day of the pair.

Set i = i+1 and return to step 3.

Days-off scheduling : Algorithm

Week 1 : T2 = 1, T3 = 2, T4 = 3

Week 2 : T2 = 2, T3 = 3, T4 = 1

Week 3 : T2 = 3, T3 = 1, T4 = 2

The schedule generated by the days-off scheduling algorithm is always feasible.

Shift scheduling

A cycle (one day, one or several weeks) is fixed.

Each work assignment pattern over a cycle has its own cost.


m time intervals/periods in the predetermined cycle

bi personnel are required for period i

b different shift patterns, and each employee is assigned to one and only one pattern

(a1j, a2j, ..., amj) = shift pattern j with aij = 1 if period i is a work period.

cj = cost of patern j

Determine the number of employees of each pattern in order to minimise the total cost.

Shift scheduling

What if overtime is allowed?

Shift scheduling

  • The integer programming formulation of the general personnel scheduling problem (with arbitrary 0-1 A matrix) is NP-hard

  • The special case with each column containing a contiguous set of ones is easy and the solution of the LP-relaxation is always integer.

Cyclic staffing problem

The objective is to minimise the cost of

assigning people to an m-period cyclic schedule

so that

sufficient workers are present during time period i, in order to meet requirement bi,

and each person works a shift of k consecutive periods and is free the other m-k periods.

Each column is a possible shift

(5,7) cyclic staffing

Cyclic staffing problem : algorithm

Step 1. Solve the linear relaxation of the problem to obtain xi’

If (xi’) are integer, STOP

Step 2. Form two linear programs LP’ and LP’’ from the relaxation of the original problem by adding respectively the constraints:

LP’’ has an optimal solution that is integer

If LP’ does not have a feaible solution, then the solution of LP’’ is the optimal solution

If LP’ has a feasible solution, then it has an optimal solution that is integer and the best of LP’ and LP’’ solutions is the optimal solution.


  • Crewschedulingproblems are very important in transportation especially in airlineindustry

  • Consider a set of m jobs, or flight legs.

  • A flight legischaracterized by a point of departure and a point of arrival, as well as an approximate time intervalduringwhich the flight has to take place.

  • There is a set of n feasible and permissible combinations of flight legs that one crewcanhandle, round trips or tours.

  • Each round trip j, has a costcj.

  • Crewscheduledetermines round trips to select in order to minimize the total costunder the constraintthateach flight legiscoveredexactly once by one and only one round trip.


  • Each column in the A matrix is a round trip, and each row is a flight leg that must be covered exactly once by one round trip.

  • Set partitioning problem.


















Truck routing network