gtsam  3.2.1
gtsam
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
gtsam::LevenbergMarquardtParams Class Reference

Detailed Description

Parameters for Levenberg-Marquardt optimization.

Note that this parameters class inherits from NonlinearOptimizerParams, which specifies the parameters common to all nonlinear optimization algorithms. This class also contains all of those parameters.

+ Inheritance diagram for gtsam::LevenbergMarquardtParams:

Public Member Functions

virtual void print (const std::string &str="") const
 
double getlambdaInitial () const
 
double getlambdaFactor () const
 
double getlambdaUpperBound () const
 
double getlambdaLowerBound () const
 
std::string getVerbosityLM () const
 
std::string getLogFile () const
 
bool getDiagonalDamping () const
 
void setlambdaInitial (double value)
 
void setlambdaFactor (double value)
 
void setlambdaUpperBound (double value)
 
void setlambdaLowerBound (double value)
 
void setVerbosityLM (const std::string &s)
 
void setLogFile (const std::string &s)
 
void setDiagonalDamping (bool flag)
 
void setUseFixedLambdaFactor (bool flag)
 
- Public Member Functions inherited from gtsam::NonlinearOptimizerParams
int getMaxIterations () const
 
double getRelativeErrorTol () const
 
double getAbsoluteErrorTol () const
 
double getErrorTol () const
 
std::string getVerbosity () const
 
void setMaxIterations (int value)
 
void setRelativeErrorTol (double value)
 
void setAbsoluteErrorTol (double value)
 
void setErrorTol (double value)
 
void setVerbosity (const std::string &src)
 
bool isMultifrontal () const
 
bool isSequential () const
 
bool isCholmod () const
 
bool isIterative () const
 
GaussianFactorGraph::Eliminate getEliminationFunction () const
 
std::string getLinearSolverType () const
 
void setLinearSolverType (const std::string &solver)
 
void setIterativeParams (const boost::shared_ptr< IterativeOptimizationParameters > params)
 
void setOrdering (const Ordering &ordering)
 

Static Public Member Functions

static VerbosityLM verbosityLMTranslator (const std::string &s)
 
static std::string verbosityLMTranslator (VerbosityLM value)
 
- Static Public Member Functions inherited from gtsam::NonlinearOptimizerParams
static Verbosity verbosityTranslator (const std::string &s)
 
static std::string verbosityTranslator (Verbosity value)
 

Public Attributes

double lambdaInitial
 The initial Levenberg-Marquardt damping term (default: 1e-5)
 
double lambdaFactor
 The amount by which to multiply or divide lambda when adjusting lambda (default: 10.0)
 
double lambdaUpperBound
 The maximum lambda to try before assuming the optimization has failed (default: 1e5)
 
double lambdaLowerBound
 The minimum lambda used in LM (default: 0)
 
VerbosityLM verbosityLM
 The verbosity level for Levenberg-Marquardt (default: SILENT), see also NonlinearOptimizerParams::verbosity.
 
double minModelFidelity
 Lower bound for the modelFidelity to accept the result of an LM iteration.
 
std::string logFile
 an optional CSV log file, with [iteration, time, error, labda]
 
bool diagonalDamping
 if true, use diagonal of Hessian
 
bool reuse_diagonal_
 an additional option in Ceres for diagonalDamping (related to efficiency)
 
bool useFixedLambdaFactor_
 if true applies constant increase (or decrease) to lambda according to lambdaFactor
 
double min_diagonal_
 when using diagonal damping saturates the minimum diagonal entries (default: 1e-6)
 
double max_diagonal_
 when using diagonal damping saturates the maximum diagonal entries (default: 1e32)
 
- Public Attributes inherited from gtsam::NonlinearOptimizerParams
int maxIterations
 The maximum iterations to stop iterating (default 100)
 
double relativeErrorTol
 The maximum relative error decrease to stop iterating (default 1e-5)
 
double absoluteErrorTol
 The maximum absolute error decrease to stop iterating (default 1e-5)
 
double errorTol
 The maximum total error to stop iterating (default 0.0)
 
Verbosity verbosity
 The printing verbosity during optimization (default SILENT)
 
LinearSolverType linearSolverType
 The type of linear solver to use in the nonlinear optimizer.
 
boost::optional< Orderingordering
 The variable elimination ordering, or empty to use COLAMD (default: empty)
 
IterativeOptimizationParameters::shared_ptr iterativeParams
 The container for iterativeOptimization parameters. used in CG Solvers.
 

Public Types

enum  VerbosityLM {
  SILENT = 0, TERMINATION, LAMBDA, TRYLAMBDA,
  TRYCONFIG, DAMPED, TRYDELTA
}
 See LevenbergMarquardtParams::lmVerbosity.
 
- Public Types inherited from gtsam::NonlinearOptimizerParams
enum  Verbosity {
  SILENT, TERMINATION, ERROR, VALUES,
  DELTA, LINEAR
}
 See NonlinearOptimizerParams::verbosity.
 
enum  LinearSolverType {
  MULTIFRONTAL_CHOLESKY, MULTIFRONTAL_QR, SEQUENTIAL_CHOLESKY, SEQUENTIAL_QR,
  Iterative, CHOLMOD
}
 See NonlinearOptimizerParams::linearSolverType.
 

The documentation for this class was generated from the following files: