1 #ifndef IMPORTANCESAMPLING_H_
2 #define IMPORTANCESAMPLING_H_
4 #include <boost/property_tree/ptree.hpp>
12 namespace SamplingAlgorithms {
30 ImportanceSampling(std::shared_ptr<muq::Modeling::Distribution>
const&
target, boost::property_tree::ptree
const& pt);
37 ImportanceSampling(std::shared_ptr<muq::Modeling::ModPiece>
const&
target, std::shared_ptr<muq::Modeling::Distribution>
const&
bias, boost::property_tree::ptree
const& pt);
58 virtual std::shared_ptr<SampleCollection>
RunImpl(std::vector<Eigen::VectorXd>
const& x0)
override;
64 std::shared_ptr<muq::Modeling::ModPiece>
target;
67 std::shared_ptr<muq::Modeling::Distribution>
bias;
70 const std::vector<Eigen::VectorXd>
hyperparameters = std::vector<Eigen::VectorXd>();
Defines an imporance sampline sampler.
const unsigned int numSamps
The number of samples.
std::shared_ptr< muq::Modeling::Distribution > bias
The biasing distribution.
ImportanceSampling(std::shared_ptr< muq::Modeling::ModPiece > const &target, std::shared_ptr< muq::Modeling::Distribution > const &bias, boost::property_tree::ptree const &pt)
ImportanceSampling(std::shared_ptr< muq::Modeling::Distribution > const &target, boost::property_tree::ptree const &pt)
virtual std::shared_ptr< SampleCollection > RunImpl(std::vector< Eigen::VectorXd > const &x0) override
virtual ~ImportanceSampling()=default
ImportanceSampling(std::shared_ptr< muq::Modeling::ModPiece > const &target, std::shared_ptr< muq::Modeling::Distribution > const &bias, std::vector< Eigen::VectorXd > hyperparameters, boost::property_tree::ptree const &pt)
const std::vector< Eigen::VectorXd > hyperparameters
Hyperparameters for the biasing distribution.
ImportanceSampling(std::shared_ptr< muq::Modeling::Distribution > const &target, std::vector< Eigen::VectorXd > hyperparameters, boost::property_tree::ptree const &pt)
std::shared_ptr< muq::Modeling::ModPiece > target