Forecasting, Overbooking
and Dynamic Pricing
Block 2
Zaenal Akbar ([Link]@[Link])
©[Link]
Copyright 2008 STI INNSBRUCK [Link]
Agenda
1. Estimation and Forecasting
2. Overbooking
3. Dynamic Pricing
[Link] 2
Where we left of...
• Definition of Revenue Management
• The key questions it can answer
• History of Revenue Management
• Price building
• KPIs: RevPAR, GopPAR, RevPOST, …
• Single Resource Capacity Control
– Booking limits
– Protection levels
– Bid Price
– Nesting
– Static Models: 2-Class & n-Class
– Heuristics
– Dynamic and other models
• Customer Choice Behaviour
– Buy Up Factors
– Discrete Choice Models
[Link] 3
Estimation and Forecasting
[Link] 4
Introduction
Let start with the following data
- 8, 14, 20, 23, 39, 50, 55, 59, 61
Compute:
- The means
- The variances
Determine:
- What number comes next?
[Link] 5
Introduction
Estimation:
● Finding model parameters that best describe a given set of observed
data
● Descriptive (characterizing what has been observed)
● Done relatively infrequently
Forecasting:
● Involves predicting future, unobserved values
● Predictive (characterizing what will be observe)
● Performed on an operational basis
Estimation → Forecasting
● An estimate of price sensitivity based on past sales data
● Use it in a forecast of future demand
[Link] 6
Introduction
Quantity-based RM
- Use time-series methods, which use historical data to project the future
- Example:
- Spill quantity -- the amount of demand that is lost by closing down a class
- Recapture quantity -- the amount of spilled demand that is recaptured by substitute
products
Price-based RM
- Forecasting demand as a function of marketing variables such as price
or promotion
- Example:
- the size of the potential customer population
- stockout and low-inventory effects
- switching behavior
[Link] 7
Introduction
Data is the life-blood of a forecasting system
- Rely primarily on historical sales data
- Weakness -- products/programs change frequently -- little historical
data
Data sources
- Sales-Transaction Data Sources -- transactional database
- Controls-Data Sources -- controlling process
- When a class is closed for further bookings
- Overbooking authorizations
- Promotions activities
- Auxiliary Data Sources
- Currency exchange-rate
- Tax information
[Link] 8
Introduction
Partial-Bookings Data -- bookings occur over an extended period of time
[Link] 9
Introduction
RM Forecasting
- Estimating a probability distribution of future demand
- Estimating demand as a function of prices variables or product
attributes
Parametric Estimation
- Assume a specific functional form
- Estimate the parameters of this functional form
Non-Parametric Estimation
- Distribution or functions can be estimated directly based on observed
historical data
[Link] 10
Introduction
Forecasts can be made at different levels of aggregation
- How to aggregate data
- Airlines -- should the demand be forecast for each fare product or each
booking class?
Bottom-up Forecasting Strategy
- Forecasting is performed at a detailed level to generate sub-forecasts
- Aggregate the detailed sub-forecasts
- Itinerary → Customers expected → Fare-class → Occupancy
Top-down Forecasting Strategy
- Forecasts are made at a high level of aggregation (super-forecasts)
- Disaggregate these super-forecasts down to the level of detail required
- Total number of guests/book/arrive/day/rate → fractions of
guests/stay/a specific length of time → Guests/book/future-date/room-
category & length-of-stay
[Link] 11
Estimation
Estimator -- a formalized “guess” about the parameters of the underlying
distribution from which a sample is assumed to be drawn
Can take on many forms and can be based on different criteria for a “best”
guess
Non-Parametric Estimators
- Do not make any assumptions on the underlying distribution
- Simply computing the fraction of observations in the sample
Parametric Estimators
- Assume that there is an underlying distribution of the observed data
- Determine the unknown parameter using the sample and the
characteristics of the observed data
[Link] 12
Minimum Mean Square Error (MMSE)
An estimation method which minimizes the Mean Square Error (MSE)
[Link] 13
Maximum-Likelihood (ML) Estimators
Finding the parameters that maximize the “likelihood” of observing the
sample data
- Likelihood is defined as the probability of the observations occurring
[Link] 14
Other Estimation Methods
Method of Moments Estimators
- One equates moments of the theoretical distribution to their equivalent
empirical averages in the observed data
Quantile Estimators
- Based on the empirical distribution
- One can compute a number of quantiles of a data set and equate
these to the theoretical quantiles of the parametric distribution
[Link] 15
Forecasting
Forecasting -- attempt to “predict” the future values of a sequence of data
Typically used for forecasting demand (demand to come)
Forecast quantities:
- Market prices
- Length of stay
- Cancellation and no-show rates
Forecastings effort in practice is directed at data-related tasks
- Collection
- Pre-processing
- Cleansing
[Link] 16
Ad-Hoc Forecasting Methods
Referred to as structured forecasting methods
- Assuming a compositional structure on the data
- Breaking up and composing the series into hypothesized patterns
Three types of components:
1. Level
-- the typical or “average” value of the data (not as statistical average)
2. Trend
-- a predictable increase or decrease in the data values over time
3. Seasonality
-- a periodic or repeating pattern in the data values over time
[Link] 17
Ad-Hoc Forecasting Methods
A common strategy -- try to “smooth” the data or average-out the noise
components to estimate the level, trend, and seasonality components
[Link] 18
Ad-Hoc Forecasting Methods
M-Period Moving Average
- Current time t
- Values t+k in the future - k-period ahead forecast
- Observed demand data: Z1,..., Zt
- Forecast for period t+1:
- Simple M-period moving-average forecast
- M - the span of the moving average
[Link] 19
Ad-Hoc Forecasting Methods
Moving-Average Method
- Very simple and fast
- Its motivation is largely heuristic
- The most recent observations serve as better predictor for the future
than do older data
- Instead of taking all the data, we average only the M most recent data
- Quick responds if the span M is small, but results in a more volatile
forecast (more sensitive to noise in data)
- In practice, M may range from 3 to 15, depends on data characteristics
and units used for the time intervals
- When the data exhibits an upward and downward trend, the moving
average method will systematically under-forecast or over-forecast
[Link] 20
Ad-Hoc Forecasting Methods
Simple Exponential Smoothing
- Smoothing constant for the level, 0 < ɑ < 1
[Link] 21
Time-Series Forecasting Methods
The forecasting procedure is specifically tailored to the underlying data-
generation model
We make a hypothesis about the specific type of process generating the
time series of data
- Use model-identification techniques
- Determine which models best fit the data
Apply the corresponding optimal forecasting method specific to that model
They explicitly model the correlations between successive data points and
exploits any dependence to make better forecasts
[Link] 22
Bayesian Forecasting Methods
Use the Bayes formula to merge a prior belief about forecast value with
information obtained from observed data
- Useful when there is no historical data -- introduce new products -- no
historical demand information
- Forecasters may have some subjective beliefs about demand, based
on human judgement or alternative data sources (test marketing and
focus groups)
- Bayesian methods -- combine subjective knowledge with information
obtained from data and observations
[Link] 23
Bayesian Forecasting Methods
Posterior = Likelihood x Prior
[Link] 24
Machine-Learning (Neural-Network) Methods
Do not make a functional assumption a priori
Use interactions in a network-processing architecture to automatically
identify the underlying function that best describes the demand process.
Mimic the way the human brain learns from experience
An NN consists of underlying directed graph and a set of additional
quantities defined on the graph
Feed-forward network = input - hidden - output layers
Defined quantities on the network: state variable, weight associated with
arc, activation threshold, activation function
[Link] 25
Machine-Learning (Neural-Network) Methods
[Link] 26
Machine-Learning (Neural-Network) Methods
Defining the Network
- Define a set of independent variables associated with each
observation, represented by input nodes
- Define the activation functions, e.g. sum of the weights of incoming
active nodes
Training
- A set of data is used to calibrate the weights and the values of the
threshold functions
Forecasting
- We have a set of values for the parameters of the network: activation
threshold, weights, and the parameters
[Link] 27
Pick-Up Forecasting Methods
Exploit some unique characteristics of reservation data -- period between
repeated service is shorter than the period over which reservations are
made
The main idea is to forecast incremental bookings and then aggregate
these increments to obtain a forecast of total demand to come
- k-day ahead forecast
- Z[i](.) -- the incremental booking forecast i days prior to the time of
service
[Link] 28
Pick-Up Forecasting Methods
Forecast for 13-June when we have one day remaining
[Link] 29
Other Forecasting Methods
Delphi method
● Formal procedure for extracting analyst and managers’ opinion on
expected demand
● Used primarily when no historical information or when there is
unexpected demand shock or when RM is done manually
Fuzzy logic and Expert Systems
● Attempt to replicate the rules used by human analysis when monitoring
and overriding a RM system
Based on fitting historical booking to a set of cumulative curves
● Current bookings on hand are extrapolated using these curves to give
the forecast
Combining Forecast Methods
[Link] 30
Estimation Errors
● Estimation Bias -- the lack of a good estimator, incomplete data, or
nonconvergence of the estimation procedures
● Specification Errors -- arising from a model that does not reflect the
underlying data-generating process
● Model Selection
○ To find a model that generalizes well and has good predictive power
○ For example, to rank the models according to some goodness-of-fit criterion and
choose the highest-ranking one
● Overfitting
○ Keep a holdout sample and use the forecast errors on the holdout
[Link] 31
Forecasting Errors and System Control
Measures of Forecast Errors
● Sum of forecast errors, mean error, MSE, ...
Bias Detection and Correction
● Tracking signal -- to see if the system is generating consistently biased
forecasts
Outlier Detection and Correction
- Extreme values of data
- Caused by corrupted records or special non-recurring conditions in the
demand process
- Pre-smooth the data to make them more robust to the presence of
outliers -- moving-median smoothing
[Link] 32
No-Show and Cancellations Forecasting
[Link] 33
Gas-Load Forecasting
[Link] 34
Wrap-Up (1)
● Estimation vs. Forecasting
● Estimation
○ Estimators and Their Properties
○ Minimum Mean Square Error (MMSE) Estimators
○ Maximum-Likelihood (ML) Estimators
● Forecasting
○ Ad-Hoc Forecasting Methods
○ Time-Series Forecasting Methods
○ Bayesian Forecasting Methods
○ Machine-Learning (Neural-Network) Methods
○ Pick-up Forecasting Methods
● Estimation and Forecasting Errors
[Link] 35
Overbooking
[Link] 36
Introduction
Have you experienced any of the following situations:
● Cancel your booking
● Did not show up at the time of a service
● Change your booking with a penalty
Or any the following situations:
● Offered an upgrade
● Offered a compensation
Overbooking -- focus in increasing the total volume of sales in the presence
of cancellations
[Link] 37
Introduction
General
How to optimize capacity utilization in a reservation-based system with
significant cancellations.
RM in contrast is about how to create the best product mix.
One of the oldest and most successful tactics in RM.
General Outline
Controlling the level of reservations to balance the potential risks of denied
service against the rewards of increased sales.
Biggest Challenge
How to handle negative effects of denying service and the resulting legal
and regulatory issues.
[Link] 38
Introduction
Business Context
Reservation basically a forward contract between customer and firm. Use
service in the future at a fixed price usually cancellable (possibly penalty).
Reservations are valued if the cost of unavailability at the desired
consumption time is higher than prior to the time of consumption. (e.g. “I
need to take this flight to get to my meeting!”.)
Precommitment has own risks however. Possibly can’t consume product in
future and need to handle incurred penalty.
Cancellation and no-show penalties allow customer and firm to share risk.
At least some penalty needs to be in place because of high risk of abuse.
[Link] 39
Introduction
Overbooking
Firm usually gauges the risk of taking on more reservations than it can fulfill
and balances it with the possibility of no-shows in order to optimize
allocation.
Stock out = customers have a reservation and there are no rooms left
Overage = customers denied reservation and rooms are unoccupied
[Link] 40
Static Overbooking Models
[Link] 41
Overbooking
Static: Averages
Easy and quick solution, calculate the average of the number of no-shows
n and their respective probability.
Simple Formula
n probability(n) n*probability(n)
0 20% 0
1 40% 0.4
2 30% 0.6
3 10% 0.3
Overbook # rooms: SUM = 1.3
[Link] 42
Overbooking
Static: Spreadsheets
Based on Overage and Stock-out build up a spreadsheet detailing the
costs of overbooking taking the probabilities into account, select lowest
total cost.
For example with an Overage of €50.- and a Stock-out of €120.-
Number of Reservations Overbooked
n probability(n) 0 1 2 3
0 20%
* €0.- €120.- €240.- €360.-
1 40%
* €50.- €0.- €120.- €240.-
2 30%
* €100.- €50.- €0.- €120.-
3 10%
* €150.- €100.- €50.- €0.-
Total Cost €65.- €49.- €101.- €204.-
[Link] 43
Overbooking
Static: Marginal Cost
The Marginal Cost approach (also called Newsvendor model) is again
based on Overage and Stock-out.
We will book guests until the cost of a dissatisfied customer is in balance
with the cost of an empty room.
This is expressed in the following heuristic:
For our example from before this equals 29% meaning we’ll overbook 1
room since this number is first exceeded by the cumulative percent of no-
shows in this configuration.
[Link] 44
Customer Class Mix
Different classes may have quite different cancellation rates:
- Full-coach customers often have no cancellation penalty
- Discount-class customers incur a significant fee for cancelling a
reservation
Exact methods:
- Keeping track of the inventory of each class as a separate state
variable
- Making overbooking decisions based on this complete vector of state
variables
Estimation methods:
- Estimate the cancellation probability for each resource separately
- Capture at least the historical mix of customer segments booked on
each resource
[Link] 45
Group Cancellation
The presence of groups is important
- If a group decides to cancel, then all reservations are cancelled
simultaneously
[Link] 46
Overbooking
Dynamic
Static models do not explicitly account for the dynamics of arrivals,
cancellations, and decision making over time
Exact Approaches
- As demand to come increases (stochastically), it is better to be less
aggressive at any given point in time
- We have more more opportunities to book seats in the future, we do
not need to take as great an overbooking risk in the current period
Heuristic Approaches Based on Net Bookings
- The change in bookings on hand depends on both the number of
cancellations and new reservations that are accepted
- Can be used to provide an alternative estimate of the cancellation rate
[Link] 47
Combining Capacity Control and
Overbooking
So far we ignored the interaction of overbooking decisions with capacity
controls. However the are exist exact and approximate methods to
model cancellations and no-shows together with the class allocations of
quantity-based RM.
Assumptions, cancellations and no-shows are...
1. equally probable for all customers
2. independent across customers
3. in any period are independent of the time the reservations were
accepted
4. Additionally: refunds and denied-service costs same for all customers
The assumptions imply that the number of no-shows and the costs incurred
are only a function of the total number of reservations on hand
[Link] 48
Combining Capacity Control and
Overbooking
(1) and (4)
- Cancellation options and penalties are often linked directly to a class
- Cancellation and no-show rates and costs can vary significantly from
one class to the next (complicates the model significantly)
(2) is unrealistic since reservations from people in groups typically cancel
at the same time
(3) is less of a problem in practice and has some empirical support
In most implementations, the overbooking problem is separated from the
capacity/allocation problem
[Link] 49
Wrap-Up (2)
Static Overbooking Models
● Static - Averages
● Static - Marginal Costs
● Customer Class Mix
● Group Cancellation
Dynamic Overbooking Models
● Exact Approaches
● Heuristic Approaches Based on Net Bookings
Combining Capacity Control and Overbooking Models
[Link] 50
Dynamic Pricing
[Link] 51
Introduction
Dynamic Pricing
Until now control via quantity, now control via price: personalized pricing,
markdowns, display and trade promotions, coupons, discounts, clearance
sales, auctions.
Distinction not always obvious, e.g. closing discount class availability is
similar to raising a product’s price.
Probably oldest technique for revenue management.
Main question
How to make price adjustments to maximize revenue?
[Link] 52
Introduction
Price- vs. Quantity-Based RM
Quantity-Based RM
- Operates by rationing the quantity sold to different products or to
different segments of customers
- Involves reducing sales by limiting supply
Price-Based RM
- Operates by “rationing” the price
- Involves reducing sales by increasing price
[Link] 53
Role in Industry
Retailing
Especially in apparel and other seasonal-goods sectors, on the forefront in
deploying science-based software for pricing.
Manufacturing
In 1998, Ford reported that the first five U.S. sales regions using this new
pricing approach collectively beat their profit targets by $1 billion, while the
13 that used their old methods fell short of their targets by about $250
million.
E-Business
E-tailers can discount and markdown on the fly based on customer loyalty
and click-stream behaviour.
[Link] 54
Examples
Style-Goods Markdown Pricing
Use markdown pricing to clear excess inventory before the end of the
season.
Use markdown as a form of demand learning, a segmentation mechanism
to separate price-insensitive/sensitive customers.
Discount Airline Pricing
Offer tickets at different prices for different flights, and moreover, during the
booking period for each flight, vary prices dynamically based on capacity
and demand for that specific departure.
Consumer Packaged-Goods Promotion
Promotions are short-run, temporary price reductions.
[Link] 55
Modeling Dynamic Pricing
Myopic- vs. Strategic-Customer Models
Consumer choice and resulting market response models are used in
dynamic pricing. Additional factors apply however:
1. how individual customers behave over time
2. the state of market conditions, specifically the level of competition
and the size of the customer population.
Myopic Customer Model
Buy as soon as the offered price is less than their willingness to pay. Do
not adopt complex buying strategies, e.g. refusing to buy in the hope of
lower prices in the future.
Strategic Customer Model
Allow for the fact that customers will optimize their own purchase behavior
in response to the pricing strategies of the firms.
Myopic appropriate for less expensive and less durable purchases. As
these factors increase strategic becomes more important.
[Link] 56
Modeling Dynamic Pricing
Infinite- vs. Finite-Population Models.
In an infinite population model, we assume that we are sampling with
replacement when observing customers.
Past history of observed demand has no effect.
Often termed the nondurable-goods assumption in economics (e.g., a
can of Coke).
The finite population model assumes a random process without
replacement.
If one of the customers in the population purchases, the customer is
removed from the population of potential customers.
This is termed the durable-goods assumption in economics (e.g., an
automobile).
[Link] 57
Modeling Dynamic Pricing
Infinite- vs. Finite-Population Models.
Finite population models typically lead to price skimming as an optimal
strategy.
Infinite population models however assume that same price that yields a
high revenue in one period will yield a high revenue in later periods.
When to use?
Infinite: relatively small fraction of large population of potential customers,
or consumable goods.
Finite: large fraction of the potential pool of customers or if the product is
a durable good.
[Link] 58
Modeling Dynamic Pricing
Monopoly, Oligopoly, and Perfect-Competition
Monopoly
Demand only depends on firm’s own price. Does not consider competitive
reaction to a price change. Easy but dangerous. The price-sensitivity
estimates may prove wrong if the optimize strategy deviates significantly
from past strategies because then the resulting competitive response may
be quite different from the historical response.
Oligopoly
Equilibrium-price response of competitors is explicitly modeled and
computed. Assumes competition behaves rationally, which is dangerous!
Also more complex and needs access to competition data.
Perfect Competition
Many competing firms supply an identical commodity. The output of each
firm is assumed to be small relative to the market size. Each firm is
essentially a price taker, i.e. able to sell as much as it wants at the
prevailing market price, but unable to sell anything at higher prices.
[Link] 59
Promotions Optimization
Promotions are short-run, temporary price changes
- Frequently applied to replenishable and consumable goods
- Run either by the manufacturer or by retailers
Promotions in the framework of RM
1. A manufacturer using price to dispose excess inventory
2. A manufacturer trying to gain market share to induce customers to try
out its products
3. Retailers experimenting with price to find optimal price points
4. Separating price-sensitive customers, who are willing to use coupons
or who wait for deals
5. Retailers trying to increase store traffic, once inside customers likely to
purchase non-promotional items
6. A tactic for store brands or small firms to compete against the large
advertising budgets
[Link] 60
Wrap-Up (3)
Price-Based vs. Quantity-Based RM
Role in Industry
Modeling Dynamic Pricing
● Myopic- vs. Strategic-Customer Models
● Infinite- vs. Finite-Population Models
● Monopoly, Oligopoly, and Perfect-Competition
Promotions Optimization
[Link] 61
Forecasting, Overbooking
and Dynamic Pricing
Hands on Exercises
©[Link]
Copyright 2008 STI INNSBRUCK [Link]
Preliminaries
You will use Excel to solve the following examples.
(LibreOffice, or Google Sheets works fine as well)
Please build groups of three or four
Each group will solve the problem and can volunteer to present their
results.
Volunteering will positively influence your grade!
[Link] 63
Forecasting Models
TODO see lecture slides
Download the worksheets from the course website ([Link])
Select “Pick-Up Forecasting” worksheet
Fill all missing values randomly (min value - max value of existing values)
Solve the problem by using Pick-up Forecasting Method
2 or 3 volunteer groups present
[Link] 64
Forecasting Models
TODO see lecture slides
Excel file with data from the previous exercise
a. Select “M-Moving Average” worksheet
b. Copy the first row of your data in “Pick-Up Forecasting” worksheet
c. Use a simple M-period moving average method to forecasts one period
ahead with M = 5
d. Repeat step c to predict 5 periods ahead
e. Repeat step d with M = 10
2 or 3 volunteer groups present
Send your Excel file to [Link]@[Link] by the end of the seminar
Remember to put your names in the email
[Link] 65
Overbooking
This exercise is about implementing overbooking strategies
You’ll find some toy data for an example hotel. In the worksheet “Hotel
Data” you’ll find information on expected no-shows and their probabilities
as well as stock-out and overage fees.
1. Open the “Overbooking” excel file and change to the “Overbooking”
worksheet.
2. Create overbooking schemes using
a. Averages
b. Spreadsheet method
c. Marginal Cost approach
1 volunteer group will present their findings to the rest of the group
Send your Excel file to [Link]@[Link] by the end of the seminar
Remember to put your names in the email
[Link] 66