agent_types = [RandomOneShotAgent, SyncRandomOneShotAgent, GreedyOneShotAgent, GreedySingleAgreementAgent]
val_0 = 0
val_1 = 0
val_2 = 0
val_3 = 3
val_4 = 4
val_5 = 5
n = 1000
for i in range(n):
world = SCML2020OneShotWorld(
**SCML2020OneShotWorld.generate(
agent_types=agent_types,
n_steps=50
),
construct_graphs=True,
)
if i == 0:
print(world.agent_profiles)
val_0 += world.agent_profiles[list(world.agent_profiles.keys())[0]].cost
val_1 += world.agent_profiles[list(world.agent_profiles.keys())[1]].cost
val_2 += world.agent_profiles[list(world.agent_profiles.keys())[2]].cost
val_3 += world.agent_profiles[list(world.agent_profiles.keys())[3]].cost
val_4 += world.agent_profiles[list(world.agent_profiles.keys())[4]].cost
val_5 += world.agent_profiles[list(world.agent_profiles.keys())[5]].cost
print(np.array([val_0, val_1, val_2, val_3, val_4, val_5])/n)
defaultdict(<class 'list'>, {'00SyR@0': OneShotProfile(cost=6, input_product=0, n_lines=10, shortfall_penalty_mean=0.7077609276422603, disposal_cost_mean=0.8855099889110551, shortfall_penalty_dev=0.05173409710349367, disposal_cost_dev=0.04921604085230723), '01GSA@0': OneShotProfile(cost=4, input_product=0, n_lines=10, shortfall_penalty_mean=0.5263103223795285, disposal_cost_mean=0.5201459953792971, shortfall_penalty_dev=0.044325413557489104, disposal_cost_dev=0.008711963878956994), '02Ran@0': OneShotProfile(cost=7, input_product=0, n_lines=10, shortfall_penalty_mean=0.7358165454416139, disposal_cost_mean=0.8990585669339071, shortfall_penalty_dev=0.06862436053457982, disposal_cost_dev=0.05497332260213158), '03GSA@1': OneShotProfile(cost=8, input_product=1, n_lines=10, shortfall_penalty_mean=0.6088231183711137, disposal_cost_mean=0.6677210453076889, shortfall_penalty_dev=0.05990315501649243, disposal_cost_dev=0.053014124340221), '04GSA@1': OneShotProfile(cost=9, input_product=1, n_lines=10, shortfall_penalty_mean=0.8639006169834454, disposal_cost_mean=0.677402915478307, shortfall_penalty_dev=0.04869479899135038, disposal_cost_dev=0.043469001032185775), '05SyR@1': OneShotProfile(cost=9, input_product=1, n_lines=10, shortfall_penalty_mean=0.9355877619447468, disposal_cost_mean=0.9469732340406642, shortfall_penalty_dev=0.05625999398377608, disposal_cost_dev=0.028563629972440628)})
[5.404 5.578 5.632 5.645 5.405 5.653]