in simple_game/load_strategies.py [0:0]
def load_policies(filename):
prompt = "json_str: "
state = 0
curr_policy = dict()
last_infoset = None
last_distribution = dict()
policies = []
for line in open(filename, "r"):
if line.startswith("Player 1 strategy"):
state = 1
elif line.startswith("Player 2 strategy"):
state = 2
elif line.startswith(prompt):
items = json.loads(line[len(prompt):])
scores = { k: float(v) for k, v in items.items() }
elif line.startswith("Time spent: "):
process_policy(curr_policy, last_infoset, last_reach, last_distribution)
policies.append(dict(scores=scores, policy=curr_policy))
state = 0
last_infoset = None
curr_policy = dict()
elif state > 0:
if line.startswith("P"):
if last_infoset is not None:
process_policy(curr_policy, last_infoset, last_reach, last_distribution)
last_infoset, last_reach = line.split(",")
last_reach = float(last_reach.split(":")[1])
last_distribution = dict()
elif line != "\n":
action, prob = line.split(":")
action = eval(action)[0]
prob = float(prob)
last_distribution[action] = prob
return policies