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 
129 protected:
130 
133 
135  virtual double Compute_a( double k ) const;
136 
141  virtual void UpdateCurrentTime( void );
142 
145 
146 private:
147 
148  StandardGradientDescentOptimizer( const Self & ); // purposely not implemented
149  void operator=( const Self & ); // purposely not implemented
150 
152  double m_Param_a;
153  double m_Param_A;
155 
158 
159 };
160 
161 } // end namespace itk
162 
163 #endif // end #ifndef __itkStandardGradientDescentOptimizer_h
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 11-03-2014 for elastix by doxygen 1.8.6 elastix logo