buzz

Reinforcement learning agent for the lunar lander.

https://github.com/cm30359-group-2/buzz

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (9.5%) to scientific vocabulary
Last synced: 10 months ago · JSON representation ·

Repository

Reinforcement learning agent for the lunar lander.

Basic Info
  • Host: GitHub
  • Owner: CM30359-Group-2
  • License: mit
  • Language: Python
  • Default Branch: main
  • Homepage:
  • Size: 7.03 MB
Statistics
  • Stars: 0
  • Watchers: 0
  • Forks: 1
  • Open Issues: 0
  • Releases: 0
Created over 3 years ago · Last pushed over 3 years ago
Metadata Files
Readme License Citation

README.md

Buzz

Reinforcement learning approaches to the Lunar Lander OpenAI Gym environment.

Pre-requisites

Installation

  1. Clone the repository bash git clone https://github.com/CM30359-Group-2/buzz.git
  2. Install the dependencies bash pip install -r requirements.txt

Usage

Run the main script: bash python main.py Output will be saved to the same directory as the script.

Options

| Option | Description | Default | Required | | --- | --- | --- | --- | | -a or --agent | The agent to use. Options are dqn, ddqn, dqfd (requires pre-generated demos) and q-learning. | dqn | No | | -e or --episodes | The number of episodes to run for. | 1000 | No | | -s or --save-progress | Whether to save the agent's progress at regular intervals | False | No | | -d or --demos | The path to the demonstrations directory. Only required for dqfd agent. | None | No | | -c or --checkpoint | The path to the checkpoint to load during evaluation. | None | No | | -r or --render | Whether to render the environment. | False | No |

Plotting Results

Call the plot.py script from the scripts directory with the path to the results file as an argument: bash python plot.py dqfd2023-01-07_01-00-42.txt This will generate a plot of the results.

Generating Demonstrations

Call the demos.py script from the scripts directory. This will generate a folder in the root directory called demos containing the demonstrations. It takes two arguments: 1. The number of episodes to run (Note: this may be less than the number of demonstrations generated as only episodes where the environment is solved are saved) 2. The path to the checkpoint to load for the Q-learning agent bash python demos.py 1000 checkpoints/dict.pickle

Authors

License

MIT

Acknowledgements

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
  - family-names: Wood
    given-names: Max
  - family-names: Archibold
    given-names: Cameron
  - family-names: Grant
    given-names: Cameron
  - family-names: Bevan
    given-names: Rowan
title: "Buzz - Reinforcement Learning Agents for the Lunar Lander Environment"
version: 1.0.0
date-released: 2023-08-01
license: MIT
repository-code: "https://github.com/CM30359-Group-2/buzz"

GitHub Events

Total
Last Year

Dependencies

requirements.txt pypi
  • Pillow ==9.3.0
  • box2d-py ==2.3.5
  • certifi ==2022.9.24
  • charset-normalizer ==2.1.1
  • cloudpickle ==2.2.0
  • contourpy ==1.0.6
  • cycler ==0.11.0
  • decorator ==4.4.2
  • fonttools ==4.38.0
  • gym ==0.26.2
  • gym-notices ==0.0.8
  • idna ==3.4
  • imageio ==2.22.3
  • imageio-ffmpeg ==0.4.7
  • importlib-metadata ==5.0.0
  • kiwisolver ==1.4.4
  • lz4 ==4.0.2
  • matplotlib ==3.6.1
  • moviepy ==1.0.3
  • numpy ==1.23.4
  • opencv-python ==4.6.0.66
  • packaging ==21.3
  • proglog ==0.1.10
  • pygame ==2.1.0
  • pyparsing ==3.0.9
  • python-dateutil ==2.8.2
  • requests ==2.28.1
  • six ==1.16.0
  • swig ==4.1.0
  • tqdm ==4.64.1
  • urllib3 ==1.26.12
  • zipp ==3.10.0
docker/Dockerfile docker
  • bath 2022 build