18 #ifndef itkOnePlusOneEvolutionaryOptimizerv4_h
19 #define itkOnePlusOneEvolutionaryOptimizerv4_h
68 template<
typename TInternalComputationValueType>
102 itkSetMacro(MaximumIteration,
unsigned int);
103 itkGetConstReferenceMacro(MaximumIteration,
unsigned int);
107 itkSetMacro(GrowthFactor,
double);
108 itkGetConstReferenceMacro(GrowthFactor,
double);
112 itkSetMacro(ShrinkFactor,
double);
113 itkGetConstReferenceMacro(ShrinkFactor,
double);
117 itkSetMacro(InitialRadius,
double);
118 itkGetConstReferenceMacro(InitialRadius,
double);
123 itkSetMacro(Epsilon,
double);
124 itkGetConstReferenceMacro(Epsilon,
double);
128 itkGetConstReferenceMacro(FrobeniusNorm,
double);
138 void Initialize(
double initialRadius,
double grow = -1,
double shrink = -1);
141 itkGetConstReferenceMacro(CurrentCost,
MeasureType);
142 virtual const MeasureType & GetValue() const ITK_OVERRIDE;
146 itkGetConstReferenceMacro(Initialized,
bool);
151 virtual
void StartOptimization(
bool doOnlyInitialization = false) ITK_OVERRIDE;
156 void StopOptimization()
159 itkGetConstReferenceMacro(CatchGetValueException,
bool);
160 itkSetMacro(CatchGetValueException,
bool);
162 itkGetConstReferenceMacro(MetricWorstPossibleValue,
double);
163 itkSetMacro(MetricWorstPossibleValue,
double);
165 virtual const std::string GetStopConditionDescription() const ITK_OVERRIDE;
169 OnePlusOneEvolutionaryOptimizerv4(const OnePlusOneEvolutionaryOptimizerv4 &);
170 virtual ~OnePlusOneEvolutionaryOptimizerv4() ITK_OVERRIDE;
171 virtual
void PrintSelf(std::ostream & os,
Indent indent) const ITK_OVERRIDE;
179 unsigned int m_MaximumIteration;
181 bool m_CatchGetValueException;
182 double m_MetricWorstPossibleValue;
189 double m_InitialRadius;
192 double m_GrowthFactor;
195 double m_ShrinkFactor;
210 std::ostringstream m_StopConditionDescription;
214 double m_FrobeniusNorm;
218 #ifndef ITK_MANUAL_INSTANTIATION
219 #include "itkOnePlusOneEvolutionaryOptimizerv4.hxx"
Statistics::RandomVariateGeneratorBase NormalVariateGeneratorType
Light weight base class for most itk classes.
SmartPointer< Self > Pointer
SingleValuedCostFunctionv4 CostFunctionType
MetricType::MeasureType MeasureType
Superclass::MeasureType MeasureType
CostFunctionType::Pointer CostFunctionPointer
Superclass::ScalesType ScalesType
ObjectToObjectOptimizerBaseTemplate< TInternalComputationValueType > Superclass
Defines common interfaces for random variate generators.
This class is a base for a CostFunction that returns a single value.
1+1 evolutionary strategy optimizer
Control indentation during Print() invocation.
Abstract base for object-to-object optimizers.
Superclass::ParametersType ParametersType
SmartPointer< const Self > ConstPointer
OnePlusOneEvolutionaryOptimizerv4 Self