VOINoUncertaintyElicitor

class negmas.elicitation.VOINoUncertaintyElicitor(strategy: negmas.elicitation.EStrategy, user: User, *, dynamic_query_set=False, queries=None, adaptive_answer_probabilities=True, each_outcome_once=False, update_related_queries=True, **kwargs)[source]

Bases: negmas.elicitation.BaseVOIElicitor

A dummy VOI Elicitation Agent. It simply assumes no uncertainty in own utility function

Methods Summary

add_query(qeeu)

Adds a query to the heap of queries

eeu(policy, eup)

Expected Expected Negotiator for following the policy

elicit_single(state)

Called to conduct a single eliciataion act.

init_optimal_policy()

Gets the optimal policy given Negotiator utility_priors

init_query_eeus()

Updates the heap eeu_query which has records of (-EEU, quesion)

Methods Documentation

add_query(qeeu: Tuple[float, int])None[source]

Adds a query to the heap of queries

Parameters

qeeu – A Tuple giving (-EEU, query_index)

Remarks:
  • Note that the first member of the tuple is minus the EEU

  • The sedond member of the tuple is an index of the query in the queries list (not the query itself).

eeu(policy: numpy.ndarray, eup: numpy.ndarray)float[source]

Expected Expected Negotiator for following the policy

elicit_single(state: negmas.common.MechanismState)[source]

Called to conduct a single eliciataion act.

Parameters

state – The mechanism state

Remarks:
  • It returns False ending eliciatation if eeu_query is empty or can_elicit returns False

  • The algorithm outline is as follows:

    1. Pops the top query with its EEU from the heap

    2. elicitation is stopped if the top query is None, the eeu is less than the current EEU, or the EEU after asking will be less than the reserved value.

    3. If dynamic_query_set, the strategy is invoked to get the next query, otherwise, the user is asked the top query and the related queries are updated.

    4. The expected utility is updated base on the answer received from the user and update_optimal_policy is called followed by init_query_eeus.

init_optimal_policy()None[source]

Gets the optimal policy given Negotiator utility_priors

init_query_eeus()None[source]

Updates the heap eeu_query which has records of (-EEU, quesion)