27.07.2013 Views

The Doctor Rostering Problem - Asser Fahrenholz

The Doctor Rostering Problem - Asser Fahrenholz

The Doctor Rostering Problem - Asser Fahrenholz

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!