19 #ifndef __itkParticleSwarmOptimizerBase_h
20 #define __itkParticleSwarmOptimizerBase_h
94 itkSetMacro( InitializeNormalDistribution,
bool )
95 itkGetMacro( InitializeNormalDistribution,
bool )
96 itkBooleanMacro( InitializeNormalDistribution )
103 void SetInitialSwarm( const
SwarmType &initialSwarm );
112 itkSetMacro( PrintSwarm,
bool )
113 itkGetMacro( PrintSwarm,
bool )
114 itkBooleanMacro( PrintSwarm )
117 void StartOptimization(
void );
162 itkSetMacro( FunctionConvergenceTolerance,
MeasureType )
163 itkGetMacro( FunctionConvergenceTolerance,
MeasureType )
167 void SetParametersConvergenceTolerance( ValueType convergenceTolerance,
171 itkGetMacro( PercentageParticlesConverged,
double )
172 itkSetMacro( PercentageParticlesConverged,
double )
183 itkSetMacro( UseSeed,
bool )
184 itkGetMacro( UseSeed,
bool )
185 itkBooleanMacro( UseSeed)
193 virtual const std::
string GetStopConditionDescription() const;
199 void PrintSwarm( std::ostream& os,
Indent indent ) const;
203 virtual ~ParticleSwarmOptimizerBase();
204 void PrintSelf( std::ostream& os,
Indent indent ) const;
205 void PrintParamtersType( const
ParametersType& x, std::ostream& os ) const;
209 virtual
void UpdateSwarm() = 0;
211 ParticleSwarmOptimizerBase( const
Self& );
212 void operator=( const Self& );
214 virtual
void ValidateSettings();
219 virtual
void Initialize();
221 void RandomInitialization();
222 void FileInitialization();
225 std::ostringstream m_StopConditionDescription;
226 bool m_InitializeNormalDistribution;
232 double m_PercentageParticlesConverged;