ROL
|
Provides an interface for the mean plus variance risk measure using the expectation risk quadrangle. More...
#include <ROL_MeanVarianceQuadrangle.hpp>
Public Member Functions | |
MeanVarianceQuadrangle (const Real coeff=1) | |
Constructor. More... | |
MeanVarianceQuadrangle (ROL::ParameterList &parlist) | |
Constructor. More... | |
Real | error (Real x, int deriv=0) |
Evaluate the scalar error function at x. More... | |
Real | regret (Real x, int deriv=0) |
Evaluate the scalar regret function at x. More... | |
Public Member Functions inherited from ROL::ExpectationQuad< Real > | |
virtual | ~ExpectationQuad (void) |
ExpectationQuad (void) | |
virtual void | check (void) |
Run default derivative tests for the scalar regret function. More... | |
Private Member Functions | |
void | parseParameterList (ROL::ParameterList &parlist) |
void | checkInputs (void) const |
Private Attributes | |
Real | coeff_ |
Provides an interface for the mean plus variance risk measure using the expectation risk quadrangle.
The mean plus variances risk measure is
\[ \mathcal{R}(X) = \mathbb{E}[X] + c \mathbb{E}[|X-\mathbb{E}[X]|^2] \]
where \(c \ge 0\). \(\mathcal{R}\) is law-invariant, but not coherent since it violates positive homogeneity. The associated scalar regret function is
\[ v(x) = c x^2 + x \]
and the mean-plus-variance risk measure is computed as
\[ \mathcal{R}(X) = \inf_{t\in\mathbb{R}}\left\{ t + \mathbb{E}[v(X-t)] \right\}. \]
ROL implements this by augmenting the optimization vector \(x_0\) with the parameter \(t\), then minimizes jointly for \((x_0,t)\).
Definition at line 44 of file ROL_MeanVarianceQuadrangle.hpp.
|
inline |
Constructor.
[in] | coeff | is the weight for variance term |
Definition at line 75 of file ROL_MeanVarianceQuadrangle.hpp.
References ROL::MeanVarianceQuadrangle< Real >::checkInputs().
|
inline |
Constructor.
[in] | parlist | is a parameter list specifying inputs |
parlist should contain sublists "SOL"->"Risk Measure"->"Mean-Variance Quadrangle" and within the "Mean-Variance Quadrangle" sublist should have the following parameters
Definition at line 88 of file ROL_MeanVarianceQuadrangle.hpp.
References ROL::MeanVarianceQuadrangle< Real >::checkInputs(), and ROL::MeanVarianceQuadrangle< Real >::parseParameterList().
|
inlineprivate |
Definition at line 48 of file ROL_MeanVarianceQuadrangle.hpp.
References ROL::MeanVarianceQuadrangle< Real >::coeff_.
Referenced by ROL::MeanVarianceQuadrangle< Real >::MeanVarianceQuadrangle().
|
inlineprivate |
Definition at line 64 of file ROL_MeanVarianceQuadrangle.hpp.
References ROL::MeanVarianceQuadrangle< Real >::coeff_, and zero.
Referenced by ROL::MeanVarianceQuadrangle< Real >::MeanVarianceQuadrangle().
|
inlinevirtual |
Evaluate the scalar error function at x.
[in] | x | is the scalar input |
[in] | deriv | is the derivative order |
This function returns \(e(x)\) or a derivative of \(e(x)\).
Reimplemented from ROL::ExpectationQuad< Real >.
Definition at line 94 of file ROL_MeanVarianceQuadrangle.hpp.
References ROL::MeanVarianceQuadrangle< Real >::coeff_.
Referenced by ROL::MeanVarianceQuadrangle< Real >::regret().
|
inlinevirtual |
Evaluate the scalar regret function at x.
[in] | x | is the scalar input |
[in] | deriv | is the derivative order |
This function returns \(v(x)\) or a derivative of \(v(x)\).
Implements ROL::ExpectationQuad< Real >.
Definition at line 108 of file ROL_MeanVarianceQuadrangle.hpp.
References ROL::MeanVarianceQuadrangle< Real >::error(), and zero.
|
private |
Definition at line 46 of file ROL_MeanVarianceQuadrangle.hpp.
Referenced by ROL::MeanVarianceQuadrangle< Real >::checkInputs(), ROL::MeanVarianceQuadrangle< Real >::error(), and ROL::MeanVarianceQuadrangle< Real >::parseParameterList().