Usage
- Install dependencies.
- Simply clone this repository and run ``python3 ExampleUse.py'' to get started!
Dependencies
Requires: - TF-Agents (0.16.0) - Pygame (2.1.0) - NumPy (1.23.5) - Matplotlib - OpenAI Gym (0.26.2) - Full list of dependencies at the bottom.
Project Structure
The code implementing the DCEO Algorithm is in DceoPolicy.py We provide some simple test environments in FourRooms.py (A classical FourRooms and NineRooms environment). HistoryHashTable contains code for a MutableHashTable (Tensorflow) for storing a history of state visitation. GenericOptionAgent provides code for using Options with Tf-Agents framework.
Side Note/Plagiarism Disclaimer
This code was submitted as part of a Master's Dissertation to the University of Bath (in case of plagiarism checking etc.).
Full Dependencies
The full list of pip-installed packages in the used conda environment is listed below: absl-py 1.4.0 astunparse 1.6.3 box2d-py 2.3.8 cachetools 5.3.0 certifi 2022.12.7 charset-normalizer 3.1.0 cloudpickle 2.2.1 contourpy 1.0.7 cycler 0.11.0 decorator 5.1.1 dm-tree 0.1.8 flatbuffers 23.3.3 fonttools 4.39.3 gast 0.4.0 gin-config 0.5.0 google-auth 2.17.3 google-auth-oauthlib 1.0.0 google-pasta 0.2.0 grpcio 1.54.0 gym 0.26.2 gym-notices 0.0.8 h5py 3.8.0 idna 3.4 jax 0.4.8 keras 2.12.0 kiwisolver 1.4.4 libclang 16.0.0 Markdown 3.4.3 MarkupSafe 2.1.2 matplotlib 3.7.1 ml-dtypes 0.1.0 numpy 1.23.5 oauthlib 3.2.2 opt-einsum 3.3.0 packaging 23.1 Pillow 9.5.0 pip 23.1.1 protobuf 4.22.3 pyasn1 0.5.0 pyasn1-modules 0.3.0 pygame 2.1.0 pyparsing 3.0.9 python-dateutil 2.8.2 requests 2.29.0 requests-oauthlib 1.3.1 rsa 4.9 scipy 1.10.1 setuptools 67.7.2 six 1.16.0 swig 4.1.1 tensorboard 2.12.2 tensorboard-data-server 0.7.0 tensorboard-plugin-wit 1.8.1 tensorflow-estimator 2.12.0 tensorflow-macos 2.12.0 tensorflow-metal 0.8.0 tensorflow-probability 0.19.0 termcolor 2.3.0 tf-agents 0.16.0 typing_extensions 4.5.0 urllib3 1.26.15 Werkzeug 2.3.2 wheel 0.40.0 wrapt 1.14.1