22#ifndef __SAMPLE_INDIVIDUAL_H__
23#define __SAMPLE_INDIVIDUAL_H__
51 genes.resize(names.size(), 0.0);
56 os << std::setprecision(std::numeric_limits<double>::max_digits10);
57 os <<
id <<
' ' <<
genes.size();
58 for (
double g :
genes) os <<
' ' << g;
66 std::size_t ngenes = 0, nobjs = 0;
69 for (
double& g :
genes) is >> g;
87 "Variable '" +
name +
"' not contained.");
89 return std::distance(std::begin(
names_m), res);
96 void print(std::ostream& out)
const {
97 out << std::setw(8) <<
id << std::endl;
98 for (
unsigned int i = 0; i <
genes.size(); ++ i) {
std::ostream & operator<<(std::ostream &out, const SampleIndividual &ind)
std::vector< std::string > names_t
gene names
genes_t genes
genes of an individual
names_t names_m
gene names
void readState(std::istream &is)
read this individual's state from a stream, replaces boost::serialization
std::string getName(std::size_t i)
std::vector< double > objectives_t
objectives array
SampleIndividual(names_t names)
int getIndex(std::string name)
void writeState(std::ostream &os) const
write this individual's state to a stream, replaces boost::serialization
std::vector< double > genes_t
representation of genes
objectives_t objectives
values of objectives of an individual
void print(std::ostream &out) const
The base class for all OPAL exceptions.