Skip to content

The Planning Lifecycle: From Schedule to Day-of-Ops

The airline crew scheduling problem is traditionally solved in distinct, consecutive steps to manage the NP-hard mathematical complexity. A Rave Developer's code spans across this entire lifecycle, but operates differently at each stage.


The Four Stages of Airline Optimization

flowchart LR
    A[1. Network Planning<br>Flight Timetable] --> B[2. Crew Pairing<br>Anonymous Trips]
    B --> C[3. Crew Rostering<br>Named Assignments]
    C --> D[4. Crew Tracking<br>Day-of-Ops Recovery]

1. Network Planning (Schedule Generation)

Months in advance, the commercial planning department defines the flight schedule (the timetable of aircraft moving between cities). The crew optimizer takes this scheduled flight network as its input data.

2. Crew Pairing (Optimization)

In the crew pairing step, the goal is to find the least costly set of pairings (consecutive flights flown by a single crew) that covers every single flight in the given network.

  • State: Crews are anonymous.

  • Focus: Creating efficient, legal blocks of work that minimize deadheading and layover costs.

  • Rave Context: Rule execution focuses heavily on the Leg, Duty, and Trip levels.

3. Crew Rostering (Assignment)

In the rostering step, the actual crew members are named and assigned to the anonymous pairing teams generated in the previous step.

  • State: Crews are identified individuals.
  • Focus: Managing vacations, training days, union bidding, and legal rest between pairings.
  • Rave Context: Rule execution scales up to the Roster / Plan level, looking at 30-day horizons.

4. Crew Tracking (Day-of-Ops / Dispatch)

On the actual day of the flight, reality strikes. Weather, mechanical failures, or crew sickness break the optimized rosters.

  • State: Real-time operational recovery.
  • Focus: Repairing broken pairings on the fly while maintaining strict EASA FTL legality.
  • Rave Context: The Rave rule engine evaluates legality in real-time as dispatchers drag-and-drop flights to different crew members in the Jeppesen UI.