如何在JuMP Gurobi中存储根松弛目标值?
在JuMP与Gurobi中获取根松弛目标值的方法
不需要解析终端输出,直接通过Gurobi的底层属性就能获取根松弛目标值,步骤如下:
- 先创建JuMP模型并完成求解
- 获取Gurobi的底层模型对象
- 调用Gurobi的属性接口读取根松弛目标值
示例代码:
using JuMP, Gurobi # 初始化模型与求解器 model = Model(Gurobi.Optimizer) # 此处添加你的变量、约束与目标函数定义... # 执行求解 optimize!(model) # 获取Gurobi底层模型实例 gurobi_model = backend(model).optimizer.model.inner # 读取根松弛目标值 root_relaxation_objective = Gurobi.get_runtime_attribute(gurobi_model, "RootObjVal")
补充说明
RootObjVal是Gurobi官方提供的属性,专门用于返回根节点松弛后的目标值,仅适用于混合整数规划(MIP)问题- 若需要获取根节点的其他松弛信息,比如上下界,可以使用
RootLowerBound、RootUpperBound等属性,调用方式与上述一致 - 确保你的Gurobi版本支持该属性,主流新版本均已包含此功能
内容的提问来源于stack exchange,提问作者JKHA
相关产品推荐
相关产品推荐

