pareto_frontier
- negmas.preferences.pareto_frontier(ufuns: Sequence[BaseUtilityFunction], outcomes: Sequence[Outcome] | None = None, issues: Sequence[Issue] | None = None, n_discretization: int | None = None, max_cardinality: int | float = inf, sort_by_welfare=True, eps: float = 1e-12) tuple[tuple[tuple[float, ...], ...], tuple[int, ...]][source]
Finds all pareto-optimal outcomes in the list.
- Parameters:
ufuns – The utility functions
outcomes – the outcomes to be checked. If None then all possible outcomes from the issues will be checked
issues – The set of issues (only used when outcomes is None)
n_discretization – The number of items to discretize each real-dimension into
sort_by_welfare – If True, the results are sorted descendingly by total welfare
rational_only – If true, only rational outcomes can be members of the Pareto frontier.
eps – resolution
- Returns:
Two lists of the same length. First list gives the utilities at Pareto frontier points and second list gives their indices