moocore.

vorob_t#

moocore.vorob_t(points, /, sets, *, ref)[source]#

Compute Vorob’ev threshold and expectation.

See also

For the definition of these concepts, see Vorob’ev Expectation and Deviation.

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.

  • sets (ArrayLike) – 1D vector or list of values that gives the set of each row of points.

  • ref (ArrayLike) – Reference point as a 1D vector. Must be either a single value, which will be used for all coordinates, or the same length as a single point in points.

Returns:

VorobtResult – The return value is a NamedTuple with the following attributes:

thresholdfloat

The threshold is returned as a percentile \(\beta^{*} \in [0,100]\).

avg_hypfloat

The hypervolume of the expectation (average hypervolume).

venp.ndarray

The expectation \(\mathcal{Q}_{\beta^{*}}\) as a 2D array.

See also

vorob_dev

Compute Vorob’ev deviation.

Examples

>>> CPFs = moocore.get_dataset("CPFs.txt.xz")
>>> res = moocore.vorob_t(CPFs[:, :-1], sets=CPFs[:, -1], ref=(2, 200))
>>> res.threshold
44.140625
>>> res.avg_hyp
8943.333191728081
>>> res.ve.shape
(213, 2)