assortment optimization for choosy · pdf fileassortment optimization for choosy customers...

40
Assortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University, Ithaca, NY 14853, USA [email protected] Huseyin Topaloglu School of Operations Research and Information Engineering, Cornell Tech, New York, NY 11011, USA [email protected] Jacob Feldman Olin Business School, Washington University, St. Louis, MO 63130, USA [email protected] April 18, 2016 Abstract We study two different choice models that capture the purchasing behavior of customers who only consider purchasing one of two substitutable products. We refer to these customers as choosy. The first choice model captures substitution behavior through probabilistic transitions between products. Under this choice model, a customer’s buying process can be captured in two steps: an arrival with the intention of purchasing a product and a single transition to a substitute product if the initial product is unavailable. The second choice model that we study assumes each customer is characterized by a ranking of the products. An arriving customer will purchase her highest ranked product that is offered. Since we model choosy customers, we assume that these rankings contain at most two products. This paper focuses on the assortment optimization problem under these two choice models. In this problem, the retailer wants to find the revenue maximizing set of products to offer when the buying process of each customer is governed by either of the two choice models described above. Under both choice models, we give hardness results for the assortment problem, and motivated by these hardness results, we develop novel approximation schemes.

Upload: phungnga

Post on 03-Feb-2018

227 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

Assortment Optimization for Choosy Customers

Alice PaulSchool of Operations Research and Information

Engineering, Cornell University,Ithaca, NY 14853, USA

[email protected]

Huseyin TopalogluSchool of Operations Research and Information

Engineering, Cornell Tech,New York, NY 11011, [email protected]

Jacob FeldmanOlin Business School, Washington University,

St. Louis, MO 63130, [email protected]

April 18, 2016

Abstract

We study two different choice models that capture the purchasing behavior of customers whoonly consider purchasing one of two substitutable products. We refer to these customers aschoosy. The first choice model captures substitution behavior through probabilistic transitionsbetween products. Under this choice model, a customer’s buying process can be captured intwo steps: an arrival with the intention of purchasing a product and a single transition to asubstitute product if the initial product is unavailable. The second choice model that we studyassumes each customer is characterized by a ranking of the products. An arriving customerwill purchase her highest ranked product that is offered. Since we model choosy customers, weassume that these rankings contain at most two products. This paper focuses on the assortmentoptimization problem under these two choice models. In this problem, the retailer wants to findthe revenue maximizing set of products to offer when the buying process of each customer isgoverned by either of the two choice models described above. Under both choice models, wegive hardness results for the assortment problem, and motivated by these hardness results, wedevelop novel approximation schemes.

Page 2: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

1 Introduction

The ability to accurately model consumer demand is critical for any retailer, since this model

will guide everything from inventory decisions to pricing to promotion strategies. Traditionally,

the demand for a product is assumed to be independent of the availability of other products.

This assumption fails to capture a typical behavior of most consumers commonly referred to as

substitution: the phenomenon where a customer chooses an alternative product when her most

preferred product is not available for purchase due to stockouts or deliberate inventory controls.

When customers substitute, the demand for a particular product should be modeled as a function

of the availability of all other substitutable alternatives. In the revenue management literature,

models capturing substitution patterns are known as customer choice models. A customer choice

model maps any assortment of products to the probabilities that each product in the assortment

is purchased. There are a variety of customer choice models, each of which captures different

aspects of typical customer substitution behavior. Choosing an appropriate choice model is often

a difficult task for the retailer, as there is a trade-off between model accuracy and tractability; the

choice models which capture the most general forms of consumer behavior are often those whose

underlying parameters are tricky to estimate and whose corresponding assortment problems are

difficult to solve.

In this paper, we study a setting in which customers are only willing to substitute at most once.

We refer to these customers as choosy. There are numerous papers in the marketing and revenue

management literature that provide evidence for the existence of choosy customers. In most of

the past literature, choosy customers have generally been referred to as customers that have small

consideration sets, where the consideration set of a customer is simply the set of products they would

ever consider purchasing. The authors of Lapersonne et al. (1995) study consumers considering an

automobile purchase and find that a large percentage of consumers will only consider the brand of

their previous car. This sort of consumer behavior is further described in Jeuland (1979), where

the author studies a purchasing bias which is referred to as short term brand loyalty or inertia in

choice. Finally, Crompton and Ankomah (1993) studies how travelers pick vacation destinations.

They claim that in this setting, “consideration sets have size at most four”. Additionally, with the

growth of online retailers such as Amazon who offer millions of products, customers are generally

able to get their first choice product online and hence it is hard to imagine that many consumers

exhibit extreme forms of substitution behavior.

As another example, Kok and Fisher (2007) models substitution in two simple steps. First, if

the arriving customer’s most preferred product is unavailable for purchase, the customer decides to

substitute with fixed probability δ. If she decides to substitute, she then makes a single probabilistic

2

Page 3: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

transition from her first choice product to another product and purchases this product if it is offered

or leaves the system if it is not. These probabilistic transitions can depend on the customer’s

first choice product. The authors support their assumption of only a single substitution event by

referencing the earlier work of Kok (2003), where it is shown that this single substitution model

can approximate the scenario where there are multiple substitution events quite accurately when δ

is not too small.

We study two choice models that can be used to model choosy customers. Under both choice

models, a customer will either purchase her first or second choice product. If neither is available,

she will leave the store without making a purchase. The first choice model that we study can be

viewed as a slight variation of the substitution model presented in Kok and Fisher (2007) that

was described earlier. Specifically, under this choice model, a customer arrives into the system

with the intention of purchasing her most preferred product. Throughout this paper, we use the

terms preferred product and first choice product interchangeably. If this product is available for

purchase, then she purchases it. Otherwise, she transitions to a second choice product with a certain

probability, and purchases this second product if it is available, or she leaves the system without

making a purchase. We assume that the transition probabilities are independent of each customer’s

most preferred product and thus we have a single transition probability for each product. If the

customer transitions to a second choice product that is not available, we assume that she then

leaves the system without making a purchase. In this way, customers consider purchasing at most

two products, and their purchasing behavior unfolds in at most two steps: an arrival event and

a potential substitution event. As a result, we refer to this choice model as the Two Step choice

model.

The second choice model that we study is a special case of the nonparametric ranking-based

choice model used in Mahajan and van Ryzin (2001a) and Mahajan and van Ryzin (2001b). In

the nonparametric ranking-based choice model, each customer class is distinguished by an arrival

probability and a preference list which is a unique ranking on a subset of products. When presented

with an assortment of products, a customer will purchase the highest ranking offered product in

her preference list. If there is no offered product in her preference list, she leaves the system

without making a purchase. In the most general form of the nonparametric choice model, there is

no restriction on the length of a customer’s preference list. Since we hope to capture the choice

process of choosy customers, we only consider customers whose preference lists are of length at

most two. We refer to this choice model as the Two Product Nonparametric choice model. Similar

to the Two Step choice model, customers only ever consider purchasing at most two products.

We demonstrate that the Two Product Nonparametric choice models subsumes the Two Step

3

Page 4: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

choice model and therefore it provides a more general framework for capturing the purchasing

behavior of choosy customers. As a result, at first glance it appears that one would never choose to

use the Two Step choice model over the Two Product Nonparametric choice model. However, we

show that the assortment problem for the Two Step model is provably easier than the corresponding

problem under the Two Product Nonparametric model. Further, the number of parameters in the

Two Step model grows linearly in the number of products whereas the number of parameters in the

Two Product Nonparametric model grows quadratically. Therefore, the Two Step model is easier

to estimate and is less likely to suffer from overfitting issues that can arise as a result of having

limited historical data.

1.1 Contributions

We consider the assortment optimization problem when customers either make purchases according

to the Two Step or Two Product Nonparametric choice model. In the assortment optimization

problem, the retailer has a collection of products and must choose a subset, or assortment, of these

products to offer to customers so as to maximize expected revenue. For the Two Step model,

we begin by showing that its corresponding assortment problem is NP-Hard via a reduction from

the Partition problem. Motivated by this hardness result, we develop a fully polynomial-time

approximation scheme (FPTAS). The FPTAS allows a trade off between running time and solution

quality: it can expend additional computational time to produce an assortment guaranteed to

provide revenue progressively closer to optimal. With enough computational power, the algorithm

can get arbitrarily close to an optimal solution.

Our approach for developing the FPTAS for the assortment problem under the Two Step choice

model relies on a reparameterization of the original problem. The reparameterization boils down

to guessing the optimal probability u that an arriving customer will not purchase the product

she initially considers. For a fixed guess of this probability, the assortment problem reduces to a

knapsack problem. Unfortunately, we cannot efficiently check every possible value of u. As a result,

we use exponentially spaced grid points as potential guesses for the optimal value of u. We show

that this approach leads to a small number of guesses for the optimal u while only reducing the

quality of the assortment produced by a factor of 1 + δ for any δ > 0. With regards to solving each

of the knapsack problems, the traditional FPTAS for the knapsack problem given in Williamson

and Shmoys (2010) is not applicable since it requires that the value of each item is an integer. As

a result, we give a different FPTAS for the knapsack problem and use it as a blackbox. We show

that this second approximation degrades our solution by an additional factor of 1 + δ. We wrap up

our FPTAS by giving the appropriate choice of δ to achieve the desired performance guarantee of

4

Page 5: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

1 + ε in time that scales polynomially in 1/ε.

For the Two Product Nonparametric model, we prove that an FPTAS is not possible for the

assortment optimization problem unless P=NP, even when the set of preference lists is derived from

a single ordering of the products. We show this result via a reduction from the vertex cover problem

on cubic graphs. We go on to give a 2-approximation algorithm for this assortment optimization

problem. To do so, we first show that the revenue function is submodular, but not monotone.

Maximizing a general non-monotone submodular function has been studied extensively. Our 2-

approximation algorithm is a modified version of the algorithm in Buchbinder et al. (2015) that

runs in time linear in the number of customer classes. We are also able to strengthen the result in

Buchbinder et al. (2015) by showing that we are within a factor of 2 of the optimal value to a linear

relaxation of the assortment problem. Both the hardness result and the approximation algorithm

are new results for the assortment optimization problem under the nonparametric choice model.

In particular, this improves upon the 4-approximation algorithm given in Aouad, Farias, Levi and

Segev (2015) for the special class of nonparametric choice models we consider in this paper.

We run a series of computational experiments on a large collection of instances of the assortment

problem under both choice models. Solving these instances with the algorithms that we develop

yields assortments whose revenues come within a percent of optimal on average. This average

performance far exceeds the worst case theoretical performance guarantees.

1.2 Related Literature

The Two Step choice model can be viewed as a truncated version of the Markov chain choice model

introduced in Blanchet et al. (2013). Under this model, Blanchet et al. (2013) shows that the

assortment problem can be formulated as a simple linear program. The authors of Feldman and

Topaloglu (2015b) show that the feasible region of this linear program has a special structure that

helps in developing an efficient approximation for the network revenue management problem. It

is also common to study the assortment problem when there is a limit on the number of products

offered or a limit on the total size of the offered assortment, where products may have arbitrary

sizes. The former is referred to as the cardinality constrained assortment problem and the latter is

referred to as the space constrained assortment problem. Under the Markov chain choice model,

the cardinality constrained version of the assortment problem was shown to be APX-Hard by Goyal

and Desir (2015), who also provide a constant factor approximation for the cardinality and space

constrained versions of the problem. The Two Step model also closely resembles the substitution

model outlined in Kok and Fisher (2007). In this setting, the single substitution event that occurs

when a customer’s first choice product is unavailable unfolds in two steps. First, the customer

5

Page 6: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

decides whether to consider a second product or to leave the store. If she chooses to consider

a second product, she then substitutes into one of the other products with a probability that is

dependent on the customer’s favorite product. The authors give heuristics for assortment planning

problems.

To our knowledge, the first to consider assortment optimization under the general nonparametric

model was Honhon et al. (2012), who also consider a restricted set of potential preferences lists.

Namely, the main result in their paper assumes that if the products are nodes in a tree, then

each possible preference list can be represented by a path in the tree starting or ending at the

root node. This result is extended in Feldman et al. (2015), where the authors work in a more

general tree setting where preference lists are still paths on a tree, but these paths can begin or

end anywhere on the tree. Both of these papers solve the assortment optimization problem via

dynamic programming methods that take advantage of the special structure of the potential set of

preference lists.

Two other papers that study the assortment problem under the nonparametric choice model

are Aouad, Farias, Levi and Segev (2015) and Aouad, Farias and Levi (2015). The former proves

various hardness results related to the assortment problem as well as a e · d-approximation for the

special case where the lengths of the preference lists are at most length d. The latter considers

the assortment optimization problem under the nonparametric choice model when customer pref-

erence lists are associated with structured set systems defined over a single overarching ordering

of the products. One such structured set system is a laminar family. In an extended setting, Rus-

mevichientong and Jagabathula (2015) presents an approximation scheme for the joint assortment

and pricing problem where the retailer chooses both the set of products to offer and the prices for

these products with the intention of maximizing expected revenue. In this problem setting, each

customer class is distinguished by a price threshold and a preference list. Once prices have been set,

customers purchase the highest ranking offered product that is priced below their price threshold.

One important thing to note is that these papers all rely on being able to roughly assume that the

preference lists of all customers are based on the same overarching ranking of the products.

Assortment optimization has also been thoroughly studied under other choice models. Talluri

and van Ryzin (2004) solves the assortment optimization problem when customers choose according

to the multinomial logit (MNL) choice model. Extending this result, Rusmevichientong et al.

(2010), Wang (2012), Davis et al. (2013) and Wang (2013) study various versions of the constrained

assortment problems under the MNL model. Mendez-Dıaz et al. (2010), Desir and Goyal (2013) and

Rusmevichientong et al. (2014) focus on assortment problems when customer choices are governed

by a mixture of multinomial logit models. Li and Rusmevichientong (2014), Davis et al. (2014),

6

Page 7: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

and Li et al. (2015) develop efficient solution methods for the unconstrained assortment problem

when customers choose under the nested logit model. Gallego and Topaloglu (2014) and Feldman

and Topaloglu (2015a) consider the space and cardinality constrained versions of the assortment

problem when customers choose according to the nested logit model.

1.3 Organization

The rest of the paper is organized as follows. In Section 2, we introduce the Two Step and Two

Product Nonparametric choice models. In Section 3, we present the hardness result and FPTAS

for the assortment optimization problem under the Two Step model. Similarly, in Section 4 we

give a hardness result and a 2-approximation algorithm for the assortment problem under the

Two Product Nonparametric model. We numerically test the performance of the FPTAS and the

2-approximation algorithm in Section 5 to show that their practical performance is in fact much

better than their theoretical guarantees. Lastly, in Section 6 we conclude and discuss how future

work can extend these results.

2 Models

In this section, we formally define the Two Step and Two Product Nonparametric choice models.

Both models will consider customers that substitute at most once. In other words, these customers

consider at most two products. For both models, we let the set of potential products be N =

{1, 2, . . . , n} and let rj ≥ 0 be the revenue of product j. We refer to products as offered if they are

available for purchase and not offered if not. In addition, given a subset of offered products S ⊆ N ,

we let Prj(S) be the probability a customer will purchase product j if the set S is offered. We

encode the offered assortment through the vector x ∈ {0, 1}n, where xj = 1 indicates that product

j is offered and xj = 0 indicates that it is not. We slightly abuse notation and for any assortment

x ∈ {0, 1}n, we denote the purchase probability also by Prj(x).

2.1 Two Step Choice Model

In the Two Step choice model, customers arrive into the system with the intention of purchasing

their most preferred item. With probability αj , a customer arrives into the system with the intention

of purchasing product j. We assume without loss of generality that∑

j∈N αj = 1. If product j is

offered, then the customer will purchase product j. Otherwise, the customer transitions to product

i with probability βi and checks the availability of product i in the second step. If product i is

offered, then the customer purchases product i. If product i is not offered, the choice process of the

customer terminates without a purchase. Throughout, we assume that∑

i∈N βi ≤ 1 so that if the

7

Page 8: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

first choice product of the customer is not available, then with probability 1−∑

i∈N βi, the customer

also immediately terminates her choice process without a purchase. In this way, the choice process

of each arriving customer consists of at most two steps: an arrival with the intention of purchasing

a particular product and a single transition to a substitute product if the initial product is not

available for purchase. Note that in contrast to the model presented in Kok and Fisher (2007), we

assume that the transition probability βi is independent of the first choice product.

Thus, for a particular assortment given by x ∈ {0, 1}n, a customer purchases product j with

probability

Prj(x) = αjxj +

(1−

∑i∈N

αixi

)βjxj . (1)

The first term in the sum represents the event that the customer purchases product j upon her

arrival and the second term captures the event where the customer substitutes into product j

because her first choice product was unavailable. An arriving customer’s first choice product is

not available with probability 1 −∑

i∈N αixi, and in this case, she transitions to product j with

probability βj and purchases it only if it is offered.

Under a general Markov chain choice model, there is no restriction on the number of transitions

that a customer can make. It is clear that our restriction of only a single transition eliminates

the Markovian substitution patterns underlying the Markov chain choice model. As a result,

this seemingly more simple choice model actually admits a more difficult assortment optimization

problem.

2.2 Two Product Nonparametric Choice Model

In the general nonparametric choice model we are given a distribution over preference lists given

by a set of customer classes G. In this setting, a customer of customer class g ∈ G arrives with

probability λg and is associated with a ranking σg on a subset Sg ⊆ N of products. We assume

without loss of generality that∑

g∈G λg = 1. For i ∈ Sg, let σg(i) give the index of product i

in customer type g’s preference list. We use the convention that lower indexed products have a

higher ranking. So a product that is first in a customer’s preference list has the highest ranking.

An arriving customer will purchase her highest ranked offered item (if any). In particular, if the

retailer offers an assortment given by x ∈ {0, 1}n, then a customer of type g will purchase product

πg(x) :=

{arg mini∈Sg ,xi=1 σg(i) if Sg ∩ {i : xi = 1} 6= ∅,0 otherwise,

where πg(x) = 0 indicates that the customer leaves the system without making a purchase.

In our Two Product Nonparametric choice model, we assume that |Sg| ≤ 2 for all customer

classes g ∈ G. Without loss of generality, we can assume |Sg| = 2 by adding in a dummy product

8

Page 9: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

with zero revenue as the second choice for customers with |Sg| = 1. For each customer class g ∈ G,

let g1 be the most preferred product and g2 be the second preferred product for customers in this

class. Under the Two Product Nonparametric choice model, the probability product j is purchased

is

Prj(x) =∑

g∈G:πg(S)=j

λg =∑g:g1=j

λgxj +∑g:g2=j

λg(1− xg1)xj .

It is not difficult to show that this choice model generalizes the Two Step choice model by

mapping each of the O(n2) paths on the products that a customer could take in the Two Step

Model to a preference list. A formal proof of this is given in Appendix A. Consistent with this

result, we will show the assortment optimization problem is provably harder for this customer choice

model than the Two Step choice model even when we put additional restrictions on the customer

class lists.

3 Assortment Optimization for the Two Step Choice Model

In the assortment optimization problem, a firm chooses a subset of product S ⊆ N , encoded by

the vector x ∈ {0, 1}n, to offer to customers with the intention of maximizing the expected revenue

from an arriving customer. Given our notation from Section 2, we denote the expected revenue of

a given assortment x ∈ {0, 1}n as Rev(x) =∑

j∈N rjPrj(x) and the optimal expected revenue as

OPT = maxx∈{0,1}n

∑j∈N

rjPrj(x).

In this section, we assume that the purchasing behavior of each customer is governed by the

Two Step choice model. Under this setting,

OPT = maxx∈{0,1}n

∑j∈N

rjαjxj + (1−∑j∈N

αjxj)∑j∈N

rjβjxj

, (2)

which follows from the definition of Prj(x) given in (1). We first show that the assortment optimiza-

tion problem under the Two Step choice model is NP-Hard. This hardness result then motivates

the development of a FPTAS to solve this problem.

To show that the assortment optimization problem is NP-Hard, we use a reduction from the

Partition problem, which is known to be NP-complete. Our approach is inspired by the reduction

seen in Rusmevichientong et al. (2014), which shows that the assortment problem under a mixture

of multinomial logits is NP-Hard. In the Partition problem, we are given a set of n items {1, . . . , n}.

There is an integer weight wj associated with item j such that∑n

j=1wj = 2L for some integer L.

The partition problem asks whether there exists a partition of the items given by a vector x ∈ {0, 1}n

such that∑n

j=1wjxj = L. We will call such a partition an even partition.

9

Page 10: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

Theorem 3.1. The assortment optimization problem under the Two Step choice model is NP-Hard.

Proof. Suppose we are given an instance of the Partition problem with n items, where the weight

of item j is wj such that∑n

j=1wj = 2L. We index the items by decreasing weight so that item n

has the smallest weight. Note that for each item j, we must have wj < L. To see this, note that if

wj > L, then an even partition clearly does not exist and if wj = L, then product j gives the even

partition.

We construct a corresponding instance of the assortment optimization problem as follows. We

create n products and set αj = βj = wj/2L so that a customer both arrives to a particular product

j and substitutes to product j with the same probability. Furthermore, we set rj = 1 for all

j = 1, . . . , n − 1 and set rn = 1/αn − 1 > 1. The preceding inequality holds because we have

assumed wn < L and so αn < 0.5. Product n is the highest revenue product and is therefore

guaranteed to be included in the optimal assortment. Since we can assume xn = 1, the resulting

assortment problem for this instance is:

maxx∈{0,1}n−1

∑j 6=n

αjxj + (1− αn) + (1− (∑j 6=n

αjxj + αn))(∑j 6=n

αjxj + (1− αn)). (3)

We show that there exists an even partition if and only if every optimal solution x∗ ∈ {0, 1}n−1

to problem (3) satisfies∑

j 6=n αjx∗j = 0.5. We begin by proving the forward direction. Assume that

we have an even partition P ⊆ {1, . . . , n} where n /∈ P . Consider the following feasible solution x

to problem (3)

xi :=

{1 if i ∈ P,0 otherwise.

Note that we have∑

j∈P wj =∑

j 6=nwj xj =∑

j 6=n 2αjLxj = L which implies that∑

j 6=n αj xj =

0.5. The second equality in the string of equalities follows by our definition of αj and the last

equality follows since P is an even partition. Next, consider the case where n ∈ P and define the

following feasible solution to problem (3)

xi :=

{0 if i ∈ P,1 otherwise.

We have that∑

j∈P wj =∑

j /∈P wj =∑

j 6=nwj xj =∑

j 6=n 2αjLxj = L which again implies that∑j 6=n αj xj = 0.5. All that remains is to show that in either case x is optimal to problem (3). To see

this, we first rewrite the optimization problem in (3) using the change of variable q =∑

j 6=n αjxj

and think about optimizing over q instead. The resulting objective becomes q + (1 − αn) + (1 −

(q+αn))(q+ (1−αn)) = −q2 + q+ (1−αn)(2−αn), which is maximized by choosing q = 0.5. So if

an even partition exists, then we know x is optimal because we have shown that∑

j 6=n αj xj = 0.5.

10

Page 11: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

Therefore, if an even partition exists, we know that every optimal solution x∗ ∈ {0, 1}n−1 to problem

(3) must satisfies∑

j 6=n αjx∗j = 0.5 since we know that we can find at least one such solution and

any solution with q 6= 0.5 does strictly worse.

We now show the backward direction: we assume that we have an optimal solution x∗ ∈

{0, 1}n−1 to problem (3) that satisfies∑

j 6=n αjx∗j = 0.5 and show how to find an even partition.

Let P = {j : x∗j = 1} be a partition. We know that∑

j 6=n αjx∗j =

∑j∈P αj =

∑j∈P wj/2L = 0.5,

which implies that∑

j∈P wj = L and hence P is an even partition. The second equality in the

string of equalities follows by definition of αj and the third equality follows by our assumption in

proving the backward direction.

3.1 Fully Polynomial-Time Approximation Scheme

Motivated by the above hardness result, we develop an algorithm which yields a FPTAS for the

assortment optimization problem under the Two Step choice model. The approach proceeds in

two steps. First we show that by reparameterizing the assortment problem, we can reduce the

problem to a polynomial number of knapsack problems. The optimal solution to each knapsack

problem is a valid assortment, and we show that choosing the assortment whose revenue is largest

over all knapsack problems produces an assortment whose revenue is within a factor of 1 + δ from

the optimal revenue for any δ > 0. Unfortunately, the knapsack problem is NP-Hard and so in

the second step, we use an established FPTAS for the knapsack problem to solve the series of

knapsack problems that we have created. We then choose the assortment produced by the FPTAS

that yields the highest expected revenue over all knapsack problems. Combining both layers of the

approximation, we show that the assortment that we produce has a revenue that differs from the

optimal revenue by at most a factor of (1 + δ)2 for any δ > 0. For a carefully chosen value of δ, we

can then achieve an approximation guarantee of 1 + ε for any ε > 0 with run time polynomial in

1/ε and the input size.

We begin by giving our reparameterization of the assortment problem under the Two Step

choice model. Let x∗ be the optimal assortment. The basic idea behind the reparameterization is

to guess u∗ = 1 −∑

j∈N αjx∗j . Suppose we knew the value of u∗, then we could find the optimal

solution to (2) by solving

maxx∈{0,1}n

∑j∈N

rj(αj + u∗βj)xj

s.t.∑j∈N

αjxj = 1− u∗.

11

Page 12: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

Since we cannot hope to know u∗ a priori, we start by considering all possible guesses for its value.

For a given guess u, we consider the following knapsack problem

xu = argmaxx∈{0,1}n

Πx(u) =∑j∈N

rj(αj + uβj)xj (4)

s.t.∑j∈N

αjxj ≤ 1− u.

Letting αmin = minj∈N αj , we solve this knapsack problem for all values of u ∈ {0} ∪ [αmin, 1] and

look at the corresponding assortment. Note that we account for all possible values of u since the

smallest value for u is 0, which occurs when we offer N , and the second smallest value of u is αmin,

which occurs when we offer N \ {argminj∈N αj}. Further, the largest value of u is 1, which occurs

when we offer the empty set. Consider the following optimization problem:

OPTknap = maxu∈{0}∪[αmin,1]

Rev(xu). (5)

In the following proposition we show that solving the knapsack problem in (4) for all u ∈ {0} ∪

[αmin, 1] finds the optimal solution to the assortment problem for the Two Step model.

Proposition 3.2.

OPTknap = OPT.

Proof. First, we show that OPTknap ≤ OPT. Let u = argmaxu∈{0}∪[αmin,1]

Rev(xu). We have that

OPTknap = Rev(xu) ≤ OPT.

The equality follows from the definition of OPTknap and the inequality follows by the feasibility of

xu to problem (2).

Next, we show that OPTknap ≥ OPT. Let x∗ be the optimal solution to the assortment

optimization problem and define u∗ = 1 −∑

j∈N αjx∗j . Consider problem (4) with u = u∗, whose

optimal solution is given by xu∗. Then,

Rev(xu∗) =

∑j∈N

rjαjxu∗j + (1−

∑j∈N

αjxu∗j )∑j∈N

rjβjxu∗j

≥∑j∈N

rj(αj + u∗βj)xu∗j

≥∑j∈N

rj(αj + u∗βj)x∗j

= Rev(x∗),

where the first inequality follows since u∗ ≤ 1−∑

j∈N αjxu∗j and the second inequality follows from

the feasibility of x∗ to problem (4) when u = u∗. Thus, OPTknap ≥ OPT.

12

Page 13: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

Unfortunately, there are potentially an exponential number of possible values that u could take

on in the interval [αmin, 1] and thus trying each one is not tractable. Instead, we place a set of

exponentially spaced grid points on the interval [αmin, 1] and consider only values of u that fall on

this grid. For any δ > 0, define Grid = {(1 + δ)−k, k = 1, . . . ,K}, where K = min{k : (1 + δ)−k ≤

αmin}. To ease the notation, we make the dependency of Grid on δ and αmin implicit. It is easy

to see that that K = O(log(αmin)/δ) and so the number of grid points is polynomial in the input

and 1/δ. We consider the following gridded version of problem (5):

OPTGrid = maxu∈Grid

Rev(xu). (6)

We show how the revenue of the assortment produced by the gridded problem relates to the optimal

revenue through the following proposition:

Proposition 3.3. For any δ > 0, we have that

OPT ≤ (1 + δ)OPTGrid.

Proof. Let x∗ be the optimal solution to the assortment optimization problem and define u∗ =

1 −∑

j∈N αjx∗j . Choose u = max{u ∈ Grid : u ≤ u∗}. Our gridding scheme dictates that

u∗/(1 + δ) ≤ u. Note that since u ≤ u∗, we know that x∗ is feasible to problem (4) with u = u.

Thus we know that

OPTGrid ≥∑j∈N

rj(αj + uβj)xu ≥

∑j∈N

rj(αj + uβj)x∗j

≥∑j∈N

rj(αj +u∗βj1 + δ

)x∗j

≥ 1

1 + δ

∑j∈N

rj(αj + u∗βj)x∗j

=1

1 + δ·OPT.

Proposition 3.3 shows that if we only consider the O(log(αmin)/δ) values of u ∈ Grid, we are able

to produce an assortment with expected revenue within a factor of (1 + δ) from optimal. We need

one additional approximation layer since we have assumed that we can optimally solve a series of

NP-Hard knapsack problems. For this step, we use an established FPTAS for the knapsack problem

that we rederive in Appendix B. Since the knapsack problems that we consider are parameterized

by u and δ, we refer to the FPTAS as Approx(u, δ).

13

Page 14: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

Assumption 3.4. For fixed value of u and δ, let xu = Approx(u, δ) be the solution returned by

knapsack FPTAS given in Appendix B. Then, the FPTAS ensures that Rev(xu) ≤ (1 + δ)Rev(xu)

by construction.

Our algorithm runs the FPTAS for every value of u ∈ Grid and returns the solution with highest

revenue. Recall that xu is the assortment returned by the FPTAS for the knapsack problem for a

given value of u. Therefore, the algorithm returns a solution with value:

ALG = maxu∈Grid

Rev(xu). (7)

The following final proposition shows that we find an assortment whose revenue is with a factor of

(1 + δ)2 of OPT.

Proposition 3.5. For any δ > 0, we have that

OPT ≤ (1 + δ)2ALG.

Proof. Let x∗ be the optimal solution to the assortment optimization problem and define u∗ =

1−∑

j∈N αjx∗j . Choose u = max{u ∈ Grid : u ≤ u∗}. Then,

ALG ≥ Rev(xu) =∑j∈N

rj(αj + uβj)xuj

≥ 1

1 + δ

∑j∈N

rj(αj + uβj)xuj

≥ 1

1 + δ

∑j∈N

rj(αj + uβj)x∗j

≥ 1

(1 + δ)2

∑j∈N

rj(αj + u∗βj)x∗j

= OPT/(1 + δ)2

The first inequality follows from the fact that u might not return the best revenue for the algorithm,

the second inequality from the approximation guarantee of the FPTAS, the third inequality from

the fact that x∗j is a feasible solution to problem (4) for u = u, and the the last inequality follows

from our choice of u.

Proposition 3.5 shows that our algorithm produces an assortment whose expected revenue

is within a factor of (1 + δ)2 of the optimal revenue. Running this algorithm requires running

Approx(u, δ) for O(log(αmin)/δ) values of u. We show in Appendix B that the FPTAS for a sin-

gle knapsack problem can be implemented in O(n2(log(nr∗max) − log(r∗min))/δ) operations, where

r∗min = minj rj(αj +αminβj) and r∗max = maxj rj(αj +βj) Therefore, the overall runtime for solving

14

Page 15: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

problem (7) is O((log(nr∗max) − log(r∗min)) log(αmin)/δ2). All that remains is to choose an appro-

priate value for δ to complete the FPTAS for the assortment problem under the Two Step choice

model.

Theorem 3.6. Choosing δ = ε/4, we get that OPT ≤ (1 + ε)ALG for any ε ∈ {0, 1}. Further-

more, the algorithm to find such an assortment runs in O(n2(log(nr∗max)− log(r∗min)) log(αmin)/ε2)

operations.

Proof. By Proposition 3.5, we know that OPT ≤ (1 + δ)2ALG = (1 + ε/4)2ALG , where the second

equality follows by our specific choice of δ given in the statement of the theorem. For ε ∈ {0, 1},

using standard inequalities, it is easy to show that (1 + ε/4)2 ≤ exp(ε/2) ≤ 1 + ε, which gives us

that OPT ≤ (1+ε)ALG as desired. Further, when the run time is written in terms of ε instead of δ,

we only gain a constant factor and thus the runtime is O(n2(log(nr∗max)− log(r∗min)) log(αmin)/ε2),

which is both polynomial in 1/ε and the input size.

4 Assortment Optimization for the Two Product NonparametricChoice Model

In this section, we consider the assortment optimization problem under the Two Product Non-

parametric choice model. Recall, that in this setting, the set of customer classes is given by G. A

customer of customer class g ∈ G arrives with probability λg and has first choice product g1 and

second choice product g2. In particular, if the retailer’s assortment decision is given by x ∈ {0, 1}n,

then the expected revenue is given by Rev(x) =∑

g∈G λgrg1xg1 + λgrg2(1− xg1)xg2 . As before, let

OPT be the expected revenue of the optimal assortment

OPT = maxx∈{0,1}n

Rev(x).

Under the Two Product Nonparametric choice model, the assortment optimization is provably

harder than for the Two Step choice model. In particular, the following theorem shows that we

cannot expect to find an FPTAS for the assortment optimization problem even when the preference

lists are derived from a single universal ordering of the products. Specifically, by single universal

ordering, we mean that we can index the products such that if i < j, then for any customer class

g ∈ G such that i, j ∈ Sg, we must have that g1 = i and g2 = j. We show the result using a

reduction from the vertex cover problem on cubic graphs. In the vertex cover problem on cubic

graphs, we are given a graph G = (V,E) where each vertex has degree 3 and an integer k. The

problem asks whether or not there exists a vertex cover, a subset of vertices such that each edge is

incident to at least one vertex in the subset, of size at most k.

15

Page 16: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

Theorem 4.1. Unless P=NP, there does not exist an FPTAS for the assortment problem under

the Two Product Nonparametric choice model even when all customer classes come from a single

universal ordering of the products.

Proof. Consider an instance of vertex cover on a cubic graph G = (V,E) with V = {v1, v2, . . . , vn}

and value k. We construct an instance of the assortment optimization problem by creating products

{1, 2, . . . , n+1} where ri = 1 if i ≤ n and ri = 2 if i = n+1. In addition, for every edge (vi, vj) ∈ E

we create a customer class that first considers product min(i, j) then considers product max(i, j).

We refer to these customer classes as “edge” customer classes. Lastly, for each vertex vi ∈ V we

create a customer class that first considers product i then product n + 1. We refer to each of

these customers as “vertex” customers. Edge customers arrive with unnormalized probability 1

and vertex customers arrive with unnormalized probability 13 . It is without loss of generality that

we consider unnormalized arrival probabilities.

We will first show that there exists a vertex cover of size ≤ k in G if and only if the optimal as-

sortment of products in the corresponding assortment optimization problem generates an expected

revenue of at least |E|+ 13(k + 2(n− k)).

Suppose there exists a vertex cover U ⊆ V such that |U | ≤ k. Then, let S = {i : vi ∈ U}∪{n+1}.

For every edge customer (vi, vj) either vi or vj is in U so either i or j is in S and this we accumulate

an expected revenue of 1 from each edge customer. Every vertex customer vi ∈ U generates an

expected revenue of 13 since these customers will purchase product i. On the other hand, for every

vertex customer vi /∈ U , generates an expected revenue 23 since these customers purchase product

n+ 1. Thus, Rev(S) = |E|+ 13(|U |+ 2(n− |U |)) ≥ |E|+ 1

3(k + 2(n− k)).

Let S∗ be the optimal solution to the assortment problem and assume that Rev(S∗) ≥ |E| +13(k + 2(n − k)). Without loss of generality, S∗ contains product n + 1 since adding this product

can only increase the revenue. Suppose that there exists an edge customer (vi, vj) such that neither

i nor j are in S∗. Then, by adding i to S∗ we gain an expected revenue of at least 1 from this

customer, but now the vertex customer associated with vertex vi no longer purchases product n+1.

Since this vertex customer generates an expected revenue of 23 , the net gain is at least 1

3 and so we

can assume that all edge customer classes make a purchase when S∗ is offered and thus S∗ will be

a vertex cover. Furthermore, we know that

Rev(S∗) = |E|+ 1

3(|S∗|+ 2(n− |S∗|))

≥ |E|+ 1

3(k + 2(n− k)),

where the inequality follows by our assumption on the value of Rev(S∗). Thus, we must have

|S∗| ≤ k and thus we have found a vertex cover of size ≤ k.

16

Page 17: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

In particular, this shows that if k is the size of a minimum vertex cover then the optimal revenue

in the assortment problem that we create above is OPT = |E| + 13(k + 2(n − k)). Consider the

assortment S2 with the second largest revenue Rev(S2) = OPT2 < OPT in the assortment problem

that we create from the vertex cover problem. Suppose S2 is a vertex cover in the original vertex

cover problem. Then OPT2 = |E| + 13(|S2| + 2(n − |S2|)) < |E| + 1

3(k + 2(n − k)) since |S2| > k.

Thus we know that OPT2 ≤ |E|+ 13(k + 1 + 2(n− k − 1)). Now suppose S2 is not a vertex cover.

By the argument made above, if more than two edge customers do not make a purchase, then we

can improve the revenue while maintaining that S2 is not a valid vertex cover by adding any of

the products in the preference list of these customers. Therefore, S2 must have exactly one edge

customer not making a purchase, which implies that |S2| ≥ k − 1 since a minimum vertex cover

has size at least k. Thus, OPT2 ≤ |E| − 1 + 13(k− 1 + 2(n− k+ 1)) < |E|+ 1

3(k+ 1 + 2(n− k− 1)).

Combining these two cases we get that OPT2 ≤ |E|+ 13(k + 1 + 2(n− k − 1)). Thus,

OPT2

OPT≤|E|+ 1

3(k + 1 + 2(n− k − 1))

|E|+ 13(k + 2(n− k))

= 1− 1/3

3n/2 + 13k + 2

3(n− k)

≤ 1− 1/3

3n/2 + 13n+ 2

3n

= 1− 1

7.5n

where the equality comes from the fact that G is a cubic graph and thus |E| = 3n/2. Thus if one

can produce an assortment that is within 1− 17.5n of OPT , then this assortment must be optimal.

Suppose there existed an FPTAS for the assortment problem under the Two Product Nonpara-

metric choice model. For any input to the vertex cover problem on a cubic graph, transform the

problem into an assortment optimization problem as above and set ε < 17.5n . Note that 1/ε = O(n).

Then, the FPTAS would be guaranteed to return the optimal solution, which in turn will reveal

the optimal solution to the vertex cover problem in polynomial time. This is a contradiction since

vertex cover on cubic graphs is NP-hard.

This results shows that we cannot hope to match the approximation guarantee that we derived

in the previous section for the Two Step choice model. Seeing that the Two Product Nonparametric

model subsumes the Two Step model, it makes sense that we must trade off model richness with the

tractability of the corresponding assortment problem. Fortunately, this problem does have some

structure; we can show that the revenue function is submodular. Recall, a function f : 2N 7→ R is

submodular if for all S, T ⊆ N such that T ⊂ S and x ∈ N \ S,

f(S ∪ {x})− f(S) ≤ f(T ∪ {x})− f(T ).

17

Page 18: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

These functions capture the notion of diminishing returns. In our case, as the offered assortment

gets larger, the benefit of adding a product i decreases.

Lemma 4.2. For the Two Product Nonparametric choice model, Rev(·) is a non-monotone sub-

modular function.

Proof. First, we show that Rev(·) is submodular. Let S, T ⊆ N such that T ⊂ S and let i ∈ N \S.

For any W ⊆ N , we define the adjusted revenue of i to be

A(i,W ) := Rev(W ∪ {i})− Rev(W ).

We show that A(i, T ) ≥ A(i, S), which is equivalent to showing the submodularity of Rev(·). To

do so, we consider the change in the revenue when product i is added to the assortments S and T .

For each g ∈ G such that i ∈ Sg, we analyze this revenue change based on the inclusion or exclusion

of j = Sg \ {i} in S and T :

• If j /∈ S, then adding i to S or T generates an additional revenue of λgri.

• If j ∈ S and j ∈ T , then adding i to S or T changes the revenue by λg(ri − rj) for customer

class g if g1 = i and does not change the revenue otherwise.

• If j ∈ S and j /∈ T , then adding i to S changes the revenue by λg(ri − rj) for customer class

g if g1 = i and does not change the revenue otherwise. On the other hand, adding i to T

generates additional revenue λgri.

Therefore, for each g ∈ G, we have shown that the net gain in revenue for assortment T when

product i is added is greater than the net gain in revenue for assortment S when product i is

added. Overall, this means that we must have

A(i, T ) ≥ A(i, S),

as desired.

A function f : 2N 7→ R is monotone if for every S ⊆ T we have f(S) ≤ f(T ). We show that

Rev(S) is non-monotone with a very simple two product example. Let N = {1, 2} with r1 = 1 and

r2 = 2. Consider a single customer class with g1 = 1 and g2 = 2, who arrives with certainty. In

this case, Rev({2}) = 2 and Rev({1, 2}) = 1 and hence Rev(S) is non-monotone.

Maximizing a non-monotone submodular function has been studied thoroughly (see Feige et al.

(2011), Buchbinder et al. (2015), Huang and Borodin (2014), and Buchbinder and Feldman (2015)).

Buchbinder et al. Buchbinder et al. (2015) present a randomized 2-approximation algorithm for this

18

Page 19: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

problem matching the known hardness Feige et al. (2011). This result was then improved to be

a deterministic algorithm by Buchbinder and Feldman Buchbinder and Feldman (2015). We will

present a modified version of their randomized algorithm that will run in time linear in the number

of customer classes and is a deterministic 1/2-approximation algorithm. In addition, we are able to

slightly strengthen their result by showing that we are within a factor of 2 of the optimal value to

a linear programming relaxation of the assortment problem. This revised analysis is similar to the

one taken by Poloczek et al. Poloczek et al. (2016) in presenting a deterministic 4/3-approximation

algorithm for MAX SAT.

The linear time algorithm will be a two-stage algorithm. In the first stage, we will process

products 1, 2, . . . , n in that order and assign each a probability pi ∈ [0, 1] of being in the assortment.

We will show that if each product is offered independently with probability pi, then the expected

revenue will be at least 1/2 the optimal value for a linear programming relaxation of the problem.

Then, in the next stage of the algorithm, we de-randomize our algorithm using the classic method

of conditional expectations to determine whether or not to offer each product.

4.1 Algorithm

Given our submodular revenue function Rev : 2N 7→ R+, the multilinear extension of Rev is given

by F : [0, 1]N 7→ R+ where the value at x ∈ [0, 1]N is

F (x) :=∑S⊆N

∏i∈S

xi∏j /∈S

(1− xj)Rev(S)

=∑g∈G

λgrg1xg1 + λgrg2(1− xg1)xg2 .

The multilinear extensions computes the expected revenue when each product i is offered indepen-

dently with probability xi. We will use this multilinear extension to inform our decisions about the

products.

In the first stage, the algorithm processes the products in order {1, 2, . . . , n} and assigns them

offer probabilities. Suppose at the beginning of iteration i, we have set probabilities p1, . . . , pi−1

for products 1, 2, . . . , i− 1. Then, let

xi−1j :=

{pj j ≤ i− 1

0 j ≥ ixi−1j :=

{pj j ≤ i− 1

1 j ≥ i

These two vectors represent the extremes for the remaining probabilities: either offering or not

offering all of the products with index i or larger. We will keep track of the average revenue

between the two by defining

Bi−1 :=1

2

[F (xi−1) + F (xi−1)

].

19

Page 20: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

The algorithm essentially chooses to offer product i with probability pi to balance these two

extremes for the remaining probabilities. Let ej be the unit vector with a one in the jth entry. To

set this probability we define:

ai := F (xi−1 + ei)− F (xi−1) and bi := F (xi−1 − ei)− F (xi−1).

Note that ai is the change in the expected revenue if we offer product i under the extreme that all

future products will remain not offered and bi is the change in the expected revenue if we do not

offer product i under the extreme that all future products are offered. If ai ≤ 0, the algorithm sets

pi = 0 and does not offer product i. Otherwise, if bi ≤ 0 and ai > 0, then the algorithm sets pi = 1

and offers product i. Lastly, if ai, bi > 0 and the algorithm sets pi = ai/(ai + bi). Note that the

differences in the definitions of ai and bi will only contain terms for customer classes that contain i

so we only need to look at the incident customer classes. In particular, ai and bi can be written as

ai =∑g:g1=i

λgri +∑g:g2=i

λgri(1− xi−1g1 )−∑g:g1=i

λgrg2xi−1g2

and

bi = −∑g:g1=i

λgri −∑g:g2=i

λgri(1− xi−1g1 ) +∑g:g1=i

λgrg2 xi−1g2 .

Therefore, the first stage of the algorithm runs in linear time with respect to the number of customer

classes.

The second stage of the algorithm derandomizes the probabilities pi without decreasing the

expected revenue. In this stage, we will make our final decisions about whether to offer each

product. Suppose that at the beginning of the ith iteration, we have decided to offer products

Si−1 ⊆ {1, 2, . . . , i− 1}. Then, let

qi−1j :=

0 j ≤ i− 1 and j /∈ Si−11 j ≤ i− 1 and j ∈ Si−1pj j ≥ i

.

This represents the current probabilities of each product being offered. Note that the expected

revenue given these current probabilities can be written as

F (qi−1) := piF (qi−1 + (1− pi)ei) + (1− pi)F (qi−1 − piei).

If F (qi−1 + (1− pi)ei) ≥ F (qi−1 − piei) we offer product i. Otherwise, we do not.

Again, we can simplify the calculations to determine if F (qi−1 + (1 − pi)ei) ≥ F (qi−1 − piei).

Any customer class that does not contain i will contribute the same amount to each side. On the

other hand, if a customer class has g1 = i it contributes λgri to the left hand side and λgrg2qi−1g2 to

20

Page 21: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

the right hand side. If g2 = i, then it contributes λgrg1qi−1g1 to both and λgri(1 − qi−1g1 ) to the left

hand side. In other words, if∑g:g1=i

λgri +∑g:g2=i

λgri(1− qi−1g2 ) ≥∑g:g1=i

λgrg2qi−1g2

we offer product i and otherwise we do not.

Overall, this shows the algorithm runs in linear time with respect to the number of customer

classes. We summarize this two stage linear-time algorithm in Algorithm 1.

The following lemma about the probability values will be useful in the later analysis.

Lemma 4.3. For all i = 1, 2, . . . , n, ai + bi ≥ 0.

Proof. Since Rev(S) is submodular, for any subset S ⊆ {1, 2, . . . , i− 1}

Rev(S ∪ {i})− Rev(S) ≥ Rev(S ∪ {i, . . . , n})− Rev(S ∪ {i+ 1, . . . , n}).

Note that by definition of xi−1 and xi−1,

ai =∑

S⊆{1,2,...,i−1}

∏j∈S

pj∏j /∈S

(1− pj)Rev(S ∪ {i})−∑

S⊆{1,2,...,i−1}

∏j∈S

pj∏j /∈S

(1− pj)Rev(S)

=∑

S⊆{1,2,...,i−1}

∏j∈S

pj∏j /∈S

(1− pj) [Rev(S ∪ {i})− Rev(S)]

≥∑

S⊆{1,2,...,i−1}

∏j∈S

pj∏j /∈S

(1− pj) [Rev(S ∪ {i, . . . , n})− Rev(S ∪ {i+ 1, . . . , n})]

= −bi,

which gives the result.

4.2 Analysis

We now show that this algorithm is indeed a 2-approximation algorithm. Suppose that we can

show that at the end of the first stage, 2F (xn) = 2F (xn) ≥ OPT. Then, in the second stage, we

are simply applying the method of conditional expectations such that for each iteration i

F (qi) = max(F (qi−1 + (1− pi)ei), F (qi−1 − piei))

≥ piF (qi−1 + (1− pi)ei) + (1− pi)F (qi−1 − piei)

= F (qi−1),

where the first inequality follows from the fact that the maximum of two values is greater than

or equal to any linear combination of the two. Applying this iteratively implies that the revenue

returned by our algorithm will be

2ALG = 2F (qn) ≥ 2F (q0) = 2F (xn) ≥ OPT.

21

Page 22: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

Algorithm 1 Assortment Algorithm for the Two Product Nonparametric Choice Model

x0 = ~0, x0 = ~1for i = 1, . . . , n do

ai = max(0, F (xi−1 + ei)− F (xi−1))bi = max(0, F (xi−1 − ei)− F (xi−1))pi = ai/(ai + bi) . If ai, bi = 0, set pi = 1.xi = xi−1 + pieixi = xi−1 − (1− pi)ei

end for

q0 = xn, S = ∅for i = 1, . . . , n do

if F (qi−1 + (1− pi)ei) ≥ F (qi−1 − piei) thenS = S ∪ {i}qi = qi + (1− pi)ei

elseqi = qi − piei

end ifend forreturn S

Therefore, we just need to focus on bounding F (xn).

We first present the linear programming relaxation for the problem that we will bound the

algorithm against. Let yi be a binary variable representing whether or not we offer product i and

zg be a binary variable representing whether or not customer of class g will purchase her second

choice product g2 given y. Then, we can find the optimal assortment to offer with the following

integer program:

maximize∑g∈G

λg [rg1yg1 + rg2zg]

s.t. yg1 + zg ≤ 1 ∀g ∈ G

zg ≤ yg2 ∀g ∈ G

y, z ∈ {0, 1}

Let (y∗, z∗) be an optimal solution to the LP-relaxation of the above IP and let OPTLP be the

optimal value. Note that since we are maximizing, we know zg = min(1− yg1 , yg2) for all g ∈ G.

We will compare Bi to the revenue of a fractional solution using the optimal LP values. Similar

to Poloczek et al, given a fractional y ∈ [0, 1]n we define

w(y) =∑g∈G

λgrg1yg1 + λgrg2 min(yg2 , 1− yg1).

Suppose that we have set probabilities p1, . . . , pi in the first stage of our algorithm. Let yi =

22

Page 23: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

(yi1, ..., yin) be a random variable where each component is independent and yij = 1 with probability

pj for all j ≤ i and yij = 1 with probability y∗j for all j > i. To give some intuition, yi acts like

our current probabilistic solution on 1, . . . , i and like the optimal LP solution on the remaining

variables. At the start, E[w(y0)] = w(y∗) = OPTLP, but by the end of the first stage of the

algorithm E[w(yn)] = F (xn). Therefore, we will look at bounding how E[w(yi)] changes.

Recall that Bi was the average expected revenues between two extremes for the remaining

probabilities where we either offer all products with index i or higher or we do not offer any of

these products. We will show that in fact the difference Bi − Bi−1 can be related to the expected

difference E[w(yi−1)− w(yi)].

Lemma 4.4. For i = 1, 2, . . . , n,

E[w(yi−1)− w(yi)] ≤ Bi −Bi−1.

Proof. Suppose that yii = 1. Then, E[w(yi−1) − w(yi)|yii = 1] is the difference in the expected

fractional revenue when we reduce yii from 1 to y∗i . Consider any customer class that has g1 = i. As

yii decreases, we know that fractional revenue decreases by at least λgri(1− y∗i ). However, we can

also increase the expected fractional revenue by at most λgrg2(1−y∗i )xi−1g2 . Note if g2 ∈ {1, . . . , i−1}

this is the exact increase in expected fractional revenue and if g2 > i then xi−1g2 = 1 and this is an

upper bound.

Now consider any customer class that g2 = i. Then by decreasing yii we decrease the fractional

revenue by at least λgrg2(1 − y∗i )(1 − xig1). All other customer classes will not contribute to the

difference. Overall,

E[w(yi−1)− w(yi)|yii = 1] ≤ (1− y∗i )

− ∑g:g1=i

λgri −∑g:g2=i

λgri(1− xi−1g1 ) +∑g:g1=i

λgrg2 xi−1g2

= (1− y∗i )bi.

Similarly, suppose that yii = 0. Then, E[w(yi−1)−w(yi)|yii = 0] is the difference in the expected

fractional revenue when we increase yii from 0 to y∗i . Consider any customer class that has g1 = i.

As yii increases, we know that fractional revenue increases by at most λgriy∗i . Furthermore we

decrease the fractional revenue by at least λgrg2y∗i x

ig2 . Consider any customer class that g2 = i.

Then by increasing yii we can increase the fractional revenue by at most λgrg2y∗i (1− xig2). Overall,

if the algorithm does not offer product i,

E[w(yi−1)− w(yi)|yii = 0] ≤ y∗i

∑g:g1=i

λgri +∑g:g2=i

λgri(1− xi−1g1 )−∑g:g1=i

λgrg2xi−1g2

= y∗i ai.

23

Page 24: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

We can now find the expected value in the difference.

E[w(yi−1)− w(yi)] = piE[w(yi−1)− w(yi)|yii = 1] + (1− pi)E[w(yi−1)− w(yi)|yii = 0]

≤ pi(1− y∗i )bi + (1− pi)y∗i ai.

Recall by Lemma 4.3 that ai + bi ≥ 0. If ai ≤ 0, then we know bi ≥ 0 and we set pi = 0. Thus,

E[w(yi−1)−w(yi)] ≤ 0 but Bi−Bi−1 = 12bi ≥ 0. The same holds if bi ≤ 0. Therefore, the last case

we have to worry about is when ai > 0 and bi > 0. In this case, pi = ai/(ai + bi) and

E[w(yi−1)− w(yi)] ≤ pi(1− y∗i )bi + (1− pi)y∗i ai

=ai

ai + bi(1− y∗i )bi +

biai + bi

y∗i ai

=aibiai + bi

≤ 1

2· a

2i + b2iai + bi

= Bi −Bi−1,

where the last inequality follows from the fact that for all a, b ∈ R, a2 + b2 ≥ 2ab.

Theorem 4.5. 2F (xn) ≥ OPTLP.

Proof. Summing up the result in Lemma 4.4 for i = 1, . . . , n,

E[w(y0)]− E[w(yn)] ≤ Bn −B0.

Recall that at the beginning of the algorithm, E[w(y0)] = OPTLP and at the end of the algorithm

E[w(yn)] = F (xn). On the other hand,

B0 =1

2[F (~0) + F (~1)] =

1

2

∑g∈G

λgrg1 ≥ 0

and

Bn =1

2[F (xn) + F (xn)] = F (xn).

Thus,

OPTLP − F (xn) ≤ F (xn),

which gives the result.

This shows that we can construct a 2-approximation algorithm for this problem that is deter-

ministic and runs in time linear to the input size. An additional 2-approximation algorithm that

uses LP-rounding is given in Appendix C.

24

Page 25: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

5 Computational Experiments

In this section, we present a series of computational experiments intended to validate the efficacy of

the algorithms that we present in the previous sections for the assortment problem under the Two

Step and Two Product Nonparametric choice models. For both the Two Step and the Two Product

Nonparametric model we show that the algorithms perform much better than their respective worst

case guarantees. In addition, we show that both algorithms can be implemented efficiently. All

results were run using Python 2.7.9 on a 64-bit Windows platform, on a 4 core 3.4 Ghz Intel i7

processor with 16 GB physical memory. We solved the LP-relaxations using the gurobipy package

in Python 2.7.9 with Gurobi 6.5

5.1 Two Step Experiments

For the Two Step model, we generated random instances varying both the number of prod-

ucts n and the probability of not making a substitution β0 = 1 −∑

j βj . We choose (n, β0) ∈

{7, 10, 25, 50, 100} × {0.01, 0.1, 0.5}, and for each combination of the two parameters we generated

100 instances where the revenues, αj values, and βj values were generated independently as uniform

[0, 1] variables. The α and β values were then normalized to 1 and 1− β0, respectively.

For our experiments, we compared three different methods:

1. Full FPTAS: The FPTAS as presented in Section 3.

2. Gurobi FPTAS: This approach is the same as the Full FPTAS except the knapsack problem

for each value of u is solved as an integer program using Gurobi. The intuition behind this

choice is that integer program solvers are often remarkably effective in solving knapsack

problems, despite the fact that knapsack problems are NP-hard.

3. Converted Two Product: In this approach, we convert the Two Step model to a corre-

sponding Two Product Nonparametric model as in Appendix A and solve using the algorithm

in Section 4. From here on, we refer to the algorithm in Section 4 as the linear greedy algo-

rithm.

For the Full FPTAS and Gurobi FPTAS, Table 1 gives the average run time along with the

minimum, average, and maximum approximation ratios for each type of instance with ε = 0.5 and

ε = 0.25. The approximation ratio for each case is the revenue returned by the algorithm divided by

the optimal LP-relaxation value, using the LP in Appendix C. The same results for the Converted

Two Product algorithm are given in Table 2.

25

Page 26: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

Table 1: Run times and approximation ratios (in comparison to the optimal LP value) for the twoFTPAS based algorithms under the Two Step choice model.

Full FPTAS Gurobi FPTAS

Avg Min Avg Max Avg Min Avg Maxn β0 Time (s) Approx Approx Approx Time (s) Approx Approx Approx

7 0.01 5.18E−2 0.849 0.973 1.000 3.48E−2 0.994 1.000 1.0007 0.1 5.59E−2 0.843 0.982 1.000 3.58E−2 0.987 1.000 1.0007 0.5 5.17E−2 0.824 0.992 1.000 3.58E−2 0.991 1.000 1.000

ε = 10 0.01 1.52E−1 0.833 0.975 1.000 5.42E−2 0.988 0.999 1.0000.5 10 0.1 1.56E−1 0.856 0.975 1.000 5.25E−2 0.987 0.999 1.000

10 0.5 1.65E−1 0.912 0.993 1.000 5.49E−2 0.993 1.000 1.00025 0.01 1.88E+0 0.878 0.959 1.000 1.00E−1 0.988 0.998 1.00025 0.1 1.82E+0 0.888 0.962 0.996 1.02E−1 0.990 0.998 1.00025 0.5 1.80E+0 0.943 0.986 1.000 9.87E−2 0.994 0.999 1.00050 0.01 1.13E+1 0.895 0.953 0.996 1.86E−1 0.993 0.998 1.00050 0.1 1.13E+1 0.898 0.954 0.991 1.86E−1 0.996 0.999 1.00050 0.5 1.16E+1 0.953 0.983 0.997 1.82E−1 0.997 0.999 1.000100 0.01 6.55E+1 0.896 0.944 0.980 3.34E−1 0.998 0.999 1.000100 0.1 6.18E+1 0.909 0.952 0.982 3.31E−1 0.997 0.999 1.000100 0.5 6.51E+1 0.960 0.979 0.992 3.47E−1 0.998 1.000 1.000

7 0.01 1.98E−1 0.832 0.976 1.000 7.11E−2 0.994 1.000 1.0007 0.1 2.14E−1 0.777 0.984 1.000 6.94E−2 0.999 1.000 1.0007 0.5 1.99E−1 0.824 0.993 1.000 6.76E−2 0.999 1.000 1.00010 0.01 5.80E−1 0.873 0.979 1.000 9.73E−2 0.994 1.000 1.00010 0.1 5.94E−1 0.896 0.981 1.000 9.96E−2 0.997 1.000 1.00010 0.5 6.32E−1 0.937 0.994 1.000 9.98E−2 0.994 1.000 1.000

ε = 25 0.01 7.22E+0 0.885 0.963 1.000 2.12E−1 0.993 0.999 1.0000.25 25 0.1 7.00E+0 0.904 0.966 1.000 2.07E−1 0.993 0.999 1.000

25 0.5 6.94E+0 0.945 0.986 1.000 2.07E−1 0.998 1.000 1.00050 0.01 4.36E+1 0.901 0.953 0.995 3.82E−1 0.994 0.999 1.00050 0.1 4.36E+1 0.901 0.956 0.993 3.86E−1 0.996 0.999 1.00050 0.5 4.48E+1 0.953 0.984 0.998 3.84E−1 0.998 1.000 1.000100 0.01 2.59E+2 0.904 0.946 0.972 7.12E−1 0.998 0.999 1.000100 0.1 2.47E+2 0.909 0.952 0.984 6.89E−1 0.998 1.000 1.000100 0.5 2.52E+2 0.963 0.979 0.994 7.23E−1 0.999 1.000 1.000

26

Page 27: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

Table 2: Run times and approximation ratios (in comparison to the optimal LP value) for the TwoProduct Converted algorithm under the Two Step choice model.

Converted Two Product

n β0 Avg Time (s) Min Approx Avg Approx Max Approx

7 0.01 1.21E−4 0.990 1.000 1.0007 0.1 1.25E−4 0.977 1.000 1.0007 0.5 1.22E−4 1.000 1.000 1.00010 0.01 2.28E−4 0.985 1.000 1.00010 0.1 2.26E−4 0.994 1.000 1.00010 0.5 2.24E−4 0.997 1.000 1.00025 0.01 1.22E−3 0.998 1.000 1.00025 0.1 1.22E−3 0.994 1.000 1.00025 0.5 1.22E−3 1.000 1.000 1.00050 0.01 4.77E−3 0.998 1.000 1.00050 0.1 4.78E−3 0.998 1.000 1.00050 0.5 4.77E−3 1.000 1.000 1.000100 0.01 1.90E−2 0.999 1.000 1.000100 0.1 1.89E−2 0.999 1.000 1.000100 0.5 1.90E−2 1.000 1.000 1.000

All of the algorithms perform significantly better than the theoretical guarantees. In particular,

the Two Product Converted algorithm and the Gurobi FPTAS algorithm never go below a 0.977

approximation ratio with the Two Product Converted algorithm just slightly beating out the Gurobi

FPTAS on most instances. The Full FPTAS fared slightly worse but still remained above a 0.8

approximation ratio even with ε = 0.5. The approximation ratios did increase slightly for most

instances for both FPTAS algorithms as we change ε from 0.5 to 0.25. While an increase is

expected, a slight decrease could occur for the Full FPTAS because of how the revenue gridding

changes. Overall, the difference in approximation ratios between Gurobi FPTAS and the Full

FPTAS demonstrate that gridding on u is quite valuable in finding the optimal solution. For all

algorithms, the number of products seemed to have little effect on the approximation ratios. On

the other hand, when β0 is small the optimal assortments tend to be small, in which case, a small

misjudgement on the product that should be added into the assortment results in significant revenue

losses so we would expect the worst-case approximation ratios to deteriorate as β0 gets smaller.

This is reflected in the approximation ratios.

Two Product Converted and Gurobi FPTAS were also much more efficient than Full FPTAS

in terms of run times. The Full FPTAS has the disadvantage that the run times do not increase

linearly in the number of products and in ε. In particular, for ε′ = c · ε, the run time is expected

to increase by a factor of 1/c2, which is indeed what we observe between ε = 0.5 and ε = 0.25.

The run times for Gurobi FPTAS increase slightly slower than linearly in the number of products.

Therefore, although the Full FPTAS starts off with roughly the same run time as Gurobi FPTAS

27

Page 28: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

Table 3: Values of n and p for the generated Erdos-Renyi graphs.

n p Values

7 0.25 0.375 0.5 0.7510 0.25 0.375 0.5 0.7525 0.125 0.25 0.375 0.550 0.125 0.25 0.375 0.5100 0.05 0.2 0.35 0.5200 0.05 0.2 0.35 0.5

for n = 7 it is 2 to 3 orders of magnitude slower for n = 100. Similarly, the Two Product Converted

run times increase quadratically in n and while it starts off 2 orders of magnitude faster than Gurobi

FPTAS for n = 7 it is only 1 order of magnitude faster for n = 100.

5.2 Two Product Nonparametric Experiments

We tested the Two Product Nonparametric linear greedy algorithm using random directed graphs

where a directed edge (i, j) represents a customer class such that g1 = i and g2 = j. The random

graphs were generated using the Erdos-Renyi model with the number of products (vertices) in the

set n ∈ {7, 10, 25, 50, 100, 200}. Given the number of vertices, an Erdos-Renyi graph is generated

by randomly adding every possible edge independently with some probability p, which we also

varied. It is known that for p > (1 + ε) ln(n)/n the resulting graph is connected almost surely. For

disconnected graphs, the problem decomposes by the products that make up each distinct connected

component. Therefore, for each value of n we chose 4 values of p between this connection threshold

and 0.5 in which case the expected number of edges is 0.5n(n− 1). For n = 7, 10 we also added in

p = 0.75 since the connection threshold was so high. The n and p values tested are given in Table 3.

For each pair (n, p) we generated 100 random graphs. The probability λg of each customer class

(edge) was generated uniformly at random and the revenue of each product (vertex) was generated

as uniform random variables in the range [0, 1].

Table 4 gives the average run time for the algorithm on each type of instance along with the

min, average, and max approximation ratios (the revenue returned by the algorithm divided by the

optimal LP-relaxation value).

The algorithm performs remarkably well with a minimum approximation ratio of 0.964 overall.

Interestingly, the algorithm performed the worst on the smallest instances with n = 7, 10. It also

seemed that the worst-case performance improved as n held steady and the number of customer

classes increased. Similar to our comment in the previous section, if the algorithm makes a mis-

judgement on small or sparse networks it can affect a greater proportion of the overall customer

classes and revenue. The strong behavior of the algorithm also shows that the optimal LP value is

28

Page 29: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

Table 4: Run times and approximation ratios (in comparison to the optimal LP value) for the lineargreedy algorithm. Here Avg |G| is the average number of customer types for the particular type ofinstance.

Greedy Algorithm

n p Avg |G| Avg Time (s) Min Approx Avg Approx Max Approx

7 0.25 11.01 3.90E−5 0.964 0.999 1.0007 0.375 15.68 4.73E−5 0.973 0.999 1.0007 0.5 21.36 5.92E−5 0.983 0.999 1.0007 0.75 31.25 7.75E−5 0.986 0.999 1.00010 0.25 22.35 6.75E−5 0.989 1.000 1.00010 0.375 33.48 8.76E−5 0.979 0.999 1.00010 0.5 44.42 1.12E−4 0.979 0.999 1.00010 0.75 67.48 1.58E−4 0.973 0.999 1.00025 0.125 75.65 1.80E−4 0.980 0.999 1.00025 0.25 149.17 3.26E−4 0.996 1.000 1.00025 0.375 223.41 6.73E−4 0.993 1.000 1.00025 0.5 301.6 6.10E−4 0.996 1.000 1.00050 0.125 302.28 6.50E−4 0.997 1.000 1.00050 0.25 614.56 1.728E−3 0.997 1.000 1.00050 0.375 921.76 2.29E−3 0.997 1.000 1.00050 0.5 1226.62 3.07E−3 0.998 1.000 1.000100 0.05 493.41 1.10E−3 0.995 0.999 1.000100 0.2 1983.95 4.13E−3 0.999 1.000 1.000100 0.35 3464.24 7.14E−3 0.999 1.000 1.000100 0.5 4944.63 1.03E−2 0.999 1.000 1.000200 0.05 1991.21 5.03E−3 0.998 1.000 1.000200 0.2 7951.93 1.50E−2 0.999 1.000 1.000200 0.35 13927.77 3.05E−2 0.999 1.000 1.000200 0.5 19886.6 3.77E−2 0.999 1.000 1.000

29

Page 30: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

not far from the optimal integer value. By inspection, we did see that the proportion of non-integral

variables went down as the instance grew larger. The average run time shows the algorithm was

efficient, with the longest runtime still being under a second, and grew roughly linearly in the

number of customer classes, as expected. Therefore, this algorithm is both practical to implement

and gives a good approximation ratio in practice.

6 Conclusions and Future Work

In this paper, we studied the assortment optimization problem under the Two Step and Two

Product Nonparametric choice models. We show that the assortment problem under the Two Step

model is NP-hard. Motivated by this results, we develop a FPTAS for this problem. For the

Two Product Nonparametric model, we show that unless P=NP, one cannot hope to develop a

FPTAS. We give a fast 2-approximation that relies on the fact that the expected revenue function

is submodular. Through a series of computational experiments, we show that the performance of

this algorithm far exceeds the theoretical guarantee.

There are many important directions for future research. One interesting extension of the Two

Step model would be to make the transition probabilities depend on the customer’s first choice

product as in Kok and Fisher (2007). If this is the case, our reparameterization does not work since

the critical component of our method is that we only need to know the probability that a customer

makes a transitions, and not from where they transition. Additionally, it would be interesting to

extend the Two Step to allow for more than two steps. A separate, yet equally important, direction

of future work could consider the cardinality constrained assortment problem under both choice

models. In this assortment problem, the retailer attempts to find the revenue maximizing set of

products to offer to customers when there is a limit on the total number of products that can be

offered. This limit is akin to a shelf space restriction.

30

Page 31: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

A Reduction of Two Step to Two Product Model

The following theorem shows the relationship between the Two Step and Two Product Nonpara-

metric choice model

Theorem A.1. Given a Two Step choice model, it is possible to construct a corresponding Two

Product Nonparametric choice model where the probability product i is purchased when assortment

S is offered is identical in both models for all S ⊆ N and i ∈ N .

Proof. Consider any product j ∈ N . A customer in the Two Step choice model arrives at product

j with probability αj . With probability 1 −∑

k 6=j βk, this customer will not consider any other

product. Therefore, we construct a customer type g with g1 = j and g2 = 0 and arrival probability

λg = αj(1 −∑

k 6=j βj). However, that same customer might transition to another product k 6= j

with probability βk. For this possible path, we construct a customer type g with g1 = j and g2 = k

and arrival probability αjβk. Note that under this construction,

∑g∈G

λg =∑j∈N

αj(1−∑k 6=j

βk) + αj∑k 6=j

βk

=∑j∈N

αj = 1.

Now consider any assortment S ⊆ N and i ∈ S. Under the Two Product Nonparametric choice

model we constructed,

Pri(S) =∑

g∈G:g1=iλg +

∑g∈G:g1 /∈S,g2=i

λg

= αi

(1−∑j 6=i

βj) +∑j 6=i

βj

+∑j /∈S

αjβi

= αi + (1−∑j∈S

αj)βi,

which is precisely the purchase probability under the Two Step choice model. The first term in

the second line corresponds to all constructed customer classes with g1 = i and the second term

corresponds to all customer classes with g2 = i and g1 /∈ S.

B Knapsack FPTAS

In the knapsack problem we are given a set of items N = {1, . . . , n}, each with weight wi and

value ri, and the goal is to choose a subset of the item S ⊆ N so that the total weight is less

than or equal to a given limit C and the total value is as large as possible. Let S∗ be the optimal

31

Page 32: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

set of items included in the knapsack and let R∗ be the value of these items. In this section, we

provide an FPTAS for knapsack problem for arbitrary weights w1, . . . , wn and values r1, . . . , rn. The

approach we present is given in a more general form in Feldman et al. (2015), where a FPTAS is

developed for the space constrained assortment problem under a special case of the nonparametric

choice model. Seeing that the authors also reduce the knapsack problem to this space constrained

assortment problem, the FPTAS provided in Feldman et al. (2015) generalizes to any knapsack

problem. The approach begins with an optimal dynamic programming formulation of the problem

which is intractable. We then show how to grid the state space to achieve the desired performance

guarantee.

Consider the following dynamic program, where the value functions Vj(r) represent the mini-

mum weight required to accrue a value of r from items j, . . . , 1:

Vj(r) = min{wj + Vj−1(r − rj), Vj−1(r)}, (8)

with base cases V0(r) = ∞ ∀ r > 0 and V0(r) = 0 ∀ r ≤ 0. The first case in the minimum of

the dynamic program given in (8) corresponds to adding item j to the knapsack. In this case,

the weight of the knapsack goes up by wj and we have r − rj value left to accrue from products

j−1, . . . , 1. In the second case, we do not add item j to the knapsack and so we must still accrue a

value of r from the items j − 1, . . . , 1. It is easy to see that if we could solve the dynamic program

given in (8) for all possible value of r, then we would have R∗ = argmaxr{Vn(r) : Vn(r) ≤ C} and

we could recover S∗ by unraveling the dynamic program beginning from Vn(R∗).

Unfortunately, there are an exponential number of possible values that we would need to consider

for the state r at each stage in order to solve the dynamic program given in (8) exactly. As a result,

we restrict the possible values the state variable r can take on to a set of exponentially spaced

grid points. Let rmin = mini ri and rmax = maxi ri, we know that we can restrict r to the interval

[rmin, nrmax]. To see this, note that if r < rmin, then adding any additional product will be

sufficient to achieve the target revenue, and thus rounding the current r value up to rmin does not

change the quality of the solution. Further, since R∗ ≤ nrmax we do not need to consider any values

of r above this upper bound on the optimal knapsack value. Assuming without loss of generality

that rmin < 1, we use the following grid:

Grid = {(1 + δ)l · rmin, l = 0, . . . , L},

where L = O([log(nrmax)−log(rmin)]/ log(1+δ)) = O([log(nrmax)−log(rmin)]/δ) and dxe represents

rounding up x to the nearest integer. Again, for ease of notation, we assume that Grid is implicitly

a function of δ, rmin and rmax. Consider the following dynamic program, designed to approximate

32

Page 33: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

(8): for product j and r ∈ Grid, we define

Vj(r) = min{wj + Vj−1(dr − rje), Vj−1(r)}, (9)

where dxe represents rounding up x to the nearest grid point. We have base cases V0(r) =∞ ∀ r > 0

and V0(r) = 0 ∀ r ≤ 0. We use R = argmaxr{Vn(r) : Vn(r) ≤ C} as our approximation to R∗.

We begin our analysis by defining r(j) =∑

i∈S∗:i≤j ri. Note that r(n) = R∗. The following

proposition is the key piece to proving the desired performance guarantee of our gridded dynamic

program:

Proposition B.1. For any δ > 0, we have that

Vj(dr(j)− δjR∗e) ≤ Vj(r(j)),

where dxe represents rounding up x to the nearest grid point.

Proof. We prove the proposition by induction on the items. The base case when j = 0 is trivial.

Assume the proposition holds for item j − 1, and we prove the result for item j. We consider two

cases.

Case 1: item j is not in S∗. If this is the case, then we have Vj(r(j)) = Vj−1(r(j)) = Vj−1(r(j−1)).

With regards to the gridded dynamic program, we know that

Vj(dr(j)− δjR∗e) ≤ Vj−1(dr(j)− δjR∗e)

≤ Vj−1(dr(j − 1)− δ(j − 1)R∗e)

≤ Vj−1(r(j − 1))

= Vj(r(j)),

as desired. Where the first inequality follows by noting that r(j) = r(j − 1) and the second to last

inequality follows by the induction hypothesis.

Case 2: item j is in S∗. In this case, we have Vj(r(j)) = wj + Vj−1(r(j) − rj). For the gridded

dynamic program we have

Vj(dr(j)− δjR∗e) ≤ wj + Vj−1(ddr(j)− δjR∗e − rje)

≤ wj + Vj−1(d(1 + δ)r(j)− δjR∗ − rje)

≤ wj + Vj−1(dr(j)− rj − δ(j − 1)R∗e)

≤ wj + Vj−1(r(j)− rj)

= Vj(r(j)),

as desired. The second inequality follows from the gridding scheme and the second to last inequality

follows from the induction hypothesis.

33

Page 34: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

We are now ready to state the final theorem:

Theorem B.2. For any δ > 0, we have R ≥ R∗(1− δn).

Proof. Proposition B.1, gives us that Vn(dR∗(1 − δn)e) ≤ Vn(R∗) ≤ C by construction. Thus we

know that R = maxr{Vn(r) : Vn(r) ≤ C} ≥ R∗(1− δn).

In order to achieve an approximation of R∗(1− ε) ∀ ε > 0, we must choose δ = ε/n which gives

a total runtime of O(n2(log(nrmax) − log(rmin))/ε) which is polynomial in 1/ε. To complete our

analysis, we show how to actually recover the knapsack from the value functions of the gridded

dynamic program that achieves the desired performance guarantee. Since the knapsack problems

that we consider are parameterized by u and δ, we refer to this algorithm as Approx(u, δ).

Algorithm 2 Approx(u, δ)

xu = ~0, r = RCompute V with Gridfor i = n, . . . , 1 do

o = wi + Vj−1(dr − rie)n = Vj−1(r)if o ≥ n then

xui = 1r = dr − rie

end ifend forreturn xu

C Another 2-Approximation Algorithm

Recall the integer programming formulation of the assortment problem under the Two Product

Nonparametric choice model: Let yi be a binary variable representing whether or not we offer

product i and zg be a binary variable representing whether or not customer of class g will purchase

their second preferred product g2 given y. Then, we can find the optimal assortment to offer with

the following integer program:

maximize∑g∈G

λg [rg1yg1 + rg2zg]

s.t. yg1 + zg ≤ 1 ∀g ∈ G

zg ≤ yg2 ∀g ∈ G

y, z ∈ {0, 1}n

34

Page 35: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

Let (y∗, z∗) be an optimal solution to the LP-relaxation of the above IP and let OPTLP be the

optimal value. Note that the optimal basic feasible solution satisfies z∗g = min(1 − y∗g1 , y∗g2). In

the following lemma, we show that the optimal basic feasible solutions for this LP turn out to be

half-integral.

Lemma C.1. Let (y∗, z∗) be any optimal basic solution to the LP. Then this solution is half-integral

in y∗, i.e. y∗i ∈ {0, 12 , 1} for all i = 1, . . . , n, which implies that z∗ is also half-integral.

Proof. Assume by way of contradiction that (y∗, z∗) is not half-integral and let I+ = {i : 0 < y∗i <12}

and I− = {i : 12 < y∗i < 1}. Assume that I1 ∪ I2 6= ∅. We will show that (y∗, z∗) is not a basic

solution. First, for any ε > 0, let

yi =

y∗i + ε i ∈ I+,y∗i − ε i ∈ I−,y∗i otherwise.

y′i =

y∗i − ε i ∈ I+,y∗i + ε i ∈ I−,y∗i otherwise.

Furthermore, for all g ∈ G,

zg =

z∗g + ε g2 ∈ I+ and y∗g2 ≤ 1− y∗g1 ,z∗g − ε g2 ∈ I− and y∗g2 ≤ 1− y∗g1 ,z∗g − ε g1 ∈ I+ and y∗g2 > 1− y∗g1 ,z∗g + ε g1 ∈ I− and y∗g2 > 1− y∗g1 ,z∗g otherwise.

z′g =

z∗g − ε g2 ∈ I+ and y∗g2 ≤ 1− y∗g1 ,z∗g + ε g2 ∈ I− and y∗g2 ≤ 1− y∗g1 ,z∗g + ε g1 ∈ I+ and y∗g2 > 1− y∗g1 ,z∗g − ε g1 ∈ I− and y∗g2 > 1− y∗g1 ,xg otherwise.

Clearly, y∗ = 12 y + 1

2y′ and z∗ = 1

2 z + 12z′. Therefore, we just need to show both (y, z) and (y′, z′)

are feasible solutions to the LP for small enough ε to show that (y, z) cannot be a basic feasible

solution.

We start with (y, z). Note that by setting ε small enough we maintain 0 ≤ y ≤ 1 and 0 ≤ z ≤ 1.

It remains to show that zg ≤ min(1− yg1 , yg2). Note that if yg2 < 1− yg1 then zg is adjusted in the

same direction as yg2 and for small enough ε will remain feasible. Similarly, if yg2 > 1 − yg1 then

zg is adjusted in the opposite direction as yg1 and for small enough ε will remain feasible. Lastly,

if yg2 = 1− yg1 then we know yg1 and yg2 must be adjusted in opposite directions and we can use

the same arguments as above. Thus, for small enough ε, (y, z) is feasible. A similar argument can

be made for (y′, z′).

Consider the following LP-Rounding algorithm: Solve the LP-relaxation of the IP above and

offer each product i independently with probability y∗i .

Theorem C.2. The LP-Rounding algorithm is a 2-approximation algorithm in expectation. Fur-

thermore, this algorithm can be derandomized to be a 2-approximation algorithm deterministically.

35

Page 36: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

Proof. In the table below we give the LP revenue and expected revenue of the rounding algorithm

for each customer class g.

y∗g1 y∗g2 z∗g LP revenue Alg revenue in expectation

0 0 0 0 00 1

212

12λgrg2

12λgrg2

0 1 1 λgrg2 λgrg212 0 0 1

2λgrg212λgrg2

12

12

12

12λgrg1 + 1

2λgrg212λgrg1 + 1

4λgrg212 1 1

212λgrg1 + 1

2λgrg212λgrg1 + 1

2λgrg21 0 0 λgrg1 λgrg11 1

2 0 λgrg1 λgrg11 1 0 λgrg1 λgrg1

From here we can see that the only loss comes from customer classes in which y∗g1 = y∗g2 = 12 .

Let G1/2 be all such customer classes. Then, the expected revenue for this algorithm is

E [ALG] =∑g∈G

λg[rg1y

∗g1 + rg2(1− y∗g1)y∗g2

]= OPTLP −

1

4

∑g∈G1/2

λgrg2

≥ OPTLP −1

2

∑g∈G1/2

λgrg2z∗g

≥ OPTLP −1

2OPTLP,

where the last inequality follows from the fact that∑

g∈G1/2 λgrg2z∗g is only a portion of the LP

objective function value. Overall this shows

2E [ALG] ≥ OPTLP ≥ OPT

or that the algorithm is a 2-approximation algorithm in expectation. Since all variables are rounded

independently we can use the method of conditional expectations (used in the second stage of the

greedy algorithm in Section 4) to derandomize the algorithm and maintain the same approximation

ratio.

C.1 Computational Experiments

Table 5 gives the average run time for the algorithm on each type of instance along with the

minimum, average, and maximum approximation ratios (the revenue returned by the algorithm

divided by the optimal LP-relaxation value). The LP rounding algorithm performed remarkably

well with an average approximation ratio very close to 1, when rounded to three decimal places.

36

Page 37: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

Table 5: Run Times and Approximation Ratios (in comparison to the optimal LP value) for theLP-Rounding Algorithm.

LP-Rounding Algorithm

n p Avg |G| Avg Time (s) Min Approx Avg Approx Max Approx

7 0.25 11.01 2.192E−3 0.978 1.000 1.0007 0.375 15.68 2.735E−3 0.994 1.000 1.0007 0.5 21.36 3.446E−3 0.998 1.000 1.0007 0.75 31.25 4.776E−3 1.000 1.000 1.00010 0.25 22.35 3.926E−3 1.000 1.000 1.00010 0.375 33.48 5.538E−3 0.971 1.000 1.00010 0.5 44.42 7.400E−3 0.998 1.000 1.00010 0.75 67.48 1.146E−2 0.987 1.000 1.00025 0.125 75.65 1.401E−2 0.994 1.000 1.00025 0.25 149.17 3.538E−2 0.998 1.000 1.00025 0.375 223.41 7.337E−2 0.999 1.000 1.00025 0.5 301.6 1.080E−1 0.995 1.000 1.00050 0.125 302.28 1.128E−1 0.999 1.000 1.00050 0.25 614.56 3.897E−1 0.997 1.000 1.00050 0.375 921.76 8.079E−1 1.000 1.000 1.00050 0.5 1226.62 1.373E+0 0.997 1.000 1.000100 0.05 493.41 2.815E−1 1.000 1.000 1.000100 0.2 1983.95 3.677E+0 1.000 1.000 1.000100 0.35 3464.24 1.086E+1 1.000 1.000 1.000100 0.5 4944.63 2.229E+1 1.000 1.000 1.000200 0.05 1991.21 3.617E+0 1.000 1.000 1.000200 0.2 7951.93 5.712E+1 1.000 1.000 1.000200 0.35 13927.77 1.954E+2 1.000 1.000 1.000200 0.5 19886.6 3.947E+2 1.000 1.000 1.000

37

Page 38: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

References

Aouad, A., Farias, V. and Levi, R. (2015), Assortment optimization under consider-then-rank

choice models. Unpublished Manuscript.

Aouad, A., Farias, V., Levi, R. and Segev, D. (2015), The approximability of assortment optimiza-

tion under ranking preferences. Unpublished Manuscript.

Blanchet, J., Gallego, G. and Goyal, V. (2013), A Markov chain approximation to choice modeling.

Unpublished Manuscript.

Buchbinder, N. and Feldman, M. (2015), Deterministic algorithms for submodular maximization

problems. Unpublished Manuscript.

Buchbinder, N., Feldman, M., Naor, J. and Schwartz, R. (2015), ‘A tight linear (1/2)-approximation

for unconstrained submodular maximization’, SIAM Journal on Computing 44(5), 1384–1402.

Crompton, J. L. and Ankomah, P. K. (1993), ‘Choice set propositions in destination decisions’,

Annals of Tourism Research 20(3), 461–476.

Davis, J., Gallego, G. and Topaloglu, H. (2013), Assortment planning under the multinomial logit

model with totally unimodular constraint structures. Unpublished Manuscript.

Davis, J. M., Gallego, G. and Topaloglu, H. (2014), ‘Assortment optimization under variants of the

nested logit model’, Operations Research 62(2), 250–273.

Desir, A. and Goyal, V. (2013), Near-optimal for capacity constrained assortment optimization.

Unpublished Manuscript.

Feige, U., Mirrokni, V. S. and Vondrak, J. (2011), ‘Maximizing non-monotone submodular func-

tions’, SIAM Journal on Computing 40(4), 1133–1153.

Feldman, J., Paul, A. and Davis, J. (2015), Revenue management under a nonparametric ranking-

based choice model. Unpublished Manuscript.

Feldman, J. and Topaloglu, H. (2015a), ‘Capacity constraints across nests in assortment optimiza-

tion under the nested logit model’, Operations Research 63(4), 812–822.

Feldman, J. and Topaloglu, H. (2015b), Revenue management under the Markov chain choice model.

Unpublished Manuscript.

38

Page 39: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

Gallego, G. and Topaloglu, H. (2014), ‘Constrained assortment optimization for the nested logit

model’, Management Science 60(10), 2583–2601.

Goyal, V. and Desir, A. (2015), Capacity constrained assortment optimization under the Markov

chain based choice model. Unpublished Manuscript.

Honhon, D., Xiajun, P. and Sreelata, J. (2012), ‘Optimal algorithms for assortment selection un-

der ranking-based consumer choice models’, Manufacturing and Service Operations Management

14(2), 279–289.

Huang, N. and Borodin, A. (2014), Bounds on double-sided myopic algorithms for unconstrained

submodular maximization, in ‘Proceedings of 25th International Symposium on Algorithms and

Computation (ISAAC)’.

Jeuland, A. (1979), ‘Branch choice inertia as one aspect of the notion of brand loyalty’, Management

Science 25(7), 671–682.

Kok, A. G. (2003), Management of Product Variety in Retail Operations., PhD thesis, University

of Pennsylvania.

Kok, A. G. and Fisher, M. L. (2007), ‘Demand estimation and assortment optimization under

substitution: Methodology and application’, Operations Research 55(6), 1001–1021.

Lapersonne, E., Laurent, G. and Le Goff, J. (1995), ‘Consideration sets of size one: An empirical

investigation of automobile purchases’, International Journal of Research in Marketing 49(1), 55–

66.

Li, G. and Rusmevichientong, P. (2014), ‘A greedy algorithm for the two-level nested logit model’,

Operations Research Letters 42(5), 319–324.

Li, G., Rusmevichientong, P. and Topaloglu, H. (2015), ‘The d-level nested logit model: Assortment

and price optimization problems’, Operations Research 63(2), 325–342.

Mahajan, S. and van Ryzin, G. (2001a), ‘Inventory competition under dynamic consumer choice’,

Operations Research 49(5), 646–657.

Mahajan, S. and van Ryzin, G. (2001b), ‘Stocking retail assortment under dynamic consumer

substitution’, Operations Research 49, 334–351.

Mendez-Dıaz, I., Miranda-Bront, J., Vulcano, G. and Zabala, P. (2010), ‘A branch-and-cut algo-

rithm for the latent-class logit assortment problem’, Discrete Applied Mathematics 36, 383–390.

39

Page 40: Assortment Optimization for Choosy · PDF fileAssortment Optimization for Choosy Customers Alice Paul School of Operations Research and Information Engineering, Cornell University,

Poloczek, M., Schnitger, G., Williamson, D. P. and van Zuylen, A. (2016), Greedy algorithms for the

maximum satisfiability problem: Simple algorithms and inapproximability bounds. Unpublished

Manuscript.

Rusmevichientong, P. and Jagabathula, S. (2015), A nonparametric joint assortment and price

choice model. Unpublished Manuscript.

Rusmevichientong, P., Shen, Z. M. and Shmoys, D. B. (2010), ‘Dynamic assortment optimization

with a multinomial logit choice model and capacity constraint’, Operations Research 58(6), 1666–

1680.

Rusmevichientong, P., Shmoys, D. B., Tong, C. and Topaloglu, H. (2014), ‘Assortment optimization

under the multinomial logit model with random choice parameters’, Production and Operations

Management 23(11), 2023–2039.

Talluri, K. and van Ryzin, G. (2004), ‘Revenue management under a general discrete choice model

of consumer behavior’, Management Science 50(1), 15–33.

Wang, R. (2012), ‘Capacitated assortment and price optimization under the multinomial logit

model’, Operations Research Letters 40(6), 492–497.

Wang, R. (2013), ‘Assortment management under the generalized attraction model with a capacity

constraint’, Journal of Revenue and Pricing Management 12(3), 254–270.

Williamson, D. P. and Shmoys, D. B. (2010), The Design of Approximation Algorithms, Cambridge

University Press.

40