The Doctor Rostering Problem - Asser Fahrenholz
The Doctor Rostering Problem - Asser Fahrenholz
The Doctor Rostering Problem - Asser Fahrenholz
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Chapter 4. Solving the DRP 20<br />
Given a schedule, a need to improve upon this schedule arises. This is where neighbor-<br />
hoods comes in.<br />
4.3.2 Neighborhoods and Local Search<br />
To guide the search in finding better solutions, I introduce the well known term Neigh-<br />
borhoods. A neighborhood is defined as:<br />
N(S) = { solutions obtained by applying a single local transformation to S }<br />
A neighbor is a potential replacement for a solution and need only vary from the solution<br />
at hand by a single element. <strong>The</strong> whole set of replacements produced by some change<br />
or function on the solution is called a neighborhood. <strong>The</strong> process of moving from one<br />
solution to another in its basic form, is called Local Search (LS) and is, if exhaustive,<br />
able to find a local optimum. Figure 4.3 shows how moving through the solution space<br />
may increase and decrease the heuristic value of the solution. Only accepting solutions<br />
with higher Z(S) is called hill climbing (and analogously hill descending).<br />
Figure 4.3: Local and global optima<br />
For any given problem, several possible neighborhoods often exist. <strong>The</strong> neighborhoods<br />
identified in this thesis are, thanks to the nature of this problem, two very simple<br />
functions:<br />
Rotation is moving the doctor of all shifts to another shift in the set, such that all<br />
doctors are moved in rotation. <strong>The</strong> principle is depicted in figure 4.4 on the next<br />
page<br />
Inversion is for all selected shifts, to populate the shifts with another doctor than the<br />
one that is originally assigned to it. Figure 4.5 on the following page illustrates the<br />
principle. One could pass an empty schedule to a Local Search algorithm using