13#if !defined(VITA_TEAM_H)
57 explicit team(
unsigned);
59 explicit team(std::vector<T>);
62 unsigned mutation(
double,
const problem &);
64 const T &operator[](
unsigned)
const;
67 unsigned individuals()
const;
68 unsigned active_symbols()
const;
75 bool is_valid()
const;
78 using members_t = std::vector<T>;
79 using const_iterator =
typename members_t::const_iterator;
80 using value_type =
typename members_t::value_type;
81 const_iterator begin()
const;
82 const_iterator end()
const;
86 bool save(std::ostream &)
const;
95 members_t individuals_;
103template<
class T>
bool operator==(
const team<T> &,
const team<T> &);
104template<
class T>
bool operator!=(
const team<T> &,
const team<T> &);
105template<
class T>
unsigned distance(
const team<T> &,
const team<T> &);
112template<
class T>
struct is_team : std::false_type
113{
enum {value =
false}; };
115{
enum {value =
true}; };
118{
enum {value =
true}; };
120{
enum {value =
false}; };
122#include "kernel/gp/team.tcc"
MurmurHash3 (https://github.com/aappleby/smhasher) by Austin Appleby.
Aggregates the problem-related data needed by an evolutionary program.
A container for the symbols used by the GP engine.
A collection of cooperating individuals used as a member of vita::population.
The main namespace for the project.
std::ostream & operator<<(std::ostream &o, hash_t h)
Mainly useful for debugging / testing.
A 128bit unsigned integer used as individual's signature / hash table look-up key.