ROL
Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes | List of all members
ROL::RandVarFunctional< Real > Class Template Reference

Provides the interface to implement any functional that maps a random variable to a (extended) real number. More...

#include <ROL_RandVarFunctional.hpp>

+ Inheritance diagram for ROL::RandVarFunctional< Real >:

Public Member Functions

virtual ~RandVarFunctional ()
 
 RandVarFunctional (void)
 
 weight_ (0)
 
void useStorage (bool storage)
 
void useHessVecStorage (bool storage)
 
virtual void setStorage (const Ptr< SampledScalar< Real >> &value_storage, const Ptr< SampledVector< Real >> &gradient_storage)
 
virtual void setHessVecStorage (const Ptr< SampledScalar< Real >> &gradvec_storage, const Ptr< SampledVector< Real >> &hessvec_storage)
 
virtual void resetStorage (bool flag=true)
 Reset internal storage. More...
 
virtual void initialize (const Vector< Real > &x)
 Initialize temporary variables. More...
 
virtual void setSample (const std::vector< Real > &point, const Real weight)
 
virtual Real computeStatistic (const Ptr< const std::vector< Real >> &xstat) const
 Compute statistic. More...
 
virtual void updateValue (Objective< Real > &obj, const Vector< Real > &x, const std::vector< Real > &xstat, Real &tol)
 Update internal storage for value computation. More...
 
virtual void updateGradient (Objective< Real > &obj, const Vector< Real > &x, const std::vector< Real > &xstat, Real &tol)
 Update internal risk measure storage for gradient computation. More...
 
virtual void updateHessVec (Objective< Real > &obj, const Vector< Real > &v, const std::vector< Real > &vstat, const Vector< Real > &x, const std::vector< Real > &xstat, Real &tol)
 Update internal risk measure storage for Hessian-time-a-vector computation. More...
 
virtual Real getValue (const Vector< Real > &x, const std::vector< Real > &xstat, SampleGenerator< Real > &sampler)
 Return risk measure value. More...
 
virtual void getGradient (Vector< Real > &g, std::vector< Real > &gstat, const Vector< Real > &x, const std::vector< Real > &xstat, SampleGenerator< Real > &sampler)
 Return risk measure (sub)gradient. More...
 
virtual void getHessVec (Vector< Real > &hv, std::vector< Real > &hvstat, const Vector< Real > &v, const std::vector< Real > &vstat, const Vector< Real > &x, const std::vector< Real > &xstat, SampleGenerator< Real > &sampler)
 Return risk measure Hessian-times-a-vector. More...
 

Protected Member Functions

Real computeValue (Objective< Real > &obj, const Vector< Real > &x, Real &tol)
 
void computeGradient (Vector< Real > &g, Objective< Real > &obj, const Vector< Real > &x, Real &tol)
 
Real computeGradVec (Vector< Real > &g, Objective< Real > &obj, const Vector< Real > &v, const Vector< Real > &x, Real &tol)
 
void computeHessVec (Vector< Real > &hv, Objective< Real > &obj, const Vector< Real > &v, const Vector< Real > &x, Real &tol)
 

Protected Attributes

Real val_
 
Real gv_
 
Ptr< Vector< Real > > g_
 
Ptr< Vector< Real > > hv_
 
Ptr< Vector< Real > > dualVector_
 
bool firstReset_
 
std::vector< Real > point_
 
Real weight_
 

Private Attributes

bool storage_
 
bool storage_hessvec_
 
Ptr< SampledScalar< Real > > value_storage_
 
Ptr< SampledVector< Real > > gradient_storage_
 
Ptr< SampledScalar< Real > > gradvec_storage_
 
Ptr< SampledVector< Real > > hessvec_storage_
 

Detailed Description

template<class Real>
class ROL::RandVarFunctional< Real >

Provides the interface to implement any functional that maps a random variable to a (extended) real number.

Let \((\Omega,\mathcal{F},\mathbb{P})\) be a probability space. Here, \(\Omega\) is the set of outcomes, \(\mathcal{F}\subseteq 2^\Omega\) is a \(\sigma\)-algebra of events and \(\mathbb{P}:\mathcal{F}\to[0,1]\) is a probability measure. Moreover, let \(\mathcal{X}\) be a class of random variables. A ``random variable functional'' is an extended real-valued functional that associates numerical values to random variables, i.e., \(\mathcal{R}:\mathcal{X}\to\mathbb{R}\cup\{+\infty\}\). In most cases, \(\mathcal{X} = L^p(\Omega,\mathcal{F},\mathbb{P})\) for some \(1\le p\le \infty\).

ROL's random variable functional base class is written in a way to exploit parallel sampling. General risk measures may depend on global information such as the expected value of a random variable, \(\mathbb{E}[X]\). Thus, ROL::RandVarFunctional contains functions to update intermediate information and to compute desired quantities such as values, gradients and Hessians applied to vectors.

Definition at line 80 of file ROL_RandVarFunctional.hpp.

Constructor & Destructor Documentation

template<class Real >
virtual ROL::RandVarFunctional< Real >::~RandVarFunctional ( )
inlinevirtual

Definition at line 171 of file ROL_RandVarFunctional.hpp.

template<class Real >
ROL::RandVarFunctional< Real >::RandVarFunctional ( void  )
inline

Definition at line 173 of file ROL_RandVarFunctional.hpp.

Member Function Documentation

template<class Real >
Real ROL::RandVarFunctional< Real >::computeValue ( Objective< Real > &  obj,
const Vector< Real > &  x,
Real &  tol 
)
inlineprotected

Definition at line 101 of file ROL_RandVarFunctional.hpp.

References ROL::RandVarFunctional< Real >::point_, ROL::Objective< Real >::setParameter(), ROL::RandVarFunctional< Real >::storage_, ROL::Objective< Real >::value(), and ROL::RandVarFunctional< Real >::value_storage_.

Referenced by ROL::CoherentEntropicRisk< Real >::updateGradient(), ROL::ExpectationQuadError< Real >::updateGradient(), ROL::ExpectationQuadRegret< Real >::updateGradient(), ROL::ExpectationQuadRisk< Real >::updateGradient(), ROL::ExpectationQuadDeviation< Real >::updateGradient(), ROL::EntropicRisk< Real >::updateGradient(), ROL::SmoothedPOE< Real >::updateGradient(), ROL::BPOE< Real >::updateGradient(), ROL::QuantileRadius< Real >::updateGradient(), ROL::PD_BPOE< Real >::updateGradient(), ROL::PD_MeanSemiDeviationFromTarget< Real >::updateGradient(), ROL::MeanSemiDeviationFromTarget< Real >::updateGradient(), ROL::PD_CVaR< Real >::updateGradient(), ROL::PD_MeanSemiDeviation< Real >::updateGradient(), ROL::CVaR< Real >::updateGradient(), ROL::KLDivergence< Real >::updateGradient(), ROL::PD_HMCR2< Real >::updateGradient(), ROL::MixedCVaR< Real >::updateGradient(), ROL::MeanSemiDeviation< Real >::updateGradient(), ROL::HMCR< Real >::updateGradient(), ROL::MeanVarianceFromTarget< Real >::updateGradient(), ROL::FDivergence< Real >::updateGradient(), ROL::MeanVariance< Real >::updateGradient(), ROL::MeanDeviationFromTarget< Real >::updateGradient(), ROL::MeanDeviation< Real >::updateGradient(), ROL::ExpectationQuadError< Real >::updateHessVec(), ROL::ExpectationQuadRegret< Real >::updateHessVec(), ROL::ExpectationQuadRisk< Real >::updateHessVec(), ROL::ExpectationQuadDeviation< Real >::updateHessVec(), ROL::CoherentEntropicRisk< Real >::updateHessVec(), ROL::SmoothedPOE< Real >::updateHessVec(), ROL::EntropicRisk< Real >::updateHessVec(), ROL::PD_MeanSemiDeviationFromTarget< Real >::updateHessVec(), ROL::CVaR< Real >::updateHessVec(), ROL::MeanSemiDeviationFromTarget< Real >::updateHessVec(), ROL::QuantileRadius< Real >::updateHessVec(), ROL::BPOE< Real >::updateHessVec(), ROL::PD_BPOE< Real >::updateHessVec(), ROL::PD_CVaR< Real >::updateHessVec(), ROL::PD_MeanSemiDeviation< Real >::updateHessVec(), ROL::KLDivergence< Real >::updateHessVec(), ROL::PD_HMCR2< Real >::updateHessVec(), ROL::MixedCVaR< Real >::updateHessVec(), ROL::MeanVarianceFromTarget< Real >::updateHessVec(), ROL::MeanSemiDeviation< Real >::updateHessVec(), ROL::HMCR< Real >::updateHessVec(), ROL::FDivergence< Real >::updateHessVec(), ROL::MeanVariance< Real >::updateHessVec(), ROL::MeanDeviation< Real >::updateHessVec(), ROL::MeanDeviationFromTarget< Real >::updateHessVec(), ROL::CoherentEntropicRisk< Real >::updateValue(), ROL::SmoothedPOE< Real >::updateValue(), ROL::BPOE< Real >::updateValue(), ROL::EntropicRisk< Real >::updateValue(), ROL::ExpectationQuadError< Real >::updateValue(), ROL::ExpectationQuadRegret< Real >::updateValue(), ROL::ExpectationQuadRisk< Real >::updateValue(), ROL::ExpectationQuadDeviation< Real >::updateValue(), ROL::PD_BPOE< Real >::updateValue(), ROL::QuantileRadius< Real >::updateValue(), ROL::PD_MeanSemiDeviation< Real >::updateValue(), ROL::PD_MeanSemiDeviationFromTarget< Real >::updateValue(), ROL::PD_CVaR< Real >::updateValue(), ROL::MeanSemiDeviationFromTarget< Real >::updateValue(), ROL::CVaR< Real >::updateValue(), ROL::KLDivergence< Real >::updateValue(), ROL::PD_HMCR2< Real >::updateValue(), ROL::MixedCVaR< Real >::updateValue(), ROL::MeanSemiDeviation< Real >::updateValue(), ROL::HMCR< Real >::updateValue(), ROL::MeanVarianceFromTarget< Real >::updateValue(), ROL::FDivergence< Real >::updateValue(), ROL::MeanVariance< Real >::updateValue(), ROL::MeanDeviationFromTarget< Real >::updateValue(), ROL::MeanDeviation< Real >::updateValue(), and ROL::RandVarFunctional< Real >::updateValue().

template<class Real >
void ROL::RandVarFunctional< Real >::computeGradient ( Vector< Real > &  g,
Objective< Real > &  obj,
const Vector< Real > &  x,
Real &  tol 
)
inlineprotected

Definition at line 119 of file ROL_RandVarFunctional.hpp.

References ROL::Objective< Real >::gradient(), ROL::RandVarFunctional< Real >::gradient_storage_, ROL::RandVarFunctional< Real >::point_, ROL::Objective< Real >::setParameter(), and ROL::RandVarFunctional< Real >::storage_.

Referenced by ROL::RandVarFunctional< Real >::computeGradVec(), ROL::CoherentEntropicRisk< Real >::updateGradient(), ROL::ExpectationQuadError< Real >::updateGradient(), ROL::ExpectationQuadRegret< Real >::updateGradient(), ROL::ExpectationQuadDeviation< Real >::updateGradient(), ROL::ExpectationQuadRisk< Real >::updateGradient(), ROL::EntropicRisk< Real >::updateGradient(), ROL::SmoothedPOE< Real >::updateGradient(), ROL::BPOE< Real >::updateGradient(), ROL::QuantileRadius< Real >::updateGradient(), ROL::PD_BPOE< Real >::updateGradient(), ROL::PD_MeanSemiDeviationFromTarget< Real >::updateGradient(), ROL::PD_CVaR< Real >::updateGradient(), ROL::MeanSemiDeviationFromTarget< Real >::updateGradient(), ROL::PD_MeanSemiDeviation< Real >::updateGradient(), ROL::CVaR< Real >::updateGradient(), ROL::KLDivergence< Real >::updateGradient(), ROL::PD_HMCR2< Real >::updateGradient(), ROL::MixedCVaR< Real >::updateGradient(), ROL::MeanSemiDeviation< Real >::updateGradient(), ROL::HMCR< Real >::updateGradient(), ROL::MeanVarianceFromTarget< Real >::updateGradient(), ROL::FDivergence< Real >::updateGradient(), ROL::MeanVariance< Real >::updateGradient(), ROL::MeanDeviationFromTarget< Real >::updateGradient(), ROL::MeanDeviation< Real >::updateGradient(), and ROL::RandVarFunctional< Real >::updateGradient().

template<class Real >
Real ROL::RandVarFunctional< Real >::computeGradVec ( Vector< Real > &  g,
Objective< Real > &  obj,
const Vector< Real > &  v,
const Vector< Real > &  x,
Real &  tol 
)
inlineprotected

Definition at line 135 of file ROL_RandVarFunctional.hpp.

References ROL::RandVarFunctional< Real >::computeGradient(), ROL::Vector< Real >::dot(), ROL::Vector< Real >::dual(), ROL::RandVarFunctional< Real >::gradvec_storage_, ROL::RandVarFunctional< Real >::point_, and ROL::RandVarFunctional< Real >::storage_hessvec_.

Referenced by ROL::ExpectationQuadError< Real >::updateHessVec(), ROL::ExpectationQuadRegret< Real >::updateHessVec(), ROL::ExpectationQuadRisk< Real >::updateHessVec(), ROL::ExpectationQuadDeviation< Real >::updateHessVec(), ROL::CoherentEntropicRisk< Real >::updateHessVec(), ROL::EntropicRisk< Real >::updateHessVec(), ROL::SmoothedPOE< Real >::updateHessVec(), ROL::PD_MeanSemiDeviationFromTarget< Real >::updateHessVec(), ROL::CVaR< Real >::updateHessVec(), ROL::MeanSemiDeviationFromTarget< Real >::updateHessVec(), ROL::QuantileRadius< Real >::updateHessVec(), ROL::BPOE< Real >::updateHessVec(), ROL::PD_BPOE< Real >::updateHessVec(), ROL::PD_CVaR< Real >::updateHessVec(), ROL::PD_MeanSemiDeviation< Real >::updateHessVec(), ROL::KLDivergence< Real >::updateHessVec(), ROL::PD_HMCR2< Real >::updateHessVec(), ROL::MixedCVaR< Real >::updateHessVec(), ROL::MeanVarianceFromTarget< Real >::updateHessVec(), ROL::MeanSemiDeviation< Real >::updateHessVec(), ROL::HMCR< Real >::updateHessVec(), ROL::FDivergence< Real >::updateHessVec(), ROL::MeanVariance< Real >::updateHessVec(), ROL::MeanDeviation< Real >::updateHessVec(), and ROL::MeanDeviationFromTarget< Real >::updateHessVec().

template<class Real >
void ROL::RandVarFunctional< Real >::computeHessVec ( Vector< Real > &  hv,
Objective< Real > &  obj,
const Vector< Real > &  v,
const Vector< Real > &  x,
Real &  tol 
)
inlineprotected

Definition at line 154 of file ROL_RandVarFunctional.hpp.

References ROL::Objective< Real >::hessVec(), ROL::RandVarFunctional< Real >::hessvec_storage_, ROL::RandVarFunctional< Real >::point_, ROL::Objective< Real >::setParameter(), and ROL::RandVarFunctional< Real >::storage_hessvec_.

Referenced by ROL::ExpectationQuadError< Real >::updateHessVec(), ROL::ExpectationQuadRegret< Real >::updateHessVec(), ROL::ExpectationQuadRisk< Real >::updateHessVec(), ROL::ExpectationQuadDeviation< Real >::updateHessVec(), ROL::CoherentEntropicRisk< Real >::updateHessVec(), ROL::EntropicRisk< Real >::updateHessVec(), ROL::SmoothedPOE< Real >::updateHessVec(), ROL::PD_MeanSemiDeviationFromTarget< Real >::updateHessVec(), ROL::CVaR< Real >::updateHessVec(), ROL::MeanSemiDeviationFromTarget< Real >::updateHessVec(), ROL::QuantileRadius< Real >::updateHessVec(), ROL::BPOE< Real >::updateHessVec(), ROL::PD_BPOE< Real >::updateHessVec(), ROL::PD_CVaR< Real >::updateHessVec(), ROL::PD_MeanSemiDeviation< Real >::updateHessVec(), ROL::KLDivergence< Real >::updateHessVec(), ROL::PD_HMCR2< Real >::updateHessVec(), ROL::MixedCVaR< Real >::updateHessVec(), ROL::MeanVarianceFromTarget< Real >::updateHessVec(), ROL::MeanSemiDeviation< Real >::updateHessVec(), ROL::HMCR< Real >::updateHessVec(), ROL::FDivergence< Real >::updateHessVec(), ROL::MeanVariance< Real >::updateHessVec(), ROL::MeanDeviation< Real >::updateHessVec(), ROL::MeanDeviationFromTarget< Real >::updateHessVec(), and ROL::RandVarFunctional< Real >::updateHessVec().

template<class Real >
ROL::RandVarFunctional< Real >::weight_ ( )
inline

Definition at line 179 of file ROL_RandVarFunctional.hpp.

template<class Real >
void ROL::RandVarFunctional< Real >::useStorage ( bool  storage)
inline
template<class Real >
void ROL::RandVarFunctional< Real >::useHessVecStorage ( bool  storage)
inline
template<class Real >
virtual void ROL::RandVarFunctional< Real >::setStorage ( const Ptr< SampledScalar< Real >> &  value_storage,
const Ptr< SampledVector< Real >> &  gradient_storage 
)
inlinevirtual
template<class Real >
virtual void ROL::RandVarFunctional< Real >::setHessVecStorage ( const Ptr< SampledScalar< Real >> &  gradvec_storage,
const Ptr< SampledVector< Real >> &  hessvec_storage 
)
inlinevirtual
template<class Real >
virtual void ROL::RandVarFunctional< Real >::resetStorage ( bool  flag = true)
inlinevirtual
template<class Real >
virtual void ROL::RandVarFunctional< Real >::initialize ( const Vector< Real > &  x)
inlinevirtual

Initialize temporary variables.

Parameters
[in]xis a vector used for initializing storage

Reimplemented in ROL::MeanDeviation< Real >, ROL::SpectralRisk< Real >, ROL::MeanDeviationFromTarget< Real >, ROL::FDivergence< Real >, ROL::HMCR< Real >, ROL::ConvexCombinationRiskMeasure< Real >, ROL::MeanSemiDeviation< Real >, ROL::PD_RandVarFunctional< Real >, ROL::MixedCVaR< Real >, ROL::PD_HMCR2< Real >, ROL::KLDivergence< Real >, ROL::PD_CVaR< Real >, ROL::PD_MeanSemiDeviationFromTarget< Real >, ROL::PD_MeanSemiDeviation< Real >, ROL::PD_BPOE< Real >, ROL::QuantileRadius< Real >, ROL::BPOE< Real >, and ROL::CoherentEntropicRisk< Real >.

Definition at line 241 of file ROL_RandVarFunctional.hpp.

References ROL::Vector< Real >::dual(), ROL::RandVarFunctional< Real >::dualVector_, ROL::RandVarFunctional< Real >::firstReset_, ROL::RandVarFunctional< Real >::g_, ROL::RandVarFunctional< Real >::gradvec_storage_, ROL::RandVarFunctional< Real >::gv_, ROL::RandVarFunctional< Real >::hessvec_storage_, ROL::RandVarFunctional< Real >::hv_, ROL::RandVarFunctional< Real >::storage_hessvec_, ROL::RandVarFunctional< Real >::val_, and zero.

Referenced by ROL::CoherentEntropicRisk< Real >::initialize(), ROL::BPOE< Real >::initialize(), ROL::QuantileRadius< Real >::initialize(), ROL::KLDivergence< Real >::initialize(), ROL::MixedCVaR< Real >::initialize(), ROL::PD_RandVarFunctional< Real >::initialize(), ROL::MeanSemiDeviation< Real >::initialize(), ROL::ConvexCombinationRiskMeasure< Real >::initialize(), ROL::HMCR< Real >::initialize(), ROL::FDivergence< Real >::initialize(), ROL::MeanDeviationFromTarget< Real >::initialize(), ROL::SpectralRisk< Real >::initialize(), and ROL::MeanDeviation< Real >::initialize().

template<class Real >
virtual void ROL::RandVarFunctional< Real >::setSample ( const std::vector< Real > &  point,
const Real  weight 
)
inlinevirtual
template<class Real >
virtual Real ROL::RandVarFunctional< Real >::computeStatistic ( const Ptr< const std::vector< Real >> &  xstat) const
inlinevirtual

Compute statistic.

Parameters
[in]xstatis a ROL::Ptr to a std::vector containing the statistic vector

Definition at line 269 of file ROL_RandVarFunctional.hpp.

template<class Real >
virtual void ROL::RandVarFunctional< Real >::updateValue ( Objective< Real > &  obj,
const Vector< Real > &  x,
const std::vector< Real > &  xstat,
Real &  tol 
)
inlinevirtual
template<class Real >
virtual void ROL::RandVarFunctional< Real >::updateGradient ( Objective< Real > &  obj,
const Vector< Real > &  x,
const std::vector< Real > &  xstat,
Real &  tol 
)
inlinevirtual
template<class Real >
virtual void ROL::RandVarFunctional< Real >::updateHessVec ( Objective< Real > &  obj,
const Vector< Real > &  v,
const std::vector< Real > &  vstat,
const Vector< Real > &  x,
const std::vector< Real > &  xstat,
Real &  tol 
)
inlinevirtual

Update internal risk measure storage for Hessian-time-a-vector computation.

Parameters
[in]valis the value of the random variable objective function at the current sample point
[in]gis the gradient of the random variable objective function at the current sample point
[in]gvis the gradient of the random variable objective function at the current sample point applied to the vector v0
[in]hvis the Hessian of the random variable objective function at the current sample point applied to the vector v0
[in]weightis the weight associated with the current sample point

Reimplemented in ROL::MeanDeviationFromTarget< Real >, ROL::MeanDeviation< Real >, ROL::MeanVariance< Real >, ROL::FDivergence< Real >, ROL::HMCR< Real >, ROL::SpectralRisk< Real >, ROL::ConvexCombinationRiskMeasure< Real >, ROL::MeanSemiDeviation< Real >, ROL::MeanVarianceFromTarget< Real >, ROL::MixedCVaR< Real >, ROL::PD_HMCR2< Real >, ROL::KLDivergence< Real >, ROL::PD_MeanSemiDeviation< Real >, ROL::PD_CVaR< Real >, ROL::PD_BPOE< Real >, ROL::BPOE< Real >, ROL::QuantileRadius< Real >, ROL::CVaR< Real >, ROL::MeanSemiDeviationFromTarget< Real >, ROL::PD_MeanSemiDeviationFromTarget< Real >, ROL::SmoothedPOE< Real >, ROL::EntropicRisk< Real >, ROL::CoherentEntropicRisk< Real >, ROL::ExpectationQuadDeviation< Real >, ROL::ExpectationQuadRisk< Real >, ROL::ExpectationQuadError< Real >, and ROL::ExpectationQuadRegret< Real >.

Definition at line 324 of file ROL_RandVarFunctional.hpp.

References ROL::RandVarFunctional< Real >::computeHessVec(), ROL::RandVarFunctional< Real >::dualVector_, ROL::RandVarFunctional< Real >::hv_, and ROL::RandVarFunctional< Real >::weight_.

template<class Real >
virtual Real ROL::RandVarFunctional< Real >::getValue ( const Vector< Real > &  x,
const std::vector< Real > &  xstat,
SampleGenerator< Real > &  sampler 
)
inlinevirtual
template<class Real >
virtual void ROL::RandVarFunctional< Real >::getGradient ( Vector< Real > &  g,
std::vector< Real > &  gstat,
const Vector< Real > &  x,
const std::vector< Real > &  xstat,
SampleGenerator< Real > &  sampler 
)
inlinevirtual
template<class Real >
virtual void ROL::RandVarFunctional< Real >::getHessVec ( Vector< Real > &  hv,
std::vector< Real > &  hvstat,
const Vector< Real > &  v,
const std::vector< Real > &  vstat,
const Vector< Real > &  x,
const std::vector< Real > &  xstat,
SampleGenerator< Real > &  sampler 
)
inlinevirtual

Member Data Documentation

template<class Real >
bool ROL::RandVarFunctional< Real >::storage_
private
template<class Real >
bool ROL::RandVarFunctional< Real >::storage_hessvec_
private
template<class Real >
Ptr<SampledScalar<Real> > ROL::RandVarFunctional< Real >::value_storage_
private
template<class Real >
Ptr<SampledVector<Real> > ROL::RandVarFunctional< Real >::gradient_storage_
private
template<class Real >
Ptr<SampledScalar<Real> > ROL::RandVarFunctional< Real >::gradvec_storage_
private
template<class Real >
Ptr<SampledVector<Real> > ROL::RandVarFunctional< Real >::hessvec_storage_
private
template<class Real >
Real ROL::RandVarFunctional< Real >::val_
protected

Definition at line 90 of file ROL_RandVarFunctional.hpp.

Referenced by ROL::CoherentEntropicRisk< Real >::getGradient(), ROL::EntropicRisk< Real >::getGradient(), ROL::BPOE< Real >::getGradient(), ROL::PD_BPOE< Real >::getGradient(), ROL::ExpectationQuadDeviation< Real >::getGradient(), ROL::PD_MeanSemiDeviation< Real >::getGradient(), ROL::ExpectationQuadRisk< Real >::getGradient(), ROL::PD_CVaR< Real >::getGradient(), ROL::KLDivergence< Real >::getGradient(), ROL::PD_HMCR2< Real >::getGradient(), ROL::CVaR< Real >::getGradient(), ROL::MeanSemiDeviation< Real >::getGradient(), ROL::FDivergence< Real >::getGradient(), ROL::MeanVariance< Real >::getGradient(), ROL::MeanDeviation< Real >::getGradient(), ROL::CoherentEntropicRisk< Real >::getHessVec(), ROL::EntropicRisk< Real >::getHessVec(), ROL::ExpectationQuadDeviation< Real >::getHessVec(), ROL::ExpectationQuadRisk< Real >::getHessVec(), ROL::PD_BPOE< Real >::getHessVec(), ROL::PD_MeanSemiDeviation< Real >::getHessVec(), ROL::PD_CVaR< Real >::getHessVec(), ROL::CVaR< Real >::getHessVec(), ROL::KLDivergence< Real >::getHessVec(), ROL::PD_HMCR2< Real >::getHessVec(), ROL::MeanSemiDeviation< Real >::getHessVec(), ROL::FDivergence< Real >::getHessVec(), ROL::MeanVariance< Real >::getHessVec(), ROL::MeanDeviation< Real >::getHessVec(), ROL::CoherentEntropicRisk< Real >::getValue(), ROL::EntropicRisk< Real >::getValue(), ROL::SmoothedPOE< Real >::getValue(), ROL::BPOE< Real >::getValue(), ROL::PD_MeanSemiDeviation< Real >::getValue(), ROL::QuantileRadius< Real >::getValue(), ROL::PD_BPOE< Real >::getValue(), ROL::PD_MeanSemiDeviationFromTarget< Real >::getValue(), ROL::MeanSemiDeviationFromTarget< Real >::getValue(), ROL::PD_CVaR< Real >::getValue(), ROL::ExpectationQuadRegret< Real >::getValue(), ROL::ExpectationQuadError< Real >::getValue(), ROL::ExpectationQuadRisk< Real >::getValue(), ROL::ExpectationQuadDeviation< Real >::getValue(), ROL::KLDivergence< Real >::getValue(), ROL::PD_HMCR2< Real >::getValue(), ROL::MeanSemiDeviation< Real >::getValue(), ROL::MixedCVaR< Real >::getValue(), ROL::CVaR< Real >::getValue(), ROL::HMCR< Real >::getValue(), ROL::FDivergence< Real >::getValue(), ROL::MeanVariance< Real >::getValue(), ROL::MeanDeviationFromTarget< Real >::getValue(), ROL::MeanDeviation< Real >::getValue(), ROL::RandVarFunctional< Real >::getValue(), ROL::RandVarFunctional< Real >::initialize(), ROL::CoherentEntropicRisk< Real >::updateGradient(), ROL::ExpectationQuadRisk< Real >::updateGradient(), ROL::ExpectationQuadDeviation< Real >::updateGradient(), ROL::EntropicRisk< Real >::updateGradient(), ROL::BPOE< Real >::updateGradient(), ROL::PD_BPOE< Real >::updateGradient(), ROL::PD_CVaR< Real >::updateGradient(), ROL::CVaR< Real >::updateGradient(), ROL::PD_MeanSemiDeviation< Real >::updateGradient(), ROL::KLDivergence< Real >::updateGradient(), ROL::PD_HMCR2< Real >::updateGradient(), ROL::MeanSemiDeviation< Real >::updateGradient(), ROL::FDivergence< Real >::updateGradient(), ROL::MeanVariance< Real >::updateGradient(), ROL::MeanDeviation< Real >::updateGradient(), ROL::ExpectationQuadDeviation< Real >::updateHessVec(), ROL::ExpectationQuadRisk< Real >::updateHessVec(), ROL::CoherentEntropicRisk< Real >::updateHessVec(), ROL::EntropicRisk< Real >::updateHessVec(), ROL::CVaR< Real >::updateHessVec(), ROL::PD_BPOE< Real >::updateHessVec(), ROL::PD_CVaR< Real >::updateHessVec(), ROL::PD_MeanSemiDeviation< Real >::updateHessVec(), ROL::KLDivergence< Real >::updateHessVec(), ROL::PD_HMCR2< Real >::updateHessVec(), ROL::MeanSemiDeviation< Real >::updateHessVec(), ROL::FDivergence< Real >::updateHessVec(), ROL::MeanVariance< Real >::updateHessVec(), ROL::MeanDeviation< Real >::updateHessVec(), ROL::CoherentEntropicRisk< Real >::updateValue(), ROL::BPOE< Real >::updateValue(), ROL::SmoothedPOE< Real >::updateValue(), ROL::EntropicRisk< Real >::updateValue(), ROL::ExpectationQuadRisk< Real >::updateValue(), ROL::ExpectationQuadRegret< Real >::updateValue(), ROL::ExpectationQuadDeviation< Real >::updateValue(), ROL::ExpectationQuadError< Real >::updateValue(), ROL::PD_BPOE< Real >::updateValue(), ROL::PD_MeanSemiDeviation< Real >::updateValue(), ROL::PD_MeanSemiDeviationFromTarget< Real >::updateValue(), ROL::PD_CVaR< Real >::updateValue(), ROL::MeanSemiDeviationFromTarget< Real >::updateValue(), ROL::CVaR< Real >::updateValue(), ROL::KLDivergence< Real >::updateValue(), ROL::PD_HMCR2< Real >::updateValue(), ROL::MixedCVaR< Real >::updateValue(), ROL::MeanSemiDeviation< Real >::updateValue(), ROL::HMCR< Real >::updateValue(), ROL::MeanVarianceFromTarget< Real >::updateValue(), ROL::FDivergence< Real >::updateValue(), ROL::MeanVariance< Real >::updateValue(), ROL::MeanDeviationFromTarget< Real >::updateValue(), ROL::MeanDeviation< Real >::updateValue(), and ROL::RandVarFunctional< Real >::updateValue().

template<class Real >
Real ROL::RandVarFunctional< Real >::gv_
protected
template<class Real >
Ptr<Vector<Real> > ROL::RandVarFunctional< Real >::g_
protected

Definition at line 92 of file ROL_RandVarFunctional.hpp.

Referenced by ROL::CoherentEntropicRisk< Real >::getGradient(), ROL::EntropicRisk< Real >::getGradient(), ROL::SmoothedPOE< Real >::getGradient(), ROL::BPOE< Real >::getGradient(), ROL::QuantileRadius< Real >::getGradient(), ROL::PD_MeanSemiDeviationFromTarget< Real >::getGradient(), ROL::ExpectationQuadError< Real >::getGradient(), ROL::ExpectationQuadRegret< Real >::getGradient(), ROL::MeanSemiDeviationFromTarget< Real >::getGradient(), ROL::PD_BPOE< Real >::getGradient(), ROL::ExpectationQuadDeviation< Real >::getGradient(), ROL::PD_MeanSemiDeviation< Real >::getGradient(), ROL::ExpectationQuadRisk< Real >::getGradient(), ROL::PD_CVaR< Real >::getGradient(), ROL::KLDivergence< Real >::getGradient(), ROL::PD_HMCR2< Real >::getGradient(), ROL::CVaR< Real >::getGradient(), ROL::MeanSemiDeviation< Real >::getGradient(), ROL::MixedCVaR< Real >::getGradient(), ROL::ConvexCombinationRiskMeasure< Real >::getGradient(), ROL::HMCR< Real >::getGradient(), ROL::FDivergence< Real >::getGradient(), ROL::MeanVariance< Real >::getGradient(), ROL::MeanDeviationFromTarget< Real >::getGradient(), ROL::MeanDeviation< Real >::getGradient(), ROL::RandVarFunctional< Real >::getGradient(), ROL::CoherentEntropicRisk< Real >::getHessVec(), ROL::EntropicRisk< Real >::getHessVec(), ROL::BPOE< Real >::getHessVec(), ROL::PD_MeanSemiDeviation< Real >::getHessVec(), ROL::KLDivergence< Real >::getHessVec(), ROL::PD_HMCR2< Real >::getHessVec(), ROL::HMCR< Real >::getHessVec(), ROL::MeanVariance< Real >::getHessVec(), ROL::MeanDeviation< Real >::getHessVec(), ROL::RandVarFunctional< Real >::initialize(), ROL::CoherentEntropicRisk< Real >::updateGradient(), ROL::ExpectationQuadError< Real >::updateGradient(), ROL::ExpectationQuadRegret< Real >::updateGradient(), ROL::ExpectationQuadRisk< Real >::updateGradient(), ROL::ExpectationQuadDeviation< Real >::updateGradient(), ROL::EntropicRisk< Real >::updateGradient(), ROL::SmoothedPOE< Real >::updateGradient(), ROL::BPOE< Real >::updateGradient(), ROL::QuantileRadius< Real >::updateGradient(), ROL::PD_BPOE< Real >::updateGradient(), ROL::PD_MeanSemiDeviationFromTarget< Real >::updateGradient(), ROL::MeanSemiDeviationFromTarget< Real >::updateGradient(), ROL::PD_CVaR< Real >::updateGradient(), ROL::PD_MeanSemiDeviation< Real >::updateGradient(), ROL::CVaR< Real >::updateGradient(), ROL::KLDivergence< Real >::updateGradient(), ROL::PD_HMCR2< Real >::updateGradient(), ROL::MixedCVaR< Real >::updateGradient(), ROL::HMCR< Real >::updateGradient(), ROL::MeanVarianceFromTarget< Real >::updateGradient(), ROL::FDivergence< Real >::updateGradient(), ROL::MeanVariance< Real >::updateGradient(), ROL::MeanDeviationFromTarget< Real >::updateGradient(), ROL::MeanDeviation< Real >::updateGradient(), ROL::RandVarFunctional< Real >::updateGradient(), ROL::CoherentEntropicRisk< Real >::updateHessVec(), ROL::EntropicRisk< Real >::updateHessVec(), ROL::BPOE< Real >::updateHessVec(), ROL::PD_MeanSemiDeviation< Real >::updateHessVec(), ROL::KLDivergence< Real >::updateHessVec(), ROL::PD_HMCR2< Real >::updateHessVec(), ROL::HMCR< Real >::updateHessVec(), ROL::MeanVariance< Real >::updateHessVec(), and ROL::MeanDeviationFromTarget< Real >::updateHessVec().

template<class Real >
Ptr<Vector<Real> > ROL::RandVarFunctional< Real >::hv_
protected

Definition at line 93 of file ROL_RandVarFunctional.hpp.

Referenced by ROL::PD_MeanSemiDeviation< Real >::getGradient(), ROL::HMCR< Real >::getGradient(), ROL::CoherentEntropicRisk< Real >::getHessVec(), ROL::EntropicRisk< Real >::getHessVec(), ROL::ExpectationQuadError< Real >::getHessVec(), ROL::ExpectationQuadRegret< Real >::getHessVec(), ROL::SmoothedPOE< Real >::getHessVec(), ROL::ExpectationQuadDeviation< Real >::getHessVec(), ROL::ExpectationQuadRisk< Real >::getHessVec(), ROL::MeanSemiDeviationFromTarget< Real >::getHessVec(), ROL::PD_MeanSemiDeviationFromTarget< Real >::getHessVec(), ROL::QuantileRadius< Real >::getHessVec(), ROL::PD_BPOE< Real >::getHessVec(), ROL::BPOE< Real >::getHessVec(), ROL::PD_MeanSemiDeviation< Real >::getHessVec(), ROL::PD_CVaR< Real >::getHessVec(), ROL::CVaR< Real >::getHessVec(), ROL::KLDivergence< Real >::getHessVec(), ROL::PD_HMCR2< Real >::getHessVec(), ROL::MixedCVaR< Real >::getHessVec(), ROL::MeanSemiDeviation< Real >::getHessVec(), ROL::ConvexCombinationRiskMeasure< Real >::getHessVec(), ROL::FDivergence< Real >::getHessVec(), ROL::HMCR< Real >::getHessVec(), ROL::MeanVariance< Real >::getHessVec(), ROL::MeanDeviationFromTarget< Real >::getHessVec(), ROL::RandVarFunctional< Real >::getHessVec(), ROL::MeanDeviation< Real >::getHessVec(), ROL::RandVarFunctional< Real >::initialize(), ROL::HMCR< Real >::updateGradient(), ROL::ExpectationQuadError< Real >::updateHessVec(), ROL::ExpectationQuadRegret< Real >::updateHessVec(), ROL::ExpectationQuadRisk< Real >::updateHessVec(), ROL::ExpectationQuadDeviation< Real >::updateHessVec(), ROL::CoherentEntropicRisk< Real >::updateHessVec(), ROL::EntropicRisk< Real >::updateHessVec(), ROL::SmoothedPOE< Real >::updateHessVec(), ROL::PD_MeanSemiDeviationFromTarget< Real >::updateHessVec(), ROL::CVaR< Real >::updateHessVec(), ROL::MeanSemiDeviationFromTarget< Real >::updateHessVec(), ROL::QuantileRadius< Real >::updateHessVec(), ROL::BPOE< Real >::updateHessVec(), ROL::PD_BPOE< Real >::updateHessVec(), ROL::PD_CVaR< Real >::updateHessVec(), ROL::PD_MeanSemiDeviation< Real >::updateHessVec(), ROL::KLDivergence< Real >::updateHessVec(), ROL::PD_HMCR2< Real >::updateHessVec(), ROL::MixedCVaR< Real >::updateHessVec(), ROL::MeanVarianceFromTarget< Real >::updateHessVec(), ROL::HMCR< Real >::updateHessVec(), ROL::FDivergence< Real >::updateHessVec(), ROL::MeanVariance< Real >::updateHessVec(), ROL::MeanDeviationFromTarget< Real >::updateHessVec(), and ROL::RandVarFunctional< Real >::updateHessVec().

template<class Real >
Ptr<Vector<Real> > ROL::RandVarFunctional< Real >::dualVector_
protected

Definition at line 94 of file ROL_RandVarFunctional.hpp.

Referenced by ROL::PD_MeanSemiDeviation< Real >::getGradient(), ROL::MeanSemiDeviation< Real >::getGradient(), ROL::HMCR< Real >::getGradient(), ROL::MeanVariance< Real >::getGradient(), ROL::MeanDeviationFromTarget< Real >::getGradient(), ROL::MeanDeviation< Real >::getGradient(), ROL::CoherentEntropicRisk< Real >::getHessVec(), ROL::EntropicRisk< Real >::getHessVec(), ROL::PD_MeanSemiDeviation< Real >::getHessVec(), ROL::KLDivergence< Real >::getHessVec(), ROL::PD_HMCR2< Real >::getHessVec(), ROL::MeanSemiDeviation< Real >::getHessVec(), ROL::HMCR< Real >::getHessVec(), ROL::MeanVariance< Real >::getHessVec(), ROL::MeanDeviationFromTarget< Real >::getHessVec(), ROL::MeanDeviation< Real >::getHessVec(), ROL::RandVarFunctional< Real >::initialize(), ROL::CoherentEntropicRisk< Real >::updateGradient(), ROL::ExpectationQuadError< Real >::updateGradient(), ROL::ExpectationQuadRegret< Real >::updateGradient(), ROL::ExpectationQuadRisk< Real >::updateGradient(), ROL::ExpectationQuadDeviation< Real >::updateGradient(), ROL::EntropicRisk< Real >::updateGradient(), ROL::SmoothedPOE< Real >::updateGradient(), ROL::BPOE< Real >::updateGradient(), ROL::QuantileRadius< Real >::updateGradient(), ROL::PD_BPOE< Real >::updateGradient(), ROL::PD_MeanSemiDeviationFromTarget< Real >::updateGradient(), ROL::MeanSemiDeviationFromTarget< Real >::updateGradient(), ROL::PD_CVaR< Real >::updateGradient(), ROL::CVaR< Real >::updateGradient(), ROL::PD_MeanSemiDeviation< Real >::updateGradient(), ROL::KLDivergence< Real >::updateGradient(), ROL::PD_HMCR2< Real >::updateGradient(), ROL::MixedCVaR< Real >::updateGradient(), ROL::MeanSemiDeviation< Real >::updateGradient(), ROL::HMCR< Real >::updateGradient(), ROL::MeanVarianceFromTarget< Real >::updateGradient(), ROL::FDivergence< Real >::updateGradient(), ROL::MeanVariance< Real >::updateGradient(), ROL::MeanDeviationFromTarget< Real >::updateGradient(), ROL::MeanDeviation< Real >::updateGradient(), ROL::RandVarFunctional< Real >::updateGradient(), ROL::ExpectationQuadRegret< Real >::updateHessVec(), ROL::ExpectationQuadError< Real >::updateHessVec(), ROL::ExpectationQuadDeviation< Real >::updateHessVec(), ROL::ExpectationQuadRisk< Real >::updateHessVec(), ROL::CoherentEntropicRisk< Real >::updateHessVec(), ROL::EntropicRisk< Real >::updateHessVec(), ROL::SmoothedPOE< Real >::updateHessVec(), ROL::PD_MeanSemiDeviationFromTarget< Real >::updateHessVec(), ROL::MeanSemiDeviationFromTarget< Real >::updateHessVec(), ROL::CVaR< Real >::updateHessVec(), ROL::QuantileRadius< Real >::updateHessVec(), ROL::BPOE< Real >::updateHessVec(), ROL::PD_BPOE< Real >::updateHessVec(), ROL::PD_CVaR< Real >::updateHessVec(), ROL::PD_MeanSemiDeviation< Real >::updateHessVec(), ROL::KLDivergence< Real >::updateHessVec(), ROL::PD_HMCR2< Real >::updateHessVec(), ROL::MixedCVaR< Real >::updateHessVec(), ROL::MeanVarianceFromTarget< Real >::updateHessVec(), ROL::MeanSemiDeviation< Real >::updateHessVec(), ROL::HMCR< Real >::updateHessVec(), ROL::FDivergence< Real >::updateHessVec(), ROL::MeanVariance< Real >::updateHessVec(), ROL::MeanDeviation< Real >::updateHessVec(), ROL::MeanDeviationFromTarget< Real >::updateHessVec(), and ROL::RandVarFunctional< Real >::updateHessVec().

template<class Real >
bool ROL::RandVarFunctional< Real >::firstReset_
protected
template<class Real >
std::vector<Real> ROL::RandVarFunctional< Real >::point_
protected
template<class Real >
Real ROL::RandVarFunctional< Real >::weight_
protected

Definition at line 98 of file ROL_RandVarFunctional.hpp.

Referenced by ROL::RandVarFunctional< Real >::setSample(), ROL::CoherentEntropicRisk< Real >::updateGradient(), ROL::ExpectationQuadError< Real >::updateGradient(), ROL::ExpectationQuadRegret< Real >::updateGradient(), ROL::ExpectationQuadRisk< Real >::updateGradient(), ROL::ExpectationQuadDeviation< Real >::updateGradient(), ROL::EntropicRisk< Real >::updateGradient(), ROL::SmoothedPOE< Real >::updateGradient(), ROL::BPOE< Real >::updateGradient(), ROL::QuantileRadius< Real >::updateGradient(), ROL::PD_BPOE< Real >::updateGradient(), ROL::PD_MeanSemiDeviationFromTarget< Real >::updateGradient(), ROL::MeanSemiDeviationFromTarget< Real >::updateGradient(), ROL::PD_CVaR< Real >::updateGradient(), ROL::PD_MeanSemiDeviation< Real >::updateGradient(), ROL::CVaR< Real >::updateGradient(), ROL::KLDivergence< Real >::updateGradient(), ROL::PD_HMCR2< Real >::updateGradient(), ROL::MixedCVaR< Real >::updateGradient(), ROL::MeanSemiDeviation< Real >::updateGradient(), ROL::HMCR< Real >::updateGradient(), ROL::MeanVarianceFromTarget< Real >::updateGradient(), ROL::FDivergence< Real >::updateGradient(), ROL::MeanVariance< Real >::updateGradient(), ROL::MeanDeviationFromTarget< Real >::updateGradient(), ROL::MeanDeviation< Real >::updateGradient(), ROL::RandVarFunctional< Real >::updateGradient(), ROL::ExpectationQuadError< Real >::updateHessVec(), ROL::ExpectationQuadRegret< Real >::updateHessVec(), ROL::ExpectationQuadRisk< Real >::updateHessVec(), ROL::ExpectationQuadDeviation< Real >::updateHessVec(), ROL::CoherentEntropicRisk< Real >::updateHessVec(), ROL::SmoothedPOE< Real >::updateHessVec(), ROL::EntropicRisk< Real >::updateHessVec(), ROL::PD_MeanSemiDeviationFromTarget< Real >::updateHessVec(), ROL::CVaR< Real >::updateHessVec(), ROL::MeanSemiDeviationFromTarget< Real >::updateHessVec(), ROL::QuantileRadius< Real >::updateHessVec(), ROL::BPOE< Real >::updateHessVec(), ROL::PD_BPOE< Real >::updateHessVec(), ROL::PD_CVaR< Real >::updateHessVec(), ROL::PD_MeanSemiDeviation< Real >::updateHessVec(), ROL::KLDivergence< Real >::updateHessVec(), ROL::PD_HMCR2< Real >::updateHessVec(), ROL::MixedCVaR< Real >::updateHessVec(), ROL::MeanVarianceFromTarget< Real >::updateHessVec(), ROL::MeanSemiDeviation< Real >::updateHessVec(), ROL::HMCR< Real >::updateHessVec(), ROL::FDivergence< Real >::updateHessVec(), ROL::MeanVariance< Real >::updateHessVec(), ROL::MeanDeviation< Real >::updateHessVec(), ROL::MeanDeviationFromTarget< Real >::updateHessVec(), ROL::RandVarFunctional< Real >::updateHessVec(), ROL::CoherentEntropicRisk< Real >::updateValue(), ROL::BPOE< Real >::updateValue(), ROL::SmoothedPOE< Real >::updateValue(), ROL::EntropicRisk< Real >::updateValue(), ROL::ExpectationQuadError< Real >::updateValue(), ROL::ExpectationQuadRisk< Real >::updateValue(), ROL::ExpectationQuadRegret< Real >::updateValue(), ROL::ExpectationQuadDeviation< Real >::updateValue(), ROL::PD_BPOE< Real >::updateValue(), ROL::QuantileRadius< Real >::updateValue(), ROL::PD_MeanSemiDeviation< Real >::updateValue(), ROL::PD_MeanSemiDeviationFromTarget< Real >::updateValue(), ROL::PD_CVaR< Real >::updateValue(), ROL::MeanSemiDeviationFromTarget< Real >::updateValue(), ROL::CVaR< Real >::updateValue(), ROL::KLDivergence< Real >::updateValue(), ROL::PD_HMCR2< Real >::updateValue(), ROL::MixedCVaR< Real >::updateValue(), ROL::MeanSemiDeviation< Real >::updateValue(), ROL::HMCR< Real >::updateValue(), ROL::MeanVarianceFromTarget< Real >::updateValue(), ROL::FDivergence< Real >::updateValue(), ROL::MeanVariance< Real >::updateValue(), ROL::MeanDeviationFromTarget< Real >::updateValue(), ROL::MeanDeviation< Real >::updateValue(), and ROL::RandVarFunctional< Real >::updateValue().


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