Skip to content

Small change/fix in Mixed Riemanian Trust region solver

Müller, Alexander requested to merge smallRTRFix into master

The former implementation tests if the norm of the correction of the trust region sub problem is smaller than innerTolerance_ which is usually a small number. If the correction dX has a large magnitude, e.g. ||dX|| = 2. The for loop with innerIterations_ runs till the end because ||dX|| will always stay larger than innerTolerance_. And the full set of innerIterations_ is performed even if corr_global is already converged within machine precision. Therefore, to terminate the loop at a better time comparing innerTolerance_ to diff which measures the change of corr_global within the current iteration.

I discussed this with @jaap and @lnebel . Maybe you two can check if i missed something?

What do you think about this? @osander

Merge request reports