25 class DoglegOptimizer;
44 deltaInitial(1.0), verbosityDL(SILENT) {}
48 virtual void print(
const std::string& str =
"")
const {
49 NonlinearOptimizerParams::print(str);
50 std::cout <<
" deltaInitial: " << deltaInitial <<
"\n";
54 double getDeltaInitial()
const {
return deltaInitial; }
55 std::string getVerbosityDL()
const {
return verbosityDLTranslator(verbosityDL); }
57 void setDeltaInitial(
double deltaInitial) { this->deltaInitial = deltaInitial; }
58 void setVerbosityDL(
const std::string& verbosityDL) { this->verbosityDL = verbosityDLTranslator(verbosityDL); }
61 VerbosityDL verbosityDLTranslator(
const std::string& verbosityDL)
const;
62 std::string verbosityDLTranslator(VerbosityDL verbosityDL)
const;
93 typedef boost::shared_ptr<DoglegOptimizer> shared_ptr;
108 NonlinearOptimizer(graph), params_(ensureHasOrdering(params, graph)), state_(graph, initialValues, params_) {}
119 params_.ordering = ordering;
120 state_ =
DoglegState(graph, initialValues, params_); }
134 virtual void iterate();
DoglegOptimizer(const NonlinearFactorGraph &graph, const Values &initialValues, const Ordering &ordering)
Standard constructor, requires a nonlinear factor graph, initial variable assignments, and optimization parameters.
Definition: DoglegOptimizer.h:117
This class performs Dogleg nonlinear optimization.
Definition: DoglegOptimizer.h:86
VerbosityDL verbosityDL
The verbosity level for Dogleg (default: SILENT), see also NonlinearOptimizerParams::verbosity.
Definition: DoglegOptimizer.h:41
double deltaInitial
The initial trust region radius (default: 1.0)
Definition: DoglegOptimizer.h:40
State for DoglegOptimizer.
Definition: DoglegOptimizer.h:68
virtual ~DoglegOptimizer()
Virtual destructor.
Definition: DoglegOptimizer.h:128
The common parameters for Nonlinear optimizers.
Definition: NonlinearOptimizerParams.h:33
DoglegOptimizer(const NonlinearFactorGraph &graph, const Values &initialValues, const DoglegParams ¶ms=DoglegParams())
Standard constructor, requires a nonlinear factor graph, initial variable assignments, and optimization parameters.
Definition: DoglegOptimizer.h:106
const DoglegParams & params() const
Read-only access the parameters.
Definition: DoglegOptimizer.h:137
A non-templated config holding any types of Manifold-group elements.
Definition: Values.h:75
void print(const Matrix &A, const string &s, ostream &stream)
print a matrix
Definition: Matrix.cpp:183
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
double getDelta() const
Access the current trust region radius Delta.
Definition: DoglegOptimizer.h:149
Parameters for Levenberg-Marquardt optimization.
Definition: DoglegOptimizer.h:32
Base class and parameters for nonlinear optimization algorithms.
const DoglegState & state() const
Read-only access the last state.
Definition: DoglegOptimizer.h:143
virtual const NonlinearOptimizerParams & _params() const
Access the parameters (base class version)
Definition: DoglegOptimizer.h:155
Definition: Ordering.h:30
DoglegParams & params()
Read/write access the parameters.
Definition: DoglegOptimizer.h:140
VerbosityDL
See DoglegParams::dlVerbosity.
Definition: DoglegOptimizer.h:35
virtual const NonlinearOptimizerState & _state() const
Access the state (base class version)
Definition: DoglegOptimizer.h:158
DoglegState & state()
Read/write access the last state.
Definition: DoglegOptimizer.h:146
Base class for a nonlinear optimization state, including the current estimate of the variable values...
Definition: NonlinearOptimizer.h:35