MoochoPack : Framework for Large-Scale Optimization Algorithms
Version of the Day
|
Implements second order correction. More...
#include <MoochoPack_LineSearch2ndOrderCorrect_Step.hpp>
Inherits LineSearch_Step.
Public Types | |
enum | ENewtonOutputLevel |
enum | EForcedConstrReduction |
Public Member Functions | |
STANDARD_COMPOSITION_MEMBERS (DirectLineSearch_Strategy, direct_ls_sqp) | |
<<std comp>="">> members for direct_ls_sqp. More... | |
STANDARD_COMPOSITION_MEMBERS (MeritFuncNLP, merit_func) | |
<<std comp>="">> members for merit_func. More... | |
STANDARD_COMPOSITION_MEMBERS (FeasibilityStep_Strategy, feasibility_step) | |
<<std comp>="">> members for feasibility_step. More... | |
STANDARD_COMPOSITION_MEMBERS (DirectLineSearch_Strategy, direct_ls_newton) | |
<<std comp>="">> members for direct_ls_newton. More... | |
LineSearch2ndOrderCorrect_Step (const direct_ls_sqp_ptr_t &direct_ls_sqp=NULL, const merit_func_ptr_t &merit_func=NULL, const feasibility_step_ptr_t &feasibility_step=NULL, const direct_ls_newton_ptr_t &direct_ls_newton=0, value_type eta=1.0e-4, ENewtonOutputLevel newton_olevel=PRINT_USE_DEFAULT, value_type constr_norm_threshold=1.0, value_type constr_incr_ratio=10.0, int after_k_iter=0, EForcedConstrReduction forced_constr_reduction=CONSTR_LESS_X, value_type forced_reduct_ratio=1.0, value_type max_step_ratio=1.0, int max_newton_iter=3) | |
bool | do_step (Algorithm &algo, poss_type step_poss, IterationPack::EDoStepType type, poss_type assoc_step_poss) |
void | print_step (const Algorithm &algo, poss_type step_poss, IterationPack::EDoStepType type, poss_type assoc_step_poss, std::ostream &out, const std::string &leading_str) const |
Options for 2nd order correction | |
STANDARD_MEMBER_COMPOSITION_MEMBERS (value_type, eta) | |
the Armijo cord fractional reduction test parameter eta More... | |
STANDARD_MEMBER_COMPOSITION_MEMBERS (ENewtonOutputLevel, newton_olevel) | |
Optput level for newton iterations. More... | |
STANDARD_MEMBER_COMPOSITION_MEMBERS (value_type, constr_norm_threshold) | |
constr_norm_threshold. More... | |
STANDARD_MEMBER_COMPOSITION_MEMBERS (value_type, constr_incr_ratio) | |
constr_incr_ratio More... | |
STANDARD_MEMBER_COMPOSITION_MEMBERS (int, after_k_iter) | |
after_k_iter. More... | |
STANDARD_MEMBER_COMPOSITION_MEMBERS (EForcedConstrReduction, forced_constr_reduction) | |
forced_constr_reduction. More... | |
STANDARD_MEMBER_COMPOSITION_MEMBERS (value_type, forced_reduct_ratio) | |
forced_reduct_ratio More... | |
STANDARD_MEMBER_COMPOSITION_MEMBERS (value_type, max_step_ratio) | |
max_step_ratio. More... | |
STANDARD_MEMBER_COMPOSITION_MEMBERS (int, max_newton_iter) | |
max_netwon_iter. More... | |
Implements second order correction.
Let the printed documentation describe these parameters.
Definition at line 59 of file MoochoPack_LineSearch2ndOrderCorrect_Step.hpp.
Definition at line 63 of file MoochoPack_LineSearch2ndOrderCorrect_Step.hpp.
Definition at line 72 of file MoochoPack_LineSearch2ndOrderCorrect_Step.hpp.
MoochoPack::LineSearch2ndOrderCorrect_Step::LineSearch2ndOrderCorrect_Step | ( | const direct_ls_sqp_ptr_t & | direct_ls_sqp = NULL , |
const merit_func_ptr_t & | merit_func = NULL , |
||
const feasibility_step_ptr_t & | feasibility_step = NULL , |
||
const direct_ls_newton_ptr_t & | direct_ls_newton = 0 , |
||
value_type | eta = 1.0e-4 , |
||
ENewtonOutputLevel | newton_olevel = PRINT_USE_DEFAULT , |
||
value_type | constr_norm_threshold = 1.0 , |
||
value_type | constr_incr_ratio = 10.0 , |
||
int | after_k_iter = 0 , |
||
EForcedConstrReduction | forced_constr_reduction = CONSTR_LESS_X , |
||
value_type | forced_reduct_ratio = 1.0 , |
||
value_type | max_step_ratio = 1.0 , |
||
int | max_newton_iter = 3 |
||
) |
MoochoPack::LineSearch2ndOrderCorrect_Step::STANDARD_COMPOSITION_MEMBERS | ( | DirectLineSearch_Strategy | , |
direct_ls_sqp | |||
) |
<<std comp>="">> members for direct_ls_sqp.
This is the line search strategy object for the SQP step for x_k+1 = x_k + alpha_k * d_k + alpha_k^2 * w.
MoochoPack::LineSearch2ndOrderCorrect_Step::STANDARD_COMPOSITION_MEMBERS | ( | MeritFuncNLP | , |
merit_func | |||
) |
<<std comp>="">> members for merit_func.
This is the merit function object for SQP step line search.
MoochoPack::LineSearch2ndOrderCorrect_Step::STANDARD_COMPOSITION_MEMBERS | ( | FeasibilityStep_Strategy | , |
feasibility_step | |||
) |
<<std comp>="">> members for feasibility_step.
This is the strategy object that is used to compute feasibility steps for the newton iterations.
MoochoPack::LineSearch2ndOrderCorrect_Step::STANDARD_COMPOSITION_MEMBERS | ( | DirectLineSearch_Strategy | , |
direct_ls_newton | |||
) |
<<std comp>="">> members for direct_ls_newton.
This is the line search strategy object for the internal newton iterations for determining the second order correction w.
MoochoPack::LineSearch2ndOrderCorrect_Step::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | value_type | , |
eta | |||
) |
the Armijo cord fractional reduction test parameter eta
MoochoPack::LineSearch2ndOrderCorrect_Step::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | ENewtonOutputLevel | , |
newton_olevel | |||
) |
Optput level for newton iterations.
MoochoPack::LineSearch2ndOrderCorrect_Step::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | value_type | , |
constr_norm_threshold | |||
) |
constr_norm_threshold.
MoochoPack::LineSearch2ndOrderCorrect_Step::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | value_type | , |
constr_incr_ratio | |||
) |
constr_incr_ratio
MoochoPack::LineSearch2ndOrderCorrect_Step::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | int | , |
after_k_iter | |||
) |
after_k_iter.
MoochoPack::LineSearch2ndOrderCorrect_Step::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | EForcedConstrReduction | , |
forced_constr_reduction | |||
) |
forced_constr_reduction.
MoochoPack::LineSearch2ndOrderCorrect_Step::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | value_type | , |
forced_reduct_ratio | |||
) |
forced_reduct_ratio
MoochoPack::LineSearch2ndOrderCorrect_Step::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | value_type | , |
max_step_ratio | |||
) |
max_step_ratio.
MoochoPack::LineSearch2ndOrderCorrect_Step::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | int | , |
max_newton_iter | |||
) |
max_netwon_iter.
bool MoochoPack::LineSearch2ndOrderCorrect_Step::do_step | ( | Algorithm & | algo, |
poss_type | step_poss, | ||
IterationPack::EDoStepType | type, | ||
poss_type | assoc_step_poss | ||
) |
void MoochoPack::LineSearch2ndOrderCorrect_Step::print_step | ( | const Algorithm & | algo, |
poss_type | step_poss, | ||
IterationPack::EDoStepType | type, | ||
poss_type | assoc_step_poss, | ||
std::ostream & | out, | ||
const std::string & | leading_str | ||
) | const |