19 #ifndef __itkQuasiNewtonLBFGSOptimizer_h 20 #define __itkQuasiNewtonLBFGSOptimizer_h 78 typedef std::vector< ParametersType >
SType;
79 typedef std::vector< DerivativeType >
YType;
102 itkGetConstMacro( CurrentIteration,
unsigned long );
103 itkGetConstMacro( CurrentValue, MeasureType );
104 itkGetConstReferenceMacro( CurrentGradient, DerivativeType );
105 itkGetConstMacro( InLineSearch,
bool );
106 itkGetConstReferenceMacro( StopCondition, StopConditionType );
107 itkGetConstMacro( CurrentStepLength,
double );
130 itkGetConstMacro( Memory,
unsigned int );
138 void PrintSelf( std::ostream & os, Indent indent )
const {}
158 itkSetMacro( InLineSearch,
bool );
173 const DerivativeType & gradient,
174 ParametersType & searchDir );
181 const ParametersType searchDir,
185 DerivativeType & g );
190 const ParametersType & step,
191 const DerivativeType & grad_dif );
423 #endif //#ifndef __itkQuasiNewtonLBFGSOptimizer_h virtual bool TestConvergence(bool firstLineSearchDone)
Superclass::ParametersType ParametersType
MeasureType m_CurrentValue
Superclass::ScalesType ScalesType
Superclass::MeasureType MeasureType
virtual void ComputeDiagonalMatrix(DiagonalMatrixType &diag_H0)
Superclass::DerivativeType DerivativeType
virtual ~QuasiNewtonLBFGSOptimizer()
StopConditionType m_StopCondition
Superclass::ParametersType ParametersType
SmartPointer< Self > Pointer
ITK version of the lbfgs algorithm ...
Superclass::CostFunctionType CostFunctionType
unsigned int m_PreviousPoint
ScaledSingleValuedNonLinearOptimizer Superclass
void operator=(const Self &)
Superclass::MeasureType MeasureType
std::vector< ParametersType > SType
Superclass::DerivativeType DerivativeType
QuasiNewtonLBFGSOptimizer Self
double m_GradientMagnitudeTolerance
unsigned long m_CurrentIteration
virtual void StartOptimization(void)
unsigned long m_MaximumNumberOfIterations
virtual void StoreCurrentPoint(const ParametersType &step, const DerivativeType &grad_dif)
LineSearchOptimizer LineSearchOptimizerType
Array< double > DiagonalMatrixType
Superclass::CostFunctionType CostFunctionType
virtual void ResumeOptimization(void)
LineSearchOptimizerPointer m_LineSearchOptimizer
double m_CurrentStepLength
ScaledSingleValuedCostFunction ScaledCostFunctionType
NonLinearOptimizer::ScalesType ScalesType
A base class for LineSearch optimizers.
std::vector< DerivativeType > YType
virtual void LineSearch(const ParametersType searchDir, double &step, ParametersType &x, MeasureType &f, DerivativeType &g)
Superclass::ScaledCostFunctionType ScaledCostFunctionType
LineSearchOptimizerType::Pointer LineSearchOptimizerPointer
void PrintSelf(std::ostream &os, Indent indent) const
QuasiNewtonLBFGSOptimizer()
virtual void ComputeSearchDirection(const DerivativeType &gradient, ParametersType &searchDir)
DerivativeType m_CurrentGradient
SmartPointer< const Self > ConstPointer
virtual void StopOptimization(void)