Merge branch 'fix/HVrange'

This commit is contained in:
Johann Dreo 2013-06-07 12:53:53 +02:00
commit 5af8359546
2 changed files with 17 additions and 3 deletions

View file

@ -234,7 +234,7 @@ public :
assert( repRange >= 0 );
#ifndef NDEBUG
if( repRange == 0 ) {
eo::log << eo::warnings << "Null range in eoRealBounds (min=" << _min << ", max=" << _max << ")" << std::endl;
eo::log << eo::warnings << "Warning: null range in eoRealBounds (min=" << _min << ", max=" << _max << ")" << std::endl;
}
#endif
}

View file

@ -163,12 +163,26 @@ class moeoHyperVolumeDifferenceMetric : public moeoVectorVsVectorBinaryMetric <
min = std::min(min, _set2[j][i]);
max = std::max(max, _set2[j][i]);
}
bounds[i] = eoRealInterval(min, max);
if( min == max ) {
bounds[i] = eoRealInterval(min-tiny(), max+tiny());
} else {
bounds[i] = eoRealInterval(min, max);
}
}
}
}
private:
protected:
/**
* Returns a very small value that can be used to avoid extreme cases (where the min bound == the max bound)
*/
static double tiny()
{
return 1e-6;
}
private:
/*boolean indicates if data must be normalized or not*/
bool normalize;