You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为JuMP最小化模型设置目标函数上界?

JuMP最小化问题设置目标上界的实现方法
  • 你需要的是目标截断(cutoff)功能,设置后求解器会直接剪去所有目标值高于该上界的节点,无需额外添加普通约束,剪枝效率更高。
  • 具体实现代码非常简单:先获取模型的目标函数表达式,直接给它设置上界即可,示例如下:
using JuMP, HiGHS # 导入JuMP和你使用的求解器
# 初始化模型
model = Model(HiGHS.Optimizer)
# 定义变量、约束
@variable(model, x[1:2] >= 0)
@constraint(model, sum(x) >= 4)
# 定义最小化目标
@objective(model, Min, 3x[1] + 5x[2])
# 给目标函数设置上界15,所有目标值超过15的可行解和节点都会被忽略
set_upper_bound(objective_function(model), 15)
# 正常求解即可
optimize!(model)
  • 如果你使用的求解器有专属的截断参数,也可以直接设置求解器参数实现相同效果,比如Gurobi的Cutoff参数、CBC的cutoff参数,设置逻辑和普通求解器参数一致。
搜索关键词参考

你之前只搜bound范围太广很难匹配到对应内容,可以用以下组合关键词搜索:

  • JuMP objective cutoff
  • JuMP minimization objective upper bound
  • MIP cutoff bound JuMP
  • 如果你使用特定求解器,可以加上求解器名称缩小范围,比如JuMP HiGHS objective cutoff

内容的提问来源于stack exchange,提问作者JKHA

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 18:15:03