• Keine Ergebnisse gefunden

Now, we show that even very special cases of (DMC) already are NP-hard. To show the first of these results, we need theMinimum Satisfiability Problem (MIN k-SAT):

(MIN k-SAT)Given boolean variables X ={x1, . . . , xn},clauses C={C1, . . . , Cm} of the form Ci = li1 ∨. . .∨lij (j ≤k) where each literal li is either the variable xi or its negation x¯i, and weights w1, . . . , wm for the clauses, find a truth assignment X→ {true,false}n such that the total weight of the satisfied clauses is minimal.

As was shown in [KKM94], MIN k-SAT is NP-hard for k≥2.

By reducing MIN 3-SAT to an instance of (DMC) where circulation decisions are possible only in one single station and whereAchange=Ahead =∅, we show that even this very simple version of (DMC) is NP-hard:

Theorem 5.3. (DMC) is NP-hard even in the special case that only pairwise swapping of trips is allowed only in one special station and that no wait-depart decision and no priority decision has to be made.

Proof. Given an instance(X,C)of MIN 3-SAT with uniform weights, we first show how to construct a corresponding instance of (DMC). For each variable xi ∈X, we create four events in the event-activity network: two arrival eventsarrtruei andarrfalsei and two departure eventsxi and x¯i. Then, we connect each of the two arrival events with each of the two departure events by a circulation activity, hence we add the four circulation activities (arrtruei , xi), (arrtruei ,x¯i), (arrfalsei , xi), and (arrfalsei ,x¯i) to the event-activity network, see Figure 5.3 for an illustration.

Thus, for each variable, there are two possibilities for fixing the corresponding circula-tions: either fix

5.3 Computational Complexity

xi−1 x¯i−1 arrtruei−1 arrfalsei−1

Figure 5.3: For each variable xi ∈X, we add two arrival and two departure events, connected by circulation activities, to the event-activity network. The dashed arrows are circulation activities.

For each clauseCi ∈ C, we add a station with a single arrival eventCi. For each literall that is part of some clauseCi, we add a driving activity connecting the departure eventl (which is eitherx or x) and the arrival event¯ Ci. The lower bounds of all activities are set to 1 and we assume a tight timetable without slack times. The source delay of all eventsarrtruei is set to 1. The weightswi of all events are set to 0, only the weights of the events Ci corresponding to the clauses of MIN 3-SAT are set to 1. See Figure 5.4 for the resulting event-activity network.

Note that the sum of the delays of all events corresponding to a variablexi ∈X in a time-minimal solution of (DMC) is always fixed, as well as their contribution to the objective of (DMC): the arrival event arrtruei always has a delay of 1 and the arrival eventarrfalsei always is on time. Depending on the circulation decisions, either event xi has a delay of 1 while eventx¯i is on time or vice versa. Furthermore, all those events have a contribution of 0 to the objective, independently of the circulation decisions (as their weights all are equal to 0). The only effect that different circulation decisions have on the objective is how many eventsCi get a secondary delay and how many of them are on time: if at least one predecessor of an eventCi has a delay of 1, thenCi also has a delay of 1, while Ci is on time if all of its predecessors are on time. So minimizing the sum of all delays is equivalent to minimizing the number of delayed events Ci. Using this construction, there exists a truth assignment with ksatisfied clauses if and only if there exists a solution of the corresponding instance of (DMC) with objective value k. The relationship between the variables of MIN 3-SAT and the circulation decisions in (DMC) is the following:

xi =

(true if and only ifCirctrue(i) is chosen

false if and only ifCircfalse(i) is chosen. (5.19)

d=1 d=1 d=1

Cj Cj+1

xi−1 x¯i−1 xi ¯xi

arrtruei−1 arrfalsei−1 arrtruei arrfalsei arrtruei+1

¯ xi+1 xi+1

arrfalsei+1

Figure 5.4: The event-activity network constructed from the instance (X,C) of MIN 3-SAT in the proof of Theorem 5.3; in this example, we have Cj = xi−1 ∨xi ∨xi+1 and Cj+1 = ¯xi−1 ∨x¯i ∨xi+1. Dotted rectan-gles represent stations, solid arrows are driving activities, dashed arrows are circulation activities.

Due to this relationship, the number of satisfied clauses in MIN 3-SAT is the same as the number of delayed eventsCi in (DMC) which coincides with the objective value:

1. Given a solution of MIN 3-SAT, if a clauseCi is satisfied, then there exists at least one literal lk with lk = true. W.l.o.g., let lk ≡ xk for some xk ∈X (the case lk ≡ x¯k works analogously). Then xk = true, hence by the construction above, the circulation activities in Circtrue(k) are chosen, thus the delay from eventarrtruek is carried over to eventxk and further to eventCi – hence eventCi is delayed. If a clauseCi is not fulfilled, then all of its literals are set to false, hence (by the same arguments as above) we fix the circulation activities in such a way that no predecessor of eventCi is delayed, soCi is on time. As a consequence, by using (5.19), for each truth assignment withk satisfied clauses, we can construct a solution of (DMC) with objective valuek.

2. Now, given an optimal solution of (DMC), if an event Ci is delayed, then this delay is carried over from at least one eventlk. W.l.o.g., assume that this event is

5.3 Computational Complexity

xk (again the caselk≡x¯k works analogously). Hencexk has a delay that – in an optimal solution – only can be carried over from eventarrtruek if the circulation activities in Circtrue(k) are fixed. Thus we set xk = true, hence clause Ci is fulfilled. Analogously, if an eventCi is on time, all of its predecessors have to be on time, and by the same arguments as above, the literals in Ci are set in such a way that clause Ci is not fulfilled. Thus, for each solution of (DMC) with objective value k, by using (5.19), we can construct a solution of MIN 3-SAT withk satisfied clauses.

For the next reduction, we use the Set-Partition Problem:

(Set-Partition Problem) Given a set S = {s1, . . . , sk} ⊂ N, decide if S can be

It is well known that the Set-Partition Problem is NP-complete (see [GJ79]).

Now, we can prove the following result:

Theorem 5.4. (DMC) is NP-hard even if no wait-depart decision and no priority decision has to be made and if we only have two trains which might be (repeatedly) swapped at several consecutive stations.

Proof. Given the setS, we first show how to construct an instance of (DMC). For each si ∈S, we construct a station with two arrival events arrupperi and arrloweri and two departure eventsdepupperi anddeploweri . The stations are linked by driving activities (depupperi ,arrupperi+1 ) and (deploweri ,arrloweri+1 ) on which we allow no slack time. In each

station, we allow all (four) possible circulation activities and define Circred(i) :=n

We assign a slack time of si to the activities in Circred(i) and a slack time of zero to the activities in Circzero(i). Hence, we constructed two trips between station i and stationi+ 1. We assume that we have two trains A and B which have to operate these trips. If train A operates the “upper” trip between station i and stationi+ 1, then train B has to operate the “lower” trip and vice versa. In each station, we can swap this order.

Due to our construction, we have exactly two feasible assignments of trains to trips in each stationi, each of them including exactly one circulation activity of Circred(i).

This means that exactly one of the two trains can reduce its delay bysi at stationi:

Assume that train A arrives with a delay ofdAi and B arrives with a delay ofdBi and let dAi, dBi ≥si. Then the two possibilities are:

1. Train A takes a circulation activity from the setCircred(i)and train B one from the setCirczero(i). At its departure from stationi, the delay of train A is reduced to dAi −si, while the delay of train B has not changed.

2. Vice versa, train A does not reduce its delay, but the delay of train B is reduced to dBi −si.

To finish the construction, we add two more stations: a station 0 with two departure eventsdepupper0 anddeplower0 which we connect to the rest of the event-activity network by two driving activities(depupper0 ,arrupper1 )and(deplower0 ,arrlower1 )with zero slack times, and a stationk+ 1with two arrival eventsarrupperk+1 andarrlowerk+1 which we connect to the rest of the event-activity network by two driving activities(depupperk ,arrupperk+1 ) and (deplowerk ,arrlowerk+1 ) with slack times of G2 where

G:= X

si∈S

si.

The resulting event-activity network is depicted in Figure 5.5.

We now add source delays ofG to each of the two first departure eventsdepupper0 and deplower0 , all other source delays are zero. We finally set zero weights for all events, but the two last arrival eventsarrupperk+1 andarrlowerk+1 get a weight of 1. The objective of the delay management problem hence is to minimize the sum of the delays of the two eventsarrupperk+1 and arrlowerk+1 .

station 1 station 2

arrupper1 depupper1 arrupper2 depupper2 arrupperk depupperk arrupperk+1

deplower0 arrlower1 deplower1 arrlower2 deplower2 arrlowerk deplowerk arrlowerk+1

depupper0

Figure 5.5: The event-activity network constructed from the setSof the Set-Partition Problem in the proof of Theorem 5.4. Dotted rectangles represent stations, solid arrows are driving activities, dashed arrows are circulation activities.