fix examples using binary_value

This commit is contained in:
gustavo 2000-07-18 11:30:39 +00:00
commit 01e44cf828
7 changed files with 143 additions and 129 deletions

View file

@ -1,18 +1,27 @@
#include <eo>
//-----------------------------------------------------------------------------
typedef eoBin<float> Chrom;
/** Just a simple function that takes binary value of a chromosome and sets
the fitnes.
@param _chrom A binary chromosome
*/
float binary_value(const Chrom& _chrom)
{
float sum = 0;
for (unsigned i = 0; i < _chrom.size(); i++)
if (_chrom[i])
#include <eo>
//-----------------------------------------------------------------------------
typedef eoBin<float> Chrom;
/** Just a simple function that takes binary value of a chromosome and sets
the fitnes.
@param _chrom A binary chromosome
*/
float binary_value(const Chrom& _chrom)
{
float sum = 0;
for (unsigned i = 0; i < _chrom.size(); i++)
if (_chrom[i])
sum += pow(2, _chrom.size() - i - 1);
return sum;
}
}
struct BinaryValue
{
template <class Chrom> void operator()(Chrom& _chrom)
{
_chrom.fitness(binary_value(_chrom));
}
};