Nonconvex.jl icon indicating copy to clipboard operation
Nonconvex.jl copied to clipboard

Errors with some Ipopt Solver Settings

Open ccoffrin opened this issue 3 years ago • 4 comments

Given that #130 was resolved I wanted to checkout the performance of Zygote for AC-OPF (i.e. the rosetta-opf example). I ran into a couple issues you may have some ideas about,

    result = Nonconvex.optimize(
        model,
        IpoptAlg(),
        NonconvexCore.getinit(model);
        options = IpoptOptions(; first_order=false, symbolic=true, sparse=true), # works
        #options = IpoptOptions(; symbolic=true, sparse=true), # works
        #options = IpoptOptions(; first_order=false, sparse=true), # MethodError
        #options = IpoptOptions(; first_order=false, symbolic=true), # BoundsError
        #options = IpoptOptions(; first_order=false), # executes but does not converge, most likely incorrect derivatives
        #options = IpoptOptions(; symbolic=true), # BoundsError
        #options = IpoptOptions(; sparse=true), # works
        #options = IpoptOptions(), # executes but does not converge, most likely incorrect derivatives
    )

The executes but does not converge are the most mysterious to me because the code runs but with unexpected results.

It was not clear to me which AD backend was being used for these different settings, is there an easy way to query this in the result data?

CC @odow

ccoffrin avatar Sep 06 '22 18:09 ccoffrin

The documentation explains all these settings. I will look into these errors, thanks for the reproducer.

mohamed82008 avatar Sep 06 '22 18:09 mohamed82008

Could you please post a MWE to get the error? The code you linked to works for me.

mohamed82008 avatar Sep 09 '22 21:09 mohamed82008

ah sorry I missed that I had to replace the options

mohamed82008 avatar Sep 09 '22 21:09 mohamed82008

I can reproduce all the errors and non-convergence bugs you mentioned. Time to dig in...

mohamed82008 avatar Sep 09 '22 21:09 mohamed82008