LP Police Shifts

Allocating Police Shifts Example (by itself).pdf

Problem 11.2 Police Shifts

Burtonville has minimum requirements for the number of patrol officers on duty during each 4-hour period, as shown in Table 11-3. There are no part-time patrol officers, and union regulations prohibit split shifts. Hence each officer works eight consecutive hours. Work out a daily shift schedule that employs the fewest police officers.

Assume that all work shifts begin on four hour boundaries and that overlapping shifts are allowed (that is, it is OK to have some officers work, say, from midnight to 8 a.m. and others working 4 a.m. to noon).

Table 11-3

Time of Day Number
1200-1600 100
1600-2000 250
2000-2400 400
2400-0400 500
0400-0800 200
0800-1200 150

What is the city's objective here? To employ the smallest necessary number of police officers. Assuming no vacations and 7 day schedules and the like (to keep things simple) what's the easiest way to set this up?
We have over the course of a day, 6 possible shifts to which an officer can be assigned: 8 hours starting at midnight, 8 starting at 4 a.m., 8 starting at 8 a.m., etc. Let's call these shifts A, B, C, etc. to F
linear-programming-13.gif


Shift From To
A 1200 2000
B 1600 2400
C 2000 0400
D 0000 0800
E 0400 1200
F 0800 1600

and the number of officers assigned to each shift XA, XB, etc. Then we have

(1)
\begin{equation} Total=X_A+X_B+X_C+X_D+X_E+X_F \end{equation}

Our constraints are the number who must be working during each four hour period:

(2)
\begin{align} X_A+X_F \geq 100 \end{align}
(3)
\begin{align} X_A+X_B \geq 250 \end{align}
(4)
\begin{align} X_B+X_C \geq 400 \end{align}
(5)
\begin{align} X_C+X_D \geq 500 \end{align}
(6)
\begin{align} X_D+X_E \geq 200 \end{align}
(7)
\begin{align} X_E+X_F \geq 150 \end{align}

To this we have to add the fact that we can never have a negative number of officers on duty:

(8)
\begin{align} X_A \geq 0 \end{align}
(9)
\begin{align} X_B \geq 0 \end{align}
(10)
\begin{align} X_C \geq 0 \end{align}
(11)
\begin{align} X_D \geq 0 \end{align}
(12)
\begin{align} X_E \geq 0 \end{align}
(13)
\begin{align} X_F \geq 0 \end{align}