Aviation scheduling is a long complex process that brings together operational and commercial considerations, deals with a number of different elements (crew, airports, people!) and can have a tactical and strategic focus.
We give an introduction to the topic and introduce the idea that scheduling could learn from new concepts in software development.
Scheduling is a complex and business critical process in almost every industry, but in the airline industry this plays a vital role for the survival of the business. This is due to the fact that every airplane can have a cost of around 100 million euros, meaning these resources are scarce and very expensive in usage (cost of maintenance, fuel, crew…). A suboptimal usage of them due to a bad schedule can have enormous costs and as such make the difference for an airline company between being profitable or not.
Airline companies therefore can invest heavily in scheduling teams and tooling, although a lot of scheduling is still done manually, which sometimes results in high workloads and suboptimal results.
The scheduling process of an airline is however very complex due to its enormous amount of constraints to be taken into account, for example
Due to its business importance and the above-described complexity, scheduling in an airline company is done at different levels and time horizons.
First there is the long-term network scheduling. This is an exercise done on a yearly or bi-yearly basis by an airline company and is used to determine which recurring flights will be offered commercially. In this scheduling exercise,
we don’t work on individual flight and crew member level, but rather try to optimally define the flights that will be offered.
For this the different destinations are provided with a commercial indication (of which profit can be made on each destination), the number of planes and crew members, the required maintenance of each airplane and the number of passengers per flight. Based on the cost and revenue of each flight an optimal flight schedule is determined. Additional constraints are that flights should reoccur on a +/- 2-weekly basis and that obviously an aircraft should be back if it should be doing the same flight again. This is a strategic exercise, which can make enormous revenue differences if done well.
Once the network scheduling is done, we come to the manpower scheduling process. This is a process typically done with a 3-6 month horizon and determines the number of required crew members. In this phase, we will determine how many crew members are needed, potentially attracting new talent, but it also allows to correctly schedule trainings for crew members and allows to give an indication of how many people can take a day off on specific days.
The next step is the detailed scheduling process (also called crew scheduling), which is done typically on a 6-week basis. Here a detailed schedule is created, where each crew member gets a detailed roster of when to work and on which flights.
In the crew scheduling process, we typically identify:
In this exercise parameters like total person-days, number of overnight stays, deadhead times and ground time should be kept as low as possible. In general, the process should minimize all costs while complying with all legal criteria, covering all flights and taking constraints (requests) of personnel as much as possible into account.
Finally there is the day-to-day follow-up, fine-tuning and rescheduling. In this process last minute changes are incorporated and rescheduled. It is the tactical real-time management of the different planes and crew members, but also airports, gates… As such this step would ideally be strongly linked to the ERP system of the airline, where all day-to-day aspects need to be managed, like fuel prices, ticket sales, reservation of gates/cleaning/catering/fueling/maintenance/repairs/trainings, flight plans (Flight plan filing), real-time follow-up of location of airlines; Duty Log (flight tracking). Although in some cases this evaluation is often carried out in silo’s or by ‘gut feel’.
Often these different schedules at different levels are defined by different groups within the organisation, as different skill sets are required. This leads however to silo-mentality, where one team could blame the other for scheduling issues and poses serious difficulties to easily share the inputs and outputs used for the scheduling calculations at the different levels. This is very similar to the V-model (Waterfall model) in software delivery. The higher up the V, the more high-level the requirements, but also the more impact a wrong decision can have on the overall system. While descending the V, hand-overs are done from 1 person (or team) to another, which typically also leads to certain frustrations and miscommunications and a lack of end-to-end ownership. In software delivery there is therefore a shift towards Agile delivery, where the cycles are reduced and profiles are working more end-to-end.
Up to a certain extent, this (move to Agile way of working) could also be applied on scheduling, allowing for schedulers to be more involved in an end-to-end way and also to work with more frequent iterations. Obviously as we are working here with real personnel and physical aircraft, this has its limits, but certain practices could be applied, like
Bringing these different schedules (on different time horizons) more closely together and allowing to adapt existing schedules much faster, allows to transform airline companies to much more dynamic organisations, which can react quickly to changing market conditions and last-minute unforeseen events. This will be highly beneficial for the customer and and can bring significant competitive advantage to those airline companies able to master this transition.