ITK
4.1.0
Insight Segmentation and Registration Toolkit
|
#include <itkOptimizer.h>
Public Types | |
typedef SmartPointer< const Self > | ConstPointer |
typedef OptimizerParameters < double > | ParametersType |
typedef SmartPointer< Self > | Pointer |
typedef Array< double > | ScalesType |
typedef Optimizer | Self |
typedef Object | Superclass |
Public Member Functions | |
virtual ::itk::LightObject::Pointer | CreateAnother (void) const |
virtual const ParametersType & | GetCurrentPosition () |
virtual const ParametersType & | GetInitialPosition () |
virtual const char * | GetNameOfClass () const |
virtual const ScalesType & | GetScales () |
virtual const std::string | GetStopConditionDescription () const |
virtual void | SetInitialPosition (const ParametersType ¶m) |
void | SetScales (const ScalesType &scales) |
virtual void | StartOptimization () |
Static Public Member Functions | |
static Pointer | New () |
Protected Member Functions | |
Optimizer () | |
void | PrintSelf (std::ostream &os, Indent indent) const |
virtual void | SetCurrentPosition (const ParametersType ¶m) |
virtual | ~Optimizer () |
Protected Attributes | |
ParametersType | m_CurrentPosition |
bool | m_ScalesInitialized |
Private Member Functions | |
void | operator= (const Self &) |
Optimizer (const Self &) | |
Private Attributes | |
ParametersType | m_InitialPosition |
ScalesType | m_Scales |
Generic representation for an optimization method.
This class is a base for a hierarchy of optimizers. It is not intended to be instantiated.
Definition at line 37 of file itkOptimizer.h.
typedef SmartPointer< const Self > itk::Optimizer::ConstPointer |
Reimplemented from itk::Object.
Reimplemented in itk::ExhaustiveOptimizer, itk::InitializationBiasedParticleSwarmOptimizer, itk::OnePlusOneEvolutionaryOptimizer, itk::AmoebaOptimizer, itk::LBFGSBOptimizer, itk::PowellOptimizer, itk::ParticleSwarmOptimizer, itk::ParticleSwarmOptimizerBase, itk::QuaternionRigidTransformGradientDescentOptimizer, itk::VersorTransformOptimizer, itk::GradientDescentOptimizer, itk::VersorRigid3DTransformOptimizer, itk::FRPROptimizer, itk::CumulativeGaussianOptimizer, itk::SPSAOptimizer, itk::MultipleValuedNonLinearVnlOptimizer, itk::SingleValuedNonLinearVnlOptimizer, itk::ConjugateGradientOptimizer, itk::NonLinearOptimizer, itk::SingleValuedNonLinearOptimizer, itk::MultipleValuedNonLinearOptimizer, itk::LBFGSOptimizer, itk::LevenbergMarquardtOptimizer, itk::RegularStepGradientDescentBaseOptimizer, and itk::RegularStepGradientDescentOptimizer.
Definition at line 44 of file itkOptimizer.h.
typedef OptimizerParameters< double > itk::Optimizer::ParametersType |
Parameters type. It defines a position in the optimization search space.
Reimplemented in itk::AmoebaOptimizer, itk::PowellOptimizer, itk::QuaternionRigidTransformGradientDescentOptimizer, itk::FRPROptimizer, itk::MultipleValuedNonLinearOptimizer, itk::SingleValuedNonLinearOptimizer, itk::MultipleValuedNonLinearVnlOptimizer, and itk::NonLinearOptimizer.
Definition at line 50 of file itkOptimizer.h.
typedef SmartPointer< Self > itk::Optimizer::Pointer |
Reimplemented from itk::Object.
Reimplemented in itk::ExhaustiveOptimizer, itk::InitializationBiasedParticleSwarmOptimizer, itk::OnePlusOneEvolutionaryOptimizer, itk::AmoebaOptimizer, itk::LBFGSBOptimizer, itk::PowellOptimizer, itk::ParticleSwarmOptimizer, itk::ParticleSwarmOptimizerBase, itk::QuaternionRigidTransformGradientDescentOptimizer, itk::VersorTransformOptimizer, itk::GradientDescentOptimizer, itk::VersorRigid3DTransformOptimizer, itk::FRPROptimizer, itk::CumulativeGaussianOptimizer, itk::SPSAOptimizer, itk::MultipleValuedNonLinearVnlOptimizer, itk::SingleValuedNonLinearVnlOptimizer, itk::ConjugateGradientOptimizer, itk::NonLinearOptimizer, itk::SingleValuedNonLinearOptimizer, itk::MultipleValuedNonLinearOptimizer, itk::LBFGSOptimizer, itk::LevenbergMarquardtOptimizer, itk::RegularStepGradientDescentBaseOptimizer, and itk::RegularStepGradientDescentOptimizer.
Definition at line 43 of file itkOptimizer.h.
typedef Array< double > itk::Optimizer::ScalesType |
Scale type. This array defines scale to be applied to parameters before being evaluated in the cost function. This allows to map to a more convenient space. In particular this is used to normalize parameter spaces in which some parameters have a different dynamic range.
Reimplemented in itk::NonLinearOptimizer.
Definition at line 62 of file itkOptimizer.h.
typedef Optimizer itk::Optimizer::Self |
Standard class typedefs.
Reimplemented from itk::Object.
Reimplemented in itk::ExhaustiveOptimizer, itk::InitializationBiasedParticleSwarmOptimizer, itk::OnePlusOneEvolutionaryOptimizer, itk::AmoebaOptimizer, itk::LBFGSBOptimizer, itk::PowellOptimizer, itk::ParticleSwarmOptimizer, itk::ParticleSwarmOptimizerBase, itk::QuaternionRigidTransformGradientDescentOptimizer, itk::VersorTransformOptimizer, itk::GradientDescentOptimizer, itk::VersorRigid3DTransformOptimizer, itk::FRPROptimizer, itk::CumulativeGaussianOptimizer, itk::SPSAOptimizer, itk::MultipleValuedNonLinearVnlOptimizer, itk::SingleValuedNonLinearVnlOptimizer, itk::ConjugateGradientOptimizer, itk::NonLinearOptimizer, itk::SingleValuedNonLinearOptimizer, itk::MultipleValuedNonLinearOptimizer, itk::LBFGSOptimizer, itk::LevenbergMarquardtOptimizer, itk::RegularStepGradientDescentBaseOptimizer, and itk::RegularStepGradientDescentOptimizer.
Definition at line 41 of file itkOptimizer.h.
typedef Object itk::Optimizer::Superclass |
Reimplemented from itk::Object.
Reimplemented in itk::ExhaustiveOptimizer, itk::InitializationBiasedParticleSwarmOptimizer, itk::OnePlusOneEvolutionaryOptimizer, itk::AmoebaOptimizer, itk::LBFGSBOptimizer, itk::PowellOptimizer, itk::ParticleSwarmOptimizer, itk::ParticleSwarmOptimizerBase, itk::QuaternionRigidTransformGradientDescentOptimizer, itk::VersorTransformOptimizer, itk::GradientDescentOptimizer, itk::VersorRigid3DTransformOptimizer, itk::FRPROptimizer, itk::CumulativeGaussianOptimizer, itk::SPSAOptimizer, itk::MultipleValuedNonLinearVnlOptimizer, itk::SingleValuedNonLinearVnlOptimizer, itk::ConjugateGradientOptimizer, itk::NonLinearOptimizer, itk::SingleValuedNonLinearOptimizer, itk::MultipleValuedNonLinearOptimizer, itk::LBFGSOptimizer, itk::LevenbergMarquardtOptimizer, itk::RegularStepGradientDescentBaseOptimizer, and itk::RegularStepGradientDescentOptimizer.
Definition at line 42 of file itkOptimizer.h.
itk::Optimizer::Optimizer | ( | ) | [protected] |
virtual itk::Optimizer::~Optimizer | ( | ) | [inline, protected, virtual] |
Definition at line 87 of file itkOptimizer.h.
itk::Optimizer::Optimizer | ( | const Self & | ) | [private] |
virtual::itk::LightObject::Pointer itk::Optimizer::CreateAnother | ( | void | ) | const [virtual] |
Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.
Reimplemented from itk::Object.
Reimplemented in itk::ExhaustiveOptimizer, itk::InitializationBiasedParticleSwarmOptimizer, itk::OnePlusOneEvolutionaryOptimizer, itk::PowellOptimizer, itk::AmoebaOptimizer, itk::LBFGSBOptimizer, itk::ParticleSwarmOptimizer, itk::CumulativeGaussianOptimizer, itk::FRPROptimizer, itk::QuaternionRigidTransformGradientDescentOptimizer, itk::VersorTransformOptimizer, itk::GradientDescentOptimizer, itk::VersorRigid3DTransformOptimizer, itk::SPSAOptimizer, itk::MultipleValuedNonLinearOptimizer, itk::ConjugateGradientOptimizer, itk::NonLinearOptimizer, itk::SingleValuedNonLinearOptimizer, itk::LBFGSOptimizer, itk::LevenbergMarquardtOptimizer, itk::RegularStepGradientDescentBaseOptimizer, and itk::RegularStepGradientDescentOptimizer.
virtual const ParametersType& itk::Optimizer::GetCurrentPosition | ( | ) | [virtual] |
Get current position of the optimization.
virtual const ParametersType& itk::Optimizer::GetInitialPosition | ( | ) | [virtual] |
Get the position to initialize the optimization.
virtual const char* itk::Optimizer::GetNameOfClass | ( | ) | const [virtual] |
Run-time type information (and related methods).
Reimplemented from itk::Object.
Reimplemented in itk::ExhaustiveOptimizer, itk::InitializationBiasedParticleSwarmOptimizer, itk::OnePlusOneEvolutionaryOptimizer, itk::PowellOptimizer, itk::AmoebaOptimizer, itk::LBFGSBOptimizer, itk::ParticleSwarmOptimizer, itk::CumulativeGaussianOptimizer, itk::ParticleSwarmOptimizerBase, itk::QuaternionRigidTransformGradientDescentOptimizer, itk::VersorTransformOptimizer, itk::FRPROptimizer, itk::VersorRigid3DTransformOptimizer, itk::GradientDescentOptimizer, itk::SPSAOptimizer, itk::MultipleValuedNonLinearOptimizer, itk::SingleValuedNonLinearOptimizer, itk::ConjugateGradientOptimizer, itk::MultipleValuedNonLinearVnlOptimizer, itk::NonLinearOptimizer, itk::SingleValuedNonLinearVnlOptimizer, itk::RegularStepGradientDescentBaseOptimizer, itk::RegularStepGradientDescentOptimizer, itk::LBFGSOptimizer, and itk::LevenbergMarquardtOptimizer.
virtual const ScalesType& itk::Optimizer::GetScales | ( | ) | [virtual] |
Get current parameters scaling.
virtual const std::string itk::Optimizer::GetStopConditionDescription | ( | ) | const [virtual] |
Get the reason for termination
Reimplemented in itk::SPSAOptimizer, itk::ParticleSwarmOptimizerBase, itk::LBFGSBOptimizer, itk::OnePlusOneEvolutionaryOptimizer, itk::AmoebaOptimizer, itk::PowellOptimizer, itk::ExhaustiveOptimizer, itk::GradientDescentOptimizer, itk::LBFGSOptimizer, itk::RegularStepGradientDescentBaseOptimizer, itk::CumulativeGaussianOptimizer, and itk::LevenbergMarquardtOptimizer.
static Pointer itk::Optimizer::New | ( | ) | [static] |
Method for creation through the object factory.
Reimplemented from itk::Object.
Reimplemented in itk::ExhaustiveOptimizer, itk::InitializationBiasedParticleSwarmOptimizer, itk::OnePlusOneEvolutionaryOptimizer, itk::PowellOptimizer, itk::AmoebaOptimizer, itk::LBFGSBOptimizer, itk::ParticleSwarmOptimizer, itk::CumulativeGaussianOptimizer, itk::FRPROptimizer, itk::QuaternionRigidTransformGradientDescentOptimizer, itk::VersorTransformOptimizer, itk::GradientDescentOptimizer, itk::VersorRigid3DTransformOptimizer, itk::SPSAOptimizer, itk::MultipleValuedNonLinearOptimizer, itk::ConjugateGradientOptimizer, itk::NonLinearOptimizer, itk::SingleValuedNonLinearOptimizer, itk::LBFGSOptimizer, itk::LevenbergMarquardtOptimizer, itk::RegularStepGradientDescentBaseOptimizer, and itk::RegularStepGradientDescentOptimizer.
void itk::Optimizer::operator= | ( | const Self & | ) | [private] |
Mutex lock to protect modification to the reference count
Reimplemented from itk::Object.
Reimplemented in itk::SPSAOptimizer, itk::ParticleSwarmOptimizerBase, itk::LBFGSBOptimizer, itk::AmoebaOptimizer, itk::ExhaustiveOptimizer, itk::GradientDescentOptimizer, itk::RegularStepGradientDescentBaseOptimizer, itk::InitializationBiasedParticleSwarmOptimizer, itk::LBFGSOptimizer, itk::SingleValuedNonLinearVnlOptimizer, itk::MultipleValuedNonLinearVnlOptimizer, itk::ParticleSwarmOptimizer, itk::SingleValuedNonLinearOptimizer, itk::LevenbergMarquardtOptimizer, itk::VersorRigid3DTransformOptimizer, itk::QuaternionRigidTransformGradientDescentOptimizer, itk::VersorTransformOptimizer, itk::ConjugateGradientOptimizer, itk::MultipleValuedNonLinearOptimizer, itk::RegularStepGradientDescentOptimizer, and itk::NonLinearOptimizer.
void itk::Optimizer::PrintSelf | ( | std::ostream & | os, |
Indent | indent | ||
) | const [protected, virtual] |
Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from itk::Object.
Reimplemented in itk::SPSAOptimizer, itk::ParticleSwarmOptimizerBase, itk::LBFGSBOptimizer, itk::OnePlusOneEvolutionaryOptimizer, itk::AmoebaOptimizer, itk::PowellOptimizer, itk::GradientDescentOptimizer, itk::ExhaustiveOptimizer, itk::InitializationBiasedParticleSwarmOptimizer, itk::LBFGSOptimizer, itk::RegularStepGradientDescentBaseOptimizer, itk::SingleValuedNonLinearVnlOptimizer, itk::ParticleSwarmOptimizer, itk::CumulativeGaussianOptimizer, itk::MultipleValuedNonLinearVnlOptimizer, itk::FRPROptimizer, itk::SingleValuedNonLinearOptimizer, and itk::MultipleValuedNonLinearOptimizer.
virtual void itk::Optimizer::SetCurrentPosition | ( | const ParametersType & | param | ) | [protected, virtual] |
Set the current position.
virtual void itk::Optimizer::SetInitialPosition | ( | const ParametersType & | param | ) | [virtual] |
Set the position to initialize the optimization.
void itk::Optimizer::SetScales | ( | const ScalesType & | scales | ) |
Set current parameters scaling.
virtual void itk::Optimizer::StartOptimization | ( | void | ) | [inline, virtual] |
Start optimization.
Reimplemented in itk::OnePlusOneEvolutionaryOptimizer, itk::PowellOptimizer, itk::ParticleSwarmOptimizerBase, itk::ExhaustiveOptimizer, itk::LBFGSBOptimizer, itk::GradientDescentOptimizer, itk::AmoebaOptimizer, itk::CumulativeGaussianOptimizer, itk::FRPROptimizer, itk::RegularStepGradientDescentBaseOptimizer, itk::SPSAOptimizer, itk::ConjugateGradientOptimizer, itk::LBFGSOptimizer, and itk::LevenbergMarquardtOptimizer.
Definition at line 80 of file itkOptimizer.h.
ParametersType itk::Optimizer::m_CurrentPosition [protected] |
Definition at line 98 of file itkOptimizer.h.
Definition at line 103 of file itkOptimizer.h.
ScalesType itk::Optimizer::m_Scales [private] |
Definition at line 104 of file itkOptimizer.h.
bool itk::Optimizer::m_ScalesInitialized [protected] |
Definition at line 93 of file itkOptimizer.h.