#include <freContinuousLBFGSOptimizerController.h>


ContinuousLBFGSOptimizerController is derived from OptimizerControllerBase and the class for the control of a LBFGS optimizer. The class uses the itk::ContinuousLBFGSOptimizer. This version of the LBFGS optimizer was implemented to allow an optimization of setups using the LBFGS without throwing exceptions because the optimizer wasn't able to achieve an optimization right from the start.
Definition at line 45 of file freContinuousLBFGSOptimizerController.h.
The component class managed by the controller. The component class must be a derivation from itk::LightObject to ensure the ability to use the smartpointer concept of itk
Reimplemented from FREE::SVNonLinearVNLOptimizerControllerBase< itk::ContinuousLBFGSOptimizer >.
Definition at line 50 of file freContinuousLBFGSOptimizerController.h.
| typedef SVNonLinearVNLOptimizerControllerBase<ComponentType> FREE::ContinuousLBFGSOptimizerController::Superclass |
Reimplemented from FREE::SVNonLinearVNLOptimizerControllerBase< itk::ContinuousLBFGSOptimizer >.
Definition at line 51 of file freContinuousLBFGSOptimizerController.h.
| FREE::ContinuousLBFGSOptimizerController::ContinuousLBFGSOptimizerController | ( | ) |
Definition at line 39 of file freContinuousLBFGSOptimizerController.cxx.
References FREE::ComponentControllerInterface::m_Description, and FREE::ComponentControllerInterface::UpdateControllerID().

| FREE::ContinuousLBFGSOptimizerController::itkTypeMacro | ( | ContinuousLBFGSOptimizerController | , | |
| SVNonLinearVNLOptimizerControllerBase | ||||
| ) |
| FREE::ContinuousLBFGSOptimizerController::DeclareParameterMacro | ( | GradConvTolerance | ) |
| FREE::ContinuousLBFGSOptimizerController::DeclareParameterMacro | ( | LineSearchAccuracy | ) |
| FREE::ContinuousLBFGSOptimizerController::DeclareParameterMacro | ( | DefaultStepLength | ) |
| FREE::ContinuousLBFGSOptimizerController::DeclareParameterMacro | ( | TraceOn | ) |
| void FREE::ContinuousLBFGSOptimizerController::GenerateProfile | ( | CtrlProfile::ControllerProfile & | profile, | |
| const SessionComponentCache * | pComponentCache, | |||
| bool | bRegardOldSetup | |||
| ) | const [protected, virtual] |
Adjusts the current profile according to the definitions of the controller.
Method should call the superclass variant to regard demands of basic controllers.
| [in,out] | profile | Reference of the current profile. |
| [in] | pComponentCache | Pointer to the cache indicating the location of the component that should be profiled. This pointer can be null. In this case only a default profile that isn't context sensitive is wanted (others aren't possible anyway) |
| [in] | bRegardOldSetup | If true, the setup of pComponentCache is valid and should be regarded when the profile is generated. Otherwise just use defaults if setup information is needed. |
Reimplemented from FREE::SVNonLinearOptimizerControllerBase< itk::ContinuousLBFGSOptimizer >.
Definition at line 48 of file freContinuousLBFGSOptimizerController.cxx.
References FREE::cParam_Iterations, FREE::cParamDsc_Iterations, FREE::SVNonLinearOptimizerControllerBase< TControlledVNLOptimizer >::GenerateProfile(), FREE::CtrlProfile::ControllerProfileBase::Parameters(), FREE::Parameter::PVTBool, FREE::Parameter::PVTDouble, and FREE::Parameter::PVTInteger.

| void FREE::ContinuousLBFGSOptimizerController::ActualizeMainComponent | ( | ComponentType * | pMainComponent, | |
| SessionComponentCache * | pComponentCache, | |||
| SessionInfo * | pSessionInfo, | |||
| const unsigned int & | iActLevel | |||
| ) | const [protected, virtual] |
This function (called by ActualizeComponent()) actualizes the passed component with the setup information considering the actual resolution level of the ongoing registration. In a derived class this function should be overridden to provide a specific behavior.
| [in,out] | pMainComponent | Pointer to the main component. Can also be retrieved via component cache, but offered directly and already casted for more convenience. |
| [in,out] | pComponentCache | Pointer to the component cache that should be actualized. |
| [in] | pSessionInfo | Pointer to the session info. |
| [in] | iActLevel | Indicates which layer of a parameter should be used, if the parameter is layer sensitive (e.g. as resolution level of a registration). Default is 0. |
Reimplemented from FREE::ComponentControllerBase< itk::ContinuousLBFGSOptimizer >.
Definition at line 64 of file freContinuousLBFGSOptimizerController.cxx.
References catchAllNPassMacro, FREE::SessionComponentCache::Controller(), FREE::cParam_Iterations, FREE::ComponentControllerInterface::GetParameter(), FREE::SessionAccessor::GetParameterValue(), FREE::SessionComponentCache::GetParentCache(), FREE::OptimizerControllerBase< itk::ContinuousLBFGSOptimizer >::GetTransformScales(), itk::ContinuousLBFGSOptimizer::SetDefaultStepLength(), itk::ContinuousLBFGSOptimizer::SetGradientConvergenceTolerance(), itk::ContinuousLBFGSOptimizer::SetLineSearchAccuracy(), itk::ContinuousLBFGSOptimizer::SetMaximumNumberOfFunctionEvaluations(), itk::ContinuousLBFGSOptimizer::SetTrace(), and throwCtrlExceptionMacro.

| void FREE::ContinuousLBFGSOptimizerController::SetStatisticEntryMainComponent | ( | StatisticEntry & | rStatisticEntry, | |
| ComponentType * | pMainComponent, | |||
| SessionComponentCache * | pMainComponentCache, | |||
| SessionInfo * | pSessionInfo, | |||
| StatisticDictionary & | rDictionary | |||
| ) | const [protected, virtual] |
This function (called by SetStatisticEntry()) records any statistical information of the passed component In a derived class this function should be overridden to provide a specific behavior.
| [in,out] | rStatisticEntry | reference to the Statistic object, where the relevant information should be stored. |
| [in] | pMainComponent | Pointer to the casted component. Also available via cache, but already casted for convenience. |
| [in] | pMainComponentCache | Pointer to the component cache. |
| [in] | pSessionInfo | Pointer to the session info |
| [in,out] | rDictionary | Dictionary with information about the stored facts (e.g. Type, Name) The entry in the dictionary should set by the controller if needed. |
Reimplemented from FREE::SVNonLinearVNLOptimizerControllerBase< itk::ContinuousLBFGSOptimizer >.
Definition at line 102 of file freContinuousLBFGSOptimizerController.cxx.
References FREE::StatisticEntry::AddValue(), FREE::StatisticDictionary::AddValueDefinition(), FREE::SessionComponentCache::GetIDPath(), FREE::StatisticValueDefinition::GetRefID(), FREE::StatisticDictionary::GetValueDefinitionByName(), and FREE::Convert::ToStr().

1.5.3 written by Dimitri van Heesch,
© 1997-2000