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

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

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

Assortment Optimization under the Paired Combinatorial Logit Model

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

Assortment Optimization under MNL

Problem Set 9 Solutions

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

Difference Equations

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

COS 521: Advanced Algorithms Game Theory and Linear Programming

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

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

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

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

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

More metrics on cartesian products

Feature Selection: Part 1

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

Errors for Linear Systems

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

MMA and GCMMA two methods for nonlinear optimization

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

Economics 101. Lecture 4 - Equilibrium and Efficiency

NP-Completeness : Proofs

Module 9. Lecture 6. Duality in Assignment Problems

Solutions to exam in SF1811 Optimization, Jan 14, 2015

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

Maximizing the number of nonnegative subsets

Edge Isoperimetric Inequalities

Perfect Competition and the Nash Bargaining Solution

The Minimum Universal Cost Flow in an Infeasible Flow Network

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

APPENDIX A Some Linear Algebra

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

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

Lecture 14: Bandits with Budget Constraints

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

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

Resource Allocation with a Budget Constraint for Computing Independent Tasks in the Cloud

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

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

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

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

Lecture 12: Discrete Laplacian

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

CHAPTER 5 NUMERICAL EVALUATION OF DYNAMIC RESPONSE

EEL 6266 Power System Operation and Control. Chapter 3 Economic Dispatch Using Dynamic Programming

On the Multicriteria Integer Network Flow Problem

PHYS 705: Classical Mechanics. Calculus of Variations II

Affine transformations and convexity

Computing Correlated Equilibria in Multi-Player Games

Complete subgraphs in multipartite graphs

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

Psychology 282 Lecture #24 Outline Regression Diagnostics: Outliers

Kernel Methods and SVMs Extension

Linear Regression Analysis: Terminology and Notation

Limited Dependent Variables

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

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

Lecture 10 Support Vector Machines II

Foundations of Arithmetic

LECTURE 9 CANONICAL CORRELATION ANALYSIS

Outline and Reading. Dynamic Programming. Dynamic Programming revealed. Computing Fibonacci. The General Dynamic Programming Technique

Time-Varying Systems and Computations Lecture 6

Equivalence of Piecewise-Linear Approximation and Lagrangian Relaxation for Network Revenue Management

REAL ANALYSIS I HOMEWORK 1

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

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

Games of Threats. Elon Kohlberg Abraham Neyman. Working Paper

The Order Relation and Trace Inequalities for. Hermitian Operators

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

Dynamic Bid Prices in Revenue Management

arxiv: v1 [math.ho] 18 May 2008

Société de Calcul Mathématique SA

Some modelling aspects for the Matlab implementation of MMA

Some basic inequalities. Definition. Let V be a vector space over the complex numbers. An inner product is given by a function, V V C

x = , so that calculated

Hidden Markov Models

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

Lecture 4. Instructor: Haipeng Luo

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

THE SUMMATION NOTATION Ʃ

Case A. P k = Ni ( 2L i k 1 ) + (# big cells) 10d 2 P k.

Lecture Notes on Linear Regression

Random Walks on Digraphs

Lecture 21: Numerical methods for pricing American type derivatives

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

On a piecewise-linear approximation for network revenue management

Suggested solutions for the exam in SF2863 Systems Engineering. June 12,

ANSWERS. Problem 1. and the moment generating function (mgf) by. defined for any real t. Use this to show that E( U) var( U)

Notes on Frequency Estimation in Data Streams

LOW BIAS INTEGRATED PATH ESTIMATORS. James M. Calvin

Physics 5153 Classical Mechanics. D Alembert s Principle and The Lagrangian-1

( ) 2 ( ) ( ) Problem Set 4 Suggested Solutions. Problem 1

Appendix B. Criterion of Riemann-Stieltjes Integrability

Revenue comparison when the length of horizon is known in advance. The standard errors of all numbers are less than 0.1%.

princeton univ. F 13 cos 521: Advanced Algorithm Design Lecture 3: Large deviations bounds and applications Lecturer: Sanjeev Arora

Graph Reconstruction by Permutations

e - c o m p a n i o n

k t+1 + c t A t k t, t=0

Transcription:

Capacty Constrants Across Nests n Assortment Optmzaton Under the Nested Logt Model Jacob B. Feldman School of Operatons Research and Informaton Engneerng, Cornell Unversty, Ithaca, New York 14853, USA jbf232@cornell.edu Huseyn Topaloglu School of Operatons Research and Informaton Engneerng, Cornell Unversty, Ithaca, New York 14853, USA topaloglu@ore.cornell.edu March 28, 2014 Abstract We consder assortment optmzaton problems when customers choose accordng to the nested logt model and there s a capacty constrant lmtng the total capacty consumpton of all products offered n all nests. When each product consumes one unt of capacty, our capacty constrant lmts the cardnalty of the offered assortment. For the cardnalty constraned case, we develop an effcent algorthm to compute the optmal assortment. When the capacty consumpton of each product s arbtrary, we gve an algorthm to obtan a 4-approxmate soluton. Furthermore, we develop a convex program that computes an upper bound on the optmal expected revenue for an ndvdual problem nstance. In our numercal experments, we consder problem nstances nvolvng products wth arbtrary capacty consumptons. Comparng the expected revenues from the assortments obtaned by our 4-approxmaton algorthm wth the upper bounds on the optmal expected revenues, our numercal results ndcate that the 4-approxmaton algorthm performs qute well, yeldng about 2% optmalty gap on average.

A conventonal approach to modelng demand n revenue management s to assume that each customer arrves nto the system wth the ntenton of purchasng a fxed product. If ths product s avalable for sale, then the customer purchases t. Otherwse, the customer leaves the system wthout makng a purchase. In realty, however, there may be multple products that can potentally serve the needs of a customer, n whch case, customers may make a choce between the products and may substtute a product for another one when ther favorte product s not avalable. Ths knd of a choce process creates nteractons between the demand for the dfferent products, nflatng the demand for an avalable product when some other product s not avalable so that customers satsfy ther needs by substtutng for the avalable product. A common queston that arses n ths settng s what products to make avalable to customers so as to maxmze the expected revenue, gven that customers choose and substtute accordng to a partcular choce model. In ths paper, we consder assortment optmzaton problems when customers choose accordng to the nested logt model and there s lmted capacty for the products n the offered assortment. We consder a settng where we need to decde whch assortment of products to offer. Each arrvng customer chooses among the offered products accordng to the nested logt model. Under the nested logt model, the products are organzed n nests. Each customer, after vewng the offered assortment, decdes ether to make a purchase wthn one of the nests or to leave the system wthout purchasng anythng. If a nest s chosen, then the customer purchases one of the products wthn the chosen nest. There s a capacty constrant lmtng the total capacty consumpton of the products n the offered assortment. The goal s to choose an assortment of products to offer so as to maxmze the expected revenue obtaned from each customer. We consder two types of capacty constrants. In the frst type of constrants, each product occupes one unt of space, n whch case, the capacty constrant lmts the total number of products n the offered assortment. We refer to ths type of a capacty constrant as a cardnalty constrant. In the second type of constrants, the capacty consumpton of a product s arbtrary, possbly reflectng the space or captal requrement of a product. We refer to ths type of a capacty constrant as a space constrant. Under a cardnalty constrant, we show that we can compute the optmal assortment n a tractable fashon. As far as we are aware, the assortment problem was not known to be tractable when customers choose accordng to the nested logt model and there s a cardnalty constrant lmtng the total number of products n the offered assortment. Ths paper gves the frst exact soluton method for ths problem. On the other hand, we gve a 4-approxmaton algorthm under a space constrant, provdng an assortment whose expected revenue devates from the optmal expected revenue by at most a factor of four. The runnng tme of ths algorthm scales gracefully wth the number of products and the number of nests. To our knowledge, ths paper gves the frst algorthm for the assortment problem that scales gracefully wth the number of nests and the number of products, when there s a capacty constrant on the space consumpton of all offered products and customers choose accordng to the nested logt model. In addton to gvng algorthms to solve the assortment problem, we gve a tractable convex program that computes an upper bound on the optmal expected revenue. By comparng the expected revenues of the assortments obtaned 2

by our 4-approxmaton algorthm wth the upper bounds on the optmal expected revenues, we demonstrate that our 4-approxmaton algorthm performs qute well n practce, yeldng solutons wth about 2% optmalty gap on average. Man Contrbutons. Under a cardnalty constrant, we show that we can obtan an optmal assortment by solvng a lnear program wth O(m 2 n) decson varables and O(m 2 n 4 ) constrants, where m n the number of nests and n s the number of products n each nest. To our knowledge, ths s the frst effcent algorthm for solvng the assortment optmzaton problem under the nested logt model wth a constrant on the total cardnalty of the assortment. Rusmevchentong et al. (2010) solve a smlar assortment optmzaton problem effcently when customers choose accordng to the multnomal logt model. Our result s naturally more general than thers as the multnomal logt model s a specal case of the nested logt model wth a sngle nest. Under a space constrant, we show that we can obtan a 4-approxmate soluton by solvng a lnear program wth O(m) decson varables and O(mn 4 ) constrants. Computatonal work for our approach scales well wth both the number of nests and the number of products. As far as we are aware, ours s the frst algorthm that scales well wth the number of nests. Rusmevchentong et al. (2009) and Desr and Goyal (2013) gve approxmaton schemes for related assortment problems, but the runnng tme for ther approaches unfortunately grows exponentally wth the number of nests. For example, to obtan a 4-approxmate soluton, Rusmevchentong et al. (2009) need O(m(m 6 n 6 log(mn)) m ) operatons, whch gets prohbtve when m exceeds two or three. We gve a tractable convex program to obtan an upper bound on the optmal expected revenue under a space constrant. By comparng the expected revenues from the assortments obtaned by our 4-approxmaton algorthm wth the upper bounds on the optmal expected revenues, we can bound the optmalty gap of the 4-approxmate soluton for an ndvdual problem nstance. Lettng c be the total capacty avalablty, ths convex program s obtaned by parttonng [0, c] nto a number of ntervals. The convex program has O(m) decson varables and one constrant for each nterval and for each nest. Any arbtrary partton of [0, c] works to obtan an upper bound, but fner parttons yeld tghter upper bounds, at the expense of a larger number of constrants. Related Lterature. A popular approach for modelng customer choce s to use the multnomal logt model, datng back to the work of Luce (1959) and McFadden (1974). Ths choce model s compatble wth utlty maxmzaton prncple, where each customer assocates a random utlty wth each product and chooses the product wth the largest utlty. The multnomal logt model s bult under the assumpton that the utltes assocated wth dfferent products are ndependent of each other. In other words, how hghly a customer evaluates a certan product has nothng to do wth how hghly the same customer evaluates another product. The nested logt model remedes ths shortcomng. The nested logt model dates back to Wllams (1977) and t s also compatble wth utlty maxmzaton prncple. The nested logt model organzes the products n nests such that the utltes assocated wth the products n the same nest can be dependent on each other; see 3

Borsch-Supan (1990) and Tran (2003). Ths feature allows the modeler to capture stuatons where the products n the same nest are alke and how hghly a customer evaluates a certan product can be a strong ndcator of how hghly the same customer evaluates another product. Tallur and van Ryzn (2004) consder the assortment problem under the multnomal logt model wthout any constrants and show that the optmal assortment ncludes a certan number of products wth the hghest unt revenues. Rusmevchentong et al. (2010), Wang (2012) and Wang (2013) consder assortment problems under varants of the multnomal logt model wth a cardnalty constrant on the offered assortment and show that the problem can be solved effcently. Bront et al. (2009), Mendez-Daz et al. (2010) and Rusmevchentong et al. (2013) consder assortment problems where there are multple customer types and customers of dfferent types choose accordng to multnomal logt models wth dfferent parameters. The authors show that the problem s NPcomplete, study heurstcs and nvestgate vald cuts for nteger programmng formulatons. Davs et al. (2013) consder the assortment problem under the nested logt model wthout any constrants. They characterze the optmal subset of products to offer n each nest. Ther characterzaton reduces the number of possble subsets to consder n each nest to a reasonable number, but the optmal assortment s stll ntractable to compute snce there are exponentally many dfferent ways to combne the subsets from dfferent nests. They resolve ths dffculty by formulatng a lnear program to combne the subsets from dfferent nests. L and Rusmevchentong (2012) gve a greedy algorthm for the same problem. Gallego and Topaloglu (2014) study constraned assortment problems under the nested logt model, but they mpose capacty constrants separately on the assortment offered n each nest. The authors vew each nest as a dfferent product category and ther goal s to separately lmt the capacty consumpton of the products offered n each product category. Ther constrants are separable by the nests and do not apply to the practcal stuaton where we want to lmt the total capacty consumpton of the products offered n all product categores. In ths paper, we treat the products n all of the nests as products that occupy a common space and lmt the total capacty consumpton of the products offered n all nests. Our constrants create nteractons between the nests and make the assortment problem much more dffcult. As we dscuss at the end of the paper, our approach s flexble enough to lmt the total capacty consumpton of the products offered n all nests, along wth the capacty consumpton wthn each nest. Smlar to us, Rusmevchentong et al. (2009) and Desr and Goyal (2013) consder the case where there s a constrant on the total capacty consumpton of the products offered n all nests. They gve approxmaton schemes that tradeoff runnng tme wth soluton qualty, but the runnng tme for ther approaches grows exponentally wth the number of nests. L and Huh (2011), Kok and Xu (2011) and Gallego and Wang (2011) study related prcng and assortment problems wthout constrants. A frutful lne of attack for assortment optmzaton under the nested logt has been to dentfy a collecton of good canddate subsets to offer n each nest. Once these collectons are dentfed, t s possble to solve a separate lnear program to pck a subset to offer n each nest so that the combned 4

subsets over all nests provde a good assortment. Ths s the strategy followed by Davs et al. (2013) and Gallego and Topaloglu (2014). We follow a smlar approach n dentfyng the collectons of canddate subsets n each nest. However, due to the fact that our capacty constrant lmts the total capacty consumpton of the subsets of products offered n all nests, dfferent nests nteract wth each other, makng the assortment problem substantally more dffcult. It s not possble to buld on the earler work to fgure out how to pck a subset to offer n each nest so that the combned subsets over all nests provdes the hghest possble expected revenue and a novel approach s requred. The lnear programs used by Davs et al. (2013) and Gallego and Topaloglu (2014) become completely neffectve. To overcome ths dffculty, our key observaton s that the problem of pckng a subset to offer n each nest so that the combned subsets over all nests provdes the hghest possble expected revenue can be formulated as a multple choce knapsack problem. Under a cardnalty constrant, we use the dynamc programmng formulaton of ths knapsack problem to fnd the optmal assortment. Under a space constrant, we use the lnear programmng relaxaton of ths knapsack problem to get an approxmaton method. Fnally, our work s related to revenue management models wth customer choce. Tallur and van Ryzn (2004) consder a revenue management problem on a sngle flght leg, where the arlne dynamcally adjusts the set of avalable fare classes and customers choose among the avalable fare classes. Gallego et al. (2004), Lu and van Ryzn (2008), Kunnumkal and Topaloglu (2008), Zhang and Adelman (2009), Gallego et al. (2011), Kunnumkal (2013), Tallur (2011) and Messner et al. (2012) extend ths model to an arlne network. The man dea n ths set of papers s to formulate varous lnear programmng approxmatons, where each decson varable corresponds to the duraton of tme durng whch a certan subset of tnerary products s made avalable to customers. Snce these s one decson varable for each subset of tnerary products, the number of decson varables can be qute large and the lnear programmng approxmatons are solved through column generaton. Ths column generaton subproblem s exactly the assortment problem we consder n ths paper when customer choces are governed by the nested logt model. Closng our lterature revew, we note that our revew focuses on assortment optmzaton wth multnomal and nested logt models. For assortment optmzaton under other choce models, we refer to Kok et al. (2008), Natarajan et al. (2009) and Faras et al. (2012) and Faras et al. (2013). Organzaton. In Secton 1, we formulate our assortment optmzaton problem. In Secton 2, we assume that we have access to a collecton of canddate assortments for each nest so that we can sttch together a good soluton to the assortment optmzaton problem by pckng one assortment from each one of these collectons. Gven these collectons, we study the problem of how to sttch together the best soluton. In Secton 3, we study the problem of how to come up wth a good collecton of canddate assortments for each nest. In Secton 4, we apply the results n Sectons 2 and 3 to develop an algorthm to obtan the optmal assortment under a cardnalty constrant. In Secton 5, we apply the results n Sectons 2 and 3 to develop a 4-approxmaton algorthm under a space constrant. In Secton 6, we gve a convex program to obtan an upper bound on the optmal expected revenue. In Secton 7, we gve numercal experments. In Secton 8, we conclude. 5

1 Problem Formulaton In ths secton, we formulate the assortment optmzaton problem that we want to solve. There are m nests ndexed by M = {1,..., m}. In each nest, there are n products that we can offer to customers and we ndex the products by N = {1,..., n}. Under the nested logt model, a customer decdes ether to make a purchase wthn one of the nests or to leave wthout purchasng anythng. If the customer decdes to make a purchase wthn one of the nests, then the customer chooses one of the products offered n ths nest. We let v j be the preference weght assocated wth product j n nest. Gven that we offer the assortment S N of products n nest, we use V (S ) = j S v j to denote the total preference weght of the products n the offered assortment. Accordng to the nested logt model, f we offer the assortment S n nest and a customer has already decded to make a purchase n ths nest, then ths customer chooses product j S wth probablty v j /V (S ). We let r j be the revenue assocated wth product j n nest. Gven that we offer the assortment S n nest and a customer has already decded to make a purchase n ths nest, the expected revenue that we obtan from ths customer can be wrtten as R (S ) = j S v j V (S ) r j = j S v j r j. V (S ) We use the conventon that R ( ) = 0 so that the expected revenue from the empty assortment s zero. The notaton so far mplctly asserts that each nest ncludes the same number of products, but ths assumpton s only for notatonal brevty and all of our results naturally extend to the case where dfferent nests have dfferent numbers of products. Assocated wth each nest, there s a parameter γ [0, 1] capturng the degree of dssmlarty between the products n nest. We use v 0 to denote the preference weght of the no purchase opton. Accordng to the nested logt model, f we offer the assortment (S 1,..., S m ) over all nests wth S N for all M, then a customer chooses nest wth probablty Q (S 1,..., S m ) = V (S ) γ v 0 + l M V l(s l ) γ l. The expresson above computes the probablty that a customer s attracted to nest as a functon of the assortment (S 1,..., S m ) offered over all nests. The form of the choce probabltes above can be derved by usng utlty maxmzaton prncple; see McFadden (1974) and Tran (2003). In partcular, t s possble to show that f a customer assocates a random utlty wth each product and the no purchase opton, choosng the opton wth the largest utlty, then as along as the utltes have a certan generalzed extreme value dstrbuton, the probablty of choosng a certan nest and the probablty of choosng a certan product n a nest have the forms specfed above. The utltes of the products n dfferent nests are assumed to be ndependent, but the parameter γ s related to the correlaton between the utltes of the products n nest. Smaller values of γ mples that the utltes of the products n nest are more strongly correlated, n whch case, the products n nest tend to be more smlar to each other. If a customer evaluates one product hghly, then 6

ths customer s lkely to evaluate other products n the nest hghly as well. So, f we offer the assortment (S 1,..., S m ) over all nests, then we obtan an expected revenue of Π(S 1,..., S m ) = M Q (S 1,..., S m ) R (S ) = V (S ) γ R (S ) v 0 + M M V (S ) γ from each customer. Our goal s to fnd an assortment of products to maxmze the expected revenue from each customer, subject to a capacty constrant on the offered assortment. We consder two types of capacty constrants, both of whch lmt the total capacty consumpton of the assortment (S 1,..., S m ). Under the frst type of constrant, we lmt the total number of products offered over all nests to c. Thus, the set of feasble assortments can be wrtten as {(S 1,..., S m ) : M S c, S N M}. We refer to ths constrant as a cardnalty constrant. Under the second type of constrant, we let w j be the space requrement of product j n nest and lmt the total space requrement of the products offered over all nests to c. In ths case, the set of feasble assortments s {(S 1,..., S m ) : M j S w j c, S N M}. We refer to ths constrant as a space constrant. For unformty, we use C (S ) to denote the capacty consumpton of the assortment S offered n nest. We have C (S ) = S under a cardnalty constrant and C (S ) = j S w j under a space constrant. In ths case, we can wrte the set of feasble assortments as {(S 1,..., S m ) : M C (S ) c, S N M} under capacty or space constrants. We want to fnd an assortment that maxmzes the expected revenue from each customer subject to a capacty constrant, yeldng the problem { } z = max Π(S 1,..., S m ), (1) (S 1,..., S m) : M C (S ) c, S N M where C (S ) may correspond to a cardnalty or space constrant. Note that f C (S ) corresponds to a cardnalty constrant, then we can assume wthout loss of generalty that c s an nteger. In problem (1), the assortments that we offer n dfferent nests nteract wth each other due to two reasons. Frst, the probablty Q (S 1,..., S m ) that a customer chooses nest jontly depends on the assortment (S 1,..., S m ) offered over all nests. Second, the constrant n ths problem lmts the total capacty consumpton n all nests and the capacty consumpton of the assortment offered n one nests determnes the capacty avalable for the assortments offered n other nests. In ths paper, we show that f we have a cardnalty constrant on the offered assortment, then problem (1) can be solved effcently. In partcular, the approach that we gve requres solvng a lnear program wth O(m 2 n) decson varables and O(m 2 n 4 ) constrants. On the other hand, f we have a space constrant, then Lemma 2.1 n Rusmevchentong et al. (2009) shows that problem (1) s NP-hard even when there s a sngle nest wth a dssmlarty parameter of one. So, t s lkely to be ntractable to get an optmal soluton to problem (1) under a space constrant. In ths paper, we establsh that we can solve a lnear program wth O(m) decson varables and O(mn 4 ) constrants to get a 4-approxmate soluton. 7

2 Fxed Pont Representaton In ths secton, we lay out the connecton of problem (1) to the problem of computng the fxed pont of an approprately defned functon. By usng ths connecton, we ultmately answer the followng crucal queston. Assume that we are gven a collecton of canddate assortments A = {A t : t T } for each nest such that A t N for all t T. We know that by pckng one assortment from each one of the collectons A 1,..., A m, we can sttch together an α-approxmate soluton to problem (1). That s, there exsts (Ŝ1,..., Ŝm) wth Ŝ A for all M and M C (Ŝ) c such that α Π(Ŝ1,..., Ŝm) z. The queston s how to fnd ths α-approxmate soluton to problem (1) n a tractable fashon. Fndng an answer to ths queston through complete enumeraton s ntractable snce there are A 1... A m combnatons of assortments to consder from the dfferent nests. To answer ths queston, we defne f( ) as f(z) = max (S 1,..., S m ) : M C (S ) c, S A M { } V (S ) γ (R (S ) z). (2) M Consder ẑ that satsfes v 0 ẑ = f(ẑ), whch corresponds to the fxed pont of the functon f( )/v 0. Such a value of ẑ always exsts snce f(z) s decreasng and v 0 z s ncreasng n z, wth f(0) 0. In the next theorem, we show that the value of ẑ that satsfes v 0 ẑ = f(ẑ) s useful n dentfyng an α-approxmate soluton to problem (1). Theorem 1 Assume that we can sttch together an α-approxmate soluton to problem (1) by pckng one assortment from each one of the collectons A 1,..., A m. Let ẑ satsfy v 0 ẑ = f(ẑ) and (Ŝ1,..., Ŝm) be an optmal soluton to problem (2) when we solve ths problem wth z = ẑ. Then, we have αẑ = α Π(Ŝ1,..., Ŝm) z. Proof. By our hypothess, there exsts ( S 1,..., S m ) wth S A and M C ( S ) c such that α Π( S 1,..., S m ) z. So, ( S 1,..., S m ) s a feasble soluton to problem (2) when solved wth z = ẑ, n whch case, we obtan v 0 ẑ = f(ẑ) M V ( S ) γ (R ( S ) ẑ). If we focus on the frst and last terms n the last chan of nequaltes and solve for ẑ, then we obtan ẑ M V ( S ) γ R ( S )/(v 0 + M V ( S ) γ ) = Π( S 1,..., S m ). Multplyng ths chan of nequaltes wth α and notng that α Π( S 1,..., S m ) z, we get α ẑ z. To complete the proof, we show that Π(Ŝ1,..., Ŝ) = ẑ. Snce v 0 ẑ = f(ẑ) and (Ŝ1,..., Ŝm) s an optmal soluton to problem (2) when solved wth z = ẑ, we have v 0 ẑ = M V (Ŝ) γ (R (Ŝ) ẑ) and solvng for ẑ n ths equalty yelds ẑ = M V (Ŝ) γ R (Ŝ)/(v 0 + M V (Ŝ) γ ) = Π(Ŝ1,..., Ŝm). The theorem above suggests the followng procedure to obtan an α-approxmate soluton to problem (1). We fnd ẑ such that v 0 ẑ = f(ẑ). In ths case, we can solve problem (2) wth z = ẑ to obtan the optmal soluton (Ŝ1,..., Ŝm) and ths soluton s an α-approxmate soluton to problem (1). As we show later n the paper, we can effcently fnd ẑ that satsfes v 0 ẑ = f(ẑ) when we have 8

a cardnalty constrant on the offered assortment. However, fndng such ẑ may be dffcult when we have a space constrant. In the next corollary, we gve an approxmate verson of Theorem 1 that does not requre fndng ẑ such that v 0 ẑ = f(ẑ). To state ths corollary, we let f R ( ) be a relaxaton of f( ) that satsfes f R (z) f(z) for all z R +. We do not yet specfy how to construct ths relaxaton. We only assume that f R (z) s decreasng n z smlar to f(z), wth f R (0) 0, n whch case, we can always fnd ẑ satsfyng v 0 ẑ = f R (ẑ). The next corollary to Theorem 1 shows how we can use ths value of ẑ to get an approxmaton guarantee for problem (1). Corollary 2 Assume that we can sttch together an α-approxmate soluton to problem (1) by pckng one assortment from each one of the collectons A 1,..., A m and f R ( ) s a relaxaton of f( ) that satsfes f R (z) f(z) for all z R +. Let ẑ be such that v 0 ẑ = f R (ẑ). If the assortment (Ŝ1,..., Ŝm) satsfes β V (Ŝ) γ (R (Ŝ) ẑ) v 0 ẑ M for some β 1, then we have α β Π(Ŝ1,..., Ŝm) z. Proof. Let z be such that v 0 z = f( z). We observe that ẑ z, snce otherwse, we obtan f( z) = v 0 z > v 0 ẑ = f R (ẑ) f R ( z), where the last nequalty follows by notng that f R ( ) s decreasng and ẑ < z. The last chan of nequaltes yelds f( z) > f R ( z), contradctng the fact that f R (z) f(z) for all z R +. So, snce α z z by Theorem 1 and ẑ z, we get α β ẑ α ẑ z, whch mples that the assortment (Ŝ1,..., Ŝm) satsfes M V (Ŝ) γ (α βr (Ŝ) z ) α β M V (Ŝ) γ (R (Ŝ) ẑ) α v 0 ẑ v 0 z, where the second nequalty follows from the nequalty n the corollary. Focusng on the frst and last terms n the last chan of nequaltes and solvng for z, we get z M α β V (Ŝ) γ R (Ŝ)/(v 0 + M V (Ŝ) γ ) = α β Π(Ŝ1,..., Ŝm). We make use of use Theorem 1 and Corollary 2 as follows. Assume that the collectons of canddate assortments A 1,..., A m allow us to sttch together an α-approxmate soluton to problem (1). Under a cardnalty constrant, we show that we can effcently solve problem (2) and fnd ẑ satsfyng v 0 ẑ = f(ẑ) n a tractable fashon. So, by Theorem 1, solvng problem (2) wth z = ẑ mmedately yelds an α-approxmate soluton to problem (1). Under a space constrant, we construct an approprate relaxaton f R ( ) of f( ) and ths relaxaton allows us to fnd ẑ satsfyng v 0 ẑ = f R (ẑ). Also, for ths value of ẑ, we show that we can obtan an assortment (Ŝ1,..., Ŝm) that satsfes the nequalty n Corollary 2 wth β = 2. So, notng Corollary 2, the assortment (Ŝ1,..., Ŝm) provdes a 2α-approxmate soluton to problem (1). Theorem 1 and Corollary 2 are under the assumpton that we already have collectons of canddate assortments A 1,..., A m such that we can sttch together an α-approxmate soluton to problem (1) by pckng one assortment from each one of these collectons. In the next secton, we consder the queston of how to construct such collectons of canddate assortments. 9

3 Canddate Assortments In ths secton, we show how to construct a collecton of canddate assortments A for each nest such that we can sttch together an α-approxmate soluton to problem (1) by pckng one assortment from each one of the collectons A 1,..., A m. In the next lemma, we gve a smple condton for an assortment to provde an α-approxmate soluton to problem (1). Lemma 3 Let (S1,..., S m) be an optmal soluton to problem (1) wth an objectve value of z and b = C (S ). If the assortments Ŝ, M satsfy C (Ŝ) b and α V (Ŝ) γ (R (Ŝ) z ) V (S ) γ (R (S ) z ) (3) for some α 1, then (Ŝ1,..., Ŝm) s a feasble soluton to problem (1) and the objectve value provded by ths soluton satsfes α Π(Ŝ1,..., Ŝm) z. Proof. Snce M C (Ŝ) M b = M C (S ) c, (Ŝ1,..., Ŝm) s a feasble soluton to problem (1). Notng that Π(S 1,..., S m) = M V (S )γ R (S )/(v 0 + M V (S )γ ) = z, rearrangng the terms n the last equalty yelds v 0 z = M V (S )γ (R (S ) z ). Therefore, f we add (3) over all M, then t follows that α M V (Ŝ) γ (R (Ŝ) z ) M V (S )γ (R (S ) z ) = v 0 z. Furthermore, notng that α 1 and z 0, we also have α M V (Ŝ) γ (R (Ŝ) z ) M V (Ŝ) γ (αr (Ŝ) z ), n whch case, the last two chans of nequaltes yeld M V (Ŝ) γ (αr (Ŝ) z ) v 0 z. Solvng for z n the last nequalty, we obtan α Π(Ŝ1,..., Ŝm) = α M V (Ŝ) γ R (Ŝ)/(v 0 + M V (Ŝ) γ ) z. The lemma above s not mmedately useful to characterze assortments that provde an approxmaton guarantee of α snce checkng (3) requres knowng S and z. In the next lemma, we use the approach n Gallego and Topaloglu (2014) and the prevous lemma to gve a more tractable condton for an assortment to provde an α-approxmate soluton to problem (1). Lemma 4 Let (S1,..., S m) be an optmal soluton to problem (1) wth an objectve value of z, b = C (S ) and u = max{z, γ z + (1 γ ) R (S )}. If the assortments Ŝ, M satsfy C (Ŝ) b and α V (Ŝ) (R (Ŝ) u ) V (S ) (R (S ) u ) (4) for some α 1, then (Ŝ1,..., Ŝm) s a feasble soluton to problem (1) and the objectve value provded by ths soluton satsfes α Π(Ŝ1,..., Ŝm) z. Proof. The fact that the assortment (Ŝ1,..., Ŝm) s a feasble soluton to problem (1) follows from the same argument n the proof of Lemma 3. For notatonal brevty, we let V = V (S ), R = R (S ), ˆV = V (Ŝ) and ˆR = R (Ŝ). Frst, assume that R < z. A smple lemma, labeled as Lemma 10 n the appendx, shows that f R < z, then S =. Thus, we have 10

V = V ( ) = 0. Also, snce R < z, the defnton of u yelds u = z, n whch case, (4) mples that α ˆV ( ˆR z ) 0. Thus, we obtan α ˆV γ ( ˆR z ) 0 = (V )γ (R z ) under the case R < z. Second, assume that R z. The defnton of u yelds u = γ z + (1 γ ) R, n whch case, (4) mples that α ˆV ( ˆR γ z (1 γ ) R ) γ V (R z ). If ˆV = 0, then the last nequalty mples that V (R z ) = 0 and we obtan α ˆV γ under the case R z. If, on the other hand, ˆV > 0, then we wrte the last nequalty as α ( ˆR z V ) γ (R ˆV z ) + α (1 γ ) (R z ) = ( ˆR z ) = 0 = (V )γ (R z ) [γ V ˆV + α (1 γ ) ] (R z ). Snce g(x) = x γ s a concave functon of x wth g(1) = 1 and g (1) = γ, we have x γ 1+γ (x 1) = γ x + (1 γ ) γ x + α (1 γ ) for all x R +. Usng ths nequalty wth x = V / ˆV on the rght sde of the nequalty above, we get α ( ˆR z ) (V / ˆV ) γ (R z ) Arrangng the terms n the last nequalty yelds α ˆV γ ( ˆR z ) (V )γ (R z ) under the case R z. So, under ( ˆR z ) (V )γ (R z ), mplyng that the assortment (Ŝ1,..., Ŝm) both cases, we have α ˆV γ satsfes the assumpton of Lemma 3. Thus, we must have α Π(Ŝ1,..., Ŝm) z. If we let Ŝα be an α-approxmate soluton to the problem max S : C (S ) b, S N V (S ) (R u ), then Ŝα satsfes α V (Ŝα ) (R(Ŝα ) u ) max S : C (S ) b, S N V (S ) (R u ) and C(Ŝα ) b. So, the last two nequaltes ndcate that Ŝα satsfes (4) and C (Ŝα ) b, n whch case, Lemma 4 mples that the assortment (Ŝα 1,..., Ŝα m) provdes an α-approxmate soluton to problem (1). Thus, f the collecton of canddate assortments A for nest ncludes just the sngle assortment Ŝ α, then we can sttch together an α-approxmate soluton to problem (1) by pckng one assortment from each one of the collectons A 1,..., A m. The dffculty wth ths reasonng s that fndng Ŝα, an α-approxmate soluton to the problem at the begnnng of ths paragraph, requres knowng b and u, nether of whch s known wthout knowng the optmal soluton to problem (1). To get around ths dffculty, we propose fndng an α-approxmate soluton to the problem { } max S : C (S ) b, S N V (S ) (R (S ) u ) (5) for all (u, b ) R 2 +. As a functon of (u, b ), we let Ŝα (u, b ) be an α-approxmate soluton to problem (5) and propose usng {Ŝα (u, b ) : (u, b ) R 2 +} as a collecton of canddate assortments for nest. In ths case, Lemma 4 mmedately mples that we can construct an α-approxmate soluton to problem (1) by pckng one assortment from ths collecton for each nest. To see ths mplcaton, observe that Ŝα (u, b ) {Ŝα (u, b ) : (u, b ) R 2 +}. Also, by the defnton of Ŝ α (u, b ), ths assortment satsfes (4) wth Ŝ = Ŝα (u, b ). Furthermore, C (Ŝα (u, b )) b by the defnton of Ŝα (u, b ). So, the assortment (Ŝα 1 (u, b ),..., Ŝα m(u, b )) satsfes the assumptons of Lemma 4, n whch case, ths lemma mples that (Ŝα 1 (u, b ),..., Ŝα m(u, b )) s an α-approxmate soluton to problem (1). Thus, we can pck one assortment from {Ŝα (u, b ) : (u, b ) R 2 +} for each nest to sttch together an α-approxmate soluton to problem (1), as desred. The next theorem records the crucal porton of the dscusson n the paragraph above. 11

Theorem 5 Assume that the collecton of canddate assortments A ncludes an α-approxmate soluton to problem (5) for any (u, b ) R 2 +. Then, there exsts an assortment (Ŝ1,... Ŝm) such that Ŝ A for all M, M C (Ŝ) c and α Π(Ŝ1,..., Ŝm) z. In other words, f the collecton A ncludes an α-approxmate soluton to problem (5) for any (u, b ) R +, then we can use the collectons A 1,..., A m to sttch together an α-approxmate soluton to problem (1). Thus, the theorem above shows that the job of dentfyng a collecton of canddate assortments A for nest reduces to the job of dentfyng an α-approxmate soluton to problem (5) for all (u, b ) R 2 +. 4 Cardnalty Constrant In ths secton, we use the results n the prevous two sectons to develop a tractable method that obtans an optmal soluton to problem (1) under a cardnalty constrant. Our analyss s n two stages. In Secton 4.1, we assume that we already have the collectons of canddate assortments A 1,..., A m such that we can sttch together an α-approxmate soluton to problem (1) by pckng one assortment from each one of these collectons. In ths case, we proceed to showng that we can solve a lnear program wth O(m 2 n) decson varables and M O(mn A ) constrants to fnd ẑ that satsfes v 0 ẑ = f(ẑ). Furthermore, we show that we can solve problem (2) for a partcular value of z wth neglgble computatonal effort, n whch case, notng Theorem 1, we can solve problem (2) wth z = ẑ to obtan an α-approxmate soluton to problem (1). These results mply that we can obtan an α-approxmate soluton to problem (1) by solvng a lnear program wth O(m 2 n) decson varables and M O(mn A ) constrants. In Secton 4.2, on the other hand, we show that we can come up wth collectons of canddate assortments A 1,..., A m such that we can sttch together an optmal, or 1-approxmate soluton, to problem (1) by pckng one assortment from each one of these collectons. Furthermore, each one of the collectons A 1,..., A m satsfes A = O(n 3 ). Thus, notng the dscusson n the prevous paragraph, we can obtan an optmal soluton to problem (1) by solvng a lnear program wth O(m 2 n) decson varables and M O(mn A ) = O(m 2 n 4 ) constrants. 4.1 Fndng Fxed Pont Our goal s to show that we can solve problem (2) n a tractable fashon and we can fnd ẑ that satsfes v 0 ẑ = f(ẑ) by solvng a lnear program, when the capacty consumpton C (S ) corresponds to the cardnalty of the assortment S. To solve problem (2) n a tractable fashon, we observe that the objectve functon of ths problem s separable by the nests. If we offer the assortment S n nest, then we obtan a contrbuton of V (S ) γ (R (S ) z) and problem (2) fnds one assortment to offer n each nest to maxmze the total contrbuton subject to the constrant that the total cardnalty of the assortments offered over all nests does not exceed c. Therefore, we can solve problem (2) 12

by usng a dynamc program. In ths dynamc program, the decson epochs correspond to the nests. The state varable n each decson epoch s the remanng capacty left from the earler nests just before choosng the assortment offered n a partcular nest. Fnally, the acton varable s the assortment offered n a partcular nest. Thus, for a partcular value of z, we can obtan f(z) by solvng the dynamc program J (b z) = max S : C (S ) b S A { V (S ) γ (R (S ) z) + J +1 (b C (S ) z) }, (6) wth the boundary condton J m+1 ( z) = 0. Under a cardnalty constrant, we can assume that c s an nteger that does not exceed mn snce ths s the total number of products n all of the nests. Thus, the state space n the dynamc program above s 0,..., mn. Computng the value functons {J (b z) : b = 0,..., mn, M}, J 1 (c z) gves f(z). Thus, the dynamc program above provdes an effcent approach for computng f(z) for a fxed value of z. Consder the problem of fndng ẑ that satsfes v 0 ẑ = f(ẑ). For ths purpose we use the lnear programmng representaton of the dynamc program above. A dynamc program wth fnte states and actons has a lnear programmng formulaton. In ths lnear program, there s one decson varable for each state and decson epoch correspondng to the value functon at each state and decson epoch. Inspred by ths lnear program, we propose solvng mn Θ 1 (c) (7) st Θ (b) V (S ) γ (R (S ) z) + Θ +1 (b C (S )) M, b = 0,..., mn, S F (b) (8) Θ 1 (c) = v 0 z, (9) to fnd z satsfyng v 0 z = f(z). The decson varables are Θ = {Θ (b) : M, b = 0,..., mn} and z n the lnear program above. We use the conventon that Θ m+1 (b) = 0 for all b = 0,..., mn. The set F (b) s gven by F (b) = {S : C (S ) b, S A }, capturng the set of feasble actons at decson epoch and state b. If we drop the second constrant n problem (7)-(9) and mnmze the objectve functon subject to the frst set of constrants for a fxed value of z, then t s well-known that the optmal value of the decson varable Θ 1 (c) gves the value functon J 1 (b z) computed through the dynamc program n (6); see Puterman (1994). Interestngly, f we solve problem (7)-(9) as formulated, then the optmal value of the decson varable z gves the value of z satsfyng v 0 z = f(z). We show ths result n the next lemma. Lemma 6 Lettng ( ˆΘ, ẑ) be an optmal soluton to problem (7)-(9), ẑ satsfes v 0 ẑ = f(ẑ). Proof. We let (Ŝ1,..., Ŝm) be an optmal soluton to problem (2) when we solve ths problem wth z = ẑ. We defne {ˆb : M} as ˆb 1 = c and ˆb +1 = ˆb C (Ŝ) so that ˆb corresponds to the total capacty consumpton of the assortment (Ŝ1,..., Ŝm) n nests 1,..., 1. Snce ( ˆΘ, ẑ) s a feasble soluton to problem (7)-(9), t satsfes the frst set of constrants for state and acton (ˆb, Ŝ) for 13

all M. So, we have ˆΘ (ˆb ) V (Ŝ) γ (R (Ŝ) ẑ) + ˆΘ +1 (ˆb C (Ŝ)) for all M. Addng these nequaltes gves v 0 ẑ = ˆΘ 1 (c) M V (Ŝ) γ (R (Ŝ) ẑ) = f(ẑ), where the frst equalty uses the fact that ( ˆΘ, ẑ) satsfes the second constrant n problem (7)-(9) and the second equalty follows from the defntons of (Ŝ1,..., Ŝm) and ˆb. So, we have v 0 ẑ f(ẑ). To get a contradcton to the lemma, assume that v 0 ẑ > f(ẑ) n the rest of the proof and let z be such that v 0 z = f( z). Compute the value functons J( z) = {J (b z) : M, b = 0,..., mn} through the dynamc program n (6) wth z = z. Notng the way the value functons are computed n (6), (J( z), z) satsfes the frst set of constrants n problem (7)-(9). Also, we know that J 1 (c z) provdes the optmal objectve value of problem (2) when ths problem s solved wth z = z, so that J 1 (c z) = f( z) = v 0 z. Thus, (J( z), z) satsfes the second constrant n problem (7)-(9) as well. The optmal objectve value of problem (7)-(9) must be smaller than the objectve value at the feasble soluton (J( z), z), mplyng v 0 ẑ = ˆΘ 1 (c) J 1 (c z) = v 0 z. So, we obtan f(ẑ) < v 0 ẑ v 0 z = f( z), but snce f( ) s decreasng, we cannot have v 0 ẑ v 0 z and f(ẑ) < f( z), yeldng a contradcton. Thus, we can solve the lnear program n (7)-(9) to obtan ẑ satsfyng v 0 ẑ = f(ẑ). Notng that F (b) A, there are O(m 2 n) decson varables and M O(mn A ) constrants n ths lnear program. Once we have ẑ, notng Theorem 1, we can solve problem (2) wth z = ẑ to obtan an α-approxmate soluton to problem (1), as long as the collectons A 1,..., A m are such that they allow us sttchng together an α-approxmate soluton to problem (1). To solve problem (2), we can use the dynamc program n (6) and the computatonal effort for solvng ths dynamc program s neglgble when compared wth that for solvng the lnear program n (7)-(9). 4.2 Constructng Canddate Assortments Here, our goal s to show how to construct collectons of canddate assortments A 1,..., A m such that we can sttch together an optmal, or 1-approxmate, soluton to problem (1) by choosng one assortment from each one of these collectons. We buld on Theorem 5 for ths purpose. In partcular, we construct the collecton of canddate assortments A such that A ncludes an optmal soluton to problem (5) for any (u, b ) R 2 +. In ths case, by Theorem 5, we can ndeed use the collectons A 1,..., A m to the sttch together an optmal soluton to problem (1). To characterze the optmal soluton to problem (5) for any (u, b ) R 2 +, usng the defntons of V (S ) and R (S ), we wrte ts objectve functon as j S v j (r j u ). So, usng the decson varables x = (x 1,..., x n ) {0, 1} n, we wrte problem (5) under a cardnalty constrant as { max x : v j (r j u ) x j }, (10) j N x j b, x {0, 1} n j N whch s a knapsack problem where each tem occupes one unt of space. In ths knapsack problem, the utlty of tem j s v j (r j u ) and the capacty of the knapsack s b. For any (u, b ) R 2 +, we can solve problem (10) by orderng the tems accordng to ther utltes and fllng the knapsack 14

startng from the tem wth the largest utlty. The parameter u determnes the orderng of the utltes of the tems, whereas b determnes the number of tems that we can put nto the knapsack. To characterze that optmal soluton to problem (5) for any (u, b ) R 2 +, we observe that we can come up wth only O(n 2 ) dfferent orderngs of the utltes of the tems as u takes values over R +. To see ths result, we defne n lnear functons {h j ( ) : j N} as h j (u ) = v j (r j u ), capturng the utlty of tem j n the problem above. These n lnear functons ntersect at O(n 2 ) ponts and these ponts can be found by solvng h j (u ) = h j (u ) for u for all dstnct j, j N. The ntersecton ponts computed n ths fashon correspond to the only values of u where the orderng of the utltes of the tems can change and the desred result follows. In Fgure 1, we show a possble case wth n = 3. The bold lnes show the lnear functons {h j ( ) : j N} and the whte crcles show the parwse ntersecton ponts of them. Each one of the ntervals between these ntersecton ponts s assocated wth a partcular orderng of the lnear functons. In Fgure 1, these orderngs are {h 1 ( ), h 2 ( ), h 3 ( )}, {h 2 ( ), h 1 ( ), h 3 ( )}, {h 2 ( ), h 3 ( ), h 1 ( )} and {h 3 ( ), h 2 ( ), h 1 ( )}. By the dscusson above, as u takes values over R +, we can come up wth only O(n 2 ) dfferent orderngs of the utltes of the tems n problem (10). We denote these orderngs by {σ g : g G } wth G = O(n 2 ). We let x k (σg ) {0, 1}n be a possble soluton to problem (10) obtaned by orderng the tems accordng to the orderng σ g and puttng the frst k tems nto the knapsack by followng ths orderng. For any (u, b ) R 2 +, the crucal observaton s that an optmal soluton to problem (10) must be one of the solutons {x k (σg ) : g G, k = 0,..., n}, snce the optmal soluton to ths problem can be obtaned by orderng the tems accordng to ther utltes and puttng a certan number of tems by followng ths orderng. We use S k(σg ) to denote the assortment correspondng to the soluton x k (σg ), gven by Sk (σg ) = {j N : xk j (σg ) = 1}, ncludng the products used n the soluton x k (σg ). Thus, lettng A = {S k(σg ) : g G, k = 0,..., n}, ths collecton ncludes an optmal soluton to problem (10) for any (u, b ) R 2 +. Furthermore, notng that G = O(n 2 ), there are O(n 3 ) assortments n the collecton A. To sum up, as u takes values over R +, there are only O(n 2 ) dfferent orderngs of the utltes of the tems n problem (10) and these orderngs can be dentfed by fndng the parwse ntersecton ponts of the lnear functons {h j ( ) : j N}. We construct the soluton x k (σg ) by puttng the frst k tems nto the knapsack accordng to the orderng of the utltes σ g. By the dscusson above, the collecton A = {S k(σg ) : g G, k = 0,..., n} ncludes an optmal soluton to problem (5) for any (u, b ) R 2 +. In ths case, by Theorem 5, we can sttch together an optmal soluton to problem (1) by pckng one assortment from each one of the collectons A 1,..., A m. Furthermore, we have A = O(n 3 ). Also, the dscusson n Secton 4.1 shows that f we can sttch together an α-approxmate soluton to problem (1) by pckng one assortment from each one of the collectons A 1,..., A m, then we can obtan an α-approxmate soluton to problem (1) by solvng a lnear program wth O(m 2 n) decson varables and M O(mn A ) constrants. Combnng these results, t follows that we can obtan an optmal soluton to problem (1) by solvng a lnear program wth O(m 2 n) decson varables and O(m 2 n 4 ) constrants. Gallego and Topaloglu (2014) generate canddate assortments smlarly, but our approach deals wth capacty constrants that lnk dfferent nests. 15

h h h 3,2,1 2,3,1 2,1,3 1,2,3 Fgure 1: The lnear functons {h j ( ) : j N} and ther parwse ntersecton ponts for a possble case wth n = 3. 5 Space Constrant In ths secton, we use the results n Secton 2 and 3 to obtan a 4-approxmate soluton to problem (1) under a space constrant. Smlar to our analyss under a cardnalty constrant, our analyss proceeds n two stages. In Secton 5.1, we assume that we have access to collectons of canddate assortments A 1,..., A m that allow us to sttch together an α-approxmate soluton to problem (1). Wthout loss of generalty, we assume that C (S ) c for all S A and M. Otherwse, such assortments are never used n a feasble soluton to problem (1). We defne an approprate relaxaton f R ( ) of f( ). Workng wth ths relaxaton, we show that we can solve a lnear program wth O(m) decson varables and M O( A ) constrants to fnd ẑ that satsfes v 0 ẑ = f R (ẑ). Once we have such ẑ, we show that we can fnd an assortment (Ŝ1,..., Ŝm) that satsfes the nequalty n Corollary 2 wth β = 2 and ths assortment can be computed wth neglgble computatonal effort. In vew of Corollary 2, ths assortment provdes a 2α-approxmate soluton to problem (1). These results mply that we can obtan a 2α-approxmate soluton to problem (1) by solvng a lnear program wth O(m) decson varables and M O( A ) constrants. In Secton 5.2, on the other hand, we show how to construct the collectons of canddate assortments A 1,..., A m such that we can sttch together a 2-approxmate soluton to problem (1) by pckng one assortment from each one of these collectons. Furthermore, each one of these collectons of canddate assortments satsfy A = O(n 4 ). Thus, n vew of the dscusson n the prevous paragraph, we can solve a lnear program wth O(m) decson varables and M O( A ) = O(mn 4 ) constrants to obtan a 4-approxmate soluton to problem (1) under a space constrant. 16

5.1 Fndng Fxed Pont Here, we defne an approprate relaxaton f R ( ) of f( ) under a space constrant and show that we can solve a lnear program to fnd ẑ that satsfes v 0 ẑ = f R (ẑ). Furthermore, we show that there exsts an assortment (Ŝ1,..., Ŝm) that satsfes the nequalty n Corollary 2 wth β = 2 and ths assortment can be computed effcently. To defne a relaxaton f R ( ) of f( ), we use the lnear programng relaxaton of problem (2). In partcular, usng the decson varables x = {x (S ) : M, S A }, we defne f R ( ) as f R (z) = max V (S ) γ (R (S ) z) x (S ) (11) M S A st C (S ) x (S ) c (12) M S A x (S ) = 1 M (13) S A x (S ) 0 M, S A. (14) In the problem above, the decson varable x (S ) takes value one f we offer the assortment S n nest and takes value zero otherwse. The frst constrant ensures that the total capacty consumpton of the assortments offered n all nests do not volate the capacty avalablty. The second set of constrants ensure that we choose one assortment n each nest. If we mpose the constrant x (S ) Z + for all M, S A n problem (11)-(14), then ths problem would fnd one assortment to offer n each nest subject to the capacty constrant, n whch case, t would be equvalent to problem (2). However, the way problem (11)-(14) s formulated, t s a relaxaton of problem (2) and we have f R (z) f(z) as desred. Consderng the queston of how to fnd ẑ satsfyng v 0 ẑ = f R (ẑ), we make use of the dual of problem (11)-(14) for ths purpose. Assocatng the dual varables and y = {y : M} respectvely wth the two sets of constrants n the problem above, we propose solvng the lnear program mn c + y (15) M st C (S ) + y V (S ) γ (R (S ) z) M, S A (16) c + y = v 0 z (17) M 0, y s free, z s free M (18) to fnd ẑ satsfyng v 0 ẑ = f R (ẑ). The decson varables are, y and z n the problem above. If we drop the second constrant n problem (15)-(18) and mnmze the objectve functon subject to the frst set of constrants for a fxed value of z, then ths problem corresponds to the dual of problem (11)-(14). Wth the second constrant added, problem (15)-(18) allows us to fnd ẑ satsfyng v 0 ẑ = f R (ẑ), as shown n the next lemma. The proof of ths lemma follows from an argument smlar to the proof of Lemma 6 and we defer t to the appendx. 17

Lemma 7 Lettng ( ˆ, ŷ, ẑ) be an optmal soluton to problem (15)-(18), ẑ satsfes v 0 ẑ = f R (ẑ). Lemma 7 shows that we can fnd ẑ satsfyng v 0 ẑ = f R (ẑ) by solvng a lnear program wth O(m) decson varables and M O( A ) constrants. Next, we shft our attenton to constructng an assortment (Ŝ1,..., Ŝm) that satsfes the nequalty n Corollary 2 wth β = 2. In our ntal analyss, we show how to obtan an assortment satsfyng the nequalty n Corollary 2 wth β = 3. After ths result, we tghten our analyss to get β = 2. It s a smple exercse n lnear programmng dualty to show that any basc optmal soluton to problem (11)-(14) ncludes at most two fractonal components; see Snha and Zoltners (1979). We let ˆx be a basc optmal soluton to problem (11)-(14) when we solve ths problem wth z = ẑ. We make two observatons. Frst, f ˆx (P ) (0, 1] for some nest M and assortment P A, then notng the second set of constrants n problem (11)-(14), there must be some other assortment Q A such that ˆx (Q ) [0, 1) as well. Second, snce ˆx has as most two fractonal components, there can be no other fractonal component of ˆx. In ths case, notng the second set of constrants n problem (11)-(14) once more, t follows that for each nest M \ { }, there exsts a sngle assortment S such that ˆx ( S ) = 1. Therefore {ˆx ( S ) : M \ { }} {ˆx (P )} {ˆx (Q } ncludes all components of ˆx takng strctly postve values. Usng the soluton ˆx, we construct three assortments (Ŝ0 1,..., Ŝ0 m), (Ŝ1 1,..., Ŝ1 m) and (Ŝ2 1,..., Ŝ2 m) as follows. The frst one of these assortments s constructed as (Ŝ0 1,..., Ŝ0 m) = ( S 1,... S 1,, S +1,..., S m ). In other words, the assortment (Ŝ0 1,..., Ŝ0 m) uses the components of the soluton ˆx that take value one and ths assortment smply uses the empty subset n nest. On the other hand, we construct the second and thrd assortments as (Ŝ1 1,..., Ŝ1 m) = (,...,, P,,..., ) and (Ŝ2 1,..., Ŝ2 m) = (,...,, Q,,..., ). Thus, each one of the assortments (Ŝ1 1,..., Ŝ1 m) and (Ŝ2 1,..., Ŝ2 m) only uses each one of the two potentally fractonal components of the soluton ˆx. The mportant observaton s that the three assortments (Ŝ0 1,..., Ŝ0 m), (Ŝ1 1,..., Ŝ1 m) and (Ŝ2 1,..., Ŝ2 m) as defned above collectvely nclude all components of the soluton ˆx = {ˆx (S ) : M, S A } that take a strctly postve value. In ths case, for the value ẑ satsfyng v 0 ẑ = f R (ẑ), we obtan v 0 ẑ = f R (ẑ) = V (S ) γ (R (S ) ẑ) ˆx (S ) M S A M 3 max V (Ŝ0 ) γ (R (Ŝ0 ) ẑ) + M { V (Ŝ1 ) γ (R (Ŝ1 ) ẑ) + M V (Ŝ2 ) γ (R (Ŝ2 ) ẑ) M V (Ŝ0 ) γ (R (Ŝ0 ) ẑ), M V (Ŝ1 ) γ (R (Ŝ1 ) ẑ), M V (Ŝ2 ) γ (R (Ŝ2 ) ẑ) In the chan of nequaltes above, the second equalty s by the fact that ˆx s an optmal soluton to problem (11)-(14) when ths problem s solved wth z = ẑ. The frst nequalty s by the fact that the three assortments (Ŝ0 1,..., Ŝ0 m), (Ŝ1 1,..., Ŝ1 m) and (Ŝ2 1,..., Ŝ2 m) as defned above collectvely nclude all strctly postve components of the soluton ˆx, mplyng that f ˆx (S ) > 0 for some M and S A, then t s the case that S = Ŝ0 or S = Ŝ1 or S = Ŝ2. The chan of nequaltes }. 18