0% found this document useful (0 votes)
165 views39 pages

Single Resource Capacity Control (S20)

This document provides an overview of the single resource capacity control problem (SRCCP) for a lecture. It begins with an introduction to the 2-class SRCCP, describing Littlewood's rule for determining the optimal protection level. It then discusses extensions to the 2-class problem, such as using continuous demand distributions and incorporating a salvage value. Finally, it briefly introduces the n-class SRCCP and dynamic programming approaches.

Uploaded by

Ronak Patel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
165 views39 pages

Single Resource Capacity Control (S20)

This document provides an overview of the single resource capacity control problem (SRCCP) for a lecture. It begins with an introduction to the 2-class SRCCP, describing Littlewood's rule for determining the optimal protection level. It then discusses extensions to the 2-class problem, such as using continuous demand distributions and incorporating a salvage value. Finally, it briefly introduces the n-class SRCCP and dynamic programming approaches.

Uploaded by

Ronak Patel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 39

LECTURE 2

SINGLE RESOURCE CAPACITY


CONTROL PROBLEM
Hassan Shavandi Management Sciences dept University of Waterloo
Where are we now on the course map?
2

Introduction to Revenue
Management and
Pricing

Price Based RM
Quantity Based RM (Pricing Analytics)

Single Resource Pricing Background and


Capacity Control Pricing Analytics
Problem (SRCCP)
Price Differentiation
Network RM
Dynamic Pricing
Overbooking
Customer Behavior aspects
of Pricing
Tools in this course:
R, Excel Pricing in B2B environment
MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi
Outline
3

 2-Class Single Resource Capacity Control Problem


(SRCCP)
 Littlewood’s rule
 Extension to Littlewood's rule

 n-Class SRCCP
 EMSR Heuristics
◼ EMSR_a
◼ EMSR_b
 Appendix: Dynamic Programming model (Complement
material and not included in the course evaluation)

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


SRCCP: Two Fare Classes
4

Leisure Travelers Business Travelers

Price Sensitive Price Insensitive


Book Early Book Later
Schedule Insensitive Schedule Sensitive

p2 = Discount Fare (price) P1 = Full fare (Price)

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


SRCCP: Two Fare Classes
5

 Assume an airline with fixed capacity 𝐶


 Two fare classes (full-fare and discount) with fares
𝑝1 > 𝑝2 > 0. Marginal costs are 0.

 Discount fares book first. All seats not sold at discount are
available for sale at full fare.

 All booked customers will show at departure. No cancellations or


no-shows.

 Suppose, 𝑦 ∈ 0, 1, 2, … , 𝐶 be the protection level of capacity to


be protected for full fare customers

 Therefore, 𝐶 − 𝑦 will be the booking limit of discounted fare


demand
MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi
SRCCP: Two Fare Classes
6

 The demands at each fare are random variables:


 𝐷2 : 𝐹2 (𝑥) and 𝐷1 : 𝐹1 (𝑥)

How many seats should we save for late-booking full-fare


customers? (𝒚∗𝟏 =? )

The total expected revenue?

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


SRCCP: Two Fare Classes
7

 The objective: obtain a protection level 𝑦 that maximizes the


expected revenue
 Extreme strategies: 𝑦 = 0 and 𝑦 = 𝐶 : When are optimal?
 In most cases, 0 < 𝑦 < 𝐶 is optimal

𝑝2
 The fare ratio, 𝑟 = : critical role in obtaining optimal strategy
𝑝1
 What if 𝑟 is close to zero?
 What if 𝑟 is close to one?
 What if 𝑃(𝐷1 ≥ 𝐶) is very large?
 What if 𝑃(𝐷1 ≥ 𝐶) is very small?

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


SRCCP: Two Fare Classes
8

 Solution approach: Marginal analysis on tradeoff between


accepting and rejecting a request for the discounted fare
when 𝑦 units left.

 Revenue if we accept the request for the marginal unit?

 Expected revenue if we reject the request? Keeping 𝑦 units for


selling with full fare.

 It is intuitively optimal to reject the request when


𝑝1 𝑃 𝐷1 ≥ 𝑦 > 𝑝2

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


SRCCP: Two Fare Classes
9

 The optimal protection level𝒚∗𝟏 :

𝒚∗𝟏 = 𝑚𝑎𝑥 𝑦 ∈ 𝑁+ : 𝑃 𝐷1 ≥ 𝑦 > 𝑟

 𝑁+ : 0, 1, … : non-negative integers
 Littlewood’s rule

 𝒚∗𝟏 is independent of the distribution of discounted fare demand


 If 𝑃 𝐷1 ≥ 𝑦1∗ + 1 = 𝑟?

 The extreme cases, 𝑦1∗ = 0 and 𝑦1∗ = 𝐶?

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


SRCCP: Two Fare Classes
10

 Continuous Demand Distribution:


 Although demand in RM problems is usually discrete but assuming
continuous random variable makes the problem easier.

 If demand of full fare class is a continuous random variable with


𝐹1 𝑦 = 𝑃 𝐷1 ≤ 𝑦 , then
∗ −1 ∗ −1 𝑝2
𝑦1 = 𝐹1 1 − 𝑟 → 𝑦1 = 𝐹1 1−
𝑝1

 If 𝐷1 ~𝑁 𝜇1 , 𝜎12 then 𝑦1∗ = 𝜇1 + 𝜎1 𝜙 −1 (1 − 𝑟)

 Discussion: 𝑟 < 0.5 or 𝑟 > 0.5?

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


SRCCP: Two Fare Classes
11

 Example:
 𝐶 = 100
 𝑝1 = $1200, 𝐷1 ~𝑁 40, 102
 𝑝2 = $800, $600, $400

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


SRCCP: Two Fare Classes
12

 Setting a protection level of 𝑦1∗ for class 1 is equivalent to


setting a booking limit of 𝑏2∗ = 𝐶 − 𝑦1∗ on class 2.

 Alternatively, we can use a bid-price control with the bid


price set at:

𝜋 𝑥 = 𝑝1 𝑃(𝐷1 > 𝑥)

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


Relations to Newsvendor Problem
13

 Littlewood's rule has a close relationship to the so-called


critical ratio solution to the optimal order quantity in
newsvendor problem.

 Newsvendor problem: A single period with uncertain


demand. How many goods to order at the beginning of the
period to cover the uncertain demand of the period in
order to minimize the expected inventory cost.

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


Relations to Newsvendor Problem
14

 The solution to the newsvendor problem can be


expressed in terms of the overage cost and the
underage cost of the decision.

 The overage cost: the cost per unit of purchasing too


many items. (Excess Inventory)

 The underage cost: the unit cost of purchasing too


few. (Shortage cost: lost sale)

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


Relations to Newsvendor Problem
15

Example:
 newsvendor buys newspapers for 20 cents and

sells them at 25 cents.

 overage cost: 20 cents per unsold paper;

 underage cost: 5 cents profit that he forgoes for


each missed sale.

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


Relations to Newsvendor Problem
16

 𝑐𝑢 : the underage cost


 𝑐𝑜 : the overage cost
 the optimal order quantity for the newsvendor is
the value of 𝑦:
𝑐𝑢
𝐹 𝑦 =
𝑐𝑢 + 𝑐𝑜

where F(y) is the cumulative distribution on demand.

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


Relations to Newsvendor Problem
17

 In the SRCCP:
 𝑐𝑢 = 𝑝1 − 𝑝2
 𝑐𝑜 = 𝑝2

𝑐𝑢 𝑝1 − 𝑝2 𝑝2
𝐹 𝑦 = = =1−
𝑐𝑢 + 𝑐𝑜 𝑝1 𝑝1

Which is the Littlewood’s rule.

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


Extensions to Littlewood’s rule
18

 Salvage value:
 In the airlines any unsold seat after the arrival of full fare
customers can be sold as last-minute or standby tickets at a
salvage value 𝑠 < 𝑝2 .
 In this case:
𝑝 − 𝑝2
−1 1
𝑦1∗ = 𝐹1 ( )
𝑝1 − 𝑠
𝑝2 −𝑠
 𝑟=
𝑝1 −𝑠

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


SRCCP: Multiple Fare Classes
19

 Assume a firm sells its Capacity in n distinct classes from


same resource.

 In Airline and Hotel: different classes = different discount


levels

 Each customer demands a single unit of capacity

 Question: how allocate the capacity to the various classes

 Allocation must be done dynamically

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


SRCCP Multiple Fare Classes: Displacement Cost
20

 While the mathematics of optimal capacity controls can


become complex, the overriding logic is simple.

 First, capacity should be allocated to a request if and only if


its revenue is greater than the value of the capacity
required to satisfy it.

 Second, the value of capacity should be measured by its


(expected) displacement cost—or opportunity cost— which
is the expected loss in future revenue from using the
capacity now rather than reserving it for future use.

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


SRCCP Multiple Fare Classes: Displacement Cost
21

 Value function, 𝑽(𝒙): the optimal expected revenue as a


function of the remaining capacity x.

 Displacement cost: the difference between the value


function at x and the value function at x-1 or

𝑉 𝑥 − 𝑉(𝑥 − 1)

 We can compare revenues to displacement costs to make


the accept or deny decision.

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


SRCCP Multiple Fare Classes: Assumptions
22

Assumptions for static multiple fare SRCCP:

1. Demand for the different classes arrive sequentially over


time in the order of increasing prices of the classes.

2. Demands for different classes are independent random


variables.

3. Demand for a given class does not depend on the


capacities available.

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


SRCCP Multiple Fare Classes: Assumptions
23

4. An aggregate quantity of demand arrives in a single


stage and the decision is simply how much of this
demand to accept.

5. There are no groups, or if there are group bookings, they


can be partially accepted.

6. Finally, the static models assume risk-neutrality.

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


SRCCP: n-Class Models
24

 demand for the n classes arrives in n stages, one for


each class.
 arriving is in increasing order of their revenue values.
𝑝𝑛 < 𝑝𝑛−1 < … < 𝑝1
 Class n is the lowest price and arrives in the first stage
(stage n ), … , the highest price class (class 1) arrives in
the last stage (stage 1).

 Since there is a one-to-one correspondence between


stages and classes, we index both by 𝑗.

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


SRCCP: n-Class Models
25

First
Booking Departure

Period: n n-1 3 2 1 Time

Fare: pn pn-1 p3 p2 p1

Bookings: xn xn-1 x3 x2 x1

Low Fare Bookings High Fare Bookings

The basic assumption -- bookings occur in order of fare, that is: low to high.

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


SRCCP: n-Class Models
26

Capacity Control with three fare classes


d3 < b3
F3(b3) 0

b3 → b3+1 Displace Class 1 Booking


p3 – p1
q1
1-F3(b3) d3 > b3 Displace Class 2 Booking
q2
p3 – p2
1-q1-q2
No Displacement
p3

Hold b3 Constant
0

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


SRCCP: n-Class Models
27

 In general, the capacity allocation problem with


more than two classes does not have a closed-form
solution.

 Two solution alternatives:


 EMSR heuristics - formulate as a series of two-class
problems and approximate the solution.

 Dynamic programming:
 Providing optimal policy

 Too computationally intensive for optimal solution

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


n-class SRCCP: EMSR Heuristics
28

Expected Marginal Seat Revenue (EMSR)

 Approximating the n-class by a series of 2-class problems


and applying the Littlewood’s rule.

 EMSR-a : Expected Marginal Seat Revenue – version a.

 EMSR-b : Expected Marginal Seat Revenue – version b.

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


n-class SRCCP: EMSR-a
29

 EMSR-a : based on the idea of calculating


protection levels for the current class relative to
each of the higher classes using Littlewood's rule.

 These protection levels are then summed up to


create the protection level for the current class.

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


n-class SRCCP: EMSR-a
30

Example: we are in stage 3, and want to see how much capacity


should be protected for remaining classes (𝑦2 )? Then the current
capacity minus 𝑦2 will be sold for class 3.

−1 𝑝1 −𝑝3
 A protection level for class 1 against class 3: 𝑦31 = 𝐹1 ( )
𝑝 1

−1 𝑝2 −𝑝3
 A protection level for class 2 against class 3: 𝑦32 = 𝐹2 ( )
𝑝 2

 Then, the protection level at stage 3 (𝑦2 ): 𝑦2 = 𝑦31 + 𝑦32

−1 𝑝1 −𝑝3 −1 𝑝2 −𝑝3
𝑦2 = 𝐹1 + 𝐹2 ( )
𝑝1 𝑝 2

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


n-class SRCCP: EMSR-a
31

 EMSR-a can be generalized to any number of fare classes.


For j>= 2, stage (n)=j (protection level for j-1):

𝑗−1
𝑝
−1 𝑖
− 𝑝𝑗
𝑦𝑗−1 = ෍ 𝐹𝑖 ( )
𝑝𝑖
𝑖=1

 If demands are normally distributed:


𝑗−1
−1
𝑝𝑖 − 𝑝𝑗
𝑦𝑗−1 = ෍ 𝜇𝑖 + 𝜎𝑖 𝜙 ( )
𝑝𝑖
𝑖=1

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


n-class SRCCP: EMSR-b
32

 EMSR-b : assumes that a passenger displaced by an


additional booking would be paying a fare equal to a
weighted average of future fares.

 EMSR-b creates an "artificial class" with demand equal to


the sum of the demands for all the future periods and a
fare equal to the weighted average fare from future
bookings.

 It then uses Littlewood's rule to calculate the protection


level at current class j with respect to the artificial class.

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


n-class SRCCP: EMSR-b
33

 Suppose we are at stage j:


 Two fare classes:
 Fare class j: demand: 𝐷𝑗 and price: 𝑝𝑗

 Virtual fare class 𝑗 − 1:

◼ ഥ𝑗−1 = σ𝑗−1 𝐷𝑗
Demand: 𝐷 𝑖=1

𝑗−1 𝑝 𝑖 𝜇𝑖
◼ Price: 𝑝𝑗−1
ҧ = σ𝑖=1 𝑗−1
σ𝑘=1 𝜇𝑘

−1 𝑝ҧ𝑗−1 −𝑝𝑗
 Therefore, 𝑦𝑗−1 = 𝐹𝑗−1 ( ҧ )
𝑝 𝑗−1

 Example: Normal distribution

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


Appendix: n-class SRCCP: Dynamic Programming
34

 Assume a service provider with 𝐶 units of perishable capacity


 𝑛 classes of customer with fares 𝑝𝑛 < … < 𝑝1
 Low-before-high fare class arrival order
 The set of classes: 𝑁 = 1, … , 𝑛
 𝐷𝑗 : the random demand for fare class 𝑗: independent with finite
means 𝜇𝑗 = 𝐸 𝐷𝑗 < ∞
 𝑉𝑗 (𝑥): Optimal total expected revenue from fare classes 𝑗, 𝑗 −
1, … , 1 given 𝑥 units of capacity remaining just before realization
of class 𝑗 demand
 Stages: fare classes: 𝑗
 State variable: remaining capacity: 𝑥

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


Appendix: n-class SRCCP: Dynamic Programming
35

 Given 𝑥 units of remaining capacity at stage 𝑗: obtain a


protection level 𝑦 ≤ 𝑥 for classes 𝑗 − 1, … , 1 and sale of 𝑥 − 𝑦
units at stage 𝑗 with price 𝑝𝑗

 Let 𝑊𝑗 (𝑦, 𝑥): the optimal expected revenue from 𝑗, 𝑗 − 1, … , 1


assuming we protect 𝑦 ≤ 𝑥 for fares 𝑗 − 1, 𝑗 − 2, … , 0:

𝑊𝑗 𝑦, 𝑥 = 𝑝𝑗 𝐸 min 𝑥 − 𝑦 , 𝐷𝑗 + 𝐸 𝑉𝑗−1 (max 𝑦, 𝑥 − 𝐷𝑗 )

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


Appendix: n-class SRCCP: Dynamic Programming
36

 Dynamic program:

 𝑉𝑗 𝑥 = max 𝑊𝑗 (𝑦, 𝑥)
𝑦∈ 0,…,𝑥

𝑉𝑗 𝑥 = max 𝑝𝑗 𝐸 min 𝑥 − 𝑦 , 𝐷𝑗 + 𝐸 𝑉𝑗−1 (max 𝑦, 𝑥 − 𝐷𝑗 )


𝑦∈ 0,…,𝑥

 𝑉0 𝑥 = 0

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


Appendix: n-class SRCCP: Dynamic Programming
37

 Structure of Optimal Policy:

 Let ∆𝑉𝑗 𝑥 = 𝑉𝑗 𝑥 − 𝑉𝑗 (𝑥 − 1)

 Proposition:
a. ∆𝑉𝑗 (𝑥) is decreasing in 𝑥 ∈ 1, … , 𝐶
b. ∆𝑉𝑗 (𝑥) is increasing in 𝑗 ∈ 1, … , 𝑛

 The value function 𝑉𝑗 𝑥 is concave due to property a.

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


Appendix: n-class SRCCP: Dynamic Programming
38

 Structure of Optimal Policy:

 Theorem: For all 𝑗 = 𝑛, … , 1, the function 𝑊𝑗 (𝑦, 𝑥) is


unimodal in 𝑦 and the maximizer of 𝑊𝑗 (𝑦, 𝑥) over 𝑦 ∈

0, … , 𝑥 is given by 𝑚𝑖𝑛 𝑦𝑗−1 , 𝑥 , where


𝑦𝑗−1 = 𝑚𝑎𝑥 𝑦 ∈ 𝑁+ : ∆𝑉𝑗−1 𝑥 > 𝑝𝑗
∗ ∗
Moreover, 𝑦𝑛−1 ≥ 𝑦𝑛−2 ≥ … 𝑦0∗ = 0
Thus, optimal protection levels are monotone in the number
of stages left until the end of the selling horizon.

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi


Appendix: n-class SRCCP: Dynamic Programming
39

 Structure of Optimal Policy:

 Corollary: For the case of 𝑛 = 2, the formal proof of


Littlewood’s rule:

𝑦1∗ = 𝑚𝑎𝑥 𝑦 ∈ 𝑁+ : 𝑝1 𝑃 𝐷1 ≥ 𝑦 > 𝑝2

MSCI 700 (Pricing Analytics and Revenue Management) Hassan Shavandi

You might also like