A simple flight boarding simulator - Shiny Contest Submission

A simple flight boarding simulator

Authors: Jackson Kwok

Abstract: Adjust the controls in the side panel. Click "Start" to begin the simulation. Watch to the end, and a summary table will show up to the right of the diagram.

Full Description:

A simple flight boarding simulator

This is a simple simulator for exploring different flight boarding strategies. Can you figure out which strategy leads to the fastest and smoothest boarding process? And which variable has the most impact?

About the Parameters

  1. Flight settings

    • Number of rows: adjusts the number of rows on the plane. Increasing the number of rows can highlight the inefficiencies (if any) of a boarding strategy.
    • Row layout specifies the seating configuration of a row, given as integers separated by commas, e.g., "3,4,3", "2,4,2", "3,3".
  2. Passenger settings and boarding strategy

    • Maximum number of luggage: a passenger stores the luggage in the cabin while in the aisle. The more luggage a passenger carries, the longer it takes for them to get seated, causing delays for other passengers.
    • Boarding strategy
      • Random: Passengers board in a completely random order.
      • Back-to-front: Passengers seated in the back rows board first.
      • Back-to-front with shuffle: Passengers board in blocks (back, middle, front), with a random order within each block but ensuring back rows board before the middle, and middle before the front.
      • Front-to-back: Passengers seated in the front rows board first.
      • Front-to-back with shuffle: Passengers board in blocks (front, middle, back), with a random order within each block but ensuring front rows board before the middle, and middle before the back.
  3. Control

    • Time between updates (ms): adjusts the time interval between each simulation update and controls the speed of the visualization.
    • Start, Play / Pause and Reset are self-explanatory.
  4. Satisfaction

    The happiness of each passenger depends on how long it takes them to reach their seat. If a passenger is seated in row k, the optimal time to reach their seat is k steps. If they take longer:

    • More than twice as long (e.g., more than 2k steps) leads to unhappiness.
    • If it takes between 1.5k and 2k steps, the passenger's satisfaction is classified as okay.
    • If the passenger reaches their seat in less than 1.5k steps, they are considered happy.

Q and A

  • Q. Does windows seats take more time to reach than aisle seats?

    A. No, they don't.

  • Q. How is this app built?

    A. This app is built with the R packages shiny and animate [1,2].

  • Q. Can I implement other boarding strategies?

    A. Yes. Fork the repository and have fun!


Keywords: flight boarding, simulation, animate
RStudio Cloud: Posit Cloud


Shiny app: Flight boarding simulator
Repo: GitHub - kcf-jackson/flight-boarding-simulation: Simulate flight boarding with 'shiny' and 'animate'

Thumbnail:
image

Full image: