13#if !defined(VITA_EVOLUTION_H)
14#define VITA_EVOLUTION_H
23#include "utility/timer.h"
38template<
class T,
template<
class>
class ES>
42 using after_generation_callback_t = std::function<void(
const population<T> &,
47 evolution &after_generation(after_generation_callback_t);
52 bool is_valid()
const;
57 void log_evolution(
unsigned)
const;
58 void print_progress(
unsigned,
unsigned,
bool, timer *)
const;
67 after_generation_callback_t after_generation_callback_;
70#include "kernel/evolution.tcc"
Analyzer takes a statistics snapshot of a population.
Calculates the fitness of an individual.
Progressively evolves a population of programs over a series of generations.
A group of individuals which may interact together (for example by mating) producing offspring.
Aggregates the problem-related data needed by an evolutionary program.
A summary of evolution (results, statistics...).
The main namespace for the project.
value_t run(const T &ind)
A handy short-cut for one-time execution of an individual.