|
AIToolbox
A library that offers tools for AI problem solving.
|
Classes | |
| class | EpsilonPolicy |
| class | Experience |
| This class computes averages and counts for a multi-agent cooperative Bandit problem. More... | |
| class | FlattenedModel |
| This class flattens a factored bandit model. More... | |
| class | LLRPolicy |
| This class represents the Learning with Linear Rewards algorithm. More... | |
| class | LocalSearch |
| This class approximately finds the best joint action using Local Search. More... | |
| struct | MakeGraph |
| This class is the public interface for initializing the graph in generic code that uses the maximizers. More... | |
| struct | MakeGraph< MaxPlus > |
| struct | MakeGraph< ReusingIterativeLocalSearch > |
| struct | MakeGraphImpl |
| This class clumps all implementations that create graphs for data for certain Maximizers. More... | |
| struct | MakeGraphImpl< LocalSearch, Iterable > |
| struct | MakeGraphImpl< LocalSearch, QFunction > |
| struct | MakeGraphImpl< VariableElimination, Data > |
| class | MAUCEPolicy |
| This class represents the Multi-Agent Upper Confidence Exploration algorithm. More... | |
| class | MaxPlus |
| This class represents the Max-Plus optimization algorithm for loopy FactorGraphs. More... | |
| class | MiningBandit |
| This class represents the mining bandit problem. More... | |
| class | Model |
| This class represents a factored multi-armed bandit. More... | |
| struct | MOQFunctionRule |
| This struct represents a single action/values pair. More... | |
| class | MultiObjectiveVariableElimination |
| This class represents the Multi Objective Variable Elimination process. More... | |
| class | PolicyInterface |
| Simple typedef for most of a normal Bandit's policy needs. More... | |
| struct | QFunctionRule |
| This struct represents a single action/value pair. More... | |
| class | QGreedyPolicy |
| This class implements a greedy policy through a QFunction. More... | |
| class | RandomPolicy |
| This class represents a random policy. More... | |
| class | ReusingIterativeLocalSearch |
| This class approximately finds the best joint action with Reusing Iterative Local Search. More... | |
| class | SingleActionPolicy |
| This class represents a policy always picking the same action. More... | |
| class | ThompsonSamplingPolicy |
| This class implements a Thompson sampling policy. More... | |
| class | UCVE |
| This class represents the UCVE process. More... | |
| struct | UpdateGraph |
| This class is the public interface for updating the input graph with the input data in generic code that uses the maximizers. More... | |
| struct | UpdateGraph< MaxPlus > |
| struct | UpdateGraph< ReusingIterativeLocalSearch > |
| struct | UpdateGraphImpl |
| This class clumps all implementations that update graphs with data for certain Maximizers. More... | |
| struct | UpdateGraphImpl< LocalSearch, Iterable > |
| struct | UpdateGraphImpl< LocalSearch, QFunction > |
| struct | UpdateGraphImpl< VariableElimination, Iterable > |
| struct | UpdateGraphImpl< VariableElimination, QFunction > |
| class | VariableElimination |
| This class represents the Variable Elimination algorithm. More... | |
Typedefs | |
| using | QFunction = FactoredVector |
| This represents a factored QFunction. More... | |
Functions | |
| std::tuple< Action, std::vector< unsigned >, std::vector< double > > | makeMiningParameters (unsigned seed) |
| This function generates the parameters for a random MiningBandit. More... | |
Variables | |
| template<typename QR > | |
| concept | IsQFunctionRule |
| This concept models the interface for a QFunctionRule. More... | |
| template<typename T > | |
| concept | QFRuleRange = std::ranges::range<T> && IsQFunctionRule<std::ranges::range_value_t<T>> |
| This concept represents a range of QFunctionRules. More... | |
| using AIToolbox::Factored::Bandit::QFunction = typedef FactoredVector |
This represents a factored QFunction.
| std::tuple<Action, std::vector<unsigned>, std::vector<double> > AIToolbox::Factored::Bandit::makeMiningParameters | ( | unsigned | seed | ) |
This function generates the parameters for a random MiningBandit.
The parameters are uniformly sampled from the following ranges:
We return a tuple containing the parameters for a MiningBandit. In particular:
| seed | A random seed for a random generator to sample the parameters. |
| concept AIToolbox::Factored::Bandit::IsQFunctionRule |
This concept models the interface for a QFunctionRule.
This is needed so we can consider MDP QFunctionRules as Bandit QFunctionRules, without having to use inheritance to connect them.
| concept AIToolbox::Factored::Bandit::QFRuleRange = std::ranges::range<T> && IsQFunctionRule<std::ranges::range_value_t<T>> |
This concept represents a range of QFunctionRules.