MoochoPack : Framework for Large-Scale Optimization Algorithms
Version of the Day
|
Perform BFGS updates on only the free independent (super basic) variables. More...
#include <MoochoPack_ReducedHessianSecantUpdateLPBFGS_Strategy.hpp>
Public Member Functions | |
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 |
Public Member Functions inherited from MoochoPack::ReducedHessianSecantUpdate_Strategy | |
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 |
||
) |
MoochoPack::ReducedHessianSecantUpdateLPBFGS_Strategy::STANDARD_COMPOSITION_MEMBERS | ( | ReducedHessianSecantUpdateBFGSProjected_Strategy | , |
proj_bfgs_updater | |||
) |
<<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 | ||
) |
|
virtual |
Implements MoochoPack::ReducedHessianSecantUpdate_Strategy.