Per-Seat, On-Demand Air Transportation Part I: Problem Description and an Integer Multicommodity Flow Model
D. Espinoza School of Industrial Engineering, Universidad de Chile, Santiago, Chile, [email protected] R. Garcia DayJet Corporation, Boca Raton, Florida 33431, [email protected] M. Goycoolea School of Business, Universidad Adolfo Ibáñez, Santiago, Chile, [email protected] G. L. Nemhauser, M. W. P. Savelsbergh H. Milton School of Industrial and Systems Engineering, Georgia Institute of Technology, Atlanta, Georgia 30332 {[email protected], [email protected]}
he availability of relatively cheap small jet planes has led to the creation of on-demand air transportation Tservices in which travelers call a few days in advance to schedule a flight. A successful on-demand air transportation service requires an effective scheduling system to construct minimum-cost pilot and jet itineraries for a set of accepted transportation requests. We present an integer multicommodity network flow model with side constraints for such dial-a-flight problems. We develop a variety of techniques to control the size of the network and to strengthen the quality of the linear programming relaxation, which allows the solution of small instances. In Part II, we describe how this core optimization technology is embedded in a parallel, large- neighborhood, local search scheme to produce high-quality solutions efficiently for large-scale real-life instances. Key words: air transportation; on-demand service; integer multicommodity flow
1. Introduction schedules at regional airports, and the air travel alter- The United States Department of Transportation native does not look very appealing. (DOT) reports that Americans make more than 405 As a consequence of these impediments, the DOT million business trips of more than 50 miles each year reports that the trend seems to be that more and more (United States Department of Transportation 2003). Of travelers prefer driving rather than flying for trips these trips, 84% do not cross regional boundaries, and between 200 and 500 miles. This is in part due to close to 20% involve travel of 250 to 1,000 miles. the changes taking place in the commercial airline industry. Increased security at airports has resulted Despite the length of the trips in the latter cate- in longer waiting times, with the associated frustra- gory, most of these trips are done by automobile. This tions, and thus longer travel times. Furthermore, due phenomenon can be explained by examining the air to the huge losses suffered by the airlines in recent travel alternative. To get from one regional airport to years (airlines worldwide lost $25 billion dollars and another, travelers typically have to connect through more than 400,000 jobs in 2002 and 2003), airlines have heavily congested “hub” airports, often located many cut back and are operating with a reduced schedule, miles from their origins and destinations. Missed con- affecting the flexibility of the business traveler, espe- nections and flight delays are common. Furthermore, cially when it concerns smaller regional airports. travelers often have to drive many miles to get to or Can this trend be reversed? Can an air travel alter- from an airport serviced by a scheduled airline. In native be developed that appeals to the regional busi- fact, commercial flight service exists in only about 550 ness traveler? Some people believe so. of the nation’s 5,000 public-use airports, with a mere New developments in avionics and airplane man- 67 of these airports accounting for 90% of domestic ufacturing have brought about a new technology: traffic. Add to this the fact that airlines offer limited the very light jet (VLJ), also called the microjet. Weighing less than 10,000 pounds, these aircraft can passengers. And, Iacobucci says, the key to attain- carry up to five passengers, fly distances of over 1,000 ing such load factors is optimization-based schedul- miles, reach altitudes of 19,000–41,000 feet, and travel ing systems. at speeds between 350–390 nautical miles per hour The dial-a-flight alternative has generated a lot of (almost twice the altitude and speed of current turbo- interest. Recent media coverage includes The New prop airplanes). Priced at slightly more than a million York Times (Fallows 2005), The Wall Street Journal, U.S. dollars, these jets cost about one-third of the price USA Today, Business Week, Newsweek, CNN, BBC, and of the typical small jets sold today. Several manufac- much, much, more. turers are taking orders for VLJs, with Eclipse Avi- To effectively manage day-to-day operations at a ation Corp. (http://www.eclipseaviation.com) being per-seat, on-demand air service, several optimization- the first, with deliveries in 2007. based scheduling components need to be employed. The availability of relatively cheap small jet air- The two key components are: (1) an online accept/ craft suggests a new air transportation business: dial- reject system to quickly inform passengers whether a-flight, an on-demand service in which travelers call their air transportation requests can be serviced and one day or a few days in advance to schedule trans- at what price, and (2) an offline scheduling system to portation. The advantages of such a system are obvi- construct minimum cost pilot and jet itineraries for ous. This service gives regional travelers the option the next day once the reservation deadline has passed. of using small jets that fly to and from less congested In this two-part paper, we discuss the compo- outlying airports, without packed parking lots, long nents of an offline scheduling system developed for lines at security checkpoints, flight delays, and lost and in collaboration with DayJet Corporation. The luggage, that are closer to where they live and where online accept/reject system involves a very rapid they want to go. In fact, VLJs can land at nearly 5,000 (less than 15 seconds) heuristic search to see if a of the 14,000 private and public landing strips in the new request can be fit in. This is a proprietary Day- United States. By charging a discount fare for shar- Jet system that, unfortunately, we cannot present ing cabin space with other passengers, aggregation here. Online accept/reject systems in other contexts have been studied, among others, by Benoist et al. can greatly reduce costs while still ensuring a very (2001); Bent and Van Hentenryck (2004); Campbell convenient service. and Savelsbergh (2005); and Van Hentenryck, Bent, The idea of a dial-a-flight service to satisfy regional and Vergados (2006). demand is rapidly becoming a reality. In fact, even In Part I, we introduce an integer multicommod- though VLJs are not yet available, air taxi ser- ity network flow model with side constraints for the vices already exist today. Linear Air (http://www. dial-a-flight problem, and we develop a variety of linearair.com)1 is providing air transportation in the techniques to control the size of the network and northeastern United States. Alpha Flying (http:// to strengthen the quality of the linear programming planesense.aero/whoweare.htm), Avantair (http:// relaxation. The resulting technology allows the solu- www.avantair.com), CitationShares (http://www. tion of small-size instances. In Part II, the core opti- citationshares.com), and FlexJet (http://www.flexjet. mization technology is embedded in parallel local com) offer fractional ownership programs, in which search scheme that makes our technology scalable so one can buy flying time on a fleet of aircraft. that high-quality solutions can be obtained efficiently In October of 2007 DayJet Corporation (2005) began for large-scale real-life instances. providing per-seat, on-demand air transportation ser- The remainder of Part I is organized as follows. In vices in the southeast. The business model of DayJet §2 we formally introduce the dial-a-flight problem, is different from the companies mentioned above in and we discuss its relation to other pickup and deliv- the sense that DayJet’s offerings include individual ery problems encountered in the literature. In §3 we seats (per-seat on-demand) as well as entire planes place our research in context and identify the specific (per-plane on-demand) and therefore the potential of contributions. In §4 we describe a novel multicom- much lower fares. Will this business model be suc- modity network flow model for the dial-a-flight prob- cessful? Ed Iacobucci, founder and CEO of DayJet lem. In §5 we discuss innovative construction and Corporation, believes that it is not only possible aggregation algorithms to ensure the resulting opti- to successfully run a per-seat, on-demand air ser- mization problem is of manageable size. Finally, in §6, vice business, but it is possible to do so charging we present a computational study demonstrating the an amount only slightly above nondiscount coach viability of the proposed approach for small instances. fares of commercial airlines. For the business to be profitable at these rates, each revenue flight seg- 2. Problem Description ment should average a load of around 1.3 paying The dial-a-flight problem (DAFP) is concerned with the scheduling of a set of requests for air transporta- tion during a single day. A request specifies an origin airport, a destination airport, an earliest acceptable passengers(r): number of passengers flying departure time at the origin, a latest acceptable arrival together. time at the destination, and the number of passen- weight(r): total weight of passengers and gers and their weight. Although service requirements luggage. could be handled differently, e.g., by specifying an Each jet j ∈ has the following attributes: earliest acceptable departure time and a maximum home_base(j): the home airport of the jet. trip time or a latest acceptable arrival time and a jet_begin(j): the earliest time at which the jet can maximum trip time, or simply a maximum trip time, start. DayJet’s market research indicates that an earliest jet_end(j): the latest time at which the jet can departure and a latest arrival time is what is pre- finish. ferred by business travelers. A fleet of jet airplanes capacity(j): the number of passenger seats in the is available to provide the requested air transporta- jet. tion. Each jet has a home base, a seat capacity limiting max_fly_time(j): the total daily flying time limit the number of passengers that can be accommodated, (in minutes) for the jet. and a weight capacity limiting the weight that can max_weight(j): the weight limit (in pounds) for be accommodated. Each jet is available for a certain the jet. period during the day and has to return to its home For airports a b ∈ we consider the quantities: base at the end of the day. A set of pilots, stationed flight_cost(a b): the cost of flying between air- at the home bases of the airplanes, is available to fly ports a and b. the jets. A pilot departs from the home base where flight_time(a b): the flying time (in minutes) he is domiciled at the start of his duty and returns to between airports a and b. the home base at the end of his duty. A pilot sched- turn_around(a): the turnaround time (in minutes) ule has to satisfy FAA regulations governing flying at airport a; i.e., the number of minutes which must hours and duty period; a pilot cannot fly more than elapse between an arrival and departure of a specific jet 8 hours in a day and his duty period cannot be more at airport a. than 14 hours. Pilots do not change aircraft during 0ifa = b their duty. To ensure acceptable service, an itinerary for a passenger will involve at most two flights; i.e., at relocate_time(a b) flight_time(a b) + turn_around(b) most one intermediate stop is allowed. Furthermore, if there is an intermediate stop, both flights have to be otherwise. on the same jet (a safeguard to avoid waiting in case We assume that time is measured in minutes; i.e., planes get delayed). A plane can deadhead (fly with- a time instant is an integer in 0 1440 . We often out passengers) to pick up passengers at another air- use a specific discretization of the planning horizon. port or to return home. The minimum time between The set of all time instants in the discretization will an arrival at an airport and the next departure, called be denoted by . The set j a ⊆ represents the the turnaround time, is given for each airport. The time instants in which jet j ∈ will be allowed to objective is to minimize the costs, while satisfying all take off from airport a ∈ . The discretization can requests and respecting all constraints. A dispatcher (and often will) be different for each jet j ∈ . For has to decide which jets and pilots to use to satisfy h = home_base(j), we assume that jet_begin(j) and the requests and what the jet and pilot itineraries will jet_end(j) are in j h. For each t ∈ j∈ , and be, i.e., the flight legs and associated departure times. a ∈ define tja = min t ∈ j a t ≥ t and t ja = We use the following notation to model the max t ∈ j a t ≤ t; whenever the jet and the airport problem: are clear from the context, we may simply write t : the set of all airports. and t . : the set of all jets. The dial-a-flight problem is an example of a pickup : the set of all transportation requests. and delivery problem. Pickup and delivery problems Without loss of generality, we assume that the have received a fair amount of attention in the vehi- requests are ordered, i.e., = r1r2rs. Each cle routing literature. Savelsbergh and Sol (1995) and request r ∈ has the following attributes: Desaulniers et al. (2002) provide overviews of pickup origin(r): the origin airport where passengers are and delivery problems. The class of vehicle-routing to be picked up. problems with pickups and deliveries dealing specif- destination(r): the destination airport where pas- ically with passenger transportation is known under sengers are to be dropped off. the name of dial-a-ride problems. When dealing with earliest(r): earliest departure time. passenger transportation, service-related constraints latest(r): latest arrival time. and objectives take on a more prominent role. These are typically aimed at controlling “user inconve- the current methodology that is available for these nience” in terms of ride time (the time between problems is not adequate for the dial-a-flight problem. pickup and delivery), waiting time (time spent in This is due to two reasons. First, in the dial-a-flight the vehicle when it is not in motion), and devia- problem “user inconvenience” is not only controlled tions from desired pickup and delivery times. A dis- by imposing a maximum transit time, as is typically cussion of modeling issues in dial-a-ride problems done in dial-a-ride problems, but also by imposing and an overview of proposed algorithms can be that passengers make at most one intermediate stop found in Cordeau and Laporte (2003). Even though between their origin and destination. The second rea- dial-a-flight and dial-a-ride have many common char- son is the sheer size of the problems that must be acteristics, there are also some notable differences. solved. DayJet is aiming to have over 300 jets oper- The dial-a-ride problem often arises in social services ating daily within two years. Thus, on a typical day, contexts, e.g., transportation of the elderly, whereas about 3,000 accepted reservations must be scheduled. the dial-a-flight problem is encountered exclusively in State-of-the-art dial-a-ride and vehicle-routing algo- business settings. As a result, there tends to be less rithms are well short of tackling such large problems flexibility in the specification of requests, especially in in a short period of time. terms of the desired service level, in dial-a-ride envi- There are two natural ways of modeling the offline ronments. Furthermore, in dial-a-ride environments, schedule optimization problem. First, it can be viewed requests often have a common destination or a com- as an integer multicommodity flow problem on a mon origin (e.g., elderly citizens needing to visit time-space network in which all jets form a commod- a hospital, or wanting to go to the mall), whereas ity. This involves a large number of commodities and in dial-a-flight environments this rarely happens. a huge number of nodes because the desired level of Other relevant dial-a-ride papers include Dumas, time granularity is minutes (see Cordeau et al. 2007 Desrosiers, and Soumis (1991); Savelsbergh and Sol for a description of this model). More importantly, a (1998); Xu et al. (2001); Ropke and Pisinger (2006); prohibitively large number of forcing constraints is Cordeau (2006); Borndorfer et al. (1997); and Bent and required to model that requests can only be served Van Hentenryck (2005). on an arc when there is a jet assigned to that arc as Fractional ownership is another new development well. The alternative is a column generation/branch- in the airline industry (Keskinocak and Tayur 1998; and-price approach in which a column corresponds Martin, Jones, and Keskinocak 2003; Hicks et al. 2005; to a feasible itinerary for one jet. This latter approach Yao et al. 2005). Fractional ownership programs pro- can produce a tighter linear programming bound at vide share sizes from one-sixteenth with 50 flying the expense of having an exponential number of vari- hours per year to one-half with 400 flying hours ables. In our preliminary studies we considered both per year. Usually, a partial owner requests a flight models. Neither produced the results for which we by specifying a departure station, a departure time, had hoped. The multicommodity flow model could an arrival station, and an arrival time, only days or solve small instances with fewer than four planes, but hours ahead of time. The management company must solution times grew exponentially with the number assign a crew and an available aircraft to serve this of planes so that even an instance with eight planes flight. While scheduling all the requested flights, the could not be solved in the desired time because of management company tries to minimize total opera- the exponential growth in the size of the network and tional costs. Fractional ownership leads to per-plane, the associated model. On the other hand, the column on-demand air transportation, as opposed to per- generation model could not even solve the linear pro- seat, on-demand air transportation considered in this gramming relaxation for instances with 20 planes in paper. The business model and resulting scheduling a reasonable amount of time. The reason for this is problems are quite different, because the success of that the subproblem for generating columns is a very per-seat, on-demand air transportation depends on difficult constrained shortest path. the ability to effectively aggregate requests, i.e., use This led us to develop a new multicommodity net- the same flight leg to (partially) satisfy multiple trans- work flow formulation. Instead of the natural integer portation requests. Moreover, in fractional ownership multicommodity flow on a time-space network, we planes are typically requested for at least several opted for an integer multicommodity flow model on hours at a time so the number of requests that need a time-activity network in which it is easier to handle to be dealt with are at least an order of magnitude the constraint that limits the number of intermediate less than in the per-seat, on-demand scenario. stops to at most one. This two-part paper discusses this integer multicommodity flow model on a time- 3. Motivation and Contribution activity network and how it is used to provide high- Although the dial-a-flight problem can be viewed as quality solutions to real-life, large-scale instances of a dial-a-ride problem in which the vehicles are jets, the dial-a-flight problem. In Part I, we describe and analyze the integer 4. A Multicommodity Network multicommodity flow model. To achieve acceptable Flow Model computational performance, three specialized tech- We begin by describing a discretized time-space net- niques had to be developed. The first two reduce work model representing feasible itineraries for a sin- network size significantly and the third technique gle jet airplane. The key events from the perspective both reduces network size and tightens the lin- of the jet are modeled in this network, e.g., which ear programming relaxation. They are: (1) a cus- flights to make, when to make them, and which pas- tomized network construction algorithm exploiting sengers to carry in each flight. Linking these networks objective function characteristics; (2) a nonregu- together via constraints that impose that all requests lar time-discretization increasing granularity around important time instants; and (3) a network aggrega- must be satisfied yields a multicommodity network tion algorithm. The network aggregation algorithm flow model with side constraints. contracts nodes, thus incorporating information aris- 4.1. The Individual Jet Network ing from side constraints into the network model. The For each jet j ∈ , we define a feasible itinerary resulting network, in which arcs correspond to partial routes that can be flown by a plane, can be considered as a sequence of flights satisfying the following as achieving some of the advantages of a column gen- conditions: eration approach in which the variables correspond (R1) The jet begins and ends the itinerary at to a full route for a plane. Therefore, the aggregation home_base(j), gives us some of the benefits of a column generation (R2) The jet begins the itinerary no earlier than formulation without having to design and implement jet_begin(j) and ends the itinerary no later than a full-scale branch-and-price algorithm. The efficacy jet_end(j), of the resulting algorithm, in terms of solution time (R3) The jet never carries more than capacity(j) and number of requests satisfied, is comparable to passengers on a flight, state-of-the-art algorithms used in other similar appli- (R4) The jet never carries more than max_weight(j) cations. Instances with fewer than 50 requests (four weight on a flight, jets) are easy to solve, and instances with 80 or more (R5) The jet does not fly more than max_fly_ requests (eight jets) are hard to solve. This is in line time(j) minutes during a day, and with recent computational results for the dial-a-ride (R6) The service requirements of passengers trans- problem (Cordeau 2006) and the capacitated vehicle- ported by the jet are met; that is, passengers are routing problem (Fukasawa et al. 2006; Lysgaard, picked up at their origin and dropped off at their Letchford, and Eglese 2004). destination within their specified time window with In Part II, we discuss the use of the integer mul- at most one intermediate stop, and without changing ticommodity flow model for solving real-life, large- airplanes during their trip. scale instances with several thousands of requests The Individual Jet Network allows us to model any and several hundred jets. We present a parallel local feasible itinerary for a given jet j ∈ in terms of a search algorithm that optimizes subsets of planes. flow between two nodes in the network. Nodes in this To achieve the desired computational performance, network represent key decisions taken from the per- we give novel approaches to focus the search on spective of the jet as it travels during the day between neighborhoods that provide good opportunities for different airports. These decisions are of three types: improvement, as well as using an asynchronous par- standby, departure, and loading decisions. Deciding allel implementation to explore a large number of to remain in “standby” allows a jet to wait, idle, at neighborhoods. The neighborhood designs are based an airport. A “departure” decision involves deciding on parameters such as number of jets, time discretiza- where to fly next, and “loading” decisions involve tion level, and time of day. We develop customized choosing which requests to satisfy. In Figure 1 we metrics to select subsets of jets with a high proba- illustrate possible sequences of such events as repre- bility of leading to an improvement. Our adaptive sented in an individual jet network. neighborhood selection scheme modifies the neigh- We now give a formal description of the network borhoods as the search progresses. Instances with model in terms of nodes and arcs. about 3,000 requests and over 300 jets are handled routinely and effectively. While our results are not 4.1.1. Nodes. Let atb be the set of all directly comparable to recent computational results requests r ∈ with origin(r) = a and destination(r) for the pickup and delivery problem with time win- = b that can be serviced by a direct flight departing dows (Bent and van Hentenryck 2003; Ropke and from a at time t. That is, the set of all requests r ∈ Pisinger 2006), they show that our approach is capa- such that t ≥ earliest(r) and t + flight_time(a b) ≤ ble of dealing with problems of at least the same size latest(r). Let at1ct2b be the set of all requests in comparable time. r ∈ with origin(r) = a and destination(r) = b that Departure Arcs. For every pair of airports a b ∈
and every time instant t ∈ j a put an arc from Sj at Load direct Load indirect to Gj atb. flight flight Loading Arcs. For every pair of airports a b ∈ , passenger passenger every time instant t ∈ j a, and every service request r ∈ atb introduce an arc from Gj atb to DLj atbr. Likewise, for every a b c ∈ , every t ∈ a t ∈ jc, and every r ∈ at ct b Standby mode Departure 1 j 2 1 2 (waiting) (a, b) put an arc Gj at1b to ILj at1ct2br. Aggregation Arcs. For each pair of requests r1r2 ∈ No Yes atb such that r1