Although it has not been mentioned yet, there is a fundamental reason why duties are organized by types of equipment. This organization has to do with the maintenance of the equipment. The maintenance workshops are distributed around certain stations. Each workshop is equipped with material and maintenance personnel for a particular type of engines.
In a third step, the planning expert must organize the duties into rotations. A rotation is a sequence of duties, organized in the time dimension, between two maintenances. Within a rotation, maintenance is simply scheduled as a duty which contains a ONDERHOUD action (and the appropriate actions to actually move engines from and to the workshop). Since maintenance is simply considered as another duty and since the workshops are organized by types of equipment, it is natural to also organize the duties along types of equipment. A diagram specifies the complete set of duties for one particular type of equipment (see also figure 2).
The reasoning required to perform the task of rotation construction is difficult because the expert planner must move away from the logical level of the duties to the level of the physical engines. To illustrate this, consider a duty (say 01) which starts and ends in station X. In addition, suppose that this duty contains trains that drive every day of the week, during the whole year. In such cases, it is perfectly feasible to describe the details of this duty once and to assign period ``09'' and characteristic ``R'' to this duty. Moreover, since the duty is performed every day, we can assign the re-use attribute ``01'' to it.
Although this yields a concise and short formulation of a large set of duties, there is a problem when we think about the physical engine that has to perform this particular duty. If we would equate a physical engine with that particular duty, then the engine would perform the same set of action during every day of the year. However, this is impossible in practice since that physical engine will never receive any maintenance.
The planning expert must thus explicitly foresee that that particular duty is, at least, performed by two physical engines in order to account for the maintenance. The expert must thus be able to move from the logical level of the duties to the physical level of engines that perform these duties.
Rotations are specified by means of ``re-use'' attributes. Such an attribute connects two duties. Consider again the sequences of trains that the expert constructed in the first step. Each sequence corresponds to a duty. With the last train in such a sequence, the expert can indicate a re-use attribute which describes the number of the duty that the engine will perform the next day. A ``re-use attribute'' contains the train number, the duty number and the days of the week when that particular re-use is valid. In the example, a possible ``re-use attribute'' might be {182, A902, 1111111}. This indicates that duty ``A901'' (on one particular day) will be followed by duty ``A902'' on the next day. Note that the duty number of the ``re-use attribute'' must actually match a duty number that exists on the next day. In addition, the stations where the duties start/end must match, i.e. duty ``A901'' can only be followed by duty ``A901'' because the departing station of the duty is equal to the arriving station (in this case Amsterdam).
___________________________________________________