One embodiment is directed generally to a computer system, and in particular to a computer system that optimizes product pricing.
Product line pricing is an important business problem faced by retailers and other sellers of merchandise who employ dynamic pricing strategies to generate incremental revenue benefits throughout the year. Retailers, among others, have in increasing numbers begun to utilize decision support systems that leverage the large volume of detailed demand data to automate and optimize pricing recommendations. In particular, the statistical modeling of the price elasticity of items based on analyzing the effect of price changes of one product on its demand, or the demand for another product, can be used to optimize the pricing of products.
Known price optimizers, in general, are given a set of items in a product category together with their current prices and demand cross-elasticity. The optimizers then find a new set of prices that would satisfy all business rules and maximize the profit margin by taking into account some soft price constraints and allowed prices.
Some optimizers determine a product markdown optimization pricing. Markdown pricing is an essential part of the merchandise item lifecycle pricing. In general, a typical retailer has between 20% and 50% of the items marked down (i.e., permanently discounted). According to a survey, more than 72% of all fashion items sold were sold at an average discount of about 25%. Most of the European fashion retailers have 30-40% of their sales volume generated at marked-down prices.
The objective of a markdown optimization problem is to find a non-increasing sequence of merchandise prices to maximize the revenue subject to limited non-replenishable inventory, clearance period length, and demand dependency on price. Frequently, numerous business rules are imposed that make this problem even more challenging and complex even for a single product.
One embodiment is a system that determines markdown product pricing for a plurality of items over a plurality of time periods. The system receives a non-linear time-dependent problem, where the non-linear time-dependent problem comprises a demand model. The system determines approximate inventory levels for each item in each time period and, for a plurality of pair of items in a product category, determines coefficients for a change in demand of a first product at each of the plurality of time periods when a price of a second product is changed using initial prices and initial approximate inventory levels. The system generates an approximate Mixed Integer Linear Programming (“MILP”) problem comprising a change of demand based on a sum of the determined coefficients. The system then solves the MILP problem to generate revised prices and revised inventory levels.
When the generated revised prices and revised inventory levels do not satisfy a convergence criteria after the solving, the system repeats the determining coefficients, the generating the approximate MILP problem and the solving the MILP problem using the revised prices and the revised inventory levels as the initial prices and initial approximate inventory levels until the convergence criteria is satisfied. When the convergence criteria is satisfied, the system assigns the revised prices as the markdown product pricing.
a and 4b are graphs showing the effect of inventory approximation on optimality and the quality of the inventory approximation, respectively, in accordance with embodiments.
One embodiment solves the markdown optimization problem for multiple products. As compared to a single product optimizer, solving for multiple products is more difficult to solve due to cross-product price effects and markdown budget constraints. The former occurs when changing the price for one product affects demand for another. The latter imposes limits on how much the entire on-hand merchandise inventory can be discounted.
One embodiment uses time-dependent merchandise prices as the decision variables. Embodiments assume that the prices can be changes on a periodic basis (e.g., weekly) and are taken from a given discreet set of prices, referred to as a “price ladder.” For example, prices may be required to end only with 0.99 cents. Embodiments in general utilize an objective function that is non-linear and time-dependent. In general, and in accordance with embodiments of the present invention, a time-dependent price optimization problem can be stated as follows: Find the best prices (p1t, . . . , pnt) for the n product items at each time-period “t” over the selling season in a given merchandise category that maximizes the total profits subject to certain constraints, when demand for the ith item at time t is expressed as a given function sit=ƒit(p1t, . . . , pnt) (i.e., the “demand model”).
Many real-world optimization problems are formulated to minimize or maximize a nonlinear time-dependent function of discrete variables subject to certain constraints involving that function or some linear functions of its arguments. An example of this problem type is the maximization of some objective function (e.g., the total profits or total revenues) for several merchandise items in a product category where demand for each item is expressed as a nonlinear function of all item prices, which can take values only from specific price ladders (i.e., a set of allowed prices), with the pricing dependent on time periods during the selling season. For example, men's suits may have four distinct selling seasons: Winter, Spring, Summer and Fall, or Graduation season, Wedding season, etc. Seasonality can play large role in some grocery products. For example, pumpkin-related items can have a regular and holiday season, cold beverages can see spike in sales in summer months compared to winter months, etc.
This class of problems is known to be difficult to solve to optimality and even finding a high-quality approximate solution is generally intractable. Since the demand function is typically not assumed to be convex or concave, these problems also are not typically solvable by gradient methods even if the price ladder constraint is relaxed and price variables are considered continuous.
Two known examples of modeling product demand as a function of product prices include the “SCAN*PRO” demand model, disclosed for example in K. Talluri and G. Van Ryzin, “The Theory and Practice of Revenue Management”, Chapter 5, Springer 2005, and the multinomial logit (“MNL”) choice-based demand model disclosed in S. Subramanian and H. Sherali, “A fractional programming approach for retail category price optimization”, Journal of Global Optimization (2010) 48:263-277 (“Subramanian”).
In the SCAN*PRO demand model, the demand for the ith item is expressed as:
where di0 is demand at initial prices (p10, . . . , pn0).
In the MNL choice-based demand model, the demand is expressed as
where Ui(pi) is a utility function based on price pi of the ith item and θ(p1, . . . , pn) is the calibration parameter based on all product prices.
In known product pricing optimizers that generate optimized prices, the optimization problem is typically solved by a series of greedy searches, which sometimes delivers a solution far from optimal. Other known approaches are based on linear or quadratic approximations of the nonlinear demand function. However, these approaches tend to suffer from insufficient accuracy (linear approximation) or an overwhelming number of integer variables needed to formulate the problem.
Further, other approaches consider only a single product, as opposed to multiple products with cross effects to be marked down. Other approaches are based on dynamic programming formulations, which result in searching through an extremely large state-space.
In Subramanian, the disclosed algorithm is designed to solve the optimization problem for the MNL-based demand model by relying on transformed variables and a piecewise linear approximation. However, this approach depends on the properties of the specific functional form for demand (i.e., the MNL). The solution to the price optimization problem becomes even more challenging when a time dimension is included.
Computer readable media may be any available media that can be accessed by processor 22 and includes both volatile and nonvolatile media, removable and non-removable media, and communication media. Communication media may include computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media.
Processor 22 is further coupled via bus 12 to a display 24, such as a Liquid Crystal Display (“LCD”), for displaying information to a user. A keyboard 26 and a cursor control device 28, such as a computer mouse, is further coupled to bus 12 to enable a user to interface with system 10.
In one embodiment, memory 14 stores software modules that provide functionality when executed by processor 22. The modules include an operating system 15 that provides operating system functionality for system 10. The modules further include a multi-product markdown pricing module 16 that generates optimized multi-product markdown pricing, as disclosed in more detail below. System 10 can be part of a larger system, such as an enterprise resource planning (“ERP”) system. Therefore, system 10 will typically include one or more additional functional modules 18 to include the additional functionality. A database 17 is coupled to bus 12 to provide centralized storage for modules 16 and 18 and store pricing information, inventory information, ERP data, etc.
One embodiment obtains a high-quality approximate solution to the multi-product optimization problem by taking advantage of the discrete nature of the variables. Embodiments work for a general class of problems, and is not limited to pricing problems.
In one embodiment, at least the following constraints are considered and utilized:
Demand model: The demand model assumes infinite population with myopic (non-strategic) customers. Further, the model does not account for demand dependency on the previous sales (i.e., the demand in time period t, is only function of prices in period t).
Budget constraints: The budget constraints span several pricing decisions within a specified time period. For example, if the pricing is performed on a weekly basis, the budget constraint may be imposed on a monthly or quarterly basis as follows: ΣtεQΣi=1nΔpitIit≦BQ, where i is the merchandise item index, n is the number of items in the category, t is the pricing decision time index, Q is the markdown budget period, Δpit is the markdown price change of item i at time t, and Iit is the inventory level.
Sell-through constraints: A sell-through constraint is the constraint that the retailer targets to clear a specified percentage of the inventory, and the unsold inventory at the end of the selling horizon is salvaged or liquidated.
Maximum number of markdowns for multiple products per period: There is a cost associated with implementing a markdown, and therefore the retailer imposes a restriction on how many products can be marked down in a particular period.
Maximum number of markdowns for a specific product till exit date: Retailers impose this restriction as frequent markdowns will cause customers to devalue the current markdown.
Minimum or Maximum markdown depth: The maximum depth of markdown is imposed as some products are dictated by brand image, vendor contracts, etc., and therefore retailers will not be able to take deep discounts. The minimum depth is imposed to make the markdown effective and thus elicit a sufficient lift in the demand from the customers.
Minimum time between consecutive markdowns: The minimum time constraint is that a retailer has to wait until a few time periods before another markdown can be considered. The justification for this includes the cost of implementation and the potential devaluation of the brand image through frequent markdowns.
Different exit dates: An exit date constraint accounts for the shortened lifecycle of some products. This can arise due to various reasons, including varying shelf-life, earlier time of introduction to the market, need to clear inventory for next season, etc.
Embodiments use variables defined as follows:
The problem to be solved by embodiments of the present invention can be defined as follows (“equations 1-13”)
At 202, the original, generally non-linear time-dependent price optimization problem is read from the input stream or retrieved from memory. In one embodiment, the time-dependent price optimization problem is the problem disclosed by equations 1-13 above, and includes a demand model. However, other problems/demand models can be used. In one embodiment, the revenue is maximized for several merchandise items in a category, where demand for each item is expressed as a nonlinear function of all item prices, which can take values only from specific price ladders (i.e., a set of allowed prices) with the pricing dependent on timing periods during the selling season. Input parameters can include various complex time-dependent aspects such as maximum number of price changes per period per item and per item constant price period requirements. Initial prices are included as input to the optimization problem. The initial prices are typically specified by the retailer.
At 204, the approximate inventory levels for each item in each time period are determined (i.e., approximate inventory levels for ith item at time t). The trajectory of inventory is assumed to follow a particular functional form with respect to time (e.g., linear form).
At 206, original prices are set to the prices read from the input at 202 or set to optimal values from the previous iteration coming from 216. Similarly, inventory levels are set to computed inventory levels from 204 or optimal levels from the previous iteration coming from 216.
At 208, for every pair of products in a common product category at each time period, the changes in the demand of the first product when the price of the second product is changed from the base (usually initial) level to various other levels in the price ladder of the second product is determined as coefficients. A pair of products may be related products that can be substituted for each other, such as be 2% organic milk and 2% regular milk. The determined coefficients will be usually relatively large when the first and the second products are the same type of products, reflecting strong dependency of product demand on its own price. On the other hand, when the products are different, the corresponding demand changing coefficients are relatively small reflecting relatively weak cross-product effect.
At 210, an approximate Mixed Integer Linear Programming (“MILP”) is formulated, as disclosed in more detail below, where change in demand for any given product at time t is calculated as the sum of the coefficients determined at 208 for the corresponding price setting over all products including the given product. All other constraints of the original problem are linear by definition and do not need to be changed.
At 212, the approximate MILP of 210 is solved using any known MILP solver.
At 214, the prices and inventory levels are checked for convergence criteria. The loop will terminate if the convergence criteria are satisfied and then the functionality continues at 218. In one embodiment, the convergence criteria for inventory can be: compute the absolute difference between approximate inventory levels and the optimal inventory levels and if the error is less than a pre-specified value, convergence criteria for inventory is satisfied. A similar convergence criteria can be used for price levels. Otherwise, the functionality continues at 216.
At 216, optimal values for prices and inventory for each item and time period determined at 212 are used as new starting values for the prices and inventory levels.
At 218, the solution to the original problem is restored from the approximate MILP by setting the price for each product to the one corresponding to the non-zero binary variable. The constraints of the approximate MILP guarantee that for each product only one binary variable indicating the optimal price in the price ladder is set to one while the others are set to zero.
At 220, the pricing solution to the original problem is written to the output stream for reporting and other interface purposes and for determining optimized pricing
In order to formulate the MILP at 210 above, it is assumed that the sales in a given week depend only on the prices of that week, and can be any time-dependent function. Further, it is assumed that the current (potentially infeasible) solution is (p10, . . . , pn0) and the objective is to find the new price vector at each time period over the time horizon in the vicinity of the initial solution. However, embodiments are not limited by these assumptions.
First, the demand value at time t is denoted by si0(t) where the initial prices are set (i.e., si0(t)≡ƒit(p10, . . . , pn0)) and the set of coefficients is introduced to express the difference between demand value when only one price is changed and the current demand at time t:
δijm(t)=ƒit(p10, . . . ,pj−10,pjm,pj+10, . . . ,pn0)−si0(t).
Second, binary decision variables xim(t) are introduced that indicate whether the ith price variable at time t was assigned to the mth price in its ladder:
Finally, after introducing a similar set of continuous auxiliary variables yim(t) the following MILP problem is formulated:
As shown, in one embodiment, instead of a general objective function, the total revenue is maximized without discount factor. Further, by using approximate inventory levels it is possible to substitute complex markdown budget constraints in the above formulation with simpler constraints:
where Îit is the approximation of inventory level for item i at time t. After each iteration, the inventory level approximation is recomputed at 216 of
The solution to the MILP problem serves as an approximation to the exact solution of the original problem of equations 1-13 above. Indeed, it is guaranteed that exactly one xim(t) variable is equal to one for each item i at each time t, which also implies that only one yim(t) variable is non-zero. It is also imposed that the non-zero yim(t) variable is equal to the demand approximation. Finally, the constraints on feasible price (demand and revenue, respectively) regions are similar than the one in the original formulation. The above MILP approximation problem can be solved by any widely available MILP solver within the time frame acceptable for most practical applications.
As disclosed, using the MILP when solving the problem of equations 1-13 above provides a near-optimal solution subject to multiple constraints and non-zero cross-item elasticity. Embodiments provide several advantages compared to known approaches that are based on optimizing individual items.
To demonstrate some advantages, calculations were conducted for sets of eight items with SCAN*PRO demand models using sparse asymmetric elasticity matrices. In a first series of calculations, the total revenue obtained subject only to budget constraints was compared. The known approach used a heuristic based on a multiple choice knapsack optimization on a week-by-week basis. For a given week the known approach computes the markdown cost for the week and revenue for the remaining period based on the previous markdown history. Then, a multiple choice knapsack problem is solved to maximize the total revenue in the remaining period subject to markdown budget for the current week. It was shown that the embodiments of the present invention provide a solution that is approximately 1.5% better than the one obtained by known approaches.
In the other set of calculations, the revenue loss caused by ignoring the cross-elasticity effects is estimated. First, the revenue from the price trajectories obtained by solving the problem with cross-elasticities set to zero is determined. Then, the problem was solved with actual non-zero cross-elasticities. Results demonstrated that in some cases the revenue difference can be as high as 10% using embodiments of the present invention.
In addition to the revenue gains, and in contrast to known approaches, embodiments of the present invention can jointly handle multiple constraints such as a markdown budget, sell-through constraints, and a maximum number of price changes per item and per period. In general, the inability of known approaches to work with sell-through constraints for the inelastic items caused skewed elasticity estimation to force inelastic items to be considered elastic. In addition, embodiments can be fairly easily extended to include such important features as inventory effect.
a and 4b are graphs showing the effect of inventory approximation on optimality and the quality of the inventory approximation, respectively, in accordance with embodiments. As shown in
Several embodiments are specifically illustrated and/or described herein. However, it will be appreciated that modifications and variations of the disclosed embodiments are covered by the above teachings and within the purview of the appended claims without departing from the spirit and intended scope of the invention.