jeco.kernel.qualityIndicators
Class UnaryHyperVolume

java.lang.Object
  extended by jeco.kernel.qualityIndicators.UnaryHyperVolume

public class UnaryHyperVolume
extends java.lang.Object

This class implements the unary hypervolume indicator as proposed in Zitzler, E., and Thiele, L. (1998): Multiobjective Optimization Using Evolutionary Algorithms - A Comparative Case Study. Parallel Problem Solving from Nature (PPSN-V), 292-301. A more detailed discussion can be found in Zitzler, E., Thiele, L., Laumanns, M., Fonseca, C., and Grunert da Fonseca, V (2003): Performance Assessment of Multiobjective Optimizers: An Analysis and Review. IEEE Transactions on Evolutionary Computation, 7(2), 117-132. IMPORTANT: A lower indicator value corresponds to a better approximation set.

Author:
José L. Risco-Martín

Field Summary
protected  int dim
          Number of objectives
protected  double[] nadir
          Reference points
 
Constructor Summary
UnaryHyperVolume(java.util.ArrayList<java.lang.String> pathsToDataFiles)
           
UnaryHyperVolume(java.util.ArrayList<java.lang.String> pathsToDataFiles, java.lang.String pathToReferenceFront)
           
 
Method Summary
 java.util.ArrayList<java.util.ArrayList<java.lang.Double>> calculateHyperVolumes()
           
static void main(java.lang.String[] args)
           
 void normalize()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

dim

protected int dim
Number of objectives


nadir

protected double[] nadir
Reference points

Constructor Detail

UnaryHyperVolume

public UnaryHyperVolume(java.util.ArrayList<java.lang.String> pathsToDataFiles)
                 throws java.lang.Exception
Throws:
java.lang.Exception

UnaryHyperVolume

public UnaryHyperVolume(java.util.ArrayList<java.lang.String> pathsToDataFiles,
                        java.lang.String pathToReferenceFront)
                 throws java.lang.Exception
Throws:
java.lang.Exception
Method Detail

normalize

public void normalize()

calculateHyperVolumes

public java.util.ArrayList<java.util.ArrayList<java.lang.Double>> calculateHyperVolumes()
                                                                                 throws java.lang.Exception
Throws:
java.lang.Exception

main

public static void main(java.lang.String[] args)