From ebaca6f8da91e18e0192184c24f5d13e3a5d0092 Mon Sep 17 00:00:00 2001 From: n+e Date: Sat, 26 Jun 2021 18:08:41 +0800 Subject: [PATCH] add vizdoom example, bump version to 0.4.2 (#384) --- .github/workflows/pytest.yml | 2 +- README.md | 3 +- examples/vizdoom/.gitignore | 1 + examples/vizdoom/README.md | 66 ++++++++ examples/vizdoom/env.py | 129 ++++++++++++++++ examples/vizdoom/maps/D1_basic.cfg | 39 +++++ examples/vizdoom/maps/D1_basic.wad | Bin 0 -> 2837 bytes examples/vizdoom/maps/D2_navigation.cfg | 39 +++++ examples/vizdoom/maps/D2_navigation.wad | Bin 0 -> 29498 bytes examples/vizdoom/maps/D3_battle.cfg | 48 ++++++ examples/vizdoom/maps/D3_battle.wad | Bin 0 -> 15496 bytes examples/vizdoom/maps/D4_battle2.cfg | 48 ++++++ examples/vizdoom/maps/D4_battle2.wad | Bin 0 -> 82549 bytes examples/vizdoom/maps/README.md | 3 + examples/vizdoom/maps/spectator.py | 71 +++++++++ examples/vizdoom/network.py | 1 + examples/vizdoom/replay.py | 35 +++++ examples/vizdoom/results/c51/d3.lmp | Bin 0 -> 6744 bytes examples/vizdoom/results/c51/d4.lmp | Bin 0 -> 5046 bytes examples/vizdoom/results/c51/length.png | Bin 0 -> 113576 bytes examples/vizdoom/results/c51/reward.png | Bin 0 -> 92461 bytes examples/vizdoom/vizdoom_c51.py | 177 ++++++++++++++++++++++ setup.py | 2 +- test/modelbased/test_psrl.py | 6 +- tianshou/__init__.py | 2 +- tianshou/data/batch.py | 7 +- tianshou/data/buffer/base.py | 1 + tianshou/data/collector.py | 9 +- tianshou/policy/imitation/discrete_crr.py | 4 +- tianshou/policy/modelfree/dqn.py | 2 +- tianshou/policy/modelfree/trpo.py | 1 + tianshou/utils/log_tools.py | 4 +- 32 files changed, 683 insertions(+), 17 deletions(-) create mode 100644 examples/vizdoom/.gitignore create mode 100644 examples/vizdoom/README.md create mode 100644 examples/vizdoom/env.py create mode 100644 examples/vizdoom/maps/D1_basic.cfg create mode 100644 examples/vizdoom/maps/D1_basic.wad create mode 100644 examples/vizdoom/maps/D2_navigation.cfg create mode 100644 examples/vizdoom/maps/D2_navigation.wad create mode 100644 examples/vizdoom/maps/D3_battle.cfg create mode 100644 examples/vizdoom/maps/D3_battle.wad create mode 100644 examples/vizdoom/maps/D4_battle2.cfg create mode 100644 examples/vizdoom/maps/D4_battle2.wad create mode 100644 examples/vizdoom/maps/README.md create mode 100644 examples/vizdoom/maps/spectator.py create mode 120000 examples/vizdoom/network.py create mode 100755 examples/vizdoom/replay.py create mode 100644 examples/vizdoom/results/c51/d3.lmp create mode 100644 examples/vizdoom/results/c51/d4.lmp create mode 100644 examples/vizdoom/results/c51/length.png create mode 100644 examples/vizdoom/results/c51/reward.png create mode 100644 examples/vizdoom/vizdoom_c51.py diff --git a/.github/workflows/pytest.yml b/.github/workflows/pytest.yml index 0e4fe10..c8d5838 100644 --- a/.github/workflows/pytest.yml +++ b/.github/workflows/pytest.yml @@ -24,7 +24,7 @@ jobs: - name: Test with pytest # ignore test/throughput which only profiles the code run: | - pytest test --ignore-glob='*profile.py' --cov=tianshou --cov-report=xml --durations=0 -v + pytest test --ignore-glob='*profile.py' --cov=tianshou --cov-report=xml --cov-report=term-missing --durations=0 -v - name: Upload coverage to Codecov uses: codecov/codecov-action@v1 with: diff --git a/README.md b/README.md index 295ca96..e519d20 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ [![PyPI](https://img.shields.io/pypi/v/tianshou)](https://pypi.org/project/tianshou/) [![Conda](https://img.shields.io/conda/vn/conda-forge/tianshou)](https://github.com/conda-forge/tianshou-feedstock) -[![Read the Docs](https://img.shields.io/readthedocs/tianshou)](https://tianshou.readthedocs.io/en/latest) +[![Read the Docs](https://img.shields.io/readthedocs/tianshou)](https://tianshou.readthedocs.io/en/master) [![Read the Docs](https://img.shields.io/readthedocs/tianshou-docs-zh-cn?label=%E4%B8%AD%E6%96%87%E6%96%87%E6%A1%A3)](https://tianshou.readthedocs.io/zh/latest/) [![Unittest](https://github.com/thu-ml/tianshou/workflows/Unittest/badge.svg?branch=master)](https://github.com/thu-ml/tianshou/actions) [![codecov](https://img.shields.io/codecov/c/gh/thu-ml/tianshou)](https://codecov.io/gh/thu-ml/tianshou) @@ -14,7 +14,6 @@ [![GitHub stars](https://img.shields.io/github/stars/thu-ml/tianshou)](https://github.com/thu-ml/tianshou/stargazers) [![GitHub forks](https://img.shields.io/github/forks/thu-ml/tianshou)](https://github.com/thu-ml/tianshou/network) [![GitHub license](https://img.shields.io/github/license/thu-ml/tianshou)](https://github.com/thu-ml/tianshou/blob/master/LICENSE) -[![Gitter](https://badges.gitter.im/thu-ml/tianshou.svg)](https://gitter.im/thu-ml/tianshou?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) **Tianshou** ([天授](https://baike.baidu.com/item/%E5%A4%A9%E6%8E%88)) is a reinforcement learning platform based on pure PyTorch. Unlike existing reinforcement learning libraries, which are mainly based on TensorFlow, have many nested classes, unfriendly API, or slow-speed, Tianshou provides a fast-speed modularized framework and pythonic API for building the deep reinforcement learning agent with the least number of lines of code. The supported interface algorithms currently include: diff --git a/examples/vizdoom/.gitignore b/examples/vizdoom/.gitignore new file mode 100644 index 0000000..b8bde54 --- /dev/null +++ b/examples/vizdoom/.gitignore @@ -0,0 +1 @@ +_vizdoom.ini diff --git a/examples/vizdoom/README.md b/examples/vizdoom/README.md new file mode 100644 index 0000000..ed68a46 --- /dev/null +++ b/examples/vizdoom/README.md @@ -0,0 +1,66 @@ +# ViZDoom + +[ViZDoom](https://github.com/mwydmuch/ViZDoom) is a popular RL env for a famous first-person shooting game Doom. Here we provide some results and intuitions for this scenario. + +## Train + +To train an agent: + +```bash +python3 vizdoom_c51.py --task {D1_basic|D3_battle|D4_battle2} +``` + +D1 (health gathering) should finish training (no death) in less than 500k env step (5 epochs); + +D3 can reach 1600+ reward (75+ killcount in 5 minutes); + +D4 can reach 700+ reward. Here is the result: + +(episode length, the maximum length is 2625 because we use frameskip=4, that is 10500/4=2625) + +![](results/c51/length.png) + +(episode reward) + +![](results/c51/reward.png) + +To evaluate an agent's performance: + +```bash +python3 vizdoom_c51.py --test-num 100 --resume-path policy.pth --watch --task {D1_basic|D3_battle|D4_battle2} +``` + +To save `.lmp` files for recording: + +```bash +python3 vizdoom_c51.py --save-lmp --test-num 100 --resume-path policy.pth --watch --task {D1_basic|D3_battle|D4_battle2} +``` + +it will store `lmp` file in `lmps/` directory. To watch these `lmp` files (for example, d3 lmp): + +```bash +python3 replay.py maps/D3_battle.cfg episode_8_25.lmp +``` + +We provide two lmp files (d3 best and d4 best) under `results/c51`, you can use the following command to enjoy: + +```bash +python3 replay.py maps/D3_battle.cfg results/c51/d3.lmp +python3 replay.py maps/D4_battle2.cfg results/c51/d4.lmp +``` + +## Maps + +See [maps/README.md](maps/README.md) + +## Algorithms + +The setting is exactly the same as Atari. You can definitely try more algorithms listed in Atari example. + +## Reward + +1. living reward is bad +2. combo-action is really important +3. negative reward for health and ammo2 is really helpful for d3/d4 +4. only with positive reward for health is really helpful for d1 +5. remove MOVE_BACKWARD may converge faster but the final performance may be lower diff --git a/examples/vizdoom/env.py b/examples/vizdoom/env.py new file mode 100644 index 0000000..017ab77 --- /dev/null +++ b/examples/vizdoom/env.py @@ -0,0 +1,129 @@ +import os +import cv2 +import gym +import numpy as np +import vizdoom as vzd + + +def normal_button_comb(): + actions = [] + m_forward = [[0.0], [1.0]] + t_left_right = [[0.0, 0.0], [0.0, 1.0], [1.0, 0.0]] + for i in m_forward: + for j in t_left_right: + actions.append(i + j) + return actions + + +def battle_button_comb(): + actions = [] + m_forward_backward = [[0.0, 0.0], [0.0, 1.0], [1.0, 0.0]] + m_left_right = [[0.0, 0.0], [0.0, 1.0], [1.0, 0.0]] + t_left_right = [[0.0, 0.0], [0.0, 1.0], [1.0, 0.0]] + attack = [[0.0], [1.0]] + speed = [[0.0], [1.0]] + + for m in attack: + for n in speed: + for j in m_left_right: + for i in m_forward_backward: + for k in t_left_right: + actions.append(i + j + k + m + n) + return actions + + +class Env(gym.Env): + def __init__( + self, cfg_path, frameskip=4, res=(4, 40, 60), save_lmp=False + ): + super().__init__() + self.save_lmp = save_lmp + self.health_setting = "battle" in cfg_path + if save_lmp: + os.makedirs("lmps", exist_ok=True) + self.res = res + self.skip = frameskip + self.observation_space = gym.spaces.Box( + low=0, high=255, shape=res, dtype=np.float32 + ) + self.game = vzd.DoomGame() + self.game.load_config(cfg_path) + self.game.init() + if "battle" in cfg_path: + self.available_actions = battle_button_comb() + else: + self.available_actions = normal_button_comb() + self.action_num = len(self.available_actions) + self.action_space = gym.spaces.Discrete(self.action_num) + self.spec = gym.envs.registration.EnvSpec("vizdoom-v0") + self.count = 0 + + def get_obs(self): + state = self.game.get_state() + if state is None: + return + obs = state.screen_buffer + self.obs_buffer[:-1] = self.obs_buffer[1:] + self.obs_buffer[-1] = cv2.resize(obs, (self.res[-1], self.res[-2])) + + def reset(self): + if self.save_lmp: + self.game.new_episode(f"lmps/episode_{self.count}.lmp") + else: + self.game.new_episode() + self.count += 1 + self.obs_buffer = np.zeros(self.res, dtype=np.uint8) + self.get_obs() + self.health = self.game.get_game_variable(vzd.GameVariable.HEALTH) + self.killcount = self.game.get_game_variable( + vzd.GameVariable.KILLCOUNT) + self.ammo2 = self.game.get_game_variable(vzd.GameVariable.AMMO2) + return self.obs_buffer + + def step(self, action): + self.game.make_action(self.available_actions[action], self.skip) + reward = 0.0 + self.get_obs() + health = self.game.get_game_variable(vzd.GameVariable.HEALTH) + if self.health_setting: + reward += health - self.health + elif health > self.health: # positive health reward only for d1/d2 + reward += health - self.health + self.health = health + killcount = self.game.get_game_variable(vzd.GameVariable.KILLCOUNT) + reward += 20 * (killcount - self.killcount) + self.killcount = killcount + ammo2 = self.game.get_game_variable(vzd.GameVariable.AMMO2) + # if ammo2 > self.ammo2: + reward += ammo2 - self.ammo2 + self.ammo2 = ammo2 + done = False + info = {} + if self.game.is_player_dead() or self.game.get_state() is None: + done = True + elif self.game.is_episode_finished(): + done = True + info["TimeLimit.truncated"] = True + return self.obs_buffer, reward, done, info + + def render(self): + pass + + def close(self): + self.game.close() + + +if __name__ == '__main__': + # env = Env("maps/D1_basic.cfg", 4, (4, 84, 84)) + env = Env("maps/D3_battle.cfg", 4, (4, 84, 84)) + print(env.available_actions) + action_num = env.action_space.n + obs = env.reset() + print(env.spec.reward_threshold) + print(obs.shape, action_num) + for i in range(4000): + obs, rew, done, info = env.step(0) + if done: + env.reset() + print(obs.shape, rew, done) + cv2.imwrite("test.png", obs.transpose(1, 2, 0)[..., :3]) diff --git a/examples/vizdoom/maps/D1_basic.cfg b/examples/vizdoom/maps/D1_basic.cfg new file mode 100644 index 0000000..1c7431e --- /dev/null +++ b/examples/vizdoom/maps/D1_basic.cfg @@ -0,0 +1,39 @@ +# Lines starting with # are treated as comments (or with whitespaces+#). +# It doesn't matter if you use capital letters or not. +# It doesn't matter if you use underscore or camel notation for keys, e.g. episode_timeout is the same as episodeTimeout. + +doom_scenario_path = D1_basic.wad +doom_map = map01 + +# Rewards + +# Each step is good for you! +living_reward = 0 +# And death is not! +death_penalty = 0 + +# Rendering options +screen_resolution = RES_160X120 +screen_format = GRAY8 +render_hud = false +render_crosshair = false +render_weapon = false +render_decals = false +render_particles = false +window_visible = false + +# make episodes finish after 10500 actions (tics) +episode_timeout = 10500 + +# Available buttons +available_buttons = +{ + MOVE_FORWARD + TURN_LEFT + TURN_RIGHT +} + +# Game variables that will be in the state +available_game_variables = { HEALTH } + +mode = PLAYER diff --git a/examples/vizdoom/maps/D1_basic.wad b/examples/vizdoom/maps/D1_basic.wad new file mode 100644 index 0000000000000000000000000000000000000000..51034a24a1f0d987f479f8825d6d5ea0d4daae9f GIT binary patch literal 2837 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 F{{ynNrZWHl literal 0 HcmV?d00001 diff --git a/examples/vizdoom/maps/D3_battle.cfg b/examples/vizdoom/maps/D3_battle.cfg new file mode 100644 index 0000000..9d05781 --- /dev/null +++ b/examples/vizdoom/maps/D3_battle.cfg @@ -0,0 +1,48 @@ +# Lines starting with # are treated as comments (or with whitespaces+#). +# It doesn't matter if you use capital letters or not. +# It doesn't matter if you use underscore or camel notation for keys, e.g. episode_timeout is the same as episodeTimeout. + +doom_scenario_path = D3_battle.wad +doom_map = map01 + +# Rewards + +living_reward = 0 +death_penalty = 100 + +# Rendering options +screen_resolution = RES_160X120 +screen_format = GRAY8 +render_hud = false +render_crosshair = true +render_weapon = true +render_decals = false +render_particles = false +window_visible = false + +# make episodes finish after 10500 actions (tics) +episode_timeout = 10500 + +# Available buttons +available_buttons = +{ + MOVE_FORWARD + MOVE_BACKWARD + MOVE_LEFT + MOVE_RIGHT + TURN_LEFT + TURN_RIGHT + ATTACK + SPEED +} + +# Game variables that will be in the state +available_game_variables = +{ + KILLCOUNT + AMMO2 + HEALTH +} + +mode = PLAYER +doom_skill = 2 diff --git a/examples/vizdoom/maps/D3_battle.wad b/examples/vizdoom/maps/D3_battle.wad new file mode 100644 index 0000000000000000000000000000000000000000..de7877ef2250b2b52ce8b6bac9ff6c86c162146b GIT binary patch literal 15496 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 literal 0 HcmV?d00001 diff --git a/examples/vizdoom/maps/D4_battle2.cfg b/examples/vizdoom/maps/D4_battle2.cfg new file mode 100644 index 0000000..8f7d779 --- /dev/null +++ b/examples/vizdoom/maps/D4_battle2.cfg @@ -0,0 +1,48 @@ +# Lines starting with # are treated as comments (or with whitespaces+#). +# It doesn't matter if you use capital letters or not. +# It doesn't matter if you use underscore or camel notation for keys, e.g. episode_timeout is the same as episodeTimeout. + +doom_scenario_path = D4_battle2.wad +doom_map = map01 + +# Rewards + +living_reward = 0 +death_penalty = 100 + +# Rendering options +screen_resolution = RES_160X120 +screen_format = GRAY8 +render_hud = false +render_crosshair = true +render_weapon = true +render_decals = false +render_particles = false +window_visible = false + +# make episodes finish after 10500 actions (tics) +episode_timeout = 10500 + +# Available buttons +available_buttons = +{ + MOVE_FORWARD + MOVE_BACKWARD + MOVE_LEFT + MOVE_RIGHT + TURN_LEFT + TURN_RIGHT + ATTACK + SPEED +} + +# Game variables that will be in the state +available_game_variables = +{ + KILLCOUNT + AMMO2 + HEALTH +} + +mode = PLAYER +doom_skill = 2 diff --git a/examples/vizdoom/maps/D4_battle2.wad b/examples/vizdoom/maps/D4_battle2.wad new file mode 100644 index 0000000000000000000000000000000000000000..8643069562316760decb2dd548dce7183865aec5 GIT binary patch literal 82549 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 Q6>BG&@-5RQLt2Rc4WT_3y#N3J literal 0 HcmV?d00001 diff --git a/examples/vizdoom/maps/README.md b/examples/vizdoom/maps/README.md new file mode 100644 index 0000000..3e47690 --- /dev/null +++ b/examples/vizdoom/maps/README.md @@ -0,0 +1,3 @@ +D1-D4 maps are from https://github.com/intel-isl/DirectFuturePrediction/ + +More maps and cfgs: https://github.com/mwydmuch/ViZDoom/tree/master/scenarios diff --git a/examples/vizdoom/maps/spectator.py b/examples/vizdoom/maps/spectator.py new file mode 100644 index 0000000..d4d7e8c --- /dev/null +++ b/examples/vizdoom/maps/spectator.py @@ -0,0 +1,71 @@ +#!/usr/bin/env python3 + +##################################################################### +# This script presents SPECTATOR mode. In SPECTATOR mode you play and +# your agent can learn from it. +# Configuration is loaded from "../../scenarios/.cfg" file. +# +# To see the scenario description go to "../../scenarios/README.md" +##################################################################### + +from __future__ import print_function + +from time import sleep +import vizdoom as vzd +from argparse import ArgumentParser +# import cv2 + + +if __name__ == "__main__": + parser = ArgumentParser("ViZDoom example showing how to use SPECTATOR mode.") + parser.add_argument('-c', type=str, dest="config", default="D3_battle.cfg") + parser.add_argument('-w', type=str, dest="wad_file", default="D3_battle.wad") + args = parser.parse_args() + game = vzd.DoomGame() + + # Choose scenario config file you wish to watch. + # Don't load two configs cause the second will overrite the first one. + # Multiple config files are ok but combining these ones doesn't make much sense. + + game.load_config(args.config) + game.set_doom_scenario_path(args.wad_file) + # Enables freelook in engine + game.add_game_args("+freelook 1") + + game.set_screen_resolution(vzd.ScreenResolution.RES_640X480) + + # Enables spectator mode, so you can play. + # Sounds strange but it is the agent who is supposed to watch not you. + game.set_window_visible(True) + game.set_mode(vzd.Mode.SPECTATOR) + + game.init() + + episodes = 1 + + for i in range(episodes): + print("Episode #" + str(i + 1)) + + game.new_episode() + while not game.is_episode_finished(): + state = game.get_state() + print(state.screen_buffer.dtype, state.screen_buffer.shape) + # cv2.imwrite(f'imgs/{state.number}.png', state.screen_buffer) + + # game.make_action([0, 0, 0]) + game.advance_action() + last_action = game.get_last_action() + reward = game.get_last_reward() + + print("State #" + str(state.number)) + print("Game variables: ", state.game_variables) + print("Action:", last_action) + print("Reward:", reward) + print("=====================") + + print("Episode finished!") + print("Total reward:", game.get_total_reward()) + print("************************") + sleep(2.0) + + game.close() diff --git a/examples/vizdoom/network.py b/examples/vizdoom/network.py new file mode 120000 index 0000000..a0c543a --- /dev/null +++ b/examples/vizdoom/network.py @@ -0,0 +1 @@ +../atari/atari_network.py \ No newline at end of file diff --git a/examples/vizdoom/replay.py b/examples/vizdoom/replay.py new file mode 100755 index 0000000..a1e556f --- /dev/null +++ b/examples/vizdoom/replay.py @@ -0,0 +1,35 @@ +# import cv2 +import sys +import time +import tqdm +import vizdoom as vzd + + +def main(cfg_path="maps/D3_battle.cfg", lmp_path="test.lmp"): + game = vzd.DoomGame() + game.load_config(cfg_path) + game.set_screen_format(vzd.ScreenFormat.CRCGCB) + game.set_screen_resolution(vzd.ScreenResolution.RES_1024X576) + game.set_window_visible(True) + game.set_render_hud(True) + game.init() + game.replay_episode(lmp_path) + + killcount = 0 + with tqdm.trange(10500) as tq: + while not game.is_episode_finished(): + game.advance_action() + state = game.get_state() + if state is None: + break + killcount = game.get_game_variable(vzd.GameVariable.KILLCOUNT) + time.sleep(1 / 35) + # cv2.imwrite(f"imgs/{tq.n}.png", + # state.screen_buffer.transpose(1, 2, 0)[..., ::-1]) + tq.update(1) + game.close() + print("killcount:", killcount) + + +if __name__ == '__main__': + main(*sys.argv[-2:]) diff --git a/examples/vizdoom/results/c51/d3.lmp b/examples/vizdoom/results/c51/d3.lmp new file mode 100644 index 0000000000000000000000000000000000000000..5e0e31d6cb43889b32b2df0d1af1fa81f0c1428b GIT binary patch literal 6744 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 R*=hAcr_HHGh7#Sz{{iu3D5C%X literal 0 HcmV?d00001 diff --git a/examples/vizdoom/results/c51/d4.lmp b/examples/vizdoom/results/c51/d4.lmp new file mode 100644 index 0000000000000000000000000000000000000000..358fbfe229d57544f567cf25738ff3c6a331cc10 GIT binary patch literal 5046 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 RPpeOd2mBI&yTm^M{{sNx0W1Ij literal 0 HcmV?d00001 diff --git a/examples/vizdoom/results/c51/length.png b/examples/vizdoom/results/c51/length.png new file mode 100644 index 0000000000000000000000000000000000000000..e6315ba9336ff6290751797f9ffc5ef3e562c637 GIT binary patch literal 113576 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

jb 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%0AIu8C8Vpl=RTZ_>5LfW~F!YWdcSs3kYG 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�XO)}zOc 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 M(u4{?8L21Z!d}NSw|-N1oPBVAqW%)1LO4=DL}} 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 env.spec.reward_threshold + elif 'Pong' in args.task: + return mean_rewards >= 20 + else: + return False + + def train_fn(epoch, env_step): + # nature DQN setting, linear decay in the first 1M steps + if env_step <= 1e6: + eps = args.eps_train - env_step / 1e6 * \ + (args.eps_train - args.eps_train_final) + else: + eps = args.eps_train_final + policy.set_eps(eps) + logger.write('train/eps', env_step, eps) + + def test_fn(epoch, env_step): + policy.set_eps(args.eps_test) + + # watch agent's performance + def watch(): + print("Setup test envs ...") + policy.eval() + policy.set_eps(args.eps_test) + test_envs.seed(args.seed) + if args.save_buffer_name: + print(f"Generate buffer with size {args.buffer_size}") + buffer = VectorReplayBuffer( + args.buffer_size, buffer_num=len(test_envs), + ignore_obs_next=True, save_only_last_obs=True, + stack_num=args.frames_stack) + collector = Collector(policy, test_envs, buffer, + exploration_noise=True) + result = collector.collect(n_step=args.buffer_size) + print(f"Save buffer into {args.save_buffer_name}") + # Unfortunately, pickle will cause oom with 1M buffer size + buffer.save_hdf5(args.save_buffer_name) + else: + print("Testing agent ...") + test_collector.reset() + result = test_collector.collect(n_episode=args.test_num, + render=args.render) + rew = result["rews"].mean() + lens = result["lens"].mean() * args.skip_num + print(f'Mean reward (over {result["n/ep"]} episodes): {rew}') + print(f'Mean length (over {result["n/ep"]} episodes): {lens}') + + if args.watch: + watch() + exit(0) + + # test train_collector and start filling replay buffer + train_collector.collect(n_step=args.batch_size * args.training_num) + # trainer + result = offpolicy_trainer( + policy, train_collector, test_collector, args.epoch, + args.step_per_epoch, args.step_per_collect, args.test_num, + args.batch_size, train_fn=train_fn, test_fn=test_fn, + stop_fn=stop_fn, save_fn=save_fn, logger=logger, + update_per_step=args.update_per_step, test_in_train=False) + + pprint.pprint(result) + watch() + + +if __name__ == '__main__': + test_c51(get_args()) diff --git a/setup.py b/setup.py index 284ae0f..8104892 100644 --- a/setup.py +++ b/setup.py @@ -55,7 +55,7 @@ setup( ], extras_require={ "dev": [ - "Sphinx", + "sphinx<4", "sphinx_rtd_theme", "sphinxcontrib-bibtex", "flake8", diff --git a/test/modelbased/test_psrl.py b/test/modelbased/test_psrl.py index d89a7f4..ffeb6b9 100644 --- a/test/modelbased/test_psrl.py +++ b/test/modelbased/test_psrl.py @@ -22,7 +22,7 @@ def get_args(): parser.add_argument('--step-per-epoch', type=int, default=1000) parser.add_argument('--episode-per-collect', type=int, default=1) parser.add_argument('--training-num', type=int, default=1) - parser.add_argument('--test-num', type=int, default=100) + parser.add_argument('--test-num', type=int, default=10) parser.add_argument('--logdir', type=str, default='log') parser.add_argument('--render', type=float, default=0.0) parser.add_argument('--rew-mean-prior', type=float, default=0.0) @@ -36,12 +36,12 @@ def get_args(): def test_psrl(args=get_args()): env = gym.make(args.task) if args.task == "NChain-v0": - env.spec.reward_threshold = 3647 # described in PSRL paper + env.spec.reward_threshold = 3400 + # env.spec.reward_threshold = 3647 # described in PSRL paper print("reward threshold:", env.spec.reward_threshold) args.state_shape = env.observation_space.shape or env.observation_space.n args.action_shape = env.action_space.shape or env.action_space.n # train_envs = gym.make(args.task) - # train_envs = gym.make(args.task) train_envs = DummyVectorEnv( [lambda: gym.make(args.task) for _ in range(args.training_num)]) # test_envs = gym.make(args.task) diff --git a/tianshou/__init__.py b/tianshou/__init__.py index 84cc007..fb362d0 100644 --- a/tianshou/__init__.py +++ b/tianshou/__init__.py @@ -1,7 +1,7 @@ from tianshou import data, env, utils, policy, trainer, exploration -__version__ = "0.4.1" +__version__ = "0.4.2" __all__ = [ "env", diff --git a/tianshou/data/batch.py b/tianshou/data/batch.py index 55a00da..f0ce76c 100644 --- a/tianshou/data/batch.py +++ b/tianshou/data/batch.py @@ -526,7 +526,12 @@ class Batch: elif all(isinstance(e, (Batch, dict)) for e in v): # third often self.__dict__[k] = Batch.stack(v, axis) else: # most often case is np.ndarray - self.__dict__[k] = _to_array_with_correct_type(np.stack(v, axis)) + try: + self.__dict__[k] = _to_array_with_correct_type(np.stack(v, axis)) + except ValueError: + warnings.warn("You are using tensors with different shape," + " fallback to dtype=object by default.") + self.__dict__[k] = np.array(v, dtype=object) # all the keys keys_total = set.union(*[set(b.keys()) for b in batches]) # keys that are reserved in all batches diff --git a/tianshou/data/buffer/base.py b/tianshou/data/buffer/base.py index 4189207..1c8fc61 100644 --- a/tianshou/data/buffer/base.py +++ b/tianshou/data/buffer/base.py @@ -53,6 +53,7 @@ class ReplayBuffer: self._save_only_last_obs = save_only_last_obs self._sample_avail = sample_avail self._meta: Batch = Batch() + self._ep_rew: Union[float, np.ndarray] self.reset() def __len__(self) -> int: diff --git a/tianshou/data/collector.py b/tianshou/data/collector.py index 14f6f56..f9fede5 100644 --- a/tianshou/data/collector.py +++ b/tianshou/data/collector.py @@ -56,7 +56,8 @@ class Collector(object): exploration_noise: bool = False, ) -> None: super().__init__() - if not isinstance(env, BaseVectorEnv): + if isinstance(env, gym.Env) and not hasattr(env, "__len__"): + warnings.warn("Single environment detected, wrap to DummyVectorEnv.") env = DummyVectorEnv([lambda: env]) self.env = env self.env_num = len(env) @@ -223,7 +224,8 @@ class Collector(object): # get bounded and remapped actions first (not saved into buffer) action_remap = self.policy.map_action(self.data.act) # step in env - obs_next, rew, done, info = self.env.step(action_remap, id=ready_env_ids) + obs_next, rew, done, info = self.env.step( + action_remap, ready_env_ids) # type: ignore self.data.update(obs_next=obs_next, rew=rew, done=done, info=info) if self.preprocess_fn: @@ -426,7 +428,8 @@ class AsyncCollector(Collector): # get bounded and remapped actions first (not saved into buffer) action_remap = self.policy.map_action(self.data.act) # step in env - obs_next, rew, done, info = self.env.step(action_remap, id=ready_env_ids) + obs_next, rew, done, info = self.env.step( + action_remap, ready_env_ids) # type: ignore # change self.data here because ready_env_ids has changed ready_env_ids = np.array([i["env_id"] for i in info]) diff --git a/tianshou/policy/imitation/discrete_crr.py b/tianshou/policy/imitation/discrete_crr.py index f5b203f..05e4b26 100644 --- a/tianshou/policy/imitation/discrete_crr.py +++ b/tianshou/policy/imitation/discrete_crr.py @@ -75,8 +75,8 @@ class DiscreteCRRPolicy(PGPolicy): self._min_q_weight = min_q_weight def sync_weight(self) -> None: - self.actor_old.load_state_dict(self.actor.state_dict()) # type: ignore - self.critic_old.load_state_dict(self.critic.state_dict()) # type: ignore + self.actor_old.load_state_dict(self.actor.state_dict()) + self.critic_old.load_state_dict(self.critic.state_dict()) def learn(self, batch: Batch, **kwargs: Any) -> Dict[str, float]: # type: ignore if self._target and self._iter % self._freq == 0: diff --git a/tianshou/policy/modelfree/dqn.py b/tianshou/policy/modelfree/dqn.py index e52af9e..929512b 100644 --- a/tianshou/policy/modelfree/dqn.py +++ b/tianshou/policy/modelfree/dqn.py @@ -72,7 +72,7 @@ class DQNPolicy(BasePolicy): def sync_weight(self) -> None: """Synchronize the weight for the target network.""" - self.model_old.load_state_dict(self.model.state_dict()) # type: ignore + self.model_old.load_state_dict(self.model.state_dict()) def _target_q(self, buffer: ReplayBuffer, indice: np.ndarray) -> torch.Tensor: batch = buffer[indice] # batch.obs_next: s_{t+n} diff --git a/tianshou/policy/modelfree/trpo.py b/tianshou/policy/modelfree/trpo.py index a778173..b0ba63f 100644 --- a/tianshou/policy/modelfree/trpo.py +++ b/tianshou/policy/modelfree/trpo.py @@ -64,6 +64,7 @@ class TRPOPolicy(NPGPolicy): self._max_backtracks = max_backtracks self._delta = max_kl self._backtrack_coeff = backtrack_coeff + self._optim_critic_iters: int def learn( # type: ignore self, batch: Batch, batch_size: int, repeat: int, **kwargs: Any diff --git a/tianshou/utils/log_tools.py b/tianshou/utils/log_tools.py index 2a8d3a2..5a25f13 100644 --- a/tianshou/utils/log_tools.py +++ b/tianshou/utils/log_tools.py @@ -88,7 +88,7 @@ class BasicLogger(BaseLogger): You can also rewrite write() func to use your own writer. :param SummaryWriter writer: the writer to log data. - :param int train_interval: the log interval in log_train_data(). Default to 1. + :param int train_interval: the log interval in log_train_data(). Default to 1000. :param int test_interval: the log interval in log_test_data(). Default to 1. :param int update_interval: the log interval in log_update_data(). Default to 1000. :param int save_interval: the save interval in save_data(). Default to 1 (save at @@ -98,7 +98,7 @@ class BasicLogger(BaseLogger): def __init__( self, writer: SummaryWriter, - train_interval: int = 1, + train_interval: int = 1000, test_interval: int = 1, update_interval: int = 1000, save_interval: int = 1,