15 #ifndef __itkFiniteDifferenceGradientDescentOptimizer_h
16 #define __itkFiniteDifferenceGradientDescentOptimizer_h
89 itkSetMacro( NumberOfIterations,
unsigned long );
92 itkGetConstMacro( NumberOfIterations,
unsigned long );
95 itkGetConstMacro( CurrentIteration,
unsigned long );
98 itkGetConstMacro( Value,
double );
104 itkSetMacro( Param_a,
double );
105 itkGetMacro( Param_a,
double );
108 itkSetMacro( Param_c,
double );
109 itkGetMacro( Param_c,
double );
112 itkSetMacro( Param_A,
double );
113 itkGetMacro( Param_A,
double );
116 itkSetMacro( Param_alpha,
double );
117 itkGetMacro( Param_alpha,
double );
120 itkSetMacro( Param_gamma,
double );
121 itkGetMacro( Param_gamma,
double );
123 itkGetConstMacro( ComputeCurrentValue,
bool );
124 itkSetMacro( ComputeCurrentValue,
bool );
125 itkBooleanMacro( ComputeCurrentValue );
128 itkGetConstMacro( GradientMagnitude,
double );
129 itkGetConstMacro( LearningRate,
double );
137 void PrintSelf( std::ostream & os, Indent indent )
const;
152 virtual double Compute_a(
unsigned long k )
const;
154 virtual double Compute_c(
unsigned long k )
const;
179 #endif // end #ifndef __itkFiniteDifferenceGradientDescentOptimizer_h
SmartPointer< Self > Pointer
ScaledSingleValuedNonLinearOptimizer Superclass
bool m_ComputeCurrentValue
double m_GradientMagnitude
unsigned long m_NumberOfIterations
Superclass::DerivativeType DerivativeType
void StartOptimization(void)
virtual double Compute_c(unsigned long k) const
FiniteDifferenceGradientDescentOptimizer Self
FiniteDifferenceGradientDescentOptimizer()
virtual double Compute_a(unsigned long k) const
void PrintSelf(std::ostream &os, Indent indent) const
void ResumeOptimization(void)
StopConditionType m_StopCondition
virtual ~FiniteDifferenceGradientDescentOptimizer()
void operator=(const Self &)
SmartPointer< const Self > ConstPointer
void StopOptimization(void)
DerivativeType m_Gradient
unsigned long m_CurrentIteration
An optimizer based on gradient descent ...
virtual void AdvanceOneStep(void)