18 #ifndef itkAmoebaOptimizer_h
19 #define itkAmoebaOptimizer_h
22 #include "vnl/algo/vnl_amoeba.h"
23 #include "ITKOptimizersExport.h"
89 void StartOptimization()
override;
109 itkSetMacro(AutomaticInitialSimplex,
bool);
110 itkBooleanMacro(AutomaticInitialSimplex);
111 itkGetConstMacro(AutomaticInitialSimplex,
bool);
120 itkSetMacro(OptimizeWithRestarts,
bool);
121 itkBooleanMacro(OptimizeWithRestarts);
122 itkGetConstMacro(OptimizeWithRestarts,
bool);
128 bool automaticInitialSimplex =
false);
136 itkSetMacro(ParametersConvergenceTolerance,
double);
137 itkGetConstMacro(ParametersConvergenceTolerance,
double);
144 itkSetMacro(FunctionConvergenceTolerance,
double);
145 itkGetConstMacro(FunctionConvergenceTolerance,
double);
149 const std::string GetStopConditionDescription()
const override;
155 vnl_amoeba * GetOptimizer()
const;
160 void PrintSelf(std::ostream & os,
Indent indent)
const override;
166 void ValidateSettings();
This class is a base for the CostFunctions returning a single value.
vnl_amoeba * m_VnlOptimizer
Light weight base class for most itk classes.
CostFunctionType::MeasureType m_FunctionConvergenceTolerance
NumberOfIterationsType m_MaximumNumberOfIterations
This class is a base for the Optimization methods that optimize a single valued function.
bool m_OptimizeWithRestarts
vnl_vector< double > InternalParametersType
Wrap of the vnl_amoeba algorithm.
unsigned int NumberOfIterationsType
Superclass::CostFunctionAdaptorType CostFunctionAdaptorType
Superclass::ParametersType ParametersType
CostFunctionType::MeasureType MeasureType
Control indentation during Print() invocation.
ParametersType::ValueType m_ParametersConvergenceTolerance
bool m_AutomaticInitialSimplex
std::ostringstream m_StopConditionDescription
ParametersType m_InitialSimplexDelta