Skip to content

Instantly share code, notes, and snippets.

@Elizafox
Created June 21, 2012 21:15
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Elizafox/2968578 to your computer and use it in GitHub Desktop.
Save Elizafox/2968578 to your computer and use it in GitHub Desktop.
The Bus Filling Protocol

The Bus Seating Protocol

  • Everyone -- with noted exemptions -- attempts to sit as far from each other as possible, leaving at minimum one person of space.
  • If this is impossible, the following precedence rules are followed:
  • Seats behind an adjacent passenger avoiding passengers of great weight, homelessness, or mental illness, avoiding adjacent people on sides
    • Seats in front of an adjacent passenger avoiding passengers of great weight, homelessness, or mental illness, avoiding adjacent people on sides
    • Sitting "between seats" bus permitting and not uncomfortable
    • At this stage sitting directly next to someone is impossible, so find least person of great weight and/or mental illness and/or homelessness (preferring weight to homelessness to mental illness) to sit next to
    • Failing these, or adjacent people would be too mentally ill, homeless, or fat, stand.
  • Bus seating order prefers back to front, unless the passenger is of great weight, elderly, or their stop is < 4km away, then it changes to front to back
  • The arrangement is not stable for persons who are not of great weight or elderly (for those groups, it is stable), as follows:
    • Normal persons will move to a better seat fulfilling previous conditions weighing on distance of seat (closer is better)
    • Persons of great weight or the elderly will attempt to sit down, preferring but not strictly adhering to the adjacency rules.
    • The extroverted mentally ill or intoxicated will always try to sit near a passenger who will tolerate them. Passengers may move if the mentally ill or intoxicated person doesn't get the hint, according to the protocol.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment