mlpack  git-master
UpdateClassic Class Reference

Use classic rule in the update step for FrankWolfe algorithm. More...

Public Member Functions

 UpdateClassic ()
 Construct the classic update rule for FrankWolfe algorithm. More...

 
template
<
typename
FunctionType
>
void Update (FunctionType &, const arma::mat &oldCoords, const arma::mat &s, arma::mat &newCoords, const size_t numIter)
 Classic update rule for FrankWolfe. More...

 

Detailed Description

Use classic rule in the update step for FrankWolfe algorithm.

That is, take $ \gamma = \frac{2}{k+2} $, where $ k $ is the iteration number. The update rule would be:

\[ x_{k+1} = (1-\gamma) x_k + \gamma s \]

Definition at line 29 of file update_classic.hpp.

Constructor & Destructor Documentation

◆ UpdateClassic()

UpdateClassic ( )
inline

Construct the classic update rule for FrankWolfe algorithm.

Definition at line 35 of file update_classic.hpp.

Member Function Documentation

◆ Update()

void Update ( FunctionType &  ,
const arma::mat &  oldCoords,
const arma::mat &  s,
arma::mat &  newCoords,
const size_t  numIter 
)
inline

Classic update rule for FrankWolfe.

$ x_{k+1} = (1-\gamma)x_k + \gamma s $, where $ \gamma = 2/(k+2) $

Parameters
functionfunction to be optimized, not used in this update rule.
oldCoordsprevious solution coords.
scurrent linear_constr_solution result.
newCoordsoutput new solution coords.
numItercurrent iteration number

Definition at line 49 of file update_classic.hpp.


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