Skip to content
Snippets Groups Projects
Commit 3f36d20a authored by Erik Nygren's avatar Erik Nygren
Browse files

minor updates to new prediction function

parent 2f1e8af1
No related branches found
No related tags found
No related merge requests found
No preview for this file type
...@@ -5,6 +5,8 @@ import numpy as np ...@@ -5,6 +5,8 @@ import numpy as np
import torch import torch
from dueling_double_dqn import Agent from dueling_double_dqn import Agent
from flatland.envs.generators import complex_rail_generator from flatland.envs.generators import complex_rail_generator
from flatland.envs.observations import TreeObsForRailEnv
from flatland.envs.predictions import DummyPredictorForRailEnv
from flatland.envs.rail_env import RailEnv from flatland.envs.rail_env import RailEnv
from flatland.utils.rendertools import RenderTool from flatland.utils.rendertools import RenderTool
...@@ -43,10 +45,12 @@ env = RailEnv(width=10, ...@@ -43,10 +45,12 @@ env = RailEnv(width=10,
height=20) height=20)
env.load("./railway/complex_scene.pkl") env.load("./railway/complex_scene.pkl")
""" """
env = RailEnv(width=8,
height=8, env = RailEnv(width=20,
rail_generator=complex_rail_generator(nr_start_goal=5, nr_extra=5, min_dist=5, max_dist=99999, seed=0), height=20,
number_of_agents=1) rail_generator=complex_rail_generator(nr_start_goal=10, nr_extra=1, min_dist=8, max_dist=99999, seed=0),
obs_builder_object=TreeObsForRailEnv(max_depth=2, predictor=DummyPredictorForRailEnv()),
number_of_agents=10)
env.reset(True, True) env.reset(True, True)
env_renderer = RenderTool(env, gl="PILSVG") env_renderer = RenderTool(env, gl="PILSVG")
...@@ -69,9 +73,9 @@ action_prob = [0] * action_size ...@@ -69,9 +73,9 @@ action_prob = [0] * action_size
agent_obs = [None] * env.get_num_agents() agent_obs = [None] * env.get_num_agents()
agent_next_obs = [None] * env.get_num_agents() agent_next_obs = [None] * env.get_num_agents()
agent = Agent(state_size, action_size, "FC", 0) agent = Agent(state_size, action_size, "FC", 0)
#agent.qnetwork_local.load_state_dict(torch.load('./Nets/avoid_checkpoint1500.pth')) agent.qnetwork_local.load_state_dict(torch.load('./Nets/avoid_checkpoint15000.pth'))
demo = False demo = True
def max_lt(seq, val): def max_lt(seq, val):
""" """
...@@ -143,14 +147,14 @@ for trials in range(1, n_trials + 1): ...@@ -143,14 +147,14 @@ for trials in range(1, n_trials + 1):
score = 0 score = 0
env_done = 0 env_done = 0
# Run episode # Run episode
for step in range(100): for step in range(env.height * env.width):
if demo: if demo:
env_renderer.renderEnv(show=True, show_observations=False) env_renderer.renderEnv(show=True, show_observations=False)
# print(step) # print(step)
# Action # Action
for a in range(env.get_num_agents()): for a in range(env.get_num_agents()):
if demo: if demo:
eps = 1 eps = 0
# action = agent.act(np.array(obs[a]), eps=eps) # action = agent.act(np.array(obs[a]), eps=eps)
action = agent.act(agent_obs[a], eps=eps) action = agent.act(agent_obs[a], eps=eps)
action_prob[action] += 1 action_prob[action] += 1
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment