28class NonlinearOptimizerMoreOptimizationTest;
41 std::chrono::time_point<std::chrono::high_resolution_clock>
startTime_;
42 std::chrono::time_point<std::chrono::high_resolution_clock> iterationStart_;
43 double lastLinearizeTime_{0.0};
44 double lastSolveTime_{0.0};
49 typedef std::shared_ptr<LevenbergMarquardtOptimizer> shared_ptr;
62 LevenbergMarquardtOptimizer(
const NonlinearFactorGraph& graph,
const Values& initialValues,
63 const LevenbergMarquardtParams& params = LevenbergMarquardtParams());
72 LevenbergMarquardtOptimizer(
const NonlinearFactorGraph& graph,
const Values& initialValues,
73 const Ordering& ordering,
74 const LevenbergMarquardtParams& params = LevenbergMarquardtParams());
86 double lambda()
const;
89 int getInnerIterations()
const;
92 void print(
const std::string& str =
"")
const {
93 std::cout << str <<
"LevenbergMarquardtOptimizer" << std::endl;
94 this->params_.print(
" parameters:\n");
113 void writeLogFile(
double currentError);
134 double* newError)
const;
Base class and parameters for nonlinear optimization algorithms.
Parameters for Levenberg-Marquardt trust-region scheme.
Global functions in a separate testing namespace.
Definition chartTesting.h:28
A Linear Factor Graph is a factor graph where all factors are Gaussian, i.e.
Definition GaussianFactorGraph.h:77
std::shared_ptr< This > shared_ptr
shared_ptr to this class
Definition GaussianFactorGraph.h:83
VectorValues represents a collection of vector-valued variables associated each with a unique integer...
Definition VectorValues.h:73
~LevenbergMarquardtOptimizer() override
Virtual destructor.
Definition LevenbergMarquardtOptimizer.h:77
const LevenbergMarquardtParams & params() const
Read-only access the parameters.
Definition LevenbergMarquardtOptimizer.h:109
const NonlinearOptimizerParams & _params() const override
Access the parameters (base class version).
Definition LevenbergMarquardtOptimizer.h:137
const LevenbergMarquardtParams params_
LM parameters.
Definition LevenbergMarquardtOptimizer.h:38
void print(const std::string &str="") const
print
Definition LevenbergMarquardtOptimizer.h:92
std::chrono::time_point< std::chrono::high_resolution_clock > startTime_
time when optimization started
Definition LevenbergMarquardtOptimizer.h:41
LevenbergMarquardtOptimizer(const NonlinearFactorGraph &graph, const Values &initialValues, const LevenbergMarquardtParams ¶ms=LevenbergMarquardtParams())
Standard constructor, requires a nonlinear factor graph, initial variable assignments,...
Definition LevenbergMarquardtOptimizer.cpp:47
Parameters for Levenberg-Marquardt optimization.
Definition LevenbergMarquardtParams.h:36
NonlinearOptimizer(const NonlinearFactorGraph &graph, std::unique_ptr< internal::NonlinearOptimizerState > state)
Constructor for initial construction of base classes.
Definition NonlinearOptimizer.cpp:79
The common parameters for Nonlinear optimizers.
Definition NonlinearOptimizerParams.h:37
In nonlinear factors, the error function returns the negative log-likelihood as a non-linear function...