Perform BFGS updates on only the free independent (super basic) variables.
More...
#include <MoochoPack_ReducedHessianSecantUpdateLPBFGS_Strategy.hpp>
|
| STANDARD_COMPOSITION_MEMBERS (ReducedHessianSecantUpdateBFGSProjected_Strategy, proj_bfgs_updater) |
| <<std comp>="">> members for the strategy object that will perform dense projected BFGS updating. More...
|
|
| STANDARD_MEMBER_COMPOSITION_MEMBERS (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. More...
|
|
| STANDARD_MEMBER_COMPOSITION_MEMBERS (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. More...
|
|
| STANDARD_MEMBER_COMPOSITION_MEMBERS (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. More...
|
|
| STANDARD_MEMBER_COMPOSITION_MEMBERS (size_type, num_add_recent_updates) |
| Set maximum number of previous BFGS updates to initialize the new dense projected BFGS matrix with. More...
|
|
| 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 |
|
virtual | ~ReducedHessianSecantUpdate_Strategy () |
|
virtual bool | perform_update (VectorMutable *s_bfgs, VectorMutable *y_bfgs, bool first_update, std::ostream &out, EJournalOutputLevel olevel, NLPAlgo *algo, NLPAlgoState *s, MatrixSymOp *rHL_k)=0 |
| Perform the secant update. More...
|
|
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 59 of file MoochoPack_ReducedHessianSecantUpdateLPBFGS_Strategy.hpp.
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 |
|
) |
| |
<<std comp>="">> members for the strategy object that will perform dense projected BFGS updating.
MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::STANDARD_MEMBER_COMPOSITION_MEMBERS |
( |
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.
MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::STANDARD_MEMBER_COMPOSITION_MEMBERS |
( |
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.
MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::STANDARD_MEMBER_COMPOSITION_MEMBERS |
( |
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.
MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::STANDARD_MEMBER_COMPOSITION_MEMBERS |
( |
size_type |
, |
|
|
num_add_recent_updates |
|
|
) |
| |
Set maximum number of previous BFGS updates to initialize the new dense projected BFGS matrix with.
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 |
The documentation for this class was generated from the following file: