An Exact Method for Assortment Optimization under the Nested Logit Model
ESSEC RESEARCH CENTER, Working Paper 2001
39 Pages Posted: 14 Apr 2021
Date Written: March 30, 2021
Abstract
We study the problem of finding an optimal assortment of products maximizing the expected revenue, in which customer preferences are modeled using a Nested Logit choice model. This problem is known to be polynomially solvable in a specific case and NP-hard otherwise, with only approximation algorithms existing in the literature. We provide an exact general method that embeds a tailored Branch-and-Bound algorithm into a fractional programming framework. Contrary to the existing literature, in which assumptions are imposed on either the structure of nests or the combination and characteristics of products, no assumptions on the input data are imposed. Although our approach is not polynomial in the input size, it can solve the most general problem setting for large-size instances. We show that the fractional programming scheme’s parameterized subproblem, a highly non-linear binary optimization problem, is decomposable by nests, which is the primary advantage of the approach. To solve the subproblem for each nest, we propose a two-stage approach. In the first stage, we fix a large set of variables based on the single-nest subproblem’s newly-derived structural properties. This can significantly reduce the problem size. In the second stage, we design a tailored Branch-and-Bound algorithm with problem-specific upper bounds. Numerical results show that the approach is able to solve assortment instances with five nests and with up to 5,000 products per nest. The most challenging instances for our approach are those with a mix of nests’ dissimilarity parameters, where some of them are smaller than one and others are greater than one. Keywords: combinatorial optimization, revenue management, assortment optimization, fractional programming, nested logit.
Keywords: combinatorial optimization, revenue management, assortment optimization, fractional programming, nested logit
Suggested Citation: Suggested Citation