Aurora-PilotTraining: Alaska Airlines Uses Aurora to Schedule Their Pilot Training Program

Pilot training involves a variety of specialized functionality and logic. The scheduling and logic enforcement was historically a slow and painstaking process, with a significant amount of manual cross-checking. Aurora automates the process, while allowing the user to make edits and adjustments. Aurora can then update the schedule, taking those changes into account.

The supported functionality includes:

  • Generating groups of trainees based on training needs and standard class sizes.
  • Coordinating training across students in a class. Some training events involve the whole class, some involve a sub-group, some are paired with trainees of the same type (first officer/first officer), and some are paired with trainees of the other type (first office/captain).
  • Allowing each training event to specify required simulators, required instructors, and other specific scheduling characteristics.
  • Preventing significant gaps in the training, even with larger class sizes and limited simulators.
  • Preventing trainees from having too many days of training in a row.
  • Determining how holidays impact different types of training.
  • Clustering different types of training, to prevent days off from falling in a way disruptive to the training.
  • Enforcing the specified training order, while permitting flexibility for chunks of floating training with greater flexibility.
  • Supporting different training sequences for first officers, captain upgrades, and recurring training.
  • Allocating instructors, including determining whether there is sufficient standard staff, or whether pilots need to be brought in to supplement the standard instructors.
  • Allocating extra staff if uneven team sizes require staff to fill in for trainees on the paired activities (e.g. there are an odd number of first officers, and so an instructor must sit in as the second first officer in the paired experiences).
  • Taking advantage of flexibility in the schedule to reduce costs.

Simulators are critical to pilot training, and have significant additional logic:

  • Maintaining simulator assignment consistency (target simulator and time slot) for a given trainee.
  • Managing different types of simulators for different parts of the training.
  • Blocking out maintenance time and scheduling around it.
  • Scheduling structured recurrent training around the extended training, using left over simulator space.
  • Allowing the user to add simulators, permitting what-if analysis and program growth.


A variety of reporting functionality is also included, allowing the user to view a schedule overview, determine load and availability, review distribution and cost-related information, and view key variables through time. The user can also export the trainee schedule to Excel, allowing additional analysis and data transfer.

The training schedule for part of a class. Shows trainee pairing.

The training schedule cross-referenced with the simulator schedule.


Instructor schedule, showing the different categories of allocated instructor.