This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Robust Price Optimization of Multiple Products under Interval Uncertainties

Mahdi Hamzeei111[email protected]        Alvin Lim222[email protected], corresponding author        Jiefeng Xu333[email protected], principal corresponding author Precima, a NielsenIQ Company
200 West Jackson, Blvd., Chicago, IL 60606
Abstract

In this paper, we solve the multiple product price optimization problem under interval uncertainties of the price sensitivity parameters in the demand function. The objective of the price optimization problem is to maximize the overall revenue of the firm where the decision variables are the prices of the products supplied by the firm. We propose an approach that yields optimal solutions under different variations of the estimated price sensitivity parameters. We adopt a robust optimization approach by building a data-driven uncertainty set for the parameters, and then construct a deterministic counterpart for the robust optimization model. The numerical results show that two objectives are fulfilled: the method reflects the uncertainty embedded in parameter estimations, and also an interval is obtained for optimal prices. We also conducted a simulation study to which we compared the results of our approach. The comparisons show that although robust optimization is deemed to be conservative, the results of the proposed approach show little loss compared to those from the simulation.

1 Introduction

In today’s marketplace, price is considered as a key driver for optimizing revenue as it significantly affects the demand on products. Thus, the price optimization problem has long been studied as a significant decision-making problem for companies. There are numerous books, e.g., Phillips [23], Talluri and van Ryzin [27] and Özer and Phillips [22], that provide more comprehensive reviews on various price optimization models.

In this paper, we present a data-driven robust optimization (RO) based approach for the multi-product price optimization problem (MPPO) for a food supplier. The objective of the problem is to maximize the revenue of selling the products supplied by the firm while the decision variables are the prices of these products. We assume that for each product, a response function describes the demand for the product that depends on the price of the product itself as well as on the corresponding prices of its complementary and substitute products. The parameters of the demand function, which reflect the consumers’ demand sensitivity to prices are typically estimated through various statistical approaches with associated confidence intervals. In practice, the price optimization problem is solved by assuming that the mid-points of the confidence intervals as the point estimators of the parameters to compute an approximation of the demands and the associated revenues at various prices. However, the solution obtained by this approximate problem may not reflect well the uncertainty involved in the parameter estimates.

In most of the existing studies, the demand functions with price variables are built with parameters whose values are obtained either from a priori knowledge or from exact estimates using existing data. Nevertheless, in practice the estimates of these parameters may take significantly different values in different circumstances, i.e., different customers may have different sensitivities to price, or customers may have different price reactions at different periods of the year. By neglecting such uncertainties, the demand functions may result in potentially inaccurate or even incorrect demand estimates at various prices. As suggested by a few researchers, e.g., Nahmias [21], Simchi-Levi et. al. [25] and Sheffi [24], many point estimates used in modern operations management decision models are wrong or meaningless. Instead, they recommend that the point estimates be replaced by their corresponding ranges to handle uncertainties.

Although in the field of revenue management, most conventional approaches aim to maximize the expected value of the revenue (e.g. Agrawal and Seshadri [1]), the risk-neutrality of the expected value may not well capture risk preferences of decision makers in many applications. Therefore, Levin et. al. [17], among the others, proposed the use of value-at-risk constraints to handle uncertainty in a more risk-averse fashion. However, one needs to estimate a probability distribution for the uncertain value and this often becomes a challenging task in practice. Furthermore, these parameters with probability information impose additional complexities to the underlying optimization models.

Our goal is to propose an approach to deal with the uncertainty involved in the estimated parameters of the demand functions. Our RO approach replaces point estimates by interval forecasts and requires no specific probability distribution. Instead, we choose a hyperplane uncertainty set based on constraining the deviation of uncertainty parameters from the nominal values. As an additional benefit, our RO approach addresses the risk-averse tendencies of decision makers.

To the best of our knowledge, the idea of RO was first introduced by Soyster [26]. Since then, especially with the advent of efficient algorithms to solve optimization problems, the field has attracted much more attention, and expanded significantly over the last few decades. RO addresses optimization problems with uncertainty in which the uncertainty model is not stochastic, but rather deterministic and set-based. For example, in 1995, Mulvey et. al. [20] developed a robust optimization approach to solve large-scale systems for a set of decision-making problems. The paper introduces a general framework for achieving a solution that is robust in terms of both feasibility and optimality with respect to all realizations of uncertain data. It also presents several applications solved using this approach.

The literature on computationally tractable RO models is rich. For instance, linear programming with ellipsoidal uncertainty sets has been addressed in [3], [4], [5], [14] and [15]. In such a case, the optimization problem will correspond to a set of conic quadratic programming optimization problems. Alternatively, RO models with polyhedral uncertainty sets which can be formulated with linear/integer variables are also well-studied (see [4, 10, 11] for examples). For a thorough review of RO, we refer the interested readers to [7].

One of the most crucial steps in applying RO approaches is to construct an uncertainty set such that it contains all, or almost surely all, possible variations of uncertain data. Bound constraints and ellipsoidal uncertainty sets have been commonly used in many treatments [9]. However, these approaches are often ad-hoc, with emphases on sets that preserve computational tractability. Bertsimas and Brown [6] and Bertsimas et. al. [8] have proposed methods to construct polyhedral uncertainty sets using statistical hypothesis tests.

Previously, RO has been applied to several variations of the price optimization problem. Thiele [28] applied an RO approach to the pricing problem of a single product over a finite time horizon with a capacity limit. The uncertainty in the paper is the demand of the product which is assumed to be a function of price. The problem considered is different from the multiple products price optimization problem in our paper. In another paper, Thiele [29] proposed an RO approach for a problem with multiple products where a capacitated resource constraint is enforced, and the uncertainty is on the demand of the products. In contrast to the uncertainty set in both papers, our paper directly addresses the uncertainty on the sensitivity to the underlying prices in the demand functions which auguments the uncertainty in the demand of the products.

In addition, Tien and Jaillet [18] studied an interesting pricing problem with general extreme value (GEV) choice models for customers. They assumed that the parameters of the choice model lie in an uncertainty set. They first consider an unconstrained pricing problem, then present an alternative version, and analyze the pricing problem with over-expected-revenue-penalties. For the Multinomial Logit (MNL) demand function and a rectangular uncertainty set, the RO problem can be converted to a deterministic one that can be solved efficiently.

The rest of our paper is organized as follows. In Section 2, we explain the multi-product price optimization model. The underlying uncertainty as well as the approach we use to handle the uncertainty are explained in Section 3. We then present our numerical experiments in Section 4. Finally, we conclude the paper with several findings and point out some potential future research directions in Section 5.

2 The Price Optimization Model

In this section, we first formulate the deterministic case of the multi-product price optimization problem which is modeled as a nonconvex quadratic problem with bilinear terms. We then present a relaxation of the problem into a linear program.

2.1 The Deterministic MPPO Model

For our MPPO, we assume a linear price-response function as suggested by Phillips [23]:

d(p)=α+βpd(p)=\alpha+\beta p (2.1)

where α>0\alpha>0 and β<0\beta<0 are the respective intercept and slope of the linear price-response function d(p)d(p) which represents the sales volume as a function of price. The satiating price PP, defined as the maximum allowed price at which demand drops to zero, is given by P=α/βP=-\alpha/\beta. Phillips [23] points out that the elasticity of the linear price-response function is -βp/(α+βp)\beta p/(\alpha+\beta p) which ranges from 0 at p=0p=0 and approaches infinity as pp approaches PP.

In reality, it is well known that the demand of a product is often influenced by not only the price of itself, but also the prices of its complementary and substitute products. Therefore we extend the linear function (2.1) to incorporate the prices of complementary and substitute products. Let II represent the set of product indexes. The extended demand function for product ii can be expressed by introducing additional price variables along with complementary/substitute products:

di(p)=αi+βipi+jCiγijpjd_{i}(p)=\alpha_{i}+\beta_{i}p_{i}+\sum_{j\in C_{i}}{\gamma_{ij}p_{j}} (2.2)

where pjp_{j} is the price of the complementary/substitute product jj, γij\gamma_{ij} represents the corresponding cross-effect of product jj on own product ii, and CiC_{i} is the set of associated complementary/substitute products for product ii.

The MPPO is to maximize the total revenue subject to a set of constraints:

maxpiIpi(αi+βipi+jCiγijpj)s.t.Apb,lpu,\begin{array}[]{rl}\max\limits_{p}&\sum\limits_{i\in I}{p_{i}\cdot(\alpha_{i}+\beta_{i}p_{i}+\sum\limits_{j\in C_{i}}{\gamma_{ij}p_{j}})\vspace{1mm}}\\ \mathop{\rm s.t.}&Ap\leq b,\vspace{1mm}\\ &l\leq p\leq u,\end{array} (2.3)

where p=(p1,p2,,pn)np=(p_{1},p_{2},\ldots,p_{n})\in\mathbb{R}^{n} (hence n=|I|n=|I|) , Am×nA\in\mathbb{R}^{m\times n}, bmb\in\mathbb{R}^{m}, and l,u+nl,u\in\mathbb{R}_{+}^{n} are finite. The constraints in (2.3) defined by matrix AA and vector bb represent business rules in practice.

We assume that the above problem is well-defined and feasible. We also assume that for iIi\in I, βi<0\beta_{i}<0, so the demand of a product decreases when its price increases, and γij<0\gamma_{ij}<0 for any complementary product jCij\in C_{i} and γij>0\gamma_{ij}>0 for any substitute product jCij\in C_{i}.

Thus, the objective function

f(p;β)=iI(αipi+βipi2+jCiγijpipj),f(p;\beta)=\sum_{i\in I}{\left(\alpha_{i}p_{i}+\beta_{i}p_{i}^{2}+\sum_{j\in C_{i}}{\gamma_{ij}p_{i}p_{j}}\right)},

is, in general, a nonconvex quadratic function with bilinear terms.

2.2 A Relaxation of the Deterministic MPPO Model

For the quadratic and bilinear terms, pi2p_{i}^{2} and pipjp_{i}p_{j}, in (2.3), we introduce two new sets of variables xi=pi2x_{i}=-p_{i}^{2} and yij=pipjy_{ij}=p_{i}\cdot p_{j}, respectively. With this substitution, (2.3) is transformed into:

maxp,x,y\displaystyle\max\limits_{p,x,y}\quad iI(αipiβixi+jCiγijyij)\displaystyle\sum\limits_{i\in I}{\left(\alpha_{i}p_{i}-\beta_{i}x_{i}+\sum_{j\in C_{i}}{\gamma_{ij}y_{ij}}\right)}\vspace{1mm} (2.4a)
s.t.\displaystyle\mathop{\rm s.t.}\quad Apb,\displaystyle Ap\leq b, (2.4b)
xipi2,\displaystyle x_{i}\leq-p_{i}^{2}, iI,\displaystyle i\in I, (2.4c)
yij=pipj,\displaystyle y_{ij}=p_{i}p_{j}, iI,jCi,\displaystyle i\in I,j\in C_{i}, (2.4d)
lpu.\displaystyle l\leq p\leq u. (2.4e)

where the objective function (2.4a) is now linear, but the constraints (2.4c) and (2.4d) contain quadratic and bilinear terms, respectively.

Notice that for a given iIi\in I, since βi<0\beta_{i}<0 and pi>0p_{i}>0, xi<0x_{i}<0 and βixi<0-\beta_{i}x_{i}<0. Because we are dealing with a maximization problem, it follows that xix_{i} will attain its least negative value at xi=pi2x_{i}=-p^{2}_{i} at optimality. Therefore, Problem (2.4) and Problem (2.3) are equivalent and consequently, we can deal with Problem (2.4) from this point on.

We now apply relaxations to Problem (2.4) to address the nonlinear constraints (2.4c) and (2.4d) and transform the problem into a more tractable linear program. First, we replace the quadratic term pi2-p_{i}^{2} by its piecewise linear approximation by discretizing its domain pip_{i} into rr segments:

li=p¯i0p¯i1p¯ir=ui.l_{i}=\bar{p}_{i0}\leq\bar{p}_{i1}\leq\ldots\leq\bar{p}_{ir}=u_{i}.

Then at the kkth knot:

pi2p¯ik2+(2p¯ik)(pip¯ik)=p¯ik22p¯ikpi.\begin{array}[]{rcl}p_{i}^{2}&\approx&-\bar{p}_{ik}^{2}+(-2\bar{p}_{ik})(p_{i}-\bar{p}_{ik})\\ &=&\bar{p}_{ik}^{2}-2\bar{p}_{ik}p_{i}.\end{array}

Therefore, we can relax constraint (2.4c) with the following set of rr supporting hyperplanes of pi2p_{i}^{2}:

xip¯ik22p¯ikpiiC,k{1,,r}.x_{i}\leq\bar{p}_{ik}^{2}-2\bar{p}_{ik}p_{i}\quad i\in C,k\in\{1,\ldots,r\}.

Figure 1 illustrates how this linearization technique to approximate the quadratic function xi=pi2x_{i}=-p_{i}^{2}.

pip_{i}xix_{i}lil_{i}uiu_{i}p¯i1\bar{p}_{i1}
Figure 1: Linearizations of xi=pi2x_{i}=-p_{i}^{2} at three points lil_{i}, p¯i1\bar{p}_{i1} and uiu_{i}: dashed red lines are the linearizations

Next, for constraint (2.4d), we relax the bilinear terms by introducing McCormick envelopes ([19, 2]) as follows:

yijljpi+lipjlilj,\displaystyle y_{ij}\geq l_{j}p_{i}+l_{i}p_{j}-l_{i}l_{j},
yijujpi+lipjliuj,\displaystyle y_{ij}\leq u_{j}p_{i}+l_{i}p_{j}-l_{i}u_{j},
yijljpi+uipiljui,\displaystyle y_{ij}\leq l_{j}p_{i}+u_{i}p_{i}-l_{j}u_{i},
yijujpi+uipjuiuj.\displaystyle y_{ij}\geq u_{j}p_{i}+u_{i}p_{j}-u_{i}u_{j}.

With the above relaxations, Problem (2.4) becomes:

maxp,x,y\displaystyle\max\limits_{p,x,y}\quad iI(αipiβixi+jCiγijyij)\displaystyle\sum\limits_{i\in I}{\left(\alpha_{i}p_{i}-\beta_{i}x_{i}+\sum_{j\in C_{i}}{\gamma_{ij}y_{ij}}\right)}\vspace{1mm} (2.5a)
s.t.\displaystyle\mathop{\rm s.t.}\quad Apb,\displaystyle Ap\leq b, (2.5b)
xip¯ik22p¯ikpi\displaystyle x_{i}\leq\bar{p}_{ik}^{2}-2\bar{p}_{ik}p_{i} iI,k{1,,r},\displaystyle i\in I,k\in\{1,\ldots,r\}, (2.5c)
yijljpi+lipjlilj,\displaystyle y_{ij}\geq l_{j}p_{i}+l_{i}p_{j}-l_{i}l_{j}, iI,jCi\displaystyle i\in I,j\in C_{i} (2.5d)
yijujpi+lipjliuj,\displaystyle y_{ij}\leq u_{j}p_{i}+l_{i}p_{j}-l_{i}u_{j}, iI,jCi\displaystyle i\in I,j\in C_{i} (2.5e)
yijljpi+uipiljui,\displaystyle y_{ij}\leq l_{j}p_{i}+u_{i}p_{i}-l_{j}u_{i}, iI,jCi\displaystyle i\in I,j\in C_{i} (2.5f)
yijujpi+uipjuiuj,\displaystyle y_{ij}\geq u_{j}p_{i}+u_{i}p_{j}-u_{i}u_{j}, iI,jCi\displaystyle i\in I,j\in C_{i} (2.5g)
lpu.\displaystyle l\leq p\leq u. (2.5h)

3 Uncertainty

In our MMPO model, we assume that the uncertainty is on βi\beta_{i} and γij\gamma_{ij} which vary between their corresponding lower and upper bound values. Our goal is to find optimal price decisions so that the decisions remain optimal with respect to all possible realizations of β\beta and γ\gamma. In this section, we first propose an RO approach to achieve the above goal. We then show how we construct an uncertainty set in building an RO model. Finally, we describe our method to solve the RO model.

3.1 The Robust Optimization Model for MPPO

The RO model is constructed by considering the worst-case scenario under all possible realizations of the uncertain parameter. Therefore, the RO counterpart of the objective function of Problem (2.5) is written as a Max-Min problem as follows:

maxp,x,y\displaystyle\max\limits_{p,x,y}\quad min(β,γ)𝒰iI(αipiβixi+jCiγijyij)\displaystyle\min_{(\beta,\gamma)\in\mathcal{U}}\sum\limits_{i\in I}{\left(\alpha_{i}p_{i}-\beta_{i}x_{i}+\sum_{j\in C_{i}}{\gamma_{ij}y_{ij}}\right)}
=\displaystyle= maxp,x,y\displaystyle\max\limits_{p,x,y}\quad (iIαipi+min(β,γ)𝒰iI(βixi+jCiγijyij))\displaystyle\left(\sum\limits_{i\in I}{\alpha_{i}p_{i}}+\min_{(\beta,\gamma)\in\mathcal{U}}\sum\limits_{i\in I}{\Bigl{(}-\beta_{i}x_{i}+\sum_{j\in C_{i}}{\gamma_{ij}y_{ij}}\Bigr{)}}\right)

Hence, Problem (2.5) under uncertainty becomes:

maxp,x,y(iIαipi+min(β,γ)𝒰iI(βixi+jCiγijyij))s.t.(2.5b) - (2.5h),\begin{array}[]{rl}\max\limits_{p,x,y}&\left(\sum\limits_{i\in I}{\alpha_{i}p_{i}}+\min\limits_{(\beta,\gamma)\in\mathcal{U}}\sum\limits_{i\in I}{\Bigl{(}-\beta_{i}x_{i}+\sum\limits_{j\in C_{i}}{\gamma_{ij}y_{ij}}\Bigr{)}}\right)\vspace{3mm}\\ \mathop{\rm s.t.}&\text{\eqref{prob:reform2:const1} - \eqref{prob:reform2:const4}},\end{array} (3.1)

where 𝒰\mathcal{U} is the uncertainty set of (β,γ)(\beta,\gamma). We will describe a method for constructing the uncertainty set later.

By introducing an ancillary variable η\eta, we reformulate the model (3.1) as

maxp,x,y\displaystyle\max\limits_{p,x,y}\quad η+iIαipi\displaystyle\eta+\sum\limits_{i\in I}{\alpha_{i}p_{i}}
s.t.\displaystyle\mathop{\rm s.t.}\quad ηmin(β,γ)𝒰(iI(βixi+jCiγijyij))\displaystyle\eta\leq\min\limits_{(\beta,\gamma)\in\mathcal{U}}\left(\sum\limits_{i\in I}{\Bigl{(}-\beta_{i}x_{i}+\sum_{j\in C_{i}}{\gamma_{ij}y_{ij}}\Bigr{)}}\right) (3.2a)
(2.5b) - (2.5h).\displaystyle\text{\eqref{prob:reform2:const1} - \eqref{prob:reform2:const4}}.

3.2 Uncertainty Set Construction

We denote SiROS_{i}^{RO} and TijROT_{ij}^{RO} as two pre-determined numbers of uniformly distributed realizations β^is\hat{\beta}_{is} and γ^ijs\hat{\gamma}_{ijs} for uncertain parameters βi\beta_{i} and γij\gamma_{ij}, respectively, from their corresponding interval estimates. Given the set of realizations, we define the following attributes for the uncertainty set for each product ii:

  • Mean of scenarios:

    β¯i=s=1SiROβ^isSiRO.\bar{\beta}_{i}=\frac{\sum\limits_{s=1}^{S_{i}^{RO}}{\hat{\beta}_{is}}}{S_{i}^{RO}}.

    β¯i\bar{\beta}_{i} can be interpreted as the nominal value for the sensitivity parameter βi\beta_{i}. Likewise, for γij\gamma_{ij}, we have:

    γ¯ij=s=1TijROγ^isTijRO.\bar{\gamma}_{ij}=\frac{\sum\limits_{s=1}^{T_{ij}^{RO}}{\hat{\gamma}_{is}}}{T_{ij}^{RO}}.
  • Standard deviation of scenarios: The standard deviations of the samples of realizations for β\beta and γ\gamma are calculated as follows.

    β~i=s=1SiRO(β^isβ¯i)2SiRO1,\tilde{\beta}_{i}=\sqrt{\frac{\sum\limits_{s=1}^{S_{i}^{RO}}{(\hat{\beta}_{is}-\bar{\beta}_{i})^{2}}}{S_{i}^{RO}-1}},

    and

    γ~ij=s=1TijRO(γ^ijsγ¯ij)2TijRO1.\tilde{\gamma}_{ij}=\sqrt{\frac{\sum\limits_{s=1}^{T_{ij}^{RO}}{(\hat{\gamma}_{ijs}-\bar{\gamma}_{ij})^{2}}}{T_{ij}^{RO}-1}}.

Now, for k=iI|Ci|k=\sum_{i\in I}{|C_{i}|} and writing 𝜷\boldsymbol{\beta} for the vectors of all β\beta and 𝜸k\boldsymbol{\gamma}\in\mathbb{R}^{k} for the vector of all γij\gamma_{ij}, we construct the uncertainty set 𝒰Δ\mathcal{U}_{\Delta} as follows:

𝒰Δ={[𝜷𝜸]\displaystyle\mathcal{U}_{\Delta}=\Bigl{\{}\left[\begin{array}[]{c}\boldsymbol{\beta}\\ \boldsymbol{\gamma}\end{array}\right]\in n+k:.\displaystyle\mathbb{R}^{n+k}:\Bigr{.} (3.3c)
maxiI|βiβ¯i|β~iΔ,\displaystyle\max\limits_{i\in I}{\frac{|\beta_{i}-\bar{\beta}_{i}|}{\tilde{\beta}_{i}}}\leq\Delta, (3.3d)
β^iminβiβ^imax,iI,\displaystyle\hat{\beta}^{min}_{i}\leq\beta_{i}\leq\hat{\beta}^{max}_{i},\ \forall i\in I, (3.3e)
maxiI,jCi|γijγ¯ij|γ~ijΔ,\displaystyle\max\limits_{i\in I,j\in C_{i}}{\frac{|\gamma_{ij}-\bar{\gamma}_{ij}|}{\tilde{\gamma}_{ij}}}\leq\Delta, (3.3f)
γ^ijminγijγ^ijmax,iI,jCi.},\displaystyle\hat{\gamma}^{min}_{ij}\leq\gamma_{ij}\leq\hat{\gamma}^{max}_{ij},\ \forall i\in I,j\in C_{i}\Bigl{.}\Bigr{\}}, (3.3g)

where β^imin=mins{1,,SiRO}{β^is}\hat{\beta}^{min}_{i}=\min_{s\in\{1,\ldots,S_{i}^{RO}\}}\{\hat{\beta}_{is}\}, β^imax=maxs{1,,SiRO}{β^is}\hat{\beta}^{max}_{i}=\max_{s\in\{1,\ldots,S_{i}^{RO}\}}\{\hat{\beta}_{is}\}, γ^ijmin=mins{1,,TijRO}{γ^ijs}\hat{\gamma}^{min}_{ij}=\min_{s\in\{1,\ldots,T_{ij}^{RO}\}}\{\hat{\gamma}_{ijs}\} and γ^ijmax=maxs{1,,TijRO}{γ^ijs}\hat{\gamma}^{max}_{ij}=\max_{s\in\{1,\ldots,T_{ij}^{RO}\}}\{\hat{\gamma}_{ijs}\}.

Note that the constraints (3.3d) and (3.3f) in the above construction ensure that the maximum normalized deviation of the uncertain parameter βi\beta_{i} and γij\gamma_{ij}, respectively, from the nominal values among all the products remains under a certain positive scalar Δ\Delta. The parameter Δ\Delta is called budget of uncertainty [12]. Constraintd (3.3e) and (3.3g) also define bounds on individual βi\beta_{i} and γij\gamma_{ij}, respectively.

The budget of uncertainty constraint could also be specified by imposing a limit on the total amount of deviation across all products [13] as follows:

iI|βiβ¯i|β~i+iIjCi|γijγ¯ij|γ~ijΔ.\sum\limits_{i\in I}{\frac{|\beta_{i}-\bar{\beta}_{i}|}{\tilde{\beta}_{i}}}+\sum_{i\in I}{\sum_{j\in C_{i}}{\frac{|\gamma_{ij}-\bar{\gamma}_{ij}|}{\tilde{\gamma}_{ij}}}}\leq\Delta.

We therefore reformulate the uncertainty set as a polytope:

𝒰Δ={[𝜷𝜸𝝈β𝝈γ]2n+2k:.σiβΔ,iI,σijγΔ,iI,jCi,β~iσiββiβ¯iβ~iσiβ,iI,β^iminβiβ^imax,iI,γ~ijσijγγijγ¯ijγ~ijσijγ,iI,jCi,γ^iminγijγ^ijmax,iI,jCi.}\begin{array}[]{rll}\mathcal{RU}_{\Delta}=\Bigl{\{}\left[\begin{array}[]{c}\boldsymbol{\beta}\\ \boldsymbol{\gamma}\\ \boldsymbol{\sigma}^{\beta}\\ \boldsymbol{\sigma}^{\gamma}\end{array}\right]&\in\mathbb{R}^{2n+2k}:\Bigr{.}&\\ &\sigma_{i}^{\beta}\leq\Delta,&\forall i\in I,\vspace{2mm}\\ &\sigma_{ij}^{\gamma}\leq\Delta,&\forall i\in I,j\in C_{i},\vspace{2mm}\\ &-\tilde{\beta}_{i}\cdot\sigma_{i}^{\beta}\leq\beta_{i}-\bar{\beta}_{i}\leq\tilde{\beta}_{i}\cdot\sigma_{i}^{\beta},&\forall i\in I,\vspace{2mm}\\ &\hat{\beta}^{min}_{i}\leq\beta_{i}\leq\hat{\beta}^{max}_{i},&\forall i\in I,\\ &-\tilde{\gamma}_{ij}\cdot\sigma_{ij}^{\gamma}\leq\gamma_{ij}-\bar{\gamma}_{ij}\leq\tilde{\gamma}_{ij}\cdot\sigma_{ij}^{\gamma},&\forall i\in I,j\in C_{i},\vspace{2mm}\\ &\hat{\gamma}^{min}_{i}\leq\gamma_{ij}\leq\hat{\gamma}^{max}_{ij},&\forall i\in I,j\in C_{i}\Bigl{.}\Bigr{\}}\end{array} (3.4)

3.3 Solution Approach for the RO Model

Note that the right-hand side of the constraint (3.2a) constitutes an optimization problem. We substitute the uncertainty set 𝒰\mathcal{U} in  (3.2a) with a hyperplane derived from (3.4), and yield the following optimization problem:

minβ,γ,σβ,σγ\displaystyle\min\limits_{\beta,\gamma,\sigma^{\beta},\sigma^{\gamma}}\quad iI(βixi+jCiγijyij)\displaystyle\sum\limits_{i\in I}{\Bigl{(}-\beta_{i}x_{i}+\sum_{j\in C_{i}}{\gamma_{ij}y_{ij}}\Bigr{)}}
s.t.\displaystyle\mathop{\rm s.t.}\quad σiβΔ,\displaystyle\sigma_{i}^{\beta}\leq\Delta, iI,\displaystyle\forall i\in I, (3.5a)
σijγΔ,\displaystyle\sigma_{ij}^{\gamma}\leq\Delta, iI,jCi,\displaystyle\forall i\in I,j\in C_{i}, (3.5b)
βiβ¯iβ~iσiβ,\displaystyle\beta_{i}-\bar{\beta}_{i}\leq\tilde{\beta}_{i}\cdot\sigma_{i}^{\beta}, iI,\displaystyle\forall i\in I,\vspace{2mm} (3.5c)
β~iσiββiβ¯i,\displaystyle-\tilde{\beta}_{i}\cdot\sigma_{i}^{\beta}\leq\beta_{i}-\bar{\beta}_{i}, iI,\displaystyle\forall i\in I,\vspace{2mm} (3.5d)
β^iminβi\displaystyle\hat{\beta}^{min}_{i}\leq\beta_{i} iI,\displaystyle\forall i\in I, (3.5e)
βiβ^imax,\displaystyle\beta_{i}\leq\hat{\beta}^{max}_{i}, iI,\displaystyle\forall i\in I, (3.5f)
γijγ¯ijγ~ijσijγ,\displaystyle\gamma_{ij}-\bar{\gamma}_{ij}\leq\tilde{\gamma}_{ij}\cdot\sigma_{ij}^{\gamma}, iI,jCi,\displaystyle\forall i\in I,j\in C_{i},\vspace{2mm} (3.5g)
γ~ijσijγγijγ¯ij,\displaystyle-\tilde{\gamma}_{ij}\cdot\sigma_{ij}^{\gamma}\leq\gamma_{ij}-\bar{\gamma}_{ij}, iI,jCi,\displaystyle\forall i\in I,j\in C_{i},\vspace{2mm} (3.5h)
γ^iminγij\displaystyle\hat{\gamma}^{min}_{i}\leq\gamma_{ij} iI,jCi\displaystyle\forall i\in I,j\in C_{i} (3.5i)
γijγ^ijmax,\displaystyle\gamma_{ij}\leq\hat{\gamma}^{max}_{ij}, iI,jCi\displaystyle\forall i\in I,j\in C_{i} (3.5j)
σiβ,σijγ0,\displaystyle\sigma_{i}^{\beta},\sigma_{ij}^{\gamma}\geq 0, iI,jCi.\displaystyle i\in I,j\in C_{i}.

By introducing dual multipliers μiβ\mu^{\beta}_{i}, μijγ\mu^{\gamma}_{ij}, π1iβ\pi_{1i}^{\beta}, π2iβ\pi_{2i}^{\beta}, λ1iβ\lambda_{1i}^{\beta}, λ2iβ\lambda_{2i}^{\beta}, π1ijγ\pi_{1ij}^{\gamma}, π2ijγ\pi_{2ij}^{\gamma}, λ1ijγ\lambda_{1ij}^{\gamma} and λ2ijγ\lambda_{2ij}^{\gamma} associated with constraints (3.5a)-(3.5j), respectively, the dual problem becomes:

maxiI(Δμiββ¯iπ1iβ+β¯iπ2iβ+β^iminλ1iββ^imaxλ2iβ)+iIjCi(Δμijγγ¯iπ1ijγ+γ¯iπ2ijγ+γ^ijminλ1ijγ.γ^ijmaxλ2ijγ.)s.t.π1iβ+π2iβ+λ1iβλ2iβ=xiiI,μiβ+β~iπ1iβ+β~iπ2iβ0,iI,π1ijγ+π2ijγ+λ1ijγλ2ijγ=yijiI,jCi,μijγ+γ~ijπ1ijγ+γ~ijπ2ijγ0,iI,jCi,μiβ,π1iβ,π2iβ,λ1iβ,λ2iβ0.iI,μijγ,π1ijγ,π2ijγ,λ1ijγ,λ2ijγ0.iI,jCi.\begin{array}[]{rll}\max&\sum\limits_{i\in I}{\bigl{(}-\Delta\mu_{i}^{\beta}-\bar{\beta}_{i}\pi_{1i}^{\beta}+\bar{\beta}_{i}\pi_{2i}^{\beta}+\hat{\beta}^{min}_{i}\lambda_{1i}^{\beta}-\hat{\beta}^{max}_{i}\lambda_{2i}^{\beta}\bigr{)}}&\\ &+\sum\limits_{i\in I}{\sum\limits_{j\in C_{i}}{\Bigl{(}-\Delta\mu_{ij}^{\gamma}-\bar{\gamma}_{i}\pi_{1ij}^{\gamma}+\bar{\gamma}_{i}\pi_{2ij}^{\gamma}+\hat{\gamma}^{min}_{ij}\lambda_{1ij}^{\gamma}\Bigl{.}}}\\ &\hskip 54.06023pt-\hat{\gamma}^{max}_{ij}\lambda_{2ij}^{\gamma}\Bigr{.}\Bigl{)}&\vspace{2mm}\\ \mathop{\rm s.t.}&-\pi_{1i}^{\beta}+\pi_{2i}^{\beta}+\lambda_{1i}^{\beta}-\lambda_{2i}^{\beta}=-x_{i}&i\in I,\vspace{2mm}\\ &-\mu_{i}^{\beta}+\tilde{\beta}_{i}\pi_{1i}^{\beta}+\tilde{\beta}_{i}\pi_{2i}^{\beta}\leq 0,&i\in I,\vspace{2mm}\\ &-\pi_{1ij}^{\gamma}+\pi_{2ij}^{\gamma}+\lambda_{1ij}^{\gamma}-\lambda_{2ij}^{\gamma}=y_{ij}&i\in I,j\in C_{i},\vspace{2mm}\\ &-\mu_{ij}^{\gamma}+\tilde{\gamma}_{ij}\pi_{1ij}^{\gamma}+\tilde{\gamma}_{ij}\pi_{2ij}^{\gamma}\leq 0,&i\in I,j\in C_{i},\vspace{2mm}\\ &\mu_{i}^{\beta},\pi_{1i}^{\beta},\pi_{2i}^{\beta},\lambda_{1i}^{\beta},\lambda_{2i}^{\beta}\geq 0.&i\in I,\vspace{2mm}\\ &\mu_{ij}^{\gamma},\pi_{1ij}^{\gamma},\pi_{2ij}^{\gamma},\lambda_{1ij}^{\gamma},\lambda_{2ij}^{\gamma}\geq 0.&i\in I,j\in C_{i}.\end{array} (3.6)

In accordance with weak duality, any feasible solution to (3.6) provides a lower bound to (3.4). Therefore, we can enforce (3.2a) by adding the following constraint

η\displaystyle\eta\leq iI(Δμiββ¯iπ1iβ+β¯iπ2iβ+β^iminλ1iββ^imaxλ2iβ)+\displaystyle\sum\limits_{i\in I}{\bigl{(}-\Delta\mu_{i}^{\beta}-\bar{\beta}_{i}\pi_{1i}^{\beta}+\bar{\beta}_{i}\pi_{2i}^{\beta}+\hat{\beta}^{min}_{i}\lambda_{1i}^{\beta}-\hat{\beta}^{max}_{i}\lambda_{2i}^{\beta}\bigr{)}+}
iIjCi(Δμijγγ¯iπ1ijγ+γ¯iπ2ijγ+β^iminλ1ijγβ^imaxλ2ijγ)\displaystyle\sum\limits_{i\in I}{\sum\limits_{j\in C_{i}}{\Bigl{(}-\Delta\mu_{ij}^{\gamma}-\bar{\gamma}_{i}\pi_{1ij}^{\gamma}+\bar{\gamma}_{i}\pi_{2ij}^{\gamma}+\hat{\beta}^{min}_{i}\lambda_{1ij}^{\gamma}-\hat{\beta}^{max}_{i}\lambda_{2ij}^{\gamma}\Bigr{)}}}

where (μβ,π1β,π2β,λ1β,λ2β,μγ,π1γ,π2γ,λ1γ,λ2γ)(\mu^{\beta},\pi_{1\cdot}^{\beta},\pi_{2\cdot}^{\beta},\lambda_{1\cdot}^{\beta},\lambda_{2\cdot}^{\beta},\mu^{\gamma},\pi_{1}^{\gamma},\pi_{2}^{\gamma},\lambda_{1}^{\gamma},\lambda_{2}^{\gamma}) is feasible solution for (3.6). Therefore, the Max-Min problem can be reformulated as:

ZΔ=max\displaystyle Z_{\Delta}^{*}=\max η+iIαipi\displaystyle\hskip 2.84526pt\eta+\sum\limits_{i\in I}{\alpha_{i}p_{i}} (3.7a)
s.t.\displaystyle\mathop{\rm s.t.} ηiI(Δμiββ¯iπ1iβ+β¯iπ2iβ+β^iminλ1iβ.\displaystyle\hskip 2.84526pt\eta\leq\sum\limits_{i\in I}{\bigl{(}-\Delta\mu_{i}^{\beta}-\bar{\beta}_{i}\pi_{1i}^{\beta}+\bar{\beta}_{i}\pi_{2i}^{\beta}+\hat{\beta}^{min}_{i}\lambda_{1i}^{\beta}\bigr{.}}
β^imaxλ2iβ.)+iIjCi(Δμijγγ¯iπ1ijγ+γ¯iπ2ijγ.\displaystyle\hskip 14.22636pt-\hat{\beta}^{max}_{i}\lambda_{2i}^{\beta}\bigl{.}\bigr{)}+\sum\limits_{i\in I}{\sum\limits_{j\in C_{i}}{\Bigl{(}-\Delta\mu_{ij}^{\gamma}-\bar{\gamma}_{i}\pi_{1ij}^{\gamma}+\bar{\gamma}_{i}\pi_{2ij}^{\gamma}\Bigr{.}}}
.+γ^ijminλ1ijγγ^ijmaxλ2ijγ)\displaystyle\hskip 14.22636pt\Bigl{.}+\hat{\gamma}^{min}_{ij}\lambda_{1ij}^{\gamma}-\hat{\gamma}^{max}_{ij}\lambda_{2ij}^{\gamma}\Bigr{)} (3.7b)
π1iβ+π2iβ+λ1iβλ2iβ=xi\displaystyle-\pi_{1i}^{\beta}+\pi_{2i}^{\beta}+\lambda_{1i}^{\beta}-\lambda_{2i}^{\beta}=-x_{i} iI,\displaystyle i\in I,\vspace{2mm} (3.7c)
μiβ+β~iπ1iβ+β~iπ2iβ0,\displaystyle-\mu_{i}^{\beta}+\tilde{\beta}_{i}\pi_{1i}^{\beta}+\tilde{\beta}_{i}\pi_{2i}^{\beta}\leq 0, iI,\displaystyle i\in I,\vspace{2mm} (3.7d)
π1ijγ+π2ijγ+λ1ijγλ2ijγ=yij\displaystyle-\pi_{1ij}^{\gamma}+\pi_{2ij}^{\gamma}+\lambda_{1ij}^{\gamma}-\lambda_{2ij}^{\gamma}=y_{ij} iI,jCi,\displaystyle i\in I,j\in C_{i},\vspace{2mm} (3.7e)
μijγ+γ~ijπ1ijγ+γ~ijπ2ijγ0,\displaystyle-\mu_{ij}^{\gamma}+\tilde{\gamma}_{ij}\pi_{1ij}^{\gamma}+\tilde{\gamma}_{ij}\pi_{2ij}^{\gamma}\leq 0, iI,jCi,\displaystyle i\in I,j\in C_{i},\vspace{2mm} (3.7f)
(2.5b) - (2.5h),\displaystyle\text{\eqref{prob:reform2:const1} - \eqref{prob:reform2:const4}}, (3.7g)
μiβ,π1iβ,π2iβ,λ1iβ,λ2iβ0.\displaystyle\mu_{i}^{\beta},\pi_{1i}^{\beta},\pi_{2i}^{\beta},\lambda_{1i}^{\beta},\lambda_{2i}^{\beta}\geq 0. iI,\displaystyle i\in I,\vspace{2mm} (3.7h)
μijγ,π1ijγ,π2ijγ,λ1ijγ,λ2ijγ0.\displaystyle\mu_{ij}^{\gamma},\pi_{1ij}^{\gamma},\pi_{2ij}^{\gamma},\lambda_{1ij}^{\gamma},\lambda_{2ij}^{\gamma}\geq 0. iI,jCi.\displaystyle i\in I,j\in C_{i}. (3.7i)

The above formulation constitutes the RO model associated with a budget of uncertainty parameter Δ\Delta. This RO model is a conventional linear programming model that can be readily solved using standard linear programming solvers. We report the results of our numerical experiments based on this model in the subsequent section.

4 Numerical Experiments

We implemented the RO model presented above using Python 3.5.2. We employed Gurobi 7.0 [16] to solve the linear programming model in (3.7). All tests reported were conducted on Amazon’s Elastic Compute Cloud running Amazon Linux AMI 2018.03 on a machine with dual Intel(R) Xeon(R) 16-core E5-2686 v4 CPU @ 2.3GHz and 500GB memory.

4.1 Test Instance Description

We tested the proposed approach on 40 different instances from the data of a major food distributor in the United States. The company sells products to its customers via its geographically scattered divisions. Table 1 lists the name of the test instances (such that each instance represents a specific division), the number of products and number of cross terms (nonzero γij\gamma_{ij} terms) within a given time period in each instance.

Sample # Products # Cross Terms Sample # Products # Cross Terms
S1 14,072 153 S2 11,563 247
S3 15,665 151 S4 1,148 19
S5 310 5 S6 1,975 23
S7 887 16 S8 987 15
S9 3,934 23 S10 2,078 35
S11 1,635 14 S12 2,008 16
S13 1,281 18 S14 629 10
S15 11,442 149 S16 2,940 79
S17 1,807 70 S18 924 53
S19 4,222 126 S20 1,675 26
S21 1,768 11 S22 333 22
S23 3,353 29 S24 1,232 34
S25 389,954 0 S26 288,719 0
S27 69,107 1,313 S28 141,475 3,409
S29 35,679 0 S30 298,750 0
S31 23,269 439 S32 9,518 201
S33 23,092 413 S34 23,249 481
S35 20,593 366 S36 18,862 232
S37 375,069 0 S38 271,054 0
S39 83,211 2,139 S40 112,555 2,686
Table 1: Statistics about instances: Sample name and number of products and number of cross terms

4.2 Parameter Values of the RO method

The value of Δ\Delta plays a crucial role in our tests. We select and test the values as follows. First, let us revisit the constraint involving Δ\Delta:

maxiI{|βiβ¯i|β~i}Δ,iI,\displaystyle\max_{i\in I}\left\{\frac{|\beta_{i}-\bar{\beta}_{i}|}{\tilde{\beta}_{i}}\right\}\leq\Delta,\quad\forall i\in I,
maxiI,jCi|γijγ¯ij|γ~ijΔ,iI,jCi.\displaystyle\max\limits_{i\in I,j\in C_{i}}{\frac{|\gamma_{ij}-\bar{\gamma}_{ij}|}{\tilde{\gamma}_{ij}}}\leq\Delta,\quad\forall i\in I,j\in C_{i}.

Obviously, the minimum value for Δ\Delta is zero, in which case all the βi\beta_{i} values will be equal to their nominal value β¯i\bar{\beta}_{i}. We can also find the maximum value for Δ\Delta by:

Δmaxβ=maxiI{max{|β^iminβ¯i|β~i,|β^imaxβ¯i|β~i}},\Delta_{max}^{\beta}=\max_{i\in I}\left\{\max\left\{\frac{|\hat{\beta}^{min}_{i}-\bar{\beta}_{i}|}{\tilde{\beta}_{i}},\frac{|\hat{\beta}^{max}_{i}-\bar{\beta}_{i}|}{\tilde{\beta}_{i}}\right\}\right\},

and

Δmaxγ=maxiI,jCi{max{|γ^iminγ¯i|γ~i,|γ^imaxγ¯i|γ~i}}.\Delta_{max}^{\gamma}=\max_{i\in I,j\in C_{i}}\left\{\max\left\{\frac{|\hat{\gamma}^{min}_{i}-\bar{\gamma}_{i}|}{\tilde{\gamma}_{i}},\frac{|\hat{\gamma}^{max}_{i}-\bar{\gamma}_{i}|}{\tilde{\gamma}_{i}}\right\}\right\}.

Therefore, we choose Δmax=max{Δmaxβ,Δmaxγ}\Delta_{max}=\max\{\Delta_{max}^{\beta},\Delta_{max}^{\gamma}\}. We then divide the interval [0,Δmax\Delta_{max}] into 10 equally distanced segments, namely [Δ1,Δ2][\Delta_{1},\Delta_{2}], [Δ2,Δ3],,[Δ10,Δ11][\Delta_{2},\Delta_{3}],\ldots,[\Delta_{10},\Delta_{11}] where Δ1=0\Delta_{1}=0 and Δ11=Δmax\Delta_{11}=\Delta_{max}, and test each of the Δ\Delta values in our subsequent experiments.

Other parameters of the model are SiROS_{i}^{RO} and TijROT_{ij}^{RO}, the numbers of samples used for calculating the means and variances for βi\beta_{i} and γij\gamma_{ij}. We set these two parameters to 50 and 5, respectively, reflecting the fact that the cross price elasticities are usually associated with smaller intervals compared with the own price elasticities, as found in our real data sets.

4.3 Test Results

To present our results, we show how changing the value of Δ\Delta affects the optimal value of the robust counterpart problem (3.7). To do this, we calculate the percent difference between the maximum and the minimum value of ZZ^{*} associated with values of Δ\Delta in problem (3.7). The maximum and minimum values of ZZ^{*} are attained when Δ=0\Delta=0 and Δ=Δmax\Delta=\Delta_{max}, i.e., the least conservative case and the most conservative case, respectively. We summarize the results in Table 2 by only displaying percent of decline from the least conservative to the most conservative case. We observe that the differences are all within in the range (0.05%,6.96%)(0.05\%,6.96\%) with an average of 1.14%.

Sample Decline (%) Sample Decline (%)
S1 4.0869 S2 0.7784
S3 6.1058 S4 5.2174
S5 0.0964 S6 0.2366
S7 0.0844 S8 0.1391
S9 3.5418 S10 0.1005
S11 0.3744 S12 0.1979
S13 0.1200 S14 0.1398
S15 0.3392 S16 0.0951
S17 0.1019 S18 0.0716
S19 0.1092 S20 0.1906
S21 0.0898 S22 0.0757
S23 0.2508 S24 0.0681
S25 0.8945 S26 1.8451
S27 0.0501 S28 0.0691
S29 2.4146 S30 0.5939
S31 6.9645 S32 2.6059
S33 1.2579 S34 0.2168
S35 0.1478 S36 0.8719
S37 3.0746 S38 1.1271
S39 0.4145 S40 0.3026
Table 2: Percent decline from the least conservative to the most conservative solutions with RO approach.

The distribution of the percent differences is depicted in the box plot of Figure 2. The detailed results are shown in the Appendix (Table 5).

Refer to caption
Figure 2: Boxplot of percent difference between least and most conservative solutions of RO problem for instances.

4.4 Simulation Validation

We further validate our RO approach by comparing results from a set of Monte Carlo simulation tests with our RO solutions. We run a Monte Carlo simulations by taking SsimS^{sim} uniformly distributed samples βis\beta_{is} from the interval [β^imin,β^imax][\hat{\beta}^{min}_{i},\hat{\beta}^{max}_{i}] and γijs\gamma_{ijs} from [γ^ijmin,γ^ijmax][\hat{\gamma}_{ij}^{min},\hat{\gamma}_{ij}^{max}], and then solving each of the price optimization problems with given sampling values for β\beta and γ\gamma:

f(𝜷s,𝜸s)=maxp,x,yiI(αipiβisxi+jCiγijyij)s.t.(2.5b)(2.5h).\begin{array}[]{rl}f(\boldsymbol{\beta}_{s},\boldsymbol{\gamma}_{s})=\max\limits_{p,x,y}&\sum\limits_{i\in I}{(\alpha_{i}p_{i}-\beta_{is}x_{i}+\sum_{j\in C_{i}}{\gamma_{ij}y_{ij}})\vspace{1mm}}\\ \mathop{\rm s.t.}&\eqref{prob:reform2:const1}-\eqref{prob:reform2:const4}.\end{array} (4.1)

The value of the simulation will then be the mean of optimal values from each replication, i.e. Zsim=1Ssimsf(𝜷s,𝜸s)Z_{sim}^{*}=\frac{1}{S^{sim}}\sum\limits_{s}{f(\boldsymbol{\beta}_{s},\boldsymbol{\gamma}_{s})}.

In these experiments, with Ssim=50S^{sim}=50, we compare the values of the simulation ZsimZ^{*}_{sim} with the values of RO formulation (3.7). This comparison discloses the degree of conservativeness of the RO solutions. To perform such a comparison, we compare ZsimZ^{*}_{sim} with the least conservative case (achieved at Δ1\Delta_{1}), the most conservative case Δmax\Delta_{max} and the average across all Δ\Delta values, and calculate the corresponding difference ratios. For instance the difference ratio in the column under Δ1\Delta_{1} is attained from

ZsimZΔ1ZΔ1.\frac{Z^{*}_{sim}-Z^{*}_{\Delta_{1}}}{Z^{*}_{\Delta_{1}}}.

Table 3 summarizes these comparisons. while a negative value of difference ratio in the table implies that the RO value is better than the simulation, a positive value shows conversely. Note that most of the instances (35 out of 40) have positive values in Δmax\Delta_{max} column, indicating RO results are worse than the simulation values. However, in most of such cases (30 out of 35) the difference ratios are less than 0.5%, and there are only three cases where the difference ratios are over 1%. This implies that for the most conservative scenarios, RO solution yields results with little losses as compared to the solutions from the simulation. On the other hand, in the least conservative case (under column Δ1\Delta_{1}), most (31 of 40) differences are negative, demonstrating RO results are better than those from the simulations, while there are only nine instances where it is not and only in one of which the difference ratio is above 0.32%.

Sample Δ1\Delta_{1} (%) Average (%) Δmax\Delta_{max} (%) Sample Δ1\Delta_{1} (%) Average (%) Δmax\Delta_{max} (%)
S1 -1.8890 0.2668 0.9437 S2 -0.0190 0.2335 0.2986
S3 -2.8905 0.4543 1.9151 S4 0.2826 3.6168 5.0061
S5 -0.1005 -0.1198 -0.0184 S6 -0.1459 0.0224 0.0721
S7 0.0542 0.0965 0.1128 S8 0.1286 0.1395 0.1465
S9 -5.0707 -2.6889 -1.8811 S10 0.0430 0.1518 0.1716
S11 -0.2461 -0.0556 0.0774 S12 -0.0706 0.0239 0.1493
S13 -0.0518 0.1993 0.2539 S14 -0.0023 0.0169 0.0832
S15 -0.1280 0.0184 0.2112 S16 -0.0800 0.0541 0.1453
S17 -0.1146 -0.0004 0.0926 S18 0.0192 0.0281 0.0357
S19 -0.0865 -0.0006 0.0103 S20 -0.1491 -0.0081 0.0242
S21 -0.0953 0.0578 0.0941 S22 0.0062 0.0327 0.0401
S23 -0.2302 -0.0727 0.0346 S24 0.0034 0.0293 0.0658
S25 -0.6957 -0.1953 0.1140 S26 -1.5647 -0.1403 0.3698
S27 -0.0236 0.0398 0.0529 S28 -0.1683 -0.0924 -0.0981
S29 -1.8245 -03922 0.3490 S30 -0.5110 0.0049 0.1277
S31 -10.1855 -5.0828 -2.4091 S32 1.8656 2.6629 3.4037
S33 -0.2890 0.2004 0.3969 S34 -0.0104 0.0221 0.0562
S35 -0.0402 0.0493 0.0873 S36 -1.3137 -0.1453 0.296
S37 -4.7585 -3.0283 -2.0466 S38 -0.8910 -0.236 0.2993
S39 -0.0165 0.0100 0.1477 S40 0.3194 0.5114 0.6030
Table 3: Decline of the simulation optimal value from the RO models in the least conservative (Δ1\Delta_{1}) and the most conservative (Δmax\Delta_{max}). Also decline of the simulation optimal value from the average of the optimal values of the RO models across all Δ\Delta values.

The other major benefit that we observe in our experiments is the gain from the computational time required for our RO approach. Table 4 lists the solution time of both RO approach and simulation. The solution times are significantly higher in simulation comparing to those using the RO approach. This is aligned with the expectations as the simulation needs to solve SsimS^{sim} number of linear programs whereas the RO approach needs to only solve one linear program. The comparison of the solution time shows that the relative difference calculated by tSimulationtROtRO\frac{t_{\text{Simulation}}-t_{\text{RO}}}{t_{\text{RO}}} has a geometric mean of 21.2 which means the simulation on average takes 21 times longer to solve. The advantage in computation times of our RO approach represents a significant benefit that could be achieved in many practical applications.

Sample RO Simulation Sample RO Simulation
(s) (s) (s) (s)
S1 18.1 298.7 S2 17.5 323.5
S3 9.7 203.3 S4 0.2 6.3
S5 0.2 8.6 S6 0.4 14.6
S7 0.3 8.4 S8 0.3 10.4
S9 1.0 31.5 S10 0.7 22.8
S11 0.3 10.1 S12 0.3 11.6
S13 0.5 15.3 S14 0.1 3.5
S15 5.5 118.5 S16 1.4 39.7
S17 0.4 11.5 S18 0.2 5.5
S19 1.2 40.2 S20 0.4 11.3
S21 0.7 22.6 S22 0.1 1.9
S23 1.5 37.2 S24 0.2 7.7
S25 323.6 2746.9 S26 206.0 1759.1
S27 332.7 5622.9 S28 888.8 35712.6
S29 8.1 182.3 S30 187.0 1842.6
S31 106.0 1410.4 S32 23.2 395.4
S33 90.6 1152.9 S34 79.8 1259.7
S35 71.2 1044.9 S36 29.2 492.9
S37 313.9 2630.8 S38 177.8 1649.9
S39 436.6 12469.6 S40 436.6 12469.6
Table 4: Solution time for RO approach and simulation in seconds

5 Conclusions and Future Directions

In this paper, we investigate a multiple product price optimization problem with a linear demand function associated with prices on reference products as well as associated complementary/substitute products. The problem is associated with uncertainty where the sensitivity parameters on the product prices are expressed using uncertainty intervals. In contrast to the common practice of solving the problem with a point estimator of the interval, we devise a new robust optimization based approach to handle such uncertainty intervals.

In our proposed approach, we construct an uncertainty set based on all realizations of the parameters. The set depends on the budget of uncertainty parameter that controls the level of conservatism. With this set, a robust optimization formulation counterpart is developed that takes the uncertainty set into account, and it can be solved as a linear programming model. We further test our proposed model and solution approach based on several real data sets. As is expected, by increasing the budget of uncertainty value of the uncertainty set parameter, the optimal revenue decreases. An additional set of simulation experiments shows that although robust optimization is typically a more conservative approach, the losses of optimal values with the approach, in most instances, are quite insignificant. From the solution time perspective, while the simulation requires much longer time to solve, the proposed RO method, designed to address the uncertainty issue, can yield robust solutions in much shorter time at the price of being a little conservative.

We plan to further our research in several areas in the future. First, we currently use a uniform sampling approach from the intervals of the sensitivity parameters. However, in reality, some more refined information including posterior distribution may be collected and estimated for such parameters. A more appropriate sampling approach can be employed to better suit the posterior distribution of the parameters with uncertainty.

Also, in our robust optimization approach, we formulate the uncertainty set as explained in 𝒰Δ\mathcal{U}_{\Delta}, which was linearized in (3.4). However, there are some other approaches in the literature that might result in different approximation of the uncertainty associated with the parameters (for example [8].) Such new approximation methods are worth exploring in the future.

Finally, we find a simple linear demand response function appropriate for our application. More complicated demand response models, such as MNL demand functions, may be more appropriate and accurate in other price optimization applications. Hence, studying RO approach with such models could be an interesting future direction.

References

  • [1] V. Agrawal and S. Seshadri. Impact of uncertainty and risk aversion on price and order quantity in the newsvendor problem. Manufacturing & Service Operations Management, 2:410–423, 10 2000.
  • [2] F.A. Al-Khayyal and J.E. Falk. Jointly constrained biconvex programming. Mathematics of Operations Research, 8(2):159–317, 1983.
  • [3] A. Ben-Tal and A. Nemirovski. Robust convex optimization. Mathematics of Operations Research, 23(4):769–805, 1998.
  • [4] A. Ben-Tal and A. Nemirovski. Robust solutions of uncertain linear programs. Operations Research Letters, 25:1–13, 1999.
  • [5] A. Ben-Tal and A. Nemirovski. Robust solutions of linear programming problems contaminated with uncertain data. Mathematical Programming, 88(3):411–424, 2000.
  • [6] D. Bertsimas and D. Brown. Constructing uncertainty sets for robust linear optimization. Operations Research, 57(6):1483–1495, 2009.
  • [7] D. Bertsimas, D.B. Brown, and C. Caramanis. Theory and applications of robust optimization. SIAM Review, 53(3):464–501, 2011.
  • [8] D. Bertsimas, V. Gupta, and N. Kallus. Data-driven robust optimization. Mathematical Programming, 167(2):235–292, 2018.
  • [9] D. Bertsimas, D. Pachamanova, and M. Sim. Robust linear optimization under general norms. Operations Research Letters, 32(6):510–516, 2004.
  • [10] D. Bertsimas and M. Sim. Robust discrete optimization and network flows. Mathematical Programming, 98(1):49–71, 2003.
  • [11] D. Bertsimas and M. Sim. The price of robustness. Operations Research, 52(1):35–53, 2004.
  • [12] D. Bertsimas and A. Thiele. Robust and data-driven optimization: Modern decision making under uncertainty. Tutorials in Operations Research, 4:95–122, 04 2006.
  • [13] Dimitris Bertsimas, Eugene Litvinov, Xu Sun, Jinye Zhao, and Tongxin Zheng. Adaptive robust optimization for the security constrained unit commitment problem. IEEE Transactions on Power Systems, 28:52–63, 02 2013.
  • [14] L. El Ghaoui and H. Lebret. Robust solutions to least-squares problems with uncertain data. SIAM Journal on Matrix Analysis and Applications, 18(4):1035–1064, 1997.
  • [15] L. El Ghaoui, F. Oustry, and H. Lebret. Robust solutions to uncertain semidefinite programs. SIAM Journal on Optimization, 9(1):33–52, 1998.
  • [16] Gurobi Optimization, LLC. Gurobi optimizer reference manual, 2020.
  • [17] Y. Levin, J. McGill, and M. Nediak. Risk in revenue management and dynamic pricing. Operations Research, 56:326–343, 04 2008.
  • [18] T. Mai and P. Jaillet. Robust multi-product pricing under general extreme value models, 2019, 1912.09552.
  • [19] G.P. McCormick. Computability of global solutions to factorable nonconvex programs: Part I — Convex underestimating problems. Mathematical Programming, 10:147–175, 1976.
  • [20] J.M. Mulvey, R.J. Vanderbei, and S.A. Zenios. Robust optimization of large-scale systems. Operations Research, 43(2):264–281, 1995.
  • [21] S. Nahmias. Production and Operations Analysis. McGraw-Hill, New York, 5th edition, 2005.
  • [22] Ö. Özer and R. Phillips. The Oxford Handbook of Pricing Management. Oxford University Press, 2012.
  • [23] R. Phillips. Pricing and Revenue Optimization. Stanford University Press, Stanford, CA, 2005.
  • [24] Y. Sheffi. The Resilient Enterprise: Overcoming Vulnerability for Competitive Advantage. MIT Press, Cambridge, MA, 2005.
  • [25] D. Simchi-Levi, P. Kaminsky, and Simchi-Levi E. Managing the Supply Chain: The Definitive Guide for the Business Professional. McGraw-Hill, New York, 2004.
  • [26] A.L. Soyster. Convex programming with set-inclusive constraints and applications to inexact linear programming. Operations Research, 21(5):1154–1157, 1973.
  • [27] K.T. Talluri and G.J. van Ryzin. The Theory and Practice of Revenue Management. International Series in Operations Research & Management Science. Springer US, Boston, MA, 2005.
  • [28] A. Thiele. Single-product pricing via robust optimization. Working Paper, 2006.
  • [29] A. Thiele. Multi-product pricing via robust optimization. Journal of Revenue and Pricing Management, 8:67–80, 2009.

Appendix

Table 5 presents each Δ\Delta value with its associated optimal objective function value (revenue) of each instance. For ease of exposition, the optimal revenue value (denoted as ZZ^{*}) is normalized so the base scenario with Δ=0\Delta=0 is set to zero. As we also expected, the larger the Δ\Delta value, the smaller ZΔZ^{*}_{\Delta}, as the problem becomes more conservative.

Optimal Values
Sample 1 2 3 4 5 6 7 8 9 10 11 Decline (%)
S1 Δ\Delta 0.0 0.65 1.3 1.9 2.6 3.2 3.9 4.5 5.2 5.8 6.5 4.0869
ZZ^{*} 1.000000 0.981036 0.964493 0.959536 0.959145 0.959132 0.959131 0.959131 0.959131 0.959131 0.959131
S2 Δ\Delta 0.0 0.55 1.1 1.7 2.2 2.8 3.3 3.9 4.4 5.0 5.5 0.7784
ZZ^{*} 1.000000 0.997144 0.994409 0.992639 0.992311 0.992245 0.992220 0.992216 0.992216 0.992216 0.992216
S3 Δ\Delta 0.0 0.46 0.92 1.4 1.8 2.3 2.8 3.2 3.7 4.1 4.6 6.1058
ZZ^{*} 1.000000 0.980973 0.962698 0.948051 0.940493 0.939001 0.938953 0.938943 0.938942 0.938942 0.938942
S4 Δ\Delta 0.0 0.39 0.78 1.2 1.6 1.9 2.3 2.7 3.1 3.5 3.9 5.2174
ZZ^{*} 1.000000 0.986918 0.973921 0.960932 0.948030 0.947895 0.947826 0.947826 0.947826 0.947826 0.947826
S5 Δ\Delta 0.0 0.35 0.71 1.1 1.4 1.8 2.1 2.5 2.8 3.2 3.5 0.0964
ZZ^{*} 1.000000 0.999791 0.999583 0.999374 0.999165 0.999040 0.999036 0.999036 0.999036 0.999036 0.999036
S6 Δ\Delta 0.0 0.4 0.8 1.2 1.6 2.0 2.4 2.8 3.2 3.6 4.0 0.2366
ZZ^{*} 1.000000 0.999404 0.998809 0.998223 0.997753 0.997637 0.997634 0.997634 0.997634 0.997634 0.997634
S7 Δ\Delta 0.0 0.4 0.8 1.2 1.6 2.0 2.4 2.8 3.2 3.6 4.0 0.0844
ZZ^{*} 1.000000 0.999798 0.999596 0.999395 0.999204 0.999156 0.999156 0.999156 0.999156 0.999156 0.999156
S8 Δ\Delta 0.0 0.39 0.77 1.2 1.5 1.9 2.3 2.7 3.1 3.5 3.9 0.1391
ZZ^{*} 1.000000 0.999667 0.999334 0.999002 0.998704 0.998611 0.998609 0.998609 0.998609 0.998609 0.998609
S9 Δ\Delta 0.0 0.4 0.8 1.2 1.6 2.0 2.4 2.8 3.2 3.6 4.0 3.5418
ZZ^{*} 1.000000 0.988791 0.977581 0.966854 0.964664 0.964583 0.964582 0.964582 0.964582 0.964582 0.964582
S10 Δ\Delta 0.0 0.42 0.83 1.2 1.7 2.1 2.5 2.9 3.3 3.7 4.2 0.1005
ZZ^{*} 1.000000 0.999753 0.999507 0.999260 0.999055 0.998999 0.998995 0.998995 0.998995 0.998995 0.998995
S11 Δ\Delta 0.0 0.39 0.77 1.2 1.5 1.9 2.3 2.7 3.1 3.5 3.9 0.3744
ZZ^{*} 1.000000 0.999164 0.998361 0.997558 0.996762 0.996259 0.996256 0.996256 0.996256 0.996256 0.996256
S12 Δ\Delta 0.0 0.39 0.77 1.2 1.5 1.9 2.3 2.7 3.1 3.5 3.9 0.1979
ZZ^{*} 1.000000 0.999501 0.999001 0.998502 0.998129 0.998021 0.998021 0.998021 0.998021 0.998021 0.998021
S13 Δ\Delta 0.0 0.41 0.83 1.2 1.7 2.1 2.5 2.9 3.3 3.7 4.1 0.1200
ZZ^{*} 1.000000 0.999697 0.999394 0.999091 0.998829 0.998801 0.998800 0.998800 0.998800 0.998800 0.998800
S14 Δ\Delta 0.0 0.38 0.77 1.1 1.5 1.9 2.3 2.7 3.1 3.4 3.8 0.1398
ZZ^{*} 1.000000 0.999686 0.999372 0.999058 0.998750 0.998604 0.998602 0.998602 0.998602 0.998602 0.998602
S15 Δ\Delta 0.0 0.48 0.95 1.4 1.9 2.4 2.9 3.3 3.8 4.3 4.8 0.3392
ZZ^{*} 1.000000 0.998885 0.997798 0.996985 0.996681 0.996632 0.996617 0.996609 0.996609 0.996608 0.996608
S16 Δ\Delta 0.0 0.41 0.83 1.2 1.7 2.1 2.5 2.9 3.3 3.7 4.1 0.0951
ZZ^{*} 1.000000 0.999764 0.999529 0.999293 0.999094 0.999049 0.999049 0.999049 0.999049 0.999049 0.999049
S17 Δ\Delta 0.0 0.41 0.83 1.2 1.7 2.1 2.5 2.9 3.3 3.7 4.1 0.1019
ZZ^{*} 1.000000 0.999742 0.999484 0.999226 0.999010 0.998982 0.998981 0.998981 0.998981 0.998981 0.998981
S18 Δ\Delta 0.0 0.41 0.82 1.2 1.6 2.1 2.5 2.9 3.3 3.7 4.1 0.0716
ZZ^{*} 1.000000 0.999821 0.999642 0.999464 0.999313 0.999285 0.999284 0.999284 0.999284 0.999284 0.999284
S19 Δ\Delta 0.0 0.44 0.88 1.3 1.8 2.2 2.6 3.1 3.5 4.0 4.4 0.1092
ZZ^{*} 1.000000 0.999714 0.999429 0.999143 0.998933 0.998908 0.998908 0.998908 0.998908 0.998908 0.998908
S20 Δ\Delta 0.0 0.38 0.77 1.2 1.5 1.9 2.3 2.7 3.1 3.5 3.8 0.1906
ZZ^{*} 1.000000 0.999560 0.999120 0.998679 0.998257 0.998097 0.998094 0.998094 0.998094 0.998094 0.998094
S21 Δ\Delta 0.0 0.39 0.77 1.2 1.5 1.9 2.3 2.7 3.1 3.5 3.9 0.0898
ZZ^{*} 1.000000 0.999793 0.999585 0.999378 0.999176 0.999104 0.999102 0.999102 0.999102 0.999102 0.999102
S22 Δ\Delta 0.0 0.41 0.81 1.2 1.6 2.0 2.4 2.8 3.3 3.7 4.1 0.0757
ZZ^{*} 1.000000 0.999818 0.999635 0.999453 0.999292 0.999246 0.999243 0.999243 0.999243 0.999243 0.999243
S23 Δ\Delta 0.0 0.39 0.79 1.2 1.6 2.0 2.4 2.8 3.2 3.6 3.9 0.2508
ZZ^{*} 1.000000 0.999300 0.998601 0.997901 0.997588 0.997496 0.997492 0.997492 0.997492 0.997492 0.997492
S24 Δ\Delta 0.0 0.41 0.82 1.2 1.6 2.0 2.5 2.9 3.3 3.7 4.1 0.0681
ZZ^{*} 1.000000 0.999831 0.999663 0.999494 0.999352 0.999320 0.999319 0.999319 0.999319 0.999319 0.999319
S25 Δ\Delta 0.0 0.62 1.2 1.9 2.5 3.1 3.7 4.3 4.9 5.6 6.2 0.8945
ZZ^{*} 1.000000 0.996451 0.992945 0.991132 0.991061 0.991056 0.991055 0.991055 0.991055 0.991055 0.991055
S26 Δ\Delta 0.0 0.65 1.3 1.9 2.6 3.2 3.9 4.5 5.2 5.8 6.5 1.8451
ZZ^{*} 1.000000 0.992429 0.985244 0.982216 0.981786 0.981554 0.981550 0.981550 0.981549 0.981549 0.981549
S27 Δ\Delta 0.0 0.57 1.1 1.7 2.3 2.9 3.4 4.0 4.6 5.2 5.7 0.0501
ZZ^{*} 1.000000 0.999812 0.999630 0.999518 0.999504 0.999501 0.999500 0.999500 0.999500 0.999499 0.999499
S28 Δ\Delta 0.0 0.62 1.2 1.9 2.5 3.1 3.7 4.4 5.0 5.6 6.2 0.0691
ZZ^{*} 1.000000 0.999720 0.999459 0.999331 0.999316 0.999311 0.999309 0.999309 0.999309 0.999309 0.999309
S29 Δ\Delta 0.0 0.62 1.2 1.8 2.5 3.1 3.7 4.3 4.9 5.5 6.2 2.4146
ZZ^{*} 1.000000 0.990004 0.981477 0.977098 0.976042 0.975912 0.975857 0.975854 0.975854 0.975854 0.975854
S30 Δ\Delta 0.0 0.6 1.2 1.8 2.4 3.0 3.6 4.2 4.8 5.4 6.0 0.5939
ZZ^{*} 1.000000 0.997535 0.995168 0.994144 0.994083 0.994070 0.994063 0.994061 0.994061 0.994061 0.994061
S31 Δ\Delta 0.0 0.7 1.4 2.1 2.8 3.5 4.2 4.9 5.6 6.3 7.0 6.9645
ZZ^{*} 1.000000 0.968040 0.940502 0.930946 0.930493 0.930380 0.930359 0.930356 0.930355 0.930355 0.930355
S32 Δ\Delta 0.0 0.59 1.2 1.8 2.4 3.0 3.6 4.2 4.8 5.4 5.9 2.6059
ZZ^{*} 1.000000 0.989968 0.981014 0.975376 0.974279 0.974051 0.973967 0.973953 0.973945 0.973941 0.973941
S33 Δ\Delta 0.0 0.58 1.2 1.7 2.3 2.9 3.5 4.1 4.7 5.2 5.8 1.2579
ZZ^{*} 1.000000 0.995042 0.990318 0.987787 0.987447 0.987430 0.987423 0.987421 0.987421 0.987421 0.987421
S34 Δ\Delta 0.0 0.57 1.1 1.7 2.3 2.8 3.4 4.0 4.5 5.1 5.7 0.2168
ZZ^{*} 1.000000 0.999182 0.998445 0.997991 0.997875 0.997843 0.997833 0.997832 0.997832 0.997832 0.997832
S35 Δ\Delta 0.0 0.65 1.3 1.9 2.6 3.2 3.9 4.5 5.2 5.8 6.5 0.1478
ZZ^{*} 1.000000 0.999383 0.998828 0.998545 0.998530 0.998523 0.998522 0.998522 0.998522 0.998522 0.998522
S36 Δ\Delta 0.0 0.56 1.1 1.7 2.2 2.8 3.4 3.9 4.5 5.1 5.6 0.8719
ZZ^{*} 1.000000 0.996699 0.993594 0.991802 0.991374 0.991324 0.991304 0.991291 0.991284 0.991281 0.991281
S37 Δ\Delta 0.0 0.65 1.3 1.9 2.6 3.2 3.9 4.5 5.2 5.8 6.5 3.0746
ZZ^{*} 1.000000 0.985972 0.972225 0.969320 0.969271 0.969257 0.969254 0.969254 0.969254 0.969254 0.969254
S38 Δ\Delta 0.0 0.65 1.3 2.0 2.6 3.3 3.9 4.6 5.2 5.9 6.5 1.1271
ZZ^{*} 1.000000 0.995359 0.990956 0.988909 0.988752 0.988731 0.988729 0.988729 0.988729 0.988729 0.988729
S39 Δ\Delta 0.0 0.61 1.2 1.8 2.4 3.0 3.6 4.2 4.9 5.5 6.1 0.4145
ZZ^{*} 1.000000 0.998126 0.996349 0.995896 0.995861 0.995856 0.995856 0.995855 0.995855 0.995855 0.995855
S40 Δ\Delta 0.0 0.65 1.3 2.0 2.6 3.3 3.9 4.6 5.2 5.9 6.5 0.3026
ZZ^{*} 1.000000 0.998797 0.997742 0.997134 0.996982 0.996976 0.996975 0.996974 0.996974 0.996974 0.996974
Table 5: Δ\Delta and optimal values of the price optimization problem with robust approach.