32#include "Parameters.hpp"
34#include <boost/random/mersenne_twister.hpp>
35#include <boost/random/discrete_distribution.hpp>
61 vector<double> p_values;
64 double one_minus_gamma;
79 inline size_t get_choice()
const {
97 friend ostream& operator<<(ostream&,
const EXP3&);
Implementation of the EXP3 algorithm for multiarmed bandits.
size_t choice
Store the last choice made.
bool choose_next
Belt-and braces: warn if choose/reward happens in the wrong order.
void set_gamma(double)
Reset gamma and associated members to something different.
void reward(double)
Provide reward for the most recent choice.
size_t choose()
Choose using the current state.
static boost::random::mt19937 random_generator
Random source.