Skip to content

skalskidaniel/spare-aircraft-optimization

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

117 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ryanair Spare Aircraft Optimization

This project shows how an airline can decide where to place spare aircraft each day to reduce the cost of delays.

See the interactive demo: Streamlit

See the overall proposed solution benchmark: Google Sheets

Spare aircraft benchmark Spare aircraft placement map

Problem formulation

Flights sometimes fail due to technical issues. If a delay exceeds 3 hours, EU261/2004 requires passenger compensation:

  • €250 per passenger for flights ≤ 1500 km
  • €400 per passenger for flights > 1500 km

A spare aircraft can rescue a disrupted rotation, but keeping spares on standby is expensive. So the key question is:

Where should spares be positioned each day to minimize total expected cost (holding + fuel + compensation)?

How the Solution Works

  1. Read the schedule and group flights into daily rotations.
  2. Measure distances between airports to see which bases can reach a failure within 3 hours (≈1200 km).
  3. Estimate risk by calculating expected compensation for each flight and the remaining legs in its rotation.
  4. Optimize placement with a mixed‑integer model that chooses how many spares to keep at each airport per day.
  5. Validate the plan with simulated failure scenarios.

What’s in the Repo

  • src/notebooks/scenario_analysis.ipynb — step‑by‑step walkthrough of the full pipeline
  • models/ — pre‑computed weekly optimization outputs
  • scenarios/ — simulation and benchmarking results
  • data/ — schedule and airport inputs

About

This project shows how Ryanair airline can decide where to place spare aircraft each day to reduce the cost of delays.

Topics

Resources

Stars

Watchers

Forks

Contributors