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

[WIP] Fix HagerZhang bugs #136

Merged
merged 3 commits into from
Nov 6, 2018

Conversation

mohamed82008
Copy link
Contributor

@mohamed82008 mohamed82008 commented Nov 1, 2018

This PR closes #133, #134, and #135. There is one error I am getting in LineSearches tests which seems unrelated to the changes made. Optim tests pass. I will look into this further. Also, I need to check if other places error when the search direction is not a descent direction and try to make it robust to computational error when starting at the optimal solution. Finally, someone please comment on my use of mayterminate since I don't understand how it will be used apart from checking when the quadratic step is taken.

@mohamed82008
Copy link
Contributor Author

mohamed82008 commented Nov 2, 2018

I think this is good to go with the exception of some tests failing. The tests are maybe depending on the old behavior? Does that make them good tests? Any help there is appreciated. Optim tests pass, so that's a sign that I didn't totally screw up.

@pkofod
Copy link
Member

pkofod commented Nov 2, 2018

I think that test is probably just check that behavior hasn't changed, but it seems quite likely that your changes come with changes to that exact step length. I Don't have time right now, but I'll review asap.

@anriseth
Copy link
Collaborator

anriseth commented Nov 2, 2018

The tests are maybe depending on the old behavior? Does that make them good tests?

Most are just to flag if we unintentionally change behaviour and are not good tests. They were added long after the implementation of the algorithms so little thought has been put into them. Feel free to update them if you believe the new behaviour is the correct one ;)

@mohamed82008
Copy link
Contributor Author

All good now.

@codecov
Copy link

codecov bot commented Nov 6, 2018

Codecov Report

Merging #136 into master will decrease coverage by 27.17%.
The diff coverage is 49.05%.

Impacted file tree graph

@@             Coverage Diff             @@
##           master     #136       +/-   ##
===========================================
- Coverage   69.92%   42.74%   -27.18%     
===========================================
  Files           8        8               
  Lines         389      648      +259     
===========================================
+ Hits          272      277        +5     
- Misses        117      371      +254
Impacted Files Coverage Δ
src/hagerzhang.jl 33.9% <29.41%> (-22.72%) ⬇️
src/initialguess.jl 79.12% <58.33%> (-10.49%) ⬇️
src/static.jl 50% <0%> (-37.5%) ⬇️
src/morethuente.jl 26.84% <0%> (-32.47%) ⬇️
src/LineSearches.jl 67.85% <0%> (-32.15%) ⬇️
src/backtracking.jl 58.97% <0%> (-26.22%) ⬇️
src/strongwolfe.jl 50% <0%> (-24.29%) ⬇️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 1f40bf3...190ce84. Read the comment docs.

@pkofod pkofod merged commit fae0768 into JuliaNLSolvers:master Nov 6, 2018
@pkofod
Copy link
Member

pkofod commented Nov 6, 2018

Thanks! I believe code coverage is really bugged in julia these days..

@pkofod
Copy link
Member

pkofod commented Nov 6, 2018

I've tagged a bugfix release https://github.com/notifications

@mohamed82008
Copy link
Contributor Author

Awesome thanks for the quick merge!

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.

Initial HagerZhang: norm(gr) -> norm(gr)^2
3 participants