EStrategy
- class negmas.elicitation.EStrategy(strategy: str, resolution=0.0001, stop_at_cost: bool = True)[source]
Bases:
objectA proxy for a user that have some true utilities which can be elicited.
- Parameters:
strategy – a string specifying the elicitation strategy or a callable.
Remarks:
Supported string elicitation_strategies can be found using the
supported_strategiesclass methodIf a callable is passed then it must receive four
floatnumbers indicating the lower and upper boundaries of the current Negotiator distribution, the true Negotiator and a threshold (resolution). It must return a new lower and upper values. To stop eliciting and return an exact number, the callable should set lower to the same value as upper
Methods Summary
apply(user, outcome)Do the elicitation and incur the cost.
next_query(outcome)on_enter(nmi[, preferences])until(outcome, user, dist)utility_estimate(outcome)Gets a probability distribution of the Negotiator for this outcome without elicitation.
Methods Documentation
- apply(user: User, outcome: Outcome) tuple[Value | None, QResponse | None][source]
Do the elicitation and incur the cost.
Remarks:
This function returns a uniform distribution whenever it returns a distribution
Can return
Nonewhich indicates that elicitation failedIf it could find an exact value, it will return a
floatnot aDistribution
- on_enter(nmi: NegotiatorMechanismInterface, preferences: IPUtilityFunction = None) None[source]