15 #ifndef __itkQuasiNewtonLBFGSOptimizer_h
16 #define __itkQuasiNewtonLBFGSOptimizer_h
74 typedef std::vector<ParametersType>
SType;
75 typedef std::vector<DerivativeType>
YType;
95 itkGetConstMacro(CurrentIteration,
unsigned long);
98 itkGetConstMacro(InLineSearch,
bool);
100 itkGetConstMacro(CurrentStepLength,
double);
123 itkGetConstMacro(Memory,
unsigned int);
131 void PrintSelf(std::ostream& os, Indent indent)
const {};
151 itkSetMacro(InLineSearch,
bool);
424 #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
std::vector< DerivativeType > YType
virtual ~QuasiNewtonLBFGSOptimizer()
StopConditionType m_StopCondition
Superclass::ParametersType ParametersType
ITK version of the lbfgs algorithm ...
Superclass::CostFunctionType CostFunctionType
unsigned int m_PreviousPoint
ScaledSingleValuedNonLinearOptimizer Superclass
void operator=(const Self &)
SmartPointer< Self > Pointer
SmartPointer< Self > Pointer
Superclass::MeasureType MeasureType
Superclass::DerivativeType DerivativeType
QuasiNewtonLBFGSOptimizer Self
double m_GradientMagnitudeTolerance
unsigned long m_CurrentIteration
virtual void StartOptimization(void)
unsigned long m_MaximumNumberOfIterations
Array< double > DiagonalMatrixType
virtual void StoreCurrentPoint(const ParametersType &step, const DerivativeType &grad_dif)
LineSearchOptimizer LineSearchOptimizerType
Superclass::CostFunctionType CostFunctionType
virtual void ResumeOptimization(void)
LineSearchOptimizerPointer m_LineSearchOptimizer
double m_CurrentStepLength
ScaledSingleValuedCostFunction ScaledCostFunctionType
NonLinearOptimizer::ScalesType ScalesType
std::vector< ParametersType > SType
A base class for LineSearch optimizers.
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
SmartPointer< const Self > ConstPointer
QuasiNewtonLBFGSOptimizer()
virtual void ComputeSearchDirection(const DerivativeType &gradient, ParametersType &searchDir)
DerivativeType m_CurrentGradient
virtual void StopOptimization(void)