JuliaManifolds / Manopt.jl

🏔️Manopt. jl – Optimization on Manifolds in Julia
http://manoptjl.org
Other
321 stars 40 forks source link

`get_initial_stepsize` is not used? #222

Closed mateuszbaran closed 1 year ago

mateuszbaran commented 1 year ago

When working on line searches I've noticed that get_initial_stepsize doesn't seem to be called anywhere outside of tests. Is that right?

kellertuer commented 1 year ago

It was meant originally to get the first step in Armijo for example – I do not remember where else I planned it, but it was created together with the last_stepsize one.

But in November or so, we implemented the initial guess (based on a paper by Vandereycken who had a small computation for the initial guess even), that might have made the get_initial_step obsolete for now.

mateuszbaran commented 1 year ago

I was wondering if it can be used to hook up https://github.com/JuliaNLSolvers/LineSearches.jl/blob/master/src/initialguess.jl but perhaps not. Can Manopt do something like InitialConstantChange from that file?

kellertuer commented 1 year ago

I do not follow what your plans are?

kellertuer commented 1 year ago

Or to be precise get_initial_stepsize is meant for the solver/state, not for the linesearch. In line searches, most just store a last one (Nonmonotone/Wolfe ones) or have a function based on (p,s,i,l) so the problem, state, iteration as usual and the last stepsize (which defaults in Armio to returning l)

mateuszbaran commented 1 year ago

I see, so linesearch is fully responsible for that. My plan is to make the line search wrapper in #221 use initial guess from LineSearches.jl :slightly_smiling_face: .

kellertuer commented 1 year ago

That sounds like a good plan.