6#include <boost/math/distributions/gamma.hpp>
13#ifndef LINEAR_THOMPSON_H
14#define LINEAR_THOMPSON_H
28 T
choose(
const VectorXf& context);
29 void update(T arm,
float reward, VectorXf& context);
BanditOperator(vector< T > arms)
Constructs a BanditOperator object with a vector of arms.
void update(T arm, float reward, VectorXf &context)
Updates the reward for a specific arm.
LinearThompsonSamplingBandit(vector< T > arms)
~LinearThompsonSamplingBandit()
vector< MatrixXf > B_inv_sqrt
std::map< int, T > arm_index_to_key
std::map< T, float > sample_probs(bool update)
Samples the probabilities of the arms.
T choose(const VectorXf &context)
Chooses an arm based on the given tree and fitness. Should call sample_probs internally.
< nsga2 selection operator for getting the front