Ipopt
3.12.12
|
Implementation of the search direction calculator that computes the Chen-Goldfarb step for the current barrier and penalty parameter. More...
#include <IpCGSearchDirCalc.hpp>
Public Member Functions | |
virtual bool | InitializeImpl (const OptionsList &options, const std::string &prefix) |
overloaded from AlgorithmStrategyObject More... | |
virtual bool | ComputeSearchDirection () |
Method for computing the search direction. More... | |
Constructors/Destructors | |
CGSearchDirCalculator (const SmartPtr< PDSystemSolver > &pd_solver) | |
Constructor. More... | |
virtual | ~CGSearchDirCalculator () |
Default destructor. More... | |
![]() | |
SearchDirectionCalculator () | |
Constructor. More... | |
virtual | ~SearchDirectionCalculator () |
Default destructor. More... | |
![]() | |
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. More... | |
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. More... | |
AlgorithmStrategyObject () | |
Default Constructor. More... | |
virtual | ~AlgorithmStrategyObject () |
Default Destructor. More... | |
![]() | |
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) |
Methods for IpoptType. More... | |
Private Member Functions | |
CGPenaltyData & | CGPenData () |
Method to easily access CGPenalty data. More... | |
CGPenaltyCq & | CGPenCq () |
Method to easily access CGPenalty calculated quantities. More... | |
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. | |
CGSearchDirCalculator () | |
Default Constructor. More... | |
CGSearchDirCalculator (const CGSearchDirCalculator &) | |
Copy Constructor. More... | |
void | operator= (const CGSearchDirCalculator &) |
Overloaded Equals Operator. More... | |
Private Attributes | |
Algorithmic parameters | |
Number | penalty_init_min_ |
safeguard factor for bound multipliers. More... | |
Number | penalty_init_max_ |
Maximal value for initial penalty parameter. More... | |
Number | penalty_max_ |
Maximal value for penalty parameters. More... | |
Number | pen_des_fact_ |
parameters used in computation of line search penalty parameter and KKT perturbation parameters More... | |
bool | penalty_backward_ |
Algorithm type. More... | |
Number | kappa_x_dis_ |
parameters used to check if the fast direction can be used as the line search direction More... | |
Number | kappa_y_dis_ |
Number | vartheta_ |
Number | delta_y_max_ |
Number | fast_des_fact_ |
Number | pen_init_fac_ |
bool | never_use_fact_cgpen_direction_ |
Flag indicating whether the fast Chen-Goldfarb direction should never be used. More... | |
Index | nonmonotone_pen_update_counter_ |
Counter for how many times the pen para is updated nonmonotonically. More... | |
Strategy objects | |
SmartPtr< PDSystemSolver > | pd_solver_ |
Additional Inherited Members | |
![]() | |
const Journalist & | Jnlst () const |
IpoptNLP & | IpNLP () const |
IpoptData & | IpData () const |
IpoptCalculatedQuantities & | IpCq () const |
bool | HaveIpData () const |
Implementation of the search direction calculator that computes the Chen-Goldfarb step for the current barrier and penalty parameter.
Definition at line 25 of file IpCGSearchDirCalc.hpp.
Ipopt::CGSearchDirCalculator::CGSearchDirCalculator | ( | const SmartPtr< PDSystemSolver > & | pd_solver | ) |
Constructor.
|
virtual |
Default destructor.
|
private |
Default Constructor.
|
private |
Copy Constructor.
|
virtual |
overloaded from AlgorithmStrategyObject
Implements Ipopt::SearchDirectionCalculator.
|
virtual |
Method for computing the search direction.
If the penalty paraemeter has not yet been initialized, it is initialized now. The computed direction is stored in IpData().delta().
Implements Ipopt::SearchDirectionCalculator.
|
static |
Methods for IpoptType.
|
private |
Overloaded Equals Operator.
|
inlineprivate |
Method to easily access CGPenalty data.
Definition at line 71 of file IpCGSearchDirCalc.hpp.
|
inlineprivate |
Method to easily access CGPenalty calculated quantities.
Definition at line 80 of file IpCGSearchDirCalc.hpp.
|
private |
safeguard factor for bound multipliers.
If value >= 1, then the dual variables will never deviate from the primal estimate by more than the factors kappa_sigma and 1./kappa_sigma.
Definition at line 94 of file IpCGSearchDirCalc.hpp.
|
private |
Maximal value for initial penalty parameter.
Definition at line 96 of file IpCGSearchDirCalc.hpp.
|
private |
Maximal value for penalty parameters.
Definition at line 98 of file IpCGSearchDirCalc.hpp.
|
private |
parameters used in computation of line search penalty parameter and KKT perturbation parameters
Definition at line 104 of file IpCGSearchDirCalc.hpp.
|
private |
Algorithm type.
Definition at line 107 of file IpCGSearchDirCalc.hpp.
|
private |
parameters used to check if the fast direction can be used as the line search direction
Definition at line 111 of file IpCGSearchDirCalc.hpp.
|
private |
Definition at line 112 of file IpCGSearchDirCalc.hpp.
|
private |
Definition at line 113 of file IpCGSearchDirCalc.hpp.
|
private |
Definition at line 114 of file IpCGSearchDirCalc.hpp.
|
private |
Definition at line 115 of file IpCGSearchDirCalc.hpp.
|
private |
Definition at line 116 of file IpCGSearchDirCalc.hpp.
|
private |
Flag indicating whether the fast Chen-Goldfarb direction should never be used.
Definition at line 120 of file IpCGSearchDirCalc.hpp.
|
private |
Counter for how many times the pen para is updated nonmonotonically.
Definition at line 123 of file IpCGSearchDirCalc.hpp.
|
private |
Definition at line 128 of file IpCGSearchDirCalc.hpp.