#include <AdaptiveLineSearch.h>
Public Member Functions | |
AdaptiveLineSearch (ObjectiveFunction *=NULL) | |
Constructor. | |
AdaptiveLineSearch (const AdaptiveLineSearch &) | |
Copy constructor. | |
virtual void | Initialize () |
Initialize optimization. | |
AdaptiveLineSearch & | operator= (const AdaptiveLineSearch &) |
Assignment operator. | |
virtual ParameterList | Parameter () const |
Get parameters as key/value as string map. | |
virtual double | Run () |
Make optimal step along search direction. | |
virtual bool | Set (const char *, const char *) |
Set parameter value from string. | |
virtual | ~AdaptiveLineSearch () |
Destructor. | |
Public Member Functions inherited from mirtk::InexactLineSearch | |
virtual void | Function (ObjectiveFunction *) |
Set objective function. | |
InexactLineSearch (ObjectiveFunction *=NULL) | |
Constructor. | |
InexactLineSearch (const InexactLineSearch &) | |
Copy constructor. | |
InexactLineSearch & | operator= (const InexactLineSearch &) |
Assignment operator. | |
virtual | ~InexactLineSearch () |
Destructor. | |
Public Member Functions inherited from mirtk::LineSearch | |
virtual LineSearchStrategy | Strategy () const =0 |
Line search strategy implemented by this line search. | |
virtual | ~LineSearch () |
Destructor. | |
Public Member Functions inherited from mirtk::LocalOptimizer | |
void | AddStoppingCriterion (StoppingCriterion *) |
Add stopping criterion and take over ownership of the object. | |
void | ClearStoppingCriteria () |
Delete all stopping criteria. | |
int | NumberOfStoppingCriteria () const |
Get number of stopping criteria. | |
virtual enum OptimizationMethod | OptimizationMethod () const =0 |
Optimization method implemented by this optimizer. | |
void | RemoveStoppingCriterion (StoppingCriterion *) |
Remove stopping criterion and revoke ownership of the object. | |
class StoppingCriterion * | StoppingCriterion (int) |
Get the n-th stopping criterion. | |
const class StoppingCriterion * | StoppingCriterion (int) const |
Get the n-th stopping criterion. | |
virtual | ~LocalOptimizer () |
Destructor. | |
Public Member Functions inherited from mirtk::Observable | |
void | AddObserver (Observer &) |
Add observer. | |
void | Broadcast (Event, const void *=NULL) |
Broadcast event to observers. | |
void | ClearObservers () |
Delete all observers. | |
void | DeleteObserver (Observer &) |
Delete observer. | |
void | NotifyObservers (Event, const void *=NULL) |
Notify all observers about given event if this object has changed. | |
int | NumberOfObservers () const |
Number of current observers. | |
virtual | ~Observable () |
Destructor. | |
Public Member Functions inherited from mirtk::Object | |
virtual const char * | NameOfClass () const =0 |
Get name of class, which this object is an instance of. | |
bool | Parameter (const ParameterList &) |
Set parameters from name/value pairs. | |
virtual | ~Object () |
Destructor. | |
Additional Inherited Members | |
Public Types inherited from mirtk::LocalOptimizer | |
typedef ObjectFactory< enum OptimizationMethod, LocalOptimizer > | FactoryType |
Type of optimizer factory. | |
Static Public Member Functions inherited from mirtk::LineSearch | |
static LineSearch * | New (LineSearchStrategy &, ObjectiveFunction *=NULL) |
Instantiate line search implementing specified strategy. | |
Static Public Member Functions inherited from mirtk::LocalOptimizer | |
static FactoryType & | Factory () |
Get global optimizer factory instance. | |
static LocalOptimizer * | New (enum OptimizationMethod, ObjectiveFunction *=NULL) |
Construct optimizer. | |
Static Public Member Functions inherited from mirtk::Object | |
static const char * | NameOfType () |
Get name of this class type. | |
Protected Member Functions inherited from mirtk::InexactLineSearch | |
double | Advance (double) |
void | Retreat (double) |
Revert step in search direction. | |
double | Value (double, double *=NULL) |
Protected Member Functions inherited from mirtk::LineSearch | |
LineSearch (ObjectiveFunction *=NULL) | |
Constructor. | |
LineSearch (const LineSearch &) | |
Copy constructor. | |
LineSearch & | operator= (const LineSearch &) |
Assignment operator. | |
Protected Member Functions inherited from mirtk::LocalOptimizer | |
virtual bool | Converged (int iter, double value, const double *delta) |
bool | IsImprovement (double prev, double value) const |
LocalOptimizer (ObjectiveFunction *=NULL) | |
Constructor. | |
LocalOptimizer (const LocalOptimizer &) | |
Copy constructor. | |
LocalOptimizer & | operator= (const LocalOptimizer &) |
Assignment operator. | |
Protected Member Functions inherited from mirtk::Observable | |
Observable () | |
Default constructor. | |
Observable (const Observable &) | |
Copy constructor. | |
Observable & | operator= (const Observable &) |
Assignment operator. | |
Protected Member Functions inherited from mirtk::Object | |
template<typename... Args> | |
void | Throw (ErrorType err, const char *func, Args... args) const |
Static Protected Member Functions inherited from mirtk::Object | |
template<typename... Args> | |
static void | ThrowStatic (ErrorType err, const char *cls, const char *func, Args... args) |
Protected Attributes inherited from mirtk::InexactLineSearch | |
double * | _CurrentDoFValues |
Previous function parameters. | |
double * | _ScaledDirection |
Line search direction scaled by current step length. | |
Searches sufficiently optimal step length along search direction
This local optimizer implements an inexact line search with adaptive step size control, increasing the step size while steps are accepted, and decreasing it when a step did not yield a sufficient improvement.
Definition at line 36 of file AdaptiveLineSearch.h.