if __name__ == '__main__': times = {2: [], 3: []} flatland = flatland_from_file('../scenarios/5-even-bigger.txt') backup_x = int(sqrt(manhattan_distance((0, 0), (flatland.w, flatland.h)))) for i in xrange(N): print(2, i) agent = FlatlandAgent(world=deepcopy(flatland), step_limit=flatland.w * flatland.h, backup_x=backup_x, temperature=TEMPERATURE, delta_t=TEMPERATURE / ITERATIONS) agent.Q = Q2() start = time() agent.train() finish = time() times[2].append(finish - start) for i in xrange(N): print(3, i) agent = FlatlandAgent(world=deepcopy(flatland), step_limit=flatland.w * flatland.h, backup_x=backup_x, temperature=TEMPERATURE, delta_t=TEMPERATURE / ITERATIONS) agent.Q = Q3() start = time() agent.train()
flatland = flatland_from_file('../scenarios/5-even-bigger.txt') backup_x = int(sqrt(manhattan_distance((0, 0), (flatland.w, flatland.h)))) for i in xrange(N): print(2, i) agent = FlatlandAgent( world=deepcopy(flatland), step_limit=flatland.w * flatland.h, backup_x=backup_x, temperature=TEMPERATURE, delta_t=TEMPERATURE / ITERATIONS ) agent.Q = Q2() start = time() agent.train() finish = time() times[2].append(finish - start) for i in xrange(N): print(3, i) agent = FlatlandAgent( world=deepcopy(flatland), step_limit=flatland.w * flatland.h, backup_x=backup_x, temperature=TEMPERATURE, delta_t=TEMPERATURE / ITERATIONS ) agent.Q = Q3()
backup_x=backup_x, temperature=args.temperature, delta_t=args.temperature / args.iterations) ideal_temp = [] experienced_temp = [] start = time() def after(): e = agent.explore / agent.steps ideal_temp.append(agent.temperature) experienced_temp.append(e) print(round(agent.temperature, 3), round(e, 3), agent.steps, len(agent.food_eaten), agent.poison_eaten) agent.train(after) finish = time() print("Time: {}s".format(finish - start)) if args.plot: from plot import plot_temperatures plot_temperatures(ideal_temp, experienced_temp) agent.temperature = -1 FlatlandGUI(agent)
start = time() def after(): e = agent.explore / agent.steps ideal_temp.append(agent.temperature) experienced_temp.append(e) print( round(agent.temperature, 3), round(e, 3), agent.steps, len(agent.food_eaten), agent.poison_eaten ) agent.train(after) finish = time() print("Time: {}s".format(finish - start)) if args.plot: from plot import plot_temperatures plot_temperatures(ideal_temp, experienced_temp) agent.temperature = -1 FlatlandGUI(agent)