CNDSM  1.00
ColorTV Class Reference

Definition of the class ColorTV. More...

#include <ColorTV.h>

Inheritance diagram for ColorTV:
Stepsize

Public Types

Public types

The ColorTV defines one main public types:

Public Member Functions

Constructor
 ColorTV (SubGrad *slvr, istream *iStrm=0)
 Constructor of the class. More...
 
Other initializations
void SetSTPLog (ostream *outs=0, const char lvl=0)
 
void Format (void)
 
Computing the stepsize
void NewStep (void)
 
bool NeedsdkM1Gk (void)
 
- Public Member Functions inherited from Stepsize
 Stepsize (SubGrad *slvr, istream *iStrm=0)
 Constructor of the class. More...
 
 Stepsize (SubGrad *slvr, istream *iStrm=0)
 Constructor of the class. More...
 
virtual HpNum GetStepsize (bool StepIsIncr=false)
 This function must be called after NewStep() [see above]. More...
 
virtual HpNum GetLev (void)
 This function must be called after NewStep() [see above]. More...
 
virtual HpNum GetBeta (void)
 This function must be called after NewStep() [see above]. More...
 
virtual HpNum GetStepsize (bool StepIsIncr=false)
 This function must be called after NewStep() [see above]. More...
 
virtual HpNum GetLev (void)
 This function must be called after NewStep() [see above]. More...
 
virtual HpNum GetBeta (void)
 This function must be called after NewStep() [see above]. More...
 
virtual void SetMaxBeta (const HpNum alpha)
 Changes the maximum value of $ \beta_i $ for a target value stepsize rule. More...
 
virtual void SetMaxBeta (const HpNum alpha)
 Changes the maximum value of $ \beta_i $ for a target value stepsize rule. More...
 
virtual ~Stepsize ()
 
virtual ~Stepsize ()
 

Additional Inherited Members

- Protected Member Functions inherited from Stepsize
HpNum GetCoeffDefl (void)
 Returns the deflection coefficient $\alpha_i$. More...
 
FiOracleGetOracle (void)
 Returns the pointer to FiOracle. More...
 
cHpNum GetGiNorm (void)
 Returns the norm of the subgradient $ g_i $. More...
 
cHpNum GetDNorm (void)
 Returns the norm of the direction $ d_i $. More...
 
cHpNum GetdGk (void)
 Returns the scalar product $ g_i^{\top} d_i$. More...
 
HpNum GetdkM1Gk (void)
 Returns the scalar product $ g_i^{\top} d_{i-1}$. More...
 
Index GetNItIcr (void)
 Returns NItIncr, the parameter for incremental iterations [see SubGrad.h].
 
cHpNum ReadFkVal (void)
 Returns FiLambda [ see SubGrad.h ]. More...
 
cHpNum ReadFiBar (void)
 Returns FiBar [ see SubGrad.h ]. More...
 
HpNum GetCoeffDefl (void)
 Returns the deflection coefficient $\alpha_i$. More...
 
FiOracleGetOracle (void)
 Returns the pointer to FiOracle. More...
 
cHpNum GetGiNorm (void)
 Returns the norm of the subgradient $ g_i $. More...
 
cHpNum GetDNorm (void)
 Returns the norm of the direction $ d_i $. More...
 
cHpNum GetdGk (void)
 Returns the scalar product $ g_i^{\top} d_i$. More...
 
HpNum GetdkM1Gk (void)
 Returns the scalar product $ g_i^{\top} d_{i-1}$. More...
 
Index GetNItIcr (void)
 Returns NItIncr, the parameter for incremental iterations [see SubGrad.h].
 
cHpNum ReadFkVal (void)
 Returns FiLambda [ see SubGrad.h ]. More...
 
cHpNum ReadFiBar (void)
 Returns FiBar [ see SubGrad.h ]. More...
 
- Protected Attributes inherited from Stepsize
SubGradSolver
 (pointer to) the SubGrad solver
 
ostream * STPLog
 the output stream object
 
char STPLLvl
 the "level of verbosity"
 
HpNum FiLev
 the target level $ f^{lev}_i $
 
HpNum Beta
 beta factor $ \beta_i $
 
HpNum MaxBeta
 maximum value for beta factor
 
HpNum LpsFct
 scaling factor
 

Detailed Description

Definition of the class ColorTV.

This class implements the target stepsize used in the original Volume algorithm. The method is based on classifying the iterations based on the obtained improvement of the function Fi().

Member Enumeration Documentation

enum condition
Enumerator
green 

good step

yellow 

not bad, not good step

red 

bad step

Constructor & Destructor Documentation

ColorTV ( SubGrad slvr,
istream *  iStrm = 0 
)
inline

Constructor of the class.

Since the constructor of ColorTV is executed after the one of Stepsize, the following parameters specific for ColorTV have to be found in the stream after those of the base class [see the comments to the constructor of Stepsize]:

  1. HpNum BetaZero [1] initial value of beta
  2. Index greentestinvl [1] how many consecutive green iterations are allowed before increasing beta
  3. Index yellowtestinvl [400] how many consecutive yellow iterations are allowed before decreasing beta
  4. Index redtestinvl [10] how many consecutive red iterations are allowed before decreasing beta

References Stepsize::Beta, Stepsize::FiLev, Stepsize::Format(), Stepsize::GetdGk(), FiOracle::GetLowerBound(), Stepsize::GetOracle(), green, SubGrad::ReadBestFiVal(), SubGrad::ReadFiVal(), Stepsize::ReadFkVal(), red, Stepsize::SetSTPLog(), Stepsize::Solver, Stepsize::STPLLvl, Stepsize::STPLog, and yellow.