#include <itkContinuousLBFGSOptimizer.h>
Public Types | |
| typedef ContinuousLBFGSOptimizer | Self |
| typedef SingleValuedNonLinearVnlOptimizer | Superclass |
| typedef SmartPointer < Self > | Pointer |
| typedef SmartPointer < const Self > | ConstPointer |
| typedef vnl_vector < double > | InternalParametersType |
| typedef vnl_lbfgs | InternalOptimizerType |
Public Member Functions | |
| itkNewMacro (Self) | |
| itkTypeMacro (ContinuousLBFGSOptimizer, SingleValuedNonLinearVnlOptimizer) | |
| vnl_lbfgs * | GetOptimizer (void) |
| void | StartOptimization (void) |
| virtual void | SetCostFunction (SingleValuedCostFunction *costFunction) |
| itkGetMacro (ErrorOccurred, bool) | |
| virtual void | SetTrace (bool flag) |
| itkGetMacro (Trace, bool) | |
| itkBooleanMacro (Trace) | |
| virtual void | SetMaximumNumberOfFunctionEvaluations (unsigned int n) |
| itkGetMacro (MaximumNumberOfFunctionEvaluations, unsigned int) | |
| virtual void | SetGradientConvergenceTolerance (double gtol) |
| itkGetMacro (GradientConvergenceTolerance, double) | |
| virtual void | SetLineSearchAccuracy (double tol) |
| itkGetMacro (LineSearchAccuracy, double) | |
| virtual void | SetDefaultStepLength (double stp) |
| itkGetMacro (DefaultStepLength, double) | |
| MeasureType | GetValue () |
Protected Types | |
| typedef Superclass::CostFunctionAdaptorType | CostFunctionAdaptorType |
Protected Member Functions | |
| ContinuousLBFGSOptimizer () | |
| virtual | ~ContinuousLBFGSOptimizer () |
| void | PrintSelf (std::ostream &os, Indent indent) const |
Private Member Functions | |
| ContinuousLBFGSOptimizer (const Self &) | |
| void | operator= (const Self &) |
Private Attributes | |
| bool | m_OptimizerInitialized |
| InternalOptimizerType * | m_VnlOptimizer |
| bool | m_Trace |
| unsigned int | m_MaximumNumberOfFunctionEvaluations |
| double | m_GradientConvergenceTolerance |
| double | m_LineSearchAccuracy |
| double | m_DefaultStepLength |
| bool | m_ErrorOccurred |
Definition at line 35 of file itkContinuousLBFGSOptimizer.h.
Standard "Self" typedef.
Definition at line 40 of file itkContinuousLBFGSOptimizer.h.
| typedef SingleValuedNonLinearVnlOptimizer itk::ContinuousLBFGSOptimizer::Superclass |
Definition at line 41 of file itkContinuousLBFGSOptimizer.h.
| typedef SmartPointer<Self> itk::ContinuousLBFGSOptimizer::Pointer |
Definition at line 42 of file itkContinuousLBFGSOptimizer.h.
| typedef SmartPointer<const Self> itk::ContinuousLBFGSOptimizer::ConstPointer |
Definition at line 43 of file itkContinuousLBFGSOptimizer.h.
| typedef vnl_vector<double> itk::ContinuousLBFGSOptimizer::InternalParametersType |
InternalParameters typedef.
Definition at line 52 of file itkContinuousLBFGSOptimizer.h.
| typedef vnl_lbfgs itk::ContinuousLBFGSOptimizer::InternalOptimizerType |
Internal optimizer type.
Definition at line 55 of file itkContinuousLBFGSOptimizer.h.
typedef Superclass::CostFunctionAdaptorType itk::ContinuousLBFGSOptimizer::CostFunctionAdaptorType [protected] |
Definition at line 111 of file itkContinuousLBFGSOptimizer.h.
| itk::ContinuousLBFGSOptimizer::ContinuousLBFGSOptimizer | ( | ) | [protected] |
Constructor
Definition at line 29 of file itkContinuousLBFGSOptimizer.cxx.
| itk::ContinuousLBFGSOptimizer::~ContinuousLBFGSOptimizer | ( | ) | [protected, virtual] |
Destructor
Definition at line 46 of file itkContinuousLBFGSOptimizer.cxx.
| itk::ContinuousLBFGSOptimizer::ContinuousLBFGSOptimizer | ( | const Self & | ) | [private] |
| itk::ContinuousLBFGSOptimizer::itkNewMacro | ( | Self | ) |
Method for creation through the object factory.
| itk::ContinuousLBFGSOptimizer::itkTypeMacro | ( | ContinuousLBFGSOptimizer | , | |
| SingleValuedNonLinearVnlOptimizer | ||||
| ) |
Run-time type information (and related methods).
| vnl_lbfgs * itk::ContinuousLBFGSOptimizer::GetOptimizer | ( | void | ) |
Method for getting access to the internal optimizer.
Get the Optimizer
Definition at line 294 of file itkContinuousLBFGSOptimizer.cxx.
| void itk::ContinuousLBFGSOptimizer::StartOptimization | ( | void | ) |
Start optimization with an initial value.
Start the optimization
Definition at line 232 of file itkContinuousLBFGSOptimizer.cxx.
| void itk::ContinuousLBFGSOptimizer::SetCostFunction | ( | SingleValuedCostFunction * | costFunction | ) | [virtual] |
Plug in a Cost Function into the optimizer
Connect a Cost Function
Definition at line 194 of file itkContinuousLBFGSOptimizer.cxx.
| itk::ContinuousLBFGSOptimizer::itkGetMacro | ( | ErrorOccurred | , | |
| bool | ||||
| ) |
| void itk::ContinuousLBFGSOptimizer::SetTrace | ( | bool | flag | ) | [virtual] |
Set/Get the optimizer trace flag. If set to true, the optimizer prints out information every iteration.
Set the optimizer trace flag
Definition at line 80 of file itkContinuousLBFGSOptimizer.cxx.
Referenced by FREE::ContinuousLBFGSOptimizerController::ActualizeMainComponent().
| itk::ContinuousLBFGSOptimizer::itkGetMacro | ( | Trace | , | |
| bool | ||||
| ) |
| itk::ContinuousLBFGSOptimizer::itkBooleanMacro | ( | Trace | ) |
| void itk::ContinuousLBFGSOptimizer::SetMaximumNumberOfFunctionEvaluations | ( | unsigned int | n | ) | [virtual] |
Set/Get the maximum number of function evaluations allowed.
Set the maximum number of function evalutions
Definition at line 101 of file itkContinuousLBFGSOptimizer.cxx.
Referenced by FREE::ContinuousLBFGSOptimizerController::ActualizeMainComponent().
| itk::ContinuousLBFGSOptimizer::itkGetMacro | ( | MaximumNumberOfFunctionEvaluations | , | |
| unsigned | int | |||
| ) |
| void itk::ContinuousLBFGSOptimizer::SetGradientConvergenceTolerance | ( | double | f | ) | [virtual] |
Set/Get the gradient convergence tolerance. This is a positive real number that determines the accuracy with which the solution is to be found. The optimization terminates when: ||G|| < gtol max(1,||X||) where ||.|| denotes the Euclidean norm.
Set the gradient convergence tolerance
Definition at line 123 of file itkContinuousLBFGSOptimizer.cxx.
Referenced by FREE::ContinuousLBFGSOptimizerController::ActualizeMainComponent().
| itk::ContinuousLBFGSOptimizer::itkGetMacro | ( | GradientConvergenceTolerance | , | |
| double | ||||
| ) |
| void itk::ContinuousLBFGSOptimizer::SetLineSearchAccuracy | ( | double | f | ) | [virtual] |
Set/Get the line search accuracy. This is a positive real number with a default value of 0.9, which controls the accuracy of the line search. If the function and gradient evalutions are inexpensive with respect to the cost of the iterations it may be advantageous to set the value to a small value (say 0.1).
Set the line search accuracy
Definition at line 144 of file itkContinuousLBFGSOptimizer.cxx.
Referenced by FREE::ContinuousLBFGSOptimizerController::ActualizeMainComponent().
| itk::ContinuousLBFGSOptimizer::itkGetMacro | ( | LineSearchAccuracy | , | |
| double | ||||
| ) |
| void itk::ContinuousLBFGSOptimizer::SetDefaultStepLength | ( | double | f | ) | [virtual] |
Set/Get the default step size. This is a positive real number with a default value of 1.0 which determines the stpe size in the line search.
Set the default step length
Definition at line 165 of file itkContinuousLBFGSOptimizer.cxx.
Referenced by FREE::ContinuousLBFGSOptimizerController::ActualizeMainComponent().
| itk::ContinuousLBFGSOptimizer::itkGetMacro | ( | DefaultStepLength | , | |
| double | ||||
| ) |
| ContinuousLBFGSOptimizer::MeasureType itk::ContinuousLBFGSOptimizer::GetValue | ( | ) |
Return Current Value
Definition at line 184 of file itkContinuousLBFGSOptimizer.cxx.
| void itk::ContinuousLBFGSOptimizer::PrintSelf | ( | std::ostream & | os, | |
| Indent | indent | |||
| ) | const [protected] |
PrintSelf
Definition at line 56 of file itkContinuousLBFGSOptimizer.cxx.
| void itk::ContinuousLBFGSOptimizer::operator= | ( | const Self & | ) | [private] |
bool itk::ContinuousLBFGSOptimizer::m_OptimizerInitialized [private] |
Definition at line 117 of file itkContinuousLBFGSOptimizer.h.
Definition at line 118 of file itkContinuousLBFGSOptimizer.h.
bool itk::ContinuousLBFGSOptimizer::m_Trace [private] |
Definition at line 120 of file itkContinuousLBFGSOptimizer.h.
unsigned int itk::ContinuousLBFGSOptimizer::m_MaximumNumberOfFunctionEvaluations [private] |
Definition at line 121 of file itkContinuousLBFGSOptimizer.h.
double itk::ContinuousLBFGSOptimizer::m_GradientConvergenceTolerance [private] |
Definition at line 122 of file itkContinuousLBFGSOptimizer.h.
double itk::ContinuousLBFGSOptimizer::m_LineSearchAccuracy [private] |
Definition at line 123 of file itkContinuousLBFGSOptimizer.h.
double itk::ContinuousLBFGSOptimizer::m_DefaultStepLength [private] |
Definition at line 124 of file itkContinuousLBFGSOptimizer.h.
bool itk::ContinuousLBFGSOptimizer::m_ErrorOccurred [private] |
Definition at line 125 of file itkContinuousLBFGSOptimizer.h.
1.5.3 written by Dimitri van Heesch,
© 1997-2000