Skip to content

Latest commit

 

History

History
78 lines (57 loc) · 3.87 KB

README.md

File metadata and controls

78 lines (57 loc) · 3.87 KB

RAINBOW IS ALL WE NEED 🌈

gymnasium version numpy version opencv-python version torch version

Description

This project implements the Rainbow Deep Reinforcement Learning (DRL) algorithm, a state-of-the-art technique that combines several advancements in the field of reinforcement learning to achieve superior performance in a wide range of environments. Rainbow integrates multiple key innovations, including Double Q-learning, prioritized experience replay, dueling network architectures, multi-step learning, distributional reinforcement learning, and noisy nets, into a single, cohesive agent.

Getting started 🚀

To get started with this project, follow these steps to install the necessary dependencies. It is recommended to use a virtual environment to manage dependencies separately from your system's Python installation.

  1. Clone the repository

    git clone https://github.com/Manuelnkegoum-8/Rainbow_is_all_we_need.git
    cd your-project
  2. Set up a virtual environment (optional but recommended)

    • For Unix/Linux or MacOS:

      python3 -m venv venv
      source venv/bin/activate
    • For Windows:

      python -m venv venv
      .\venv\Scripts\activate
  3. Install the requirements

    pip install -r requirements.txt
  4. Usage

    • To run the training module with custom configurations, use the following command format. This example sets the game to "SpaceInvadersNoFrameskip-v4," the number of steps to 5 million, and the memory capacity to 100,000.
python  trainer.py --game SpaceInvaders --steps 5e6 --memory_capacity 1e5

Results 📊

Pacman Spaceinvaders Pong Phoenix Breakout

Acknowledgements 🙏

  • Thanks to the creators of the Rainbow algorithm and all the researchers whose work contributed to this powerful approach to deep reinforcement learning.
  • Special thanks to OpenAI for providing the baseline wrappers for Atari environments, which significantly simplify the process of preprocessing and setting up these environments for training.
  • This project uses OpenAI Gym for the environment simulations.

Authors 🧑‍💻

References 📄

[1] Rainbow: Combining Improvements in Deep Reinforcement Learning
[2] Distributional Reinforcement Learning with Quantile Regression
[3] Playing Atari with Deep Reinforcement Learning
[4] Deep Reinforcement Learning with Double Q-learning
[5] Prioritized Experience Replay
[6] Dueling Network Architectures for Deep Reinforcement Learning
[7] Reinforcement Learning: An Introduction
[8] A Distributional Perspective on Reinforcement Learning
[9] Noisy Networks for Exploration