2.7 Generalization of the problem
2.7.1 General problem statement
First, in the previous section it was assumed that an activity is to be performed by exactly one trainee out of set of trainees having the appropriate skills during each time instance of the time horizon. A more general coverage constraint, however, applies on a specific time horizon. For a particular activity, several coverage con- straints could be specified, but each coverage constraint involves only one activity.
80
2.7. Generalization of the problem
Second, in the previous sections it was assumed that the formation requirement constraints (2.4) and (2.5), for each individual trainee, are automatically satisfied if one composes sets of trainees for each activity and schedules the resulting activity patterns. In Section 2.6, this assumption has already been dropped. However, in order to be able to make a fair comparison between both decomposition approaches, all the tested problems still satisfied this assumption.
Third, trainee scheduling problems are often overconstrained, meaning that no fea- sible solution can be found which satisfies all these constraints. Therefore, we have introduced for each constraint in the ILP stated below a dummy variable except for constraint (2.46), since this constraint can, of course, not be violated. Since we wish to satisfy as many constraints as possible, the objective function of our ILP model is to minimize the total sum of these dummy variables. Because some constraints are more important than others, each dummy could be weighted with a penalty cost.
Let r−
ci and rci+ be the number of trainees scheduled too few and the number of
trainees scheduled too many in period i for coverage constraint c and p−
c and p+c
their respective associated penalty costs (these costs are assumed to be constant over all periods of the coverage constraint horizon but this is not required for our algorithm). Let Ljkand Ujkbe the strict minimum and maximum number of peri-
ods trainee j has to perform activity k as stated in the formation requirements. Let
Fjkbe the target number of periods trainee j has to perform activity k. Make fjk−
denote the positive difference between this target and the actual number of periods in the final schedule. Similarly, let fjk+ be the difference between the scheduled number of periods and the target number in the reverse case where the number of actual periods exceeds the target number. Make vjk− and v+jkdenote the associated penalty costs. Let dij denote the dummy variable forced to be 1 if trainee j is
scheduled to perform an activity at a non-available period i and let wij denote the
respective penalty cost. Finally, bjk equals the number of restarts of activity k
by trainee j and qjk is the associated penalty cost. The ILP formulation is given
below. MinX c∈C ec X i=sc (p+ circi++p−circi−)+ m X j=1 p X k=1 (v− jkfjk−+v+jkfjk++qjkbjk)+ n X i=1 m X j=1 wijdij (2.40)
subject to: X j∈Tc xijac− r + ci+ r−ci= Rc ∀c ∈ C and ∀i = sc, ..., ec (2.41) n X i=1 xijk− fjk+ + fjk− = Fjk ∀j = 1, ..., m and ∀k = 1, ..., p (2.42) n X i=1 xijk≥ Ljk ∀j = 1, ..., m and ∀k = 1, ..., p (2.43) n X i=1 xijk≤ Ujk ∀j = 1, ..., m and ∀k = 1, ..., p (2.44) p X k=1
xijk− dij = 0 ∀j = 1, ..., m and ∀i ∈ Nj (2.45) p
X
k=1
xijk≤ 1 ∀i = 1, ..., n and ∀j = 1, ..., m (2.46)
y1jk= x1jk ∀j = 1, ..., m and ∀k = 1, ..., p (2.47)
yijk≥ xijk− x(i−1)jk ∀i = 2, ..., n, ∀j = 1, ..., m and ∀k = 1, ..., p (2.48)
n
X
i=1
yijk− bjk≤ 1 ∀j = 1, ..., m and ∀k = 1, ..., p (2.49)
xijk, yijk∈ {0, 1} ∀i = 1, ..., n, ∀j = 1, ..., m and ∀k = 1, ..., p (2.50)
In this formulation, C represents the set of coverage constraints and ac, Tc, Rc, sc
and ec are respectively the activity, the trainee set having the appropriate skills,
the number of trainees required and the start and end period of the time hori- zon of coverage constraint c. Constraint set (2.41) states the coverage constraints. Constraints (2.42)- (2.44) contain the formation restrictions. Constraint set (2.45) implies the non-availability restrictions. Constraint set (2.46) ensures that each trainee performs no more than one activity during each time instance. Constraints (2.47)-(2.49) imply the setup restrictions. The last constraint set (2.50) defines x and y as binary variables. Obviously, the dummy variables cannot be negative.
To solve this problem one could use a decomposition scheme based on the trainees and apply column generation to solve the resulting master LP as has been described in Section 2.6. If the LP is solved to optimality, the solution is driven into integral- ity using a branching scheme that branches on the timetable cells. This approach
82
2.7. Generalization of the problem
works well for the problem dimensions we have considered (no trainee has to per- form more than eight different activities) and if activity split-ups are prohibited. If activity split-ups have to be taken into account, the state space grows exponentially since it requires the introduction of new states which track the number of periods each activity is scheduled instead of merely keeping track whether or not a certain activity is scheduled. Therefore, instead of an exact dynamic programming ap- proach, an approximation algorithm could be applied for pricing out new columns (see Section 2.7.3).