private double er ( Front front , Front referenceFront ) throws JMetalException { int numberOfObjectives = referenceFront . getPointDimensions ( ) ; double sum = 0 ; for ( int i = 0 ; i < front . getNumberOfPoints ( ) ; i ++ ) { Point currentPoint = front . getPoint ( i ) ; boolean thePointIsInTheParetoFront = false ; for ( int j = 0 ; j < referenceFront . getNumberOfPoints ( ) ; j ++ ) { Point currentParetoFrontPoint = referenceFront . getPoint ( j ) ; boolean found = true ; for ( int k = 0 ; k < numberOfObjectives ; k ++ ) { if ( currentPoint . getValue ( k ) != currentParetoFrontPoint . getValue ( k ) ) { found = false ; break ; } } if ( found ) { thePointIsInTheParetoFront = true ; break ; } } if ( ! thePointIsInTheParetoFront ) { sum ++ ; } } return sum / front . getNumberOfPoints ( ) ; }
Returns the value of the error ratio indicator .