Skip to content

Commit

Permalink
Merge pull request #94 from Unity-Technologies/fix-21
Browse files Browse the repository at this point in the history
Hotfix release - v2.1
  • Loading branch information
awjuliani authored May 21, 2019
2 parents d31de13 + c73276e commit f121d5a
Show file tree
Hide file tree
Showing 5 changed files with 34 additions and 30 deletions.
11 changes: 7 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,9 @@ To learn more, please read our AAAI Workshop paper:
* Additional visual themes, obstacles, enemy types, and floor difficulties added.
* Additional reset parameters added to customize generated towers. Go [here](./reset-parameters.md) for details on the parameters and their values.
* Various bugs fixed and performance improvements.
* v2.1 Hotfix release.
* Resolves issue with new seeds not being applied on `env.reset`.
* Resolves issue with underspecified observation space.


## Installation
Expand All @@ -53,11 +56,11 @@ Python dependencies (also in [setup.py](https://github.com/Unity-Technologies/ob

| *Platform* | *Download Link* |
| --- | --- |
| Linux (x86_64) | https://storage.googleapis.com/obstacle-tower-build/v2.0/obstacletower_v2.0_linux.zip |
| Mac OS X | https://storage.googleapis.com/obstacle-tower-build/v2.0/obstacletower_v2.0_osx.zip |
| Windows | https://storage.googleapis.com/obstacle-tower-build/v2.0/obstacletower_v2.0_windows.zip |
| Linux (x86_64) | https://storage.googleapis.com/obstacle-tower-build/v2.1/obstacletower_v2.1_linux.zip |
| Mac OS X | https://storage.googleapis.com/obstacle-tower-build/v2.1/obstacletower_v2.1_osx.zip |
| Windows | https://storage.googleapis.com/obstacle-tower-build/v2.1/obstacletower_v2.1_windows.zip |

For checksums on these files, see [here](https://storage.googleapis.com/obstacle-tower-build/v1.3/ote-v1.3-checksums.txt).
For checksums on these files, see [here](https://storage.googleapis.com/obstacle-tower-build/v2.1/ote-v2.1-checksums.txt).

### Install the Gym interface

Expand Down
40 changes: 20 additions & 20 deletions examples/basic_usage.ipynb

Large diffs are not rendered by default.

6 changes: 3 additions & 3 deletions examples/gcp_training.md
Original file line number Diff line number Diff line change
Expand Up @@ -107,8 +107,8 @@ cd ../
This page lists the URLs for downloading Obstacle Tower for various platforms. [https://github.com/Unity-Technologies/obstacle-tower-env](https://github.com/Unity-Technologies/obstacle-tower-env). For GCP, run

```bash
wget https://storage.googleapis.com/obstacle-tower-build/v2.0/obstacletower_v2.0_linux.zip
unzip obstacletower_v2.0_linux.zip
wget https://storage.googleapis.com/obstacle-tower-build/v2.1/obstacletower_v2.1_linux.zip
unzip obstacletower_v2.1_linux.zip
```

### Install Dopamine
Expand Down Expand Up @@ -157,7 +157,7 @@ cp dopamine_otc/unity_lib.py dopamine/dopamine/discrete_domains/unity_lib.py
cp dopamine_otc/rainbow_otc.gin dopamine/dopamine/agents/rainbow/configs/rainbow_otc.gin
```

If you didn’t extract the `obstacletower_v2.0_linux.zip` to the home directory, you will need to edit `rainbow_otc.gin`, specifically `create_otc_environment.environment_path` should correspond to the path to your extracted OTC executable file.
If you didn’t extract the `obstacletower_v2.1_linux.zip` to the home directory, you will need to edit `rainbow_otc.gin`, specifically `create_otc_environment.environment_path` should correspond to the path to your extracted OTC executable file.

Furthermore, within this file you will find settings on how long to train for, and how often to evaluate your agent. Each iteration, Dopamine will train for `Runner.training_steps`, evaluate (i.e. run in inference mode) for `Runner.evaluation_steps`, record these results, and checkpoint the agent. It will repeat this process `Runner.num_iterations` number of times before quitting. For instance, you can change `Runner.num_iterations` to 40 to train for 10 million steps. You can also reduce `Runner.evaluation_steps` to reduce the time spent not training. There are other hyperparameters found in this file, which you can modify to improve performance. But for the sake of this exercise, you may leave them as-is.

Expand Down
5 changes: 3 additions & 2 deletions obstacle_tower_env.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ class UnityGymException(error.Error):


class ObstacleTowerEnv(gym.Env):
ALLOWED_VERSIONS = ['2.0']
ALLOWED_VERSIONS = ['2.0', '2.1']

def __init__(self, environment_filename=None, docker_training=False, worker_id=0, retro=True,
timeout_wait=30, realtime_mode=False, config=None, greyscale=False):
Expand Down Expand Up @@ -140,8 +140,9 @@ def __init__(self, environment_filename=None, docker_training=False, worker_id=0
max_float = np.finfo(np.float32).max
keys_space = spaces.Discrete(5)
time_remaining_space = spaces.Box(low=0.0, high=max_float, shape=(1,), dtype=np.float32)
floor_space = spaces.Discrete(9999)
self._observation_space = spaces.Tuple(
(image_space, keys_space, time_remaining_space)
(image_space, keys_space, time_remaining_space, floor_space)
)

def done_grading(self):
Expand Down
2 changes: 1 addition & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

setup(
name='obstacle_tower_env',
version='2.0',
version='2.1',
author='Unity Technologies',
url='https://github.com/Unity-Technologies/obstacle-tower-env',
py_modules=["obstacle_tower_env"],
Expand Down

0 comments on commit f121d5a

Please sign in to comment.