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

Implements watchdog line search. More...

#include <MoochoPack_LineSearchWatchDog_Step.hpp>

Inherits LineSearch_Step.

Public Member Functions

 STANDARD_COMPOSITION_MEMBERS (DirectLineSearch_Strategy, direct_line_search)
 <<std comp>="">> members for direct_line_search More...
 
 STANDARD_COMPOSITION_MEMBERS (MeritFuncNLP, merit_func)
 <<std comp>="">> members for merit_func More...
 
 STANDARD_MEMBER_COMPOSITION_MEMBERS (value_type, eta)
 <<std member="" comp>="">> members for the armijo fractional reduction parameter. More...
 
 STANDARD_MEMBER_COMPOSITION_MEMBERS (value_type, opt_kkt_err_threshold)
 <<std member="" comp>="">> members for the threshold for opt_kkt_err before the watchdog procedure should kick-in. More...
 
 STANDARD_MEMBER_COMPOSITION_MEMBERS (value_type, feas_kkt_err_threshold)
 <<std member="" comp>="">> members for the threshold for feas_kkt_err before the watchdog procedure should kick-in. More...
 
 LineSearchWatchDog_Step (const direct_line_search_ptr_t &direct_line_search=0, const merit_func_ptr_t &merit_func=0, value_type eta=1e-4, value_type opt_kkt_err_threshold=1e-1, value_type feas_kkt_err_threshold=1e-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
 

Private Attributes

int watch_k_
 
DVector xo_
 
value_type fo_
 
value_type nrm_co_
 
DVector do_
 
value_type phio_
 
value_type Dphio_
 
value_type phiop1_
 

Detailed Description

Implements watchdog line search.

The watchdog proceedure will only be considered when : opt_kkt_err_k <= opt_kkt_err_threshold && feas_kkt_err_k <= feas_kkt_err_threshold (see step listing). The default behavior is to never use the watchdog procedure.

Definition at line 61 of file MoochoPack_LineSearchWatchDog_Step.hpp.

Constructor & Destructor Documentation

MoochoPack::LineSearchWatchDog_Step::LineSearchWatchDog_Step ( const direct_line_search_ptr_t &  direct_line_search = 0,
const merit_func_ptr_t &  merit_func = 0,
value_type  eta = 1e-4,
value_type  opt_kkt_err_threshold = 1e-1,
value_type  feas_kkt_err_threshold = 1e-3 
)

Member Function Documentation

MoochoPack::LineSearchWatchDog_Step::STANDARD_COMPOSITION_MEMBERS ( DirectLineSearch_Strategy  ,
direct_line_search   
)

<<std comp>="">> members for direct_line_search

MoochoPack::LineSearchWatchDog_Step::STANDARD_COMPOSITION_MEMBERS ( MeritFuncNLP  ,
merit_func   
)

<<std comp>="">> members for merit_func

MoochoPack::LineSearchWatchDog_Step::STANDARD_MEMBER_COMPOSITION_MEMBERS ( value_type  ,
eta   
)

<<std member="" comp>="">> members for the armijo fractional reduction parameter.

MoochoPack::LineSearchWatchDog_Step::STANDARD_MEMBER_COMPOSITION_MEMBERS ( value_type  ,
opt_kkt_err_threshold   
)

<<std member="" comp>="">> members for the threshold for opt_kkt_err before the watchdog procedure should kick-in.

MoochoPack::LineSearchWatchDog_Step::STANDARD_MEMBER_COMPOSITION_MEMBERS ( value_type  ,
feas_kkt_err_threshold   
)

<<std member="" comp>="">> members for the threshold for feas_kkt_err before the watchdog procedure should kick-in.

bool MoochoPack::LineSearchWatchDog_Step::do_step ( Algorithm algo,
poss_type  step_poss,
IterationPack::EDoStepType  type,
poss_type  assoc_step_poss 
)

void MoochoPack::LineSearchWatchDog_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

Member Data Documentation

int MoochoPack::LineSearchWatchDog_Step::watch_k_
private

Definition at line 105 of file MoochoPack_LineSearchWatchDog_Step.hpp.

DVector MoochoPack::LineSearchWatchDog_Step::xo_
private

Definition at line 106 of file MoochoPack_LineSearchWatchDog_Step.hpp.

value_type MoochoPack::LineSearchWatchDog_Step::fo_
private

Definition at line 107 of file MoochoPack_LineSearchWatchDog_Step.hpp.

value_type MoochoPack::LineSearchWatchDog_Step::nrm_co_
private

Definition at line 108 of file MoochoPack_LineSearchWatchDog_Step.hpp.

DVector MoochoPack::LineSearchWatchDog_Step::do_
private

Definition at line 109 of file MoochoPack_LineSearchWatchDog_Step.hpp.

value_type MoochoPack::LineSearchWatchDog_Step::phio_
private

Definition at line 110 of file MoochoPack_LineSearchWatchDog_Step.hpp.

value_type MoochoPack::LineSearchWatchDog_Step::Dphio_
private

Definition at line 111 of file MoochoPack_LineSearchWatchDog_Step.hpp.

value_type MoochoPack::LineSearchWatchDog_Step::phiop1_
private

Definition at line 112 of file MoochoPack_LineSearchWatchDog_Step.hpp.


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