2. 问题定义与数学建模
在促销影响量化与层级预测的联合优化中,核心挑战在于:预测模型追求最小化误差,而业务部门追求最小化促销成本。两者天然存在张力——过度促销虽能压低库存误差,却侵蚀利润;预测模型若忽略促销杠杆,则误差飙升。本章将这一矛盾形式化为一个带约束的多目标优化问题,并给出可求解的数学表达。
2.1 联合优化的总体框架
联合优化问题可抽象为:在满足库存、产能、预算等约束的前提下,同时最小化层级预测误差与促销总成本。其数学形式为:
核心思想:将预测误差与促销成本加权求和,构成单一标量目标函数,通过调节权重 λ 实现误差‑成本帕累托前沿的遍历。
下图展示了联合优化问题的输入、决策变量、目标与约束的整体结构:
2.2 目标函数:预测误差与促销成本的加权和
设时间窗口为 T,层级结构为 L(如 SKU → 品类 → 区域)。定义:
- 预测误差项 E:采用加权均方误差(WMSE),对不同层级赋予不同权重 αl,以反映业务关注优先级。
- 促销成本项 C:包括直接折扣成本、营销执行成本、以及因促销导致的额外库存持有成本。
联合目标函数如下:
min J(d, f) = λ · E(d, f) + (1 - λ) · C(d, f)
其中:
E(d, f) = Σ_{l∈L} α_l · (1/T) · Σ_{t=1}^{T} (ŷ_{l,t}(d,f) - y_{l,t})²
C(d, f) = Σ_{t=1}^{T} [ c_d · d_t · base_price_t + c_f · f_t + c_h · max(0, I_t - I_target) ]
参数说明:
λ ∈ [0,1] —— 误差‑成本权衡系数
α_l ≥ 0, Σα_l = 1 —— 层级权重
d_t ∈ [0, D_max] —— t 期促销深度(折扣率)
f_t ∈ {0,1} —— t 期是否促销
ŷ_{l,t} —— 层级 l 在 t 期的预测销量(受 d_t, f_t 影响)
y_{l,t} —— 实际销量
c_d, c_f, c_h —— 折扣、固定促销、持有成本系数
I_t —— t 期末库存
关键洞察:预测误差项 E 通过 ŷ(d,f) 间接依赖于促销决策。这意味着促销不仅产生直接成本,还会通过改变需求模式影响预测精度。联合优化正是要捕捉这一双向耦合关系。
2.3 约束条件体系
约束条件分为三类:库存动态约束、预算与资源约束、业务规则约束。下表列出核心约束及其数学表达:
| 约束类别 | 数学表达式 | 说明 |
|---|---|---|
| 库存平衡 | It+1 = It + Pt - St(dt, ft) | 期初库存 + 生产/采购 - 促销影响下的销量 |
| 库存非负 | It ≥ 0, ∀t | 不允许缺货(或允许缺货但加惩罚项) |
| 促销预算 | Σt [cd·dt·base_pricet + cf·ft] ≤ B | 总促销支出不超过预算上限 B |
| 促销频次 | Σt ft ≤ Fmax | 窗口期内最多促销 Fmax 次 |
| 折扣幅度 | 0 ≤ dt ≤ Dmax | 折扣率不超过最大允许值(如 40%) |
| 层级一致性 | ŷSKU,t = Σi∈SKU ŷi,t | 预测在层级间满足加和一致性( reconciliation ) |
2.4 层级预测误差的分解与聚合
层级预测模型采用自底向上(Bottom-Up)与自顶向下(Top-Down)混合结构。联合优化中,误差项 E 需在层级间分解:
E_total = α_bottom · E_bottom + α_mid · E_mid + α_top · E_top
其中:
E_bottom = (1/N_sku) · Σ_{sku} (ŷ_sku - y_sku)²
E_mid = (1/N_cat) · Σ_{cat} (ŷ_cat - y_cat)²
E_top = (1/N_reg) · Σ_{reg} (ŷ_reg - y_reg)²
α_bottom + α_mid + α_top = 1
这种分解使得优化器可以针对不同层级分配误差权重。例如,若零售端更关注 SKU 级精度,则设 αbottom = 0.6,引导促销计划优先降低细粒度预测偏差。
2.5 完整数学形式化总结
将上述元素整合,联合优化问题的完整形式为:
联合优化问题 (JOP)
决策变量: dt ∈ [0, Dmax], ft ∈ {0,1}, ∀t = 1,…,T
目标函数: min J = λ · E(d,f) + (1-λ) · C(d,f)
约束条件:
1) It+1 = It + Pt - St(dt, ft), It ≥ 0
2) Σt [cd·dt·base_pricet + cf·ft] ≤ B
3) Σt ft ≤ Fmax
4) ŷl,t = gl(dt, ft, history), 满足层级加和一致性
5) dt ∈ [0, Dmax], ft ∈ {0,1}
决策变量: dt ∈ [0, Dmax], ft ∈ {0,1}, ∀t = 1,…,T
目标函数: min J = λ · E(d,f) + (1-λ) · C(d,f)
约束条件:
1) It+1 = It + Pt - St(dt, ft), It ≥ 0
2) Σt [cd·dt·base_pricet + cf·ft] ≤ B
3) Σt ft ≤ Fmax
4) ŷl,t = gl(dt, ft, history), 满足层级加和一致性
5) dt ∈ [0, Dmax], ft ∈ {0,1}
其中 gl(·) 表示层级 l 的预测模型(如 LightGBM + 时序分解),其输入包含促销决策变量,从而将预测与优化耦合。
2.6 求解策略概览
由于目标函数非凸且包含整数变量 ft,直接求解困难。本课程采用交替方向乘子法(ADMM)与代理模型(Surrogate Model)结合的思路:
- 外层循环:固定 λ,使用贝叶斯优化搜索促销计划 (d, f) 的候选解。
- 内层循环:对每个候选解,调用层级预测模型 gl 计算预测误差 E,同时计算成本 C。
- 约束处理:采用罚函数法将库存、预算约束加入目标,形成无约束问题。
- 帕累托前沿:遍历 λ ∈ [0,1],得到误差‑成本权衡曲线,供业务决策。
工程注意:实际部署时,预测模型 gl 的每次调用可能耗时 50-200ms。若 T=52 周、候选解 1000 个,单次 λ 扫描需 5 万次模型推理。必须使用模型蒸馏或离线预计算加速,否则无法满足月度滚动优化的时效要求。