MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy Class Reference

Perform BFGS updates on only the free independent (super basic) variables. More...

#include <MoochoPack_ReducedHessianSecantUpdateLPBFGS_Strategy.hpp>

Inheritance diagram for MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy:

[legend]
List of all members.

Public Types

typedef Teuchos::RefCountPtr<
ReducedHessianSecantUpdateBFGSProjected_Strategy
proj_bfgs_updater_ptr_t

Public Member Functions

void set_proj_bfgs_updater (const Teuchos::RefCountPtr< ReducedHessianSecantUpdateBFGSProjected_Strategy > &proj_bfgs_updater)
 <<std comp="">> members for the strategy object that will perform dense projected BFGS updating.
Teuchos::RefCountPtr< ReducedHessianSecantUpdateBFGSProjected_Strategyget_proj_bfgs_updater () const
ReducedHessianSecantUpdateBFGSProjected_Strategyproj_bfgs_updater ()
const ReducedHessianSecantUpdateBFGSProjected_Strategyproj_bfgs_updater () const
void min_num_updates_proj_start (const size_type &min_num_updates_proj_start)
 Set the minimum number of BFGS updates to perform on the LBFGS matrix before considering switching to projected BFGS updating.
const size_typemin_num_updates_proj_start () const
void max_num_updates_proj_start (const size_type &max_num_updates_proj_start)
 Set the maximum number of BFGS updates to perform on the LBFGS matrix before automatically switching to the projected BFGS updating reguardless if the active set has calmed down or not.
const size_typemax_num_updates_proj_start () const
void num_superbasics_switch_dense (const size_type &num_superbasics_switch_dense)
 Set the maximum number of superbasic variables under which switching from limited memory to dense projected PBFGS updating will be allowed.
const size_typenum_superbasics_switch_dense () const
void num_add_recent_updates (const size_type &num_add_recent_updates)
 Set maximum number of previous BFGS updates to initialize the new dense projected BFGS matrix with.
const size_typenum_add_recent_updates () const
 ReducedHessianSecantUpdateLPBFGS_Strategy (const proj_bfgs_updater_ptr_t &proj_bfgs_updater=NULL, size_type min_num_updates_proj_start=0, size_type max_num_updates_proj_start=999999, size_type num_superbasics_switch_dense=500, size_type num_add_recent_updates=10)
 
bool perform_update (DVectorSlice *s_bfgs, DVectorSlice *y_bfgs, bool first_update, std::ostream &out, EJournalOutputLevel olevel, NLPAlgo *algo, NLPAlgoState *s, MatrixOp *rHL_k)
 
void print_step (std::ostream &out, const std::string &leading_str) const
 

Private Attributes

Teuchos::RefCountPtr< ReducedHessianSecantUpdateBFGSProjected_Strategyproj_bfgs_updater_
size_type min_num_updates_proj_start_
size_type max_num_updates_proj_start_
size_type num_superbasics_switch_dense_
size_type num_add_recent_updates_
quasi_newton_stats_iq_member quasi_newton_stats_
act_set_stats_iq_member act_set_stats_

Detailed Description

Perform BFGS updates on only the free independent (super basic) variables.

This method should be very efficient for few super basic variables.

Definition at line 46 of file MoochoPack_ReducedHessianSecantUpdateLPBFGS_Strategy.hpp.


Member Typedef Documentation

typedef Teuchos::RefCountPtr< ReducedHessianSecantUpdateBFGSProjected_Strategy > MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::proj_bfgs_updater_ptr_t
 

Definition at line 53 of file MoochoPack_ReducedHessianSecantUpdateLPBFGS_Strategy.hpp.


Constructor & Destructor Documentation

MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::ReducedHessianSecantUpdateLPBFGS_Strategy const proj_bfgs_updater_ptr_t proj_bfgs_updater = NULL,
size_type  min_num_updates_proj_start = 0,
size_type  max_num_updates_proj_start = 999999,
size_type  num_superbasics_switch_dense = 500,
size_type  num_add_recent_updates = 10
 


Member Function Documentation

void MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::set_proj_bfgs_updater const Teuchos::RefCountPtr< ReducedHessianSecantUpdateBFGSProjected_Strategy > &  proj_bfgs_updater  )  [inline]
 

<<std comp="">> members for the strategy object that will perform dense projected BFGS updating.

Definition at line 53 of file MoochoPack_ReducedHessianSecantUpdateLPBFGS_Strategy.hpp.

Teuchos::RefCountPtr< ReducedHessianSecantUpdateBFGSProjected_Strategy > MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::get_proj_bfgs_updater  )  const [inline]
 

Definition at line 53 of file MoochoPack_ReducedHessianSecantUpdateLPBFGS_Strategy.hpp.

ReducedHessianSecantUpdateBFGSProjected_Strategy& MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::proj_bfgs_updater  )  [inline]
 

Definition at line 53 of file MoochoPack_ReducedHessianSecantUpdateLPBFGS_Strategy.hpp.

const ReducedHessianSecantUpdateBFGSProjected_Strategy& MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::proj_bfgs_updater  )  const [inline]
 

Definition at line 53 of file MoochoPack_ReducedHessianSecantUpdateLPBFGS_Strategy.hpp.

void MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::min_num_updates_proj_start const size_type min_num_updates_proj_start  )  [inline]
 

Set the minimum number of BFGS updates to perform on the LBFGS matrix before considering switching to projected BFGS updating.

Definition at line 58 of file MoochoPack_ReducedHessianSecantUpdateLPBFGS_Strategy.hpp.

const size_type& MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::min_num_updates_proj_start  )  const [inline]
 

Definition at line 58 of file MoochoPack_ReducedHessianSecantUpdateLPBFGS_Strategy.hpp.

void MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::max_num_updates_proj_start const size_type max_num_updates_proj_start  )  [inline]
 

Set the maximum number of BFGS updates to perform on the LBFGS matrix before automatically switching to the projected BFGS updating reguardless if the active set has calmed down or not.

Definition at line 64 of file MoochoPack_ReducedHessianSecantUpdateLPBFGS_Strategy.hpp.

const size_type& MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::max_num_updates_proj_start  )  const [inline]
 

Definition at line 64 of file MoochoPack_ReducedHessianSecantUpdateLPBFGS_Strategy.hpp.

void MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::num_superbasics_switch_dense const size_type num_superbasics_switch_dense  )  [inline]
 

Set the maximum number of superbasic variables under which switching from limited memory to dense projected PBFGS updating will be allowed.

Definition at line 69 of file MoochoPack_ReducedHessianSecantUpdateLPBFGS_Strategy.hpp.

const size_type& MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::num_superbasics_switch_dense  )  const [inline]
 

Definition at line 69 of file MoochoPack_ReducedHessianSecantUpdateLPBFGS_Strategy.hpp.

void MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::num_add_recent_updates const size_type num_add_recent_updates  )  [inline]
 

Set maximum number of previous BFGS updates to initialize the new dense projected BFGS matrix with.

Definition at line 74 of file MoochoPack_ReducedHessianSecantUpdateLPBFGS_Strategy.hpp.

const size_type& MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::num_add_recent_updates  )  const [inline]
 

Definition at line 74 of file MoochoPack_ReducedHessianSecantUpdateLPBFGS_Strategy.hpp.

bool MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::perform_update DVectorSlice s_bfgs,
DVectorSlice y_bfgs,
bool  first_update,
std::ostream &  out,
EJournalOutputLevel  olevel,
NLPAlgo algo,
NLPAlgoState s,
MatrixOp *  rHL_k
 

void MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::print_step std::ostream &  out,
const std::string &  leading_str
const [virtual]
 

Implements MoochoPack::ReducedHessianSecantUpdate_Strategy.


Member Data Documentation

Teuchos::RefCountPtr< ReducedHessianSecantUpdateBFGSProjected_Strategy > MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::proj_bfgs_updater_ [private]
 

Definition at line 53 of file MoochoPack_ReducedHessianSecantUpdateLPBFGS_Strategy.hpp.

size_type MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::min_num_updates_proj_start_ [private]
 

Definition at line 58 of file MoochoPack_ReducedHessianSecantUpdateLPBFGS_Strategy.hpp.

size_type MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::max_num_updates_proj_start_ [private]
 

Definition at line 64 of file MoochoPack_ReducedHessianSecantUpdateLPBFGS_Strategy.hpp.

size_type MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::num_superbasics_switch_dense_ [private]
 

Definition at line 69 of file MoochoPack_ReducedHessianSecantUpdateLPBFGS_Strategy.hpp.

size_type MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::num_add_recent_updates_ [private]
 

Definition at line 74 of file MoochoPack_ReducedHessianSecantUpdateLPBFGS_Strategy.hpp.

quasi_newton_stats_iq_member MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::quasi_newton_stats_ [private]
 

Definition at line 102 of file MoochoPack_ReducedHessianSecantUpdateLPBFGS_Strategy.hpp.

act_set_stats_iq_member MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::act_set_stats_ [private]
 

Definition at line 103 of file MoochoPack_ReducedHessianSecantUpdateLPBFGS_Strategy.hpp.


The documentation for this class was generated from the following file:
Generated on Thu Sep 18 12:36:23 2008 for MOOCHO (Single Doxygen Collection) by doxygen 1.3.9.1