29 #include "criteria/criteria_mi.hpp" 43 template <
typename CriteriaType> Criteria * create_func()
45 return new CriteriaType();
49 CriteriaFactory::CriteriaFactory()
51 registry[
"cMI"] = & create_func<MutualInformation>;
52 registry[
"cEI"] = & create_func<ExpectedImprovement>;
53 registry[
"cBEI"] = & create_func<BiasedExpectedImprovement>;
54 registry[
"cEIa"] = & create_func<AnnealedExpectedImprovement>;
55 registry[
"cLCB"] = & create_func<LowerConfidenceBound>;
56 registry[
"cLCBa"] = & create_func<AnnealedLowerConfindenceBound>;
57 registry[
"cPOI"] = & create_func<ProbabilityOfImprovement>;
58 registry[
"cAopt"] = & create_func<GreedyAOptimality>;
59 registry[
"cExpReturn"] = & create_func<ExpectedReturn>;
60 registry[
"cOptimisticSampling"] = & create_func<OptimisticSampling>;
61 registry[
"cThompsonSampling"] = & create_func<ThompsonSampling>;
62 registry[
"cDistance"] = & create_func<InputDistance>;
64 registry[
"cSum"] = & create_func<SumCriteria>;
65 registry[
"cProd"] = & create_func<ProdCriteria>;
66 registry[
"cHedge"] = & create_func<GP_Hedge>;
67 registry[
"cHedgeRandom"] = & create_func<GP_Hedge_Random>;
86 std::vector<std::string> osc;
89 std::map<std::string,CriteriaFactory::create_func_definition>::iterator it = registry.find(os);
90 if (it == registry.end())
92 throw std::invalid_argument(
"Parsing error: Criteria not found: " + os);
102 for(
size_t i = 0; i < osc.size(); ++i)
104 cFunc->pushCriteria(
create(osc[i],proc));
Sum of multiple criteria.
Thompson and optimistic sampling criteria.
Criterion based on the expected value of the function.
Portfolio selection of criteria based on Hedge algorithm.
Namespace of the library interface.
Product of multiple criteria.
Abstract class to implement Bayesian regressors.
Probability of improvement.
Criteria * create(std::string name, NonParametricProcess *proc)
Factory model for criterion functions This function is based on the libgp library by Manuel Blum http...
Lower confidence bound based criteria.
Functions to parse strings.
Expected improvement based criteria.
Abstract interface for criteria functors.
Abstract and factory modules for criteria.
void parseExpresion(std::string input, std::string &parent, std::string &child1, std::string &child2)
Parse expresions of the form Parent(Child1, Child2).
A-optimality (uncertainty) based criteria.
Cost for selecting distant points.
Abstract module for combined criteria.