BFGS< FunctorType > Class Template Reference

BFGS stands for Broyden–Fletcher–Goldfarb–Shanno (BFGS) method for solving unconstrained nonlinear optimization problems. More...

`#include <pcl/registration/bfgs.h>`

## Classes

struct | Parameters

## Public Types

using | Scalar = typename FunctorType::Scalar
using | FVectorType = typename FunctorType::VectorType
using | Index = Eigen::DenseIndex

## Public Member Functions

| BFGS (FunctorType &_functor)
BFGSSpace::Status | minimize (FVectorType &x)
BFGSSpace::Status | minimizeInit (FVectorType &x)
BFGSSpace::Status | minimizeOneStep (FVectorType &x)
BFGSSpace::Status | testGradient ()
BFGSSpace::Status | testGradient (Scalar)
void | resetParameters (void)

## Public Attributes

Parameters | parameters
Scalar | f
FVectorType | gradient

## Detailed Description

### template<typename FunctorType>
class BFGS< FunctorType >

BFGS stands for Broyden–Fletcher–Goldfarb–Shanno (BFGS) method for solving unconstrained nonlinear optimization problems.

For further details please visit: http://en.wikipedia.org/wiki/BFGS_method The method provided here is almost similar to the one provided by GSL. It reproduces Fletcher's original algorithm in Practical Methods of Optimization algorithms : 2.6.2 and 2.6.4 and uses the same politics in GSL with cubic interpolation whenever it is possible else falls to quadratic interpolation for alpha parameter.

Definition at line 121 of file bfgs.h.

## Member Typedef Documentation

## FVectorType

template<typename FunctorType >

using BFGS< FunctorType >::FVectorType = typename FunctorType::VectorType

Definition at line 124 of file bfgs.h.

## Index

template<typename FunctorType >

using BFGS< FunctorType >::Index = Eigen::DenseIndex

Definition at line 128 of file bfgs.h.

## Scalar

template<typename FunctorType >

using BFGS< FunctorType >::Scalar = typename FunctorType::Scalar

Definition at line 123 of file bfgs.h.

## Constructor & Destructor Documentation

## BFGS()

template<typename FunctorType >

BFGS< FunctorType >::BFGS | ( | FunctorType & | _functor | ) |

inline

Definition at line 126 of file bfgs.h.

## Member Function Documentation

## minimize()

template<typename FunctorType >

BFGSSpace::Status BFGS< FunctorType >::minimize | ( | FVectorType & | x | ) |

Definition at line 351 of file bfgs.h.

References BFGSSpace::Success.

## minimizeInit()

template<typename FunctorType >

BFGSSpace::Status BFGS< FunctorType >::minimizeInit | ( | FVectorType & | x | ) |

Definition at line 363 of file bfgs.h.

References BFGSSpace::NotStarted.

## minimizeOneStep()

template<typename FunctorType >

BFGSSpace::Status BFGS< FunctorType >::minimizeOneStep | ( | FVectorType & | x | ) |

Definition at line 395 of file bfgs.h.

References pcl::B, BFGSSpace::NoProgress, and BFGSSpace::Success.

## resetParameters()

template<typename FunctorType >

void BFGS< FunctorType >::resetParameters | ( | void |  | ) |

inline

Definition at line 166 of file bfgs.h.

References BFGS< FunctorType >::parameters.

## testGradient() [1/2]

template<typename FunctorType >

BFGSSpace::Status BFGS< FunctorType >::testGradient

Definition at line 478 of file bfgs.h.

## testGradient() [2/2]

template<typename FunctorType >

BFGSSpace::Status BFGS< FunctorType >::testGradient | ( | Scalar |  | ) |

inline

Deprecated:
  Scheduled for removal in version 1 . 13 : "Use `testGradient()` instead"

Definition at line 164 of file bfgs.h.

References BFGS< FunctorType >::testGradient().

Referenced by BFGS< FunctorType >::testGradient().

## Member Data Documentation

## f

template<typename FunctorType >

Scalar BFGS< FunctorType >::f

Definition at line 172 of file bfgs.h.

## gradient

template<typename FunctorType >

FVectorType BFGS< FunctorType >::gradient

Definition at line 173 of file bfgs.h.

## parameters

template<typename FunctorType >

Parameters BFGS< FunctorType >::parameters

Definition at line 171 of file bfgs.h.

Referenced by BFGS< FunctorType >::resetParameters().

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

- pcl/registration/bfgs.h