moocore.

igd#

moocore.igd(points, /, ref, *, maximise=False)[source]#

Inverted Generational Distance (IGD).

See also

For examples, see igd_plus(). For details of the calculation, see Inverted Generational Distance (IGD and IGD+) and Averaged Hausdorff Distance.

Parameters:
  • points (ArrayLike) – Array of numerical values, where each row gives the coordinates of a point in objective space. If the array is created by the read_datasets() function, remove the last column.

  • ref (ArrayLike) – Reference set as a matrix of numerical values. Must have the same number of columns as points.

  • maximise (bool | Sequence[bool], default: False) – Whether the objectives must be maximised instead of minimised. Either a single boolean value that applies to all objectives or a list of boolean values, with one value per objective. Also accepts a 1D numpy array with value 0/1 for each objective.

Returns:

float – A single numerical value.