Ejemplo n.º 1
0
    virtual void operator()( EOT & x )
    {
        if( x.invalid() ) { return; }

        double sum = 0;
        int sign = 1;
        for( unsigned int i=0, s=x.size(); i<s; ++i ) {
            sum += x[i] * x[i];
            sign *= x[i]<0 ? -1 : 1;
        }

        x.fitness( std::make_pair( sum, sign>0 ? true : false ) );
    }