Ipopt  3.12.12
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Private Member Functions | List of all members
Ipopt::CGSearchDirCalculator Class Reference

Implementation of the search direction calculator that computes the Chen-Goldfarb step for the current barrier and penalty parameter. More...

#include <IpCGSearchDirCalc.hpp>

+ Inheritance diagram for Ipopt::CGSearchDirCalculator:

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...
 
- Public Member Functions inherited from Ipopt::SearchDirectionCalculator
 SearchDirectionCalculator ()
 Constructor. More...
 
virtual ~SearchDirectionCalculator ()
 Default destructor. More...
 
- 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. 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...
 
- 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)
 Methods for IpoptType. More...
 

Private Member Functions

CGPenaltyDataCGPenData ()
 Method to easily access CGPenalty data. More...
 
CGPenaltyCqCGPenCq ()
 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< PDSystemSolverpd_solver_
 

Additional Inherited Members

- Protected Member Functions inherited from Ipopt::AlgorithmStrategyObject
const JournalistJnlst () const
 
IpoptNLPIpNLP () const
 
IpoptDataIpData () const
 
IpoptCalculatedQuantitiesIpCq () const
 
bool HaveIpData () const
 

Detailed Description

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.

Constructor & Destructor Documentation

Ipopt::CGSearchDirCalculator::CGSearchDirCalculator ( const SmartPtr< PDSystemSolver > &  pd_solver)

Constructor.

virtual Ipopt::CGSearchDirCalculator::~CGSearchDirCalculator ( )
virtual

Default destructor.

Ipopt::CGSearchDirCalculator::CGSearchDirCalculator ( )
private

Default Constructor.

Ipopt::CGSearchDirCalculator::CGSearchDirCalculator ( const CGSearchDirCalculator )
private

Copy Constructor.

Member Function Documentation

virtual bool Ipopt::CGSearchDirCalculator::InitializeImpl ( const OptionsList options,
const std::string &  prefix 
)
virtual
virtual bool Ipopt::CGSearchDirCalculator::ComputeSearchDirection ( )
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 void Ipopt::CGSearchDirCalculator::RegisterOptions ( SmartPtr< RegisteredOptions roptions)
static

Methods for IpoptType.

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

Overloaded Equals Operator.

CGPenaltyData& Ipopt::CGSearchDirCalculator::CGPenData ( )
inlineprivate

Method to easily access CGPenalty data.

Definition at line 71 of file IpCGSearchDirCalc.hpp.

CGPenaltyCq& Ipopt::CGSearchDirCalculator::CGPenCq ( )
inlineprivate

Method to easily access CGPenalty calculated quantities.

Definition at line 80 of file IpCGSearchDirCalc.hpp.

Member Data Documentation

Number Ipopt::CGSearchDirCalculator::penalty_init_min_
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.

Number Ipopt::CGSearchDirCalculator::penalty_init_max_
private

Maximal value for initial penalty parameter.

Definition at line 96 of file IpCGSearchDirCalc.hpp.

Number Ipopt::CGSearchDirCalculator::penalty_max_
private

Maximal value for penalty parameters.

Definition at line 98 of file IpCGSearchDirCalc.hpp.

Number Ipopt::CGSearchDirCalculator::pen_des_fact_
private

parameters used in computation of line search penalty parameter and KKT perturbation parameters

Definition at line 104 of file IpCGSearchDirCalc.hpp.

bool Ipopt::CGSearchDirCalculator::penalty_backward_
private

Algorithm type.

Definition at line 107 of file IpCGSearchDirCalc.hpp.

Number Ipopt::CGSearchDirCalculator::kappa_x_dis_
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.

Number Ipopt::CGSearchDirCalculator::kappa_y_dis_
private

Definition at line 112 of file IpCGSearchDirCalc.hpp.

Number Ipopt::CGSearchDirCalculator::vartheta_
private

Definition at line 113 of file IpCGSearchDirCalc.hpp.

Number Ipopt::CGSearchDirCalculator::delta_y_max_
private

Definition at line 114 of file IpCGSearchDirCalc.hpp.

Number Ipopt::CGSearchDirCalculator::fast_des_fact_
private

Definition at line 115 of file IpCGSearchDirCalc.hpp.

Number Ipopt::CGSearchDirCalculator::pen_init_fac_
private

Definition at line 116 of file IpCGSearchDirCalc.hpp.

bool Ipopt::CGSearchDirCalculator::never_use_fact_cgpen_direction_
private

Flag indicating whether the fast Chen-Goldfarb direction should never be used.

Definition at line 120 of file IpCGSearchDirCalc.hpp.

Index Ipopt::CGSearchDirCalculator::nonmonotone_pen_update_counter_
private

Counter for how many times the pen para is updated nonmonotonically.

Definition at line 123 of file IpCGSearchDirCalc.hpp.

SmartPtr<PDSystemSolver> Ipopt::CGSearchDirCalculator::pd_solver_
private

Definition at line 128 of file IpCGSearchDirCalc.hpp.


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