FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer Class Reference
[Setup optimization optimizer]

#include <freConstrainedOnePlusOneEvolutionarySOOptimizer.h>

Inheritance diagram for FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer:

Inheritance graph
FREE::SetupOptimizationOptimizer
[legend]
Collaboration diagram for FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer:

Collaboration graph
FREE::SetupOptimizationOptimizer
[legend]

List of all members.

Public Types

typedef
ConstrainedOnePlusOneEvolutionarySOOptimizer 
Self
typedef
SetupOptimizationOptimizer 
Superclass
typedef
itk::SmartPointer
< Self
Pointer
typedef
itk::SmartPointer
< const Self
ConstPointer
typedef
itk::Statistics::RandomVariateGeneratorBase 
NormalVariateGeneratorType

Public Member Functions

virtual const char * GetNameOfClass () const
virtual
::itk::LightObject::Pointer 
CreateAnother (void) const
virtual void SetMaximize (const bool _arg)
virtual void MaximizeOn ()
virtual void MaximizeOff ()
virtual void SetMaximumIteration (const unsigned int _arg)
virtual const
unsigned int & 
GetMaximumIteration () const
virtual void SetGrowthFactor (const double _arg)
virtual const double & GetGrowthFactor () const
virtual void SetShrinkFactor (const double _arg)
virtual const double & GetShrinkFactor () const
virtual void SetInitialRadius (const double _arg)
virtual const double & GetInitialRadius () const
virtual void SetEpsilon (const double _arg)
virtual const double & GetEpsilon () const
virtual const double & GetFrobeniusNorm () const
void SetNormalVariateGenerator (NormalVariateGeneratorType *generator)
MeasureType GetValue () const
virtual const
unsigned int & 
GetCurrentIteration () const
virtual void StartOptimization ()
virtual void StopOptimization ()
virtual bool IsStoppable () const
virtual const
MeasureType
GetCurrentChildValue () const
virtual const
ParametersType & 
GetCurrentChildPosition () const
void Initialize (double initialRadius, double grow=-1, double shrink=-1)

Static Public Member Functions

static Pointer New (void)

Protected Member Functions

 ConstrainedOnePlusOneEvolutionarySOOptimizer ()
virtual ~ConstrainedOnePlusOneEvolutionarySOOptimizer ()
void PrintSelf (std::ostream &os, itk::Indent indent) const
void CheckTraitsOfChild (vnl_vector< double > &child)

Protected Attributes

NormalVariateGeneratorType::Pointer m_RandomGenerator
unsigned int m_MaximumIteration
unsigned int m_CurrentIteration
bool m_Maximize
double m_Epsilon
double m_InitialRadius
double m_GrowthFactor
double m_ShrinkFactor
bool m_Initialized
bool m_Stop
double m_FrobeniusNorm
MeasureType m_CurrentChildValue
ParametersType m_CurrentChildPosition

Private Member Functions

 ConstrainedOnePlusOneEvolutionarySOOptimizer (const Self &)
void operator= (const Self &)


Detailed Description

Based on the source code of itk::OnePlusOneEvolutionaryOptimizer. It utilizes the optimization strategy for setup optimization with the adding of "parameter traits awareness", so when generating a child the traits of a parameter, specified by the setup transform, will be regarded.

Definition at line 41 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.


Member Typedef Documentation

typedef ConstrainedOnePlusOneEvolutionarySOOptimizer FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::Self

Standard "Self" typedef.

Reimplemented from FREE::SetupOptimizationOptimizer.

Definition at line 46 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

typedef SetupOptimizationOptimizer FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::Superclass

Reimplemented from FREE::SetupOptimizationOptimizer.

Definition at line 47 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

typedef itk::SmartPointer<Self> FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::Pointer

Reimplemented from FREE::SetupOptimizationOptimizer.

Definition at line 48 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

typedef itk::SmartPointer<const Self> FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::ConstPointer

Reimplemented from FREE::SetupOptimizationOptimizer.

Definition at line 49 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

typedef itk::Statistics::RandomVariateGeneratorBase FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::NormalVariateGeneratorType

Normal random variate generator type.

Definition at line 55 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.


Constructor & Destructor Documentation

FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::ConstrainedOnePlusOneEvolutionarySOOptimizer (  )  [protected]

Definition at line 34 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.cxx.

FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::~ConstrainedOnePlusOneEvolutionarySOOptimizer (  )  [protected, virtual]

Definition at line 52 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.cxx.

FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::ConstrainedOnePlusOneEvolutionarySOOptimizer ( const Self  )  [private]


Member Function Documentation

virtual const char* FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::GetNameOfClass (  )  const [inline, virtual]

Run-time type information (and related methods).

Reimplemented from FREE::SetupOptimizationOptimizer.

Definition at line 52 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

static Pointer FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::New ( void   )  [inline, static]

Method for creation through the object factory.

Definition at line 55 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

virtual ::itk::LightObject::Pointer FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::CreateAnother ( void   )  const [inline, virtual]

Definition at line 55 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

virtual void FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::SetMaximize ( const bool  _arg  )  [inline, virtual]

Set if the Optimizer should maximize the metric

Definition at line 61 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

virtual void FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::MaximizeOn (  )  [inline, virtual]

Definition at line 62 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

virtual void FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::MaximizeOff (  )  [inline, virtual]

Definition at line 62 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

virtual void FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::SetMaximumIteration ( const unsigned int  _arg  )  [inline, virtual]

Set/Get maximum iteration limit.

Definition at line 65 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

virtual const unsigned int& FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::GetMaximumIteration (  )  const [inline, virtual]

Definition at line 66 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

virtual void FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::SetGrowthFactor ( const double  _arg  )  [inline, virtual]

Set/Get the search radius grow factor in parameter space.

Definition at line 69 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

virtual const double& FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::GetGrowthFactor (  )  const [inline, virtual]

Definition at line 70 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

virtual void FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::SetShrinkFactor ( const double  _arg  )  [inline, virtual]

Set/Get the search radius shrink factor.

Definition at line 73 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

virtual const double& FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::GetShrinkFactor (  )  const [inline, virtual]

Definition at line 74 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

virtual void FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::SetInitialRadius ( const double  _arg  )  [inline, virtual]

Set/Get initial search radius in parameter space

Definition at line 77 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

virtual const double& FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::GetInitialRadius (  )  const [inline, virtual]

Definition at line 78 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

virtual void FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::SetEpsilon ( const double  _arg  )  [inline, virtual]

Set/Get the minimal size of search radius (frobenius_norm of covariance matrix).

Definition at line 83 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

virtual const double& FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::GetEpsilon (  )  const [inline, virtual]

Definition at line 84 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

virtual const double& FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::GetFrobeniusNorm (  )  const [inline, virtual]

Get the current Frobenius norm of covariance matrix

Definition at line 87 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

void FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::SetNormalVariateGenerator ( NormalVariateGeneratorType generator  ) 

Definition at line 58 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.cxx.

MeasureType FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::GetValue (  )  const [inline]

Return Current Value

Definition at line 92 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

virtual const unsigned int& FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::GetCurrentIteration (  )  const [inline, virtual]

Return Current Iteration

Definition at line 95 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

void FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::StartOptimization ( void   )  [virtual]

Start optimization. Optimization will stop when it meets either of two termination conditions, the maximum iteration limit or epsilon (minimal search radius)

Implements FREE::SetupOptimizationOptimizer.

Definition at line 132 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.cxx.

virtual void FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::StopOptimization ( void   )  [inline, virtual]

when users call StartOptimization, this value will be set false. By calling StopOptimization, this flag will be set true, and optimization will stop at the next iteration.

Reimplemented from FREE::SetupOptimizationOptimizer.

Definition at line 105 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

virtual bool FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::IsStoppable (  )  const [inline, virtual]

Indicates if the optimizer can be stopped.

Reimplemented from FREE::SetupOptimizationOptimizer.

Definition at line 109 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

virtual const MeasureType& FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::GetCurrentChildValue (  )  const [inline, virtual]

Definition at line 112 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

virtual const ParametersType& FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::GetCurrentChildPosition (  )  const [inline, virtual]

Definition at line 113 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

void FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::Initialize ( double  initialRadius,
double  grow = -1,
double  shrink = -1 
)

Initializes the optimizer. Before running this optimizer, this function should have been called.

Parameters:
initialRadius Search radius in parameter space.
grow Search radius grow factor
shrink Search radius shrink factor

Definition at line 69 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.cxx.

void FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::PrintSelf ( std::ostream &  os,
itk::Indent  indent 
) const [protected]

Reimplemented from FREE::SetupOptimizationOptimizer.

Definition at line 86 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.cxx.

void FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::CheckTraitsOfChild ( vnl_vector< double > &  child  )  [protected]

Definition at line 113 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.cxx.

void FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::operator= ( const Self  )  [private]


Member Data Documentation

NormalVariateGeneratorType::Pointer FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::m_RandomGenerator [protected]

Smart pointer to the normal random variate generator.

Definition at line 128 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

unsigned int FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::m_MaximumIteration [protected]

Maximum iteration limit.

Definition at line 131 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

unsigned int FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::m_CurrentIteration [protected]

Current iteration

Definition at line 134 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

bool FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::m_Maximize [protected]

Set if the Metric should be maximized: Default = False

Definition at line 137 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

double FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::m_Epsilon [protected]

The minimal size of search radius (frobenius_norm of covariance matrix).

Definition at line 141 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

double FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::m_InitialRadius [protected]

Initial search radius in parameter space.

Definition at line 144 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

double FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::m_GrowthFactor [protected]

Search radius growth factor in parameter space.

Definition at line 147 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

double FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::m_ShrinkFactor [protected]

Search radius shrink factor in parameter space,

Definition at line 150 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

bool FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::m_Initialized [protected]

Flag tells if the optimizer was initialized using Initialize function.

Definition at line 153 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

bool FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::m_Stop [protected]

This is user-settable flag to stop optimization. when users call StartOptimization, this value will be set false. By calling StopOptimization, this flag will be set true, and optimization will stop at the next iteration.

Definition at line 159 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

double FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::m_FrobeniusNorm [protected]

Cache variable for reporting the Frobenius Norm

Definition at line 163 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

MeasureType FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::m_CurrentChildValue [mutable, protected]

Definition at line 165 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.

ParametersType FREE::ConstrainedOnePlusOneEvolutionarySOOptimizer::m_CurrentChildPosition [mutable, protected]

Definition at line 166 of file freConstrainedOnePlusOneEvolutionarySOOptimizer.h.


The documentation for this class was generated from the following files:
Generated at Sat Oct 13 18:17:48 2007 for f.r.e.e. - Flexible Registration and Evaluation Engine by doxygen 1.5.3 written by Dimitri van Heesch, © 1997-2000