a ptas for capacitated sum-of-ratios optimization
TRANSCRIPT
A PTAS for Capacitated Sum-of-Ratios Optimization
Paat Rusmevichientong∗ Zuo-Jun Max Shen† David B. Shmoys‡
August 29, 2008
Abstract
Motivated by an application in assortment planning under the nested logit choice model, we consider the
sum-of-ratios optimization problem with a capacity constraint. When the number of product groups is fixed,
we develop a polynomial-time approximation scheme and demonstrate how the scheme can be applied to the
assortment planning problem.
Keywords: Sum-of-Ratios, Polynomial-time Approximation Scheme, and Assortment Planning.
1. Motivation and Introduction
Assortment planning is an important problem facing many retailers and has been studied extensively in the
supply chain and operation management literature. Given a limited shelf capacity or inventory investment
constraint, the retailer must determine the subset of products to offer that maximizes the total profit. The
literature on assortment planning is broad and covers a range of operational issues. Kok et al. (2006)
provide a comprehensive review of the literature in this area. The stream of research most closely related
to our work is on demand modeling and optimization algorithms. Earlier work in assortment planning
assumes that the demand of each product is independent. Recent work focuses on more complex models of
customer choice behavior, allowing for more intricate substitution patterns among products, and providing
more realistic models of demand. One of the most commonly used choice models in economics, marketing,
and operations management is the multinomial logit (MNL) model (see, for example, McFadden (1974),
Ben-Akiva and Lerman (1985), Anderson et al. (1992), Mahajan and van Ryzin (1998), and the references
therein). Pioneering work in assortment optimization with complex choice models include van Ryzin and
Mahajan (1999), Chen and Hausman (2001), and Mahajan and van Ryzin (2001).
Although the MNL model is analytically tractable, it exhibits the Independence of Irrelevant Alternative
(IIA) property. Under this property, the likelihood of choosing between any two alternatives is independent
of the assortment containing them. As discussed in McFadden (1974), McFadden (1981), Ben-Akiva and
Lerman (1985), and many other work, this property is inconsistent with the actual customer choice behavior
in many settings. Despite this shortcoming, the MNL model remains one of the most useful and popular choice
∗[email protected], School of ORIE, Cornell University, Ithaca, NY 14853†[email protected], Dept. of IEOR, University of California, Berkeley, CA 94720-1777‡[email protected], School of ORIE and Dept. of Computer Science, Cornell University, Ithaca, NY 14853
1
models partly because the corresponding assortment optimization problem admits an efficient polynomial-
time algorithm. Liu and van Ryzin (2008) and Gallego et al. (2004) provide an algorithm for the unconstrained
optimization problem, which is later extended to the capacitated setting by Rusmevichientong et al. (2008).
The nested logit choice model introduced by McFadden (1981) is one of the most popular extensions of
the MNL model that alleviates the IIA property. Under this model, the products are partitioned into groups.
Although products within the same group still exhibit the IIA property, the likelihood of choosing products
from two different groups depends on the assortment containing them, providing a potentially more realistic
model of customer choice behavior. Unfortunately, the assortment optimization problem under the nested
logit choice model appears to be intractable. In this paper, we establish NP-completeness and demonstrate
how the problem can be formulated as an integer programming problem involving a sum of ratios and a
capacity constraint. As indicated in Schaible and Shi (2003), there is very few work on approximation
algorithms for this type of integer programming problems. To our knowledge, this paper provides the first
polynomial-time approximation scheme (PTAS) for this class of problems.
2. Problem Formulation
We are given a set of N products indexed by 1, . . . N . For each product `, let π` and c` denote its marginal
profit (per-unit revenue minus marginal cost) and fixed cost, respectively. The fixed cost of each product
might correspond to the cost of introducing the product into the store. We denote the option of no purchase
by 0 and set π0 = c0 = 0. Given an inventory investment or capacity constraint C, we wish to find the subset
of products that gives the maximum expected profit.
We will model the customer demand using the nested logit choice model. Under this model, the set of
products is partitioned into G disjoint groups denoted by H1, H2, . . . ,HG where ∪Gg=1Hg = {1, . . . , N} and
Hi ∩ Hj = ∅ for all i 6= j. Let H0 = {0} denote the set consisting of the option of no purchase. Each
customer assigns a mean utility η` ∈ R to product `, and as a convention, we set η0 = 0. For each assortment
S ⊆ {1, 2, . . . , N}, given that a set of products S is offered to the customer, the probability P` (S) that the
customer will choose product ` is given by:
P`(S) =
0 if ` /∈ {0} ∪ S
eη`/τg(∑j∈Hg∩S e
ηj/τg) ×
(∑j∈Hg∩S e
ηj/τg)τg
1 +∑Gk=1
(∑j∈Hk∩S e
ηj/τk)τk if ` ∈ ({0} ∪ S) ∩Hg for some g
where for each g = 1, . . . , G, the parameter 0 ≤ τg ≤ 1 denotes the “dissimilarity factor” associated with the
group Hg. As shown in Daly and Zachary (1979), McFadden (1981), and Borch-Supan (1990), the requirement
that 0 ≤ τg ≤ 1 for all g ensures that the nested logit choice model is consistent with utility maximization.
Note that since H0 = {0}, the parameter τ0 is not needed and P0(S) = 1/(
1 +∑Gg=1
(∑j∈Hg∩S e
ηj/τg)τg)
.
Also, the classical MNL model is a special case of the nested logit model with Hg = {g} for all g.
Our goal is to choose a subset of products that maximizes the total profit. Our optimization problem,
which we refer to as the Assortment problem, can be stated as follows:
(Assortment) Y ∗ = max
{∑`∈S
π`P`(S)∣∣∣ S ⊆ {1, 2, . . . , N} and
∑`∈S
c` ≤ C
}(1)
2
The following lemma establishes the computational complexity of the above optimization problem.
Lemma 2.1. Assortment is NP-complete.
Proof. Consider the special case where each product belong to its own group, that is, Hg = {g} for all g.
Then, for any assortment S,∑`∈S π`P`(S) =
P`∈S π`e
η`
1+P`∈S e
η`. This is thus an instance of the fractional knapsack
problem, which is NP-complete (see, for example, Hashizume et al., 1987).
3. Connection to Sum-of-Ratios Optimization
We will now describe how an approximation algorithm for a sum-of-ratios optimization problem can be used
to obtained an approximation for the Assortment problem. For each g = 1, . . . , G, let αg = 1− τg and for
each ` ∈ Hg, let v` = eη`/τg . Define a function J∗ : R+ → R+ by: for each λ ∈ R+,
J∗(λ) = max
G∑g=1
∑`∈Sg (π` − λ) v`(∑
`∈Sg v`
)αg ∣∣∣ Sg ⊆ Hg ∀g andG∑g=1
∑`∈Sg
c` ≤ C
.
Using a technique pioneered by Megiddo (1979), we give an alternative characterization of the optimal profit
Y ∗ associated with the Assortment problem.
Lemma 3.1 (Parametric Representation). J∗(·) is a continuous, convex, non-negative, and non-increasing
function such that Y ∗ = max {λ : J∗(λ) ≥ λ}.
Proof. For each g = 1, . . . , G, let the functions Mg : 2{1,2,...,N} → R+ and Wg : 2{1,2,...,N} → R+ be defined
by: if S ∩Hg 6= ∅,
Mg(S) =
∑`∈Hg∩S
eη`/τg
τg
and Wg(S) =∑
`∈Hg∩S
(π` ×
eη`/τg∑j∈Hg∩S e
ηj/τg
),
and we define Wg(S) = Mg(S) = 0 if S ∩Hg = ∅. It follows from the definition of P`(S) that∑`∈S
π`P`(S) =G∑g=1
∑`∈Hg∩S
π`P`(S)
=G∑g=1
(∑
f∈Hg∩S eηf/τg
)τg1 +
∑Gk=1
(∑f∈Hk∩S e
ηf/τk
)τk × ∑`∈Hg∩S
(π` ×
eη`/τg∑j∈Hg∩S e
ηj/τg
)=
∑Gg=1Wg(S)Mg(S)
1 +∑Gg=1Mg(S)
.
This result enables us to express the optimal profit Y ∗ as follows:
Y ∗ = max
{λ : ∃ S ⊆ {1, . . . , N} with
∑`∈S
c` ≤ C such that
∑Gg=1Wg(S)Mg(S)
1 +∑Gg=1Mg(S)
≥ λ
}
= max
{λ : ∃ S ⊆ {1, . . . , N} with
∑`∈S
c` ≤ C such thatG∑g=1
Mg(S) (Wg(S)− λ) ≥ λ
}
= max
λ : ∃ S1 ⊆ H1, . . . , SG ⊆ HG withG∑g=1
∑`∈Sg
c` ≤ C andG∑g=1
Mg(Sg) (Wg(Sg)− λ) ≥ λ
,
= max {λ : J∗(λ) ≥ λ} ,
3
where the final equality follows from the fact that for each g,
G∑g=1
Mg(Sg) (Wg(Sg)− λ) =G∑g=1
∑`∈Sg (π` − λ) · eη`/τg(∑
`∈Sg eη`/τg
)1−τg =G∑g=1
∑`∈Sg (π` − λ) v`(∑
`∈Sg v`
)αg = J∗(λ) .
We note that other properties of the functions J∗(λ) follow immediately from the fact that it is a maximum
of a collection of linear functions in λ.
Lemma 3.1 shows that if we can evaluate the function J∗(·) for all λ, we can then apply a standard
bisection search technique to identify the optimal profit Y ∗. For each λ ∈ R+, computing J∗(λ) is equivalent
to solving an optimization problem involving a sum of ratios with a capacity constraint. Although the general
problem of optimizing the sum of ratios is NP-complete, the following lemma shows that if we have a uniformly
ε-accurate approximation to the function J∗(·), we can obtain an ε-approximation to Y ∗.
Lemma 3.2 (Approximation Preservation). Suppose there exists 0 < ε < 1 and a non-increasing function
J : R+ → R+ such that for each λ ∈ R+, (1 − ε)J∗(λ) ≤ J(λ) ≤ J∗(λ) . If Y = sup{λ : J(λ) ≥ λ
}, then
(1− ε)Y ∗ ≤ Y ≤ Y ∗.
Proof. By definition of Y and J(·), we have that for all δ > 0,(Y − δ
)≤ J
(Y − δ
)≤ J∗
(Y − δ
). It follows
from Lemma 3.1 that Y − δ ≤ Y ∗ for all δ > 0, and thus, Y ≤ Y ∗. We will now show that Y ≥ (1 − ε)Y ∗.The result is trivially true if Y = Y ∗. So, we will focus on the case where Y < Y ∗. Using the definition of
Y and the fact that J is non-increasing, for all 0 ≤ δ ≤ Y ∗ − Y , J(Y ∗) ≤ J(Y + δ
)≤(Y + δ
). Since this
is true for all 0 < δ ≤ Y ∗ − Y , it must be the case that J(Y ∗) ≤ Y . Using the fact that Y ∗ = J∗(Y ∗) by
Lemma 3.1, we have(Y ∗ − Y
)= J∗(Y ∗)− Y = J∗(Y ∗)− J(Y ∗) + J(Y ∗)− Y ≤ εJ∗(Y ∗) = εY ∗,
and thus, (1− ε)Y ∗ ≤ Y , which is the desired result.
Lemmas 3.1 and 3.2 suggest the following approach for identifying the optimal profit Y ∗ in the Assort-
ment problem. Since we cannot compute the function J∗(·) explicitly, we will perform a bisection search
on the function J(·), which is our ε-approximation to the true function J∗(·). Note that we do not have to
maintain the values of J(λ) for all λ. Instead, we only need to compute J(λ) for the specific choice of λ
that is determined during the bisection search algorithm. Let Y = sup{λ : J(λ) ≥ λ
}. After O (log(1/ε))
iterations, the bisection search will terminate at a point Yε such that∣∣∣Yε − Y ∣∣∣ ≤ εY ≤ εY ∗. It follows from
Lemma 3.2 that∣∣∣Yε − Y ∗∣∣∣ ≤ ∣∣∣Yε − Y ∣∣∣+
∣∣∣Y − Y ∗∣∣∣ ≤ 2εY ∗, giving us the desired approximation.
The above result shows that it suffices to consider the following class of combinatorial optimization
problems involving a sum of ratios with a capacity constraint. In our setting, we have a ground set indexed
by {1, . . . , N} and a partition H1, . . . ,HG where ∪G`=1H` = {1, . . . , N} and H` ∩ Hj = ∅ for all ` 6= j. We
are interested in the following combinatorial optimization problem, which we will refer to as the Sum Of
Ratios (SOR) problem:
(SOR) Z∗ = max
f(S1, . . . , SG) :=G∑g=1
∑`∈Sg u`(∑`∈Sg v`
)αg∣∣∣∣∣ Sg ⊆ Hg ∀g and
G∑g=1
∑`∈Sg
c` ≤ C
(2)
4
where we will assume that C ∈ Z+ and αg ∈ R+ for all g ∈ {1, 2, . . . , G}, and for all ` ∈ {1, 2, . . . , N},c` ∈ Z+ ∪ {0}, u` ∈ Z+ ∪ {0}, and v` ∈ Z+ ∪ {0}. We note that when v` = 0 for all `, the SOR problem
reduces to the classical knapsack problem. Note that by setting v` = eη`/τg and u` = (π` − λ) v` for all
` ∈ Hg, the above SOR problem is the same as the optimization problem associated with J∗(λ) that is
derived from our assortment optimization problem.
4. A PTAS for SOR when G is Fixed
In this section, we describe a PTAS for the SOR problem when the number of groups G is fixed. Let
(A∗1, A∗2, . . . , A
∗G) denote the optimal solution associated with Z∗ with A∗g ⊆ Hg for each g ∈ {1, 2, . . . , G}
and∑Gg=1
∑`∈A∗g
c` ≤ C. The main result of this paper is stated in the following theorem.
Theorem 4.1 (PTAS). For each δ > 0 and k ∈ Z+ with k ≥ 2, there exists an approximation algorithm
Approx(k, δ) for the SOR problem that will generate an assortment (A1(k, δ), A2(k, δ), . . . , AG(k, δ)) such
that Ag(k, δ) ⊆ Hg for each g ∈ {1, 2, . . . , G},∑Gg=1
∑`∈Ag(k,δ) c` ≤ C, and
Z∗ − f (A1(k, δ), A2(k, δ), . . . , AG(k, δ)) ≤ k
k − 2
(δ +
2k
)Z∗ .
Moreover, the Approx(k, δ) algorithm has a running time of
O(G× LP×
{Nk+1 × log(N · v∗)× logC
/log2(1 + δ)
}G),
where v∗ = max` v` and LP denote the running time for solving a linear program with N variables and 2
constraints whose coefficients are bounded above by max {max` c`,max` u`, Nv∗, C}.
For the rest of this section, we establish a series of auxiliary results (Lemmas 4.2 - 4.5) that are needed
for the proof of Theorem 4.1, which appears in Section 4.1. Let us introduce the following notation. For each
(r1, r2, . . . , rG) ∈ RG+, let ZIP (r1, r2, . . . , rG) be defined by
ZIP (r1, r2, . . . , rG) = max
G∑g=1
∑`∈Hg u`x`
rαgg
∣∣∣∣ N∑`=1
c`x` ≤ C,∑`∈Hg
v`x` ≤ rg ∀g, and x` ∈ {0, 1} ∀`
(3)
As the first step toward the development of the PTAS, the following lemma provides a characterization of
the optimal solution Z∗. The proof follows from the definition of ZIP and Z∗, and we omit the details.
Lemma 4.2 (IP Representation). Z∗ = max{ZIP (r1, r2, . . . , rG)
∣∣∣ (r1, r2, . . . , rG) ∈ RG+}.
Motivated by Lemma 4.2, we will consider the following collection of linear programs, which will provide
an approximation to ZIP (r1, r2, . . . , rG). For each g ∈ {1, 2, . . . , G}, (rg, sg) ∈ R2+, and Bg ⊆ Hg, let
ZLP,g(rg, sg, Bg) be defined by
ZLP,g(rg, sg, Bg) = max∑`∈Hg
u`x` (4)
s.t.∑`∈Hg
v`x` ≤ rg and∑`∈Hg
c`x` ≤ sg
∀`, 0 ≤ x` ≤ 1 and x` =
1, if ` ∈ Bg,0, if ` /∈ Bg and u` > mins∈Bg us
5
and let xLP,g(rg, sg, Bg) ∈ [0, 1]|Hg| denote the optimal solution to the optimization problems associated with
ZLP,g(rg, sg, Bg). As a convention, we set the objective value to −∞ if the problem is infeasible. Our choice
of the linear program is inspired by Frieze and Clarke (1984) who develop a PTAS for a multi-dimensional
knapsack problem. The next lemma establishes an integrality gap of the linear program.
Lemma 4.3 (Integrality Gap). For each g ∈ {1, 2, . . . , G} with Bg ⊆ Hg and for each (rg, sg) ∈ R2+,
∑`∈Hg
u`
{xLP,g` (rg, sg, Bg)−
⌊xLP,g` (rg, sg, Bg)
⌋}≤ 2 ZLP,g(rg, sg, Bg)
|Bg|.
Proof. By our construction, if xLP,g` (rg, sg, Bg) is strictly between 0 and 1, then it must be the case that u` ≤mins∈Bg us. Moreover, it follows from the definition of the linear program associated with ZLP,g(rg, sg, Bg)
that their extreme points can have at most two fractional coordinates. Therefore,∑`∈Hg
u`
{xLP,g` (rg, sg, Bg)−
⌊xLP,g` (rg, sg, Bg)
⌋}≤ 2 min{u` : ` ∈ Bg} ≤
2 ZLP,g(rg, sg, Bg)|Bg|
.
When the setBg is large, the above lemma shows that the contribution to the objective value ZLP,g(rg, sg, Bg)
from the fractional coordinates is minimal. This result suggests that for the group g where the optimal so-
lution A∗g ⊆ Hg is large, the rounded solution of the linear programming relaxation should serve as a good
approximation to the true optimal solution. Later in this section, we will use this insight in designing our
approximation algorithm. The next key ingredient for developing our PTAS is a bound on the sensitivity of
the linear program as the parameters rg and sg vary.
Lemma 4.4 (LP Sensitivity). For each g ∈ {1, . . . , G} and Bg ⊆ Hg and for every 0 ≤ rg ≤ r′g and
0 ≤ sg ≤ s′g, 1 ≤ ZLP,g(r′g,s′g,Bg)ZLP,g(rg,sg,Bg)
≤ max{r′grg,s′gsg
}.
Proof. The feasible region of the dual of the linear program associated with ZLP,g(rg, sg, Bg) is independent
of rg and sg. It follows from the strong duality theorem that there exist Eg(Bg) ⊆ R3+ such that for each
(rg, sg) ∈ R2+, ZLP,g(rg, sg, Bg) = min(α,β,γ)∈Eg(Bg) {αrg + βsg + γ} , and the desired result follows.
Lemma 4.4 suggests that, instead of considering all values of rg ∈ R+, we can restrict our attention to a
“discretized domain” with negligible loss in performance. For each δ > 0, let Dom(δ) be defined by:
Dom(δ) = {0} ∪{
(1 + δ)` : ` ∈ {0} ∪ Z+
}.
Motivated by the results of Lemmas 4.2, 4.3, and 4.4, we will consider the following approximation to Z∗.
For each subset L ⊆ {1, 2, . . . , G} and for each assortment A = (A1, . . . , AG) with Ag ⊆ Hg for all g, let
V (L,A, δ) be defined by
V (L,A, δ) = max∑g∈L
ZLP,g(rg, sg, Ag)rαgg
+∑
g∈{1,...,G}\L
∑`∈Ag u`(∑`∈Ag v`
)αg (5)
s.t. {rg, sg} ⊆ Dom(δ) ∀g ∈ L, and∑g∈L
sg +∑
g∈{1,...,G}\L
∑`∈Ag
c` ≤ C
6
We note that the only variables in the optimization problem associated with V (L,A, δ) correspond to
(rg, sg : g ∈ L). For g /∈ L, the contribution to V (L,A, δ) is determined by Ag. As a convention, we set
the value to −∞ if the problem is infeasible.
For each L ⊆ {1, 2, . . . , G} and A = (A1, . . . , AG), we can compute V (L,A, δ) in polynomial time because
it suffices to restrict rg ≤ N ·max` v` and sg ≤ C. Thus, there are only a total of O(
log(N ·max` v`)log(1+δ) × logC
log(1+δ)
)combinations of (rg, sg) ∈ Dom(δ)×Dom(δ) to consider. Also, for each combination, we need to solve a linear
program associated with ZLP,g(rg, sg, Ag), which can be done in polynomial time. The following lemma
provides upper and lower bounds associated with the optimal value Z∗ in terms of V (·, ·, ·). Recall that
(A∗1, A∗2, . . . , A
∗G) denotes the optimal solution to the SOR problem given in Equation (2).
Lemma 4.5 (Bounds on Z∗). For each L ⊆ {1, 2, . . . , G} and A = (A1, . . . , Ag) such that Ag ⊆ A∗g for all
g, if min`∈Ag u` ≥ max`∈A∗g\Ag u` for each g ∈ L and Ag = A∗g for each g /∈ L, then for all δ > 0,(1− 2
min{|Ag| : g ∈ L}
)V (L,A, δ) ≤ Z∗ ≤ (1 + δ)V (L,A, δ) .
The proof of Lemma 4.5 is straightforward, but somewhat lengthy. To facilitate our exposition, the proof
is deferred until Section 4.2. The results of Lemma 4.5, however, offer two key insights. First, the loss in
performance from restricting our attention to a discretized domain Dom(δ) is negligible. Second, we can
divide the optimal solution (A∗1, A∗2, . . . , A
∗G) into two categories. The first category corresponds to those
groups whose A∗g has large cardinality (denote by the set L), while the second category corresponds to groups
whose corresponding optimal solution has smaller cardinality. From the above lemma, we know that for
groups g ∈ L, our approximation based on linear programs should be close to the true optimal value. On
the other hand, for the group g whose A∗g has a small cardinality, we should be able to use enumeration
to identify the optimal solution. This is exactly the key intuition underlying our proposed approximation
scheme, which we refer to as Approx(k, δ). In this case, the parameter k controls the cardinality of subsets
that we will explore. And the parameter δ calibrates the granularity of the domain Dom(δ). The description
of the algorithm is given below.
Approx(k, δ):
Input: Parameters k ∈ Z+ and δ > 0
Description: Solve the following optimization problem by enumeration:
max V (L,A, δ)
s.t. L ⊆ {1, 2, . . . , G} and A = (A1, A2, . . . , AG) where Ag ⊆ Hg for all g,
and |Ag| ≤ k for g /∈ L and |Ag| = k for all g ∈ L
where V (L,A) is defined in Equation (5). Let L ⊆ {1, . . . , G} and A =(A1, . . . , Ag
)denote the opti-
mal solution to the above optimization problem. Note that by our construction, |Ag| = k for all g ∈ L.
Let r(L, A) =(rg(L, A) ∈ Dom(δ) : g ∈ L
)and s(L, A) =
(sg(L, A) ∈ Dom(δ) : g ∈ L
)denote the optimal
solution associated with V (L, A, δ). Also, for each g ∈ L, let
xLP,g(L, A
):= xLP,g
(rg(L, A
), sg(L, A), Ag
)∈ [0, 1]|Hg|
7
denote the optimal solution of the linear program associated with ZLP,g(rg(L, A
), sg(L, A), Ag
).
Output: The output of the Approx(k, δ) algorithm is the assortment A(k, δ) = (A1(k, δ), . . . , AG(k, δ))
defined by: for each g ∈ {1, . . . , G},
Ag(k, δ) =
Ag, if g /∈ L,{` ∈ Hg : xLP,g`
(L, A
)= 1}, if g ∈ L,
and let Z(k, δ) = f (A(k, δ)) denote the corresponding profit.
4.1 Proof of the Main Result (Theorem 4.1)
Proof. We will first show that the output A(k, δ) satisfies the capacity constraint. By definition,G∑g=1
∑`∈Ag(k,δ)
c` ≤∑g∈L
∑`∈Hg
c`xLP,g`
(L, A
)+∑g/∈L
∑`∈Ag
c` ≤∑g∈L
sg(L, A) +∑g/∈L
∑`∈Ag
c` ≤ C ,
where the second inequality follows from the fact that xLP,g(L, A
)is an optimal solution of the linear program
associated with ZLP,g(rg(L, A
), sg(L, A), Ag
). The final inequality follows from the definition of V (L, A, δ).
Thus, A(k, δ) is a valid assortment. We will establish the approximation guarantee by showing that
Z∗ − Z(k, δ) ≤ k
k − 2·(δ +
2k
)Z∗.
Recall that A∗1, . . . , A∗G denote the optimal solution associated with Z∗. Let Small =
{g :∣∣A∗g∣∣ ≤ k} and
Large ={g :∣∣A∗g∣∣ > k
}. For each g ∈ Large, let T ∗g ⊆ A∗g consists of the k elements in A∗g with the highest
values of u`’s. Note that for each g ∈ Large, min`∈T∗g u` ≥ max`∈A∗g\T∗g u`. Also, let T = (T1, . . . , TG) be
defined by: for each g ∈ {1, . . . , G},
Tg =
T ∗g , if g ∈ Large,
A∗g, if g ∈ Small
Note that Tg ⊆ A∗g for all g and T satisfies the hypothesis of Lemma 4.5. Therefore,
Z∗ − Z(k, δ) = Z∗ − f (A(k, δ)) ≤ (1 + δ)V (Large, T , δ)− f (A(k, δ))
We will now establish a lower bound on f (A(k, δ)). By definition of A(k, δ) and the fact that xLP,g(L, A
)is an optimal solution of the linear program associated with ZLP,g
(rg(L, A
), sg(L, A
), Ag
), we have
f (A(k, δ))
=∑g∈L
∑`∈Hg u`
⌊xLP,g`
(L, A
)⌋(∑`∈Hg v`
⌊xLP,g`
(L, A
)⌋)αg +∑g/∈L
∑`∈Ag u`(∑`∈Ag v`
)αg≥
∑g∈L
∑`∈Hg u`
⌊xLP,g`
(L, A
)⌋(rg(L, A
))αg +∑g/∈L
∑`∈Ag u`(∑`∈Ag v`
)αg= −
∑g∈L
∑`∈Hg u`
{xLP,g` (L, A)−
⌊xLP,g`
(L, A
)⌋}(rg(L, A
))αg +∑g∈L
∑`∈Hg u`x
LP,g`
(L, A
)(rg(L, A
))αg +∑g/∈L
∑`∈Ag u`(∑`∈Ag v`
)αg≥ −
∑g∈L
2|Ag|
ZLP,g(rg(L, A), sg(L, A), Ag)(rg(L, A
))αg +∑g∈L
ZLP,g(rg(L, A), sg(L, A), Ag)(rg(L, A
))αg +∑g/∈L
∑`∈Ag u`(∑`∈Ag v`
)αg ,8
where the last inequality follows from Lemma 4.3. Our construction ofApprox(k, δ) ensures that |Ag| = k
for all g ∈ L. Therefore,
f (A(k, δ))
≥ −2k
∑g∈L
ZLP,g(rg(L, A), sg(L, A), Ag)(rg(L, A
))αg +∑g∈L
ZLP,g(rg(L, A), sg(L, A), Ag)(rg(L, A
))αg +∑g/∈L
∑`∈Ag u`(∑`∈Ag v`
)αg=
(1− 2
k
)∑g∈L
ZLP,g(rg(L, A), sg(L, A), Ag)(rg(L, A
))αg +∑g/∈L
∑`∈Ag u`(∑`∈Ag v`
)αg≥
(1− 2
k
)V(L, A, δ
)≥(
1− 2k
)V (Large, T , δ) ,
where the final inequality follows form the definition of V (L, A, δ) and the fact that |Tg| ≤ k for all g /∈ Large
and |Tg| = k for all g ∈ Large. Since Z∗ − Z(k, δ) ≤ (1 + δ)V (Large, T , δ)− f (A(k, δ)), we have that
Z∗ − Z(k, δ) ≤(δ +
2k
)V (Large, T , δ) ≤ k
k − 2
(δ +
2k
)Z∗,
where the final inequality follows from the lower bound in Lemma 4.5 and the fact that |Tg| = k for all
g ∈ Large.
It remains to establish the running time of the Approx(k, δ) algorithm. We need to solve an optimization
associated with V (L,A, δ) for each L ⊆ {1, 2, . . . , G} and A = (A1, A2, . . . , AG) such that Ag ⊆ Hg and
|Ag| ≤ k for all g. This represents a total of O(2G ×NGk
)= O
(NG(k+1)
)optimization problems. Let
v∗ = max` v`. Each V (L,A, δ) can be determined by enumerating (rg, sg) ∈ Dom(δ)× Dom(δ) for all g ∈ L.
It suffices to restrict rg to be at most Nv∗ and sg to be at most C. For each pair (rg, sg), we need solve
a linear program associated with ZLP,g(rg, sg, Ag), which has at most N variables and 2 constraints and
the coefficients are are bounded above by max {max` c`,max` u`, Nv∗, C}. Let LP denote an upper bond
on the complexity of solving these linear programs. Since we have at most G such linear program for each
combination (rg, sg : g ∈ L), computing V (L,A, δ) requires a total of O(G× LP×
(log(N ·v∗)log(1+δ) ×
logClog(1+δ)
)G)evaluations. Thus, the total computation time for Approx(k, δ) algorithm is of order
O
(G× LP×NG(k+1) ×
(log (N · v∗)log(1 + δ)
× logClog(1 + δ)
)G)= O
(G× LP×
(Nk+1 × log(N · v∗)× logC
log2(1 + δ)
)G).
4.2 Proof of Lemma 4.5
Proof. Let A = (A1, . . . , AG) with Ag ⊆ A∗g for all g and L ⊆ {1, . . . , G} be given, along with δ > 0. Also,
suppose that min`∈Ag u` ≥ max`∈A∗g\Ag u` for each g ∈ L and Ag = A∗g for each g /∈ L.
We will first establish the upper bound. For each g ∈ L, let r∗g =∑`∈A∗g
v` and s∗g =∑`∈A∗g
c`. Define
rg(δ) ∈ Dom(δ) and sg(δ) ∈ Dom(δ) as follow:
rg(δ) = max{r ∈ Dom(δ) : r ≤ r∗g
}and sg(δ) = max
{s ∈ Dom(δ) : s ≤ s∗g
}.
By definition, we have that rg(δ) ≤∑`∈A∗g
v` < (1 + δ)rg(δ) and sg(δ) ≤∑`∈A∗g
c` < (1 + δ)sg(δ). Moreover,
for each g ∈ L, since Ag ⊆ A∗g and min`∈Ag u` ≥ max`∈A∗g\Ag u`, it follows from our definition that A∗g is a
9
feasible solution for the linear program associated with ZLP,g ((1 + δ)rg(δ), (1 + δ)sg(δ), Ag), which implies
that∑`∈A∗g
u` ≤ ZLP,g ((1 + δ)rg(δ), (1 + δ)sg(δ), Ag). It then follows from the definition that∑`∈A∗g
u`
ZLP,g(rg(δ), sg(δ), Ag)≤ ZLP,g((1 + δ)rg(δ), (1 + δ)sg(δ), Ag)
ZLP,g(rg(δ), sg(δ), Ag)≤ 1 + δ ,
where the last inequality follows from Lemma 4.4. The above result implies that
Z∗ =∑g∈L
(∑`∈A∗g
u`
)(∑
`∈A∗gv`
)αg +∑g/∈L
(∑`∈A∗g
u`
)(∑
`∈A∗gv`
)αg≤ (1 + δ)
∑g∈L
ZLP,g(rg(δ), sg(δ), Ag)(rg(δ))αg
+∑g/∈L
(∑`∈A∗g
u`
)(∑
`∈A∗gv`
)αg ≤ (1 + δ)V (L,A, δ),
where the last inequality follows because, by definition of sg(δ) and the fact that Ag = A∗g for all g /∈ L,∑g∈L
sg(δ) ≤∑g∈L
∑`∈A∗g
c` ≤ C −∑g/∈L
∑`∈A∗g
c` = C −∑g/∈L
∑`∈Ag
c` .
Therefore, (rg(δ), sg(δ) : g ∈ L) is a feasible solution to the optimization problem associated with V (L,A, δ),giving us the desired upper bound.
We will now proceed to establish a lower bound. Suppose that
V (L,A, δ) =∑g∈L
ZLP (rg, sg, Ag)(rg)
αg +∑g/∈L
(∑`∈Ag u`
)(∑
`∈Ag v`
)αgfor some (rg, sg : g ∈ L) such that rg ∈ Dom(δ) and sg ∈ Dom(δ) for all g and
∑g∈L sg ≤ C−
∑g∈{1,...,G}\L
∑`∈A∗g
c`.
For each g ∈ L, let xLP (rg, sg, Ag) ∈ [0, 1]|Hg| denote the optimal solution of the linear program associated
with ZLP,g (rg, sg, Ag).
It follows from Lemma 4.2 that Z∗ = ZIP (r∗1 , . . . , r∗G) for some (r∗1 , . . . , r
∗G) ∈ RG+. It is easy to verify
that∑`∈A∗g
v` = r∗g for each g ∈ {1, 2, . . . , G}. Define a vector (r′1, r′2, . . . , r
′G) ∈ RG+ and an assortment
A′ = (A′1, A′2, . . . , A
′G) as follows: for each g ∈ {1, 2, . . . , G},
r′g =
r∗g , if g ∈ {1, . . . , G} \ Lrg, if g ∈ L
and A′g =
A∗g, if {1, . . . , G} \ L{` : xLP,g` (rg, sg, Ag) = 1
}, if g ∈ L
By our definition of these linear programs (see Equation (4)), observe that for each g ∈ L,∑`∈A′g
v` =∑`∈Hg
v`
⌊xLP,g` (rg, sg, Ag)
⌋≤ rg,
and ∑g∈L
∑`∈A′g
c` =∑g∈L
∑`∈Hg
c`
⌊xLP,g` (rg, sg, Ag)
⌋≤∑g∈L
sg ≤ C −∑
g∈{1,...,G}\L
∑`∈A∗g
c` .
The above inequalities imply that (A′1, A′2, . . . , A
′G) is a feasible solution to the binary integer program asso-
ciated with ZIP (r′1, r′2, . . . , r
′G) (see Equation (3)). Therefore, it follows from Lemma 4.2 that
Z∗ = ZIP (r∗1 , . . . , r∗G) ≥ ZIP (r′1, r
′2, . . . , r
′G) ≥
G∑g=1
∑`∈A′g
u`(r′g)αg .
10
Since r′g = r∗g =∑`∈A∗g
v` and A′g = A∗g for all g ∈ {1, . . . , G} \ L, we have that
∑g∈L
∑`∈A∗g
u`(∑`∈A∗g
v`
)αg ≥∑g∈L
∑`∈A′g
u`(r′g)αg =
∑g∈L
∑`∈Hg u`
⌊xLP,g` (rg, sg, Ag)
⌋(rg)
αg
Finally, putting everything together and using Lemma 4.3, we have that
V (L,A, δ)− Z∗ =∑g∈L
ZLP,g (rg, sg, Ag)(rg)
αg −∑g∈L
∑`∈A∗g
u`(∑`∈A∗g
v`
)αg≤
∑g∈L
ZLP,g (rg, sg, Ag)(rg)
αg −∑g∈L
∑`∈Hg u`
⌊xLP,g` (rg, sg, Ag)
⌋(rg)
αg
=∑g∈L
∑`∈Hg u`
{xLP,g` (rg, sg, Ag)−
⌊xLP,g` (rg, sg, Ag)
⌋}(rg)
αg
≤∑g∈L
2|Ag|
· ZLP,g(rg, sg, Ag)
(rg)αg
≤ 2min{|Ag| : g ∈ L}
∑g∈L
ZLP,g(rg, sg, Ag)(rg)
αg ≤ 2min{|Ag| : g ∈ L}
V (L,A, δ) ,
which is the desired result.
Acknowledgement
The first author would like to thank Mike Todd for insightful and stimulating discussions on the structure of
the linear programs associated with this problem.
References
Anderson, S., A. de Palma, and J. F. Thisse. 1992. Discrete choice theory of product differentiation. MIT
Press.
Ben-Akiva, M., and S. Lerman. 1985. Discrete choice analysis: Theory and application to travel demand.
MIT Press.
Borch-Supan, A. 1990. On the Compatibility of Nested Logit models with Utility Maximization. Journal of
Econometrics 43 (3): 373–388.
Chen, K. D., and W. H. Hausman. 2001. Technical Note - Mathematical Properties of the Optimal Product
Line Selection Problem Using Choice-Based Conjoint Analysis. Management Science 46 (2): 327–332.
Daly, A., and S. Zachary. 1979. Improved Multiple Choice Models. In Identifying and Measuring the Deter-
minants of Mode Choice, ed. D. Hensher and Q. Dalvi, 335–357. London: Teakfield.
Frieze, A. M., and M. R. B. Clarke. 1984. Approximation algorithms for the m-dimensional 0-1 knapsack
problem: Worst-case and probabilistic analyses. European Journal of Operational Research 15 (1): 100–109.
11
Gallego, G., G. Iyengar, R. Phillips, and A. Dubey. 2004. Managing Flexible Products on a Network. Working
Paper.
Hashizume, S., M. Fukushima, N. Katoh, and T. Ibaraki. 1987. Approximation Algorithms for Combinatorial
Fractional Programming Problem. Mathematical Programming 37 (3): 255–267.
Kok, A. G., M. Fisher, and R. Vaidyanathan. 2006. Assortment planning: Review of literature and industry
practic. In Retail Supply Chain Management Management, ed. N. Agrawal and S. A. Smith. Kluwer
Publishers.
Liu, Q., and G. J. van Ryzin. 2008. On the Choice-Based Linear Programming Model for Network Revenue
Management. Manufacturing & Service Operation Management 10 (2): 288–310.
Mahajan, S., and G. J. van Ryzin. 1998. Retail inventories and consumer choice. In Quantitative Models
for Supply Chain Management, ed. S. Tayur, R. Ganeshan, and M. Magazine, 491–551: Kluwer Academic
Publishers.
Mahajan, S., and G. J. van Ryzin. 2001. Stocking Retail Assortments under Dynamic Substitution. Operations
Research 49 (3): 334–351.
McFadden, D. 1974. Conditional Logit Analysis of Qualitative Choice Behavior. In Frontiers in Econometrics,
105–142: Academic Press.
McFadden, D. 1981. Econometric models of probabilistic choice. In Structural Analysis of Discrete Data:
MIT Press.
Megiddo, N. 1979. Combinatorial Optimization with Rational Objective Functions. Mathematics of Opera-
tions Research 4 (4): 414–424.
Rusmevichientong, P., Z.-J. Shen, and D. B. Shmoys. 2008. Dynamic Assortment Optimization with a
Multinomial Logit Choice Model and Capacity Constraint. Working Paper.
Schaible, S., and J. Shi. 2003. Fractional programming - the sum of ratios case. Optimization Methods and
Software 18 (2): 219–229.
van Ryzin, G. J., and S. Mahajan. 1999. On the Relationship Between Inventory Costs and Variety Benefits
in Retail Assortments. Management Science 45 (11): 1496–1509.
12