选择题设定 InterOPT 核心槽位精确召回 67.5%,开放问答仍有四成过早停问

Ask Before You Optimize: Dynamic Pre-Formulation Clarification for Interactive Optimization

Sihan Ge, Yichen Lin, Chenyu Zhou, Jianghao Lin, Tao Yao, Dongdong Ge

math.OC, cs.AI

2026-09-04

OR-Clarify 把建模前该不该问做成 100 题、178 个隐藏槽的基准。两阶段 InterOPT 在选择题设定下 Core Exact 达 67.5%,高于 MC-D 的 50.6%;开放问答里仍有 40.6% 的回合过早宣布可以建模。

这篇在解决什么

用 LLM 把自然语言业务描述写成优化模型,已经有 NL4Opt、OptiMUS、ORLM 这类工作。它们默认说明书是完整的。真实业务请求经常缺目标、缺约束、缺硬约束还是软约束。缺的那一块会改数学模型的结构:快递要不要回仓,未满足需求是必须满足还是罚款,时间窗能不能破。

现有评测几乎不问「现在能不能建」。强模型会在核心业务事实还没澄清时宣布 READYTOMODEL,或者默默填一个默认值。ORPilot 把访谈嵌进端到端流水线,但没有单独打「隐藏槽有没有问回来」。这篇把建模前澄清拆成独立任务:公开说明书够不够确定一个有意义的建模;不够,就用尽量少的轮次把会改结构的事实问回来。

方法

OR-Clarify 从完整、有出处的运筹任务记录出发,把事实拆开。业务场景和数值留在公开 brief 里,目标、约束、假设按固定种子大约遮一半。每个被遮的事实变成一个 hidden slot,带着只能基于该事实作答的模拟用户答案、可接受问法、语义召回规则,以及严重度 P0/P1/P2。P0 是会改问题本身的阻断条件,例如路径开放还是闭合;P1 是实质建模条件;P2 是次要边界。当前集:100 题、178 槽,每题 1 到 5 个(均值 1.78),75 个 P0、83 个 P1、20 个 P2。

评测时 agent 只看见公开 brief 和对话记录。模拟用户不主动泄露没问到的槽。主指标 Core Exact:一次运行里所有 P0/P1 槽必须全部精确召回才算过(100 题里 94 题有核心槽)。All-Slot Exact 把 P2 也算上。另记沉默假设、过早停止、平均轮次和原子问题数。每题跑 5 次,最多 20 轮。

InterOPT 分两段。Stage 1 Dynamic Gap Search 只在公开证据上找缺口,覆盖六类:目标与权衡、决策范围、操作约束、时间边界、实体关系、硬/软策略,每轮最多登记 3 条 Open。Stage 2 Gap-Guided Action Search 根据未关闭缺口决定问还是停;若要问,生成 3 个绑在缺口上的候选,再由选择器挑一个。账本空了不强制 READY,账本还有条目也不拦截停止。两边都看不到基准的隐藏槽。

结果

主实验用 DeepSeek V4 Pro。现成模型在两种协议下都过不了 60% Core Exact:Opus-4.8 最强,开放问答和选择题都是 0.583。

设定方法Core ExactAll-Slot ExactSilent/runAvg Q
ChoiceInterOPT0.6750.6380.36610.036
ChoiceMC-D0.5060.4740.6922.350
ChoiceReadyGate0.5170.4760.6142.892
OpenInterOPT0.5380.4920.5604.824
OpenORPilot0.5830.5460.2684.918
OpenGATE0.5600.5280.4124.818

选择题设定里,InterOPT 把核心精确召回从 MC-D 的 50.6% 拉到 67.5%,沉默假设从 0.692 降到 0.366,代价是原子问题数从 2.35 涨到 10.0。890 个被评判槽里,InterOPT 拿到 617 yes、20 partial、253 no,MC-D 是 461、16、413。提升几乎全是把没问到的槽问全,近错过问贡献很小。

开放问答里没有通吃的方法。ORPilot 召回最高,InterOPT 接近,但沉默假设更多。开放设定 500 次运行里 98.8% 会宣布可以建模,停止审计却标了 203 次(40.6%)过早。失败主要不是没问,是不知道问够没有。

消融在选择题里更清楚:去掉 Stage 1,Core Exact 掉 11.1 个点;去掉 Stage 2 掉 6.0 个点。开放设定里 Stage 1 对召回贡献更大,Stage 2 主要把问题数从 9.5 压到 4.8。

为什么重要

LLM 自动建模如果默认说明书完整,上线就会拿错模型去求解。这篇把「问还是建」做成可量化任务,并给出一套不训练、只改交互策略的两段式流程。对做优化 Copilot 的人,带选项、允许 D 纠正的选择题界面,比纯开放提问更容易把缺口问全;开放聊天里更难的是停。

InterOPT 不是全面胜利。开放设定它打不过 ORPilot,选择题的增益伴随着大约四倍的问话成本。

局限与存疑

基准只有 100 题,做法是把完整任务再遮起来。模拟用户严格按槽作答、不主动补充,比真人业务沟通干净得多,也可能更好问。「会改结构」的判定依赖标注,严重度是遮完之后才标的,不参与遮挡。主实验绑在 DeepSeek V4 Pro 上,换模型数字会动。

InterOPT 的停止权在模型手里,账本不保证发现所有缺口,也不保证安全停止。开放设定四成过早停止说明校准仍差。下游有没有建成正确模型、求出正确解,这篇没有评。论文把后续工作写成扩基准、提高问话效率、把停止校准做好。

术语

原文与代码

相关论文

全部论文解读