47 #define STPLOG( l , x ) if( STPLLvl > l ) *STPLog << x
48 #define STPLOG2( l , c , x ) if( ( STPLLvl > l ) && c ) *STPLog << x
50 #define STPLOG( l , x )
51 #define STPLOG2( l , c , x )
115 inline void SetSTPLog( ostream *outs = 0 ,
const char lvl = 0 );
119 inline void Format(
void );
187 r2 = ceil( pow( ( - log(
sigmaMin ) / 0.6933 ) , ( 1.0 / 3.26 ) ) * r1 );
203 throw(
NDOException(
"FumeroTV::GetStepsize: this should not happen" ) );
224 STPLOG( 1 , endl <<
" " <<
" level = " << -
FiLev <<
" ~ beta = "
225 <<
Beta << endl <<
" " );
231inline void FumeroTV::SetSTPLog( ostream *outs ,
const char lvl )
237 *
STPLog << endl <<
"FumeroTV: ~ BetaZero = " << BetaZero
238 <<
" ~ (Eps0 , r1) = (" <<
sigma <<
" , " << r1 <<
")"
239 <<
" ~ Eta = {" <<
eta1 <<
" , " << eta2 <<
"}" << endl;
264 "FumeroTV::UpdateTargetLevel: no lower bound is given" ) );
269 FiRef_ =
FiRef - ( 1e-6 * std::max(
HpNum( 1.0 ) , std::abs(
FiRef ) ) );
283 if( ++
etac >= eta2 ) {
312 return( exp( -0.6933 * pow(
HpNum( ri ) /
HpNum( r1 ) , 3.26 ) ) );
virtual HpNum GetLowerBound(cIndex wFi=Inf< Index >())
Definition FiOracle.h:1601
Index etac
last improvement of FiLev
Definition FumeroTV.h:165
Index rc
current value of r
Definition FumeroTV.h:161
HpNum FiLambda
FiLambda.
Definition FumeroTV.h:151
FumeroTV(SubGrad *slvr, std::istream *iStrm=NULL)
Definition FumeroTV.h:101
HpNum FiRef
the best solution found so far
Definition FumeroTV.h:154
HpNum sigma
current value of
Definition FumeroTV.h:156
bool UpdateTargetLevel(void)
Definition FumeroTV.h:246
HpNum sigmaMin
minimum threshold of
Definition FumeroTV.h:157
Index eta1
thresholds for max number of failures
Definition FumeroTV.h:166
void Format(void)
Definition FumeroTV.h:177
HpNum LwrBnd
lower bound
Definition FumeroTV.h:153
void NewStep(void)
Definition FumeroTV.h:195
std::ostream * STPLog
the output stream object
Definition Stepsize.h:342
virtual void SetSTPLog(std::ostream *outs=0, const char lvl=0)
Definition Stepsize.h:126
HpNum Beta
beta factor
Definition Stepsize.h:346
char STPLLvl
the "level of verbosity"
Definition Stepsize.h:343
HpNum FiLev
the target level
Definition Stepsize.h:345
virtual void Format(void)
Definition Stepsize.h:137
FiOracle * GetOracle(void)
const HpNum cHpNum
a read-only HpNum
Definition OPTtypes.h:102
double HpNum
"finer" floating point numbers
Definition OPTtypes.h:98
unsigned int Index
Index in a vector ( >= 0 )
Definition OPTtypes.h:60
static constexpr T Inf(void) noexcept
Inf< T >() = infinity value for T.
Definition OPTUtils.h:357
void DfltdSfInpt(istream *iStrm, T &Param, const T Dflt, const char cmntc='#')
Definition OPTUtils.h:392