ROADEF 2009 Challenge Frequently Asked Questions
Question 1: According to the text of the challenge, it seems that creating new flights is allowed. We think that, as a consequence, replacing an aircraft of one family by an aircraft of a different family is possible. For example, the Orly-Nice flight leaving at 11: 00 and operated by the A320#2 is cancelled, and an Orly-Nice flight leaving at 11:00 and operated by the B747#1 is created. Can you confirm whether it is possible or not?
Answer: The answer is "yes, it is possible." It is possible to create a flight with an aircraft of any family. It will be a different flight with a unique and previously unused flight number. All passengers scheduled to fly on the cancelled flight must be reaccommodated. Moreover, constraints on the rotation of the aircraft must still be verified. Let us consider the example given above and suppose that a Nice-Orly flight leaving at 14:00 follows the Orly-Nice flight leaving at 11:00. Either the 14:00 flight will have to be operated by an Airbus that would be available in Nice or it will have to be cancelled and a new flight operated by the B747#1 (or another aircraft available in Nice) will have to be created; in the latter case, the passengers of the original Nice-Orly flight will have to be reaccommodated. All this means that the creation of new flights may have many consequences and may require further optimisation tasks (especially since the capacities of aircraft are different, so aircraft operating created flights may be close to empty or may not be able to carry all originally scheduled passengers). Therefore, the situation you describe is possible, but a careful assessment of its benefits is necessary on a case-by-case basis.
Question 2: In the first instance A01, the distance file mentions that the distance between MPL and ORY is 85 minutes. However, flight 4406 leaves MPL at 8:05 and arrives in ORY at 9:25, thus taking only 80 minutes. Is this discrepancy normal?
Answer: This is not an inconsistency. Flight plans are created after real data and consist of flights with possibly various durations for a given itinerary. For example, the duration of a flight may vary depending on the speed of the aircraft that operate it. On the other hand, we have determined a fixed value for the duration of each flight for the purpose of the distance file (the duration mentioned in the file is currently determined as the maximum duration on a given itinerary among flights present in the flight plan). When creating a flight, the duration found in the distance file must be used. When delaying an existing flight, one must refer to the duration mentioned in the flight plan.
Question 3: In the A01 instance, flight 4600 is subject to a 75 minutes delay, arriving at CDG at 08:00 (06:45+1:15 = 8:00). Flight 145 is delayed by 9 minutes, it leaves CDG at 08:14 (08:05+0:09 = 08:14). This leaves 14 minutes between the arrival of the first flight and the departure of the second flight. However, passenger itineraries through these two flights require a 30 minutes minimum connection. According to the problem statement, one can't modify the flights, nor change the itineraries before 12:00 (config file). Is this an error in the statement or should one assume that passengers have missed their connection and reroute them using an alternative flight ? Or, is there another explanation ?
Answer: Passengers who have arrived or have already left at the start of the recovery period (itineraries through flights which have already left, as defined in the problem statement, i.e. «whose departure time from the initial slight schedule is strictly earlier than the beginning of the recovery period ») can't be modified, to the extent where this is possible. Thus, these passengers should fly on the flights of their itinerary, whether these are delayed or not, as long as no constraint is violated (minimum connection time or cancelled flights). Various cases can occur : The passengers are able to fly all the flights of their itinerary which have already left : Either they have arrived (with a potential delay => corresponding delay costs), or they are connecting during the revovery period (=> passenger reaccomodation on the recovery period flights so they get to their final destination, or passenger trip cancellation) ; They have missed a connection, or an intermediate flight of their itinerary has been cancelled : they are connecting, possibly before the start of the recovery period (=> passenger reaccomodation on fixed flights, left before the start of the recovery period, and/or on the recovery period flights so they get to their final destination, or passenger trip cancellation) ; The first flight of their itinerary has been cancelled : they are at the start of their itinerary (=> passenger reaccomodation on fixed flights, left before the start of the recovery period, and/or on the recovery period flights so they get to their final destination, or passenger trip cancellation) ; Concretely, on the given example, passengers scheduled to connect from flight 4600 to flight 145 have flown the first flight with the given delay and can't connect anymore. Their itinerary is stoped in Paris at 08:00. One should then try to reaccomodate them towards Mulhouse (with any connection from 08:30, given the 30 minutes minimum connection time), either with a « fixed » flight that departs before 12:00, either on one of the afternoon flights. Whatever the chosen alternative, associated delay costs penalize the objective, or the cancellation costs if no alternative itinerary can be proposed (high cancellation costs). Let's now assume that the first flight is cancelled in the given example. Passengers should be reaccomodated from Brest to Mulhouse, from 05:25, or cancelled (cancellation costs on outbound itinerary for passengers 80, 82, 95, 96 and on inbound itinerary for passengers 84, 86).
Question 4: In the case of a round trip itinerary (A->B->C->B->A), should the passengers visit the « destination » city (in the middle of the itinerary) ? Should one respect time windows as much as possible at that place as well ? Passenger re-accomodation through other connecting airports would then only be possible for one-way itineraries.
Answer: No, the simple answer which may seem « absurd », is that round trip itineraries should be treated as outbound itineraries without the obligation to visit any connecting airport. It is thus only about bringing the passenger back to its original airport (for example, A->D->C->F->A!), or to cancel the passenger trip with a penalty
Question 5: Regarding penalties, should round trip itineraries be considered specifically or should they be considered as outbound trips ? In the preceeding example, is it possible to re-accomodate the passengers up to C, without re-accomodating them back to A ? (with a penalty of course)
Answer: They are considered as outbound trips. Either they should be cancelled altogether, or the passengers should be re-accomodated to the final destination (that is to the departure station in this case). As opposed to inbound trips, we here do not face the risk for leaving a passenger away from his origin station (unless a passenger has already initiated his/her itinerary, in which case the connecting penalty is used instead of the outbound penalty). In summary: passenger who has not left yet from his/her origin station => outbound penalty; passenger who has left already => connecting penalty.
Question 6: If an aircraft doesn't reach the maximum flight time during the recovery period (due to flight cancellations), should it be maintained anyway at the scheduled place and time ?
Answer: The maximum flight time is an upper bound, so it is not mandatory to reach it to provide the maintenance service, i.e. all maintenance services must be provided at the scheduled place and time, should it require the considered aircraft not to operate all flights initially assigned to it.
Question 7: Should one plan other maintenance services than the scheduled ones ?
Answer: No.
Question 8: Why does the initial trip duration NOT include connexion durations, in the case of multiple flights itineraries ?
Answer: This duration serves a single purpose : the calculation of compensations according to regulation in the case of delays or cancellations. Passenger compensations formally depend on this initial duration and on the actual delay. The delay is calculated at the arrival (5.2), i.e. by comparing the arrival times at the final destination.
Question 9: Does the flight delay (all_flights.csv file) apply both to departure and arrival times, or only to the arrival time?
Answer: It applies to both departure AND arrival times.
Question 10: Is it possible to extend flight durations to make use of a better slot for landing?
That is not possible. However, one may delay the flight departure, which implies a delayed arrival and potentially the use of a better slot for landing.
Question 11: is parallel computing allowed?
Answer: No.
Question 12: Are the time intervals which the airport capacities are based on always defined from the start of the hour to the end of the hour ? that is , the MM term in HH :MM is always 00 ? The question also applies to the disruptions file. Moreover, are the provided time intervals always sorted as in the example and in the set A file ?
Answer: The time windows are always defined from the start to the end of
the hour in the provided files (set A), but we can't garantee this will always be
the case for data sets B and X. Especially when it concerns airports disruptions.
However, we commit to delivering sorted intervals.
In the case wherre a time window would not start and end at the start and the end
of an hour, the capacity should be calculated as follows : time window length (in
hours)*hourly capacity. For example, let's consider the window [11:45 - 14:30[
associated to the hourly capacity of 4. The capacity over the interval is thus
2.75 * 4 = 11, split as follows:
[11:45 - 12:00[: 1 - [12:00-13:00[: 4 - [13:00 - 14:00[: 4 - [14:00 - 14:30[: 2
Question 13: Is it possible to arrive ahead of schedule with a reaccomodated itinerary ?
Answer: Yes. For instance, a passenger on NCE-ORY (8h - 9h25) followed by ORY-LIL (10:15 - 11h05) could be reaccomodated on NCE-LIL (8h30 - 10h10), which would let the passenger arrive ahead of schedule compared to the original itinerary
Question 14: Can an aircraft undergo maintenance immediately after arriving at the airport and leaving the airport immediately after the maintenance ? Or, should it also meet the turnaround times ?
Answer:No, there are no turnaround times. An airacft arriving at 8h is considered as able to undergo a maintenance service starting at 8h. Maintenance time windows are wide enough to allow for the transition to/from a flight.
Question 15: A passenger whose itinerary started before the recovery period (i.e. a connecting passenger) has a priority to reach his/her final destination (due to high penalties). In the case of a one way itinerary, should the maximum delay be 18 hours (as an outbound itinerary) or more (as an inbound itinerary) ?
Answer: In the case of connecting passengers or on an inbound itinerary, there is no maximum delay restriction, as inidicated in the subject.
Question 16 : If a flight is so late that its departure time is delayed to the next day (for instance original departure time: 23h00 (01/01/2008) and 70 minutes delay) and if we write the corresponding date (02/01/2008) in file sol_rotations.csv, the solution checker marks the flight as already departed. The same problem appears with the itineraries: the checker indicates a departure before the original departure time. Is there a mistake in the checker ?
Answer: The departure date of a flight should remain indentical to the original one. If the flight's departure in the next day, the mark "+1" should be used after the departure date (01/01/2008 00h10+1 for the above-cited example). The checker is correct for this point.
Question 17 : A flight is identified by its identifier and date. Because of delays, it may happen that two flights with the same identifier are scheduled the same day. In « sol_rotations » file, there is no problem thanks to the "+1" field. However, there is a problem in the sol_itineraries file where we must set the initial date of each flight (so as to distinguish the flights) but the checker says there is an error if this initial date is lower than the planned departure times for the passengers. Is there a workaround since using "+1" in this file seems useless ?
Answer: The +1 field in file sol_rotations cannot bu used to delay flights from a day to the other but rather for indicating the arrival time of flights departing late in the night (e.g. 23h00) and arriving the day after (e.g. 1h00). In fact, 2 flights with a same identifier never exist the same day. In this case, instead of keeping the 2 flights with the same id, we must cancel one of them and recreate the other one with another id and corresponding date. The cost will not be impacted (same flight with the same aircraft).