Markus Moll a3fb17c8de Use elliptical trust region in DoglegStrategy.
In the Levenberg-Marquardt algorithm, the diagonal of J^T J is used to
regularize the problem. This corresponds to an elliptical trust region
|| D step || <= r, where D = sqrt(diag(J^T J)).

This commit adds the same elliptical trust region to the dogleg
strategy. The trust region problem becomes

  min. x^T H x + g^T x
  s.t. || D x || <= r

By substituting y = D x, it becomes

  min. y^T D^-1 H D^-1 y + g^T D^-1 y
  s.t. || y || <= r

which is the traditional spherical trust region problem.
This commit changes the DoglegStrategy so that the Gauss-Newton point,
the gradient, and the Cauchy point are scaled correctly (without
modifying the Jacobian directly). Then the dogleg step is computed the
same way as before, and finally the step is rescaled to obtain
x = D^-1 y.

Change-Id: Iea25a9113ecba911b746e269bc6e6fe51cb59003
2012-08-15 12:01:13 -07:00
2012-08-02 18:35:16 -07:00
2012-04-30 23:09:08 -07:00
2012-07-19 12:03:36 -07:00
2012-07-19 12:11:32 -07:00
2012-06-17 18:59:34 -07:00
2012-04-30 23:09:08 -07:00
2012-08-14 14:47:13 -07:00

Ceres Solver - A non-linear least squares minimizer
==================================================
Please see ceres-solver.pdf in docs/ for a tutorial and reference.
S
Description
No description provided
Readme Multiple Licenses 42 MiB
Languages
C++ 94.4%
CMake 3.8%
Python 0.8%
C 0.5%
Starlark 0.4%