EStrategy
- class negmas.elicitation.EStrategy(strategy, resolution=0.0001, stop_at_cost=True)[source]
Bases:
object
A proxy for a user that have some true utilities which can be elicited.
- Parameters:
strategy (
str
) – a string specifying the elicitation strategy or a callable.
Remarks:
Supported string elicitation_strategies can be found using the supported_strategies class method
If a callable is passed then it must receive four float numbers 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)- rtype:
Query | None
on_enter
(nmi[, preferences])- rtype:
until
(outcome, user, dist)- rtype:
Value
utility_estimate
(outcome)Gets a probability distribution of the Negotiator for this outcome without elicitation.
Methods Documentation
- apply(user, outcome)[source]
Do the elicitation and incur the cost.
Remarks: :rtype: tuple[Value | None, QResponse | None]
This function returns a uniform distribution whenever it returns a distribution
Can return None which indicates that elicitation failed
If it could find an exact value, it will return a float not a Distribution