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

RFC: Implement cubic backtracking #20

Merged
merged 5 commits into from
Dec 23, 2016
Merged

RFC: Implement cubic backtracking #20

merged 5 commits into from
Dec 23, 2016

Conversation

anriseth
Copy link
Collaborator

I've updated the backtracking algorithm to use either quadratic or cubic interpolation as described in Nocedal and Wright. Parameters are taken from there and from "Numerical Methods for Unconstrained Optimization and Nonlinear Equations" by Dennis and Schnabel, page 325.

This might break people's code, as I've updated the parameter list list for the algorithm (sorting out #9 will make changes like this much smoother)

Closes #13

@codecov-io
Copy link

codecov-io commented Nov 15, 2016

Current coverage is 66.50% (diff: 95.00%)

Merging #20 into master will increase coverage by 0.33%

@@             master        #20   diff @@
==========================================
  Files             6          6          
  Lines           603        612     +9   
  Methods           0          0          
  Messages          0          0          
  Branches          0          0          
==========================================
+ Hits            399        407     +8   
- Misses          204        205     +1   
  Partials          0          0          

Powered by Codecov. Last update d0ddd50...de8c311

@anriseth anriseth force-pushed the anriseth/backtracking branch from f88d251 to d5a7bfa Compare December 23, 2016 11:17
@anriseth anriseth force-pushed the anriseth/backtracking branch from 3455781 to a180e3e Compare December 23, 2016 12:29
@anriseth anriseth force-pushed the anriseth/backtracking branch from a180e3e to de8c311 Compare December 23, 2016 12:36
@anriseth
Copy link
Collaborator Author

@cortner FYI, your interpbacktrack! is now bt2!, but I have also changed the default values for c1 and c2 to the values they use in PETSc / "Numerical Methods for Unconstrained Optimization and Nonlinear Equations" by Dennis and Schnabel, page 325.

@cortner
Copy link
Contributor

cortner commented Dec 24, 2016

I know that a lot of texts recommend c1 = 1e-4, but it have never encountered a case in practise where this is a good choice. I have always found that values between 0.1 and0.25 are best when you use quadratic or cubic interpolation.

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

Successfully merging this pull request may close these issues.

3 participants