运行 JuMP 示例

Running JuMP example

我正在尝试 运行 在全新的 julia 安装(版本 1.0.2 (2018-11-08))上使用此示例:

https://github.com/JuliaOpt/JuMP.jl/blob/master/examples/basic.jl

但我总是遇到这个错误。

julia> using JuMP, Clp

julia> m = Model(with_optimizer(Clp.Optimizer))
ERROR: UndefVarError: with_optimizer not defined
Stacktrace:
 [1] top-level scope at none:0

我做错了什么?看起来这么简单的例子应该运行很容易。

您正在查看来自 GitHub 存储库 master 分支的示例。自上次发布以来,JuMP API 发生了重大变化。

您应该查看本地存储库中的 basic.jl 文件。它应该位于 ~/.julia/packages/JuMP/Xvn0n/examples/basic.jl 之类的目录位置(Xvn0n 部分在您的情况下可能不同,但路径模式应该相同;如果您在 Windows 上,则 ~ 是您的用户配置文件的目录)。

您所指的示例在包的发布版本中看起来像这样:

using JuMP, Clp

m = Model(solver = ClpSolver())

@variable(m, 0 <= x <= 2)
@variable(m, 0 <= y <= 30)

@objective(m, Max, 5x + 3y)
@constraint(m, 1x + 5y <= 3.0)

print(m)

status = solve(m)

println("Objective value: ", getobjectivevalue(m))
println("x = ", getvalue(x))
println("y = ", getvalue(y))

您还可以在此处找到最新版本的压缩源 https://github.com/JuliaOpt/JuMP.jl/releases/tag/v0.18.4,但当然随着新版本的发布,数字会发生变化,因此查看代码最可靠的地方是 JuMP 的示例在您的本地计算机上。