Title: Gilles Savard,
1Bilevel Programming Approaches to Revenue
Management and Price Setting Problems
- Gilles Savard, École Polytechnique de Montréal,
GERAD, CRT - Collaborators P. Marcotte and C. Audet, L.
Brotcorne, M. Gendreau, J. Gauvin, P. Hansen, A.
Haurie, B. Jaumard, J. Judice, M. Labbé, D.
Lavigne, R. Loulou, F. Semet, L. Vicente, D.J.
White, D. Zhu - Students so many including J.-P. Côté, V.
Rochon, A. Schoeb, É. Rancourt, F. Cirinei, M.
Fortin, S. Roch, J. Guérin, S. Dewez, K. Lévy
2Outline
- The revenue management problem
- The bilevel programming problem
- A price setting paradigm
- applied to toll setting
- a TSP instance
- applied to airline
- Conclusion
3The revenue management problem
- the optimal revenue management of perishable
assets through price segmentation (Weatherford
and Bodily 92) - Fixed (or almost) capacity
- Market segmentation
- Perishable products
- Presales
- High fixed cost
- Low variable cost
4The revenue management problem
- RM Business process
- Forecasting
- Schedule with capacity
- Pricing
- Booking limits
- Seat sales
5The revenue management problem
- Some issues in airline industry
- How to design the booking classes?
- Restriction, min stay, max stay, service, etc
- at what price?
- Willingness to pay, competition, revenue, etc
- how many tickets?
- Given the evolution of sales (perishables)
- at what time?
- Given the inventory and the date of flight
6The revenue management problem
- Evolution of Pricing RM
- 1960s AA starts to use OR models
for RM decisions - 1970s AA develops SABRE, providing
automatic update of availability and prices - 1980s First RM software available
- 1990s RM grows, even beyond airlines
(hotel, rail, car rental, cruise, telecom,) - 2000s networks
7The revenue management problem
- Decision Support Tools focus on booking limits
BUT mostly ignore pricing - Complex problem
- Must take into account its own action and the
competition, as well as passenger behaviour - Highly meshed network (hub-and-spoke)
- OD-based vs. Leg-based approach
- Data intensive
8The revenue management problem
- Pricing has been ignored
- P. Belobaba (MIT)
- Interest in RRM is rising dramatically RRM
should be one of the top IT priorities for most
retailers - AMR Research
- Pricing Decision Support Systems will spur the
next round of airline productivity gains - L. Michaels (SHE)
9The revenue management problem
- Until recently, capacity allocation and pricing
were performed separately capacity allocation is
based on average historical prices pricing is
done without considering capacity. - However, there is a strong duality relationship
between these two aspects. - A bilevel model combines both aspects while
taking into account the topological structure of
the network.
10The revenue management problem
- Maximize expected revenue
- by determining over time
- the products
- the prices
- the inventory
- the capacity
- taking into account
- the market response
pricing
seat inventory
overbooking
forecasting
11Outline
- The revenue management problem
- The bilevel programming problem
- A price setting paradigm
- applied to toll setting
- a TSP instance
- applied to airline
- Conclusion
12Bilevel programming problem
Leader
Follower
13Bilevel programming problem
or MPEC problems
IV
14Bilevel programming problem
A linear instance
F2
x
x
15Bilevel programming problem
- Typically non convex, disconnected and strongly
NP-hard (HJS92) (even for local optimality
(VSJ94)) - Optimal solution ? pareto solution (HSW89, MS91)
- Steepest descent BLP linear/quadratic (SG93)
- Many instances
- Linear/linear (HJS92, JF90, BM90)
- Linear/quadratic (BM92)
- Convex/quadratic (JJS96)
- Bilinear/bilinear (BD02, LMS98, BLMS01)
- Bilinear/convex
- Convex/convex
16Bilevel programming problem
17Bilevel programming problem
18Bilevel programming model
- Resolution approaches
- Combinatorial approaches (global solution)
- Lower level structure combinatorial structure
- Descent approaches (on the bilevel model)
- Sensitivity analysis (local approach)
(OutrataZowe) - Descent approaches (on an approximated one-level
model) - Model still non convex (e.g. penalization of the
second level KKT conditions) (ScholtesStöhr)
19Bilevel programming model
1. Combinatorial approaches convex/quadratic
20Bilevel programming model
KKT
21Bilevel programming model
The one level formulation
22Bilevel programming model
23Bilevel programming model
BB the subproblem
and the relaxation
24Bilevel programming model
- An efficient BB algorithm can be developed by
- Exploiting the monotonicity principle
- Using two subproblems (primal and dual) to drive
the selection of the constraints - Efficient separation schemes
- Using degradation estimation by penalties
- Using cuts
- Size (exact solution) 60x60 to 300X150
- Heuristics 600x600 (tabou, pareto)
25Bilevel programming model
2. Descent approach within a trust region
approach (BC)
- A good trust region model to bilevel program is a
bilevel program that - is easy to solve (combinatorial lower-level
structure) - is a good approximation of the original bilevel
program - Such a non convex submodel (with exact algorithm)
can track part of the non convexity of the
original problem
26Bilevel programming model
27Bilevel programming model
real
actual
current
predicted
28Bilevel programming model
29Bilevel programming model
- With a linesearch step (to guaranty a strong
stationary point)
30Bilevel programming model
b-stationary convergence
31Bilevel programming model
32Outline
- The revenue management problem
- The bilevel programming problem
- A price setting paradigm
- applied to toll setting
- a TSP instance
- applied to airline
- Conclusion
33A generic price setting model
T tax or price vector x level of taxed
activities y level of untaxed activities
34A generic price setting model
If the revenue is proportional to the activities
we obtain the so-called bilinear/bilinear problem
35A generic price setting model
36A generic price setting model
37A generic price setting model
1. The one level formulation combinatorial
approach
38A generic price setting model
39A generic price setting model
2. One level formulation continuous approach
40A generic price setting model
The combinatorial equivalent problem
The continuous equivalent problem
41Outline
- The revenue management problem
- The bilevel programming problem
- A price setting paradigm
- applied to toll setting
- a TSP instance
- applied to airline
- Conclusion
42 on a transportation network
Pricing over a network
43 on a transportation network
5
1
1
1
1
2
3
4
5
10
Leader max Tx Follower min (cT)x
dy AxByb
x,y gt0
T Toll vector x Toll arcs flow y
Free arcs flow
44A feasible solution...
on a transportation network
5
1 4
1 1
1 8
1
2
3
4
5
10
PROFIT 4
45 on a transportation network
the optimal solution.
5
1
1
1
4
- 1
4
1
2
3
4
5
10
PROFIT 7
46 on a transportation network
The algorithms
- Branch-and-cut approach on various MIP-paths
and/or arcs reformulations (LMS98, LB, SD,
DMS01) - Primal-dual approaches (BLMS99, BLMS00, AF)
- Gauss-Seidel approaches (BLMS03)
47 on a transportation network
Replacing the lower level problem by its
optimality conditions, the only nonlinear
constraints are
We can linearize this term (exploiting the
shortest paths)
48 on a transportation network
1. A MIP formulation
49 on a transportation network
2. Primal-dual approach (LB)
50 on a transportation network
Step 1 Solve for T and ? (Frank-Wolfe) Step 2
Solve for x,y Step 3 Inverse optimisation Step
4 Update the M1 and M2
51Outline
- The revenue management problem
- The bilevel programming problem
- A price setting paradigm
- a toll setting problem
- a TSP instance
- applied to airline
- Conclusion
52TSP a toll setting problem?
- TSP given a graph G(V,E) and the length vector
c, find a tour that minimizes the total length.
53TSP a toll setting problem?
- Find a toll setting problem such that
- the profit for the leader is maximized
- the shortest path for the user is a tour
- the length of the tour is minimized
54TSP a toll setting problem?
5
3
2
2
1
4
Optimal tour length 8
55TSP a toll setting problem?
-1 5/10
-1 3/10
-1 2/10
-1 2/10
-1 1/10
-1 2/10
-1 1/10
-1 4/10
-1 4/10
4
56TSP a toll setting problem?
57TSP a toll setting problem?
58TSP a toll setting problem?
Miller-Tucker-Zemlin lifted (DL91)
59TSP a toll setting problem?
60TSP a toll setting problem?
613. TSP a toll setting problem?
62TSP a toll setting problem?
Sherali-Driscoll OR02
63Outline
- The revenue management problem
- The bilevel programming problem
- A price setting paradigm
- applied to toll setting
- applied to telecommunication
- applied to airline
- Conclusion
64Key Features of the model
- Fares are decision variables, not static input
- Fare Optimization is OD-based, not leg-based
- All key agents taken into account
- AC and its resource management (fleet, schedule)
- Competition fares
- Detailed passenger behaviour (fare, flight
duration, departure time, quality of service,
customer inertia, etc.) - Interaction among agents
- AC maximizes revenue over entire network
- Passengers minimize Pax Perceived Cost (PPC)
65Key Features of the model
- Pricing at fare basis code level
- Demand implied by rational customer reaction to
fares (AC and competition)
66Key Features of the model
- Full accounting of interconnectedness
(overlapping routes and markets, available
capacity, hub-and-spoke)
67Bilevel Model Structure
68Assignment Model
- Based on a multicriteria formulation
- Customer segmentation according to behavioural
criteria - Criteria
- Fare
- Flight duration (direct vs connecting flight)
- Quality of service
- Customer inertia
- Fare restrictions
- Departure time, frequency, etc.
- Perceived cost for passenger ?
69Parameter Distribution
70Perceived cost
71Bilevel Model
72Illustrative Example
- 2 markets
- YUL-SFO
- YUL-ATL
- 2 pax segments per market
- Business (QoS sensitive)
- Leisure (price sensitive)
- 2 Pax Perceived Cost (PPC) criteria
- Fare
- Quality of service (QoS)
- 1 fare per airline per market
73 Illustrative Example (Data)
Supply side Flights
Fare Structure
Flight Leg Fare QoS
AC1 (YUL, YYZ), (YYZ, SFO) F1 50
UA (YUL, SFO) 1000 90
AC2 (YUL, YYZ), (YYZ, ATL) F2 60
DL (YUL, ATL) 850 80
Leg Aircraft Capacity
(YUL, YYZ) B767-300 200
(YYZ, SFO) A320-100 130
(YUL, SFO) A330 -
(YYZ, ATL) A319 110
(YUL, ATL) MD-81 -
Demand Side
Pax Segment Market Demand QoS factor
S1 YUL, SFO 100 5
S2 YUL, SFO 450 1
S3 YUL, ATL 60 8
S4 YUL, ATL 385 1
74 Illustrative example (Objective)
- Action Maximize ACs Network Revenues
- Find fares F1 and F2 that yield maximum revenue
- maximize Revenue (F1 x Pax1) (F2 x Pax2)
- where Pax1 and Pax2 denote Pax numbers attracted
to flights AC1 and AC2, respectively
75 Illustrative example (Reaction)
- Reaction Minimize PPC on each market
Pax Perceived Cost Pax Perceived Cost
Segment AC flight Competition flight
S1 (SFO) F1 (5 x 50) F1 250 1000 (5 x 90) 1450
S2 (SFO) F1 (1 x 50) F1 50 1000 (1 x 90) 1090
S3 (ATL) F2 (8 x 60) F2 480 850 (8 x 80) 1490
S4 (ATL) F2 (1 x 60) F2 60 850 (1 x 80) 930
76 Illustrative Example (Revenue)
- Local analysis of YUL-SFO market
- Case 1 F1 ? 1040
- Segments S1 and S2 fly AC1
- Revenue 1040 x 130 135 200
- Case 2 F1 ? 1040 and F1 ? 1200
- Only segment S1 flies AC1
- Revenue 1200 x 100 120 000
- Case 3 F1 ? 1200
- Segments S1 and S2 fly the competition
- Revenue 0
77 Illustrative Example (Strategies)
Strategy Fares (pax) Revenue Gain
Match competitions fares F1 1000 (130) F2 850 (70) 189 500 Base
Local analysis (SFO first) F1 1040 (130) F2 870 (70) 196 100 3.5
Local analysis (ATL first) F1 1200 (90) F2 870 (110) 203 700 7.5
Network solution (optimal) F1 1200 (100) F2 870 (100) 207 000 9.2
Network solution after competition matches leader solution F1 1400 (100) F2 890 (100) 229 000 Virtuous Spiral
78Revenue Function
79Real-life Instance
- Thousands of O-D pairs (markets)
- More than 20 fare basis codes per market
- Hundreds of legs per day
- Hub-and-spoke structure
- Highly meshed network
- Extended planning horizon
- Capacity
80Model Resolution
- Discrete approach
- Combinatorial heuristics
- Branch-and-cut exact algorithms
- Continuous approach
- Sub-gradient based ascent method
- Hybrid approach
- Phase 1 coarse discrete approximation
- Phase 2 further optimization (fine tuning)
81Parameter Calibration
- Procedure based on Hierarchical Inverse
Optimization - Estimation from historical data
- Same order of complexity (NP-Hard)
- Calibration performed off-line on a regular basis
82Issues
- Continuous vs. discrete
- Design of decomposition techniques to deal with
the curse of dimensionality - Extremal solutions vs discretization
- The dynamic of the process
- Interaction with databases
- Live scenarios
83Conclusion
- Bilevel programming is a rich class of problems
- Interests in both theoretical and practical
issues - Keeping the structure and the meaning of the
model of each agent - The natural way of modeling the yield management
problem
84Additional Material
85Bilevel programming model
86Continuous Example
87Continuous Example (continued)
88Continuous Example (lower level)
89Continuous Example (flow assignment)
- Assumption
- Parameter ? is uniformly distributed over the
interval 0, 90
90Continuous Example (solution)
- Solution analysis
- Region A 0 lt ?1 lt ?3 lt ?max
- All flights carry flow
- Revenue function (5/18) 4 (TMV)2 6000 TMV
5 (TVS)2 7200 TVS - Optimal solution TMV 683 TVS 787
- Optimal revenue 1 334 000
- Region B 0 lt ?2 lt ?max and ?1 ? ?3
- Only flights F1 and F3 carry flow (flight F2
dominated) - Revenue function (50/81) (TMV TVS )2 2940
(TMV TVS ) - Optimal solution Any combination such that TMV
TVS 1470 - Optimal revenue 1 334 000
91Continuous Example (solution)
- Contours of revenue function
- Revenue function is piecewise quadratic
- It is not globally concave
- It may be nondifferentiable at the boundary of
the polyhedral regions - Solution TMV TVS 1470
- Optimal revenue 1 334 000