MoochoPack::LineSearch2ndOrderCorrect_Step Class Reference

Implements second order correction. More...

#include <MoochoPack_LineSearch2ndOrderCorrect_Step.hpp>

List of all members.

Options for 2nd order correction

 STANDARD_MEMBER_COMPOSITION_MEMBERS (value_type, eta)
 the Armijo cord fractional reduction test parameter eta
 STANDARD_MEMBER_COMPOSITION_MEMBERS (ENewtonOutputLevel, newton_olevel)
 Optput level for newton iterations.
 STANDARD_MEMBER_COMPOSITION_MEMBERS (value_type, constr_norm_threshold)
 constr_norm_threshold.
 STANDARD_MEMBER_COMPOSITION_MEMBERS (value_type, constr_incr_ratio)
 constr_incr_ratio
 STANDARD_MEMBER_COMPOSITION_MEMBERS (int, after_k_iter)
 after_k_iter.
 STANDARD_MEMBER_COMPOSITION_MEMBERS (EForcedConstrReduction, forced_constr_reduction)
 forced_constr_reduction.
 STANDARD_MEMBER_COMPOSITION_MEMBERS (value_type, forced_reduct_ratio)
 forced_reduct_ratio
 STANDARD_MEMBER_COMPOSITION_MEMBERS (value_type, max_step_ratio)
 max_step_ratio.
 STANDARD_MEMBER_COMPOSITION_MEMBERS (int, max_newton_iter)
 max_netwon_iter.

Public Types

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

Public Member Functions

 STANDARD_COMPOSITION_MEMBERS (DirectLineSearch_Strategy, direct_ls_sqp)
 <<std comp>="">> members for direct_ls_sqp.
 STANDARD_COMPOSITION_MEMBERS (MeritFuncNLP, merit_func)
 <<std comp>="">> members for merit_func.
 STANDARD_COMPOSITION_MEMBERS (FeasibilityStep_Strategy, feasibility_step)
 <<std comp>="">> members for feasibility_step.
 STANDARD_COMPOSITION_MEMBERS (DirectLineSearch_Strategy, direct_ls_newton)
 <<std comp>="">> members for direct_ls_newton.
 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
 


Detailed Description

Implements second order correction.

Let the printed documentation describe these parameters.

Definition at line 46 of file MoochoPack_LineSearch2ndOrderCorrect_Step.hpp.


Member Enumeration Documentation

enum MoochoPack::LineSearch2ndOrderCorrect_Step::ENewtonOutputLevel

Enumerator:
PRINT_USE_DEFAULT 
PRINT_NEWTON_NOTHING 
PRINT_NEWTON_SUMMARY_INFO 
PRINT_NEWTON_STEPS 
PRINT_NEWTON_VECTORS 

Definition at line 50 of file MoochoPack_LineSearch2ndOrderCorrect_Step.hpp.

enum MoochoPack::LineSearch2ndOrderCorrect_Step::EForcedConstrReduction

Enumerator:
CONSTR_LESS_X_D 
CONSTR_LESS_X 

Definition at line 59 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 
)

Definition at line 55 of file MoochoPack_LineSearch2ndOrderCorrect_Step.cpp.


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 
)

Definition at line 85 of file MoochoPack_LineSearch2ndOrderCorrect_Step.cpp.

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

Definition at line 680 of file MoochoPack_LineSearch2ndOrderCorrect_Step.cpp.


The documentation for this class was generated from the following files:
Generated on Tue Oct 20 12:54:16 2009 for MOOCHO (Single Doxygen Collection) by doxygen 1.4.7