Upload
others
View
5
Download
0
Embed Size (px)
Citation preview
1
Lecture 1Revenue Management I ‐ basic concepts and methods
Cinzia CirilloUniversity of Maryland
Department of Civil and Environmental Engineering06/27/2016
Summer SeminarJune 27‐30, 2016
Zinal, CH
2
What is RM?RM is concerned with demand‐management decisions and the methodology andsystem required to make them.Decisions concerns:• When to sell? At what price?• How much buyers value a products?• How to segment buyers?• How to measure their willingness to pay?• How to design products?• Which channel should be used to sell?• How to manage pricing and allocation of products that are complements (seats on
two connecting airline flights) or substitutes (different car categories for rentals)?
3
Demand Management DecisionsA firm’s demand has multiple dimensions, including:1. The different products it sells;2. The types of customers it serves; their preferences for products, and their
purchase behavior;3. Time.Therefore Revenue Management addresses three basic categories of demand‐management decisions:• Structural Decisions: selling format, segmentation, volume discount, cancellation,refund.
• Price decisions: price across products categories; price over time, markdown.• Quantity decisions: how to allocate capacity to different segment; when to withholda product from the market and sale at later points in time.
4
An overview of Revenue Management System
• RM generally follows four steps*:• Data collection: Collect and store relevant historical data (prices, demand, casual
factors).• Estimation and forecasting: Estimate the parameters of the demand model: forecast
demand based on these parameters; forecast other relevant quantities like no‐show,cancellation rates, based on transaction data.
• Optimization: Find the optimal set of controls (allocations, prices, markdowns,discount, overbooking limits) to apply until the next re‐optimization.
• Control: Control the sale of inventory using the optimized control.
* from Tallury and van Ryzen, 2003
5
RM process Flow
6
Single Resource capacity control
• The problem is about optimally allocating capacity of a resource to different classesof demand.
• Examples: control the sale of different fare classes on a single flight leg; or the saleof hotel rooms for a given date at different rate classes.
• Many problems are network based (bundle of different resources); but in practicethey are often solved as a collection of single resources problems.
• The firm sells its capacity to n distinct classes that require the same resources.• Customers in each segment are eligible or can afford only the class corresponding to
their segment.
7
Type of controls
• Booking limits (bj): controls that limit the amount of capacity that can be sold to anyparticular class at a given point in time. Booking limits are partitioned or nested.– Partitioned booking limit divides the capacity into separate blocks (or buckets).– In nested booking limit the capacity available to different classes overlaps inhierarchical manner (with higher ranked classes having access to all the capacityreserved for lower ranked classes).
• Protection level (yj): specifies the amount of capacity to reserve (protect) for aparticular class or set of classes. They can be partitioned or nested.
• The relation between bj and yj isbj = C – yj‐1
8
Bid prices
• Bid‐price controls revenue‐ based rather than class‐based controls.• A bid‐price control sets a threshold price, such that a request is accepted if its
revenue exceeds the threshold price and rejected it its revenue is less than thethreshold price
9
Class 1 Class 2 Class 3
$100 $75 $50
12 10 8
1 30b
2 18b 1 12y
2 22y 3 8b
3 30y
$100
$75
$50
0 12 22 30
The relationship between booking limits , protection levels and bid prices,
10
Static ModelAssumptions:• The demand for the different classes arrives in non‐overlapping intervals in the
order of increasing prices of the classes.• Demands for different classes are independent random variables.• Demand for a given class does not depend on the capacity controls and more
importantly it does not depend on the availability of other classes. This is whatRM with customer choice behavior (that uses discrete choice models) tries toovercome.
• The static model assumes an aggregate quantity of demand arrives in a singlestage and the decision is simply how much of this demand to accept.
• There are no‐group bookings.• The static models assume risk‐neutrality.
11
Littlewood’s two class model
• The model assumes two products classes with prices• The capacity is C and there is no cancellation or overbooking. Demand for class j is
denoted Dj and its distribution is denoted by Fj (.). Demand for class 2 arrives first.• The problem is: how much class 2 demand to accept before seeing the realization of
class 1 demand.• Suppose that we have x unity of capacity remaining and we receive a request from
class 2. If we accept we collect revenue p2. If we don’t accept, we will sell unit x at p1if and only if demand for class 1 is x or higher.
• It makes sense to accept a class 2 request as long as its price exceed the marginalvalue:
21 pp
xDPpp 112
12
• There is an optimal protection level such that we accept class 2 if the remainingcapacity exceed and reject if the remaining capacity is or less.
• The optimal protection level is given by :
• is the optimal policy for class 1• is the optimal policy for class 2
*1y
*1y *
1y
1
211
*1
*1112 1or
ppFyyDPpp
*1y
*1
*2 ycb
Littlewood’s two class model
1and *1112
*1112 yDPppyDPpp
13
N‐class models
• We consider the case that n > 2.• Demand for n classes arrives in n stages, one for each class, with classes arriving in
increasing order of their revenue values.• Classes are indexed: p1 > p2 > ….> pn• Demand and capacity are most often assumed to be discrete, but they can be
modeled as continuous (for convenience).• This problem can be formulated as a dynamic program in the stages (classes), with
the remaining capacity x being the state variable.
14
Dynamic Programming Formulation
• At stage j:• The realization of the demand Dj, occurs, and we observe its value.• We decide on a quantity u of this demand to accept, which must be less that the
capacity remaining u <= x. The optimal control u* = u* (j,x, Dj).• The revenue pj u is collected and we proceed to the start of stage j – 1 with a
remaining capacity x – u.• Let Vj(x) denote the value function at the start of stage j. Once the value Dj is
observed, the value of u is chosen to maximize the current stage j revenue plus therevenue to go, or:
• Subject to the constraint
uxVup jj 1
xDu j ,min0
15
• The value function entering j, Vj(x), is then the expected value of this optimizationwith respect to the demand Dj.
• Hence the Bellman equation is:
• With boundary conditions:
• The values u* that maximize the right‐hand side of the Bellman equation for each jand x form an optimal control policy for this model.
uxVupExV jjxDujj
1,min0max
CxV ,...,1,0,00
16
Optimal policy
• Let’s define the expected marginal value of capacity at stage j –the expectedincremental value of the xth unit of capacity.
• From the Bellman equation, the optimal problem at stage j + 1:
• The optimal control can be expressed in terms of optimal protection level
• The optimal control at stage j + 1 is then:
1 xVxVxV jjj
u
zjjxDujj zxVpExVxV
j 11,min01 1max
1
*jy
xVpxy jjj 1* :max
1*
1* ,min,,1
Jj DyxDxju
17
• In practice, we can simply post the protection level in a reservation system andaccept requests first come, first serve until the capacity threshold is reached orthe stage ends. Thus the optimal protection level control at stage j + 1 requires noinformation about the demand Dj+1, which does not affect the future value ofcapacity .
• Deciding to accept or reject each request simply involves comparing currentrevenues to the marginal cost of capacity, and this comparison does not depend onhow many stage (j + 1) requests there are in total.
• Given that , this defines the nested protection structure.
• This is the same than applying booking limits:
*jy
*jy
xVj
xVxV jj 1**
2* ...1 nyyy
*1
* jj yCb
18
Computational approaches: Dynamic Programming
• This approach requires that both demand and capacity are discrete.• The inner optimization problem in the Bellman equation is simplified by using the
optimal protection level from the previous stage.
• where
• This procedure is repeated starting from j = 1 and working backward to j = n.
*11
*1 ,min,min jjjjjjj yxDxVyxDpExV
xVpxy jjj 1* :max
19
Heuristics
• Computing optimal controls for the static single resource model is not particularlydifficult. However, exact optimization models are not widely used in practice.Instead airline RM systems use heuristics to compute book limits and protectionlevels.
• Heuristics are simpler to code, quicker to run and generate revenues that in manycases are close to optimal.
• The most popular heuristics are EMSR‐a and EMSR‐b and are attributed toBelobaba. Both heuristics are based on the n‐class, static single resource model.They differ only in the way they approximate the probability.
• It is assumed that low revenue demand arrives before high‐revenue demand.
20
EMSR‐a• EMSR‐a is based on the idea of adding the protection levels produced by applying
Littlewood’s rule to successive pairs of classes.• Consider stage j + 1 in which demand of class j + 1 arrives at price pj+1.• The problem is to compute how much capacity to reserve for the remaining classes
j, j ‐1, …, 1.• The EMSR‐a method consider a single class k among the remaining classes and
compare the two classes k and j + 1 and then applies the Littlewood’s rule:
• These individual protection levels are added up to approximate the total protectionlevel
k
jjkk p
pyDP 11
j
k
jkj yy
1
1
21
• EMSR‐a is not optimal, can be excessively conservative and can produce protectionlevels that are larger than optimal.
• Suppose that at stage j + 1 all future demand has the same price pj = pj‐1 = … p1 = p• The EMSR‐a will set protection level so that:
j
k
jkk
j
k
j
k
jkk
jj
kjk
jjkk
yDPyDP
pp
yDP
pp
yDP
1
1
1 1
1
1
1
*
11
22
EMSR‐b
• EMSR‐b is again based on the approximation that reduces the problem at each stageto two classes. The approximation is based on aggregating demand instead ofprotection levels. The demand from future classes is aggregated and treated as oneclass with a revenue equal to the weighted average revenue.
• and let the weighted‐average revenue from classes 1, …, j. denoted ,be defined as:
j
kkj DS
1
jp
jp
j
kk
j
kkk
j
DE
DEpp
1
1
23
• Then the EMSR‐b protection level for class j and higher, yj is chosen by Littlewoodrule:
• when working with EMSR‐b it is common to assume demand for each class j isindependent and normally distributed:
• with mean and standard deviation of the aggregate demand.• Studies reports that EMSR‐b is consistently within 0.5 percent of the optimal
revenue, whereas EMSR‐a can deviate by nearly 1.5 percent from the optimalrevenue in certain cases.
j
jjj p
pySP 1
zy j
24
Dynamic Models
• Dynamic models relax the assumption that the demand for classes arrives in a strictlow‐to‐high revenue order. Instead, they allow for an arbitrary order of arrival, withthe possibility of interspread arrivals of several classes.
• The dynamic model require the assumption of Markovian (such a Poisson) arrivals tomake them tractable. This put restrictions on modeling different levels of variabilityin demand (which is the main limitation in practice).
• Dynamic models requires an estimate of the patterns of arrivals over time (thebooking curve)which might be difficult to estimate in certain applications.
• Some assumptions of the static models are retained: demand is assumed to beindependent between classes and over time and also independent of the capacitycontrols. The firm is also risk neutral.
25
Formulation
• We suppose that there are n classes with associated prices: p1 > p2 > ….> pn. Thereare T total periods (indexed with t).
• We also assume a sufficiently fine discretization of time, that at the most one arrivaloccurs. The probability of an arrival of class j in period t is denoted . Thisassumption implies:
• The periods need not to be of the same duration. Early in the booking process whendemand is low we might use a period of several days whereas during periods ofpeak booking activities we might use a period of less than an hour. Also arrivalprobabilities may vary with t, so the mix of classes that arrive may vary over time.
tj
n
jj t
1
1
26
Dynamic Program
• If x is the remaining capacity and denote the value function in period t.• Let R(t) be a random variable with R(t) = pj if a demand for class j arrives in period t
and R(t) = 0 otherwise.• u = 1 if we accept the arrival and u = 0 otherwise.• We want to maximize the sum of current revenue and the revenue to go:
• The Bellman equation is:
with V is the expected marginal value of capacity in period t + 1
xVt
uxVutR t 1
uxVtRExV
uxVutRExV
tut
tut
11,01
11,0
max
max
27
Traditional demand models in Revenue Management
In traditional RM problem, demand for each product is an independent stochasticprocess, not influenced by the firm’s availability controls.Static models of quantity‐based RM also assume that the demand for products arrivesin a specified order over the booking period, with demand for lower‐priced productsappearing first.The independent model does not endogenize customer behavior, neither choicebehavior nor purchase‐timing behavior.
28
Customer choice behavior
• The main limitation of the approaches described is that demand for each of theclasses is completely independent of the capacity controls being applied to theseller.
• The likelihood of receiving a request for any given class does not depend on whichother classes are available at the time of the request.
• The likelihood of selling a full fare ticket may very well depend on whether adiscount fare is available at the same time.
• Buy‐up: when customers buy a higher fare when a discount is closed.• Diversion: when customers choose another product when a discount is closed.
29
Why random utility models in Revenue Management
• Random utility models can be used to represent heterogeneity of preference amonga population of customers.
• They can model uncertainty in choice outcomes due to the inability of the firm toobserve all the relevant variables affecting a given customer’s choice.
• They can model situations where customers exhibit variety seeking behavior anddeliberately alter their behavior over time.
• Probabilistic choice can model customers whose behavior is unpredictable, that iscustomers who behave in a way that is inconsistent with well‐defined preferences.
30
Discrete Choice Models model definition
• Time is discrete and indexed with t.• In each period there is at most one arrival. The probability of arrival is denoted by ;
we assume that is the same for each time period.• There are n classes. The set of classes is denoted by N = {1,…, n}• Index 0 represents no‐purchase choice.• To each class we associate a price pi. p0 = 0 denote the revenue of no‐purchase.
31
• In each period t, the seller chooses a subset of classes to offer St.• The probability that a customer chooses class j St is denoted by Pj(St).• The no‐purchase probability is denoted by P0(St).• The probability that a sale of class j is made in period t is therefore Pj(St).• The probability that no sale is made is P0(St) + (1‐ ).• The first term is an arrival with no‐purchase and the second term is no‐arrival.• Given that we are working with probabilities we impose the following two
conditions:
Sjj
j
SPSP
SjSP
1
0
0
32
Formulation• C is the total capacity, T the number of time periods, t the current period and x the number
of remaining inventory units.• Then the Bellman equation for Vt(x).
• The difference between this formulation and the traditional is that the seller pre‐commits toopen set of classes S in each period, while in traditional models the seller observes the classof the request and then makes an accept or deny decision based on the class.
• In traditional models the class of an arriving request is independent of the controls.• In choice based models, the class that an arriving customers chooses depends on which
class is open.
xVxVpSP
xVSPxVpSPxV
tSj
tjjNS
SjttjjNSt
11
101
max
11max
33
Discrete Choice Analysis (DCA): Background• DCA basic problem is the modeling of choice from a set of mutually exclusive and
collective exhaustive alternatives.• The operational model consists of parameterized utility functions in terms of
observable independent variables (exogenous) and unknown parameters(coefficients) to be estimated.
• A decision maker is modeled as selecting the alternative with the highest utilityamong those available at the time a choice is made.
• The parameter values are estimated from a sample of observed choices made bydecisions makers when confronted with a choice situation.
• It is impossible to specify and estimate a discrete choice model that will alwayssucceed in predicting the chosen alternatives by all individuals.
• Therefore we adopt the concept of random utility, an idea that first appeared inpsychology.
• The true utilities of the alternatives are considered random variables, so theprobability that an alternative is chosen is defined as the probability that it has thegreatest utility among the available alternatives.
34
Specification of disturbances
35
Probit Models
36
Logit Models (MNL)
37
Nested Logit (NL)
• NL models are appropriate when the set of alternatives faced by the decision makercan be grouped in nests.
• These nests must have the following properties:– IIA holds within each nest.– IIA does not hold in general for alternatives in different nests.
Dep at 9:00AM Dep at 12:00 Not BUY
BUY
38
NL Choice Probabilities
• Let the set of alternatives j be partitioned into K non‐overlapping subsetsdenoted B1, B2,…,Bk and called nests.
• The utility that person n obtains from alternative j in nest Bk is denoted asusual: , where Vnj is observed by the researcher and εnj is anon‐observed random variable.
• The NL model is obtained by assuming that the vector of unobservedutility, εn = [εn1,…, εnJ] has cumulative distribution:
/
– Where: λk measures the degree of independence in unobserved utility amongalternatives in nest k. The closer the value is to 1, the greater the independence(i.e., lower correlation between alternatives).
39
NL Choice Probabilities (cont.)
• The previous distribution gives rise to the following choice probability foralternative i є Bk:
⁄ ∗ ∑ ⁄
∑ ∑ ⁄
• The parameter λk can differ over nests, reflecting different correlation amongunobserved factors within each nest.
• The value of λk must be within a particular range for the model to be consistentwith utility‐maximization (UM) behavior.
• If the value is between 0 and 1, then the model is consistent with UM for all possible values of theexplanatory variables.
• For λk >1, the model is consistent with UM for some range of explanatory variables, but not for allvalues.
• For λk < 0, is inconsistent with UM, implying that improving the attributes of an alternative coulddecrease its probability of being selected.
40
Cross Nested Logit (CNL)• In some cases alternatives have unobserved attributes similarto those in different nests. In this case, it is necessary to allowthe alternative to be a member of different nests.
Dep at 9:00AM Dep at 12:00 Dep at 12:00
Dep Today
Dep at 8:00PM
Dep Tomorrow
41
Mixed Logit Models (ML)
• Mixed logit (ML) is a highly flexible model that can estimate any RUM.
• ML overcomes the three major limitations of standard logit:– Random taste variation.– Unrestricted substitution patterns.– Correlation in unobserved factors over time.
• Unlike probit, ML is not restricted to a normal distribution. Like probit, ML havebeen known for many years but just recently increased in use with the advance ofsimulation.
42
ML Choice Probabilities (cont.)
• ML models’ choice probabilities are expressed as follows:
Where:– f(β) is a density function.– β is a set of coefficients.– Xni is the set of values of size N.
43
ML Random Coefficients
• ML probability can be derived from utility‐maximization behavior inmany ways, random coefficients being the most popular one.
• Random coefficients represent the variation over people within acertain group (e.g., income level, drivers, bikers, elderly) in thevalue they put on a certain utility (i.e., cost).
– Where: Unj is the utility of person n for alternative j.εnj is a random term that is iid extreme value.
• The decision maker knows the value of his own βn and εnj for all jand chooses alternative i if and only if Uni > Unj V j ≠ i
44
ML Error Components
• ML can be used without random‐coefficients interpretation byrepresenting error components that create correlations amongthe utilities for different alternatives:
– Where: xnj and znj are vectors of observed variables of alternative j.α is a vector of fixed coefficients.μ is a vector of random terms with zero mean.εnj is a random term that is iid extreme value.
45
ML Error Components (cont.)• The terms in znj are random components that, along with εnj, define the stochastic
portion of utility.• The random part of the utility is ηnj = μnznj + εnj, which can be correlated over
alternatives depending on the specification of znj.• For standard logit, znj is identically zero. Where as, if correlation exists (i.e. non‐zero
components), then: Cov (ηni, ηnj) = zniWznj, where W is the covariance of μn.• Random coefficients and error components are formally equivalent. However, each
one affects the researcher’s ML specification differently.
46
ML Panel Data
• When using panel data, the integrand involves a product of logitformulas, one for each time period.
– Where:
L∑
• Lagged dependent variables can be added to ML without adjustingthe probability formula or simulation method.
47
Latent Class Model (LC)
47
48
LECTURE 2REVENUE MANAGEMENT II ‐ CHOICE BASED METHODS
Cinzia CirilloUniversity of Maryland
Department of Civil and Environmental Engineering06/28/2016
Summer SeminarJune 27‐30, 2016
Zinal, CH
49
The Railways problem
• It is common to have only one passenger railway operating in a market.• Railways do not face direct price competition and have greater price flexibility than
do airlines and hotels.• Railways compete with other modes of transportation: airlines; automobiles, ferries,
or buses. Prices are affected by the prices and availability of these alternatives.• Pricing for trains also depends on the speed of the train, the time of operation and
the distance of travel.• High speed trains offer services that are comparable or better than airlines and are
priced higher than ordinary trains.• The passenger mix varies depending on weather is short‐haul or long‐haul. (i.e.
Washington New York is business, Washington Chicago is mostly discretionary).
50
• For short haul a small number of fares is offered by railways (3 or 4) with advancepurchase restriction of a certain number of days (buckets).
• For long‐haul trips product differentiation is based more on passengercharacteristics (youth rail passes, senior passes, family packages)
• Cancellation fees and other penalties normally apply to discount fares.• Amtrak reports to use five fare buckets, opening and closing them depending on
demand to come, with the capacity decisions made jointly between the train orcorridor manager and the central RM department.
51
Research Objectives
51
1. Develop passenger choice models of ticket purchase timing
2. Develop RM optimization models which optimize ticket revenue
3. Develop ticket cancellation and exchange model
•Capture heterogeneous behavioral preferences across categories of travelers•Feasible to be input into RM optimization model
•Simultaneously optimize for ticket pricing and seat allocation strategy•Allow passengers responses to realistically respond to RM policy based on purchase timing and variation in demand volume
•Account for inter‐temporal effects of passengers decision based on a dynamic discrete choice model (DDCM)•Capable of predicting new departure times of the exchanged tickets•Develop an efficient algorithm to approximate dynamic programming problem in the DDCM
RM application
Demand
Modeling
Demand
Modeling
52
Research Framework
52
1.1 Passenger Demand Functions
1.2 Choice Model of Ticket Purchase Timing
Fare ($) Fare ($) Fare ($) Fare ($) Fare ($) Fare ($) Fare ($) Fare ($)
3. Choice Model of Ticket Cancellation and Exchange
2. RM Revenue Optimization
•Ticket Pricing•Seat Allocation
Sale horizon Departure
53
Literature Review: Static Choice Model in RM
53
There is limited empirical studies in the application of discrete choice model to revenue management (RM) and in particular in Railway Industry. Passenger heterogeneity is an important aspect of modeling passenger demand. There has been limited number of studies accounting for heterogeneity of passenger behavior across bookings, which is a major characteristic of the railway market.
54
Literature Review: RM Optimization Framework
54
55
Research Objective
• Account for sequential network characteristic of the railway where the leg capacity is shared among multiple legs.
• Allow the model to account for passenger heterogeneity without trip purpose information (unobservable in the booking data).
• Allow for joint seat capacity and fare pricing in the optimization problem.
55
56
Methodology• Modes accounting for heterogeneity includes
– Mixed logit– Latent class model
• Latent Class (LC) Model groups observations into meaningful segments whichhave similar needs, constraints, and preferences, i.e. business‐oriented andleisure‐oriented travelers.
• Segmentation in LC is done through probabilistic approach which linkexplanatory variable such as trip’s characteristics and passenger profile into classmembership model when assigning passenger into classes.
• The class membership model is combined with choice model enabling the modelto account for differences in choice behavior between different segments ofthe market.
56
57
Data Analysis• The booking data of the intercity passenger railway on XX Corridor over two months
period in 2009 is used for this research.• Booking data of the first month is used for the analysis. This research focuses on
– Business class passenger– Confirmed and paid reservations– Northbound tripThis results in the final data set of 110,828 reservation records.
57
58
Data Analysis
58
0
1'000
2'000
3'000
4'000
5'000
6'000
7'000Num
ber o
f passengers
Early morning (0:00 am‐6:29 am)
AM peak (6:30am‐8:59 am)
AM off peak (9:00 am‐11:59 am)
PM off peak (12:00 pm‐3.59 pm)
PM peak (4:00 pm‐6:29 pm)
evening (18:30 pm‐23:59 am)
0
5'000
10'000
15'000
20'000
25'000
30'000
35'000
40'000
45'000
0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30
Num
ber of boo
ked seats
Day before departure
6065707580859095
100105110115120125130135140145150155160165170175180185
0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30
Fare pric
e ($)
Day before departure
DC‐NYP NYP‐BOS
59
Proposed Passenger Choice Model• Sale horizon is assumed to be 31 days (less than 1 % purchased the ticket earlier than 30 days before
departure):• From 30 days before departure (booking day 1)• Until departure date (booking day 31)
• Fare price of each origin destination varies over the sale horizon (monthly averaged price for eachbooking day is used to approximate booking day specific fare price).
• Passenger is assumed to make decision of which booking day to purchase the ticket corresponded to theirfare price assuming that :• They have perfect information about the fare price over the sale horizon• They know their trip schedule at least 30 days before departure
March 1st March 31st
31 choices of booking day February 23rd(Booking Day1)
March 25th(Booking Day31)
Departure
59
60
Grouping Origin Destination Pairs
• There are 16 stations for this railway service which results in the total of119 origin destination pairs for the north bound trip.
• To reduce the number of models, and avoid origin destination pair withsmall sample size, the stations are aggregated into 4 groups.
• All the models from group to group and within group are estimated, butonly the 3 models are selected to show numerical results here.
Origin/Destination Station group1 Station group2 Station group3 Station group4
Station group1 ‐ ‐ ‐ ‐
Station group2 Medium dist ‐ ‐ ‐
Station group3 ‐ ‐ ‐ ‐
Station group4 ‐ Long dist ‐ Short dist
60
61
General Model Specification• The sale horizon is grouped into 6 booking periods to allow parameter from the choice model to be
specific to each booking period.• The booking period with approximately the same number of reservation are grouped together.• These 6 booking periods are:
– Period1: Booking day1 to booking day 11,– Period2: Booking day 12 to booking day 20,– Period3: Booking day 21 to booking day 25,– Period4: Booking day 26 to booking day 29,– Period5: Booking day 30,– Period6: Booking day 31.
• In LC model, passenger class is segmented by– Departure time of day
(1) early morning (0:00 am‐6:29 am), (2) a.m. peak (6:30am‐8:59 am),(3) a.m. off‐peak (9:00 am‐11:59 am), (4) p.m. off‐peak (12:00pm‐15:59 pm),(5) p.m. peak (16:00 pm‐18:29 pm), (6) evening (18:30 pm‐23:59 am).
– Departure day of week
62
Long Distance Model ResultMNL ML LC MNL with Socioeconomics
Choice Model Class1 Class2Variable Est T-Stat Est T-Stat Variable Est T-Stat Est T-Stat Variable Est T-Statadvbk -0.184 42.872 * -0.370 141.708 * advbk -0.139 -21.091 * -0.899 -18.162 * advbk -0.248 43.103 *price.period1 -0.006 3.634 * -5.318 77.001 * price.period1 0.000 0.111 0.014 1.560 price.adult -0.024 10.139 *price.period2 -0.012 9.173 * (2.830) (60.153) * price.period2 -0.003 -1.684 -0.082 -2.069 * price.child (2-15) -0.004 0.279price.period3 -0.011 10.783 * price.period3 -0.005 -2.778 * -0.049 -5.557 * price.senior (62+) -0.023 9.401 *price.period4 -0.010 10.380 * price.period4 -0.001 -0.737 -0.069 -7.931 * price.unacc child (8-11) 0.001 0.072price.period5 -0.005 5.287 * price.period5 0.003 1.789 -0.077 -8.052 * price.student advantage -0.010 2.838 *price.period6 -0.003 3.366 * price.period6 -0.010 -4.348 * -0.059 -6.941 * price.adultAAA member -0.010 3.720 *
price.childAAA member - - -Class Model Class1 Class2 price.military adult -0.028 7.638 *Class Size 0.619 0.381 price.diabled adult -0.024 4.788 *Variable Est T-Stat Est T-Stat price.others -0.043 17.059 *Intercept 0.022 0.595 -0.022 -0.595 price.period6 -0.019 8.249 *Monday -0.317 -11.278 * 0.317 11.278 *
wknd.period1 1.240 25.231 * 1.897 20.459 * Tuesday -0.254 -8.688 * 0.254 8.688 * wknd.period1 2.012 40.426 *wknd.period2 1.099 27.923 * 0.681 11.363 * Wednesday -0.290 -9.219 * 0.290 9.219 * wknd.period2 0.878 34.139 *wknd.period3 0.407 13.106 * 0.347 8.765 * Thursday -0.201 -6.691 * 0.201 6.691 * wknd.period3 -0.044 1.492
wknd.period4 0.466 14.830 * 0.041 0.977 Friday -0.128 -4.635 * 0.128 4.635 * wknd.period4 0.050 1.751wknd.period5 -0.472 13.477 * -0.483 10.257 * Saturday 0.066 1.548 -0.066 -1.548 wknd.period5 -0.133 4.703 *wknd.period6 0.260 9.369 * 0.516 11.436 * Sunday 0.085 0.000 -0.085 0.000 wknd.period6 0.236 7.935 *
Early morning 1.159 20.510 * -1.159 -20.510 *AM peak 1.058 24.441 * -1.058 -24.441 *AM off peak 0.548 17.741 * -0.548 -17.741 *PM off peak 0.170 6.178 * -0.170 -6.178 *PM peak 0.186 6.681 * -0.186 -6.681 *Evening 0.074 0.000 -0.074 0.000
No. of observation 37,373 37,373 37,373 37,373Rho-squared: 0.2970 0.3397 R²(0) 0.3428 0.2904Adjusted rho-squared: 0.2969 0.3396 R² 0.2442 0.2903Log-likelihood at optimal -90,226 -84,742 -89,402 -91,070Log-likelihood at zero -128,338Log-likelihood at constant -90,487
*Statistically significant at 5% significance level. Parenthesis indicates standard deviation.
63
Medium Distance Model ResultMNL ML LC MNL with Socioeconomics
Choice Model Class1 Class2Variable Est T-Stat Est T-Stat Variable Est T-Stat Est T-Stat Variable Est T-Statadvbk -0.160 30.287 * -0.392 100.986 * advbk -0.084 -10.870 * -0.672 -16.043 * advbk -0.293 69.420 *price.period1 -0.018 6.775 * -5.421 35.523 * price.period1 0.017 3.864 * -0.014 -0.917 price.adult -0.064 27.225 *price.period2 -0.024 9.831 * (4.252) (29.595) * price.period2 0.018 3.851 * -0.130 -2.310 * price.child (2-15) -0.071 5.034 *price.period3 -0.021 9.799 * price.period3 0.018 3.826 * -0.073 -4.953 * price.senior (62+) -0.063 24.982 *price.period4 -0.018 8.377 * price.period4 0.022 4.696 * -0.087 -5.805 * price.unacc child (8-11) -0.063 10.836 *price.period5 -0.012 5.593 * price.period5 0.029 6.196 * -0.093 -6.019 * price.student advantage -0.054 19.977 *price.period6 -0.008 4.074 * price.period6 0.010 1.792 -0.077 -5.371 * price.adultAAA member -0.057 23.248 *
price.childAAA member - - -Class Model Class1 Class2 price.military adult 0.396 0.786Class Size 0.566 0.434 price.diabled adult -0.063 7.736 *Variable Est T-Stat Est T-Stat price.others -0.088 34.916 *Intercept -0.232 -2.095 * 0.232 2.095 * price.period6 -0.058 24.431 *Monday 0.087 0.971 -0.087 -0.971
wknd.period1 1.163 21.812 * 4.299 57.340 * Tuesday 0.239 2.707 * -0.239 -2.707 * wknd.period1 1.582 30.329 *wknd.period2 1.203 29.228 * 1.747 43.787 * Wednesday 0.138 1.519 -0.138 -1.519 wknd.period2 0.855 23.879 *wknd.period3 0.751 19.745 * 0.168 4.589 * Thursday 0.104 1.128 -0.104 -1.128 wknd.period3 0.389 12.255 *wknd.period4 0.537 17.042 * -0.664 20.754 * Friday 0.440 5.727 * -0.440 -5.727 * wknd.period4 0.398 12.808 *wknd.period5 -0.149 3.310 * -1.187 27.385 * Saturday 0.463 5.288 * -0.463 -5.288 * wknd.period5 0.296 6.590 *wknd.period6 -0.504 13.923 * -1.353 30.550 * Sunday 1.300 0.001 -1.300 -0.001 wknd.period6 -0.520 11.507 *
Early morning 0.861 10.529 * -0.861 -10.529 *AM peak 0.737 12.216 * -0.737 -12.216 *AM off peak 0.313 6.574 * -0.313 -6.574 *PM off peak -0.006 -0.162 0.006 0.162PM peak -0.191 -5.121 * 0.191 5.121 *Evening -0.115 0.000 0.115 0.000
No. of observation 29,514 29,514 29,514 29,514Rho-squared: 0.2779 0.3500 R²(0) 0.2486 0.2760Adjusted rho-squared: 0.2778 0.3499 R² 0.1569 0.2758Log-likelihood at optimal -73,182 -65,877 -72,809 -73,383Log-likelihood at zero -101,351Log-likelihood at constant -73,807
*Statistically significant at 5% significance level. Parenthesis indicates standard deviation.
64
Short Distance Model ResultMNL ML LC MNL with Socioeconomics
Choice Model Class1 Class2Variable Est T-Stat Est T-Stat Variable Est T-Stat Est T-Stat Variable Est T-Statadvbk -0.534 20.090 * -0.602 58.485 * advbk -1.164 -6.080 * -0.327 -10.734 * advbk -0.674 32.119 *price.period1 0.056 7.863 * -6.945 25.872 * price.period1 -0.378 -1.451 -0.066 -2.898 * price.adult -0.215 22.716 *price.period2 0.011 2.760 * (3.371) (20.846) * price.period2 -0.518 -1.953 -0.083 -3.591 * price.child (2-15) - - -price.period3 -0.007 2.626 * price.period3 -0.448 -2.712 * -0.095 -3.954 * price.senior (62+) -0.209 17.927 *price.period4 -0.019 11.389 * price.period4 -0.606 -3.504 * -0.089 -3.597 * price.unacc child (8-11) - - -price.period5 -0.016 12.133 * price.period5 -0.595 -3.399 * -0.081 -3.202 * price.student advantage -0.099 5.940 *price.period6 -0.008 8.293 * price.period6 -0.426 -2.788 * -0.090 -4.031 * price.adultAAA member -0.158 11.881 *
price.childAAA member - - -Class Model Class1 Class2 price.military adult -1.084 18.308 *Class Size 0.569 0.431 price.diabled adult -0.227 6.498 *Variable Est T-Stat Est T-Stat price.others -0.238 19.380 *Intercept 0.181 1.741 -0.181 -1.741 price.period6 -0.204 21.406 *Monday 0.335 3.964 * -0.335 -3.964 *
wknd.period1 2.701 9.230 * 3.390 6.153 * Tuesday 0.231 2.860 * -0.231 -2.860 * wknd.period1 5.381 18.684 *wknd.period2 1.560 7.202 * 1.483 3.920 * Wednesday 0.318 3.863 * -0.318 -3.863 * wknd.period2 1.900 9.105 *wknd.period3 -0.268 1.183 -0.255 0.875 Thursday 0.139 1.711 -0.139 -1.711 wknd.period3 -0.674 3.033 *wknd.period4 -0.639 4.205 * -1.129 4.460 * Friday 0.163 1.929 -0.163 -1.929 wknd.period4 -1.646 11.372 *wknd.period5 -0.758 4.708 * -1.108 3.839 * Saturday 0.279 2.075 * -0.279 -2.075 * wknd.period5 -1.577 8.975 *wknd.period6 0.404 4.267 * 0.618 2.516 * Sunday 0.200 0.000 -0.200 0.000 wknd.period6 -0.384 3.444 *
Early morning -1.036 -5.080 * 1.036 5.080 *AM peak -0.841 -8.395 * 0.841 8.395 *AM off peak -0.216 -2.479 * 0.216 2.479 *PM off peak -0.002 -0.021 0.002 0.021PM peak -0.207 -2.551 * 0.207 2.551 *Evening 0.081 0.000 -0.081 0.000
No. of observation 4,454 4,454 4,454 4,454Rho-squared: 0.5637 0.5493 R²(0) 0.6766 0.5611Adjusted rho-squared: 0.5628 0.5487 R² 0.4528 0.5599Log-likelihood at optimal -6,674 -6,894 -6,356 -6,713Log-likelihood at zero -15,295Log-likelihood at constant -6,478
*Statistically significant at 5% significance level. Parenthesis indicates standard deviation.
65
Probability of passenger belonging to class 1 (long distance model)
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Monday Tuesday Wednesday Thursday Friday Saturday Sunday
Early morning (0:00 am‐6:29 am)
AM peak (6:30am‐8:59 am)
AM off peak (9:00 am‐11:59 am)
PM off peak (12:00 pm‐3.59 pm)
PM peak (4:00 pm‐6:29 pm)
evening (6:30 pm‐11:59 pm)
Class1: Business oriented trip 61.9 %WTP to delay ticket purchase ( ) $ 13.9 – $ 99.29 per day(compared to class2 $ 11.03 – $ 18.38 per day)
priceadvbk /
66
Probability of passenger belonging to class 1 (medium distance model)
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Monday Tuesday Wednesday Thursday Friday Saturday Sunday
Early morning (0:00 am‐6:29 am)
AM peak (6:30am‐8:59 am)
AM off peak (9:00 am‐11:59 am)
PM off peak (12:00 pm‐3.59 pm)
PM peak (4:00 pm‐6:29 pm)
evening (6:30 pm‐11:59 pm)
Class1: Business oriented trip 56.6 %WTP to delay ticket purchase ( ) ‘price insensitive’(compared to class2 $ 5.18 – $ 46.67 )
priceadvbk /
67
Probability of passenger belonging to class 1 (short distance model)
0.0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
Monday Tuesday Wednesday Thursday Friday Saturday Sunday
Early morning (0:00 am‐6:29 am)
AM peak (6:30am‐8:59 am)
AM off peak (9:00 am‐11:59 am)
PM off peak (12:00 pm‐3.59 pm)
PM peak (4:00 pm‐6:29 pm)
evening (6:30 pm‐11:59 pm)
Class1: Leisure oriented trip 56.9 %WTP to delay ticket purchase ( ) $ 1.92 – $ 3.08 per day(compared to class1 $ 3.64 – $ 4.99 per day)
priceadvbk /
68
Comparison of Model Fit
• Mixed logit model provides the best statistical fit for the long distance and mediumdistance markets.
• Latent classmodel provides the best statistical fit for the short distance market.• Results shows that segmenting passengers by booking period provides better fit
than segmenting passengers by socioeconomic information.
69
Proposed Optimization Model
• Problem Framework– The objective is to maximize ticket revenue from business class passengerfor each northbound train trip (south end to north end station).
– The decision variables are• Fare price to be charged for each origin destination pair on each booking day overthe sale horizon ( ) .
• The fraction of demand to accommodate for each origin destination pair ( ).– Passenger is assumed to respond to fare price by
• Adjusting their booking time based on MNL choice model based on utilitymaximization assumption.
• The number of passenger demand for each origin destination is influenced by thefare price over the sale horizon through log‐linear demand function( ) .t
jiD ,
djifare ,
ji ,
69
70
Problem Notation
70
71
Problem Formulation
71
72
Numerical Result• In this example, the train departing from south end station on Friday, March 13, 2009 at 4:00 PM is considered.
72
Entire Network RevenueExisting Revenue ($) New Revenue ($)
Total Revenue 73,813 87,650Revenue Improvement (%) 18.75
73
Numerical example of fare resultOrigin station 13, Destination station 10
73
0
20
40
60
80
100
120
140
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33
Fare ($
), Dem
and distrib
ution (%
)
Booking day
7474
0
10
20
30
40
50
60
70
80
90
100
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33
Fare ($
), Dem
and distrib
ution (%
)
Booking day
Numerical example of fare resultOrigin station 13, Destination station 12
7575
0
10
20
30
40
50
60
70
80
90
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33
Fare ($
), Dem
and distrib
ution (%
)
Booking day
Numerical example of fare resultOrigin station 4, Destination station 1
76
Conclusions
• Accounting for heterogeneous passenger choice model (LC) in this research allowsthe model result to represent difference in passenger behavior across differentdeparture time of day/ day of week.
• The proposed optimization model shows that MNL passenger choice model could beincorporated in the network railway RM problem where joint pricing and seatallocation can be solved simultaneously. The proposed model allows for 18.75 % inrevenue improvement.
• Incorporating heterogeneous passenger choice model (Latent Class, Mixed Logit) inrevenue optimization could allow for better price differentiation across marketsegments.
• Dynamic discrete choice models are expected to provide a significant improvementin prediction accuracy by offering the possibility to account for the evolvingcharacteristics of the market over time and for sequential purchasing decisions.
76
77
Dynamic Discrete Choice of Ticket Cancellation & Exchange
77
• Ticket reservation data of US intercity passenger railway of coach class northbound trip in March, 2009.• This data set contains 155,175 reservation records.
78
Data Analysis (Cont’d)
78
Model first exchange decision
Model departure time exchange decision or exchange with no departure time change
79
Sample Selection
• Weekday coach class passenger trips from single origin to 3 destinations.• Passengers who purchase tickets 15 days before departure.
– 16 time periods (15 days before departure – departure day)• Total 696 individual reservation records.
79
80
Model Objectives
80
81
Choice Set Structure
t=0 Buy Keep X1 X2 X3 X4 X5 X6 X7 X8 X9 X10 X11 X12 X13 X14 X15 Cnl
Keep X1 X2 X3 X4 X5 X6 X7 X8 X9 X10 X11 X12 X13 X14 X15 Cnl
Keep X1 X2 X3 X4 X5 X6 X7 X8 X9 X10 X11 X12 X13 X14 X15 Cnl
Keep X1 X2 X3 X4 X5 X6 X7 X8 X9 X10 X11 X12 X13 X14 X15 Cnl
Keep
t=15 Depart Travel X1 X2 X3 X4 X5 X6 X7 X8 X9 X10 X11 X12 X13 X14 X15 Cnl
Exchange decision (5AM-7PM) Cancel
(15 days before departure)
16 time periods
Choice Set of 17 alternatives: {Keep, Exchange (15 alts), Cancel)
81
82
Dynamic Discrete Choice Model Formulation
82
• Each passenger can be in one of the two possible statein the decision process (has not changed the ticket)out of the decision process (already changed the ticket)
• In each time period, passenger in the decision process has two options:– Change the ticket and make the choice which is a set of exchange decision (departure time specific)
and cancel decision• obtain a terminal period payoff:
– Keep the original ticket• obtain a one‐period payoff:
• Let denotes optimal time to change the ticket, the passenger stopping problem becomes :
0i ts 1i ts
( 0 )i ts ( )tj
ijtu
ik tU
1
1 , , , , m a x m a xi t iJ t ik t ik t i jjk t
D u u U t U E u
I
83
Dynamic Discrete Choice Model Formulation
83
• Let
• Assuming that is Gumbel distributed with a scale factor equals to 1.• Based on the dynamic programming theory, the passenger’s decision can be transformed from into:
• The reservation utility is defined by function:
• And consider the optimal policy:
• The problem can be simplified as:
m a xi t i j tju
I
i t
, 1, m a x , i t ik t i t ik t i tD U U E D
, 1i t ik t i tW U E D
i f o th e rw is e
i t i t i t
i t
WW
m a x ( , )i t i t i tD W
84
Log‐likelihood Estimation
84
• Keep ticket probability– Passenger i keep the ticket when . Let denotes the probability of keeping ticket:
– Where is the mode of the distribution of , that is
• Change ticket probability– The choice specific ticket change probability is:
i t i tW 0i t
0 k e e p | 0i t i t i t i tP W P s
, e x p [ e x p { ( )} ]i t i t i t i tF W W r
i tr i t1ln ( , , )i j ti t VV
itr G e e
0 (1 ) ,i j t i t i j t i l tP U U l j
85
Log‐likelihood Estimation (cont’d)
85
• The parameter estimation is performed by maximizing the likelihood function:
• The decision probability is presented as:
• Passenger in the state has and thus, the complete likelihood functionis
• Where the decision probability includes
1 0
[ d e c is io n ]N T
iti t
P
L
d e c is io n d e c is io n | 0 0 d e c is io n | 1 1 i t i t i t i t i t i t i tP P s P s P s P s
0 1 itP s 0its 1 0itP s
1 0
d e c is io n , 0 N T
it i ti t
P s
L
0d e c is io n , 0 { , }i t i t i t i j tP s
86
Dynamic Estimation Process: Conceptual Procedure
86
Calculate
Calculate
Calculate
Calculate
Using 2 Step Look‐ahead algorithm
, 1i tE D
i tW
0i t
i j t
, 1i t ik t i tW U E D
( )0 ( )e x p i t i tW r
i t e
0 (1 ) ,i j t i t i j t i l tP U U l j
87
Dynamic Estimation Process: Conceptual Procedure
87
• Estimate in time period t• Assumption:
– At each time period, passenger has expectation over 2 time periods in thefuture.
– At time period 0, anticipate period 1,2
, 1i tE D
3 0E D
88
Dynamic Estimation Process: Scenario Tree for 2‐SL
88
• Calculation process for t=0; obtain 1E D
t=3
t=2
t=1
t=00[ ]E D
1[ ]E D 1[ ]E D
2[ ]E D2[ ]E D
3[ ]E D3[ ]E D
keep change
0 0 10 , [ ]i ikA t t W U E D
1 1 1 2[ ] { m a x [ , [ ] ]}ikE D E v U E D
keep change
keep change
2 2 2 3[ ] { m a x [ , [ ] ]}ikE D E v U E D
3[ ] 0E D
89
Experiment Using Real Data
89
• Trip Characteristics– Origin/destination as the real data– Group size– Departure day of week– Departure time of day
• Current Ticket– Fare of the original ticket changes based on historical data
• Potential Tickets– Fare of all departure time offered for the same departure day change based on historical data
• Choice– Total of (16 x 696) observations are generated (once passenger change s the ticket, he will no
longer be in the decision process in the next time period)• This results into a total of 7,268 observed decisions valid for model estimation.
Observed from the real data
90
Utility Function Specification: Real Data
90
5 5 0 _ 5
0 _
19
...........................................................
.................................................
..........
i t cost t b dfi exc i t i
ijt cost jt b dfi exc ijt i
i t cost
U f f t
U f f t
U
19 0 _ 19
1 3 0 _
1 3
if 15 if 15
t b dfi exc i t i
ict cnl gp m r ev M on Fri
STA STA ref b dfi cnl ict i
ikt iikt
ikt i
f f t
U ASC gp m r ev M on Fri
STA STA f t
c tU
t
15 Exchange alternatives (5:00 – 19:00).
91
Estimation Result: Real Data
91
92
Validation: Predicted Choice Probability
92
93
Real Data Validation: No. of Exchange
93
94
Real Data Validation: No. of Cancel
94
95
Real Data Validation: No. of Keep
95
96
Summary: DDCM Results
96
• The model has been successfully estimated using both simulated and real data.– Estimations results indicate that the DDCM provides more intuitive results when
compared to multinomial logit (MNL) models.– DDCM outperforms MNL in reproducing the initial values assumed in the simulated data
set and in reproducing the actual choices in both synthetic and real data.• Real Data Experiment:
– Covariates associated with low tendency of cancellation are:• Group traveler, evening departure (original departure time from 3:00‐7:00 PM.), originaldeparture on Friday, and STA1 destination.
– Covariates associated with high tendency of cancellation are:• Morning departure (original departure time from 5:00‐9:00 AM.), original departure on Monday,and STA3 destination.
97
Conclusions
97
•Advanced demand models can be estimated on ticket reservation data and that market segmentation can be obtained even with limited knowledge of socio‐demographic characteristics of the population.
• Latent class model provides the best prediction with least error based on root mean square error (RMSE) while the ML provides the best statistical fit. • “The models that perform better in prediction are not necessarily the same that perform better in terms of model fit”
1. Passenger Choice Model accounting for Taste Heterogeneity
•RM revenue optimizations simultaneously optimize pricing and seat allocation strategy.• Propose a methodological framework to incorporate latent class and mixed logit choice models in this RM revenue optimization.
•Distinguish passengers between leisure‐oriented and business‐oriented travelers, depending on departure time and day of week.
• Short‐haul trip contributes to greater revenue than long‐haul trip with the same seat capacity.•Accounting for passenger taste heterogeneity results in more realistic representation of the passenger behavior in supporting RM strategy.
2. RM Revenue Optimization
•Contributions in RM choice modeling by accounting for inter‐temporal effects of decision process which are usually treated in a static context.
•DDCM provides more intuitive results and better prediction capability compared to multinomial logit (MNL) models.•Not accounting for inter‐temporal effects in cancellation/exchange behavior could result in substantial prediction error.
3. Dynamic Discrete Choice Model for Ticket Cancellation/Exchange
98
Future Directions
98
1.Ticket cancellation and exchange model (DDCM)
Allow fares to have dynamic attribute (random walk)
Incorporate heterogeneity using latent class approach
Apply to ticket purchase timing behavior
Impact of number of steps in the look‐ahead toward model performance
Incorporate in revenue optimization for overbooking policy
Support refund and exchange policy
Model other choice dimensions especially with dynamic decision process
2.RM revenue optimization
Network with station transfer
Optimize revenue over multiple departures simultaneously
3.Ticket purchase timing model
Consider choice model of departure time, or departure day
Choice model accounting for other modes of transportation
99
PART 3THE TALLURI VAN RYZIN METHODS TO REAL DATA
100
The Problem I did not Mention
• Random Utility Models require all model parameters to be observed• You cannot model a choice if it does not occur in the data• For example, if you conduct a survey
– And no one picks option X– You cannot model choice probabilities for option X
• And this happens surprisingly often
101
For Example:
• Suppose you want to travel to New York City• Your options:
– Airplane: $200– Amtrak (Acela): $180– Northeast Regional: $120– Megabus: $32– Greyhound: $40– Chinatown Bus: $20
• And you pick Chinatown Bus
102
In Addition
• You want to capture all customers in your model• Each of the choices on the previous page had characteristics you know: speed,
comfort, etc.• Each customer has characteristics you don’t know: who is paying for the trip, how
much is the customer worth to them• The best bet of the model is to put things it doesn’t know in the error term, and
hope for the best• But if the model doesn’t even know all the choices, it is not fair play
103
Since No‐Buyers are Invisible
• The model has no idea of your presence• Consequently, the whole world buys tickets
– And the real contest is only between the fare classes– But it actually is between different companies
• A third dimension to the flatlander model– Is not asking companies to record all visitors
• Because people check prices while deciding on the trip; and people help theirfriends by finding prices; not to forget Kayak, which will just index hot routes
• This will only inflate no‐buy choices• However, mathematics can help
104
Bayes Theorem to the Rescue
• Bayes Theorem is a very intuitive and simple theorem in probability• It updates an existing probability function when new data is available
– Very useful for experiments with continuous observations• There are mainly three components in Bayes Theorem
– The Prior,– The Data,– The Posterior.– (And a normalizing factor)
105
Mathematical Bayes Theorem
106
Bayes in Our Discussion (aka Expectation Maximization)• We have a prior probability (assumption) of people who did not buy
– Say we assume 30% of all arriving customers don’t buy• We can now build a RUM, with the assumption, and account for no‐buy choices
– RUM will give probabilities for all choices, given the chooser• We can re‐estimate (update) our initial assumption of window shopper rate based
on RUM output– Using Bayes theorem, of course
• And repeat this till the model converges
107
The Model (Preamble)
• Model proposed by Talluri and Van Ryzin in 2004• Time (t) is backwards indexed
– Because the horizon is finite, and expires when time = 0– It is discrete, and moves in constant intervals
• Total of T time steps are possible– t is sufficiently small, such that only one person arrives at every timestep*
• At each time step, the model chooses products offered• A customer either arrives at the system or doesn’t
– Arriving customer chooses what to buy, if anything– λ denotes the total arrival probability (rate of arrivals)*The devil’s assumption
108
The Model (Initialization)
• Initial conditions are set using educated guesses• The whole dataset is split such that
– denotes the times in T when a purchase is recorded– denotes the times in T when no purchase is recorded
•
109
The Model (Core)
• Using any RUM, coefficients are computed
,∑
– Where,
– Such thatmax∑ ln
• Using , update where no purchases are seen
∈, ∈
, ∈ 1
– This is where Bayes Theorem is used
• is updated using ∈
110
The Algorithm
• Step 0: Initialize Parameters• Step 1: Compute using the current conditions• Step 2: Update by combining probability of choosing tonot buy, with the probability of arrival
• Step 3: Update the probability of arrival• Step 4: Check for convergence in and
– If not converged, go to 1– If converged, end
111
Synthetic Data (Fabrication)
• Mainly as a proof that the model works• 30,000 rows of data are created, each row representing uniquet in T
• Customers can choose between 4 fare classes, with varyingprices
• Arrival probability λ is set to 0.5• is set to 1 or 0 based on λ
– That is, ≈ 15,000 records had 1, the rest 0
• Where is 1, choice was estimated using RUM backwardsRandom Utility based on class price and added Gumbell noise
112
Synthetic Data (Results, Coefficients)
113
Synthetic Data (Results, Function Value)
114
Real Data (Introduction)
• Data is obtained from God– Contains information about the heavenly bodies (HB), such as orbital periods,departure and arrival times, etc.
– Also contains list of souls travelling on any HB, including origin and destination• The HB have 4 or 5 classes, depending on day of journey
– The only information about souls on the HB is the price they paid to be there– Currency is, of course, karma
• Can God make more revenue (good karma) by smartly selling seats?
115
Real Data (Model Application)
• The data for two HB were examined– Departing on different days
• For a given HB, the data were split such that 3 distinct periods were formed– Splitting done based on change in the number of bookings per hour– The size of t is different for each data division
• The model was applied as is– And a roadblock was found: the devil’s assumption
• Data had many intervals with multiple recorded bookings– This is not allowed by the model– So, minor, distribution aware changes were made to the data
116
Real Data (Weekday Availability & Bookings)
117
Real Data (Weekday Results, Division 1)
118
Real Data (Weekday Results, Division 2)
119
Real Data (Weekday Results, Division 3)
120
Real Data (Weekend Availability & Bookings)
121
Real Data (Weekend Results, Division 1)
122
Real Data (Weekend Results, Division 2)
123
Real Data (Weekend Results, Division 3)
124
Conclusion
• Model is quite promising• Works flawlessly on synthetic data• Does not work on slightly weird real data• Must overcome the assumption that only one arrival per timestep
• And there is one other problem caused by that assumptionwhich might just go– λ is calculated as a ratio of ∑
– If t changes, λ changes, meaning total maximum population size is∑
125
Future Work
• Model it as a two or three step Hierarchical Bayesian Model– With well defined (proper or improper) priors on all parameters
• Conceptually,– First level: as a function of X, and λ– Second level: λ as a function of
126
THANK YOU!Questions?