SAOElicitingMechanism

class negmas.elicitation.SAOElicitingMechanism(priors, true_utilities, elicitor_reserved_value, cost, opp_utility, opponent, n_steps, time_limit, base_agent, opponent_model, elicitation_strategy='pingpong', toughness=0.95, elicitor_type='balanced', history_file_name: Optional[str] = None, screen_log: bool = False, dynamic_queries=True, each_outcome_once=False, rational_answer_probs=True, update_related_queries=True, resolution=0.1, cost_assuming_titration=False, name: Optional[str] = None)[source]

Bases: negmas.sao.SAOProtocol

Methods Summary

generate_config(cost[, n_outcomes, …])

logdebug(s)

logs debug-level information

logerror(s)

logs error-level information

loginfo(s)

logs ami-level information

logwarning(s)

logs warning-level information

on_negotiation_end()

Called at the end of each negotiation.

on_negotiation_start()

Called before starting the negotiation.

plot([visible_negotiators, plot_utils, …])

A method for plotting a negotiation session

step()

Runs a single step of the mechanism.

Methods Documentation

classmethod generate_config(cost, n_outcomes: Optional[int] = None, rand_ufuns=True, conflict: Optional[float] = None, conflict_delta: Optional[float] = None, winwin=None, genius_folder: Optional[str] = None, n_steps=None, time_limit=None, own_utility_uncertainty=0.5, own_uncertainty_variablility=0.0, own_reserved_value=0.0, own_base_agent='aspiration', opponent_model_uncertainty=0.5, opponent_model_adaptive=False, opponent_proposes=True, opponent_type='best_only', opponent_toughness=0.9, opponent_reserved_value=0.0)Dict[str, Any][source]
logdebug(s)None[source]

logs debug-level information

Parameters

s (str) – The string to log

logerror(s)None[source]

logs error-level information

Parameters

s (str) – The string to log

loginfo(s: str)None[source]

logs ami-level information

Parameters

s (str) – The string to log

logwarning(s)None[source]

logs warning-level information

Parameters

s (str) – The string to log

on_negotiation_end()[source]

Called at the end of each negotiation.

Remarks:
  • When overriding this function you MUST call the base class version

on_negotiation_start()[source]

Called before starting the negotiation. If it returns False then negotiation will end immediately

plot(visible_negotiators=(0, 1), plot_utils=True, plot_outcomes=False, utility_range=None, consider_costs=False)[source]

A method for plotting a negotiation session

step()negmas.sao.SAOState[source]

Runs a single step of the mechanism.

Returns

The state of the negotiation after the round is conducted

Return type

MechanismState

Remarks:

  • Every call yields the results of one round (see round())

  • If the mechanism was yet to start, it will start it and runs one round

  • There is another function (run()) that runs the whole mechanism in blocking mode