19#ifndef __itkRSGDEachParameterApartBaseOptimizer_h
20#define __itkRSGDEachParameterApartBaseOptimizer_h
22#include "itkSingleValuedNonLinearOptimizer.h"
65 itkSetMacro( Maximize,
bool );
66 itkGetConstMacro( Maximize,
bool );
67 itkBooleanMacro( Maximize );
89 itkSetMacro( MaximumStepLength,
double );
90 itkSetMacro( MinimumStepLength,
double );
91 itkSetMacro( NumberOfIterations,
unsigned long );
93 itkGetConstMacro( MaximumStepLength,
double );
94 itkGetConstMacro( MinimumStepLength,
double );
95 itkGetConstMacro( NumberOfIterations,
unsigned long );
97 itkGetConstMacro( CurrentIteration,
unsigned long );
99 itkGetConstMacro( Value, MeasureType );
100 itkGetConstReferenceMacro( Gradient, DerivativeType );
103 itkGetConstReferenceMacro( CurrentStepLengths, DerivativeType );
106 itkGetConstMacro( CurrentStepLength,
double );
109 itkGetConstMacro( GradientMagnitude,
double );
115 void PrintSelf( std::ostream & os, Indent indent )
const override;
133 const DerivativeType &,
134 const DerivativeType & )
137 ex.SetLocation( __FILE__ );
138 ex.SetDescription(
"This method MUST be overloaded in derived classes" );
An optimizer based on gradient descent...
SmartPointer< const Self > ConstPointer
unsigned long m_CurrentIteration
double m_MaximumStepLength
double m_GradientMagnitude
virtual void SetMaximize(bool _arg)
DerivativeType m_CurrentStepLengths
void StopOptimization(void)
double m_MinimumStepLength
void operator=(const Self &)
RSGDEachParameterApartBaseOptimizer(const Self &)
RSGDEachParameterApartBaseOptimizer Self
double m_GradientMagnitudeTolerance
DerivativeType m_PreviousGradient
~RSGDEachParameterApartBaseOptimizer() override
virtual void AdvanceOneStep(void)
StopConditionType m_StopCondition
virtual void StepAlongGradient(const DerivativeType &, const DerivativeType &)
@ GradientMagnitudeTolerance
@ MaximumNumberOfIterations
void PrintSelf(std::ostream &os, Indent indent) const override
SmartPointer< Self > Pointer
double m_CurrentStepLength
SingleValuedNonLinearOptimizer Superclass
RSGDEachParameterApartBaseOptimizer()
DerivativeType m_Gradient
void ResumeOptimization(void)
void StartOptimization(void) override
unsigned long m_NumberOfIterations