All Classes Namespaces Files Functions Variables Typedefs Enumerator Macros
roboptim::eigen::SolverWithJacobian Class Reference

Solver implementing a variant of Levenberg-Marquardt algorithm. More...

#include <roboptim/core/plugin/eigen/eigen-levenberg-marquardt.hh>

Inheritance diagram for roboptim::eigen::SolverWithJacobian:
Collaboration diagram for roboptim::eigen::SolverWithJacobian:

Public Types

typedef Solver< SumOfC1Squares,
boost::mpl::vector<> > 
parent_t
 Parent type. More...
 
typedef problem_t::function_t function_t
 Cost function type. More...
 
typedef parent_t::result_t result_t
 type of result More...
 
typedef
DifferentiableFunction::gradient_t 
gradient_t
 type of gradient More...
 
typedef Function::size_type size_type
 Size type. More...
 
typedef SolverState
< parent_t::problem_t > 
solverState_t
 Solver state. More...
 
typedef parent_t::callback_t callback_t
 RobOptim callback. More...
 

Public Member Functions

 SolverWithJacobian (const problem_t &problem)
 Constructot by problem. More...
 
virtual ~SolverWithJacobian () throw ()
 
virtual void solve () throw ()
 Solve the optimization problem. More...
 
size_type n () const
 Return the number of variables. More...
 
size_type m () const
 Return the number of functions. More...
 
Function::argument_t & parameter ()
 Get the optimization parameters. More...
 
const Function::argument_t & parameter () const
 Get the optimization parameters. More...
 
boost::shared_ptr< const
DifferentiableFunction > 
cost () const
 Get the cost function. More...
 
virtual void setIterationCallback (callback_t callback) throw (std::runtime_error)
 Set the callback called at each iteration. More...
 
const callback_tcallback () const throw ()
 Get the callback called at each iteration. More...
 

Detailed Description

Solver implementing a variant of Levenberg-Marquardt algorithm.

This solver tries to minimize the euclidean norm of a vector valued function.

Member Typedef Documentation

RobOptim callback.

typedef problem_t::function_t roboptim::eigen::SolverWithJacobian::function_t

Cost function type.

typedef DifferentiableFunction::gradient_t roboptim::eigen::SolverWithJacobian::gradient_t

type of gradient

typedef Solver<SumOfC1Squares, boost::mpl::vector<> > roboptim::eigen::SolverWithJacobian::parent_t

Parent type.

type of result

Size type.

typedef SolverState<parent_t::problem_t> roboptim::eigen::SolverWithJacobian::solverState_t

Solver state.

Constructor & Destructor Documentation

roboptim::eigen::SolverWithJacobian::SolverWithJacobian ( const problem_t &  problem)
explicit

Constructot by problem.

roboptim::eigen::SolverWithJacobian::~SolverWithJacobian ( )
throw (
)
virtual

Member Function Documentation

const callback_t& roboptim::eigen::SolverWithJacobian::callback ( ) const
throw (
)
inline

Get the callback called at each iteration.

Referenced by setIterationCallback().

boost::shared_ptr<const DifferentiableFunction> roboptim::eigen::SolverWithJacobian::cost ( ) const
inline

Get the cost function.

size_type roboptim::eigen::SolverWithJacobian::m ( ) const
inline

Return the number of functions.

size_type roboptim::eigen::SolverWithJacobian::n ( ) const
inline

Return the number of variables.

Function::argument_t& roboptim::eigen::SolverWithJacobian::parameter ( )
inline

Get the optimization parameters.

const Function::argument_t& roboptim::eigen::SolverWithJacobian::parameter ( ) const
inline

Get the optimization parameters.

virtual void roboptim::eigen::SolverWithJacobian::setIterationCallback ( callback_t  callback)
throw (std::runtime_error
)
inlinevirtual

Set the callback called at each iteration.

References callback().

void roboptim::eigen::SolverWithJacobian::solve ( )
throw (
)
virtual

Solve the optimization problem.

References LOAD_RESULT_WARNINGS.