Ipopt::CGPenaltyData Class Reference

Class to organize all the additional data required by the Chen-Goldfarb penalty function algorithm. More...

#include <IpCGPenaltyData.hpp>

Inheritance diagram for Ipopt::CGPenaltyData:

Inheritance graph
[legend]
Collaboration diagram for Ipopt::CGPenaltyData:

Collaboration graph
[legend]
List of all members.

Public Member Functions

bool Initialize (const Journalist &jnlst, const OptionsList &options, const std::string &prefix)
 This method must be called to initialize the global algorithmic parameters.
bool InitializeDataStructures ()
 Initialize Data Structures.
SmartPtr< const IteratesVectordelta_cgpen () const
 Delta for the Chen-Goldfarb search direction.
void set_delta_cgpen (SmartPtr< IteratesVector > &delta_pen)
 Set the delta_cgpen - like the trial point, this method copies the pointer for efficiency (no copy and to keep cache tags the same) so after you call set, you cannot modify the data.
void set_delta_cgpen (SmartPtr< const IteratesVector > &delta_pen)
 Set the delta_cgpen - like the trial point, this method copies the pointer for efficiency (no copy and to keep cache tags the same) so after you call set, you cannot modify the data.
SmartPtr< const IteratesVectordelta_cgfast () const
 Delta for the fast Chen-Goldfarb search direction.
void set_delta_cgfast (SmartPtr< IteratesVector > &delta_fast)
 Set the delta_cgpen - like the trial point, this method copies the pointer for efficiency (no copy and to keep cache tags the same) so after you call set, you cannot modify the data.
Number CurrPenaltyPert ()
void SetCurrPenaltyPert (Number curr_penalty_pert)
void SetNeverTryPureNewton (bool never_try_pure_Newton)
Index NeverTryPureNewton ()
Index restor_iter ()
void SetRestorIter (Index restor_iter)
Number restor_counter ()
void SetRestorCounter (Number restor_counter)
void SetPrimalStepSize (Number max_alpha_x)
Number PrimalStepSize ()
Number curr_penalty () const
void Set_penalty (Number penalty)
void SetPenaltyUninitialized ()
bool PenaltyInitialized () const
Number curr_kkt_penalty () const
void Set_kkt_penalty (Number kkt_penalty)
void SetKKTPenaltyUninitialized ()
bool KKTPenaltyInitialized () const
Constructors/Destructors
 CGPenaltyData ()
 Constructor.
 ~CGPenaltyData ()
 Default destructor.
Chen-Goldfarb step2. Those fields can be used to store
directions related to the Chen-Goldfarb algorithm

bool HaveCgPenDeltas () const
void SetHaveCgPenDeltas (bool have_cgpen_deltas)
bool HaveCgFastDeltas () const
void SetHaveCgFastDeltas (bool have_cgfast_deltas)
Public Methods for updating iterates
void AcceptTrialPoint ()
 Set the current iterate values from the trial values.

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.

 CGPenaltyData (const CGPenaltyData &)
 Copy Constructor.
void operator= (const CGPenaltyData &)
 Overloaded Equals Operator.

Private Attributes

bool initialize_called_
 flag indicating if Initialize method has been called (for debugging)
Pure Chen-Goldfarb step for the penatly function. This
used to transfer the information about the step from the computation of the overall search direction to the line search.

SmartPtr< const IteratesVectordelta_cgpen_
bool have_cgpen_deltas_
 The following flag is set to true, if some other part of the algorithm has already computed the Chen-Goldfarb step.
Fast Chen-Goldfarb step for the penatly function. This
used to transfer the information about the step from the computation of the overall search direction to the line search.

SmartPtr< const IteratesVectordelta_cgfast_
bool have_cgfast_deltas_
 The following flag is set to true, if some other part of the algorithm has already computed the fast Chen-Goldfarb step.
penalty method
bool never_try_pure_Newton_
 Flag indicating whether the pure Newton method is used.
Index restor_iter_
 The iteration at which pure Newton method is given up.
Number restor_counter_
 Flag indicating whether the pure Newton method is used.
penalty parameters
Number curr_penalty_
bool penalty_initialized_
Number curr_kkt_penalty_
bool kkt_penalty_initialized_
Number curr_penalty_pert_
Number max_alpha_x_

Detailed Description

Class to organize all the additional data required by the Chen-Goldfarb penalty function algorithm.

Definition at line 21 of file IpCGPenaltyData.hpp.


Constructor & Destructor Documentation

Ipopt::CGPenaltyData::CGPenaltyData (  ) 

Constructor.

Ipopt::CGPenaltyData::~CGPenaltyData (  ) 

Default destructor.

Ipopt::CGPenaltyData::CGPenaltyData ( const CGPenaltyData  )  [private]

Copy Constructor.


Member Function Documentation

bool Ipopt::CGPenaltyData::Initialize ( const Journalist jnlst,
const OptionsList options,
const std::string &  prefix 
)

This method must be called to initialize the global algorithmic parameters.

The parameters are taken from the OptionsList object.

bool Ipopt::CGPenaltyData::InitializeDataStructures (  ) 

Initialize Data Structures.

SmartPtr< const IteratesVector > Ipopt::CGPenaltyData::delta_cgpen (  )  const [inline]

Delta for the Chen-Goldfarb search direction.

Definition at line 263 of file IpCGPenaltyData.hpp.

References DBG_ASSERT, delta_cgpen_, and Ipopt::IsNull().

Referenced by set_delta_cgpen().

void Ipopt::CGPenaltyData::set_delta_cgpen ( SmartPtr< IteratesVector > &  delta_pen  )  [inline]

Set the delta_cgpen - like the trial point, this method copies the pointer for efficiency (no copy and to keep cache tags the same) so after you call set, you cannot modify the data.

Definition at line 279 of file IpCGPenaltyData.hpp.

References Ipopt::ConstPtr(), delta_cgpen(), delta_cgpen_, and Ipopt::IsValid().

void Ipopt::CGPenaltyData::set_delta_cgpen ( SmartPtr< const IteratesVector > &  delta_pen  )  [inline]

Set the delta_cgpen - like the trial point, this method copies the pointer for efficiency (no copy and to keep cache tags the same) so after you call set, you cannot modify the data.

This is the version that is happy with a pointer to const IteratesVector.

Definition at line 298 of file IpCGPenaltyData.hpp.

References delta_cgpen(), delta_cgpen_, and Ipopt::IsValid().

SmartPtr< const IteratesVector > Ipopt::CGPenaltyData::delta_cgfast (  )  const [inline]

Delta for the fast Chen-Goldfarb search direction.

Definition at line 271 of file IpCGPenaltyData.hpp.

References DBG_ASSERT, delta_cgfast_, and Ipopt::IsNull().

Referenced by set_delta_cgfast().

void Ipopt::CGPenaltyData::set_delta_cgfast ( SmartPtr< IteratesVector > &  delta_fast  )  [inline]

Set the delta_cgpen - like the trial point, this method copies the pointer for efficiency (no copy and to keep cache tags the same) so after you call set, you cannot modify the data.

Definition at line 317 of file IpCGPenaltyData.hpp.

References Ipopt::ConstPtr(), delta_cgfast(), delta_cgfast_, and Ipopt::IsValid().

bool Ipopt::CGPenaltyData::HaveCgPenDeltas (  )  const [inline]

Definition at line 72 of file IpCGPenaltyData.hpp.

References have_cgpen_deltas_.

void Ipopt::CGPenaltyData::SetHaveCgPenDeltas ( bool  have_cgpen_deltas  )  [inline]

Definition at line 76 of file IpCGPenaltyData.hpp.

References have_cgpen_deltas_.

bool Ipopt::CGPenaltyData::HaveCgFastDeltas (  )  const [inline]

Definition at line 81 of file IpCGPenaltyData.hpp.

References have_cgfast_deltas_.

void Ipopt::CGPenaltyData::SetHaveCgFastDeltas ( bool  have_cgfast_deltas  )  [inline]

Definition at line 85 of file IpCGPenaltyData.hpp.

References have_cgfast_deltas_.

void Ipopt::CGPenaltyData::AcceptTrialPoint (  ) 

Set the current iterate values from the trial values.

Number Ipopt::CGPenaltyData::CurrPenaltyPert (  )  [inline]

Definition at line 98 of file IpCGPenaltyData.hpp.

References curr_penalty_pert_.

void Ipopt::CGPenaltyData::SetCurrPenaltyPert ( Number  curr_penalty_pert  )  [inline]

Definition at line 102 of file IpCGPenaltyData.hpp.

References curr_penalty_pert_.

void Ipopt::CGPenaltyData::SetNeverTryPureNewton ( bool  never_try_pure_Newton  )  [inline]

Definition at line 107 of file IpCGPenaltyData.hpp.

References never_try_pure_Newton_.

Index Ipopt::CGPenaltyData::NeverTryPureNewton (  )  [inline]

Definition at line 111 of file IpCGPenaltyData.hpp.

References never_try_pure_Newton_.

Index Ipopt::CGPenaltyData::restor_iter (  )  [inline]

Definition at line 116 of file IpCGPenaltyData.hpp.

References restor_iter_.

void Ipopt::CGPenaltyData::SetRestorIter ( Index  restor_iter  )  [inline]

Definition at line 121 of file IpCGPenaltyData.hpp.

References restor_iter_.

Number Ipopt::CGPenaltyData::restor_counter (  )  [inline]

Definition at line 125 of file IpCGPenaltyData.hpp.

References restor_counter_.

void Ipopt::CGPenaltyData::SetRestorCounter ( Number  restor_counter  )  [inline]

Definition at line 129 of file IpCGPenaltyData.hpp.

References restor_counter_.

void Ipopt::CGPenaltyData::SetPrimalStepSize ( Number  max_alpha_x  )  [inline]

Definition at line 134 of file IpCGPenaltyData.hpp.

References max_alpha_x_.

Number Ipopt::CGPenaltyData::PrimalStepSize (  )  [inline]

Definition at line 138 of file IpCGPenaltyData.hpp.

References max_alpha_x_.

Number Ipopt::CGPenaltyData::curr_penalty (  )  const [inline]

Definition at line 143 of file IpCGPenaltyData.hpp.

References curr_penalty_, DBG_ASSERT, and penalty_initialized_.

void Ipopt::CGPenaltyData::Set_penalty ( Number  penalty  )  [inline]

Definition at line 148 of file IpCGPenaltyData.hpp.

References curr_penalty_, and penalty_initialized_.

void Ipopt::CGPenaltyData::SetPenaltyUninitialized (  )  [inline]

Definition at line 153 of file IpCGPenaltyData.hpp.

References penalty_initialized_.

bool Ipopt::CGPenaltyData::PenaltyInitialized (  )  const [inline]

Definition at line 157 of file IpCGPenaltyData.hpp.

References penalty_initialized_.

Number Ipopt::CGPenaltyData::curr_kkt_penalty (  )  const [inline]

Definition at line 161 of file IpCGPenaltyData.hpp.

References curr_kkt_penalty_, DBG_ASSERT, and kkt_penalty_initialized_.

void Ipopt::CGPenaltyData::Set_kkt_penalty ( Number  kkt_penalty  )  [inline]

Definition at line 166 of file IpCGPenaltyData.hpp.

References curr_kkt_penalty_, and kkt_penalty_initialized_.

void Ipopt::CGPenaltyData::SetKKTPenaltyUninitialized (  )  [inline]

Definition at line 171 of file IpCGPenaltyData.hpp.

References kkt_penalty_initialized_.

bool Ipopt::CGPenaltyData::KKTPenaltyInitialized (  )  const [inline]

Definition at line 175 of file IpCGPenaltyData.hpp.

References kkt_penalty_initialized_.

void Ipopt::CGPenaltyData::operator= ( const CGPenaltyData  )  [private]

Overloaded Equals Operator.


Member Data Documentation

SmartPtr<const IteratesVector> Ipopt::CGPenaltyData::delta_cgpen_ [private]

Definition at line 188 of file IpCGPenaltyData.hpp.

Referenced by delta_cgpen(), and set_delta_cgpen().

bool Ipopt::CGPenaltyData::have_cgpen_deltas_ [private]

The following flag is set to true, if some other part of the algorithm has already computed the Chen-Goldfarb step.

This flag is reset when the AcceptTrialPoint method is called. ToDo: we could cue off of a null delta_cgpen_;

Definition at line 194 of file IpCGPenaltyData.hpp.

Referenced by HaveCgPenDeltas(), and SetHaveCgPenDeltas().

SmartPtr<const IteratesVector> Ipopt::CGPenaltyData::delta_cgfast_ [private]

Definition at line 202 of file IpCGPenaltyData.hpp.

Referenced by delta_cgfast(), and set_delta_cgfast().

bool Ipopt::CGPenaltyData::have_cgfast_deltas_ [private]

The following flag is set to true, if some other part of the algorithm has already computed the fast Chen-Goldfarb step.

This flag is reset when the AcceptTrialPoint method is called. * ToDo: we could cue off of a null delta_cgfast_;

Definition at line 208 of file IpCGPenaltyData.hpp.

Referenced by HaveCgFastDeltas(), and SetHaveCgFastDeltas().

bool Ipopt::CGPenaltyData::never_try_pure_Newton_ [private]

Flag indicating whether the pure Newton method is used.

Definition at line 214 of file IpCGPenaltyData.hpp.

Referenced by NeverTryPureNewton(), and SetNeverTryPureNewton().

Index Ipopt::CGPenaltyData::restor_iter_ [private]

The iteration at which pure Newton method is given up.

Definition at line 217 of file IpCGPenaltyData.hpp.

Referenced by restor_iter(), and SetRestorIter().

Number Ipopt::CGPenaltyData::restor_counter_ [private]

Flag indicating whether the pure Newton method is used.

Definition at line 218 of file IpCGPenaltyData.hpp.

Referenced by restor_counter(), and SetRestorCounter().

Number Ipopt::CGPenaltyData::curr_penalty_ [private]

Definition at line 221 of file IpCGPenaltyData.hpp.

Referenced by curr_penalty(), and Set_penalty().

bool Ipopt::CGPenaltyData::penalty_initialized_ [private]

Definition at line 222 of file IpCGPenaltyData.hpp.

Referenced by curr_penalty(), PenaltyInitialized(), Set_penalty(), and SetPenaltyUninitialized().

Number Ipopt::CGPenaltyData::curr_kkt_penalty_ [private]

Definition at line 223 of file IpCGPenaltyData.hpp.

Referenced by curr_kkt_penalty(), and Set_kkt_penalty().

bool Ipopt::CGPenaltyData::kkt_penalty_initialized_ [private]

Definition at line 224 of file IpCGPenaltyData.hpp.

Referenced by curr_kkt_penalty(), KKTPenaltyInitialized(), Set_kkt_penalty(), and SetKKTPenaltyUninitialized().

Number Ipopt::CGPenaltyData::curr_penalty_pert_ [private]

Definition at line 225 of file IpCGPenaltyData.hpp.

Referenced by CurrPenaltyPert(), and SetCurrPenaltyPert().

Number Ipopt::CGPenaltyData::max_alpha_x_ [private]

Definition at line 226 of file IpCGPenaltyData.hpp.

Referenced by PrimalStepSize(), and SetPrimalStepSize().

bool Ipopt::CGPenaltyData::initialize_called_ [private]

flag indicating if Initialize method has been called (for debugging)

Definition at line 231 of file IpCGPenaltyData.hpp.


The documentation for this class was generated from the following file:
Generated on Sun Nov 14 14:16:13 2010 for Coin-All by  doxygen 1.4.7