Pricing Problems under the Nested Logit Model with a Quality Consistency Constraint

Similar documents
Technical Note: Capacity Constraints Across Nests in Assortment Optimization Under the Nested Logit Model

Capacity Constraints Across Nests in Assortment Optimization Under the Nested Logit Model

Assortment Optimization under MNL

Assortment Optimization under the Paired Combinatorial Logit Model

Approximation Methods for Pricing Problems under the Nested Logit Model with Price Bounds

College of Computer & Information Science Fall 2009 Northeastern University 20 October 2009

COS 521: Advanced Algorithms Game Theory and Linear Programming

princeton univ. F 17 cos 521: Advanced Algorithm Design Lecture 7: LP Duality Lecturer: Matt Weinberg

Online Appendix. t=1 (p t w)q t. Then the first order condition shows that

Difference Equations

Errors for Linear Systems

CS : Algorithms and Uncertainty Lecture 17 Date: October 26, 2016

MMA and GCMMA two methods for nonlinear optimization

U.C. Berkeley CS294: Beyond Worst-Case Analysis Luca Trevisan September 5, 2017

Problem Set 9 Solutions

Solutions to exam in SF1811 Optimization, Jan 14, 2015

The Minimum Universal Cost Flow in an Infeasible Flow Network

Foundations of Arithmetic

Module 9. Lecture 6. Duality in Assignment Problems

Lecture 10 Support Vector Machines II

Maximizing the number of nonnegative subsets

Kernel Methods and SVMs Extension

Feature Selection: Part 1

Appendix for Causal Interaction in Factorial Experiments: Application to Conjoint Analysis

Lecture 14: Bandits with Budget Constraints

Module 3 LOSSY IMAGE COMPRESSION SYSTEMS. Version 2 ECE IIT, Kharagpur

Winter 2008 CS567 Stochastic Linear/Integer Programming Guest Lecturer: Xu, Huan

Simultaneous Optimization of Berth Allocation, Quay Crane Assignment and Quay Crane Scheduling Problems in Container Terminals

Lecture Notes on Linear Regression

More metrics on cartesian products

Some modelling aspects for the Matlab implementation of MMA

Stanford University CS359G: Graph Partitioning and Expanders Handout 4 Luca Trevisan January 13, 2011

Economics 101. Lecture 4 - Equilibrium and Efficiency

Hila Etzion. Min-Seok Pang

Affine transformations and convexity

Technical Note: A Simple Greedy Algorithm for Assortment Optimization in the Two-Level Nested Logit Model

Online Appendix: Reciprocity with Many Goods

Lectures - Week 4 Matrix norms, Conditioning, Vector Spaces, Linear Independence, Spanning sets and Basis, Null space and Range of a Matrix

Lecture 4. Instructor: Haipeng Luo

On the Multicriteria Integer Network Flow Problem

The Multiple Classical Linear Regression Model (CLRM): Specification and Assumptions. 1. Introduction

Lecture 12: Discrete Laplacian

Technical Note: An Expectation-Maximization Algorithm to Estimate the Parameters of the Markov Chain Choice Model

Lecture 11. minimize. c j x j. j=1. 1 x j 0 j. +, b R m + and c R n +

Graph Reconstruction by Permutations

Calculation of time complexity (3%)

Lecture 20: Lift and Project, SDP Duality. Today we will study the Lift and Project method. Then we will prove the SDP duality theorem.

How Strong Are Weak Patents? Joseph Farrell and Carl Shapiro. Supplementary Material Licensing Probabilistic Patents to Cournot Oligopolists *

Lecture 21: Numerical methods for pricing American type derivatives

Perfect Competition and the Nash Bargaining Solution

The Geometry of Logit and Probit

U.C. Berkeley CS294: Spectral Methods and Expanders Handout 8 Luca Trevisan February 17, 2016

Interactive Bi-Level Multi-Objective Integer. Non-linear Programming Problem

Additional Codes using Finite Difference Method. 1 HJB Equation for Consumption-Saving Problem Without Uncertainty

Amiri s Supply Chain Model. System Engineering b Department of Mathematics and Statistics c Odette School of Business

Finding Dense Subgraphs in G(n, 1/2)

The Expectation-Maximization Algorithm

EEE 241: Linear Systems

Supplement: Proofs and Technical Details for The Solution Path of the Generalized Lasso

THE CHINESE REMAINDER THEOREM. We should thank the Chinese for their wonderful remainder theorem. Glenn Stevens

Complete subgraphs in multipartite graphs

CHAPTER 5 NUMERICAL EVALUATION OF DYNAMIC RESPONSE

Lecture 10 Support Vector Machines. Oct

4 Analysis of Variance (ANOVA) 5 ANOVA. 5.1 Introduction. 5.2 Fixed Effects ANOVA

= z 20 z n. (k 20) + 4 z k = 4

n α j x j = 0 j=1 has a nontrivial solution. Here A is the n k matrix whose jth column is the vector for all t j=0

Econ107 Applied Econometrics Topic 3: Classical Model (Studenmund, Chapter 4)

Psychology 282 Lecture #24 Outline Regression Diagnostics: Outliers

Linear Approximation with Regularization and Moving Least Squares

Solutions HW #2. minimize. Ax = b. Give the dual problem, and make the implicit equality constraints explicit. Solution.

General viscosity iterative method for a sequence of quasi-nonexpansive mappings

Yong Joon Ryang. 1. Introduction Consider the multicommodity transportation problem with convex quadratic cost function. 1 2 (x x0 ) T Q(x x 0 )

Computing Correlated Equilibria in Multi-Player Games

HMMT February 2016 February 20, 2016

Pricing and Resource Allocation Game Theoretic Models

One-sided finite-difference approximations suitable for use with Richardson extrapolation

PHYS 705: Classical Mechanics. Calculus of Variations II

Welfare Properties of General Equilibrium. What can be said about optimality properties of resource allocation implied by general equilibrium?

On the correction of the h-index for career length

VARIATION OF CONSTANT SUM CONSTRAINT FOR INTEGER MODEL WITH NON UNIFORM VARIABLES

2E Pattern Recognition Solutions to Introduction to Pattern Recognition, Chapter 2: Bayesian pattern classification

n ). This is tight for all admissible values of t, k and n. k t + + n t

Chapter 8 Indicator Variables

Chapter 5. Solution of System of Linear Equations. Module No. 6. Solution of Inconsistent and Ill Conditioned Systems

DUE: WEDS FEB 21ST 2018

APPENDIX A Some Linear Algebra

CSci 6974 and ECSE 6966 Math. Tech. for Vision, Graphics and Robotics Lecture 21, April 17, 2006 Estimating A Plane Homography

COS 511: Theoretical Machine Learning. Lecturer: Rob Schapire Lecture # 15 Scribe: Jieming Mao April 1, 2013

3.1 Expectation of Functions of Several Random Variables. )' be a k-dimensional discrete or continuous random vector, with joint PMF p (, E X E X1 E X

Homework Assignment 3 Due in class, Thursday October 15

Numerical Heat and Mass Transfer

The KMO Method for Solving Non-homogenous, m th Order Differential Equations

find (x): given element x, return the canonical element of the set containing x;

Limited Dependent Variables

Introductory Cardinality Theory Alan Kaylor Cline

Polynomial Regression Models

Structure and Drive Paul A. Jensen Copyright July 20, 2003

Generalized Linear Methods

Hidden Markov Models

Maximum Likelihood Estimation of Binary Dependent Variables Models: Probit and Logit. 1. General Formulation of Binary Dependent Variables Models

Transcription:

Prcng Problems under the Nested Logt Model wth a Qualty Consstency Constrant James M. Davs, Huseyn Topaloglu, Davd P. Wllamson 1 Aprl 28, 2015 Abstract We consder prcng problems when customers choose among the products accordng to the nested logt model and there s a qualty consstency constrant on the prces charged for the products. We consder two types of qualty consstency constrants. In the frst type of constrant, there s an nherent orderng between the qualtes of the products n a partcular nest and the prce for the product of a hgher qualty level should be larger. In the second type of constrant, dfferent nests correspond to dfferent qualty levels and the prce of any product that s n a nest correspondng to a hgher qualty level should be larger than the prce of any product that s n a nest correspondng to a lower qualty level. The prces of the products are chosen wthn a fnte set of possble prces. We develop algorthms to fnd the prces to charge for the products to maxmze the expected revenue obtaned from a customer, whle adherng to a qualty consstency constrant. Our algorthms are based on solvng lnear programs whose szes scale polynomally wth the number of nests, number of products and number of possble prces for the products. Numercal experments ndcate that our algorthms can effectvely compute the optmal prces even when there s a large number of products n consderaton. 1 Authors are afflated wth School of Operatons Research and Informaton Engneerng, Cornell Unversty, Ithaca, New York 14853, USA. Ther emal addresses are jmd388@cornell.edu, topaloglu@ore.cornell.edu and dpw@cs.cornell.edu.

In many retal envronments, there are multple substtutable products that can serve the needs of a customer and customers make a choce among the avalable products by comparng them wth respect to attrbutes such as prce, qualty, rchness of features and durablty. When such substtuton possbltes are present, the demand for a product depends not only on ts own attrbutes, but also on the attrbutes of the other products, creatng nteractons between the demands for dfferent products. Dscrete choce models become useful to capture such demand nteractons, snce they represent the demand for a partcular product as a jont functon of the attrbutes of all avalable products. Capturng the nteractons between the demands for the products has recently become more mportant than ever, as onlne retalers and travel agences brng a large varety of optons to customers. Nevertheless, optmzaton models that try to fnd the rght prces to charge for the products quckly become complcated when one uses sophstcated choce models to capture the nteracton between the demands for the products. These optmzaton models become even more complcated when one tres to mpose operatonal constrants on the prces charged for the products. In ths paper, we consder prcng problems when customers choose accordng to the nested logt model and there s a qualty consstency constrant on the prces charged for the products. Under the nested logt model, the products are grouped nto nests. The choce process of the customer proceeds n two stages. In the frst stage, the customer decdes ether to make a purchase n one of the nests or to leave the system wthout makng a purchase. In the second stage, f the customer decdes to make a purchase n one of the nests, then the customer chooses one of the products n the chosen nest. Ths choce process s shown n Fgure 1.a. The customer starts from the root node of the tree. In the frst stage, she chooses one of the nests or the no purchase opton. In the second stage, f she has chosen one of the nests n the frst stage, then she selects one of the products n the chosen nest. In the qualty consstency constrant that we mpose on the prces, there s an ntrnsc orderng between the qualtes of the products. The qualty consstency constrant ensures that the prces charged for the products of hgher qualty are also larger. The goal s to fnd the prces to charge for the products to maxmze the expected revenue obtaned from a customer, whle makng sure that the prces satsfy the qualty consstency constrant. We consder two types of qualty consstency constrant. In the frst type of constrant, there s an ntrnsc orderng between the qualtes of the products n each nest. We refer to ths qualty consstency constrant as prce ladders nsde nests. Fgure 1.b llustrates ths qualty consstency constrant wth three products n each nest and the prce of product j n nest s denoted by p j. The products n each nest are ndexed such that the thrd product s of hgher qualty than the second product n the same nest, whch s, n turn, of hgher qualty than the frst product. Therefore, the prce of the thrd product should be larger than the prce of the second product, whch should, n turn, be larger than the prce of the frst product. There s no dctated orderng between the qualtes or prces of the products n dfferent nest. In the second type of constrant, there s an ntrnsc orderng between the qualtes of the nests, but there s no clear orderng between the qualtes of the products n the same nest. We refer to ths qualty consstency constrant as prce 2

(a) (b) (c) Root Root Root No Purc. No Purc. No Purc. Nest 1 Nest 2 Nest 3 Nest 1 Nest 2 Nest 1 Nest 2 Nest 3 1 2 1 2 1 2 1 2 3 1 2 3 1 2 1 2 1 2 max, mn,, max, mn, Fgure 1: Nested logt model, prce ladders nsde nests and prce ladders between nests. ladders between nests. Fgure 1.c llustrates ths qualty consstency constrant wth three nests. The nests are ndexed such that the thrd nest corresponds to a hgher qualty level than the second nest, whch, n turn, corresponds to a hgher qualty level than the frst nest. So, the prce for any product n the thrd nest should be larger than the prce for any product n the second nest, whch should, n turn, be larger than the prce for any product n the frst nest. At the end of ths secton, we dscuss practcal stuatons where such prce constrants naturally arse. Man Results and Contrbutons. In ths paper, we gve algorthms to fnd the optmal prces to charge under both types of qualty consstency constrants. In our settng, there are m nests and n products n each nest. The prce of each product s chosen wthn a fnte set of possble prces and there are q possble prces for each product. Therefore, the vector of prces charged for the products n a nest takes values n R n and each component of ths vector takes one of the q possble values, whch mples that there are O(q n ) possble prce vectors that we can charge for the products n a nest. Under prce ladders wthn nests, we show that the optmal prce vector to charge n a nest s one of at most nq canddate prce vectors and all of these canddate prce vectors can be constructed by solvng a lnear program through the parametrc smplex method. The lnear program that we use to come up wth the canddate prce vectors has O(nq) decson varables and O(nq 2 ) constrants. Ths result reduces the number of possble prce vectors to consder for each nest from O(q n ) to O(nq). However, although the optmal prce vector to charge n each nest s one of O(nq) canddate prce vectors, computng the optmal prces to charge over all nests can stll be challengng, snce there are O((nq) m ) dfferent ways of combnng nq canddate prce vectors from m nests. To deal wth ths dffculty, we gve a lnear program wth O(m) decson varables and O(mnq) constrants that fnds the optmal combnaton of prce vectors to charge n dfferent nests. Thus, we solve a lnear program wth O(nq) decson varables and O(nq 2 ) constrants by 3

usng the parametrc smplex method to come up wth O(nq) canddate prce vectors for each nest. We fnd the optmal combnaton of canddate prce vectors to charge n dfferent nests by solvng another lnear program wth O(m) decson varables and O(mnq) constrants. Prcng problems under prce ladders between nests are consderably more dffcult than the ones under prce ladders nsde nests snce prce ladders between nests create nteractons between the prces charged for the products n dfferent nests. Under prce ladders between nests, we show that the optmal prce vector to charge n a nest s one of at most nq 3 canddate prce vectors and all of these canddate prce vectors can be constructed by solvng a lnear program through the parametrc smplex method. The lnear program that we use to come up wth the canddate prce vectors has O(nq) decson varables and O(n) constrants. To fnd the optmal combnaton of prce vectors to charge n dfferent nests, we gve a lnear program wth O(mq) decson varables and O(mnq 4 ) constrants. In our numercal experments, we consder test problems wth as many as m = 6 nests, n = 30 products n each nest and q = 30 possble prces for each product, yeldng a total of 180 products. Under prce ladders nsde nests, we can compute the optmal prces to charge for the products n about two seconds, whereas under prce ladders between nests, we can compute the optmal prces n about two mnutes. In addton to provdng soluton algorthms that fnd the optmal prces under prce ladders nsde nests and between nests, we make practcally useful contrbutons through our formulaton of the prcng problem. In our formulaton, the prce of each product s chosen wthn a fnte set of possble prces and the set of possble prces for a product s defned by the modeler. The modeler can desgn the set of possble prces for a product to correspond to the prces that are commonly used n retal, such as prces that end n 99 cents or prces that are n ncrements of 10 dollars. Furthermore, the nested logt model commonly assumes that there s a parametrc relatonshp between the attractveness of a product and ts prce. For example, t s common to assume that f the prce charged for product j n nest s p j, then the attractveness of ths product s gven by exp(α j β j p j ), where α j and β j are fxed parameters; see L and Huh (2011) and Gallego and Wang (2014). Our formulaton of the prcng problem does not assume a parametrc relatonshp between the attractveness of a product and ts prce, allowng the attractveness of a product to depend on ts prce n an arbtrary fashon. Related Lterature. There s a sgnfcant amount of work on solvng prcng problems under varants of the multnomal and nested logt models. Under the multnomal logt model, Hanson and Martn (1996) observe that the expected revenue s not a concave functon of the prces for the products. Song and Xue (2007) and Dong et al. (2009) solve the prcng problem by expressng the expected revenue as a functon of the market shares of the products and showng that the expected revenue s a concave functon of the market shares. Chen and Hausman (2000) and Wang (2012) gve tractable soluton methods for jont assortment optmzaton and prcng problems under the multnomal logt model, where the set of products offered to customers, as well as the prces of the offered products, are decson varables. Zhang and Lu (2013) dscuss revenue 4

management problems, where the prces charged for the products are dynamcally adjusted over tme as a functon of the remanng tme n the sellng horzon and the remanng nventory for the products. Davs et al. (2013) show that prcng problems under the multnomal logt model wth a fnte set of possble prces can be formulated as a lnear program. Keller et al. (2014) study prcng problems, where the attractveness of a product depends on ts prce n a general fashon and there are constrants on the expected number of sales for the products. The lterature on solvng prcng problems under the nested logt model has recently started growng. L and Huh (2011) study prcng problems under the assumpton that the products n the same nest have the same prce senstvty. They show that f the products n the same nest have the same prce senstvty, then the prcng problem can be formulated as a convex program. Gallego and Wang (2014) consder the case where the products n the same nest do not necessarly have the same prce senstvty. They show that the expected revenue functon can have multple local maxma and show how to fnd a local maxmum of the expected revenue functon. The authors also gve suffcent condtons that elmnate multple local maxma. Rayfeld et al. (2013) develop algorthms for computng solutons wth a specfed performance guarantee even when there are multple local maxma of the expected revenue functon. L and Huh (2013) and L et al. (2014) consder prcng problems under the nested logt model, where the choce process proceeds n more than two stages. The earler work on prcng problems under the nested logt model does not consder qualty consstency constrants. Chargng qualty consstent prces s practcally mportant snce such prces convey a sense of farness to customers. Rusmevchentong et al. (2006) consder qualty consstent prcng problems. Ther work s motvated by a prcng problem n the automoble ndustry, where the prces of the automobles wth rcher features should also be larger. They use a nonparametrc choce model, show that the correspondng prcng problem wth a qualty consstency constrant s NP hard and provde an approxmaton algorthm. Gallego and Stefanescu (2009) dscuss farness ssues when provdng upgrades to customers. In the context of arlne ndustry, they pont out that f the customers need to be upgraded, then the customers wth low fare class reservatons should be upgraded to a relatvely lower fare class, when compared wth the customers wth hgh fare class reservatons. They develop flud models for revenue management problems wth upgrade possbltes. They show that f the prces satsfy a certan qualty consstency constrant, then ther model upgrades customers wth low fare class reservatons to a relatvely lower fare class, when compared wth the customers wth hgh fare class reservatons. We work wth two dfferent types of qualty consstency constrant. In the frst type of qualty consstency constrant, there s an ntrnsc orderng between the qualtes of the products n the same nest and the prces for the products of hgher qualty should also be larger. As an example of a stuaton where ths type of qualty consstency constrant becomes relevant, we consder the case where the nests correspond to dfferent brands and the products wthn a partcular nest correspond to the varants of a partcular brand wth dfferent qualtes. There s a verfable 5

orderng between the qualtes of the dfferent varants of a partcular brand and the customers expect that the prces for the varants of hgher qualty should also be larger. On the other hand, t s dffcult to compare the varants of dfferent brands n terms of qualty and there s no reason for the customers to expect a partcular orderng between the prces for the varants of dfferent brands. In the second type of qualty consstency constrant, dfferent nests correspond to dfferent qualty levels and there s an ntrnsc orderng between the qualty levels of the nests. The prce for any product n a nest correspondng to a hgher qualty level should be larger than the prce for any product n a nest correspondng to a lower qualty level. As an example of a stuaton where ths type of qualty consstency constrant becomes relevant, we consder the case where the nests correspond to dfferent qualty levels and the products wthn a partcular nest correspond to products that dffer n cosmetc or personal features, such as color. The customers expect that the prces for the products n a nest correspondng to a hgher qualty level are larger than the prces for the products n a nest correspondng to a lower qualty level, but there s no reason for the customers to expect a partcular orderng between the prces for the products n a partcular nest snce these products dffer n cosmetc or personal features. Although the two types of qualty consstency constrants cover a varety of useful stuatons, we observe that there can be other qualty consstency constrants that are not covered by our results. In our conclusons, we dscuss some possble extensons of our qualty consstency constrants. A useful approach for solvng optmzaton problems under the nested logt model s to construct a small collecton of canddate solutons for each nest and to solve a lnear program to combne the canddate solutons for the dfferent nests. Gallego and Topaloglu (2014) and Feldman and Topaloglu (2014) follow ths approach for assortment optmzaton problems, where the prces of the products are fxed and the goal s to fnd a set of products to offer to customers to maxmze the expected revenue obtaned from a customer. The development n ths paper s based on ths general approach as well, but there are two mportant challenges that need to be overcome when usng ths approach for prcng problems. Frst, constructng a small collecton of canddate prce vectors to charge n each nest carefully explots the structure of the prcng problem. In partcular, we make use of the fact that the attractveness of a product s decreasng n ts prce and t s not clear how to construct a small collecton of canddate prce vectors when the attractveness of a product s not necessarly decreasng n ts prce. Second, under prce ladders between nests, the prces charged n dfferent nests nteract wth each other snce the prce for any product n a nest correspondng to a hgher qualty level should be larger than the prce for any product n a nest correspondng to a lower qualty level. Due to the nteractons between the prces charged n dfferent nests, fndng the optmal combnaton of prce vectors to choose n each nest becomes dffcult. We address ths dffculty by usng the lnear programmng formulaton of a dynamc program that fnds the best combnaton of the canddate prce vectors for the dfferent nests. The rest of the paper s organzed as follows. In Secton 1, we study the prcng problem under prce ladders nsde nests. In Secton 2, we study the prcng problem under prce ladders between nests. In Secton 3, we provde numercal experments. In Secton 4, we conclude. 6

1 Prce Ladders Insde Nests In ths secton, we consder the case wth prce ladders nsde nests. In ths settng, there s an ntrnsc orderng between the qualtes of the products n the same nest and the prces for the products of hgher qualty should also be larger. There s no ntrnsc orderng between the qualtes or the prces of the products n dfferent nests. 1.1 Problem Formulaton There are m nests and we ndex the nests by M = {1,..., m}. In each nest, there are n products and we ndex the products n each nest by N = {1,..., n}. For each product, there are q possble prces. The possble prces for a product are gven by Θ = {θ 1,..., θ q }. Wthout loss of generalty, we ndex the possble prces so that 0 < θ 1 < θ 2 <... < θ q. We use p j Θ to denote the prce that we charge for product j n nest. If we charge prce p j for product j n nest, then the preference weght of ths product s gven by v j (p j ). If we charge a larger prce for a product, then ts preference weght becomes smaller, mplyng that v j (θ 1 ) > v j (θ 2 ) >... > v j (θ q ) > 0. Our notaton so far mples that the number of products n each nest s the same and the set of possble prces that we can charge for each product s the same. However, ths assumpton s only for notatonal brevty and our results n the paper contnue to hold wth straghtforward modfcatons when there are dfferent numbers of products n dfferent nests and the sets of possble prces for the dfferent products are dfferent. We use p = (p 1,..., p n ) Θ n to capture the prce vector charged n nest. As a functon of the prce vector p charged n nest, we use V (p ) to denote the total preference weght of the products n nest, so that V (p ) = j N v j(p j ). Under the nested logt model, f we charge the prce vector p n nest, then a customer that has already decded to make a purchase n nest chooses product j n ths nest wth probablty v j (p j )/V (p ). In ths case, f we charge the prce vector p n nest and a customer has already decded to make a purchase n ths nest, then the expected revenue obtaned from ths customer s gven by R (p ) = v j (p j ) p j V (p ) = j N p j v j (p j ). (1) V (p ) j N For each nest, the nested logt model has a parameter γ [0, 1] characterzng the degree of dssmlarty between the products n ths nest. We use v 0 to denote the preference weght of the no purchase opton. Θ m n Under the nested logt model, f we charge the prce vectors (p 1,..., p m ) over all nests, then a customer decdes to make a purchase n nest wth probablty Q (p 1,..., p m ) = V (p ) γ /(v 0 + l M V l(p l ) γ l). The last expresson provdes the probablty that a customer chooses nest as a functon of the prces charged for all products n all nests. The parameter γ magnfes or dampens the preference weghts of the products n nest. Accordng to the nested logt model, f we charge the prce vectors (p 1,..., p m ) over all nests, then a customer decdes to make a purchase n nest wth probablty Q (p 1,..., p m ) = 7

V (p ) γ /(v 0 + l M V l(p l ) γ l). expected revenue obtaned from ths customer s R (p ). If the customer decdes to make a purchase n nest, then the Thus, f we charge the prce vectors (p 1,..., p m ) over all nests, then the expected revenue from a customer s gven by Π(p 1,..., p m ) = M Q (p 1,..., p m ) R (p ) = V (p ) γ R (p ) v 0 + M M V (p ) γ. (2) Our goal s to fnd the prce vectors (p 1,..., p m ) to charge over all nests to maxmze the expected revenue above subject to the constrant that the prce vector charged n each nest satsfes a prce ladder constrant. To formulate the prce ladder constrant, wthout loss of generalty, we ndex the products n each nest such that products wth larger ndces are of hgher qualty. In other words, the products N = {1,..., n} n each nest are ndexed n the order of ncreasng qualty. The prce ladder constrant ensures that the prce for a product of hgher qualty s larger. That s, the prce ladder constrant n nest ensures that p 1 p 2... p n. Thus, the set of feasble prce vectors n nest can be wrtten as F = {p Θ n : p j p,j 1 j N \ {1}}. We want to fnd the prce vectors to charge over all nests to maxmze the expected revenue from a customer whle satsfyng the prce ladder constrant, yeldng the problem z = max (p 1,..., p m ) Θ m n : p F M { } Π(p 1,..., p m ). (3) In the problem above, the prce of each product takes values n the dscrete set Θ. Furthermore, the objectve functon depends on the prces of the products n a nonlnear fashon. Thus, ths problem s a nonlnear combnatoral optmzaton problem. We emphasze two useful advantages of our formulaton of problem (3). Frst, snce the prce for each product s chosen among a set of possble prces gven by Θ and we can desgn Θ n any way we want, our formulaton allows choosng the prces of the products among the prces that are commonly used n retal, such as prces that end n 99 cents or prces that are n ncrements of 10 dollars. Second, the nested logt model commonly assumes a fxed functonal relatonshp between the prce of a product and ts preference weght. For example, as a functon of the prce p j of product j n nest, t s common to assume that the preference weght v j (p j ) of ths product s gven by v j (p j ) = exp(α j β j p j ), where α j and β j are fxed parameters. In contrast, our formulaton of problem (3) does not rely on such a fxed functonal relatonshp and we allow the dependence between v j (p j ) and p j to be arbtrary, as long as v j (p j ) s decreasng n p j. 1.2 Connecton to a Fxed Pont Representaton In ths secton, we answer a queston that becomes crtcal when developng a tractable soluton approach for problem (3). Assume that we have a collecton of canddate prce vectors P = {p t : t T } to charge n nest and all of the prce vectors n the collecton P satsfy the prce ladder constrant n the sense that p t F for all t T. We know that we can sttch together an optmal soluton to problem (3) by pckng one prce vector from each one of the canddate 8

collectons P 1,..., P m. In other words, we know that there exsts an optmal soluton (p 1,..., p m) to problem (3) that satsfes p P for all M. The queston that we want to answer s how we can pck a prce vector p from the collecton P for each nest such that the soluton (p 1,..., p m) s ndeed optmal to problem (3). It s dffcult to answer ths queston through complete enumeraton snce complete enumeraton requres checkng the expected revenues from P 1... P m possble solutons, whch quckly gets ntractable when the number of nests s large. To answer ths queston, we relate problem (3) to the problem of computng the fxed pont of an approprately defned functon. In partcular, for z R +, we defne f(z) as f(z) = { } max V (p ) γ (R (p ) z). (4) p P M The value of ẑ satsfyng v 0 ẑ = f(ẑ) s the fxed pont of the functon f( )/v 0. Snce v 0 z s ncreasng and f(z) s decreasng n z wth f(0) 0, there exsts ẑ satsfyng v 0 ẑ = f(ẑ). In the next theorem, we show that we can use ths value of ẑ to construct an optmal soluton to problem (3). In ths theorem, we recall that z corresponds to the optmal objectve value of problem (3). Theorem 1 Assume that we have a collecton of canddate prce vectors P for each nest such that we can sttch together an optmal soluton to problem (3) by pckng one prce vector from each one of the collectons P 1,..., P m. Let the value of ẑ be such that v 0 ẑ = f(ẑ) and ˆp be an optmal soluton to the problem Then, we have Π(ˆp 1,..., ˆp m ) z. { } max V (p ) γ (R (p ) ẑ). (5) p P Proof. We use (p 1,..., p m) to denote an optmal soluton to problem (3). By our assumpton, we can sttch together an optmal soluton to problem (3) by pckng one prce vector from each one of the collectons P 1,..., P m. Thus, we can assume that p P for all M, whch mples that soluton p s feasble to the problem on the rght sde of (4) and we get f(ẑ) M V (p )γ (R (p ) ẑ). In ths case, notng the fact that v 0 ẑ = f(ẑ), we have v 0 ẑ M V (p )γ (R (p ) ẑ). Solvng for ẑ n the last nequalty, we obtan ẑ M V (p )γ R (p )/(v 0 + M V (p )γ ). Notng that z = Π(p 1,..., p m) = M V (p )γ R (p )/(v 0 + M V (p )γ ) by the defnton of Π(p 1,..., p m ) n (2), the last nequalty mples that ẑ z. Thus, to fnsh the proof, t s enough to show that Π(ˆp 1,..., ˆp m ) = ẑ. Snce ˆp s an optmal soluton to problem (5), by the defnton of f(z) n (4) and the fact that v 0 ẑ = f(ẑ), we have v 0 ẑ = f(ẑ) = M V (ˆp ) γ (R (ˆp ) ẑ). In ths case, focusng on the frst and last expressons n the last chan of equaltes and solvng for ẑ, we obtan ẑ = M V (ˆp ) γ R (ˆp )/(v 0 + M V (ˆp ) γ ) and the desred result follows by notng that Π(ˆp 1,..., ˆp m ) = M V (ˆp ) γ R (ˆp )/(v 0 + M V (ˆp ) γ ). Theorem 1 suggests the followng approach to obtan an optmal soluton to problem (3). Assume that we have a collecton of canddate prce vectors P = {p t : t T } for each nest such that 9

we can sttch together an optmal soluton to problem (3) by pckng one prce vector from each one of the collectons P 1,..., P m. Furthermore, assume that each one of the prce vectors n the canddate collecton P = {p t : t T } satsfes the prce ladder constrant n the sense that p t F for all p t P. To obtan an optmal soluton to problem (3), we fnd the value of ẑ that satsfes v 0 ẑ = f(ẑ). In ths case, f we let ˆp be an optmal soluton to problem (5), then t follows from Theorem 1 that Π(ˆp 1,..., ˆp m ) z. Furthermore, snce p t F for all p t P, the soluton (ˆp 1,..., ˆp m ) s feasble to problem (3). Therefore, (ˆp 1,..., ˆp m ) s a feasble soluton to problem (3) and provdes an objectve value to problem (3) that s at least as large as the optmal objectve value of ths problem, whch mples that (ˆp 1,..., ˆp m ) s an optmal soluton to problem (3), as desred. We observe that the dscusson n ths paragraph also provdes an answer to the queston that we ask at the begnnng of ths secton. In partcular, f we know that we can sttch together an optmal soluton to problem (3) by pckng one prce vector from each one of the collectons P 1,..., P m, then we can use Theorem 1 to obtan an optmal soluton to problem (3). One remanng queston s how we can fnd the value of ẑ that satsfes v 0 ẑ = f(ẑ) n a tractable fashon. Notng that v 0 z s ncreasng and f(z) s decreasng n z, we can fnd the value of ẑ that satsfes v 0 ẑ = f(ẑ) by solvng the problem mn{z : v 0 z M max p P V (p ) γ (R (p ) z)}, where the decson varable s z. The constrant n ths problem s nonlnear n z, but we can lnearze the constrant by usng the addtonal decson varables y = (y 1,..., y m ) wth the nterpretaton that y = max p P V (p ) γ (R (p ) z). v 0 ẑ = f(ẑ) by solvng the problem { mn In ths case, we can fnd the value of ẑ that satsfes z : v 0 z M y, y V (p ) γ (R (p ) z) p P, M }, (6) where the decson varables are (z, y). The problem above s a lnear program wth O(m) decson varables and M O( P ) constrants, whch s tractable as long as the numbers of prce vectors n the collectons P 1,..., P m are relatvely small. In the rest of our dscusson, we focus on how to construct a small collecton of canddate prce vectors P for each nest such that we can sttch together an optmal soluton to problem (3) by pckng one prce vector from each one of the collectons P 1,..., P m. Once we have these collectons, we can solve problem (6) to fnd ẑ satsfyng v 0 ẑ = f(ẑ) and we can use Theorem 1 to obtan an optmal soluton to problem (3). 1.3 Characterzng Canddate Prce Vectors In ths secton, we gve a characterzaton of the optmal prce vector to charge n each nest. Ths characterzaton ultmately becomes useful to construct a collecton of canddate prce vectors P for each nest such that we can sttch together an optmal soluton to problem (3) by pckng one prce vector from each one of the collectons P 1,..., P m. In the next lemma, we begn by gvng a smple condton for a soluton to provde an objectve value for problem (3) that s at least as large as the optmal objectve value. Subsequent to ths lemma, we buld on ths condton to gve a characterzaton of the optmal prce vector to charge n each nest. 10

Lemma 2 Let (p 1,..., p m) be an optmal soluton to problem (3) provdng the objectve value z. If (ˆp 1,..., ˆp m ) satsfes V (ˆp ) γ (R (ˆp ) z ) V (p ) γ (R (p ) z ) for all M, then we have Π(ˆp 1,..., ˆp m ) z. Proof. Addng the nequalty n the lemma over all M yelds M V (ˆp ) γ (R (ˆp ) z ) M V (p )γ (R (p ) z ). Snce (p 1,..., p m) s an optmal soluton to problem (3), we have z = M V (p )γ R (p )/(v 0 + M V (p )γ ). Arrangng the terms n ths equalty, we obtan v 0 z = M V (p )γ (R (p ) z ), n whch case, t follows that M V (ˆp ) γ (R (ˆp ) z ) M V (p )γ (R (p ) z ) = v 0 z. Focusng on the frst and last terms n ths chan of nequaltes and solvng for z, we get M V (ˆp ) γ R (ˆp )/(v 0 + M V (ˆp ) γ ) z and the desred result follows by notng that Π(ˆp 1,..., ˆp m ) = M V (ˆp ) γ R (ˆp )/(v 0 + M V (ˆp ) γ ). In the next theorem, we buld on the condton gven n Lemma 2 to gve a characterzaton of the optmal prce vector to charge n each nest. Theorem 3 Let (p 1,..., p m) be an optmal soluton to problem (3) provdng the objectve value z and set u = max{γ z + (1 γ ) R (p ), z }. If ˆp s an optmal soluton to the problem { } max V (p ) (R (p ) u ), (7) p F then (ˆp 1,..., ˆp m ) s an optmal soluton to problem (3). Proof. For notatonal brevty, we let R = R (p ), V = V (p ), ˆR = R (ˆp ) and ˆV = V (ˆp ). We clam that ˆV γ ( ˆR z ) (V )γ (R z ) for all M. To see ths clam, we consder a nest that satsfes R z. Snce p s a feasble but not necessarly an optmal soluton to problem (7), we have ˆV ( ˆR u ) V (R u ). Snce R z, we have u = γ z + (1 γ ) R by the defnton of u and pluggng ths value of u nto the last nequalty yelds ˆV ( ˆR z ) (1 γ ) ˆV (R z ) γ V (R z ). Arrangng the terms n the last nequalty, we obtan ˆR z V [γ ] + (1 γ ) (R ˆV z ). (8) Notng that the dssmlarty parameter for nest satsfes γ [0, 1], the functon x γ s concave n x and ts dervatve at pont 1 s γ. Therefore, the subgradent nequalty at pont 1 yelds x γ 1 + γ (x 1) = γ x + (1 γ ) for all x R +. Usng the subgradent nequalty wth x = V / ˆV, t follows that (V / ˆV ) γ γ (V / ˆV ) + 1 γ. In ths case, snce R z, (8) mples that ˆR z (V / ˆV ) γ (R z ) and arrangng the terms n ths nequalty yelds ˆV γ ( ˆR z ) (V )γ (R z ). Therefore, the clam holds for each nest that satsfes R z. We consder a nest that satsfes R < z. Snce θ q s the largest possble prce for a product, the optmal expected revenue n problem (3) does not exceed θ q and we obtan z θ q. 11 We

defne the soluton p = ( p 1,..., p n ) to problem (7) as p j = θ q for all j N, whch s feasble to ths problem. Furthermore, (1) mples that R ( p ) = j N θq v j ( p j )/ j N v j( p j ) = θ q. Snce R < z, we have u = z by the defnton of u and we obtan ˆV ( ˆR z ) = ˆV ( ˆR u ) V ( p ) (R ( p ) u ) = V ( p ) (R ( p ) z ) 0 > V (R z ), where the frst nequalty uses the fact that p s a feasble but not necessarly an optmal soluton to problem (7), the second nequalty uses the fact that R ( p ) = θ q z and the thrd nequalty uses the fact that R < z. Thus, we have ˆV ( ˆR z ) 0 > V (R z ), whch mples that ˆV γ ( ˆR z ) 0 > (V )γ (R z ), establshng the clam for each nest that satsfes R < z. The dscusson n the prevous two paragraphs shows that our clam holds and we obtan ˆV γ ( ˆR z ) (V )γ (R z ) for all M. In ths case, the soluton (ˆp 1,...,, ˆp m ) satsfes the assumpton of Lemma 2 and t follows from ths lemma that Π(ˆp 1,..., ˆp m ) z. On the other hand, notng that ˆp s a feasble soluton to problem (7), we have ˆp F for all M, whch ndcates that (ˆp 1,..., ˆp m ) s a feasble soluton to problem (3). The soluton (ˆp 1,..., ˆp m ) s feasble to problem (3) and t provdes an objectve value for problem (3) that s at least as large as the optmal objectve value of ths problem. Therefore, we conclude that (ˆp 1,..., ˆp m ) s an optmal soluton to problem (3), as desred. By Theorem 3, we can recover an optmal soluton to problem (3) by solvng problem (7) for all M. Thus, f we let ˆp be an optmal soluton to problem (7) and use the sngleton P = {ˆp } as the collecton of canddate prce vectors to charge n nest, then we can sttch together an optmal soluton to problem (3) by pckng one prce vector from each one of the collectons P 1,..., P m. However, ths approach s not mmedately useful for constructng a collecton of canddate prce vectors, snce solvng problem (7) requres the knowledge of u, whch, n turn, requres the knowledge of an optmal soluton to problem (3). To get around ths dffculty, as a functon of u R +, we use ˆp (u ) to denote an optmal soluton to the problem { } max V (p ) (R (p ) u ). (9) p F In ths case, we observe that f we use the collecton of prce vectors P = {ˆp (u ) : u R + } as the collecton of canddate prce vectors for nest, then we can sttch together an optmal soluton to problem (3) by pckng one prce vector from each one of the collectons P 1,..., P m. To see ths result, lettng u be as defned n Theorem 3, we note that ˆp (u ) {ˆp (u ) : u R + } for all M. Furthermore, snce problem (9) wth u = u s dentcal to problem (7), by Theorem 3, the soluton (ˆp 1 (u 1 ),..., ˆp m(u m)) s optmal to problem (3). Therefore, for each nest, the soluton (ˆp 1 (u 1 ),..., ˆp m(u m)) uses one prce vector from the collecton of canddate prce vectors P = {ˆp (u ) : u R + } and ths soluton s optmal to problem (3). We propose usng {ˆp (u ) : u R + } as the collecton of canddate prce vectors for nest, whch s the collecton of optmal solutons to problem (9) for any value of u R +. In the subsequent sectons, we show that the collecton {ˆp (u ) : u R + } ncludes a reasonably small number of prce vectors and we can fnd these prce vectors n a tractable fashon. 12

1.4 Countng Canddate Prce Vectors In ths secton, we show that there exsts a collecton of prce vectors P = {p t : t T } such that ths collecton ncludes an optmal soluton to problem (9) for any value of u R + and there are at most nq prce vectors n ths collecton, where n s the number of products n a nest and q s the number of possble prce levels. The fact that the objectve functon of problem (9) has a smple form plays an especally mportant role n ths result. In partcular, usng the defntons of V (p ) and R (p ), we can wrte problem (9) equvalently as { max p F j N [ j N v j (p j ) p j v j (p j ) ] } j N v u = max j(p j ) p F { } (p j u ) v j (p j ). (10) In the next lemma, we begn by showng that as the value of u n problem (10) gets larger, then the optmal prce for each product also gets larger. j N Lemma 4 Usng ˆp (u ) = (ˆp 1 (u ),..., ˆp n (u )) to denote an optmal soluton to problem (10) as a functon of u, f we have u < u +, then t holds that ˆp j(u ) ˆp j(u + ) for all j N. Proof. To get a contradcton, assume that u < u + but we have ˆp j (u ) > ˆp j(u + ) for some j N. For notatonal brevty, we let ˆp = ˆp (u ) and ˆp+ = ˆp (u + ). Snce the solutons ˆp and ˆp + are optmal to problem (10) when ths problem s solved at partcular values of u, we have ˆp F and ˆp + F, whch s to say that ˆp 1 ˆp 2... ˆp n and ˆp+ 1 ˆp+ 2... ˆp+ n. We let J = {j N : ˆp j > ˆp+ j }, whch n nonempty by the assumpton that ˆp j > ˆp+ j for some j N. We defne the soluton p = ( p 1,..., p n ) to problem (10) as p j = ˆp j ˆp+ j for all j N, where we use a b = max{a, b}. If f(j) and g(j) are both ncreasng functons of j N, then f(j) g(j) s also an ncreasng functon of j N. By the dscusson at the end of the prevous paragraph, ˆp j and ˆp+ j are both ncreasng functons of j N. Thus, p j = ˆp j ˆp+ j s also an ncreasng functon of j N, whch mples that p 1 p 2... p n. Therefore, we have p F, ndcatng that p s a feasble soluton to problem (10). In ths case, snce ˆp + s an optmal soluton to problem (10) when we solve ths problem wth u = u +, we have j N (ˆp+ j u+ ) v j(ˆp + j ) j N ( p j u + ) v j( p j ). By the defntons of J and p, we have p j = ˆp j for all j J and p j = ˆp + j for all j J. Thus, the last nequalty can be wrtten as j N (ˆp+ j u+ ) v j(ˆp + j ) j J (ˆp j u+ ) v j(ˆp j ) + j J (ˆp+ j u+ ) v j(ˆp + j ), n whch case, cancelng the common terms on the two sdes of the nequalty, we have j J (ˆp+ j u+ ) v j(ˆp + j ) j J (ˆp j u+ ) v j(ˆp j ). We defne the soluton p = ( p 1,..., p n ) to problem (10) as p j = ˆp + j ˆp j for all j N, where we use a b = mn{a, b}. We note that f f(j) and g(j) are both ncreasng functons of j N, then f(j) g(j) s also an ncreasng functon of j N. In ths case, usng the same approach n the prevous paragraph, we can show that p F. Thus, snce ˆp s an optmal soluton to problem (10) when we solve ths problem wth u = u, we have j N (ˆp j u ) v j(ˆp j ) j N ( p j u ) v j( p j ). Notng the defntons of J and p, the last nequalty can equvalently be 13

wrtten as j N (ˆp j u ) v j(ˆp j ) j J (ˆp+ j u ) v j(ˆp + j )+ j J (ˆp j u ) v j(ˆp j ), n whch case, cancelng the common terms on the two sdes of the nequalty yelds j J (ˆp j u ) v j(ˆp j ) j J (ˆp+ j u ) v j(ˆp + j ). From the prevous paragraph, we also have j J (ˆp+ j u+ ) v j(ˆp + j ) j J (ˆp j u+ ) v j(ˆp j ). Addng the last two nequaltes and cancelng the common terms yeld u j J (v j(ˆp + j ) v j(ˆp j )) u+ j J (v j(ˆp + j ) v j(ˆp j )). By the defnton of J, we have ˆp j > ˆp+ j for all j J. Notng that the preference weght of a product gets larger as we charge a smaller prce for the product, we have v j (ˆp j ) < v j(ˆp + j ) for all j J. Thus, we have j J (v j(ˆp + j ) v j(ˆp j )) > 0, n whch case, by the nequalty at the end of the prevous paragraph, we obtan u u +, whch s a contradcton. We observe that the last step n the proof of Lemma 4 crtcally depends on the assumpton that v j (p j ) s a decreasng functon of p j. Also, t s worthwhle to note that Lemma 4 holds even when there are multple optmal solutons to problem (10) and we choose ˆp (u ) as any one of these solutons. In the next theorem, we use Lemma 4 to show that there exsts a collecton of at most nq prce vectors such that ths collecton ncludes an optmal soluton to problem (10) for any value of u R +. The ntuton behnd ths result s that f we ncrease the value of u n problem (10), then Lemma 4 mples that the prce of a product n an optmal soluton ether does not change or becomes larger. Snce there are q possble prces for a product, the prce of a product wll no longer change after a small number of prce changes. Theorem 5 There exsts a collecton of at most nq prce vectors such that ths collecton ncludes an optmal soluton to problem (10) for any value of u R +. Proof. Assume that there are K dstnct values of u R + such that f we solve problem (10) wth each one of these values, then we obtan a dstnct optmal soluton. We use {û k : k = 1,..., K} to denote these values of u R + and use ˆp k to denote an optmal soluton to problem (10) when we solve ths problem wth u = û k. By our assumpton, none of prce vectors n {ˆpk : k = 1,..., K} are equal to each other. To get a contradcton, assume that K > nq. Wthout loss of generalty, we ndex the values {û k : k = 1,..., K} such that û 1 < û2 <... < ûk, n whch case, Lemma 4 mples that ˆp 1 j ˆp2 j... ˆpK j for all j N. Snce the prce vectors {ˆpk : k = 1,..., K} are dstnct, usng 1( ) to denote the ndcator functon, we have j N 1(ˆpk j < ˆpk+1 j ) > 1, ndcatng that there s at least one dfferent prce n the prce vectors ˆp k and ˆpk+1. Addng the last nequalty over all k = 1,..., K 1 and notng that K > nq, we obtan K 1 j N k=1 1(ˆpk j < ˆpk+1 j ) > K 1 nq. Focusng on the frst and last terms n the last chan of nequaltes, snce N = n, t must be the case that K 1 k=1 1(ˆpk j < ˆpk+1 j ) > q for some j N, whch mples that more than q of the nequaltes ˆp 1 j ˆp2 j... ˆpK j are strct, but snce there are q possble values for the prce of a product, more than q of these nequaltes cannot be strct and we obtan a contradcton. Thus, there exsts a reasonably small collecton of prce vectors that ncludes an optmal soluton to problem (10) for any u R +. In the next secton, we show how to construct ths collecton. 14

1.5 Constructng Canddate Prce Vectors In the prevous secton, we show that there exsts a collecton of prce vectors wth at most nq prce vectors n t such that ths collecton ncludes an optmal soluton to problem (10) for any value of u R +. In ths secton, we show how to come up wth ths collecton n a tractable fashon. In problem (10), f we charge the prce p j for product j n nest, then we obtan a contrbuton of (p j u ) v j (p j ). By the constrant p F, the prce charged for product j should be at least as large as the prce charged for product j 1. Problem (10) fnds the prces to charge for the products n nest to maxmze the total contrbuton. So, we can solve problem (10) by usng a dynamc program. The decson epochs are the products n nest. When makng the decson for product j n nest, the state varable s the prce for product j 1. Thus, for a fxed value of u R +, we can solve problem (10) by usng the dynamc program Φ j (p,j 1 u ) = max p j Θ : p j p,j 1 { } (p j u ) v j (p j ) + Φ,j+1 (p j u ), (11) wth the boundary condton that Φ,n+1 ( u ) = 0. The optmal objectve value of problem (10) s gven by Φ 1 (θ 1 u ), where the value functons {Φ j (p,j 1 u ) : p,j 1 Θ, j N} are obtaned through the dynamc program n (11). By Theorem 5, there are most nq solutons from the dynamc program n (11) such that the soluton from ths dynamc program for any value of u R + s one of these nq solutons. The queston s how to come up wth these solutons. To answer ths queston, we use the lnear programmng formulaton of the dynamc program n (11). Dynamc programs wth fnte state and acton spaces have equvalent lnear programmng formulatons; see Puterman (1994). In these lnear programs, there s one decson varable for each state and decson epoch and there s one constrant for each state, acton and decson epoch. The lnear program correspondng to the dynamc program n (11) s gven by mn ϕ 1 (θ 1 ) (12) s.t. ϕ j (p,j 1 ) (p j u ) v j (p j ) + ϕ,j+1 (p j ) p,j 1 Θ, p j L(p,j 1 ), j N, where the decson varables are {ϕ j (p,j 1 ) : p,j 1 Θ, j N} and we follow the conventon that ϕ,n+1 (p n ) = 0 for all p n Θ. The set L(p,j 1 ) s the set of feasble prces for product j gven that the prce for product j 1 s p,j 1, whch s gven by L(p,j 1 ) = {p j Θ : p j p,j 1 }. If we solve the lnear program n (12), then the optmal value of the decson varable ϕ 1 (θ 1 ) s equal to Φ 1 (θ 1 u ) obtaned through the dynamc program n (11), whch s, n turn, equal to the optmal objectve value of problem (10). The crtcal observaton s that the value of u R + only affects the rght hand sde coeffcents of the constrants n problem (12). Therefore, we can vary u R + parametrcally and solve problem (12) by usng the parametrc smplex method to generate the possble optmal solutons to ths problem for all values of u R +. These solutons provde the solutons to the dynamc program n (11) for all values of u R +. Snce there are q possble prces for a product and there are n products n a nest, the lnear program n (12) has O(nq) decson varables and O(nq 2 ) constrants. Puttng all of the dscusson so 15

far together, we solve problem (12) by usng the parametrc smplex method to generate the optmal solutons to ths problem for all values of u R +. These solutons correspond to the optmal solutons to problem (10) for all values of u R +. By the dscusson that follows Theorem 3, we can use the optmal solutons to problem (10) for all values of u R + as the collecton of canddate prce vectors P for nest. Once we have the collecton of canddate prce vectors for each nest, we can solve the lnear program n (6) to obtan the value of ẑ that satsfes v 0 ẑ = f(ẑ). Snce there are at most nq prce vectors n each one of the collectons P 1,..., P m, there are O(m) decson varables and O(mnq) constrants n the lnear program n (6). In ths case, by Theorem 1, we can solve problem (5) for all M to obtan an optmal soluton to problem (3). In Secton 4, we provde numercal experments and demonstrate that the approach descrbed above can obtan an optmal soluton to problem (3) qute fast. For problem nstances wth sx nests, 30 products n each nest and 30 possble prces for each product, we can obtan an optmal soluton to problem (3) n no more than two seconds. 2 Prce Ladders Between Nests In ths secton, we consder the case wth prce ladders between nests. In ths settng, there s an ntrnsc orderng between the qualtes of the nests and the prces charged n a nest correspondng to a hgher qualty level should also be larger. There s no ntrnsc orderng between the qualtes or the prces of the products n the same nest. 2.1 Problem Formulaton Our problem formulaton s smlar to the one n Secton 1.1. There are m nests ndexed by M = {1,..., m}. In each nest, there are n products ndexed by N = {1,..., n}. For each product, there are q possble prces gven by Θ = {θ 1,..., θ q }. The possble prces for a product are ndexed such that 0 < θ 1 < θ 2 <... < θ q. We use p j Θ to denote the prce that we charge for product j n nest. If we charge the prce p j for product j n nest, then the preference weght of ths product s gven by v j (p j ). If we charge a larger prce for a product, then ts preference weght becomes smaller, mplyng that v j (θ 1 ) > v j (θ 2 ) >... > v j (θ q ) > 0. Customers follow the same choce process descrbed n Secton 1.1. Thus, f we use p = (p 1,..., p n ) Θ n to denote the prce vector charged n nest, then the expected revenue obtaned from a customer that has already decded to make a purchase n nest s gven by R (p ), where R (p ) s as n (1). If we charge the prce vectors (p 1,..., p m ) Θ m n over all nests, then the expected revenue obtaned from a customer s gven by Π(p 1,..., p m ), where Π(p 1,..., p m ) s as n (2). Our goal s to fnd the prce vectors (p 1,..., p m ) to maxmze the expected revenue Π(p 1,..., p m ) subject to the constrant that the prce vectors charged n the dfferent nests are consstent wth the qualty level that each nest represents. In other words, f nest corresponds to a hgher qualty level than nest l, then the prces of the products n nest should be larger than the prces of 16

the products n nest l. Ths constrant can be nterpreted as a prce ladder constrant between the nests. To formulate the prce ladder constrant, wthout loss of generalty, we ndex the nests such that a nests wth a larger ndex represents a hgher qualty level. In other words, the nests M = {1,..., m} are ndexed n the order of ncreasng qualty levels. Thus, the prce ladder constrant ensures that the prce vectors (p 1,..., p m ) charged over all nests satsfy max j N p 1j mn j N p 2j, max j N p 2j mn j N p 3j,..., max j N p m 1,j mn j N p mj. As a functon of the prce vector p 1 charged n nest 1, the set of feasble prce vectors n nest s G (p 1 ) = {p Θ n : mn j N p j max j N p 1,j }. We want to fnd the prce vectors to charge over all nests to maxmze the expected revenue from a customer, yeldng the problem { } z = max (p 1,..., p m) Θ m n : p G (p 1 ) M \ {1} Π(p 1,..., p m ). (13) Problem (13) s sgnfcantly more dffcult than problem (3) snce the constrants lnk the prce vectors charged n dfferent nests. The broad outlne of our approach for problem (13) s smlar to the one for problem (3). We relate problem (13) to the problem of computng the fxed pont of a functon. Assumng that we have a collecton of canddate prce vectors for each nest such that we can sttch together an optmal soluton to problem (13) by pckng one prce vector from each one of the collectons, we show how to obtan an optmal soluton to problem (13). Fnally, we show how to come up wth the collectons of canddate prce vectors. Although the broad outlne of our approach for problem (13) s smlar to the one for problem (3), the detals are qute dfferent as problem (13) s sgnfcantly more dffcult than problem (3). 2.2 Connecton to a Fxed Pont Representaton Assume that we have a collecton of canddate prce vectors P = {p t : t T } for each nest such that we can sttch together an optmal soluton to problem (13) by pckng one prce vector from each one of the collectons P 1,..., P m. In other words, there exsts an optmal soluton (p 1,..., p m) to problem (13) such that p P for all M. The queston s how we can pck a prce vector p from the collecton P for each nest such that the soluton (p 1,..., p m) s ndeed optmal to problem (13). To answer ths queston, for any z R +, we defne g(z) as { } g(z) = max V (p ) γ (R (p ) z). (14) (p 1,..., p m) P 1... P m : M p G (p 1 ) M \ {1} Snce v 0 z s ncreasng and g(z) s decreasng n z wth g(0) 0, there exsts a value of ẑ that satsfes v 0 ẑ = g(ẑ), whch corresponds to the fxed pont of the functon g( )/v 0. In the next theorem, we show that the value of ẑ that satsfes v 0 ẑ = g(ẑ) can be used to construct an optmal soluton to problem (13). The proof of ths theorem follows from an outlne that s smlar to the proof of Theorem 1 and we omt the proof. In the theorem, we recall that z corresponds to the optmal objectve value of problem (13). 17