Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to specify NLP solver settings in GEKKO?

Tags:

python

gekko

I have a quick question,

In the documentation of GEKKO, it is mentioned "APMonitor provides the following to a Nonlinear Programming Solver (APOPT, BPOPT, IPOPT, MINOS, SNOPT) in sparse form".

I'd like to know how to change these settings in GEKKO. By default, I could see IPOPT in the results summary.

For instance, in this post m.solver_options is mentioned. But I'm not really sure how to use this to specify solver type (APOPT, BPOPT, IPOPT, MINOS, SNOPT).

Any suggestions on how to do this will be helpful

like image 678
Natasha Avatar asked Dec 17 '25 09:12

Natasha


1 Answers

GEKKO solver options can be changed as shown in the documentation. The solver can be changed with m.options.SOVLER=1 for APOPT, m.options.SOVLER=2 for BPOPT, and m.options.SOVLER=3 for IPOPT. There are other solver options, but not with the publicly available version. Here are a few options for APOPT:

m.solver_options = ['minlp_gap_tol 1.0e-2',\
                    'minlp_maximum_iterations 10000',\
                    'minlp_max_iter_with_int_sol 500']

Options for IPOPT are similarly specified with a comma between each entry. All options must be included as a single list with m.solver_options.

like image 100
John Hedengren Avatar answered Dec 20 '25 00:12

John Hedengren



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!