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 asF; an objective at or below it contributes no hypervolume. Defaults to the origin.
Returns:
Tuple (hypervolume, sparsity).