#include <IpOptErrorConvCheck.hpp>
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 bool | CurrentIsAcceptable () |
Auxiliary function for testing whether current iterate satisfies the acceptable level of optimality. | |
Constructors / Destructor | |
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) |
Protected Attributes | |
Algorithmic parameters | |
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. | |
Private Member Functions | |
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. | |
OptimalityErrorConvergenceCheck (const OptimalityErrorConvergenceCheck &) | |
Copy Constructor. | |
void | operator= (const OptimalityErrorConvergenceCheck &) |
Default Assignment Operator. | |
Private Attributes | |
Index | acceptable_counter_ |
Counter for successive iterations in which acceptability criteria are met. | |
Number | last_obj_val_ |
Value of the objective function from last iteration. | |
Number | curr_obj_val_ |
Value of the objective function from current iteration. | |
Index | last_obj_val_iter_ |
Iteration counter for which last_obj_val most recently updated. | |
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 Journalist & | Jnlst () const |
IpoptNLP & | IpNLP () const |
IpoptData & | IpData () const |
IpoptCalculatedQuantities & | IpCq () const |
bool | HaveIpData () const |
Definition at line 15 of file IpOptErrorConvCheck.hpp.
Ipopt::OptimalityErrorConvergenceCheck::OptimalityErrorConvergenceCheck | ( | ) |
Default Constructor.
|
virtual |
Destructor.
|
private |
Copy Constructor.
|
virtual |
overloaded from AlgorithmStrategyObject
Implements Ipopt::ConvergenceCheck.
Reimplemented in Ipopt::RestoConvergenceCheck, Ipopt::RestoFilterConvergenceCheck, and Ipopt::RestoPenaltyConvergenceCheck.
|
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.
Implements Ipopt::ConvergenceCheck.
Reimplemented in Ipopt::RestoConvergenceCheck.
Auxiliary function for testing whether current iterate satisfies the acceptable level of optimality.
Implements Ipopt::ConvergenceCheck.
|
static |
|
private |
Default Assignment Operator.
|
protected |
Maximal number of iterations.
Definition at line 50 of file IpOptErrorConvCheck.hpp.
|
protected |
Tolerance on unscaled dual infeasibility.
Definition at line 52 of file IpOptErrorConvCheck.hpp.
|
protected |
Tolerance on unscaled constraint violation.
Definition at line 54 of file IpOptErrorConvCheck.hpp.
|
protected |
Tolerance on unscaled complementarity.
Definition at line 56 of file IpOptErrorConvCheck.hpp.
|
protected |
Number of iterations with acceptable level of accuracy, after which the algorithm terminates.
If 0, this heuristic is disabled.
Definition at line 62 of file IpOptErrorConvCheck.hpp.
|
protected |
Acceptable tolerance for the problem to terminate earlier if algorithm seems stuck or cycling.
Definition at line 65 of file IpOptErrorConvCheck.hpp.
|
protected |
Acceptable tolerance on unscaled dual infeasibility.
Definition at line 67 of file IpOptErrorConvCheck.hpp.
|
protected |
Acceptable tolerance on unscaled constraint violation.
Definition at line 69 of file IpOptErrorConvCheck.hpp.
|
protected |
Acceptable tolerance on unscaled complementarity.
Definition at line 71 of file IpOptErrorConvCheck.hpp.
|
protected |
Acceptable tolerance for relative objective function change from iteration to iteration.
Definition at line 74 of file IpOptErrorConvCheck.hpp.
|
protected |
Threshold for primal iterates for divergence test.
Definition at line 76 of file IpOptErrorConvCheck.hpp.
|
protected |
Desired value of the barrier parameter.
Definition at line 78 of file IpOptErrorConvCheck.hpp.
|
protected |
Upper bound on wallclock time.
Definition at line 80 of file IpOptErrorConvCheck.hpp.
|
protected |
Upper bound on CPU time.
Definition at line 82 of file IpOptErrorConvCheck.hpp.
|
private |
Counter for successive iterations in which acceptability criteria are met.
Definition at line 109 of file IpOptErrorConvCheck.hpp.
|
private |
Value of the objective function from last iteration.
This is for accpetable_obj_change_tol.
Definition at line 115 of file IpOptErrorConvCheck.hpp.
|
private |
Value of the objective function from current iteration.
This is for accpetable_obj_change_tol.
Definition at line 121 of file IpOptErrorConvCheck.hpp.
|
private |
Iteration counter for which last_obj_val most recently updated.
Definition at line 124 of file IpOptErrorConvCheck.hpp.