我正在尝试在全新的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
我在做什么错?这样一个简单的示例似乎应该很容易运行。
答案 0 :(得分:3)
您正在查看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在您的示例中本地计算机。