nash_points
- negmas.preferences.nash_points(ufuns: Sequence[UtilityFunction] | None, frontier: Sequence[tuple[float, ...]], ranges: Sequence[tuple[float, ...]] | None = None, outcome_space: OutcomeSpace | None = None, issues: Sequence[Issue] | None = None, outcomes: Sequence[Outcome] | None = None, eps=1e-12) tuple[tuple[tuple[float, ...], int], ...][source]
Calculates all the Nash Bargaining Solutions on the Pareto frontier of a negotiation.
- Parameters:
ufuns – A list of ufuns to use. If not given, the reserved value is assumed to be zero for all ufuns
frontier – a list of tuples each giving the utility values at some outcome on the frontier (usually found by
pareto_frontier) to search withinranges – The ranges of the utility functions involved.
outcome_space – The outcome-space to consider
issues – The issues on which the ufun is defined (outcomes may be passed instead)
outcomes – The outcomes on which the ufun is defined (outcomes may be passed instead)
- Returns:
A tuple of utility values at the Nash point
The index of the given frontier corresponding to the Nash point
- Return type:
A list of tuples (empty if cannot be calculated) each consists of
Remarks:
The function searches within the given frontier only.