Minimizing the waiting time for a one-way shuttle service
Laurent Daudet, Fr\'ed\'eric Meunier

TL;DR
This paper develops efficient algorithms to optimize shuttle schedules for minimizing user waiting times in a terminal with known, variable arrival rates, combining theoretical guarantees with practical performance evaluations.
Contribution
It introduces novel algorithms for shuttle scheduling that incorporate various optimization techniques and provide proven performance guarantees.
Findings
Algorithms achieve near-optimal waiting time reductions.
Methods perform well in practical numerical experiments.
Techniques include convex optimization and shortest path approaches.
Abstract
Consider a terminal in which users arrive continuously over a finite period of time at a variable rate known in advance. A fleet of shuttles has to carry the users over a fixed trip. What is the shuttle schedule that minimizes their waiting time? This is the question addressed in the present paper. We propose efficient algorithms for several variations of this question with proven performance guarantees. The techniques used are of various types (convex optimization, shortest paths,...). The paper ends with numerical experiments showing that most of our algorithms behave also well in practice.
| LB | UB | gap | CPU | |||
|---|---|---|---|---|---|---|
| (%) | ( s ) | |||||
| 1P | 100 | 27.2 | 27.2 | 0.0 | 0 | |
| 1P | 150 | 18.1 | 18.1 | 0.0 | 0 | |
| 1P | 200 | 13.6 | 13.6 | 0.0 | 0 | |
| 1P | 250 | 11.0 | 11.0 | 0.0 | 0 | |
| 2P | 100 | 27.0 | 27.0 | 0.0 | 0 | |
| 2P | 150 | 18.0 | 18.0 | 0.0 | 0 | |
| 2P | 200 | 13.5 | 13.5 | 0.0 | 0 | |
| 2P | 250 | 10.8 | 10.8 | 0.0 | 0 |
| LB | UB | gap | CPU | |||
|---|---|---|---|---|---|---|
| (%) | ( s ) | |||||
| 1P | 100 | 32 | 17.3 | 19.2 | 10.0 | 34 |
| 1P | 100 | 128 | 18.7 | 19.2 | 2.5 | 1930 |
| 1P | 200 | 32 | 7.7 | 9.6 | 19.4 | 70 |
| 1P | 200 | 128 | 9.1 | 9.6 | 5.0 | 4035 |
| 2P | 100 | 32 | 17.5 | 19.4 | 9.9 | 38 |
| 2P | 100 | 128 | 18.9 | 19.4 | 2.5 | 2387 |
| 2P | 200 | 32 | 7.9 | 9.7 | 19.2 | 76 |
| 2P | 200 | 128 | 9.2 | 9.7 | 5.0 | 4463 |
| LB | UB | gap | CPU | |||
|---|---|---|---|---|---|---|
| (%) | ( s ) | |||||
| 1P∗ | 1 | 16 | 168.6 | 214.2 | 21.3 | 104 |
| 1P∗ | 1 | 32 | 184.5 | 210.8 | 12.5 | 1654 |
| 2P∗ | 1 | 16 | 101.0 | 131.0 | 22.9 | 106 |
| 2P∗ | 1 | 32 | 106.9 | 126.3 | 15.4 | 1848 |
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Minimizing the waiting time for a one-way
shuttle service
Laurent Daudet
and
Frédéric Meunier
École Nationale des Ponts et Chaussées, CERMICS, 77455 Marne-la-Vallée CEDEX, France
Abstract.
Consider a terminal in which users arrive continuously over a finite period of time at a variable rate known in advance. A fleet of shuttles has to carry the users over a fixed trip. What is the shuttle schedule that minimizes their waiting time? This is the question addressed in the present paper. We propose efficient algorithms for several variations of this question with proven performance guarantees. The techniques used are of various types (convex optimization, shortest paths,…). The paper ends with numerical experiments showing that most of our algorithms behave also well in practice.
Key words and phrases:
Convex optimization; scheduling; shortest paths; transportation; waiting time
1. Introduction
The original motivation of this paper comes from a partnership of the authors with Eurotunnel, the company operating the tunnel under the Channel. Eurotunnel is currently facing an increasing congestion due to the trucks waiting in the terminal before being loaded in the shuttles. A way to address this issue consists in scheduling the shuttles so that the trucks do not wait too long in the terminal.
In railway transportation, a traditional point of view considers that the demand can be smoothed by offering sufficiently enough departures over a day. Timetabling is then guided by other considerations, such as robustness, maintainability, or rolling stock. For instance, Swiss, Dutch and German companies usually design periodic timetables, which present many advantages [6, 9]. The way to optimize this kind of timetables has been the topic of many researches, initiated by Serafini and Ukovich [15] and by Voorhoeve [16] explicitly in the railway context, see [10, 12, 13, 14] for further works. In the context of periodic timetables, a way to adapt the schedules to a demand with strong variations consists in inserting new departures at peak-hours and deleting departures when the demand is low.
Since the trip of the trucks in the tunnel is a small part of their whole journey, it is a reasonable approximation to assume that they cannot choose their arrival time in the terminal. Moreover, increasing the size of the fleet is not always doable in practice (the shuttles are expensive and the tunnel is used by other vehicles, which limits the maximal number of shuttle trips over a day). We face thus a different problem than the one addressed in the aforementioned literature: the demand is assumed to be fixed and nonelastic to the departures times, and the number of shuttles cannot be adjusted to the demand. Given a fleet of shuttles and a demand of transportation known in advance, the problem consists in designing a schedule for the shuttles that minimizes the waiting time of the users. There are timetabling problems with similar features, see [1, 2, 3, 5, 4, 8] for instance, but these articles are at a more macroscopic level than what we require to solve our problem. Moreover, in the present work, the schedules have to be designed in an offline manner. In a transportation context, and especially for Eurotunnel, computing the schedule in advance is mandatory.
We study several versions of the problem, mainly according to two features. The first feature is whether the shuttles are allowed to come back at the terminal after having realized the trip. The second feature is the objective function. We consider in turn the following two quantities to be minimized: the maximum waiting time and the average waiting time. The first objective is perhaps a fairer one regarding the users, while the second one is relevant for the global efficiency.
It seems that the question we address in the present paper is new. Moreover, it may be relevant for any situation where a demand, known in advance, has to be processed by batches and for which we want to minimize the processing time. This kind of situation is often met in chemical industry. An example whose motivation is very close to ours considers a test to be performed on samples, which arrive continuously [11]. The test takes a certain amount of time and can be performed on several samples simultaneously. The question is then to determine the test schedule that minimizes the processing time.
We propose efficient algorithms for the different versions. “Efficient” here means “theoretically efficient”, according to their time complexity and the performance guarantee. It also means “practically efficient” for almost all cases, as shown by numerical experiments conducted on real-world instances. It might also be worth noting that, depending on the version considered, the proof techniques rely on various fields of optimization (convexity, Karush-Kuhn-Tucker conditions, binary search, domination results, shortest paths in finite graphs,…).
2. Model
2.1. The problems
We are given a fleet of shuttles, for which departure times have to be determined. All shuttles have a capacity and are situated in the same loading terminal at the beginning of the day. The users are infinitesimal and arrive continuously in the terminal over a finite period of time, modeled as the interval , following the cumulative nondecreasing function , where is the total number of users arrived in the terminal during the interval . We assume throughout the paper that . The shuttles have to carry the users over a fixed trip.
When the users arrive in the terminal, they enter a queue. This queue closes when all the users who will leave with the next shuttle have arrived in the queue and users can enter a new queue only if the previous one is closed (this is how it works at Eurotunnel). When a queue is closed, the users in that queue can start boarding the shuttle. The process in illustrated on Figure 1. Loading a shuttle with a total of users takes a time . Note that setting to zero allows to model the case where the users do not have to wait for the last user before boarding. Even if no users arrive strictly after time , loading and departures are allowed after that instant.
Two possibilities are considered regarding the shuttles. Either return is not allowed: once the shuttles leave, they never come back to the terminal; or it is allowed: once the shuttles leave, they come back to the terminal after a time equal to . Two objective functions to be minimized are considered: the maximum waiting time and the average waiting time.
We have thus four problems:
- •
P, which consists of not allowing return and minimizing the maximum waiting time.
- •
P, which consists of not allowing return and minimizing the average waiting time.
- •
P, which consists of allowing return and minimizing the maximum waiting time.
- •
P, which consists of allowing return and minimizing the average waiting time.
Practical constraints impose that overtake is not possible and thus, when return is allowed, the departure orders of the shuttles remain the same over the whole period. It is nevertheless possible to have simultaneous trips. This is an approximation in the case of Eurotunnel (we neglect the security distance and the length of the shuttles). For other situations, as the chemical application mentioned in the introduction, it may match what is met in practice.
2.2. The demand
Throughout the paper, we assume that is upper semicontinuous. It allows to model discontinuity in the arrival process (batch of users arriving simultaneously). Yet, a weaker requirement could lead to mathematical difficulties, e.g., nonexistence of optimal solutions even for very simple cases.
The pseudo-inverses of , defined by
[TABLE]
and
[TABLE]
play an important role in the paper. Note that they are nondecreasing functions and that for all . Times and are respectively interpreted as the arrival times of the first user after the firsts and of the last user of these firsts. Since is upper semicontinuous, we have the following properties, with proofs for sake of completeness.
Lemma 1**.**
We have for every .
Proof.
Since is nondecreasing, the first inequality is a direct consequence of the inequality , which is obvious from the definition. To prove the second inequality, consider a nonincreasing sequence converging toward such that for all . By the upper semicontinuity of , we get then . ∎
Lemma 2**.**
* is upper semicontinuous and is lower semicontinuous.*
Proof.
We first prove that is upper semicontinuous. Let be some real number such that is nonempty and take from it an arbitrary element . We want to prove that is open for the induced topology on . If , then this set is and thus open. Otherwise, by the definition of , we know that there exists such that . For any element in , we have , and thus is an open set containing and fully contained in . The set is thus an open set of for every real number , which precisely means that is upper semicontinuous.
We prove now that is lower semicontinuous. Let be some real number. Consider a converging sequence such that for all . For every fixed , there exists thus a sequence indexed by such that and for all . Now, consider the sequence . It is such that and for all . Since is compact, we can extract a nonincreasing converging subsequence from the sequence such that converges towards some real number nonsmaller than with for all . It implies that , which means that is lower semicontinuous. ∎
Lemma 3**.**
If is increasing, then for every .
Proof.
If , then the equality is obvious. We can thus assume that . For every , we have since is increasing, and Lemma 1 implies that . By definition of , we have . The reverse inequality being clear from the definitions, we get the result. ∎
2.3. Mathematical model
For the four problems P, P, P, and P, a feasible solution is characterized by two nondecreasing sequences of nonnegative real numbers and . The ’s are the successive departure times of the shuttles, and the ’s are their successive cumulative loads: the th departure occurs at time with a load of users, where we set .
Denote by the value of the maximum waiting time and by the value of the average waiting time. There are explicit expressions of these objective functions. Note that can be interpreted as the first arrival time of a user leaving with the “th shuttle”.
[TABLE]
where the indices range over all departures.
Problems P and P can be written under the following form,
[TABLE]
where is either or . Constraint (i) ensures that the total amount of users in any shuttle does not exceed the shuttle capacity. Constraint (ii) ensures that the indices of the variables are consistent. Constraint (iii) ensures that the shuttles do not overtake. Constraint (iv) ensures that every user eventually leaves the terminal in a shuttle. Constraint (v) ensures that the departure time of a shuttle occurs once the last user of this shuttle has arrived and the loading is over.
Problems P and P always admit optimal solutions when they are feasible, i.e., when . Indeed, is upper-bounded by and adding a constraint for all does not change the optimal value; since is lower semicontinuous (Lemma 2), the set of feasible solutions of the optimization problem obtained with this new contraint is compact; its objective function is lower semicontinuous (and even continuous in the case of P).
The following properties for P and P will be useful in some proofs.
Claim 1**.**
Replacing by \max_{j}\big{(}d_{j}-\tau(y_{j-1})\big{)} does not change the optimal value of P.
Proof.
Let be a feasible solution of P. We are going to build a feasible solution (with the same ) such that
[TABLE]
We set and define inductively . We have for all and it implies the inequality in (1). Let us prove the equality of (1): if \max_{j}\big{(}d^{\prime}_{j}-\tau(y_{j-1})\big{)} is attained for a such that , then there exists such that and , which means that the maximum is also attained for a such that ; and if \max_{j}\big{(}d^{\prime}_{j}-\tau(y_{j-1})\big{)} is attained for a such that , then there exists such that and by construction (since ), which means that the maximum is also attained for an such that . ∎
Claim 2**.**
If is increasing, for any of P and P, there is an optimal solution such that for all
Proof.
Let be an optimal solution (we do not care which objective function is used yet). Without loss of generality, we can assume that and that for all we have
[TABLE]
(just redefine according to these equalities if necessary). When , a straightforward induction on shows that we have then always . We can thus assume that .
Suppose for a contradiction that there is a such that . Denote by the smallest index for which this inequality holds. We necessarily have (because of the equality (2)). Denote by the smallest index such that . Note that since is increasing, we have that is continuous (it is upper and lower semi-continuous with Lemma 3).
For some small , we define as follows:
[TABLE]
and
[TABLE]
where . We first check that is a feasible solution of (P).
The definition of implies that . Thus if , we have and for a small enough , the vector satisfies constraint (ii). Otherwise, we have . It implies that (as otherwise the equality would imply that ). Thus, for a small enough , we have satisfies constraint (ii). It also satisfies obviously constraint (iv).
For , checking is straightforward. The remaining case is . A direct induction shows that for . Since (because ), for small enough, we have . Here, we use the fact that is continuous. Thus . Since we have by the above induction, we finally obtain . Therefore, satisfies constraint (iii).
Constraint (i) is satisfied for all , except maybe for . We have proved that . Since for some , we have , and thus . Therefore constraint (i) is also satisfied for .
Since the constraint (v) is clearly satisfied, is a feasible solution of (P).
A careful examination of the arguments used when we checked constraint (ii) shows that actually . The same induction as the one used we checked constraint (iii) shows that . We have proved that . Thus , and . We have
[TABLE]
which in contradiction with the optimality assumption. This settles the case of . The other case is dealt with similarly. ∎
Problems P and P can be written almost identically under the following form. We use infinitely many variables since there is no a priori reason to have a bounded number of departures, and there are indeed special cases for which there is no optimal solution with a finite number of departures. However, if , we prove that any optimal solution of P requires a finite number of departures, see Proposition 3. The case of P remains open.
[TABLE]
where is either or . Constraints (i), (ii), (iii), (iv), and (v) have the same meaning as for the previous problems. Constraint (vi) ensures that the time between two consecutive departures of a same shuttle is not smaller than the time required for a full trip plus the time needed to load the users.
In the model (P), the shuttles are not identified. Note however that their schedules can be easily be recovered: the departure times of a shuttle is of the form
[TABLE]
and the time at which the loading starts for a shuttle with departure time can be chosen to be (the loading starts as late as possible).
While it can be shown that problem P always admits an optimal solution when it is feasible (see Proposition 3), we were not able to settle the case of problem P.
2.4. Computational model
We assume that the following operations take constant time:
- •
Evaluation of for any .
- •
Integration of between two values.
- •
Evaluation of and for any .
- •
Evaluation of for any .
Note that if is piecewise affine with a natural description, as it is usually the case in practice, these assumptions are easily matched. Moreover, we set as constants of the computational model the capacity , the length of the period , the cumulative demand , the loading rate , and the return time . The complexity functions will be expressed in terms of and the accuracy of the computed solution.
3. Main results
In the present section, we present our main findings. Many results state the existence of algorithms with a guarantee that the returned solution has a value close to the optimal value of the considered problem. Except for two easy results – Corollary 1 and Proposition 3 – all proofs are postponed to other sections.
We organize the results presented in that section in three subsections. The first subsection – Section 3.1 – deals with the special case where is a constant function, i.e., when all users are in the loading terminal from the beginning of the period, and with returns allowed. It seems to us that these results are also interesting in themselves, because they form a natural situation for which there is a very efficient algorithm. The second subsection – Section 3.2 – deals with the general case where the shuttles are not allowed to come back, i.e., with the case covered by the problems P and P. The case where the shuttles are allowed to come back, i.e., when we deal with the problems P and P, is discussed in Section 3.3.
3.1. All users in the terminal from the beginning
In this subsection, we present results regarding the four problems when for all (all users are from the beginning in the terminal). For the problems for which return is not allowed (P and P), an obvious optimal solution is given by and for and the optimal value is for both problems, provided that (otherwise, there is no feasible solution at all): the shuttles take all the same amount of users, start immediately the loading process, and have the same departure time.
The rest of the section is devoted to the results regarding the problems P and P. For the first one, there are closed-from expressions for the optimal value and an optimal solution.
Proposition 1**.**
When for all , the optimal value of P is
[TABLE]
In the proof, we actually provide a closed-form expression for an optimal solution. For P however, there does not seem to be a closed-form expression for an optimal solution, and not even for the optimal value. There is nevertheless an efficient algorithm.
Proposition 2**.**
Suppose . When for all , the optimal value of P can be computed in constant time and an optimal solution can be computed in .
If , the optimal value is , and it is not too difficult to see that there is no optimal solution. In a transportation context, looks unrealistic. However, the chemical application mentioned in the introduction could be a situation where this equality could be met: as soon as the test is over for a batch, we can start the test for a new one.
3.2. When return is not allowed
We have the existence of an efficient approximation algorithm for P. The algorithm is actually an easy binary search (Section 5.1.1).
Theorem 1**.**
Let . A feasible solution of P – if the problem is feasible – satisfying can be computed in .
With an additional assumption on , this theorem provides actually an approximation scheme.
Corollary 1**.**
If is increasing, the algorithm of Theorem 1 computes in a -approximation for P.
A schedule for the shuttles requires to specify real numbers. Taking an output sensitive point of view, this corollary states thus the existence of a polynomial approximation scheme in this particular case.
Proof of Corollary 1.
Suppose increasing. Let be a feasible solution. According to Lemma 3, we have then for every and the maximum waiting time for shuttle is at least . Note that if , this quantity is zero. Hence, the sum of the maximum waiting times over all nonempty shuttles is at least and the optimal value of P is at least . Setting to leads to the result. ∎
For P, there exists an efficient approximation algorithm too. The algorithm is also described later (Section 5.2.1). We already outline that this algorithm is not a binary search as in the former case, but consists in building a quite simple weighted “approximative” graph, in which a shortest path is computed.
Theorem 2**.**
Suppose that admits right derivatives everywhere (denoted ) and that is positive. Then, for any positive integer , a feasible solution of P – if the problem is feasible – satisfying
[TABLE]
can be computed in .
As for Corollary 1 above, this theorem could be interpreted as a polynomial approximation scheme by using the fact that is increasing.
3.3. When return is allowed
The following proposition implies that when is larger than [math], any optimal solution of P requires a finite number of nonempty departures.
Proposition 3**.**
If , there exists an optimal solution of P and the number of nonempty departures in any optimal solution is at most
[TABLE]
Proof.
A feasible solution with an infinite number of nonempty departures has an infinite objective value and it thus strictly dominated by any solution by a finite number of departures. Thus, the set of feasible solutions can be reduced to the solutions where the number of nonempty departures is finite. Since is lower semicontinuous (Lemma 2), the set of feasible solutions is compact and the objective function is lower semicontinuous which leads then to existence of an optimal solution.
The schedule consisting in making the shuttles wait until time , loading them at full capacity (except maybe for the last departure), and making them leave as soon as the loading is completed provides a feasible solution of P with a value .
Consider an optimal solution of P and denote by the number of departures after time . The users in the last shuttle to leave have waited at least . We have thus
[TABLE]
which implies that
[TABLE]
Before time , the number of departures is at most . ∎
The next theorem states that there exists an algorithm computing arbitrarily good feasible solutions for P within reasonable computational times when is small. As for Section 3.2, this algorithm is described later in the paper (Section 6). It is based on the computation of a shortest path in an “approximative” graph, as for Theorem 2. It also uses Proposition 3 in a crucial way (actually a slight variation of it: Lemma 10).
Theorem 3**.**
Suppose that admits right derivatives everywhere, is positive, and is positive. Then, for any positive integer , a feasible solution of P satisfying
[TABLE]
can be computed in , where depends only on the constants of the computational model.
As above, the theorem actually ensures that the algorithm is an approximation scheme since we can bound from below using only the input values. If is considered as constant, this becomes even a polynomial approximation scheme.
We do not know whether there is a counterpart to Proposition 3 for problem P. If such a counterpart would exist, then almost the same technique as the one used in Section 6 would lead to a theorem similar to Theorem 3 for P. The existence of such a theorem remains thus open.
4. All users in the terminal from the beginning
Consider the case where all users are in the loading terminal from the beginning. To ease the reading, and for the present section only, we use to denote the quantity .
We treat first the case of problem P.
Proof of Proposition 1.
For P, when , an optimal solution is obtained by loading at full capacity the shuttle for each departure (except maybe for the last departure for which the shuttle load is ) and by making the shuttle leave immediately after each loading process. The optimal value is then . When , consider the problem Q defined as the problem P without the constraint that the shuttles do not overtake (constraint (iii) in (P)). The optimal value of Q provides a lower bound of the optimal value of P. Since there is no constraint linking the different shuttles, problem Q can be solved separately for each shuttle with a demand to carry, such that . The optimal solutions of Q are thus obtained from the optimal solutions of
[TABLE]
The solution given by for all is clearly optimal (and it is actually the unique optimal solution when ). Hence, there is an optimal solution for Q in which all shuttles have the same departure times and, for each travel, carry the same amount of users. Its value is . Since the shuttles do not overtake in this optimal solution of Q, it is actually a feasible solution for the problem P, and thus an optimal solution for this latter problem (its value being equal to a lower bound). ∎
The rest of this section is devoted to the proof of Proposition 2, which ensures the existence of an efficient algorithm solving problem P when for all . We start by considering the special case of problem P when . In such a case, it is always beneficial to define . Assuming that the ’s are given, it provides a feasible solution since for all . The objective function of P becomes thus
[TABLE]
where . Solving P when reduces thus to solving
[TABLE]
which is a convex program (with infinitely many variables). We will show that there is always an optimal solution of with a finite support. Then, we will solve , defined as the program with the additional constraint , with the help of the Karush-Kuhn-Tucker conditions (that do not apply otherwise).
Lemma 4**.**
Suppose that . Then has an optimal solution and it is necessarily of the form
[TABLE]
with such that and where
[TABLE]
Proof.
Consider the following program
[TABLE]
Note that is actually with the additional constraint that .
For , has no feasible solutions, and for , the set of feasible solutions is nonempty. In this case, by compactness and continuity of the objective function, has an optimal solution . We necessarily have for every , otherwise, exchanging the two values would strictly decrease the objective function. Let be the largest index such that , with the convention that if there are no such index , and let be the smallest index such that , with the convention that if there is no such index .
The constraints being all affine, the Karush-Kuhn-Tucker conditions apply. There is thus a real number and two collections such that for every we have
[TABLE]
Summing this equality from to and noting that and by definition of and provide an expression of in terms of and . Replacing by this expression in the same equality leads to
[TABLE]
Using this equality for gives the following equation.
[TABLE]
Equation (3) specialized for gives
[TABLE]
These two inequalities together – treated as conditions on a second order polynomial in – imply the necessary condition
[TABLE]
which imposes a unique integer value for and takes a unique value for each value of . We have proved that any optimal solution of is of this form. Now, note that by definition of , we necessarily have . It means that there are only finitely many optimal solutions of the ’s when goes to infinity. Since the set of feasible solutions of the ’s is nondecreasing when goes to infinity, it means actually that there exists an such that any optimal solution of for is an optimal solution of . Moreover, any feasible solution of is a feasible solution of for some , and thus is dominated by the optimal solutions of . These latter are thus the optimal solutions of . ∎
Let and be the optimal values of respectively and . Note that .
Lemma 5**.**
If , we have
[TABLE]
for every .
Proof.
Let . Consider a feasible solution of . Let be such that . Define inductively
[TABLE]
This is a feasible solution of . Since for all , the value given by to the objective value of is nonlarger that the value obtained by for . The inequality follows. ∎
Proof of Proposition 2.
Let us deal with the case . Using the fact that is a convex program, we easily get that is a convex function. It is thus continuous on , and since , we have that is continuous everywhere on . Making tend toward [math] in Lemma 5 and the inequality imply that . Since any feasible solution of is a feasible solution of with the same value for the objective function, every optimal solution of is an optimal solution of . An algorithm computing an optimal solution of can then be derived from Lemma 4: we just have to try all the finitely many possible values for . The proof for any value of will be obtained by showing that an optimal solution in this case consists just in replicating optimal solutions for the one-shuttle case.
When , consider the problem Q defined as the problem P without the constraint that the shuttles do not overtake (constraint (iii) in (P)). The optimal value of Q provides a lower bound of the optimal value of P. Since there is no constraint linking the different shuttles, problem Q can be solved separately for each shuttle with a demand to carry, such that . The optimal solutions of Q are thus obtained from the optimal solutions of
[TABLE]
The fact that is a convex program implies that the map is convex. As a consequence, the solution for all is an optimal solution of the previous program. Hence, there is an optimal solution for Q in which all shuttles have the same departure times and, for each travel, carry the same amount of users. Since the shuttles do not overtake in this optimal solution of Q, it is actually a feasible solution for the problem P, and thus an optimal solution for this latter problem (its value being equal to a lower bound). ∎
5. When return is not allowed
5.1. Minimizing the maximum waiting time
5.1.1. The algorithm
If , there is no feasible solution. We can thus assume that . The algorithm is a binary search starting with the values and which are respectively upper and lower bounds of the optimal value. While the gap is larger than , we consider the tentative value and the system
[TABLE]
where . Each iteration of the binary search consists in deciding whether (Sh) has a feasible solution or not, and it can be done in by computing the values of the ’s and the ’s iteratively (here we use in particular the computational assumptions on ). As we are going to prove, (Sh) has a feasible solution if and only if the problem has a feasible solution with a value of the objective function at most . If (Sh) has a feasible solution, we update thus the value of with the current value of , otherwise, we update with . When , the solution of program is feasible for P and its value is at most at from the optimal value.
5.1.2. Proof of Theorem 1
For any fixed , P has a feasible solution with a value of the objective function at most if and only if the following system has a feasible solution.
[TABLE]
We claim that (Qh) has a feasible solution if and only if (Sh) has one. Once this equivalence is established, the correctness of the binary search described above is almost immediate using Claim 1.
Let be a feasible solution of (Sh). We use without further mention that is closed. It satisfies the constraints , and (Qv). We have and . Since for all , we also have . It means that belongs to , and thus . Hence, satisfies also constraint (Qiii). Since , the solution also satisfies constraint (Qvi) and since is nondecreasing, it satisfies constraint (Qiv). Therefore, it is a feasible solution of (Qh) and the existence of a feasible solution of (Sh) implies the existence of a feasible solution of (Qh).
For the converse implication, suppose that (Qh) admits a feasible solution, and consider the optimization problem consisting in maximizing over its feasible solutions. These feasible solutions form a compact set of since it is obviously bounded and since the semicontinuities of and imply that it is closed. There is thus an optimal solution to that optimization problem. Suppose for a contradiction that there is a such that . Denote the largest such index. Let us slightly increase , while letting the other untouched. Redefine to be for all . The pair remains feasible for (Qh) (we use here the fact that is nondecreasing with ), while increasing the quantity , which is a contradiction with the optimality assumption. Thus, we have for all and for all provides a feasible solution for (Sh). ∎
5.2. Minimizing the average waiting time
5.2.1. The algorithm
The following map will be useful in the description of the algorithm.
[TABLE]
Define the directed graph by
[TABLE]
where we use the following notations:
[TABLE]
Set for each arc a=\big{(}(z,r),(z^{\prime},r^{\prime})\big{)} a weight w(a)=f^{\operatorname{ave}}\big{(}\mathrm{bar}\tau(r^{\prime})+\nu(z^{\prime}-\eta),r+\eta,r^{\prime}\big{)}.
If , there is no feasible solution. We can thus assume that . The algorithm consists first in computing a path minimizing , among all paths with at most arcs starting at and ending at a vertex with . Such paths exist, see Lemma 6 below. The computation of can be done in via dynamic programming. Let the vertex sequence of be \big{(}(z_{0},r_{0}),(z_{1},r_{1}),\ldots,(z_{n},r_{n})\big{)}. The algorithm consists then in defining recursively
[TABLE]
and
[TABLE]
and outputting the pair . The construction of the graph is sketched on Figure 2.
As it will be shown below, this is a feasible solution of P providing a value to the objective function within a gap to the optimal value.
5.2.2. Proof of Theorem 2
We provide three lemmas, which are proved in a separate section at the very end of the paper to ease the reading. Theorem 2 results immediately from their combination.
In the proofs of the lemmas, we assume that is large enough so that . Since in Theorem 2, appears in ‘big O’ formulas, it is a valid assumption. Anyway it is what is sought in practice: the larger , the larger the accuracy of the solution. An of same order of magnitude of would be useless.
Lemma 6**.**
For every optimal solution , there is a path with at most arcs starting at and ending at a vertex with and such that
[TABLE]
Lemma 7**.**
The pair is a feasible solution of P.
Lemma 8**.**
The following inequality holds:
[TABLE]
5.3. When the demand function is a step function
Better complexity results can be obtained when the demand is a step function. A step function is a function that can be written as a finite linear combination of indicator functions of intervals. The assumption on being a step function means that the users arrive only on a finite number of instants. As it has already been noted, the assumption is equivalent to the assumption that every user boards a shuttle as soon as he arrives in the terminal.
Proposition 4**.**
Assume that is a step function defined with discontinuities, supposed to be part of the input. Suppose moreover that . Then for each of P and of P, there is an algorithm computing an optimal solution in .
It turns out that when and the values taken by are integer, the loads of the shuttles in the optimal solution returned by the algorithm are also integer. We cover thus the case where the users are atoms.
The algorithm
We provide only the algorithm for P, the other case can be dealt similarly. Let be the discontinuities. Define the directed graph by
[TABLE]
where . Note that the vertex set is a finite subset of . Set for each arc a weight . We consider the two vertices [math] and (obtained with and ).
If , there is no feasible solution. We can thus assume that . The algorithm consists first in computing a [math]- path with arcs minimizing . Within the proof of Proposition 4 below, we show that from any feasible solution we can build a [math]- path with arcs in . Thus, when the problem is feasible, such paths exist in . The computation of can be done in via dynamic programming. Let the vertex sequence of be . The end of the algorithm consists in defining for all and outputting the pair .
As it will be shown below, this is an optimal solution of P.
Proof of Proposition 4
According to Claim 1, we replace the objective function of P by . It can easily be checked that is feasible for P. It provides a value for P (with the alternative objective function), and this value coincides with . The path describes therefore a solution of P with a value equal to .
Conversely, let be any feasible solution of P. Let be the sequence defined by . On the one hand, we have because . On the other hand, we have . If , we have by definition of . If , then since . Thus, for all . We have and and the sequence is a [math]- path with arcs.
Second, we prove that as follows. There exists a unique such that . By definition of , we have for all , and thus . Since , we have by definition of , and hence (directly by definition of ). Therefore, (where we use the fact that is nondecreasing).
Finally, we have \max_{a\in\mathcal{A}(p)}w(a)\leq\max_{j\in\{1,\ldots,S\}}\big{(}d_{j}-\tau(y_{j-1})\big{)}. As the path is optimal, is a lower bound on the value taken by the (alternative) objective function on . ∎
6. When return is allowed
The algorithm
The following map will be useful:
[TABLE]
We introduce the following two sets
[TABLE]
where
[TABLE]
Define the directed graph by
[TABLE]
where
[TABLE]
We adopt the convention when and we define . Set for each arc a=\big{(}(z,\boldsymbol{q},\boldsymbol{r}),(z^{\prime},\boldsymbol{q}^{\prime},\boldsymbol{r}^{\prime})\big{)} a weight where .
The algorithm consists first in computing a path minimizing among all paths starting at (the ‘all zero’ vector) and ending at a vertex with . Such paths exist, see Lemma 9 below. It can be done in via dynamic programming. Let the vertex sequence of be \big{(}(0,\boldsymbol{0},\boldsymbol{0}),(z_{0},\boldsymbol{q}^{0},\boldsymbol{r}^{0}),\ldots,(z_{n},\boldsymbol{q}^{n},\boldsymbol{r}^{n})\big{)}. The vector models the cumulative loads of the shuttles when they perform their th departure. The vector models the times at which the loading of the shuttles starts when they perform their th departure. These quantities are computed only approximatively (with an accuracy ).
The algorithm consists then in defining recursively for all with and
[TABLE]
where , , , and . For
[TABLE]
and outputting the pair .
As it will be stated below, this is a feasible solution of P providing a value to the objective function within a gap to the optimal value.
Proof of Theorem 3
We provide four lemmas. The proof of Lemma 10 is almost the one of Proposition 3 and the proofs of the three others follow the same scheme as the ones of Lemmas 6, 7, and 8. They are thus omitted. Theorem 3 results immediately from their combination.
Lemma 9**.**
For every optimal solution , there is a path starting at and ending at a vertex with and such that
[TABLE]
Lemma 10**.**
There is an optimal solution of P for which is an upper bound on the loading time of the last departure.
Lemma 11**.**
The pair is a feasible solution of P.
Lemma 12**.**
The following inequality holds:
[TABLE]
7. Experimental results
In this section, we test the performance of the algorithms described in previous sections for problems P, P, and P. As explained in Section 3, we do not have such an algorithm for problem P.
7.1. Data
Our experiments are based on real data provided by our partner Eurotunnel. They are related to the transportation of freight trucks between France and Great Britain. Some parameters are fixed as constants of the problems and do not vary from an instance to another. For the constants of our problem, we take the real values used in practice by the company:
[TABLE]
(The value taken for is actually the duration of a trip going from France to Great-Britain, and not of the round trip, which lasts approximatively twice this quantity.)
Two functions are used. The first one (“1P”) is a piecewise affine map obtained by averaging the real demand over several days. It turns out that this function has a peak period in the morning. The second function (“2P”), also piecewise affine, is obtained from the first by artificially adding a second peak period in the evening. In both cases, is increasing and . For problems P and P, we consider since the number of shuttle trips in every direction is within this range for a typical day.
The numerical experiments are performed on a Macbook Pro of 2014 with four 2.2 Ghz processors and 16 Gb of ram.
7.2. Results
The problems P, P, and P are solved with algorithms described in this article. The results are summarized in the following tables.
Table 1 gives the numerical results for problem P. The next column is the number of shuttles in the fleet. The third column provides the parameter of the algorithm, which is an a priori upper bound on the optimality gap (Corollary 1). The two next columns give respectively the lower bound and the upper bound (value of the feasible solution returned by the algorithm), both expressed in minutes. The next column is the optimality gap. The last column provides the CPU time spent solving the problem.
Table 2 gives the numerical results for problem P. The columns are the same as for Table 1 except the third one which provides here the parameter of the algorithm. We know from Theorem 2 that the gap between the upper bound and the lower bound converges asymptotically to 0 when goes to infinity. We tried and .
Table 3 gives the numerical results for problem P. The columns are the same as for Table 2. Since the computation time was prohibitively long as soon as , we made experiments for . To get realistic waiting times for the users, we divided the demand functions by 3.5 leading to (“1P∗”) and (“2P∗”). Again, we know from Theorem 3 that for large , we will be close to the optimal solution and we tried and .
7.3. Comments
In Table 1, the results for problem P are extremely convincing, the optimal solutions were found almost immediately. In Table 2, the algorithm for problem P was able to find provable good solutions within reasonable computation times. We may note that increasing after some threshold does not seem to improve the quality of the return solution. This was confirmed by other experiments not shown here. It may indicate that the algorithm could be used efficiently in practice. In Table 3, the same holds for P once we have accepted to work with one shuttle. Finding an efficient algorithm with at least two shuttles seems to remain a challenging task.
8. Proofs of Lemmas of Section 5.2
Claim 3**.**
We have for .
Proof.
We have by definition. Using in a feasible path, a direct induction shows that for . ∎
Claim 4**.**
Suppose that . Then for all and , we have and .
Proof.
Diewert [7] extended the Mean Value Theorem to semicontinuous functions. According to his result, for any , there exists such that
[TABLE]
Since
[TABLE]
we have for any . With and , we get (the first inequality is given by Lemma 1). By definition of , we have . The second inequality is proved along the same lines. ∎
Proof of Lemma 6.
Let be an optimal solution of P such that for all (Claim 2). Consider the sequence and remove the repetitions. Since the sequence is nondecreasing, we obtain an increasing sequence . We introduce with being the smallest index such that . We then define for , with . We prove that the sequence provides a feasible path from the vertex to in . First note that since and that . For all , we have , since and . Thus . Moreover by definition, . Therefore for all . Let us now prove that for all . By definition, . Note that because of the definition of , we have . Combining these inequalities for all with Claim 4 leads to
[TABLE]
The sequence is then a feasible path from the vertex to in , with at most arcs. The only thing that remains to be checked in that the claimed inequality holds.
We have f^{\operatorname{ave}}(d_{\sigma(j)}^{*},y_{\sigma(j)-1}^{*},y_{\sigma(j)}^{*})\geq f\big{(}\mathrm{bar}\tau(r_{j})+\nu(z_{j}-\eta),r_{j-1}+\eta,r_{j}\big{)} for all since is nonincreasing in the second term and nondecreasing in the first and third terms. Thus,
[TABLE]
Since this inequality holds for any optimal solution of P, we get the conclusion. ∎
Proof of Lemma 7.
We are going to check that is feasible for P.
For , we have by definition of . For , we have . Finally, we have (where we use Claim 3 to bound ). Thus, satisfies constraint (i).
For , if , we have (the last inequality being Claim 3) and if , necessarily and . Thus, satisfies constraint (ii).
Consider . We have
[TABLE]
The first inequality is obtained with the help of Claim 3. For the second one, we use Claim 4 and also that and which hold because \tilde{p}=\big{(}(z_{0},r_{0}),(z_{1},r_{1}),\ldots,(z_{n},r_{n})\big{)} is a path in . For the last inequality, we use , which holds again because is a path, and the definition of . For , we have by definition. Constraint (iii) is thus satisfied for all .
If , then by definition. From now on, we suppose thus that . We also suppose that . The case being easy to check (and anyway, for a complexity point of view, this case does not matter). If , then (here we use that and that ) and thus . If , then since . Hence, in all these cases, satisfies constraint (iv). The only remaining case is when . If is an index in such that , then we have and , and thus . It implies that as soon as some is such that , we have , which is a case we have already dealt with. Since for , we are left with the case where for every . In this situation, we have and hence . Since , we get that , and satisfies constraint (iv) in every case.
For , we have by definition, and for , we have . Thus satisfies constraint (v) and is feasible for P. ∎
Proof of Lemma 8.
Our goal is to bound from above the following quantity
[TABLE]
We proceed by splitting the expression into two parts: the sum from to , and the sum from to .
Using Claims 3 and 4, we have , where . Thus we have for all ,
[TABLE]
since is nonincreasing in the second term and nondecreasing in the first and third terms and where we extend the definition of by letting for all .
For the second part, we proceed as follows. Since , Claim 3 immediately implies . With Claim 4, we get thus , where we used T=\mathrm{bar}\tau\big{(}D(T)-\tilde{y}_{n}+\tilde{y}_{n}\big{)}. This provides
[TABLE]
Using again the fact that is nonincreasing in the second term and nondecreasing in the first and third terms and with the help of Claim 3, we get
[TABLE]
since the terms indexed by are all zero and since .
We aim at comparing the upper bounds in Equations (5) and (6) with
[TABLE]
We first compare the th term of the bound in (5) with the th term of the sum in (7).
[TABLE]
with
[TABLE]
Since in nondecreasing, we get
[TABLE]
Using and , we obtain
[TABLE]
We now bound the term in Equation (6). Let . We have
[TABLE]
We have thus
[TABLE]
Using and leads to
[TABLE]
∎
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[1] Eva Barrena, David Canca, Leandro Coelho, and Gilbert Laporte. Exact formulations and algorithm for the train timetabling problem with dynamic demand. Computers & Operations Research , 44:66–74, 2014.
- 2[2] Valentina Cacchiani, Alberto Caprara, and Paolo Toth. A column generation approach to train timetabling on a corridor. 4OR: A Quarterly Journal of Operations Research , 6(2):125–142, 2008.
- 3[3] Valentina Cacchiani, Alberto Caprara, and Paolo Toth. Non-cyclic train timetabling and comparability graphs. Operations Research Letters , 38(3):179–184, 2010.
- 4[4] Xiaoqiang Cai, C.J. Goh, and Alistair Mees. Greedy heuristics for rapid scheduling of trains on a single track. IIE transactions , 30(5):481–493, 1998.
- 5[5] Alberto Caprara, Matteo Fischetti, and Paolo Toth. Modeling and solving the train timetabling problem. Operations research , 50(5):851–861, 2002.
- 6[6] Roberto Cordone and Francesco Redaelli. Optimizing the demand captured by a railway system with a regular timetable. Transportation Research Part B: Methodological , 45(2):430–446, 2011.
- 7[7] Walter Erwin Diewert. Alternative characterizations of six kinds of quasiconcavity in the nondifferentiable case with applications to nonsmooth programming. In S. Schaible and W.T Ziemba, editors, Generalized concavity in optimization and economics , pages 51–93. Academic Press, New York, 1981.
- 8[8] Laura Ingolotti, Antonio Lova, Federico Barber, Pilar Tormos, Miguel Angel Salido, and Montserrat Abril. New heuristics to solve the CSOP railway timetabling problem. In International Conference on Industrial, Engineering and Other Applications of Applied Intelligent Systems , pages 400–409. Springer, 2006.
