1 / 69

A Dial-A-Flight Problem Martin Savelsbergh

A Dial-A-Flight Problem Martin Savelsbergh. “Per-Seat, On-Demand” Jet Services How to Keep Air Transportation Moving at the Speed of Business. Georgia Tech Mo Bazaraa Faram Engineer Daniel Espinoza Renan Garcia Marcos Goycoolea George Nemhauser Martin Savelsbergh. ILOG Emilie Danna

kane
Download Presentation

A Dial-A-Flight Problem Martin Savelsbergh

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A Dial-A-Flight Problem Martin Savelsbergh

  2. “Per-Seat, On-Demand” Jet Services How to Keep Air Transportation Moving at the Speed of Business

  3. Georgia Tech Mo Bazaraa Faram Engineer Daniel Espinoza Renan Garcia Marcos Goycoolea George Nemhauser Martin Savelsbergh ILOG Emilie Danna Zonghau Gu DayJet Eugene Traits Alex Khmelnitsky Project Team

  4. Per-Seat, On-Demand Jet Services • Background • Security delays at major airports • Rigid schedules of commercial airlines • Hub-and-spoke network of commercial airlines • Affordable small jet planes • Large number of small, underused airports

  5. Eclipse 500 • Crew • 1 pilot • Cruise speed • 431 miles/hr • Maximum range • 1,473 miles • Maximum altitude • 41,000 ft • Capacity • 5 passengers

  6. Business Model • Outward facing • On-demand booking • Competitive pricing • High quality & reliable service • Large coverage area • Inward facing • Dynamic route creation • Passenger aggregation

  7. Optimization Problems • Order acceptance (on-line) • Schedule optimization (off-line) • Revenue management • Disruption recovery models • Strategic planning Uncertainty

  8. Optimization Problems Order Acceptance Given a list of accepted flight requests and a new flight request. Decide whether the new flight request be accommodated. Schedule Optimization Given a list of flight requests, create feasible itineraries for the planes in the fleet so as to satisfy all flight requests at minimum cost.

  9. Flight Request • Origin • Destination • Earliest departure time • Latest arrival time • Number of passengers • Weight

  10. Feasible Plane Itinerary • Two shifts (morning/afternoon) • Starting & ending at the home base • No more than one intermediate stop for a passenger (no plane change) • No more than five passengers on board at any time • Maximum number of flying hours (per shift) • Maximum number of working hours (per shift) • Maximum weight

  11. Multi-commodity Network Flow Model • Nodes – Define events characterizing an itinerary of a plane • Pick up a passenger • Drop off a passenger • Fly from airport A to airport B • … • Arcs – Link events that can follow each other in an itinerary of a plane

  12. Node Definitions • Node specifying that a plane is at airport A at time t without passengers • Node specifying that a plane at airport A will take off at time t for airport B • Node specifying that request R will be satisfied by a plane at airport A taking off at time t for airport B A,t B,t R,t

  13. Illustrative Example: • Airports A, B and C • Flying times: • (A,B): 4 • (A,C): 6 • (B,C): 4 • Three requests • R1: A to B (Early: 1, Late: 6) • R2: A to C (Early: 1, Late: 8) • R3: B to C (Early: 4, Late: 10)

  14. Network Representation A1 A2 A3 A A A B C B C A C R1 R2 R1 R2 R2 R2 R2 B B B C C C B R3 R3 R3 B4 B5 B6 C7 C8 C9 C10 C C C C C

  15. Illustrative Route I: A1 A,1 Airport A B C Action Select B Deadhead Select C Pickup R3 Drop off R3 Departure 1 5 9 B B,5 C R3 B5 C9 C,9

  16. Illustrative Route II: A1 A,1 Airport A B C Action Select B Pickup R1 Pickup R2 Drop off R1 Pickup R3 Drop off R2 Drop off R3 Departure 1 5 9 B R1 R2 C R3 B5 C9 C,9

  17. Multi-commodityNetwork Flow Model • For each plane • Network flow structure • Capacity limit • Flying time limit • Weight limit • Satisfy a request at most once • Across planes • Satisfy all flight requests

  18. Model Refinements • Can we reduce the network size? • Can we identify edges that are in no optimal solution? • Can we identify nodes that are in no optimal solution? • Can we use the side-constraints to eliminate edges? • Can we discard non-optimal solutions? • Can we discard some optimal solutions?

  19. Time Discretization • Regular discretization • Flexible discretization • Allow different discretization for each airport • Allow non-regular discretization for each airport • Start from a regular discretization • Add critical times for a request • Add times associated with best-known schedule

  20. Network Generation • Include only feasible nodes • e.g., earliest arrival time at an airport • Include only necessary flights • e.g., no indirect flights unless a passenger has to be picked up or dropped off • Enforce that planes depart as early as possible (objective = minimize flying time)

  21. A R1 B R2 C 0 10 40 20 30 Network Generation Many “equivalent” solutions: Request 1 A Request 2 B Departures Arrivals C Same cost, same sequence. Different take-off times. Equivalent Solutions:

  22. 0 10 40 20 30 Network Generation We maintain only the Earliest Departure (ED) solution Request 1 A A Request 2 R1 B B Departures R2 C Arrivals C (Always take off as early/soon as possible)

  23. A R1 B R2 R3 C 0 10 40 20 30 Network Generation Even small problems can be very complex: Request 1 A Request 2 Request 3 B Departures C Arrivals Intermediate Connections Intermediate connections => many solutions.

  24. A R1 B R2 R3 C 0 10 40 20 30 Network Generation There aren’t very many ED solutions Request 1 A Request 2 Request 3 B Departures C Arrivals Intermediate Connections • Allows tackling small-medium problems • Exploits properties of the cost function • Are there more opportunities?

  25. Network Generation

  26. Network Generation

  27. Network Generation

  28. Network Generation

  29. Network Generation

  30. Network Generation

  31. Network Generation

  32. Eliminating Edges R1 R2 R1 Using “satisfy at most once” constraint to identify infeasible edges in the network R1

  33. Eliminating Edges Eliminate redundant edges

  34. Eliminating Nodes Eliminate redundant nodes

  35. Eliminating Nodes Eliminating a node may eliminate side constraints Connecting two arcs into a single arc may allow eliminating that arc

  36. Network Reduction

  37. Solving Large Instances • Feasible solution always available (constructed during order acceptance) • Multi-commodity network flow model too big for large instances • Multi-commodity network flow very fast for small instances

  38. Local Search • A solution consists of a set of plane itineraries serving all requests • Any subset of plane itineraries and the requests served by these itineraries defines a smaller instance • Any solution to the smaller instance can replace the itineraries in the original instance

  39. Local Search Initial solution Select a subset of plane itineraries Optimally solve the Instance defined by the selected itineraries Update solution

  40. Local Search • How to select the size of the subset of planes? • Trade-off between improvement potential and computational requirements • How to select the subset of planes? • Random • Instance/solution characteristics • Parallel implementation • Run several local searches on several processors

  41. Airport Metrics • Airport metric 1 • Choose first jet randomly • Choose remaining jets among those with a base within a radius of 30 miles from the base of the first jet chosen (randomly) • Airport metric 2 • Choose first jet randomly • Choose remaining jets based on the number of airports in their itinerary that are within 30 miles from the base of the first jet chosen (maximize) • Airport metric 3 • Choose first jet randomly • Choose remaining jets based on the number of airports in their itinerary that coincide with the airports in the itinerary of the first jet chosen (maximize)

  42. LOD Metrics • Based on “commonality” of two LODs • Each LOD has an earliest departure time and a latest arrival time • Evaluate whether it is possible to satisfy both LODs with a single plane, and, if so, determine the flexibility in the initial departure time • Example • (A,B),[100,500] • (A,B),[200,600] Departure: [200,300] • Flying time AB: 200

  43. LOD Metrics • (A,B) & (A,C)  A-B-C & A-C-B & A-B-A-C & A-C-A-B • (A,C) & (B,C)  A-B-C & B-A-C & A-C-B-C & B-C-A-C • (A,B) & (B,C)  A-B-C & B-C-A-B • (A,B) & (C,D)  …

  44. Parallel Framework Designed so that the workers can coordinate themselves Master Boss Master/grunts ask questions Boss answers questions Grunt 1 Grunt 2 . . . Grunt ?

  45. Parallel Local Search • Communication • Each processor works on the complete instances • Only improved solutions have to be shared • Synchronization • Asynchronous setup • Solution exchange only when an improvement is identified

  46. Master Boss ready? Boss done? Initialize optimization problem Send job to boss Receive best solution from boss Yes Yes No No Wait Wait Halt

  47. Boss Boss done msg? Time is up? Idle grunt msg? Wait Wait No No Yes No Yes Receive solution from grunt Yes Initialize Send best solution to master Better solution? New job msg? Send best solution to grunt Receive job from master Yes No Update best solution No Wait Yes

  48. Grunt Reoptimize until solution improves Yes Better solution? Idle grunt? Initialize Receive best solution from boss Send solution to boss No Yes No Wait

  49. Computational Results Experimental Setup Size Probability Metric Probability 2 20% Random 25% 3 33% Airport 1 25% 4 27% Airport 2 25% 5 13% Airport 3 25% 6 7%

More Related