UncertainOpponentModel

class negmas.modeling.acceptance.UncertainOpponentModel(outcomes: Collection[Union[negmas.outcomes.OutcomeType, Tuple[Union[int, float, str, list]], Dict[Union[int, str], Union[int, float, str, list]]]], opponents: Union[SAONegotiator, Collection[SAONegotiator]], uncertainty: float = 0.5, adaptive: bool = False, rejection_discount: float = 0.95, rejection_delta: float = 0.0, constant_base=True, accesses_real_acceptance=False)[source]

Bases: negmas.modeling.acceptance.AggregatingDiscreteAcceptanceModel

A model for which the uncertainty about the acceptance probability of different negotiators is controllable.

This is not a realistic model but it can be used to experiment with effects of this uncertainty on different negotiation related algorithms (e.g. elicitation algorithms)

Parameters
  • outcomes – The list of possible outcomes

  • uncertainty (float) – The uncertainty level. Zero means no uncertainty and 1.0 means maximum uncertainty

  • adaptive (bool) – If true then the random part will learn from experience with the opponents otherwise it will not.

  • rejection_discount – Only effective if adaptive is True. See AdaptiveDiscreteAcceptanceModel

  • rejection_delta – Only effective if adaptive is True. See AdaptiveDiscreteAcceptanceModel