文章信息
文章题为“Two-Stage Predict+Optimize for Mixed Integer Linear Programs with Unknown Parameters in Constraints”,该文于2023年发表在NeurIPS 2023。该文章提出了一种适用于未知参数出现在约束上的Predict+Optimize框架,该框架也能适用于混合整数线性规划问题。
摘要
Predict+Optimize是一个最近提出的框架,旨在通过在训练过程中整合有关优化问题的信息,进行端到端训练的监督学习模型,从而在真实参数下提高预测解的质量。在本研究中,作者提出了一个新的、更简单、更强大的框架,称为两阶段Predict+Optimize,作者认为这应该是Predict+Optimize设置的规范框架。作者还提供了一种适用于所有混合整数线性规划(MILP)的训练算法,以推广该框架的适用性。
引言
优化问题在现代社会中无处不在,但在求解时问题参数并不总是可用。例如,考虑商店补货的实际应用场景:作为商店经理,作者需要提前一个月下订单以补充货物。作者希望补充畅销且利润高的产品,尽可能多地补充,同时受限于有限的存储空间。然而,订单需要在下个月的交货前两周下达,而下个月的客户需求在下单时无法准确知道。作者考虑监督学习的设置,其中未知参数可以从相关特征中预测,并且有足够的历史(特征,参数)对作为训练数据用于预测模型。因此,目标是从训练数据中学习一个预测模型,以便将估计的参数代入优化问题并求解出估计解,即使在真实参数揭示后,估计解仍然保持良好性能。
作者的贡献有三方面:
1.作者提出一个新的框架,称为两阶段Predict+Optimize,该框架在概念上更简单,并且在其能够处理的优化问题类别上更具表达性。
2.在该框架下,作者进一步提出了一种通用的端到端训练算法,该算法不仅适用于包装和覆盖线性规划,还适用于所有混合整数线性规划(MILP)。
3.作者将所提出的方法应用于三个基准实验。
问题定义
优化问题(OP) 可以定义为寻找:
其中 是决策变量, 是目标函数, 是必须满足的约束集合。 为最优解, 为最优值。
参数化优化问题(Para-OP) 是OP 的扩展:
其中 是参数的向量。目标函数 和约束 都可以依赖于 。当参数已知时,Para-OP 仅是一个OP。
在Predict+Optimize设置中,对于Para-OP,真实参数 在求解时是未知的,而是使用估计参数 。假设每个参数由个特征估计。该估计将依赖于一个在个观察值的训练数据集 上训练的机器学习模型,其中 是对应于 的特征矩阵,从而产生一个预测函数 ,预测参数 。使用估计参数求解Para-OP,得到估计解 。
为了应对未知参数出现在约束中的情况,作者提出了一种二阶段Predict+Optimize框架,以解决这种情况下的问题。该框架如下:
I. 在第一阶段,未知参数被估计为 ,从特征中得到。然后,实践者解决第一阶段优化,即使用估计参数的Para-OP,以获得第一阶段解 。第一阶段解应解释为某种形式的软性承诺,作者可以在第二阶段以额外的成本/惩罚进行修改。假设使用第二节中Para-OP的符号,第一阶段OP可以表述为:
II. 在第二阶段开始时,真实参数 被揭示。第二阶段优化问题通过将惩罚项 添加到目标中来增强原始的第一阶段问题,该项考虑了从软性承诺的第一阶段解 更改到新的第二阶段和最终解 的惩罚(根据应用场景建模)。第二阶段OP可以表述为:
求解第二阶段问题得到最终的第二阶段“纠正”解 。
III. 第二阶段解 根据类似的后期遗憾进行评估,如下所示:
将后期遗憾作为损失函数,经验风险最小化原则指示作者选择预测函数为从模型集合 中获得的函数,使其在训练数据上的平均后期遗憾最小化:
用于混合整数线性规划问题的二阶段后优化
训练神经网络的标准方法是使用基于梯度的方法。在两阶段Predict+Optimize框架中,作者使用后期遗憾 作为损失函数。因此,对于神经网络中的每个边权重 ,作者需要计算导数 。根据全导数法则,作者得到:
对于项,因为 是神经网络的输出,因此可以通过标准的反向传播直接计算导数。
对于项 和,只要优化目标和惩罚函数是光滑的,实际上在MILPs的情况下是线性的,可以计算得到。
最后剩下的是项 和 。由于MILP最优解在小的参数扰动下可能不会变化,梯度可能为0或不存在,这些都是没有信息的,因此需要计算一些近似值以获得有用的训练信号。作者通过:
i) 放弃所有整数约束;
ii) 引入松弛变量 将 进行转换;
iii) 用对数障碍项替换 和 的约束,
将原优化问题转换为可微分的代理问题,如下所示:
以上可微分的代理损失函数获取的梯度可以求出项 和 。从而获取了神经网络训练所需要的梯度项,并实现了端到端神经网络的配置。
实验评估
作者在合金生产问题,0-1背包问题及护士排班问题上进行了基准实验。
合金生产问题
对于合金生产问题,基准实验结果如下所示:
表1 合金生产问题基准实验
0-1背包问题
对于0-1背包问题,基准实验结果如下所示:
表2 0-1背包问题基准实验
护士排班问题
对于护士排班问题,基准实验结果如下所示:
表3 护士排班问题基准实验
Attention
欢迎关注微信公众号《当交通遇上机器学习》!如果你和我一样是轨道交通、道路交通、城市规划相关领域的,也可以加微信:Dr_JinleiZhang,备注“进群”,加入交通大数据交流群!希望我们共同进步!