发表在 Manufacturing & Service Operations Management, 2016. DOI: https://doi.org/10.1287/msom.2015.0561.
Keywords: online retailing; flash sales; initial pricing; revenue management; price optimization; machine learning; regression trees; demand forecasting; demand interdependency; model implementation
这篇文章属于数据驱动的研究 (data-driven research),
Rue La La 是美国的一家线上时尚快消平台,致力于提供限时折扣(flash sales),它没有实体店,全靠与一些著名品牌(Coach, Gucci …)进行线上合作。
它的网站设计是这样的[1]:
映入眼帘的是一系列 events(如上图,Figure 1),每个 event 背后是由同一家设计商(designer)给出的一系列商品,在图片的最下方给出了“闪购”的截止时间,一般来说一个闪购持续2-4天。
当消费者点击了一个 ta 感兴趣的 event 之后,网页跳转到 event 的产品详细页(如下图,Figure 2),包含一些相似的折扣商品。每个产品的每个尺码是一个 SKU
Rue La La 的经销流程如下图所示:

首先,Rue La La 里的卖家从 designers 采购产品项(然后存储在 Rue La La 的仓库里[2]),以一个比较短而快的周期,卖家根据消费者需求和库存决定怎么开启 events,接着消费者下单,卖家将商品从仓库发往消费者所在地,产品售完即止,未出售和退货的商品会安排在以后的 event 中。Rue La La 每个 SKU 的平均库存是 10。
当某产品类型被第一次销售,我们称为 “first exposure styles“,这是 Rue La La 的主要营收来源。
Rue La La 面临的主要挑战是对 “first exposure styles“ 的产品进行需求预测和定价!
下图是销量前5的 department 的销售比(sell-through[3])

在 department1,51%的产品供不应求,而10%的产品销量不足库存的四分之一。给热销的产品提价,滞销的产品降价,可以提高 Rue La La 的利润。
文章设计的方法分为两步,先预测需求再做价格优化。
需求预测方面,主要的挑战是估计 lost sales,以及对没有历史数据的产品做需求预测。
价格优化方面,最大的挑战是,产品的需求与竞品的价格是直接相关的。
Our approach is twofold and begins with developing a demand prediction model for first exposure items; we then use this demand prediction data as input into a price optimization model to maximize revenue. The two biggest challenges faced when building our demand prediction model are estimating lost sales due to stock-outs, and predicting demand for items that have no historical sales data.
Demand Prediction Model
需求预测是最首要的问题!首先,文章考虑将几个产品项聚合在一起进行预测(aggregate our forecasts.),同一件产品的所有尺码被聚合在一起。
文章用 $\mathscr{S}$ 表示所有的 style,用 $\mathscr{S}(i)$ 表示 style $i$ 的所有尺码,$s \in \mathscr{S}(i)$ 表示一个确定的尺码,于是每个 SKU 可以用 $is$ 来表示。库存用 $C_{is}$ 来表示,如果需求是 $u_{is}$,那么只能观察到销售额 $d_{is} = \min\{C_{is}, u_{is}\}$。
需要用历史的销售数据来预测新产品的需求。
Data for Demand Prediction Model
文章所使用的数据包含 Rue La La 2011年到2013年中的每个 event 每个 item 的销售信息。文章主要设计了以下(Figure 5)用于预测需求的特征,其中有3个特征是与价格有关的。

其中一个重要的特征是相对价格(relative price),有研究证明消费者的决策会受到参考价格的影响。
Estimating Demand for Styles Sold in the Past
收集到的数据中只有 $d_{is}$,如果出现缺货,就会比 $u_{is}$ 更低,预测那些出现 stock-out 的产品的真实需求是一个重要问题!
文章使用没有缺货的产品的销售数据来估计缺货产品的真实需求。对每一个天数的 events,文章画出未缺货产品的以小时计的 demand curves,并在其上做 cluster analysis,对 two-day events 的聚促结果如下图:

文章发现,two-day events 的 demand curve 会根据促销开始时间呈现四种形式,如下图所示:

在这基础之上就容易设计方法估计 lost sales 了!
To estimate the demand for an item that did sell out, we identified the time that the item sold out and used the appropriate demand curve to estimate the proportion of sales that typically occur within that amount of time.
Predicting Demand and Sales for New Styles
这一步就是机器学习(预测)的事情了!

经过一番比较(如上图),文章最终使用了 regression tree 作为预测模型。
Discussion
文章讨论了一些用回归树来预测的优点:
- 回归树具有一定的可解释性
- 回归树不要求价格和需求呈负相关。实际上,一些实证研究发现,价格可能是质量的一种象征,价格上升需求不一定下降。
但是,回归树的非参数结构也给价格优化带来了困难。
下表(Table 1)是一些特征的重要性排序:

Price Optimization
Rue La La 没有能力决定每种产品的库存,它只能决定某种产品的某个尺寸是否进行销售。基于此,文章进一步要通过需求预测模型来找到最优的定价策略。
our focus is on using the demand prediction model to determine an optimal pricing strategy that maximizes revenue, given predetermined purchasing and assortment decisions.
用 $\mathscr{N}$ 表示某 subclass 下面所有的 styles,$N = |\mathscr{N}|$ 是产品 styles 的数量;$\mathscr{M}$ 表示所有可行的价格(Rue La La 定价一般以 4.9 / 9.9 结尾),$M = |\mathscr{M}|$ 是可行的价格数。
定价优化的目标是给这 $N$ 种产品打上价格使得期望利润最高,但是需求预测模型是非参数的,而且这里有 $M^N$ 种可能性,遍历每一种价格情景是计算上不可行的。文章利用了 relative price 是用单价除以同类产品总价计算得到,而同类产品总价的可能性只有 $O(MN)$ 个。
Integer Formulation
对于一个给定的产品子类总价 $k$,用二元变量 $x_{i, j}=1$ 表示商品 $i \in \mathscr{N}$ 定价为 $p_j \in \mathscr{M}$,这时候的最优定价方式由一个整数规划的解给出: $$ \begin{aligned} \max & \sum_{i \in \mathscr{N}} \sum_{j \in \mathscr{M}} p_j \,\mathbb{E}\left[D_{i, j, k} \mid p_j, k\right] \, x_{i, j} \\ \text { s.t. } & \sum_{j \in \mathscr{M}} x_{i, j}=1 \quad \forall i \in \mathscr{N}, \\ & \sum_{i \in \mathscr{N}} \sum_{j \in \mathscr{M}} p_j \: x_{i, j}=k, \\ & x_{i, j} \in\{0,1\} \quad \forall i \in \mathscr{N}, j \in \mathscr{M} . \end{aligned} $$ 其中 $\mathbb{E}\left[D_{i, j, k} \mid p_j, k\right]$ 是由回归树给出的期望需求。
对每一个 subclass 的每一个总价 $k$ 执行一次这样的回归树预测+整数规划,文章提到,是比较耗时的,因此他们进一步来优化了这个算法。
Efficient Algorithm
LP Bound Algorithm
Implementation and Results
这一部分,文章描述了新方法的实施过程(如下图,Figure 9)和 field experiment 的结果。

【实证,待续】
-
In some cases, the contract is such that the designer commits to selling up to X units of an item to Rue La La in a given time window, but Rue La La is not committed to purchasing anything. Rue La La plans an event within the time window, receives customer orders up to X units, and then purchases the quantity it has sold. There are a few changes to the model and implementation steps because of this type of contract, but for ease of exposition they have been left out of the paper.
-
sell-through: the ratio of the quantity of goods sold by a retail outlet to the quantity distributed to it wholesale.