Vowpal Wabbit
Classes | Namespaces | Functions | Variables
explore_internal.h File Reference
#include "hash.h"
#include "explore.h"
#include <cstdint>
#include <stdexcept>
#include <algorithm>
#include <numeric>
#include <cstring>
#include <cmath>

Go to the source code of this file.

Classes

union  exploration::int_float
 

Namespaces

 exploration
 

Functions

float exploration::uniform_random_merand48 (uint64_t initial)
 
template<typename It >
int exploration::generate_epsilon_greedy (float epsilon, uint32_t top_action, It pdf_first, It pdf_last, std::random_access_iterator_tag)
 
template<typename It >
int exploration::generate_epsilon_greedy (float epsilon, uint32_t top_action, It pdf_first, It pdf_last)
 Generates epsilon-greedy style exploration distribution. More...
 
template<typename InputIt , typename OutputIt >
int exploration::generate_softmax (float lambda, InputIt scores_first, InputIt scores_last, std::input_iterator_tag, OutputIt pdf_first, OutputIt pdf_last, std::random_access_iterator_tag)
 
template<typename InputIt , typename OutputIt >
int exploration::generate_softmax (float lambda, InputIt scores_first, InputIt scores_last, OutputIt pdf_first, OutputIt pdf_last)
 Generates softmax style exploration distribution. More...
 
template<typename InputIt , typename OutputIt >
int exploration::generate_bag (InputIt top_actions_first, InputIt top_actions_last, std::input_iterator_tag, OutputIt pdf_first, OutputIt pdf_last, std::random_access_iterator_tag)
 
template<typename InputIt , typename OutputIt >
int exploration::generate_bag (InputIt top_actions_first, InputIt top_actions_last, OutputIt pdf_first, OutputIt pdf_last)
 Generates an exploration distribution according to votes on actions. More...
 
template<typename It >
int exploration::enforce_minimum_probability (float minimum_uniform, bool update_zero_elements, It pdf_first, It pdf_last, std::random_access_iterator_tag)
 
template<typename It >
int exploration::enforce_minimum_probability (float minimum_uniform, bool update_zero_elements, It pdf_first, It pdf_last)
 Updates the pdf to ensure each action is explored with at least minimum_uniform/num_actions. More...
 
template<typename It >
int exploration::sample_after_normalizing (uint64_t seed, It pdf_first, It pdf_last, uint32_t &chosen_index, std::input_iterator_tag)
 
template<typename It >
int exploration::sample_after_normalizing (uint64_t seed, It pdf_first, It pdf_last, uint32_t &chosen_index)
 Sample an index from the provided pdf. If the pdf is not normalized it will be updated in-place. More...
 
template<typename It >
int exploration::sample_after_normalizing (const char *seed, It pdf_first, It pdf_last, uint32_t &chosen_index, std::random_access_iterator_tag pdf_category)
 
template<typename It >
int exploration::sample_after_normalizing (const char *seed, It pdf_first, It pdf_last, uint32_t &chosen_index)
 Sample an index from the provided pdf. If the pdf is not normalized it will be updated in-place. More...
 
template<typename ActionIt >
int exploration::swap_chosen (ActionIt action_first, ActionIt action_last, std::forward_iterator_tag, uint32_t chosen_index)
 
template<typename ActionsIt >
int exploration::swap_chosen (ActionsIt action_first, ActionsIt action_last, uint32_t chosen_index)
 

Variables

const uint64_t exploration::a = 0xeece66d5deece66dULL
 
const uint64_t exploration::c = 2147483647
 
const int exploration::bias = 127 << 23u