-
Notifications
You must be signed in to change notification settings - Fork 51
Improve subsolver BNTR #328
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
Conversation
Codecov Report
@@ Coverage Diff @@
## main #328 +/- ##
==========================================
- Coverage 90.85% 90.70% -0.16%
==========================================
Files 171 173 +2
Lines 12439 12825 +386
==========================================
+ Hits 11302 11633 +331
- Misses 1137 1192 +55
Continue to review full report at Codecov.
|
docs/source/how_to_guides/optimization/how_to_specify_algorithm_and_algo_options.rst
Show resolved
Hide resolved
docs/source/how_to_guides/optimization/how_to_specify_algorithm_and_algo_options.rst
Outdated
Show resolved
Hide resolved
docs/source/how_to_guides/optimization/how_to_specify_algorithm_and_algo_options.rst
Outdated
Show resolved
Hide resolved
src/estimagic/optimization/subsolvers/_conjugate_gradient_quadratic.py
Outdated
Show resolved
Hide resolved
src/estimagic/optimization/subsolvers/_steihaug_toint_quadratic.py
Outdated
Show resolved
Hide resolved
src/estimagic/optimization/subsolvers/_steihaug_toint_quadratic.py
Outdated
Show resolved
Hide resolved
src/estimagic/optimization/subsolvers/bounded_newton_quadratic.py
Outdated
Show resolved
Hide resolved
src/estimagic/optimization/subsolvers/bounded_newton_quadratic.py
Outdated
Show resolved
Hide resolved
janosg
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks a lot! This is very important for pounders and tranquilo!
In this PR, we improve the conjugate gradient step of the BNTR (Bounded Newton Trust-Region) algorithm by adding two conjugate gradient methods.
Previously, the only available option was an off-the-shelf conjugate gradient implementation.
The new methods are:
The respective flags for our three methods are:
TRSBOX performs best on the
more_wildbenchmark set and is thus the recommended default.