微软研究发布了 OptiMind,这是一个基于 AI 的系统,能将复杂决策问题的自然语言描述转化为优化求解器可执行的数学公式。该系统针对运筹学中长期存在的瓶颈,即通常需要专家建模和数天工作才能将业务意图转化为混合整数线性规划。
OptiMind-SFT 是一个专门的 200 亿参数专家混合模型,属于 GPT OSS 变换器家族。每个令牌激活约 36 亿参数,因此推理成本接近中型模型,同时保持高容量。上下文长度为 128,000 个令牌,允许在单个请求中包含长规范和多步推理轨迹。
模型以优化问题的自然语言描述作为输入。输出是数学公式以及使用 GurobiPy 的可执行 Python 代码。生成的脚本定义决策变量、约束和目标,调用 Gurobi 求解器,并打印最优目标值和决策。OptiMind 充当领域专家和标准 MILP 求解器之间的公式化层,不替代求解器,而是生成求解器将优化的 MILP。
基础模型是 openai/gpt-oss-20b,使用清理后的优化数据集微调为 microsoft/OptiMind-SFT。架构是专家混合变换器,每个令牌激活专家子集。模型在 MIT 许可证下发布。训练使用 8 个 NVIDIA B200 GPU,参考设置中的推理和评估使用 8 个 NVIDIA H100 GPU。报告的微调时间约为 8 小时。对于常规使用,团队建议在 A100、H100 或 B200 等硬件上至少有 32 GB GPU 内存。
对于监督微调,研究团队构建了 OR Instruct 和 OptMATH Train 的清理版本。对于测试,他们使用专家验证和重新清理的 IndustryOR、Mamo Complex 和 OptMATH 版本。这些基准涵盖硬公式化任务,现有模型在原始嘈杂版本上通常仅达到 20% 到 50% 的准确率。
OptiMind 的一个关键技术思想是将优化专业知识与 LLM 训练相结合。研究团队将 OR-Instruct 和 OptMATH 中的问题分类为 53 个种子类,例如集合覆盖、流水车间调度或旅行商问题。对于每个类,他们在问题样本上运行 gpt-oss-20b-base 模型,并选择模型输出与真实情况不一致的实例。优化专家检查这些项目,识别重复的公式化错误,并编写简短的错误描述和预防提示。这些提示描述正确的约束、变量边界或建模技巧,例如 TSP 的适当 Miller Tucker Zemlin 约束。
研究团队然后使用半自动化管道。他们用特定类的提示提示更大模型重新生成解决方案,应用跨样本的多数投票以提高解决方案质量,并丢弃仍然不一致的项目。他们还检测缺失参数和模糊语句,并在需要时重新生成问题描述。结果是清理后的训练语料库,更好地与正确的数学公式对齐。
在推理时,OptiMind 表现为多阶段系统,而不仅仅是单个提示。默认管道首先将每个测试实例分类为错误分析期间使用的 53 个优化类之一。然后,它用与该类相关的错误摘要和提示对增强提示。模型然后生成推理轨迹、数学公式和 GurobiPy 代码。当更多计算可用时,系统可以应用自一致性。