Ipopt Documentation  
 
Loading...
Searching...
No Matches
Ipopt::RestoConvergenceCheck Class Referenceabstract

Convergence check for the restoration phase. More...

#include <IpRestoConvCheck.hpp>

+ Inheritance diagram for Ipopt::RestoConvergenceCheck:

Public Member Functions

virtual bool InitializeImpl (const OptionsList &options, const std::string &prefix)
 overloaded from AlgorithmStrategyObject
 
virtual ConvergenceStatus CheckConvergence (bool call_intermediate_callback=true)
 Pure virtual method for performing the convergence test.
 
virtual void SetOrigLSAcceptor (const BacktrackingLSAcceptor &orig_ls_acceptor)=0
 Method for setting the LS acceptor from the main algorithm.
 
Constructors/Destructors
 RestoConvergenceCheck ()
 Default Constructor.
 
virtual ~RestoConvergenceCheck ()
 Destructor.
 
- Public Member Functions inherited from Ipopt::OptimalityErrorConvergenceCheck
virtual bool CurrentIsAcceptable ()
 Auxiliary function for testing whether current iterate satisfies the acceptable level of optimality.
 
 OptimalityErrorConvergenceCheck ()
 Default Constructor.
 
virtual ~OptimalityErrorConvergenceCheck ()
 Destructor.
 
- Public Member Functions inherited from Ipopt::ConvergenceCheck
 ConvergenceCheck ()
 Constructor.
 
virtual ~ConvergenceCheck ()
 Destructor.
 
- Public Member Functions inherited from Ipopt::AlgorithmStrategyObject
bool Initialize (const Journalist &jnlst, IpoptNLP &ip_nlp, IpoptData &ip_data, IpoptCalculatedQuantities &ip_cq, const OptionsList &options, const std::string &prefix)
 This method is called every time the algorithm starts again - it is used to reset any internal state.
 
bool ReducedInitialize (const Journalist &jnlst, const OptionsList &options, const std::string &prefix)
 Reduced version of the Initialize method, which does not require special Ipopt information.
 
 AlgorithmStrategyObject ()
 Default Constructor.
 
virtual ~AlgorithmStrategyObject ()
 Destructor.
 
- Public Member Functions inherited from Ipopt::ReferencedObject
 ReferencedObject ()
 
virtual ~ReferencedObject ()
 
Index ReferenceCount () const
 
void AddRef (const Referencer *referencer) const
 
void ReleaseRef (const Referencer *referencer) const
 

Static Public Member Functions

static void RegisterOptions (SmartPtr< RegisteredOptions > roptions)
 
- Static Public Member Functions inherited from Ipopt::OptimalityErrorConvergenceCheck
static void RegisterOptions (SmartPtr< RegisteredOptions > roptions)
 

Private Member Functions

virtual ConvergenceStatus TestOrigProgress (Number orig_trial_barr, Number orig_trial_theta)=0
 Method for checking progress with original globalization mechanism.
 
Default Compiler Generated Methods

(Hidden to avoid implicit creation/calling).

These methods are not implemented and we do not want the compiler to implement them for us, so we declare them private and do not define them. This ensures that they will not be implicitly created/called.

 RestoConvergenceCheck (const RestoConvergenceCheck &)
 Copy Constructor.
 
void operator= (const RestoConvergenceCheck &)
 Default Assignment 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.
 
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 successive iterations in restoration phase.
 
Number orig_constr_viol_tol_
 Constraint violation tolerance for original algorithm.
 

Additional Inherited Members

- Public Types inherited from Ipopt::ConvergenceCheck
enum  ConvergenceStatus {
  CONTINUE , CONVERGED , CONVERGED_TO_ACCEPTABLE_POINT , MAXITER_EXCEEDED ,
  CPUTIME_EXCEEDED , WALLTIME_EXCEEDED , DIVERGING , USER_STOP ,
  FAILED
}
 Convergence return enum. More...
 
- Protected Member Functions inherited from Ipopt::AlgorithmStrategyObject
const JournalistJnlst () const
 
IpoptNLPIpNLP () const
 
IpoptDataIpData () const
 
IpoptCalculatedQuantitiesIpCq () const
 
bool HaveIpData () const
 
- Protected Attributes inherited from Ipopt::OptimalityErrorConvergenceCheck
Index max_iterations_
 Maximal number of iterations.
 
Number dual_inf_tol_
 Tolerance on unscaled dual infeasibility.
 
Number constr_viol_tol_
 Tolerance on unscaled constraint violation.
 
Number compl_inf_tol_
 Tolerance on unscaled complementarity.
 
Index acceptable_iter_
 Number of iterations with acceptable level of accuracy, after which the algorithm terminates.
 
Number acceptable_tol_
 Acceptable tolerance for the problem to terminate earlier if algorithm seems stuck or cycling.
 
Number acceptable_dual_inf_tol_
 Acceptable tolerance on unscaled dual infeasibility.
 
Number acceptable_constr_viol_tol_
 Acceptable tolerance on unscaled constraint violation.
 
Number acceptable_compl_inf_tol_
 Acceptable tolerance on unscaled complementarity.
 
Number acceptable_obj_change_tol_
 Acceptable tolerance for relative objective function change from iteration to iteration.
 
Number diverging_iterates_tol_
 Threshold for primal iterates for divergence test.
 
Number mu_target_
 Desired value of the barrier parameter.
 
Number max_wall_time_
 Upper bound on wallclock time.
 
Number max_cpu_time_
 Upper bound on CPU time.
 

Detailed Description

Convergence check for the restoration phase.

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 globalization scheme.

Definition at line 27 of file IpRestoConvCheck.hpp.

Constructor & Destructor Documentation

◆ RestoConvergenceCheck() [1/2]

Ipopt::RestoConvergenceCheck::RestoConvergenceCheck ( )

Default Constructor.

◆ ~RestoConvergenceCheck()

virtual Ipopt::RestoConvergenceCheck::~RestoConvergenceCheck ( )
virtual

Destructor.

◆ RestoConvergenceCheck() [2/2]

Ipopt::RestoConvergenceCheck::RestoConvergenceCheck ( const RestoConvergenceCheck )
private

Copy Constructor.

Member Function Documentation

◆ InitializeImpl()

virtual bool Ipopt::RestoConvergenceCheck::InitializeImpl ( const OptionsList options,
const std::string &  prefix 
)
virtual

◆ CheckConvergence()

virtual ConvergenceStatus Ipopt::RestoConvergenceCheck::CheckConvergence ( bool  call_intermediate_callback = true)
virtual

Pure virtual method for performing the convergence test.

If call_intermediate_callback is true, the user callback method in the NLP should be called in order to see if the user requests an early termination.

Reimplemented from Ipopt::OptimalityErrorConvergenceCheck.

◆ SetOrigLSAcceptor()

virtual void Ipopt::RestoConvergenceCheck::SetOrigLSAcceptor ( const BacktrackingLSAcceptor orig_ls_acceptor)
pure virtual

Method for setting the LS acceptor from the main algorithm.

Implemented in Ipopt::RestoFilterConvergenceCheck, and Ipopt::RestoPenaltyConvergenceCheck.

◆ RegisterOptions()

static void Ipopt::RestoConvergenceCheck::RegisterOptions ( SmartPtr< RegisteredOptions roptions)
static

◆ operator=()

void Ipopt::RestoConvergenceCheck::operator= ( const RestoConvergenceCheck )
private

Default Assignment Operator.

◆ TestOrigProgress()

virtual ConvergenceStatus Ipopt::RestoConvergenceCheck::TestOrigProgress ( Number  orig_trial_barr,
Number  orig_trial_theta 
)
privatepure virtual

Method for checking progress with original globalization mechanism.

Implemented in Ipopt::RestoFilterConvergenceCheck, and Ipopt::RestoPenaltyConvergenceCheck.

Member Data Documentation

◆ kappa_resto_

Number Ipopt::RestoConvergenceCheck::kappa_resto_
private

Fraction of required reduction in infeasibility before problem is considered to be solved.

Definition at line 87 of file IpRestoConvCheck.hpp.

◆ maximum_iters_

Index Ipopt::RestoConvergenceCheck::maximum_iters_
private

Maximum number of iterations in restoration phase.

Definition at line 90 of file IpRestoConvCheck.hpp.

◆ maximum_resto_iters_

Index Ipopt::RestoConvergenceCheck::maximum_resto_iters_
private

Maximum number of successive iterations in restoration phase.

Definition at line 93 of file IpRestoConvCheck.hpp.

◆ orig_constr_viol_tol_

Number Ipopt::RestoConvergenceCheck::orig_constr_viol_tol_
private

Constraint violation tolerance for original algorithm.

Definition at line 96 of file IpRestoConvCheck.hpp.

◆ first_resto_iter_

bool Ipopt::RestoConvergenceCheck::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 104 of file IpRestoConvCheck.hpp.

◆ successive_resto_iter_

Index Ipopt::RestoConvergenceCheck::successive_resto_iter_
private

Counter for successive iterations in restoration phase.

Definition at line 107 of file IpRestoConvCheck.hpp.


The documentation for this class was generated from the following file: