module moplayground.utils.pareto


function project_to_simplex

project_to_simplex(v)

Euclidean projection of v onto the probability simplex.


function closest_points

closest_points(points, targets)

Index into points of the nearest (Euclidean) neighbor of each target.

Args:

  • points: (n_points, dim) array searched over.
  • targets: (dim,) or (n_targets, dim) query point(s).

Returns: (n_targets,) integer indices into points.


function corner_tradeoffs

corner_tradeoffs(tradeoffs)

Indices of the tradeoffs nearest each one-hot corner of the simplex.


function get_nondominated

get_nondominated(F, epsilon=None)

function hypervolume_from_nondominated

hypervolume_from_nondominated(F_min, ref_point=None)

Compute the hypervolume of a non-dominated front in minimization space.

Args:

  • F_min: (n_points, n_objectives) array of points in minimization space (i.e. negated objective values).
  • ref_point: (n_objectives,) upper bound in that same minimization space; a point not strictly below it on every axis contributes nothing. Defaults to the origin.

Returns: Hypervolume as a float, computed by pymoo.indicators.hv.HV.


function sparsity_from_normalized_nondominated

sparsity_from_normalized_nondominated(F_min_norm)

function get_pareto_statistics

get_pareto_statistics(F, ref_point=None)

Compute hypervolume and sparsity for a set of objective vectors.

Args:

  • F: (n_points, n_objectives) array of objective vectors (higher is better).
  • ref_point: (n_objectives,) reference in the same maximization space as F; an objective at or below it contributes no hypervolume. Defaults to the origin.

Returns: Tuple (hypervolume, sparsity).


This site uses Just the Docs, a documentation theme for Jekyll.