我想使用该MathProgBase
接口来制定优化问题。此外,我想使用开源求解器,例如NLopt
(或任何其他)。
https://github.com/JuliaOpt/NLopt.jl#using-with-mathprogbase上的文档提到NLopt
可以通过MathProgBase
. 不幸的是,我找不到一个万无一失的例子。另一方面,MathProgBase
不提NLopt
。所以让我们试试吧。这是代码:
using NLopt, MathProgBase
quadprog([0., 0., 0.],[2. 1. 0.; 1. 2. 1.; 0. 1. 2.],[1. 2. 3.; 1. 1. 0.],'>',[4., 1.],-Inf,Inf,NLoptSolver(algorithm=:NLOPT_AUGLAG))
我收到以下错误消息:
`loadproblem!` has no method matching loadproblem!(::NLoptMathProgModel, ::Array{Float64,2}, ::Array{Float64,1}, ::Array{Float64,1}, ::Array{Float64,1}, ::Array{Float64,1}, ::Array{Float64,1}, ::Symbol)
while loading In[1], in expression starting on line 2
in quadprog at /Users/harmeling/.julia/v0.3/MathProgBase/src/HighLevelInterface/quadprog.jl:46
怎么了?我对任何其他开源求解器也很好。对我来说重要的是使用MathProgBase
调用约定,如quadprog
. 谢谢你的帮助!