在跳跃/gurobi中获取分支和绑定的节点计数



我正在尝试使用跳跃接口和julia中的gurobi求解器来获取分支和绑定的节点计数。

我尝试了Jump网站上建议的GetNodeCount(M(,但这又回来了。在进行更多研究之后,我阅读了尝试: MathProgBase.getnodecount(m)

一个简单的示例:

using Gurobi
using JuMP
using MathProgBase
m = Model(with_optimizer(Gurobi.Optimizer))
@variable(m, x, Bin)
@variable(m, y >=0)
@objective(m, Min, x*y)
optimize!(m)
println(value(x))
# getnodecount(m)
MathProgBase.getnodecount(m)

我期望获得一个节点计数为0,但会得到此错误:

LoadError: MethodError: no method matching getnodecount(::Model)

Closest candidates are: getnodecount(!Matched::Gurobi.GurobiMathProgModel) at /uliapro/JuliaPro_v1.1.1.1/packages/Gurobi/dlJep/src/MPB_wrapper.jl:759

您似乎正在使用新的MathOptInterface而不是MathProgBase。这就是为什么您没有获得GurobiMathProgModel而因此错误。在MathOptInterface中,您可以执行以下操作以获取节点计数。

MOI.get(model, MOI.NodeCount())

将调用此处实现的Gurobi.get_node_count(model::Model)方法。有关其他属性,请参阅MOI API参考。

最新更新