ROL
ROL::BPOE< Real > Class Template Reference

Provides the implementation of the buffered probability of exceedance. More...

#include <ROL_BPOE.hpp>

Inheritance diagram for ROL::BPOE< Real >:

Public Member Functions

 BPOE (const Real threshold, const Real order=1)
 BPOE (ROL::ParameterList &parlist)
void initialize (const Vector< Real > &x)
void updateValue (Objective< Real > &obj, const Vector< Real > &x, const std::vector< Real > &xstat, Real &tol)
Real getValue (const Vector< Real > &x, const std::vector< Real > &xstat, SampleGenerator< Real > &sampler)
void updateGradient (Objective< Real > &obj, const Vector< Real > &x, const std::vector< Real > &xstat, Real &tol)
void getGradient (Vector< Real > &g, std::vector< Real > &gstat, const Vector< Real > &x, const std::vector< Real > &xstat, SampleGenerator< Real > &sampler)
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)
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)

Private Attributes

Real threshold_
Real order_
std::vector< Real > hvec_
ROL::Ptr< Vector< Real > > dualVec1_
ROL::Ptr< Vector< Real > > dualVec2_
bool firstResetBPOE_

Detailed Description

template<class Real>
class ROL::BPOE< Real >

Provides the implementation of the buffered probability of exceedance.

Let \((\Omega,\mathcal{F},\mathbb{P})\) be a complete 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.

ROL's BPOE class inherits from ROL::RandVarFunctional which is written in a way to exploit parallel sampling.

Definition at line 32 of file ROL_BPOE.hpp.

Constructor & Destructor Documentation

◆ BPOE() [1/2]

template<class Real>
ROL::BPOE< Real >::BPOE ( const Real threshold,
const Real order = 1 )
inline

Definition at line 57 of file ROL_BPOE.hpp.

References firstResetBPOE_, hvec_, order_, and threshold_.

◆ BPOE() [2/2]

template<class Real>
ROL::BPOE< Real >::BPOE ( ROL::ParameterList & parlist)
inline

Definition at line 62 of file ROL_BPOE.hpp.

References firstResetBPOE_, hvec_, order_, and threshold_.

Member Function Documentation

◆ initialize()

template<class Real>
void ROL::BPOE< Real >::initialize ( const Vector< Real > & x)
inline

◆ updateValue()

template<class Real>
void ROL::BPOE< Real >::updateValue ( Objective< Real > & obj,
const Vector< Real > & x,
const std::vector< Real > & xstat,
Real & tol )
inline

Definition at line 81 of file ROL_BPOE.hpp.

References order_, threshold_, and zero.

◆ getValue()

template<class Real>
Real ROL::BPOE< Real >::getValue ( const Vector< Real > & x,
const std::vector< Real > & xstat,
SampleGenerator< Real > & sampler )
inline

Definition at line 93 of file ROL_BPOE.hpp.

References order_, and ROL::SampleGenerator< Real >::sumAll().

◆ updateGradient()

template<class Real>
void ROL::BPOE< Real >::updateGradient ( Objective< Real > & obj,
const Vector< Real > & x,
const std::vector< Real > & xstat,
Real & tol )
inline

Definition at line 102 of file ROL_BPOE.hpp.

References order_, threshold_, and zero.

◆ getGradient()

template<class Real>
void ROL::BPOE< Real >::getGradient ( Vector< Real > & g,
std::vector< Real > & gstat,
const Vector< Real > & x,
const std::vector< Real > & xstat,
SampleGenerator< Real > & sampler )
inline

◆ updateHessVec()

template<class Real>
void ROL::BPOE< 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 )
inline

Definition at line 140 of file ROL_BPOE.hpp.

References dualVec1_, dualVec2_, hvec_, order_, threshold_, and zero.

◆ getHessVec()

template<class Real>
void ROL::BPOE< 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 )
inline

Member Data Documentation

◆ threshold_

template<class Real>
Real ROL::BPOE< Real >::threshold_
private

Definition at line 34 of file ROL_BPOE.hpp.

Referenced by BPOE(), BPOE(), updateGradient(), updateHessVec(), and updateValue().

◆ order_

template<class Real>
Real ROL::BPOE< Real >::order_
private

◆ hvec_

template<class Real>
std::vector<Real> ROL::BPOE< Real >::hvec_
private

Definition at line 37 of file ROL_BPOE.hpp.

Referenced by BPOE(), BPOE(), getHessVec(), initialize(), and updateHessVec().

◆ dualVec1_

template<class Real>
ROL::Ptr<Vector<Real> > ROL::BPOE< Real >::dualVec1_
private

Definition at line 38 of file ROL_BPOE.hpp.

Referenced by getHessVec(), initialize(), and updateHessVec().

◆ dualVec2_

template<class Real>
ROL::Ptr<Vector<Real> > ROL::BPOE< Real >::dualVec2_
private

Definition at line 38 of file ROL_BPOE.hpp.

Referenced by getHessVec(), initialize(), and updateHessVec().

◆ firstResetBPOE_

template<class Real>
bool ROL::BPOE< Real >::firstResetBPOE_
private

Definition at line 40 of file ROL_BPOE.hpp.

Referenced by BPOE(), BPOE(), and initialize().


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