Convergence check for the restoration phase as called by the filter. More...
#include <IpRestoFilterConvCheck.hpp>
Public Member Functions | |
void | SetOrigFilterLSAcceptor (const FilterLSAcceptor &orig_filter_ls_acceptor) |
Set the object for the original filter line search. | |
virtual bool | InitializeImpl (const OptionsList &options, const std::string &prefix) |
overloaded from AlgorithmStrategyObject | |
virtual ConvergenceStatus | CheckConvergence (bool call_intermediate_callback=true) |
overloaded from ConvergenceCheck | |
Constructors/Destructors | |
RestoFilterConvergenceCheck () | |
Default Constructor. | |
virtual | ~RestoFilterConvergenceCheck () |
Default destructor. | |
Static Public Member Functions | |
static void | RegisterOptions (SmartPtr< RegisteredOptions > roptions) |
Methods used by IpoptType. | |
Private Member Functions | |
Default Compiler Generated Methods (Hidden to avoid | |
RestoFilterConvergenceCheck (const RestoFilterConvergenceCheck &) | |
Copy Constructor. | |
void | operator= (const RestoFilterConvergenceCheck &) |
Overloaded Equals Operator. | |
Private Attributes | |
bool | first_resto_iter_ |
Flag indicating that this is the first call. | |
Index | successive_resto_iter_ |
Counter for successive iterations in restoration phase. | |
const FilterLSAcceptor * | orig_filter_ls_acceptor_ |
Strategy object for the filter line search method for the original NLP. | |
Algorithmic parameters | |
Number | kappa_resto_ |
Fraction of required reduction in infeasibility before problem is considered to be solved. | |
Index | maximum_iters_ |
Maximum number of iterations in restoration phase. | |
Index | maximum_resto_iters_ |
Maximum number of succesive iterations in restoration phase. |
Convergence check for the restoration phase as called by the filter.
This inherits from the OptimalityErrorConvergenceCheck so that the method for the regular optimality error convergence criterion can be checked as well. In addition, this convergence check returns the CONVERGED message, if the current iteration is acceptable to the original filter.
Since this object needs to know about the original NLP, it also inherits from RestoProblemCoupler, so that the restoration phase object can call the SetObjs method to set the corresponding pointers before the Initilize for the restoration phase algorithm is called.
Definition at line 31 of file IpRestoFilterConvCheck.hpp.
Ipopt::RestoFilterConvergenceCheck::RestoFilterConvergenceCheck | ( | ) |
Default Constructor.
virtual Ipopt::RestoFilterConvergenceCheck::~RestoFilterConvergenceCheck | ( | ) | [virtual] |
Default destructor.
Ipopt::RestoFilterConvergenceCheck::RestoFilterConvergenceCheck | ( | const RestoFilterConvergenceCheck & | ) | [private] |
Copy Constructor.
void Ipopt::RestoFilterConvergenceCheck::SetOrigFilterLSAcceptor | ( | const FilterLSAcceptor & | orig_filter_ls_acceptor | ) |
Set the object for the original filter line search.
Here, filter_line_search must be the same strategy object to which the restoration phase object with this object is given. This method must be called to finish the definition of the algorithm, before Initialize is called.
virtual bool Ipopt::RestoFilterConvergenceCheck::InitializeImpl | ( | const OptionsList & | options, | |
const std::string & | prefix | |||
) | [virtual] |
overloaded from AlgorithmStrategyObject
Reimplemented from Ipopt::OptimalityErrorConvergenceCheck.
virtual ConvergenceStatus Ipopt::RestoFilterConvergenceCheck::CheckConvergence | ( | bool | call_intermediate_callback = true |
) | [virtual] |
overloaded from ConvergenceCheck
Reimplemented from Ipopt::OptimalityErrorConvergenceCheck.
static void Ipopt::RestoFilterConvergenceCheck::RegisterOptions | ( | SmartPtr< RegisteredOptions > | roptions | ) | [static] |
Methods used by IpoptType.
Reimplemented from Ipopt::OptimalityErrorConvergenceCheck.
void Ipopt::RestoFilterConvergenceCheck::operator= | ( | const RestoFilterConvergenceCheck & | ) | [private] |
Overloaded Equals Operator.
Reimplemented from Ipopt::OptimalityErrorConvergenceCheck.
Fraction of required reduction in infeasibility before problem is considered to be solved.
Definition at line 80 of file IpRestoFilterConvCheck.hpp.
Maximum number of iterations in restoration phase.
Definition at line 82 of file IpRestoFilterConvCheck.hpp.
Maximum number of succesive iterations in restoration phase.
Definition at line 84 of file IpRestoFilterConvCheck.hpp.
bool Ipopt::RestoFilterConvergenceCheck::first_resto_iter_ [private] |
Flag indicating that this is the first call.
We don't want to leave the restoration phase without taking at least one step, so this flag is used to ensure this.
Definition at line 90 of file IpRestoFilterConvCheck.hpp.
Counter for successive iterations in restoration phase.
Definition at line 93 of file IpRestoFilterConvCheck.hpp.
Strategy object for the filter line search method for the original NLP.
CAREFUL: We must not hold on to this object with a SmartPtr, because have otherwise circular references that prevent the destructor of the line search object to be called!
Definition at line 100 of file IpRestoFilterConvCheck.hpp.