Closed JesseJenkins closed 9 years ago
Could you provide the versions for julia and the packages? (with VERSION
and Pkg.status()
)
cc @tkelman, any ideas?
Hi Joe, I updated the initial post with the Julia version number (0.3.11) and the Pkg.status output just a moment ago. Cheers, Jesse
Try using BonminNLSolver
from the AmplNLWriter package (which depends on CoinOptServices for the Bonmin binaries)
Hi Miles. I tried running bonmin using AmplINLWriter and got the following error:
using JuMP
using AmplNLWriter
CPrice = Model(solver=AmplNLSolver("bonmin"))
#[model formulation here...]
solve(CPrice)
Produces:
ERROR: could not spawn
bonmin -s /Users/jessedj/.julia/v0.3/AmplNLWriter/.solverdata/model.nl ''
: > no such file or directory (ENOENT) in _jl_spawn at process.jl:217 in spawn at /Applications/Julia-0.3.11.app/Contents/Resources/julia/lib/julia/sys.dylib (repeats 2 times) in optimize! at /Users/jessedj/.julia/v0.3/AmplNLWriter/src/AmplNLWriter.jl:272 in solvenlp at /Users/jessedj/.julia/v0.3/JuMP/src/nlp.jl:498 in solve at /Users/jessedj/.julia/v0.3/JuMP/src/solvers.jl:14
Did the path to the bonmin and couenne solvers get screwed up somehow when I updated CoinOptServices? It seems like somehow my install of CoinOptServices is not working properly, and the solver binaries can't be found.
Update:
Using the following syntax works to call the NL solvers:
# These both work:
CPrice = Model(solver=CouenneNLSolver())
CPrice = Model(solver=BonminNLSolver())
#This however doesnt work:
CPrice = Model(solver=AmplNLSolver("bonmin"))
Both NL solvers are executing for me now using the above syntax. So I guess this is resolved, although I'm still not sure why the CoinOptServices based calls stopped working for me when they worked with the exact same syntax earlier this week.
Thanks for your help Miles.
Thanks for the report. This looks like it's an issue with a change I recently made in LightXML. Can you do Pkg.test("LightXML")
? If that fails, we should close this here and reopen over there.
Hi Tony,
I ran the Pkg.test and it passed:
Pkg.test("LightXML") INFO: Testing LightXML running parse.jl ... running create.jl ... running cdata.jl ... INFO: LightXML tests passed INFO: No packages to install, update or remove
Oh, I think I know what this is. I probably just need to tag CoinOptServices to make it work properly with a precompiled LightXML. If you do Pkg.checkout("CoinOptServices")
does everything work again? If so, I'll let you know when I've tagged then you can do Pkg.free("CoinOptServices")
to avoid always pulling from tip-of-master.
okay, will tag then
The null pointer error is avoided if I run Pkg.checkout("CoinOptServices) (and still persists if I don't run it).
Thanks for verifying. I tagged a new version last night.
I've been using CoinOptServices to run the bonmin nonlinear solver and it has been working well, until a recent Pkg.update() today. Now I'm getting the following error when attempting to execute the model solve.
The same error is generated when I tried to switch to using the couenne nonlinear solver instead, so I think the issue is with CoinOptServices rather than the specific solver.
My setup is as follows:
At that stage I get the above error. I can supply the full model code, but would prefer not to as it is research-in-progress...
Here's the current Pkg.status() results showing the versions of each package I have installed. I'm using Julia v.0.3.11
Thanks for the assistance. Jesse Jenkins PhD student MIT Institute for Data Systems and Society