9 #ifndef __IPBACKTRACKINGLSACCEPTOR_HPP__ 10 #define __IPBACKTRACKINGLSACCEPTOR_HPP__ 34 const std::string& prefix
44 virtual void Reset() = 0;
173 THROW_EXCEPTION(OPTION_INVALID,
"Value \"acceptor\" for option \"alpha_for_y\" not valid for this line search.");
virtual bool CheckAcceptabilityOfTrialPoint(Number alpha_primal)=0
Method for checking if current trial point is acceptable.
This is the base class for all algorithm strategy objects.
double Number
Type of all numbers.
static void RegisterOptions(SmartPtr< RegisteredOptions > roptions)
Methods for OptionsList.
BacktrackingLSAcceptor()
Constructor.
Base class for backtracking line search acceptors.
virtual char UpdateForNextIteration(Number alpha_primal_test)=0
Method for ending the current line search.
virtual void StopWatchDog()=0
Method for setting internal data if the watchdog procedure is stopped.
This file contains a base class for all exceptions and a set of macros to help with exceptions...
virtual bool TrySecondOrderCorrection(Number alpha_primal_test, Number &alpha_primal, SmartPtr< IteratesVector > &actual_delta)=0
Try a second order correction for the constraints.
virtual void PrepareRestoPhaseStart()=0
Method that is called before the restoration phase is called.
Template class for Smart Pointers.
This class stores a list of user set options.
virtual bool InitializeImpl(const OptionsList &options, const std::string &prefix)=0
Implementation of the initialization method that has to be overloaded by for each derived class...
virtual bool HasComputeAlphaForY() const
Method returning true of ComputeAlphaForY is implemented for this acceptor.
virtual void InitThisLineSearch(bool in_watchdog)=0
Initialization for the next line search.
void operator=(const BacktrackingLSAcceptor &)
Default Assignment Operator.
virtual void StartWatchDog()=0
Method for setting internal data if the watchdog procedure is started.
virtual ~BacktrackingLSAcceptor()
Destructor.
virtual Number CalculateAlphaMin()=0
Method returning the lower bound on the trial step sizes.
virtual bool NeverRestorationPhase()
Method called by BacktrackingLineSearch object to determine whether the restoration phase should neve...
virtual bool TryCorrector(Number alpha_primal_test, Number &alpha_primal, SmartPtr< IteratesVector > &actual_delta)=0
Try higher order corrector (for fast local convergence).
virtual void Reset()=0
Reset the acceptor.
virtual Number ComputeAlphaForY(Number, Number, SmartPtr< IteratesVector > &)
Method for computing the step for the constraint multipliers in the line search acceptor method...
#define THROW_EXCEPTION(__except_type, __msg)
virtual bool DoFallback()
Method for doing a fallback approach in case no search direction could be computed.
virtual bool RestoredIterate()
Method for telling the BacktrackingLineSearch object that a previous iterate has been restored...