assortment optimization for parallel flights under a ...hwang679/papers/cao2018assortment.pdfcao,...

37
Assortment Optimization for Parallel Flights under a Multinomial Logit Choice Model with Cheapest Fare Spikes Yufeng Cao, Anton Kleywegt, He Wang School of Industrial and Systems Engineering, Georgia Institute of Technology, [email protected], [email protected], [email protected] It has long been noticed by airlines that many customers tend to choose the cheapest fare class among all available fare classes. However, this phenomenon is not entirely captured by the widely used multinomial logit (MNL) choice model. In this paper, we study an assortment optimization problem for parallel flights under a spiked multinomial logit (spiked-MNL) choice model. The spiked-MNL model extends the classical MNL model by having a separate attractiveness parameter for the cheapest available fare class on each flight. We show that under the spiked-MNL choice model, the optimal dynamic assortment policy for parallel flights always selects assortments that are revenue-ordered, which implies that the optimal policy can be implemented as dynamic nested booking limit control. We also propose static booking limit control heuristics based on deterministic approximations of the problem. Finally, we evaluate different assortment policies in numerical experiments using both synthetic and real-world data provided by an airline partner. Key words : airline revenue management; assortment optimization; discrete choice model; spike effect; booking limits 1. Introduction Revenue management (RM) is widely adopted by airlines to improve demand forecasting, optimize inventory control and pricing strategy, and increase revenues (Belobaba 2015). A basic decision in airline RM is to select a subset of products, which consist of combinations of flights and fare classes, and offer them to customers. The subset of products made available to customers is called an assortment, and the problem of selecting such subsets to maximize revenue is known as assortment optimization. Airlines dynamically adjust assortments based on the remaining seats on flights and the time until departure. The assortment decisions need to be considered jointly for a collection of flights in an airline network, as customers may substitute between different flights based on product availability and price. The complexity of airline networks makes solving assortment optimization problems challenging. In this paper, we consider an assortment optimization problem for a collection of parallel flights. Parallel flights are flights with the same origin-destination pair and the same departure date. This problem is motivated by our collaboration with a major airline who competes in one of the busiest origin-destination markets in the world with over 30 parallel flights every day. Since both airports 1

Upload: others

Post on 04-Jun-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Assortment Optimization for Parallel Flights under aMultinomial Logit Choice Model with Cheapest Fare Spikes

Yufeng Cao, Anton Kleywegt, He WangSchool of Industrial and Systems Engineering, Georgia Institute of Technology,

[email protected], [email protected], [email protected]

It has long been noticed by airlines that many customers tend to choose the cheapest fare class among allavailable fare classes. However, this phenomenon is not entirely captured by the widely used multinomiallogit (MNL) choice model. In this paper, we study an assortment optimization problem for parallel flightsunder a spiked multinomial logit (spiked-MNL) choice model. The spiked-MNL model extends the classicalMNL model by having a separate attractiveness parameter for the cheapest available fare class on eachflight. We show that under the spiked-MNL choice model, the optimal dynamic assortment policy for parallelflights always selects assortments that are revenue-ordered, which implies that the optimal policy can beimplemented as dynamic nested booking limit control. We also propose static booking limit control heuristicsbased on deterministic approximations of the problem. Finally, we evaluate different assortment policies innumerical experiments using both synthetic and real-world data provided by an airline partner.

Key words : airline revenue management; assortment optimization; discrete choice model; spike effect;booking limits

1. IntroductionRevenue management (RM) is widely adopted by airlines to improve demand forecasting, optimizeinventory control and pricing strategy, and increase revenues (Belobaba 2015). A basic decisionin airline RM is to select a subset of products, which consist of combinations of flights and fareclasses, and offer them to customers. The subset of products made available to customers is called anassortment, and the problem of selecting such subsets to maximize revenue is known as assortmentoptimization. Airlines dynamically adjust assortments based on the remaining seats on flights andthe time until departure. The assortment decisions need to be considered jointly for a collection offlights in an airline network, as customers may substitute between different flights based on productavailability and price. The complexity of airline networks makes solving assortment optimizationproblems challenging.

In this paper, we consider an assortment optimization problem for a collection of parallel flights.Parallel flights are flights with the same origin-destination pair and the same departure date. Thisproblem is motivated by our collaboration with a major airline who competes in one of the busiestorigin-destination markets in the world with over 30 parallel flights every day. Since both airports

1

Page 2: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 2

at the origin and destination involved have flights to the same collection of other airports, very fewpassengers on these parallel flights are connecting passengers. Therefore it is reasonable to considerRM for these parallel flights separate from the other flights in the airline’s network.

Due to historical reasons, most airlines sell flight tickets in terms of fare classes. Each fare class isusually associated with a fixed price and certain booking restrictions (e.g., refundable or nonrefund-able). Airlines then control prices indirectly by opening or closing different fare classes. We refer toa combination of a flight and a fare class as a product. Traditional RM demand models assume thata customer comes with a request for a predetermined product. A modern approach of choice-basedRM assumes that customers have heterogeneous preferences over products, and select the productthat they prefer most from the set of available products.

One of the most popular choice models is the multinomial logit (MNL) model. The MNL modelhas a simple structure, and the parameter estimation problem as well as assortment optimizationproblems and optimal pricing problems under the MNL model are tractable. However, the MNLmodel has the independence from irrelevant alternatives (IIA) property, which states that the odds ofpreferring one alternative over another do not depend on the presence or absence of other “irrelevant”alternatives. This is undesirable for modeling the choice behavior of airline customers, among others,for the following reason. It has long been noticed in the airline industry that most customers who buyanything would buy a product that is the cheapest among a considered set of available products; forexample, most customers who book a ticket choose the cheapest available fare class for their chosenflight (Boyd and Kallesen 2004). We have also observed this behavior in airline data (Dai et al. 2014).This phenomenon violates the IIA property. For example, Figure 1 shows the historical booking datafor a specific flight. The fare classes are ordered such that Class 1 has the highest ticket price andClass 8 has the lowest. On the left panel, we show the fraction of bookings in each fare class for theflight when all eight fare classes are open. On the right panel, we show the fraction of bookings ineach fare class when only Classes 1 to 7 are open. Note that in both cases, the cheapest available fareclass (Class 8 on the left and Class 7 on the right) receives more than 60% of bookings. Moreover,the fraction of bookings in Class 7 is significantly more than the fraction of bookings in Class 6 whenClass 7 is the cheapest available fare class (right panel); but the fraction of bookings in Class 7 isless than the fraction of bookings in Class 6 when Class 7 is not the cheapest available fare class (leftpanel). Since the ratio between the fractions of bookings in Class 7 and Class 6 is affected by theinclusion of other alternatives (such as Class 8), the IIA property is violated.

We refer to the phenomenon that more customers than predicted by the MNL model buy thecheapest available fare class on each flight as “the spike effect.” To capture the spike effect in cus-tomer behavior, we consider an extension of the classical MNL model by using separate attractivenessparameters for the cheapest available products in an assortment. We call this the spiked-MNL choice

Page 3: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 3

Figure 1 Historical booking data for a flight when Classes 1 to 8 are open (left) and when only Classes 1 to 7are open (right).

model, which was first introduced by Dai et al. (2014). After reviewing relevant literature in Sec-

tion 2, we introduce the assortment optimization problem in Section 3. In Section 4, we define the

spiked-MNL choice model and discuss some of its properties that are different from other commonly

used choice models. In Section 5, we explore the structure of the optimal assortment policy under

the spiked-MNL model. In Section 6, we consider deterministic approximations of the problem and

propose static booking limit heuristics. Section 7 examines the numerical performance of different

assortment control policies through synthetic and real-world airline data.

Notation

Let R and R+ denote the set of real numbers and the set of nonnegative real numbers, respectively. Let

Z and Z+ denote the set of integers and the set of nonnegative integers. We use boldface lower-case

and upper-case letters to represent vectors and matrices, respectively. For a vector x, let xj denote

its j-th component. Given two real numbers a∈R and b∈R, let a∧b := min{a, b}, a∨b := max{a, b},

and a+ := a∨ 0. Given a set S, let 2S denote its power set, which contains all subsets of S, and let

Sn denote its n-th Cartesian power. An indicator function is denoted with I(·); a.s. means almost

surely; i.i.d. stands for independent and identically distributed; w.p.1 means with probability 1.

2. Literature ReviewSince the deregulation in the airline industry, airlines have been seeking better ways to price and

manage their products. The science of revenue management, or yield management, has been develop-

ing with the boost of the airline industry. Among the pioneers were the Scandinavian Airlines System

and the American Airlines, who survived fierce competition with the help of revenue management

(Andersson 1989, Smith et al. 1992).

Page 4: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4

Assortment optimization has been an active research field in revenue management. There is anextensive literature on assortment optimization for a wide range of industries including airline, retail,e-commerce, etc. We refer readers to the survey by Hubner and Kuhn (2012) and Kok et al. (2015) fora comprehensive discussion on this stream of literature. Our literature review below focuses on mostrelevant papers that study assortment optimization for airlines under customer choice behavior. Theidea of airline assortment optimization can be traced back to traditional RM methodology such asLittlewood’s classical paper on controlling inventory of two fare classes (Littlewood 1972). TraditionalRM demand models assume that a customer comes with a request for a predetermined product. Afirm then decides whether to accept or reject the customer’s request. Typical control policies useeither bid-prices (e.g., Bertsimas and Popescu 2003) or booking limits (e.g., Talluri and van Ryzin1998, Bertsimas and de Boer 2005) to make accept/reject decisions. We refer readers to McGilland van Ryzin (1999) for a survey on early development of traditional RM under the independentdemand assumption. Traditional RM does not account for customer choice behavior and may leadto cascading deterioration of demand estimation accuracy and revenue performance (Cooper et al.2006). We also note that some remedies based on buy-downs and buy-ups have been proposed toaccount for restricted demand substitution patterns (see, e.g., Gallego et al. 2009, Walczak et al.2010, Cooper and Li 2012).

A modern approach of choice-based RM has been adopted by academia and industry (Strausset al. 2018). Talluri and Van Ryzin (2005) studied the problem of assortment optimization under ageneral choice model for a single flight leg. They formulated the problem as a dynamic program (DP).By introducing the concept of efficient sets, they showed that only efficient sets are used in opti-mal assortment controls. Zhang and Cooper (2005) considered assortment optimization for parallelflights and developed a simulation-based heuristic. An important assumption in their paper was thatcustomers would only switch between flights, but not fare classes within a flight. Later, van Ryzinand Vulcano (2008a) studied assortment optimization for a network revenue management problemusing virtual nesting controls. They adopted a simulation-based sample path gradient method tooptimize booking controls. Zhang and Adelman (2009) approximated value functions of the DP byaffine functions, and developed a column generation algorithm to solve the assortment problem forthe MNL model with disjoint consideration sets.

Due to the curse of dimensionality, the computational burden of DP increases significantly fromsingle-leg to parallel flights, and then to general airline networks. Therefore, Gallego et al. (2004)proposed a choice-based deterministic linear programming (CDLP) model as a deterministic approx-imation of the stochastic DP problem. Liu and van Ryzin (2008) extended the concept of efficientsets from Talluri and van Ryzin (2004) and proved that the solution to the CDLP is asymptoticallyoptimal for the DP. Even though identifying efficient sets helps reduce the number of candidate

Page 5: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 5

assortments, there could still be exponentially many decision variables for the CDLP. Liu and vanRyzin (2008) suggested solving the CDLP using column generation. Talluri (2014) proposed a newapproach called segment-based deterministic concave program (SDCP), which is a compact relax-ation of the CDLP. The SDCP formulation can be tightened with randomized convex programmingmethod. Recently, Gallego et al. (2015) proposed a sales-based linear programming (SBLP) modelunder a general attractiveness model, of which the MNL model is a special case. The SBLP modelonly requires a polynomial number of variables under the MNL model and is equivalent to the CDLP.

In addition to assortment optimization for general choice models, many researchers have alsoconsidered assortment planning under specific choice models. The choice models studied in the assort-ment optimization literature are diverse, which include but are not limited to MNL (Talluri and vanRyzin 2004, Liu and van Ryzin 2008, Gallego et al. 2015), robust MNL (Rusmevichientong et al. 2010,Rusmevichientong and Topaloglu 2012), nested logit model (Davis et al. 2014, Gallego and Topaloglu2014, Feldman and Topaloglu 2015), mixed MNL (Bront et al. 2009, Rusmevichientong et al. 2014),Markov chain choice model (Feldman and Topaloglu 2017), and nonparametric choice models (Fariaset al. 2013, Bertsimas and Misic 2015). For an overview, we refer readers to a recent survey byStrauss et al. (2018). Among all these models, the MNL model is commonly used in the literature asa benchmark. The MNL model has many favorable properties, such as the maximum likelihood esti-mation problem, the assortment optimization problem, and the optimal pricing problem, being easyto solve. Talluri and van Ryzin (2004) showed that the optimal policy of the assortment optimizationproblem under the MNL model is nested-by-fare-order for single-leg RM. Liu and van Ryzin (2008)and Gallego et al. (2015) also discussed assortment optimization under the MNL model.

The phenomenon of cheapest fare spikes has long been noticed by the airline industry (Boyd andKallesen 2004). However, we are not aware of many papers that explicitly consider the spike effectin customer choice models, with the exception of Dai et al. (2014) and Ding (2017). Dai et al. (2014)referred to the cheapest fare spike phenomenon as context effect, while Ding (2017) called it buy-down effect. As we discussed in the example in Figure 1, the spike effect cannot be explained by theMNL choice model. Therefore, Dai et al. (2014) and Ding (2017) both used a variant of the MNLmodel to incorporate the spike effect, and proposed a SBLP formulation for this model. We willformally describe this modified MNL model in Section 4.

3. Model FormulationWe consider an assortment optimization problem over a collection of parallel flights that depart on thesame day between a common origin-destination pair. Let F denote the set of parallel flights operatedby a host airline, who is the decision maker in our model setting. (There could be other flights offeredby competing airlines in this origin-destination market.) The number of parallel flights is denoted by

Page 6: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 6

m := |F|, and the vector of seat capacities on these flights is denoted with c= (cf , f ∈F)∈Zm+ . LetI denote the set of fare classes on each flight, and let n := |I| denote the number of fare classes.

A product is defined as a combination of a flight and a fare class on that flight. We use j := (i, f)to denote a product, and J := I ×F to denote the set of all products; the number of products isequal to |J |=mn. Occasionally, using discrete choice terminology, we also refer to a product as analternative. We use j = 0 to represent the alternative that a customer buys nothing from the hostairline, also called the no-purchase alternative or the null alternative. Let aj = (ajf , f ∈F)∈ {0,1}m

denote a vector representing the resource consumption of product j; that is, ajf = 1 if j = (i, f) forsome i ∈ I and all other elements of aj are equal to 0. We say that an assortment S ⊂J is offeredwhen the airline makes only the products in S available to customers. The null alternative is alwaysavailable to customers.

Let r = (rj , j ∈ J ) ∈Rmn+ denote the vector of revenues associated with each product; that is, rjdenotes the revenue of product j = (i, f). Without loss of generality, we order the fare classes on eachflight f ∈ F by their revenues such that r1,f > · · ·> ri,f > · · ·> rn,f > 0, with i= 1 being the mostexpensive fare class and i= n being the cheapest fare class.

The selling horizon is divided into discrete periods indexed by t = 1, . . . , T . We assume that thetime periods are sufficiently short so that there is at most one customer arrival in each period. Inother words, the probability that two or more customers arrive in the same period is negligible.We assume that the probability of arrival, denoted by λ, is the same for all periods. The arrivalsform an i.i.d. sequence that is also independent of customer choices. (In Section 7, we relax thetime homogeneity assumption of the arrival process and also allow the choice probabilities to dependon time and booking channels.) In period t, the host airline offers an assortment S ⊂ J . When anindividual customer arrives, she sees the assortment S and purchases a product j ∈ S with probabilityP (j,S) or leaves without a purchase with probability P (0, S), so that, given the assortment S, itholds that P (0, S) +

∑j∈S P (j,S) = 1. Therefore, having no sales in a period could be due either to

no arrival or to an arriving customer who does not purchase. The probability that no sale occurs isλP (0, S) + (1−λ).

Given the initial capacity c, the host airline selects the assortment offered to the customers in eachperiod t in order to maximize the total expected revenue. We model the assortment optimizationproblem by dynamic programming. Let ct ∈Zm+ denote the vector of remaining seat capacities at timeperiod t. Let Vt : Zm+ →R denote the optimal revenue-to-go function at period t given the remainingseat capacities. The optimality equation is

Vt(ct) = maxS⊂J

∑j∈S

λP (j,S)(rj +Vt+1(ct−aj)

)+ (λP (0, S) + 1−λ)Vt+1(ct)

Page 7: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 7

= maxS⊂J

∑j∈S

λP (j,S)(rj − (Vt+1(ct)−Vt+1(ct−aj)))

+Vt+1(ct). (1)

The boundary conditions are Vt(0) = 0 for all t= 1, . . . , T and VT+1(c) = 0 for any c∈Zm+ .

4. The Spiked-MNL ModelIn this section, we define the spiked-MNL choice model and discuss its properties. The spiked-MNLchoice model is adopted from the modified MNL model in Dai et al. (2014) and Ding (2017) tocapture the effect of cheapest fare spikes.

4.1. Definition of Choice Model

For every product j ∈ J , we define two parameters wj > 0, vj > 0. The quantity wj represents thespecial attractiveness of product j when it is the cheapest available fare class on its associated flight;otherwise, product j has a regular attractiveness of vj . We assume that the cheapest fare spikes arealways nonnegative, i.e., wj ≥ vj for all products j ∈J , unless otherwise specified. This is in generalconsistent with the airline data that we used. We denote the attractiveness of the null alternative byv0 and call it the null attractiveness.

Suppose the firm offers an assortment S. Let I(j,S) denote an indicator function such that I(j,S) =1 if j is the cheapest available fare class on its associated flight in assortment S, and I(j,S) = 0otherwise. The spiked-MNL model specifies that an arriving customer chooses product j ∈ S withprobability

P (j,S) = vj(1− I(j,S)) +wjI(j,S)v0 +

∑j′∈S [vj′(1− I(j′, S)) +wj′I(j′, S)] .

The probability that the customer does not make a purchase is given by

P (0, S) = v0

v0 +∑j′∈S [vj′(1− I(j′, S)) +wj′I(j′, S)] .

Note that when wj = vj for all j ∈ J , the spiked MNL model reduces to the classical MNL model.(Under the classical MNL model, the attractiveness of a product is constant and represented by anexponentiated utility, i.e., vj = wj = eρuj , where uj denotes a mean utility measure of j and ρ > 0is a parameter that is inversely related to the variance of the underlying Gumbel distribution.) Daiet al. (2014) showed that the spiked-MNL model defined above fits airline booking data better thanthe classical MNL model. Figure 2, which is taken from Dai et al. (2014), shows both the actual andestimated fractions of bookings in different fare classes on a flight. The curve “XX Actual” representsthe actual fraction of bookings in different fare classes, “MNL no Spike” corresponds to the fractionsof bookings predicted by a classical MNL choice model calibrated with booking data, and “MNLSpike” corresponds to the fractions of bookings predicted by the above spiked-MNL model calibratedwith the same data. The left panel shows the fractions when Classes 1 to 8 are open and the right

Page 8: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 8

panel shows the fractions when Classes 1 to 7 are open. (Recall that fare classes are ordered such

that Class 1 has the highest price and Class 8 has the lowest.) It is easy to see that in both settings

the prediction of the spiked-MNL model is much closer to the actual data.

(a) fare class 8 cheapest (b) fare class 7 cheapestFigure 2 Fraction of bookings and its estimations under MNL with or without spikes.

There are several important differences between the classical MNL model and the spiked-MNL

model in terms of their properties. Below we examine some of the properties of the spiked-MNL model.

First we introduce some additional notation. Let Jf = I ×{f} denote the set of products associated

with flight f . For any assortment S ⊂J , let Sf := S ∩ Jf denote the products in assortment S that

are associated with flight f . For any product j, let f(j) denote the flight that product j is associated

with, and let J(j) denote the set of products associated with the same flight as product j and that

have higher fares than product j. That is, J(j) = {j′ ∈ Jf(j) : rj′ > rj}. Let J(j) := J(j)∪ {j}, and

let J(j) := {j′ ∈ Jf(j) : rj′ < rj} denote the set of products associated with the same flight as product

j and that have lower fares than product j.

4.2. Regularity

The regularity property states that the probability of choosing any alternative, including the null

alternative, from an assortment does not increase if the assortment is enlarged (Manski and McFadden

1981). More formally, the definition of a regular choice model is as follows.

Definition 1. A choice model is regular if for any two assortments S and T satisfying S ⊂ T ⊂J

and any alternative j ∈ S ∪{0}, it always holds that P (j,S)≥ P (j, T ).

The regularity property is a common assumption in the assortment optimization literature (see,

e.g., Golrezaei et al. 2014, Berbeglia and Joret 2016). The classical MNL choice model is regular, but

the spiked-MNL choice model is not regular. Consider the following example:

Page 9: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 9

Example 1. Suppose a vendor sells three products H, M, and L with revenues rH > rM > rL. Letthe attractiveness parameters of these products be vH = vM =wL = 1 and wM = 8 (we don’t need tospecify wH or vL in this example), and let the null attractiveness be v0 = 1. Then P (H,{H,M}) =vH/(vH +wM + v0) = 1/10 and P (H,{H,M,L}) = vH/(vH + vM + vL + v0) = 1/4, which violates theregularity property.

In order to check whether the spiked-MNL model is regular, or to enforce regularity when cali-brating a spiked-MNL model, we have the following necessary and sufficient condition, the proof ofwhich is given in the appendix.

Proposition 1. The spiked-MNL model is regular if and only if for any two products j and j′

such that j′ ∈ J(j), i.e., j and j′ are associated with the same flight and j′ has higher fare than j, itholds that

wj + vj′ ≥ wj′ .

According to the proposition, for m parallel flights and n fare classes, the complexity of checking theregularity of a spiked-MNL model is no more than O(mn2).

4.3. Submodularity

Given a choice model, let the demand function of the choice model be g(S) :=∑j∈S P (j,S) for any

assortment S ⊂J . Another common property of many choice models is the submodularity of theirdemand functions, which implies that the marginal increment in total purchase probability decreasesas the assortment enlarges (Berbeglia and Joret 2016). More formally, the definition of a submodulardemand function is as follows.

Definition 2. The demand function g of a choice model is submodular, if

g(T ∪{k})− g(T ) ≤ g(S ∪{k})− g(S), ∀ S ⊂ T ⊂J , k ∈J \T. (2)

The demand function of the classical MNL choice model is submodular, but the demand function ofthe spiked-MNL choice model is not submodular. Consider the following example:

Example 2. Suppose a vendor sells three products H, M, and L with revenues rH > rM > rL. Letthe attractiveness parameters of the products be vH = 1, wH = 3, and vM =wM =wL = 2 (we don’tneed to specify vL); and let the null attractiveness be v0 = 1. Consider set S = {H}, set T = {H,L},and product k = M . Then g(T ∪ {k})− g(T ) = g({H,M,L})− g({H,L}) = 5/6− 3/4 = 1/12, andg(S ∪ {k})− g(S) = g({H,M})− g({H}) = 3/4− 3/4 = 0. Therefore, the demand function is notsubmodular.

Note that in Example 2, the choice model is regular, as the condition in Proposition 1 is satisfied.Therefore, regularity of the spiked-MNL model does not imply submodularity of its demand function.

Page 10: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 10

Moreover, it is well known that any random utility model has a submodular demand function and isequivalent to a certain stochastic preference model (Berbeglia and Joret 2016). Our example showsthat a spiked-MNL model is in general not representable by any random utility model or stochasticpreference model.

5. Structure of Optimal Policy under the Spiked-MNL ModelIn this section, we study the structure of the optimal policy under the spiked-MNL model. As amain result, we show that in optimal assortment controls under the spiked-MNL model, every chosenassortment is revenue-ordered. That is, if a fare class is open at any given time, all fare classes on thesame flight with higher fares must also be open. This result implies that the optimal policy can beimplemented using nested booking limit control, a type of control that is widely used in airline RMpractice. More specifically, the booking limits are adjusted dynamically in the optimal policy basedon the remaining seats on flights and the time until departure.

5.1. Efficient Sets

It is well known that, for single-leg RM, the optimal assortment policy under the MNL model isnested allocations, where the nesting is ordered by revenue of fare classes (Talluri and van Ryzin2004). Therefore, the optimal assortment policies for single-leg RM can be implemented as dynamicnested booking limits/protection levels. The reasoning to show this result is based the concept ofefficient sets, which are a collection of assortments that provide Pareto trade-offs between expectedrevenue and expected resource consumption. Later, Liu and van Ryzin (2008) extended the conceptof efficient sets to general network RM. They also showed that the optimal policy are only composedof efficient sets for parallel flights.

We first revisit the concept of efficient sets proposed by Liu and van Ryzin (2008). Let R(S) be theexpected revenue given an assortment S ⊂J , and let function Q : 2J → [0,1]m represent the vectorof resource consumption rates of assortments. For parallel flights, given assortment S, the expectedrevenue is R(S) =

∑j∈S rjP (j,S) and the resource consumption rates are Q(S) =

∑j∈S a

jP (j,S).Recall that aj is a column vector representing the resources required by product j.

Definition 3 (Efficient Sets). An assortment T is said to be inefficient if a mixture of otherassortments can be used to generate strictly higher revenue with the same or lower resource consump-tion rates. That is, there exists a set of weights {µ(S): S ⊂J} satisfying

∑S µ(S) = 1 and µ(S)≥ 0

for all S ⊂J such that

R(T ) <∑S⊂J

µ(S)R(S), Q(T ) ≥∑S⊂J

µ(S)Q(S).

If no such weights exists, the assortment T is said to be efficient.To check whether a set is efficient, Liu and van Ryzin (2008) provided the following condition.

Page 11: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 11

Proposition 2 (Liu and van Ryzin (2008)). A set T is efficient if and only if for some π ∈Rm+ , set T is an optimal solution to the problem

maxS⊂J{R(S)−πTQ(S)}.

We derive the following corollary, which will be used to prove a key result (Theorem 2) later. Theproof of Corollary 1 is included in the appendix.

Corollary 1. For parallel flights, given that an assortment T is efficient, there exists a vectorγ ∈ Rmn, satisfying γj′ > γj for all j ∈ J and j′ ∈ J(j), such that T is an optimal solution to theproblem

maxS⊂J

∑j∈S

γjP (j,S)

. (3)

The coefficient γj in Corollary 1 can be interpreted as the marginal profit of adding product j intoassortment S. In general we have γj 6= rj , since adding product j to the assortment also affects choiceprobabilities of other products. It is easily verified that, for parallel flights, the optimal assortmentpolicy obtained from DP in Eq (1) only uses efficient sets (c.f. Liu and van Ryzin 2008). Indeed, themaximization problem in Eq (1) has the same form as in (3). If we can characterize the structure ofefficient sets, we can restrict our attention to efficient sets in the DP (1), which is a subset of theset of all assortments, 2J . For general choice models, efficient sets are often hard to characterize;but for the spiked-MNL model, we show next that there is a simple structure for efficient sets in theparallel-flight RM setting.

5.2. (Partially) Revenue-ordered Assortments

Talluri and van Ryzin (2004) showed that the efficient sets under the MNL model for single-legRM are assortments of the form Ak = {1,2, · · · , k} for some k ∈ I. Rusmevichientong and Topaloglu(2012) showed that the same conclusion holds even when the model parameters are uncertain, andthey referred to such sets as revenue-ordered assortments. We extend the concept of revenue-orderedassortments for parallel flights and show that the efficient sets under the spiked-MNL model are(partially) revenue-ordered.

Definition 4 (Revenue-ordered assortments). For parallel flights, an assortment S is(partially) revenue-ordered if for any product j offered in S, the products associated with the samefight leg and with higher ranks than j are also offered in the assortment. In other words, for anyj ∈ S, we have J(j)⊂ S.We use the phrase “(partially) revenue-ordered” in the definition, because unlike the single-leg RMsetting, if we rank a set of products for parallel flights by their fare classes, it only gives a partial

Page 12: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 12

order of the products, as products associated with different flight legs are incomparable. For brevity,when there is no ambiguity, we simply refer to “(partially) revenue-ordered” assortments as “revenue-ordered.”

For parallel flights, revenue-ordered assortments are indexed by the cheapest available fare classon each flight. Let l= (i1, · · · , im)T be a list of fare classes, where m is the number of flights. Giventhe list l ∈ Im, the associated revenue-ordered assortment is defined by Al = ∪mf=1 ∪

ifk=1 {(k, f)},

where if is the cheapest available fare class offered on flight f . The following theorem provides acharacterization if efficient sets are revenue-ordered for general choice models.

Theorem 1. For a parallel flight network, every efficient set under a given choice model isrevenue-ordered if and only if for any set T that is not revenue-ordered, there exists constants µl ≥0 (∀l ∈ Im) satisfying

∑l∈Im µl = 1 such that∑j′∈J(j)

∑l∈Im

µlP (j′,Al)≥∑

j′∈J(j)

P (j′, T ), ∀j ∈J ,

and ∑j∈Jf

∑l∈Im

µlP (j,Al) =∑j∈Jf

P (j, T ), ∀f ∈F .

Next, we prove the following result for the spiked-MNL model.

Theorem 2. For a parallel flight network, every efficient set under the spiked-MNL model is arevenue-ordered assortment.

By Theorem 2, when solving optimal assortment policies for parallel flights under the spiked-MNL model, we can restrict our attention to revenue-ordered assortments. In other words, in theDP equation (1), the control space J can be replace by the set of all revenue-ordered assortments,{Al : l ∈ Im}. As a result, the computational complexity of the DP is reduced.

Remark 1. We have assumed that the spike effect is nonnegative in the previous analysis; namely,wj ≥ vj . If wj < vj , the result of Theorem 2 may not hold. See a counterexample in Appendix A.1.

6. Deterministic Approximation and Static Booking Limit ControlAccording to Theorem 2 in the previous section, we can reduce the control space of the DP fromthe set of all assortments, which has a size of 2mn for m parallel flights and n fare classes, to theset of revenue-ordered assortments, which has a size of nm. Unfortunately, the reduced control spacestill has a size that is exponential in the number of flights, making the DP intractable for large m.This motivates us to consider deterministic approximations of the DP. A deterministic approximationcommonly used in the RM literature is choice-based deterministic linear program (CDLP). For bothgeneral choice models and the spiked-MNL model, the CDLP has exponentially many variables. Weintroduce a compact SBLP formulation, which is equivalent to the CDLP and only has mn variables.The SBLP can be used to construct static booking limit heuristics.

Page 13: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 13

6.1. Choice-based Deterministic Linear Programming

Choice-based Deterministic Linear Programming (CDLP) is an approximation of the original dynamicassortment optimization problem where customer arrivals and choices are replaced by their mean(Gallego et al. 2004). The decision variables of CDLP are fractions of time that different assortmentsare offered. Let α(S) be the fraction of time that assortment S ⊂ J is offered. The CDLP is givenby

zCDLP = maxα≥0

λT∑S⊂J

R(S)α(S) (4a)

s.t.∑S⊂J

α(S)≤ 1, (4b)

λT∑S⊂J

Q(S)α(S)≤ c. (4c)

Recall that R(S) is the expected revenue from offering assortment S to a customer, and that Q(S)is the vector of resource consumption rates given assortment S. The objective (4a) of the CDLPmaximizes the total expected revenue over the horizon. Constraint (4b) specifies that the sum offractions of offering different assortments is bounded by 1. With fraction 1−

∑S⊂J α(S), all the fare

classes are closed and only the null alternative is available. Constraint (4c) represents seat capacityconstraints. For a parallel flight network, the number of variables in CDLP is 2mn for general choicemodels. Under the spiked-MNL model, by Theorem 2, α(S) = 0 in the optimal solution to the CDLPif assortment S is not revenue-ordered, so the number of variables is reduced. However, the numberof revenue-ordered assortments is nm, which means that the CDLP under the spiked-MNL model canhave exponentially many variables. This motivates us to consider an deterministic LP formulationwith a polynomial size.

6.2. Sales-based Linear Programming

Under the classical MNL model, the CDLP can be transformed into an equivalent LP formulationcalled Sales-based Linear Program (SBLP), which has a polynomial size of variables and constraints(Gallego et al. 2015). We propose an extension to the SBLP formulation for parallel flights under thethe spiked-MNL choice model.

Let x= (xj : j ∈J ), where xj is the expected sales of product j when it is the cheapest available onthe corresponding flight. Let w(S) :=

∑j∈S [wjI(j,S) + vj(1− I(j,S))] denote the total attractiveness

of products in assortment S, and r(S) :=∑j∈S rj [wjI(j,S) + vj(1− I(j,S))] denote the total revenue

of products in assortment S weighted by their attractiveness parameters. Recall that J(j) denotesthe set of products associated with the same flight as product j that have higher fares; we also defineJ(j) = J(j)∪{j}. The SBLP under the spiked-MNL model is given by

zSBLP = maxx,x0

∑j∈J

r(J(j))wj

·xj (5a)

Page 14: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 14

s.t. x0 +∑j∈J

w(J(j))wj

·xj = λT (5b)

∑j∈Jf

w(J(j))wj

·xj ≤ cf ∀f ∈F (5c)

∑j∈Jf

xjwj≤ x0

v0∀f ∈F (5d)

x≥ 0, x0 ≥ 0.

The objective (5a) is to maximize the total expected revenue. Constraint (5b) is due to the factthat the number of bookings plus the number of customers without purchase equals the number ofarrivals. The quantity w(J(j))

wj· xj is the expected sales on flight f(j) when product j is the cheapest

available product on that flight. (To see this, by Theorem 2, when product j is the cheapest availablefare class on its associated flight, f(j), the available fare classes on flight f(j) is J(j), since productswith higher fares on the same flight must also be available.) Constraint (5c) is the seat capacityconstraint for each flight. Constraint (5d) is derived from the fact that the null alternative is alwaysavailable.

We show in the following theorem that the SBLP formulation (5) is equivalent to the CDLPformulation under the spiked-MNL model.

Theorem 3. Under the spiked-MNL model, given an optimal solution to CDLP (4), an optimalsolution to SBLP (5) can be constructed in polynomial time, and vice versa.

The proof of Theorem 3 is constructive: we give an algorithm that coverts optimal solutions betweenthe two formulations in polynomial time (see Appendix A.3). In fact, we can further show thatthe optimal CDLP solution produced by the algorithm contains a sequence of nested assortments.That is, there exists a sequence of assortments S1 ⊃ S2 ⊃ · · · ⊃ Sk and an optimal CDLP solution{α(S), S ⊂ J }, such that α(S) > 0 if and only if S = Sj for some j = 1, . . . , k. As a corollary toTheorem 3, we have the following result.

Corollary 2. Under the spiked-MNL model, the CDLP (4) has an optimal solution that consistsof a sequence of nested assortments.

According to Corollary 2, if the CDLP has a unique optimal solution, the support of the optimalsolution contains a collection of nested assortments. If the CDLP has multiple optimal solutions, itis possible that some of them do not have the nested assortment structure, but we can always findat least one optimal solution with the nested structure. An example for the latter case is given inAppendix A.3.

The result of Corollary 2 has an interesting implication. By Definition 3, the support of an optimalsolution to the CDLP for parallel flights only contains efficient sets (see Liu and van Ryzin 2008). For

Page 15: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 15

a single-leg flight, Theorem 2 states that efficient sets are revenue-ordered assortments of the form

{1,2, . . . , i}, which immediately implies Corollary 2. However, for parallel flights, a set of (partially)

revenue-ordered assortments might not be nested—a simple counterexample is two parallel flights

and one fare class on each flight. Therefore, Corollary 2 is not directly implied by Theorem 2. Proving

Corollary 2 is critical for constructing static booking limit controls that we will discuss later in this

section.

We make two final remarks about the SBLP formulation. First, Dai et al. (2014) also provided

an SBLP formulation under the spiked-MNL model, but their formulation has more variables and

constraints than the SBLP formulation (5), as their formulation does not take advantage of the

revenue-ordered structure of optimal assortments (see Appendix A.2). Second, the SBLP formulation

above assumes time-homogeneous demand model and a single booking channel. We can extend the

SBLP formulation with time-varying demand model and multiple booking channels. This extension

is used in our numerical experiments based on real-world airline data (Section 7).

6.3. Static Booking Limit Controls by Deterministic Approximation

Booking limits are widely used by airline reservation systems for controlling availability of fare classes.

With a partitioned booking limit policy, seat capacity on a flight is divided for each fare class, and

a fare class is closed to customers once the number of sales of that class reaches its booking limit.

With a nested booking limit policy, the booking limits are defined for subsets of fare classes that

are nested by revenue order, so higher-ranked classes have access to the capacity reserved for lower-

ranked classes. A detailed discussion of booking limit controls can be found in Talluri and Van Ryzin

(2005).

By Corollary 2, the optimal solution to SBLP (5) can be used naturally to construct booking limit

policies, where the booking limit for each product is given by the expected sales of that product in

the SBLP (5). In particular, let x∗ = (x∗j : j ∈ J ) be the solution to SBLP. The expect number of

sales of product j, denoted by sj , is given by

sj = x∗j +∑

j′∈J(j)

vjwj′

x∗j′ . (6)

Recall that J(j) is the set of products that use the same flight leg as product j and have lower fare

classes. According to the definition of SBLP, if any product j′ ∈ J(j) is open, product j must also be

Page 16: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 16

open. So vjwj′x∗j′ is the expected sales of product j when j′ ∈ J(j) is the cheapest available fare class

on the flight. By Eq (5c),∑j∈Jf sj ≤ cf . We thus define a (static) partitioned booking limit policy

by setting the booking limit of product j to sj .

We also define a (static) nested booking limit policy, where the booking limit for subset J(j)∪{j}

is given by

bj =∑

j′∈J(j)∪{j}

sj . (7)

The nested booking limit policy defined by Eq (7) can be implemented using either standard nesting

or theft nesting (Talluri and Van Ryzin 2005). Under standard nesting, product j is closed when the

booking limit of product j or any product ranked above j has been reached. Under theft nesting,

product j is closed when the total bookings on flight f(j) over all fare classes reach the booking limit

of product j.

In sum, the optimal solution to the SBLP (5) defines three static booking limit heuristics:

• a partitioned booking limit policy, using expected sales defined by Eq (6) as booking limits;

• a standard nested booking limit policy, using booking limits defined by Eq (7);

• a theft nested booking limit policy, using booking limits defined by Eq (7).

Under any of the three booking limit policies above, once a product is closed, it would remain

closed until the end of the horizon. Therefore, when any of the static booking limit policies are

implemented, a sequence of assortments Sj , 1 ≤ j ≤ k, are offered such that S1 ⊃ S2 ⊃ · · · ⊃ Sk. If

all the random variables in the system associated with customer arrivals and choices are replaced by

their expectations, the resulting sequence of assortments is the one given by Corollary 2.

7. Simulation

In this section, we conduct numerical experiments to study the performance of different assortment

control policies. As common in practice, we allow the arrival rates and the choice parameters to vary

over time and among different booking channels in the numerical experiments. Specifically, the selling

horizon is divided into several phases of possibly different lengths; the set of phases is denoted by T .

Page 17: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 17

Customers arrive via different booking channels, which are denoted by set C. (For example, customers

could book a ticket by phone, on the airline’s website, or through a third-party travel agent.) We

assume that the phases are divided in such a way that the arrival process in each phase `∈ T through

each channel c∈ C can be viewed as a homogeneous Poisson process with a total expected number of

arrivals λc,`. Likewise, the parameters of the spiked-MNL choice model also depends on phase `∈ T

and a booking channel c∈ C.

7.1. Data Description

In the simulation, we test on synthetic data as well as real-world data provided by our airline partner.

7.1.1. Synthetic data. We consider a numerical example with m= 10 parallel flights, and each

flight has n= 4 fare classes. Each flight f has a seat capacity of cf = 25. The prices of fare classes

are randomly generated between $50 and $500. The selling horizon is divided into 100 phases, and

the expected number of arrivals λc,` in each phase is sampled uniformly from [2, 9.5]. We randomly

generate parameters of the spiked-MNL model for each phase and each channel, while forcing the

spike effect to be strictly positive (i.e, wj > vj for each product j ∈ J ). We assume that the host

airline faces competition and its market share is about 50%. So, we select the arrival rates and the

choice model parameters in such as way that the seat capacity of the host airline is scarce and is

about half of the total number of customer arrivals.

7.1.2. Real-world data. The real-world booking data are provided by our airline partner for

an anonymous origin-destination market, which has more than 30 parallel flights per day. Among

which, the host airline operates m = 20 parallel flights per day in this market, and each flight has

the same fare class structure with n= 13 fare classes. There are |C|= 5 booking channels. The selling

horizon is divided into |T |= 200 phases.

We model and estimate customer demand as follows. Let N be the set of the customers, including

those who booked with the host airline and other airlines, associated with all the parallel flights on

a specific departure date. (The airline data we used contain records of customers who booked with

the host airline, as well as estimated numbers of customers who booked with other airlines.) When

Page 18: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 18

a customer τ ∈N arrives via channel cτ in phase `τ , she sees an assortment Sτ offered by the host

airline and chooses alternative j ∈ Sτ ∪{0} with probability

Pcτ ,`τ (j,Sτ ) = v(xτ,j)∑j′∈Sτ v(xτ,j′) + v0(cτ , `τ )

. (8)

Eq (8) represents a spiked-MNL model. Here, xτ,j is a feature vector consisting of information

about product j and customer τ . For example, product-specific features include price, change fees,

and mileage gain; customer-specific features include customer booking channel and booking time.

In addition, xτ,j contains a binary variable indicating whether product j is the cheapest available

fare class on the associated flight. Function v(xτ,j) measures the attractiveness of product j given

feature vector xτ,j . Quantity v0(cτ , tτ ) is the null attractiveness, which depends on the assortments

offered by the competing airlines. The parameters in Eq (8) are estimated using maximum likelihood

estimation.

7.2. Assortment Policies Tested

We test the following assortment control policies in our numerical experiments.

• FCFS: A naıve first-come first-serve heuristic that opens all fare classes on a flight as long as

there is remaining capacity on that flight.

• EMSR-b: The nested booking limit heuristic proposed by Belobaba (1989).

• SBLP: The nested booking limit heuristic proposed in Section 6.3, where the booking limits are

constructed from the optimal solution to the SBLP.

• Updated: This policy uses a simulation-based optimization method to improve the booking

limits of the SBLP policy (see details in Appendix A.4).

• CDLP: Offering different assortments over the horizon with fractions specified by the optimal

solution to the CDLP. The optimal solution to the CDLP can be obtained by solving the SBLP and

then transforming the SBLP solution to the CDLP solution (see Appendix A.3).

Note that SBLP, Updated, and EMSR-b all belong to nested booking limit policies. There are two

variants of nested booking limit policies, i.e., standard nesting and theft nesting. We implement both

variants on all three booking limit heuristics and use “-s” and “-t” to distinguish them. A detailed

Page 19: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 19

discussion on standard versus theft nesting for booking limit policies can be found in Talluri and

Van Ryzin (2005) and Haerian et al. (2006).

7.3. Simulation Results

We conduct the numerical experiments on a laptop with a 2.20 GHz CPU and 8.00 GB RAM. The

assortment algorithms are coded in Matlab R2016a; we use CVX 2.1 as modeling language and

Gurobi 7.01 as optimization package. We consider the following performance benchmark. For a given

assortment control policy ψ, let E[Zψ] be the expected revenue achieved using policy ψ. Since the

CDLP optimal value zCDLP is an upper bound on the optimal expected revenue of the assortment

optimization problem (1), we use the ratio ρψ := E[Zψ]/zCDLP as the performance metric of policy

ψ. A good policy should yield a ratio ρψ that is close to 1.

7.3.1. Performance over a Synthetic Dataset. Figure 3 shows the ratio ρψ of different

policies averaged over 100 simulation runs with 95% confidence intervals. We find that CDLP-based

heuristic has the best average performance among all the policies tested. Both EMSRb-s and SBLP-s

achieve ratios above 0.92. The updated booking limit heuristic using standard nesting (Updated-s)

improves the revenue of SBLP-s by roughly 2%. The performance under theft nesting is in general

not as good as that under standard nesting. In particular, the SBLP-based heuristic using theft

nesting (SBLP-t) has an average revenue that is 5% less than the revenue of SBLP-s. The first-come

first-serve heuristic (FCFS) policy has the worst performance, with a ratio below 0.8.

7.3.2. Performance over the Real-world Dataset. Next we examine the performance of

assortment control policies with the real-world data. We train assortment control policies based on

the demand models calibrated with the data of Monday flights in year 2011. We then test their

performance using the demand models calibrated with the data in year 2012.

Table 1 shows the sample mean and standard errors of revenues for each control policy. Figure

4 shows the ratios ρψ in the testing set of different policies over 1000 simulation runs. The figure

also shows 95% confidence intervals. We again observe that the CDLP-based heuristic has the best

performance over all policies tested. The FCFS heuristic performs the worst with the ratios close to

Page 20: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 20

FCFS EMSRb-s EMSRb-t SBLP-s SBLP-t Updated-sUpdated-t CDLP0.78

0.8

0.82

0.84

0.86

0.88

0.9

0.92

0.94

0.96

0.98

Figure 3 95% confidence intervals of ρψ over a synthetic dataset under different policies.

0.68. The SBLP-based booking limit heuristics perform better than the EMSRb heuristics and achieve

ratios around 0.90. Although one would expect that the Updated heuristics, which use simulation-

based method to improve the SBLP booking limits, should perform better than the SBLP heuristics,

we find that it actually performed worse. We suspect that it is because the Updated heuristics are

trained using data from year 2011 and do not generalize well on out-of-sample testing data from year

2012.

Unlike the result for synthetic data in Figure 3, we find that theft nesting generates better perfor-

mance over standard nesting on this real-world data set.

Table 1 Average revenues and standard errors underdifferent assortment control policies

method avg. revenue SE SE/revenue

FCFS 2.733×106 209.71 0.01%EMSR-s 3.641×106 556.67 0.02%EMSR-t 3.754×106 561.15 0.01%SBLP-s 3.790×106 566.06 0.01%SBLP-t 3.819×106 568.86 0.01%

Updated-s 3.695×106 552.50 0.01%Updated-t 3.799×106 573.87 0.02%

CDLP 3.880×106 546.55 0.01%

Page 21: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 21

FCFS EMSRb-s EMSRb-t SBLP-s SBLP-t Updated-sUpdated-t CDLP0.65

0.7

0.75

0.8

0.85

0.9

0.95

Figure 4 95% confidence intervals of ρψ over a real-world dataset under different policies.

8. Conclusion

We consider assortment optimization under a spiked-MNL choice model for parallel flights. The

spiked-MNL model is a variant of the classical MNL model and is motivated by the phenomenon

of cheapest fare spikes observed by airlines. We show that the optimal assortment policy under the

spiked-MNL model uses only revenue-ordered assortments for parallel flights. We also consider deter-

ministic approximations under the spiked-MNL model and propose static booking limit heuristics.

In numerical experiments using both synthetic and real-world data, we compare the performance of

different assortment policies.

ReferencesAndersson SE (1989) Operational planning in airline business—Can science improve efficiency? Experiences

from SAS. European Journal of Operational Research 43(1):3–12.

Belobaba PP (1989) OR Practice–Application of a probabilistic decision model to airline seat inventory

control. Operations Research 37(2):183–197.

Belobaba PP (2015) Airline revenue management. Belobaba P, Odoni A, Barnhart C, eds., The Global Airline

Industry, 99–126 (John Wiley & Sons).

Page 22: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 22

Berbeglia G, Joret G (2016) Assortment optimisation under a general discrete choice model: A tight analysisof revenue-ordered assortments. Working paper.

Bertsimas D, de Boer S (2005) Simulation-based booking limits for airline revenue management. OperationsResearch 53(1):90–106.

Bertsimas D, Misic VV (2015) Data-driven assortment optimization. Working paper.

Bertsimas D, Popescu I (2003) Revenue management in a dynamic network environment. TransportationScience 37(3):257–277.

Boyd EA, Kallesen R (2004) Practice papers: The science of revenue management when passengers purchasethe lowest available fare. Journal of Revenue and Pricing Management 3(2):171–177.

Bront JJ, Mendez-Dıaz I, Vulcano G (2009) A column generation algorithm for Choice-Based network revenuemanagement. Operations Research 57(3):769–784.

Cooper WL, de Mello TH, Kleywegt AJ (2006) Models of the Spiral-Down effect in revenue management.Operations Research 54(5):968–987.

Cooper WL, Li L (2012) On the use of buy up as a model of customer choice in revenue management.Production and Operations Management 21(5):833–850.

Dai JG, Ding W, Kleywegt A, Wang X, Zhang Y (2014) Choice based revenue management for parallelflights. Working paper.

Davis JM, Gallego G, Topaloglu H (2014) Assortment optimization under variants of the nested logit model.Operations Research 62(2):250–273.

Ding W (2017) Estimation and Optimization Problems in Revenue Management with Customer ChoiceBehavior. Ph.D. thesis, Georgia Institute of Technology.

Farias VF, Jagabathula S, Shah D (2013) A nonparametric approach to modeling choice with limited data.Management Science 59(2):305–322.

Feldman JB, Topaloglu H (2015) Capacity constraints across nests in assortment optimization under thenested logit model. Operations Research 63(4):812–822.

Feldman JB, Topaloglu H (2017) Revenue management under the markov chain choice model. OperationsResearch 65(5):1322–1342.

Gallego G, Iyengar G, Phillips R, Dubey A (2004) Managing flexible products on a network. Working paper.

Gallego G, Li L, Ratliff R (2009) Choice-based EMSR methods for single-leg revenue management withdemand dependencies. Journal of Revenue and Pricing Management 8(2):207–240.

Gallego G, Ratliff R, Shebalov S (2015) A general attraction model and Sales-Based linear program fornetwork revenue management under customer choice. Operations Research 63(1):212–232.

Gallego G, Topaloglu H (2014) Constrained assortment optimization for the nested logit model. ManagementScience 60(10):2583–2601.

Page 23: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 23

Golrezaei N, Nazerzadeh H, Rusmevichientong P (2014) Real-Time optimization of personalized assortments.

Management Science 60(6):1532–1551.

Haerian L, de Mello TH, Mount-Campbell CA (2006) Modeling revenue yield of reservation systems that

use nested capacity protection strategies. International Journal of Production Economics 104(2):340 –

353.

Hubner AH, Kuhn H (2012) Retail category management: State-of-the-art review of quantitative research

and software applications in assortment and shelf space management. Omega 40(2):199–209.

Kok AG, Fisher ML, Vaidyanathan R (2015) Assortment planning: Review of literature and industry practice.

Retail supply chain management, 175–236 (Springer).

Littlewood K (1972) Forecasting and control of passenger bookings. 12th AGIFORS Sympos. Proc 95–128.

Liu Q, van Ryzin G (2008) On the choice-based linear programming model for network revenue management.

Manufacturing & Service Operations Management 10(2):288–310.

Manski CF, McFadden D, eds. (1981) Structural analysis of discrete data with econometric applications

(Cambridge, Mass.: MIT Press).

McGill JI, van Ryzin GJ (1999) Revenue management: Research overview and prospects. Transportation

Science 33(2):233–256.

Rusmevichientong P, Shen ZJM, Shmoys DB (2010) Dynamic assortment optimization with a multinomial

logit choice model and capacity constraint. Operations Research 58(6):1666–1680.

Rusmevichientong P, Shmoys D, Tong C, Topaloglu H (2014) Assortment optimization under the multinomial

logit model with random choice parameters. Production and Operations Management 23(11):2023–2039.

Rusmevichientong P, Topaloglu H (2012) Robust assortment optimization in revenue management under the

multinomial logit choice model. Operations Research 60(4):865–882.

Smith BC, Leimkuhler JF, Darrow RM (1992) Yield management at american airlines. Interfaces 22(1):8–31.

Strauss AK, Klein R, Steinhardt C (2018) A review of choice-based revenue management: Theory and

methods. European Journal of Operational Research .

Talluri K (2014) New formulations for choice network revenue management. INFORMS Journal on Com-

puting 26(2):401–413.

Talluri K, van Ryzin G (1998) An analysis of Bid-Price controls for network revenue management. Manage-

ment Science 44(11-part-1):1577–1593.

Talluri K, van Ryzin G (2004) Revenue management under a general discrete choice model of consumer

behavior. Management Science 50(1):15–33.

Talluri KT, Van Ryzin G (2005) The Theory and Practice of Revenue Management, volume 68 (Springer

Science & Business Media).

Page 24: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 24

van Ryzin G, Vulcano G (2008a) Computing virtual nesting controls for network revenue management under

customer choice behavior. Manufacturing & Service Operations Management 10(3):448–467.

van Ryzin G, Vulcano G (2008b) Simulation-Based optimization of virtual nesting controls for network

revenue management. Operations Research 56(4):865–880.

Walczak D, Mardan S, Kallesen R (2010) Customer choice, fare adjustments and the marginal expected

revenue data transformation: A note on using old yield management techniques in the brave new world

of pricing. Journal of Revenue and Pricing Management 9(1):94–109.

Zhang D, Adelman D (2009) An approximate dynamic programming approach to network revenue manage-

ment with customer choice. Transportation Science 43(3):381–394.

Zhang D, Cooper WL (2005) Revenue management for parallel flights with customer-choice behavior. Oper-

ations Research 53(3):415–431.

Page 25: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 25

Appendix A: Additional Results

A.1. Negative Spikes

We have assumed that the spike effect is nonnegative throughout the paper. In the airline booking dataprovided by our airline partner, we occasionally observe negative spike effect, i.e., vj >wj > 0 for some j ∈J .Now, we revisit the conclusion that efficient sets are revenue-ordered (Theorem 2), while allowing negativespikes. We show that even for the single-leg case, efficient sets under the spiked-MNL model with negativespikes are not necessarily revenue-ordered.

Example 3. Consider a single-leg flight with three fare classes: H, M and L, with revenues rH = 5, rM = 3,and rL = 2. The attractiveness parameters are given by vH = 5, vM = 10, wH = 2, wM = 4, and wL = 1 (wedon’t need to define vL); the null attractiveness is v0 = 10. Table 2 lists the resource consumption rate Q(S)and the expected revenue R(S) for every assortment. Figure 5 shows the plot of (Q(S),R(S)) and its convexenvelope. This convex envelope is often called the efficient frontier. By Definition 3, all efficient sets are onthe efficient frontier. Note that assortment {H,L} is on the efficient frontier and hence a efficient set, but itis not revenue-ordered.

Table 2 Resource consumption rateQ(S) and expected revenue R(S) for

Example 3.

S Q(S) R(S) Efficient?

∅ 0 0 Yes{L} 0.091 0.182 No{M} 0.286 0.857 No{H} 0.167 0.833 Yes{M,L} 0.524 1.524 No{H,L} 0.375 1.688 Yes{H,M} 0.474 1.947 Yes{H,M,L} 0.615 2.192 Yes

A.2. Sales-based Linear Program in Dai et al. (2014)

Dai et al. (2014) have proposed an SBLP formulation under the spiked-MNL model, which is equivalent to theSBLP we presented in Section 6.2. The formulation in Dai et al. (2014) is as follows. Let xj

j be the expectednumber of bookings of product j when product j′ is the cheapest available fare class on the associated flightf(j). Let x0 denote the expected number of customers who do not book with the host airline. Let x= {xj

j }

for all j′ ∈ J , j ∈ J(j′). Both x and x0 are decision variables of the SBLP. Recall that J(j) denotes the setof products ranking higher than j and J(j) = J(j)∪{j}. The SBLP in Dai et al. (2014) is

zSBLP = maxx,x0

∑j′∈J

∑j∈J(j′)

rj ·xj′

j (9a)

s.t. x0 +∑j′∈J

∑j∈J(j′)

xj′

j = λT (9b)

∑j′∈Jf

∑j∈J(j′)

xj′

j ≤ cf , ∀f ∈F (9c)

Page 26: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 26

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7

Q(S)

0

0.5

1

1.5

2

2.5

R(S

)

{H,M,L}

{M,L}

{H,M}

{H,L}

{H} {M}

{L}

Figure 5 Efficient sets are not revenue-ordered under spiked-MNL with negative spikes.

xj′

j

vj≤xj

j′

wj′, ∀j′ ∈J , j ∈ J(j′), (9d)

∑j∈Jf

xjjwj≤ x0

v0, ∀f ∈F (9e)

x≥ 0, x0 ≥ 0.

The objective (9a) is to maximize the total expected revenue. Constraint (9b) imposes the flow balance,

i.e., the number of booking and non-booking customers equals the number of arrivals. Constraint (9c) is the

capacity constraint for each flight. Constraint (9d) represents the fact that when product j′ is the cheapest

available fare class on a flight, the selling time of higher fare classes on the same flight does not exceed the

selling time of j′. (The quantity xj′

j′/wj′ is proportional to the time that product j′ is offered as the cheapest

available fare class on its associated flight. Similarly, the quantity xj′

j /vj is proportional to the time that

product j is offered together with j′ where j ∈ J(j′). By definition, the former quantity should be no less

than the latter.) Since the null alternative is always available, constraint (9e) implies the cumulative selling

time when different fare classes being the cheapest on each flight cannot exceed the whole selling horizon.

Computational Complexity of SBLP. For a parallel flight problem with m flights and n fare classes. The

SBLP formulation (9) proposed by Dai et al. (2014) has mn(n+ 1)/2 variables and 1 + 2m+mn(n− 1)/2

constraints. In comparison, the SBLP formulation given in Section 6.2 has only mn variables and 2m+ 1

constraints.

In the real-world data described in Section 7, the setting is more complex as the airline has multiple

booking channels and multiple phases. We report in Table 3 the computational time of the SBLP formulation

in Dai et al. (2014) and our SBLP formulation in Section 6.2 on this dataset. It’s clear that our SBLP requires

much less storage and significantly less computational time, even though it produces the same solution as

the SBLP in Dai et al. (2014).

Page 27: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 27

Table 3 Computational complexity of original and simplifiedSBLPs.

SBLP formulation #variables #constraints time (s)

original 4,961,020 3,141,020 268.28simplified 281,020 21,020 4.45

A.3. Equivalence between SBLP and CDLP

The CDLP formulation in Section 6.1 and the SBLP formulation in Section 6.2 are equivalent under the

spiked-MNL model, in that both formulations have the same optimal objective value, and the optimal solution

to one formulation can be converted into the optimal solution to another.

A.3.1. From SBLP to CDLP. Below, we first provide an algorithm (Algorithm 1) to convert a feasible

solution to the SBLP (5), denoted by (x, x0), into a feasible solution to the CDLP (4), denoted by α. We

will show that this algorithm terminates in polynomial time and provides us with a feasible solution to the

CDLP.

In addition, note that in line 7 of Algorithm 1, if we pick the largest index j ∈ Jf for each f ∈F such that

xj > 0, then we will get a sequence of nested assortments S1 ⊃ S2 ⊃ · · · ⊃ Sk. Figure 6 provides an example

of converting a SBLP solution to a CDLP solution, while enforcing a nested assortment structure.

Algorithm 1 Converting a simplified SBLP solution to a CDLP solutionRequire: SBLP solution x, x01: Set α← 0, k← 12: while there exists xj > 0 for some j ∈J do3: for all f ∈F do4: if xj = 0 for ∀j ∈ Jf then5: Yf ←−∞6: else7: Pick any j ∈ Jf such that xj > 0 and set j(f)← j, Yf ← xj

wj8: end if9: end for

10: Set Y k←min{Yf : Yf > 0, f ∈F}, Sk←∪f :Yf>0J(j(f)), and α(Sk)← (w(Sk)+v0)Y kλT

11: for all f ∈F do12: if Yf > 0 then13: Set j← j(f) and xj← xj −Y kwj14: end if15: end for16: k← k+ 117: end while18: Output α

Lemma 1. Given a feasible solution (x, x0) to SBLP (5), Algorithm 1 terminates in O(m2n) steps, where

n is the number of fare classes and m is the number of parallel flights.

Proof of Lemma 1. In each iteration of the “while” loop (line 2–line 17), according to the definition of

Y , at least one of the positive elements in x would be reduced to 0. Therefore, after O(mn) iterations of the

Page 28: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 28

𝑥0𝑣0

𝑥3/𝑤3

𝑥2/𝑤2

𝜙𝐹𝑙𝑖𝑔ℎ𝑡 1

𝐹𝑙𝑖𝑔ℎ𝑡 2

𝐽1 = {1,2,3}

𝐽2 = {4,5}

𝑥1/𝑤1

𝐴𝑠𝑠𝑜𝑟𝑡𝑚𝑒𝑛𝑡

{1,2,3} {1,2} {1}

𝑥5/𝑤5

𝑥4/𝑤4

𝜙{4}{4,5}

𝑆1 𝑆2 𝑆3 𝑆4 𝑆5 𝑆6

Figure 6 An example of converting a SBLP solution to a CDLP solution.Note. Flight 1 corresponds to three fare products {1,2,3} and Flight 2 corresponds two fare products {4,5}. By apply-ing Algorithm 1 with the nested assortment tweak, we get nested assortments S1 = {1,2,3,4,5} ⊃ S2 = {1,2,3,4} ⊃S3 = {1,2,4} ⊃ S4 = {1,4} ⊃ S5 = {1} ⊃ S6 = ∅.

while loop, we have x= 0 and the algorithm terminates. The “for” loops at each iteration (line 3–line 9, line

11–line 15) require O(m) steps. So Algorithm 1 terminates in O(m2n) steps. �

Lemma 2. In each iteration k= 1,2, . . . of Algorithm 1 (line 2–line 17), the assortment Sk defined in line

10 is revenue-ordered. The amount subtracted from x in iteration k is equal to the expected sales quantity of

the cheapest fare classes in assortment Sk when Sk is offered for α(Sk)T unit of time. Moreover, the CDLP

solution α produced by Algorithm 1 satisfies

xj = λT∑

S: I(j,S)=1

α(S)P (j,S), ∀j ∈J . (10)

Proof of Lemma 2. By definition, Sk is a union of revenue-ordered assortments, J(j(f)), so it is a

revenue-ordered assortment by itself. If product j is the cheapest available fare class on its associated flight

in assortment Sk, i.e., I(j,Sk) = 1, the amount subtracted from xj is Y kwj (see line 13). The expected

sales of product j when assortment Sk is offered for α(Sk)T unit of time is equal to λTα(Sk)P (j,Sk) =

λT (w(Sk)+v0)Y kλT

wjw(Sk)+v0

= Y kwj . This proves the second statement in the lemma. To show the last statement,

we have

xj =∑k

Y kwj =∑k

λTα(Sk)P (j,Sk)I(j,Sk) = λT∑

S: I(j,S)=1

α(S)P (j,S). �

Proposition 3. Given a feasible solution (x, x0) to SBLP (5), a feasible solution α to CDLP (4) can be

computed in polynomial time such that (x, x0) and α correspond to the same sales quantity for each product

and have the same objective values.

Page 29: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 29

Proof of Proposition 3. Recall that for an assortment S for parallel flights, the expected revenue is R(S) =∑j∈S rjP (j,S) and the resource consumption rate on flight f is Qf (S) =

∑j∈Sf P (j,S). Moreover, we have

w(S) =∑

j∈S [wjI(j,S) + vj(1− I(j,S))] and r(S) =∑

j∈S rj [wjI(j,S) + vj(1− I(j,S))]. By Lemma 2, wehave

w(J(j))wj

xj =∑

S:I(j,S)=1

λTw(J(j))wj

α(S)P (j,S)

=∑

S:I(j,S)=1

λTw(J(j))wj

α(S) wjw(S) + v0

=∑

S:I(j,S)=1

λTw(J(j))w(S) + v0

α(S).

Substituting the above value in the SBLP constraint (5c), we get

cf ≥∑j∈Jf

w(J(j))wj

xj =∑j∈Jf

∑S:I(j,S)=1

λTw(J(j))w(S) + v0

α(S)

= λT∑S⊂J

w(Sf )w(S) + v0

α(S)

= λT∑S⊂J

Qf (S)α(S), ∀f ∈F ,

which is constraint (4c) of the CDLP. The second equality above uses the definition Sf = S ∩ Jf and thefact that S, thus any Sf , is revenue-ordered. The third equality follows from the fact that the resourceconsumption rate Qf (S) =w(Sf )/(w(S) + v0).

Similarly, by SBLP constraint (5b), we have

λT = x0 +∑j∈J

w(J(j))wj

xj

= x0 +∑f∈F

∑j∈Jf

w(J(j))wj

xj

= x0 +∑f∈F

∑S⊂J

λTw(Sf )

w(S) + v0α(S)

= x0 +λT∑S⊂J

w(S)w(S) + v0

α(S)

⇒ x0 = λT

(1−

∑S⊂J

w(S)w(S) + v0

α(S)).

Then, by SBLP constraint (5d), for any f ∈F , we have∑j∈Jf

xj/wj =∑j∈Jf

∑S⊂J :I(j,S)=1

λTα(S)P (j,S)/wj

= λT∑j∈Jf

∑S⊂J :I(j,S)=1

1w(S) + v0

α(S)

≤ λT∑S⊂J

1w(S) + v0

α(S)

≤ x0/v0 = λT

(1−

∑S⊂J

w(S)w(S) + v0

α(S))/v0

Page 30: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 30

⇒∑S⊂J

v0

w(S) + v0α(S)≤ 1−

∑S⊂J

w(S)w(S) + v0

α(S)

⇒∑S⊂J

α(S)≤ 1,

which is constraint (4b) in the CDLP.

The objective value of the SBLP is given by∑j∈J

r(J(j))wj

xj = λT∑j∈J

∑S⊂J :I(j,S)=1

r(J(j))wj

α(S)P (j,S)

= λT∑j∈J

∑S⊂J :I(j,S)=1

r(J(j))w(S) + v0

α(S)

= λT∑S⊂J

∑f∈F

r(Sf )w(S) + v0

α(S)

= λT∑S⊂J

r(S)w(S) + v0

α(S)

= λT∑S⊂J

R(S)α(S),

which equals the objective value of the CDLP. We have thus established that a feasible solution to SBLP

can be converted to a feasible solution to CDLP with the same objective value. By Lemma 1, the conversion

is done in polynomial time. �

A.3.2. From CDLP to SBLP. Now we show the other direction: converting a solution to CDLP into

a solution to SBLP. By Theorem 2, we only focus on CDLP solutions that consists of revenue-ordered sets,

since non-revenue-ordered sets are inefficient and are not contained in the support of the optimal CDLP

solutions.

Proposition 4. Consider a feasible solution α to CDLP (4) such that for any α(S)> 0, assortment S is

revenue-ordered. There is a feasible solution (x, x0) to SBLP (5) such that (x, x0) and α correspond to the

same sales quantity for each product and have the same objective values.

Proof of Proposition 4. Given a feasible solution α to CDLP, define xj =∑

S:I(j,S)=1 λTP (j,S)α(S) for

all j ∈ J and x0 =∑

S⊂J λTP (0, S)α(S). We show that (x, x0) is feasible for the SBLP.

The balance constraint (5b) in the SBLP holds, since

x0 +∑j∈J

w(J(j))wj

xj =∑S⊂J

λTP (0, S)α(S) +∑j∈J

∑S⊂J :I(j,S)=1

λTw(J(j))wj

P (j,S)α(S)

=∑S⊂J

λTv0

w(S) + v0α(S) +

∑S⊂J

∑f∈F

λTw(Sf )

w(S) + v0α(S)

= λT∑S⊂J

v0 +∑

f∈F w(Sf )w(S) + v0

α(S)

= λT.

The last equality follows from constraint (4b) of CDLP, since α(∅) = 1−∑

S⊂J α(S).

Page 31: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 31

For any f ∈F , the capacity constraint (5c) in the SBLP also holds, since∑j∈Jf

w(J(j))wj

xj =∑j∈Jf

∑S⊂J :I(j,S)=1

λTw(J(j))wj

P (j,S)α(S)

=∑j∈Jf

∑S⊂J :I(j,S)=1

λTw(J(j))w(S) + v0

α(S)

= λT∑S⊂J

w(Sf )w(S) + v0

α(S)

= λT∑S⊂J

Qf (S)α(S)≤ cf .

Similarly, for any f ∈F , ∑j∈Jf

xjwj

=∑j∈Jf

∑S∈J :I(j,S)=1

λTP (j,S)α(S)/wj

= λT∑j∈Jf

∑S∈J :I(j,S)=1

α(S)w(S) + v0

≤ λT∑S∈J

α(S)w(S) + v0

= xjv0,

which is constraint (5d) in the SBLP.

Finally, the objective value of SBLP is given by∑j∈J

r(J(j))wj

xj =∑j∈J

∑S⊂J :I(j,S)=1

r(J(j))wj

λTP (j,S)α(S)

= λT∑j∈J

∑S⊂J :I(j,S)=1

r(J(j))w(S) + v0

α(S)

= λT∑S⊂J

∑f∈F

r(Sf )w(S) + v0

α(S)

= λT∑S⊂J

r(S)w(S) + v0

α(S)

= λT∑S⊂J

R(S)α(S),

which is equal to the objective value of CDLP. �

Using Propositions 3 and 4, we prove Theorem 3 in Appendix B. The following example shows that when

the CDLP has multiple optimal solutions, some of them may not have the nested assortment structure.

However, there is at least one optimal CDLP solution that has the nested assortment structure. This solution

can be found by converting the initial optimal CDLP solution into an optimal SBLP solution by Proposition 4,

and then converting it again back to another optimal CDLP solution by Proposition 3 while forcing with

the nested assortment structure.

Example 4. Consider two parallel flights. Each flight has a single fare class. We define products 1 and

2 associated with the two flights. Assume revenue r1 = r2, product attractiveness v1 = v2 = 2, and the null

attractiveness v0 = 1. Let the capacity be c1 = c2 = 0.3λT . An optimal solution to the CDLP is α({1}) =

α({2}) = 0.167, α({1,2}) = 0.471, α(∅) = 0.195. The support of this solution, {∅,{1},{2},{1,2}}, cannot

Page 32: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 32

be represented by a nested sequence. However, another optimal solution to the CDLP is α({1,2}) = 0.75,α(∅) = 0.25 and α({1}) = α({2}) = 0. The support of this solution, ∅ and {1,2}, can now be represented bya nested sequence, as ∅⊂ {1,2}.

A.4. Improving Static Booking Limits with a Simulation-based Method

The booking limit heuristics in Section 6.3 derived from deterministic approximations can be improved usingsimulation-based method by Bertsimas and de Boer (2005). Their method is based on a discrete model ofcapacity and demand, and it uses first-difference estimates for gradient, which are computationally inefficient.Booking limits are then optimized based on these gradient estimates by a steepest ascend algorithm. Later,van Ryzin and Vulcano (2008b) adopted a similar philosophy to optimize the booking limits but with acontinuous-demand, continuous-capacity model that admits gradient calculations. They showed that theirgradient estimates can be computed much faster and that the stochastic gradient algorithm they usedconverges to local optimal solutions. In a subsequent paper by van Ryzin and Vulcano (2008a), they furtherextended the method to incorporate choice behavior.

We adopt the simulation-based stochastic gradient method from van Ryzin and Vulcano (2008a) to improvebooking limits. Our method differs from the original version in van Ryzin and Vulcano (2008a) in that weemploy a more generic probability model describing customer choice behavior and that customer preferencesare revealed interactively, while van Ryzin and Vulcano (2008a) assumed a predetermined preference list foreach customer. We note that such modification is crucial for incorporating the spike effect. This is becausethe spike effect depends on the specific assortment observed by a customer, which evolves with the bookingprocess. Therefore, customer choice behavior cannot be determined a priori by a predetermined preferencelist. We briefly describe our method below.

Assume continuous demands and capacities in the model. Let a realization of a sample path of networkdemand, denoted by ω, be defined by a sequence of realized customer requests ω = {(lτ , qτ ) : τ = 1, . . . ,N},where N is the total number of customers in the sequence, which is finite w.p.1; τ indexes the arrivingcustomers; lτ is a list of requests for products, whose composition will be discussed later; qτ is a demandingquantity of products, which could be any nonnegative quantity (such as an individual request for one unitor a group request for a batch). For each sample path, the realized total revenue is called the sample pathrevenue, and its gradient with respect to the controls, i.e., booking limits, is called the sample path gradient.

A customer τ has a predetermined request of qτ quantity of products but has not decided what to buy.When she arrives, she sees the current assortment offered S and decides the alternative to purchase first,denoted by jτ1 , or leave without a purchase, i.e., jτ1 = 0. The decision on the alternative to purchase is madethrough an inquiry to the choice model in study. If the corresponding booking limit of jτ1 is not active, shewill buy up to quantity qτ of alternative jτ1 and leave happily. If the booking limit on jτ1 becomes binding afteraccepting a partial quantity of the customer request, denoted by ujτ1 , she will first buy the maximum possiblequantity ujτ1 of alternative jτ1 . The assortment then becomes S − {jτ1 }, and the customer decides whethershe wants to buy another alternative, denoted jτ2 , to satisfy the remaining demanding quantity qτ − ujτ1 orleave without further purchases. The above “see-decide-buy” procedure is repeated until the customer leavespermanently and provides us with a realization of lτ = (jτ1 , jτ2 , . . . ).

Page 33: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 33

Note here that we are allowing the system to partially accept a request if the available capacity is positive

but less than the quantity q that is requested. The assumption is necessary to make the sample path revenue,

denoted R(b,ω), a smooth function of the booking limits and to admit gradient computation. Our objective

is to maximize the expected revenue, E[R(b,ω)] over the set of feasible booking limits Θ, namely

maxb∈Θ

E[R(b,ω)].

Starting with initial booking limits b(0), we run multiple trials of simulation to evaluate sample path

revenues and corresponding gradients. Then we update the booking limit controls with an iterative sample-

path gradient projection method of the form

b(k+1) = ProjΘ(b(k) +βkg

(k)) ,where k is the iterator; ProjΘ(·) denotes a projection onto the feasible region Θ; g(k) :=∇bR(b(k),ω(k)) is a

sample path gradient and βk is an appropriate step size. We refer readers to van Ryzin and Vulcano (2008a)

for a complete account of derivation on sample path revenue and gradient.

Appendix B: Proofs of Theoretical Results

B.1. Proof of Proposition 1

Proof of Proposition 1. (Sufficiency.) Note that for any two sets S and T satisfying S ⊂ T ⊂J , we can

always find a sequence of sets (S,S1, S2, . . . , S|T−S|−1, T ) such that the sequence of sets are nested and that

any two neighboring sets differ only by one element. Therefore, without loss of generality, we may assume

that S and T differs only by one element k ∈J −S and T = S∪{k}. We want to show that P (j,S)≥ P (j,T )

for any j ∈ S ∪{0}.

Case 1: alternative k ∈ J(j) for some j ∈ S.

The cheapest available fare class on each flight remains the same after k is added to assortment S. The

regularity property holds as in the original MNL model.

Case 2.1: alternative k /∈ J(j) for any j ∈ S, and J(k)∩S =∅.

This is similar to Case 1. Alternative k will be the cheapest and only available fare class on its associated

flight after k is added to assortment S. The cheapest available fare classes on other flights remain the same.

The regularity property holds as in the original MNL model.

Case 2.2: alternative k /∈ J(j) for any j ∈ S, and J(k)∩S 6=∅.

Alternative k will be the cheapest available fare class on its associated flight when k is added to assortment

S. If f is the flight associated with product k, there exists an alternative l ∈ S that corresponds to the

cheapest fare class on flight f in assortment S, and l ∈ J(k). We have wk + vl ≥wl by assumption.

Given an assortment A ⊂ J , recall that I(j,A) is the indicator showing if alternative a is the cheapest

available fare class on its associated flight. We define the total attractiveness of products in assortment A

by w(A) :=∑

j∈A [waI(j,A) + va(1− I(j,A))]. It is not difficult to see that w(T )−w(S) =wk + vl −wl ≥ 0,

i.e., w(T )≥w(S), and that w(T ),w(S)≥ 0 by definition.

Page 34: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 34

We further define

v(j,A) :=

[waI(j,A) + va(1− I(j,A))] , if j ∈A,v0, if j = 0,0, otherwise,

which provides a universal expression of alternative j’s attractiveness when assortment A is offered. We

consider three different cases. If alternative j = l, by our assumption of nonnegative spikes, v(j,S) = wl ≥

vl = v(l, S ∪ {k}) = v(j,T ). If alternative j ∈ S − {l}, its status of whether or not being the cheapest fare

class on the associated flight does not change as k is added to assortment S, and thus v(j,S) = vj(1 −

I(j,S)) + wjI(j,S) = vj(1− I(j,S ∪{k})) + wjI(j,S ∪{k}) = v(j,T ). If alternative j = 0, it holds trivially

that v(j,S) = v(j,T ) = v0. Therefore, for any j ∈ S ∪{0}, we have v(j,S)≥ v(j,T ).

Combining the observations above, we have

P (j,S) = v(j,S)w(S) + v0

≥ v(j,T )w(T ) + v0

= P (j,T ), ∀j ∈ S ∪{0}.

(Necessity.) If the spiked-MNL choice model is regular, then for any two sets S and T satisfying S ⊂ T ⊂J ,

we have P (j,S)≥ P (j,T ) for any j ∈ S ∪{0}. Similarly as above, we assume without loss of generality that

T = S ∪{k} for some k ∈J −{k}. In particular, we examine the regularity property for the null alternative,

i.e., j = 0. As the case where J(k)∩S =∅ is not interesting, we can just check the case where J(k)∩S 6=∅.

Alternative k will be the cheapest available fare class on its associated flight when k is added to assortment

S. If f be the flight associated with product k, there exists an alternative l ∈ S that corresponds to the

cheapest fare class on flight f when assortment S is offered, and l ∈ J(k). By regularity, we have

P (0, S) = v0

w(S) + v0≥ v0

w(T ) + v0= P (0, T ).

Therefore, we have w(T )−w(S) =wk +vl−wl ≥ 0. Since assortment S and alternative k could be arbitrarily

selected, other than that k ∈J −S, the necessity of the condition follows. �

B.2. Proof of Corollary 1 and Theorem 1

Proof of Corollary 1. If a set T is efficient, by Proposition 2, there exists π ∈ Rm+ such that T is the

optimal solution to maxS{R(S)−πTQ(S)}. We write out explicitly the expressions of R(S) and Q(S) and

have

R(S)−πTQ(S) =∑j∈S

rjP (j,S)−πTajP (j,S).

For parallel flights, note that aj ∈ {0,1}m is a vector with its f -th element equal to 1 and all other elements

equal to 0, where f = f(j) is the flight that product j is associated with. We have πTaj = πf(j). We define

γj := rj−πf(j), and then we have R(S)−πTQ(S) =∑

j∈S γjP (j,S). It is not difficult to see that γj′ >γj for

all j ∈J and j′ ∈ J(j), since j, j′ are associated to the same flight with rj′ ≥ rj and πf(j′) = πf(j). Therefore,

optimization problem maxS{R(S)−πTQ(S)} is reduced to the optimization problem in (3). �

Page 35: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 35

Proof of Theorem 1. For clarity, we write out the explicit form of a product j, i.e., j = (i, f) where i∈ Iand f ∈F . By Corollary 1, if the non-revenue-ordered set T is inefficient, then there does not exist γ ∈Rmn

such that the following holds:

u−m∑f=1

n∑i=1

γi,fP ((i, f), T )< 0,

µl : u−m∑f=1

n∑i=1

γi,fP ((i, f),Al)≥ 0, ∀l ∈ Im,

zi,f : γi,f − γi+1,f ≥ 0, ∀i= 1, · · · , n− 1, ∀f ∈F .

By Farkas’ Lemma, the above system has no solution if and only if the dual system is feasible:∑l∈Im

µl = 1; µl ≥ 0, ∀l ∈ Im; zi,f ≥ 0, ∀f ∈F , ∀i∈ I;∑l∈Im

µlP ((i, f),Al)− zi,f + zi−1,f = P ((i, f), T ), ∀f ∈F , ∀i∈ I.

Let z0,f = 0, zn,f = 0 for ∀f ∈F . Since z ≥ 0, we can aggregate the above constraints, which impliesi′∑i=1

∑l∈Im

µlP ((i, f),Al)−i′∑i=1

P ((i, f), T ) = zi′,f ≥ 0, ∀i′ = 1, · · ·n− 1, ∀f ∈F ;

n∑i=1

∑l∈Im

µlP ((i, f),Al)−n∑i=1

P ((i, f), T ) = 0, ∀f ∈F .

This completes the proof. �

B.3. Proof of Theorem 2

We introduce the following notations to prove Theorem 2.

Af

j :={j′ ∈Af : rj′ ≥ rj}

Afj :={j′ ∈Af : rj′ < rj}

γ(A) :=∑j∈A

γjvj

γ(A) :=∑j∈A

γj [wjI(j,A) + vj(1− I(j,A))]

v(A) :=∑j∈A

vj

w(A) :=∑j∈A

[wjI(j,A) + vj(1− I(j,A))]

γ−f :=γ(A−f )

w−f :=w(A−f )

Γ(Af ) := γ(Af ) + γ−fv(Af ) +w−f + v0

Γ(Af ) := γ(Af ) + γ−fw(Af ) +w−f + v0

Proof of Theorem 2. We prove by contradiction. Assume there is an efficient but not revenue-orderedassortment A of the choice model. By Corollary 1, there is a vector γ satisfying the condition γj′ ≥ γj , forall j′ ∈ J(j) and j ∈J , and A is the optimal solution to the maximization problem maxS {

∑j∈S γjP (j,S)}.

Page 36: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 36

First observe that if a product j is in the optimal solution A, then γj must be nonnegative. This can bechecked by writing out the explicit form of the objective function, which is a weighed average of the γj ’sof the products chosen, assuming the null alternative has weight γ0 = 0. If there are negative γj ’s, we cangreedily pick the most negative one and remove the corresponding product from the solution. Since wj ≥ vjfor all j ∈ J , it ensures the objective value will be increased. The process continues until all products withnegative γj ’s are removed from the solution.

As A is assumed to be not revenue-ordered, we partition A=Af ∪A−f so that at least Af is not revenue-ordered. Let j ∈ Jf , such that j /∈Af but Afj 6= ∅. We want to show that Γ(Af ∪{j})> Γ(Af ), i.e.,

γ(Afj ) + γjvj + γ(Afj ) + γ−f

v(Afj ) + vj +w(Afj ) +w−f + v0

>γ(Afj ) + γ(Afj ) + γ−f

v(Afj ) +w(Afj ) +w−f + v0

⇐⇒ γj >γ(Afj ) + γ(Afj ) + γ−f

v(Afj ) +w(Afj ) +w−f + v0

.

As γj >γ(Af

j)

w(Afj

)by definition, we can show the above inequality by showing

γ(Afj )w(Afj )

≥γ(Afj ) + γ(Afj ) + γ−f

v(Afj ) +w(Afj ) +w−f + v0

⇐⇒γ(Afj )w(Afj )

≥γ(Afj ) + γ−f

v(Afj ) +w−f + v0

.

Note that Γ(Af )≥ Γ(Afj )≥ Γ(Afj ). The first inequality holds since A is the optimal solution, and the secondinequality holds because w≥ v> 0 and the γ’s w.r.t. the products in A are nonnegative. Then it holds that

γ(Afj ) + γ(Afj ) + γ−f

v(Afj ) +w(Afj ) +w−f + v0

≥γ(Afj ) + γ−f

v(Afj ) +w−f + v0

⇐⇒γ(Afj )w(Afj )

≥γ(Afj ) + γ−f

v(Afj ) +w−f + v0

.

Hence Γ(Af ∪{j})> Γ(Af ) holds, which contradicts the assumption. Therefore, the efficient sets of the choicemodel must be revenue-ordered. �

B.4. Proof of Theorem 3 and Corollary 2

Lemma 3. The support of the optimal CDLP solution contains only revenue-ordered assortments. Thatis, if α is optimal and α(S)> 0, assortment S must be revenue-ordered.

Proof of Lemma 3. This is a corollary of Proposition 4 in Liu and van Ryzin (2008), which states thatfor parallel flights, the support of an optimal solution to the CDLP consists of efficient sets. By Theorem 2in this paper, the efficient sets are revenue-ordered under the spiked-MNL model. �

We now prove the equivalence between CDLP and SBLP.Proof of Theorem 3. By Lemma 3, the support of an optimal solution a to CDLP contains only revenue-

ordered assortments. We can assume that the support is polynomial in size since the number of constraintsof CDLP is polynomial. By Proposition 4, a feasible solution x to SBLP with the same objective value can

Page 37: Assortment Optimization for Parallel Flights under a ...hwang679/papers/cao2018assortment.pdfCao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 4 Assortment

Cao, Kleywegt, and Wang: Assortment for Parallel Flights under Spiked-MNL Model 37

be found in polynomial time, which implies that zSBLP ≥ zCDLP . Now, by Proposition 3, given an optimal

solution x′ to the SBLP, a feasible solution to CDLP, a′, can be constructed from x′ in polynomial time,

such that a′ and x′ have the same objective value. This implies that zSBLP ≤ zCDLP . Together, we have

zSBLP = zCDLP . �

Proof of Corollary 2. By Theorem 3 and Proposition 3, an optimal solution α to the CDLP can be

constructed from an optimal solution x to the SBLP using Algorithm 1. In line 7 of Algorithm 1, if we pick

the largest index j ∈ Jf for each f ∈ F such that xj > 0, then S1 ⊃ S2 ⊃ · · · ⊃ Sk, and the support of the

optimal solution α contains a sequence of nested assortments. (See Figure 6 in Appendix A.3.) �