go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
itkStandardGradientDescentOptimizer.h
Go to the documentation of this file.
1 /*======================================================================
2 
3  This file is part of the elastix software.
4 
5  Copyright (c) University Medical Center Utrecht. All rights reserved.
6  See src/CopyrightElastix.txt or http://elastix.isi.uu.nl/legal.php for
7  details.
8 
9  This software is distributed WITHOUT ANY WARRANTY; without even
10  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11  PURPOSE. See the above copyright notices for more information.
12 
13 ======================================================================*/
14 
15 #ifndef __itkStandardGradientDescentOptimizer_h
16 #define __itkStandardGradientDescentOptimizer_h
17 
19 
20 namespace itk
21 {
22 
63  {
64  public:
65 
69 
70  typedef SmartPointer<Self> Pointer;
71  typedef SmartPointer<const Self> ConstPointer;
72 
74  itkNewMacro( Self );
75 
78 
88 
90  itkSetMacro( Param_a, double );
91  itkGetConstMacro( Param_a, double );
92 
94  itkSetMacro( Param_A, double );
95  itkGetConstMacro( Param_A, double );
96 
98  itkSetMacro( Param_alpha, double );
99  itkGetConstMacro( Param_alpha, double );
100 
103  virtual void AdvanceOneStep( void );
104 
106  virtual void StartOptimization( void );
107 
113  itkSetMacro( InitialTime, double );
114  itkGetConstMacro( InitialTime, double );
115 
118  itkGetConstMacro( CurrentTime, double );
119 
123  virtual void ResetCurrentTimeToInitialTime( void )
124  {
125  this->m_CurrentTime = this->m_InitialTime;
126  }
127 
128  protected:
129 
132 
134  virtual double Compute_a( double k ) const;
135 
140  virtual void UpdateCurrentTime( void );
141 
144 
145  private:
146 
147  StandardGradientDescentOptimizer( const Self& ); // purposely not implemented
148  void operator=( const Self& ); // purposely not implemented
149 
151  double m_Param_a;
152  double m_Param_A;
154 
157 
158  }; // end class StandardGradientDescentOptimizer
159 
160 
161 } // end namespace itk
162 
163 
164 #endif // end #ifndef __itkStandardGradientDescentOptimizer_h
165 
166 
Implement a gradient descent optimizer.
This class implements a gradient descent optimizer with a decaying gain.
Superclass::DerivativeType DerivativeType
Superclass::ScaledCostFunctionPointer ScaledCostFunctionPointer
Superclass::ScaledCostFunctionType ScaledCostFunctionType
Superclass::ParametersType ParametersType
Superclass::CostFunctionType CostFunctionType
virtual double Compute_a(double k) const
Superclass::ScaledCostFunctionType ScaledCostFunctionType
Superclass::ScaledCostFunctionPointer ScaledCostFunctionPointer


Generated on 05-01-2014 for elastix by doxygen 1.8.5 elastix logo