27#ifndef G2O_SOLVER_LEVENBERG_H
28#define G2O_SOLVER_LEVENBERG_H
50 virtual SolverResult
solve(
int iteration,
bool online =
false);
59 void setMaxTrialsAfterFailure(
int max_trials);
69 void setUserLambdaInit(
double lambda);
Property< double > * _userLambdaInit
double _goodStepUpperScale
Property< int > * _maxTrialsAfterFailure
double computeLambdaInit() const
std::unique_ptr< Solver > m_solver
OptimizationAlgorithmLevenberg(std::unique_ptr< Solver > solver)
double _goodStepLowerScale
int maxTrialsAfterFailure() const
get the number of inner iterations for Levenberg-Marquardt
virtual void printVerbose(std::ostream &os) const
int levenbergIteration()
return the number of levenberg iterations performed in the last round
virtual SolverResult solve(int iteration, bool online=false)
double computeScale() const
double currentLambda() const
return the currently used damping factor
Solver & solver()
return the underlying solver used to solve the linear system
OptimizationAlgorithmWithHessian(Solver &solver)