30 vector<size_t> all_idx(
pop.size());
31 std::iota(all_idx.begin(), all_idx.end(), 0);
59 int P =
pop.individuals.size()/2;
60 vector<size_t> selected(P);
61 #pragma omp parallel for
62 for (
unsigned i = P;
i <
pop.individuals.size(); ++
i)
69 while (!found && j < P)
71 if (
pop.individuals.at(j).id == pid)
80 float probability = exp ( (parent.
fitness - offspring.
fitness)/this->t );
83 if (
r() < probability)
data holding X, y, and Z data
individual programs in the population
float fitness
aggregate fitness score
vector< int > parent_id
ids of parents
holds the hyperparameters for Feat.
int current_gen
holds current generation
Defines a population of programs and functions for constructing them.
float t
annealing temperature
float t0
initial temperature
vector< size_t > select(Population &pop, const Parameters ¶ms, const Data &d)
vector< size_t > survive(Population &pop, const Parameters ¶ms, const Data &d)