A standard tool for modelling real-world optimisation problems is mixed-integer programming (MIP). However, for many of these problems there is either incomplete information describing variable relations, or the relations between variables are highly complex. To overcome both these hurdles, machine learning (ML) models are often used and embedded in the MIP as surrogate models to represent these relations. Due to the large amount of available ML frameworks, formulating ML models into MIPs is highly non-trivial. In this paper we propose a tool for the automatic MIP formulation of trained ML models, allowing easy integration of ML constraints into MIPs. In addition, we introduce a library of MIP instances with embedded ML constraints. The project is available at https://github.com/Opt-Mucca/PySCIPOpt-ML.
翻译:对实际优化问题进行建模的标准工具是混合整数规划(MIP)。然而,对于许多此类问题,要么描述变量关系的信息不完整,要么变量之间的关系高度复杂。为克服这两大障碍,通常使用机器学习(ML)模型并将其作为替代模型嵌入MIP中以表征这些关系。由于现有ML框架数量庞大,将ML模型转化为MIP公式具有高度非平凡性。本文提出一种工具,可实现训练好的ML模型的自动MIP公式化表达,从而轻松将ML约束集成至MIP中。此外,我们引入一个包含嵌入式ML约束的MIP实例库。该项目代码开源地址为https://github.com/Opt-Mucca/PySCIPOpt-ML。