26 class NonlinearOptimizer;
54 values(values), error(graph.error(values)), iterations(iterations) {}
56 NonlinearOptimizerState(
const Values& values,
double error,
unsigned int iterations) :
57 values(values), error(error), iterations(iterations) {}
59 friend class NonlinearOptimizer;
141 typedef boost::shared_ptr<const NonlinearOptimizer>
shared_ptr;
163 const Values& optimizeSafely();
166 double error()
const {
return _state().error; }
190 virtual void iterate() = 0;
198 void defaultOptimize();
214 double absoluteErrorTreshold,
double errorThreshold,
virtual const Values & optimize()
Optimize for the maximum-likelihood estimate, returning a new NonlinearOptimizer class containing the...
Definition: NonlinearOptimizer.h:155
Parameters for nonlinear optimization.
void solve(Matrix &A, Matrix &B)
solve AX=B via in-place Lu factorization and backsubstitution After calling, A contains LU...
Definition: Matrix.cpp:283
double error
The factor graph error on the current values.
Definition: NonlinearOptimizer.h:42
The common parameters for Nonlinear optimizers.
Definition: NonlinearOptimizerParams.h:33
virtual ~NonlinearOptimizer()
Virtual destructor.
Definition: NonlinearOptimizer.h:180
int iterations
The number of optimization iterations performed.
Definition: NonlinearOptimizer.h:45
Factor Graph Constsiting of non-linear factors.
A non-templated config holding any types of Manifold-group elements.
Definition: Values.h:75
bool checkConvergence(double relativeErrorTreshold, double absoluteErrorTreshold, double errorThreshold, double currentError, double newError, NonlinearOptimizerParams::Verbosity verbosity)
Check whether the relative error decrease is less than relativeErrorTreshold, the absolute error decr...
Definition: NonlinearOptimizer.cpp:138
double error() const
return error
Definition: NonlinearOptimizer.h:166
This is the abstract interface for classes that can optimize for the maximum-likelihood estimate of a...
Definition: NonlinearOptimizer.h:134
A non-linear factor graph is a graph of non-Gaussian, i.e.
Definition: NonlinearFactorGraph.h:69
virtual ~NonlinearOptimizerState()
Virtual destructor.
Definition: NonlinearOptimizer.h:50
const Values & values() const
return values
Definition: NonlinearOptimizer.h:172
int iterations() const
return number of iterations
Definition: NonlinearOptimizer.h:169
Values values
The current estimate of the variable values.
Definition: NonlinearOptimizer.h:39
This class represents a collection of vector-valued variables associated each with a unique integer i...
Definition: VectorValues.h:89
NonlinearOptimizer(const NonlinearFactorGraph &graph)
Constructor for initial construction of base classes.
Definition: NonlinearOptimizer.h:205
Verbosity
See NonlinearOptimizerParams::verbosity.
Definition: NonlinearOptimizerParams.h:36
boost::shared_ptr< const NonlinearOptimizer > shared_ptr
A shared pointer to this class.
Definition: NonlinearOptimizer.h:141
A Linear Factor Graph is a factor graph where all factors are Gaussian, i.e.
Definition: GaussianFactorGraph.h:65
Base class for a nonlinear optimization state, including the current estimate of the variable values...
Definition: NonlinearOptimizer.h:35