hops
Public Types | Public Member Functions | List of all members
hops::AdaptiveMetropolisProposal< MatrixType, VectorType > Class Template Reference

#include <AdaptiveMetropolisProposal.hpp>

Collaboration diagram for hops::AdaptiveMetropolisProposal< MatrixType, VectorType >:
Collaboration graph

Public Types

using StateType = VectorType
 

Public Member Functions

 AdaptiveMetropolisProposal (MatrixType A, VectorType b, StateType currentState, typename MatrixType::Scalar stepSize=1, typename MatrixType::Scalar eps=1.e-3, unsigned long warmUp=100)
 Constructs the Adaptive Metropolis m_proposal mechanism (Haario et al. 2001) on polytope defined as Ax<b. More...
 
void propose (RandomNumberGenerator &randomNumberGenerator)
 
void acceptProposal ()
 
StateType getState () const
 
StateType getProposal () const
 
void setState (StateType newState)
 
void setStepSize (typename MatrixType::Scalar stepSize)
 
MatrixType::Scalar getStepSize () const
 
MatrixType::Scalar computeLogAcceptanceProbability ()
 
std::string getName ()
 

Member Typedef Documentation

◆ StateType

template<typename MatrixType , typename VectorType >
using hops::AdaptiveMetropolisProposal< MatrixType, VectorType >::StateType = VectorType

Constructor & Destructor Documentation

◆ AdaptiveMetropolisProposal()

template<typename MatrixType , typename VectorType >
hops::AdaptiveMetropolisProposal< MatrixType, VectorType >::AdaptiveMetropolisProposal ( MatrixType  A,
VectorType  b,
StateType  currentState,
typename MatrixType::Scalar  stepSize = 1,
typename MatrixType::Scalar  eps = 1.e-3,
unsigned long  warmUp = 100 
)

Constructs the Adaptive Metropolis m_proposal mechanism (Haario et al. 2001) on polytope defined as Ax<b.

Parameters
A
b
currentState
stepSizeThe stepsize by which the trained Gaussian m_proposal distribution is scaled.
epsScaling factor of the maximum volume ellipsoid, which is added to the covariance to preserve (numerical) irreducibility.
warmUpNumber of warm up samples during which the maximum volume ellipsoid is used as covariance of the m_proposal distribution. After the warm up, the adaptive covariance is used.

Member Function Documentation

◆ acceptProposal()

template<typename MatrixType , typename VectorType >
void hops::AdaptiveMetropolisProposal< MatrixType, VectorType >::acceptProposal

◆ computeLogAcceptanceProbability()

template<typename MatrixType , typename VectorType >
MatrixType::Scalar hops::AdaptiveMetropolisProposal< MatrixType, VectorType >::computeLogAcceptanceProbability

◆ getName()

template<typename MatrixType , typename VectorType >
std::string hops::AdaptiveMetropolisProposal< MatrixType, VectorType >::getName

◆ getProposal()

template<typename MatrixType , typename VectorType >
AdaptiveMetropolisProposal< MatrixType, VectorType >::StateType hops::AdaptiveMetropolisProposal< MatrixType, VectorType >::getProposal

◆ getState()

template<typename MatrixType , typename VectorType >
AdaptiveMetropolisProposal< MatrixType, VectorType >::StateType hops::AdaptiveMetropolisProposal< MatrixType, VectorType >::getState

◆ getStepSize()

template<typename MatrixType , typename VectorType >
MatrixType::Scalar hops::AdaptiveMetropolisProposal< MatrixType, VectorType >::getStepSize

◆ propose()

template<typename MatrixType , typename VectorType >
void hops::AdaptiveMetropolisProposal< MatrixType, VectorType >::propose ( RandomNumberGenerator randomNumberGenerator)

◆ setState()

template<typename MatrixType , typename VectorType >
void hops::AdaptiveMetropolisProposal< MatrixType, VectorType >::setState ( StateType  newState)

◆ setStepSize()

template<typename MatrixType , typename VectorType >
void hops::AdaptiveMetropolisProposal< MatrixType, VectorType >::setStepSize ( typename MatrixType::Scalar  stepSize)

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