MOOCHO (Single Doxygen Collection)  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | List of all members
MoochoPack::LineSearch2ndOrderCorrect_Step Class Reference

Implements second order correction. More...

#include <MoochoPack_LineSearch2ndOrderCorrect_Step.hpp>

Inherits LineSearch_Step.

Public Types

enum  ENewtonOutputLevel {
  PRINT_USE_DEFAULT, PRINT_NEWTON_NOTHING = 0, PRINT_NEWTON_SUMMARY_INFO = 1, PRINT_NEWTON_STEPS = 2,
  PRINT_NEWTON_VECTORS = 3
}
 
enum  EForcedConstrReduction { CONSTR_LESS_X_D, CONSTR_LESS_X }
 

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...
 

Detailed Description

Implements second order correction.

Let the printed documentation describe these parameters.

Definition at line 59 of file MoochoPack_LineSearch2ndOrderCorrect_Step.hpp.

Member Enumeration Documentation

Enumerator
PRINT_USE_DEFAULT 
PRINT_NEWTON_NOTHING 
PRINT_NEWTON_SUMMARY_INFO 
PRINT_NEWTON_STEPS 
PRINT_NEWTON_VECTORS 

Definition at line 63 of file MoochoPack_LineSearch2ndOrderCorrect_Step.hpp.

Enumerator
CONSTR_LESS_X_D 
CONSTR_LESS_X 

Definition at line 72 of file MoochoPack_LineSearch2ndOrderCorrect_Step.hpp.

Constructor & Destructor Documentation

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 
)

Member Function Documentation

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


The documentation for this class was generated from the following file: