Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can OptimizationMOI use the common maxiters interface? #844

Open
SebastianM-C opened this issue Oct 21, 2024 · 3 comments
Open

Can OptimizationMOI use the common maxiters interface? #844

SebastianM-C opened this issue Oct 21, 2024 · 3 comments
Labels
question Further information is requested

Comments

@SebastianM-C
Copy link
Contributor

Question❓

I was wondering if there's something that prevents OptimizationMOI from using the globally passed maxiters. Currently (Optimization v4.0.3, OptimizationMOI v0.5.0), when I pass that, I get

┌ Warning: common maxiters argument is currently not used by Feasibility
│ 
│ Subject to:
│ 
│ Nonlinear
│ . Set number of iterations via optimizer specific keyword arguments.
└ @ OptimizationMOI ~/.julia/packages/OptimizationMOI/tpWKG/src/OptimizationMOI.jl:87
@SebastianM-C SebastianM-C added the question Further information is requested label Oct 21, 2024
@Vaibhavdixit02
Copy link
Member

The issue is that specific solvers need differently named arguments for this so there isn't an obvious mapping

@SebastianM-C
Copy link
Contributor Author

SebastianM-C commented Oct 27, 2024

I see...
I was wondering where can I look into the details for Ipopt in particular, as I'm using "max_iter" => x for setting the maxiters, but that doesn't correspond to what opt_state.iter considers as iterations. I think that in the optimization state we get some internal iterations too, so I was wondering if I'm using the wrong argument or if there's a bug / different convention used in Optimization.jl

@ChrisRackauckas
Copy link
Member

maxiters needs should just do the natural thing with each solver. Of course some solvers will have outer and inner iterations etc. but nobody will look into it. We need to stand by the same principle everywhere: the simple things should work, and the complex things should be possible.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

3 participants