Case Study: AirCrewRostering

Submitted: 20 Feb 2008

Operations Research Topics:

Application Areas:


Problem Description


Adapted from a real-world problem

An airline is trying to roster captains for 6 flights. The flight schedules are:


Only one captain is required for each sector, but a captain may be a passenger on a flight (this is called paxing). In addition to the six flights above the following flights are available for paxing and operate every 2 hours:


The following rules for shifts must be observed:

  • Shifts start and finish at a captain’s home base;
  • The earliest start time is on Day 1 (0001 hours) and the latest finish time is on Day 6 (2359 hours);
  • Shifts are composed of blocks of work. Each block must be no more than 13 hours;
  • Captains must have at least 12 hours break between blocks. The exception is when a block consists only of paxing flights, then a 9 hour break is all that is needed;
  • There must be a 30 min break between sector changes.

There are 6 captains available for work, 2 based in Auckland (AKL), 1 based in Christchurch (CHCH) and 3 based in Singapore (SNG). Each captain is paid $1000 for each block of work (even if it is only a 45 min pax). Each captain’s contract guarantees he/she will be paid for 3 blocks of work even if they perform less.

The airline has started an AMPL model, but given up:



set TODS; # T(our) O(f) D(uty) set = pilot schedules
set FLYS {TODS} within FLIGHTS;

param Blocks {TODS} integer >= 1;
param Base {TODS} symbolic within BASES;

They have asked you to complete their model file and write a data file and script file to solve their rostering problem.

The airline is also curious if they can reduce the cost of their roster by using less pilots. As a second deliverable, they have asked you to investigate this option.

Return to top

Student Tasks


1. Add a <span style=

Return to top

Topic attachments
I Attachment History ActionSorted ascending Size Date Who Comment
JPEGjpg flights.jpg r1 manage 43.7 K 2008-02-20 - 10:00 LaurenJackson  
JPEGjpg recurring_flights.jpg r1 manage 23.8 K 2008-02-20 - 10:01 LaurenJackson  
Edit | Attach | Watch | Print version | History: r12 | r7 < r6 < r5 < r4 | Backlinks | Raw View | Raw edit | More topic actions...
Topic revision: r5 - 2008-03-01 - TWikiAdminUser
  • Edit
  • Attach
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2022 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback