def test_rollout_gen(self): env = gym.make('SpaceInvaders-v4') models = config.basepath() / 'SpaceInvaders-v4' / 'models' visualsfile = models / 'GM53H301W5YS38XH' visuals = Storeable.load(str(visualsfile)).to(config.device()) controllerfile = models / 'best_model68' controller = torch.load(str(controllerfile)) policy = VCPolicy(visuals, controller) viewer = ImageViewer('screen', (420, 360), 'numpyRGB') for screen, observation, reward, done, info, action in RolloutGen( env, policy): viewer.update(screen)
def test_gymsim(self): env = gym.make('SpaceInvaders-v4') models = config.basepath() / 'SpaceInvaders-v4' / 'models' visualsfile = models / 'GM53H301W5YS38XH' visuals = Storeable.load(str(visualsfile)).to(config.device()) controllerfile = models / 'best_model68' controller = torch.load(str(controllerfile)) policy = VCPolicy(visuals, controller) dataset = GymSimulatorDataset(env, policy, 3000) loader = torch.utils.data.DataLoader(dataset=dataset, batch_size=10, shuffle=False, drop_last=True) for screen, observation, action, reward, done, _ in loader: print(reward)
drop_last=False, ) train = data_utils.DataLoader( train, batch_size=batch_size, collate_fn=collate_action_observation, drop_last=False, ) test = data_utils.DataLoader( test, batch_size=batch_size, collate_fn=collate_action_observation, drop_last=False, ) convolutions = Storeable.load('C:\data\models\GM53H301W5YS38XH').to(device) convolutions.decoder.register_forward_hook( UniImageViewer('decoded').view_output) ground_truth_decoder = Storeable.load( 'C:\data\models\GM53H301W5YS38XH').to(device) ground_truth_decoder.decoder.register_forward_hook( UniImageViewer('ground_truth').view_input) model = MDNRNN(i_size=i_size, z_size=z_size, hidden_size=32, num_layers=3, n_gaussians=3).to(device) #model = Storeable.load(r'C:\data\runs\687\mdnrnn-i_size-6-z_size-16-hidden_size-256-num_layers-1-n_gaussians-5_10.md').to(device)
rollout.register_before_hook(frame) def save(args): action_encoder.save_session() def action_encoder_frame(step): episode = step.meta['episode'] file_path = config.basepath() / gym_environment / output_dir / str(episode) step.meta['filename'] = str(file_path) action_encoder.update(step) rollout.register_step(action_encoder_frame) rollout.register_end_session(save) for i_episode in range(531, 1000): rollout.rollout(policy, max_timesteps=3000, episode=i_episode) if __name__ == '__main__': gym_environment = 'SpaceInvaders-v4' visuals = Storeable.load('.\modelzoo\GM53H301W5YS38XH').to(config.device()) controller = torch.load(r'.\modelzoo\best_model68') policy = VCPolicy(visuals, controller) output_dir = 'rl_raw_v2' main(gym_environment, policy, output_dir)