ROL
|
Provides a general interface for risk and error measures generated through the expectation risk quadrangle. More...
#include <ROL_ExpectationQuad.hpp>
Public Member Functions | |
virtual | ~ExpectationQuad (void) |
ExpectationQuad (void) | |
virtual Real | regret (Real x, int deriv=0)=0 |
Evaluate the scalar regret function at x. More... | |
virtual Real | error (Real x, int deriv=0) |
Evaluate the scalar error function at x. More... | |
virtual void | check (void) |
Run default derivative tests for the scalar regret function. More... | |
Provides a general interface for risk and error measures generated through the expectation risk quadrangle.
Provides a general interface for risk measures generated through the expectation risk quadrangle.
Provides a general interface for deviation measures generated through the expectation risk quadrangle.
The expectation risk quadrangle is a specialization of the general risk quadrangle that provides a rigorous connection between risk-averse optimization and statistical estimation. The risk quadrangle provides fundamental relationships between measures of risk, regret, error and deviation. An expectation risk quadrangle is defined through scalar regret and error functions. The scalar regret function, \(v:\mathbb{R}\to(-\infty,\infty]\), must be proper, closed, convex and satisfy \(v(0)=0\) and \(v(x) > x\) for all \(x\neq 0\). Similarly, the scalar error function, \(e:\mathbb{R}\to[0,\infty]\), must be proper, closed, convex and satisfy \(e(0)=0\) and \(e(x) > 0\) for all \(x\neq 0\). \(v\) and \(e\) are obtained from one another through the relations
\[ v(x) = e(x) + x \quad\text{and}\quad e(x) = v(x) - x. \]
Given \(v\) (or equivalently \(e\)), the associated risk measure is
\[ \mathcal{R}(X) = \inf_{t\in\mathbb{R}} \left\{ t + \mathbb{E}\left[v(X-t)\right] \right\}. \]
In general, \(\mathcal{R}\) is convex and translation equivariant. Moreover, \(\mathcal{R}\) is monotonic if \(v\) is increasing and \(\mathcal{R}\) is positive homogeneous if \(v\) is. ROL implements this by augmenting the optimization vector \(x_0\) with the parameter \(t\), then minimizes jointly for \((x_0,t)\).
Definition at line 87 of file ROL_ExpectationQuad.hpp.
|
inlinevirtual |
Definition at line 89 of file ROL_ExpectationQuad.hpp.
|
inline |
Definition at line 90 of file ROL_ExpectationQuad.hpp.
|
pure virtual |
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)\).
Implemented in ROL::GenMoreauYosidaCVaR< Real >, ROL::QuantileQuadrangle< Real >, ROL::MoreauYosidaCVaR< Real >, ROL::LogQuantileQuadrangle< Real >, ROL::SmoothedWorstCaseQuadrangle< Real >, ROL::LogExponentialQuadrangle< Real >, ROL::MeanVarianceQuadrangle< Real >, and ROL::TruncatedMeanQuadrangle< Real >.
Referenced by ROL::ExpectationQuad< Real >::check(), and ROL::ExpectationQuad< Real >::error().
|
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 in ROL::GenMoreauYosidaCVaR< Real >, ROL::QuantileQuadrangle< Real >, ROL::MoreauYosidaCVaR< Real >, ROL::LogQuantileQuadrangle< Real >, ROL::SmoothedWorstCaseQuadrangle< Real >, ROL::LogExponentialQuadrangle< Real >, ROL::MeanVarianceQuadrangle< Real >, and ROL::TruncatedMeanQuadrangle< Real >.
Definition at line 108 of file ROL_ExpectationQuad.hpp.
References ROL::ExpectationQuad< Real >::regret(), and zero.
|
inlinevirtual |
Run default derivative tests for the scalar regret function.
Reimplemented in ROL::GenMoreauYosidaCVaR< Real >, ROL::QuantileQuadrangle< Real >, ROL::MoreauYosidaCVaR< Real >, ROL::LogQuantileQuadrangle< Real >, ROL::SmoothedWorstCaseQuadrangle< Real >, and ROL::TruncatedMeanQuadrangle< Real >.
Definition at line 116 of file ROL_ExpectationQuad.hpp.
References ROL::ExpectationQuad< Real >::regret(), and zero.
Referenced by ROL::TruncatedMeanQuadrangle< Real >::check(), ROL::SmoothedWorstCaseQuadrangle< Real >::check(), ROL::LogQuantileQuadrangle< Real >::check(), ROL::MoreauYosidaCVaR< Real >::check(), ROL::QuantileQuadrangle< Real >::check(), and ROL::GenMoreauYosidaCVaR< Real >::check().