GithubHelp home page GithubHelp logo

royelkabetz / rl_algorithms Goto Github PK

View Code? Open in Web Editor NEW
0.0 2.0 2.0 12.78 MB

The current repository contains Jupytre-notebook implementations of different Reinforcement Learning algorithms from the well-known Introduction to Reinforcement Learning book by Sutton & Barto, and algorithms from iconic papers in the field.

Jupyter Notebook 100.00% Dockerfile 0.01%
jupyter-notebook python pytorch reinforcement-learning reinforcement-learning-algorithms

rl_algorithms's Introduction

rl algorithms

This repository contains Jupyter notebooks of different Reinforcement Learning (RL) algorithms implementations. Each notebook implements a single RL algorithm in a self-contained and complete manner.

Docker:

In order to use Docker you should first build the image by running the following Shell command in the repository directory.

docker build -t rl_alg:latest .

Then, run the following command to create a container out of that image, connect it to port 8888 (the Jupyter port), and bind the notebooks directory in the container to the notebooks directory on the host (on your machine).

docker run -d -p 8888:8888 -v ./notebooks:app/notebooks rl_alg

Finally, open a browser on your local machine and go to

localhost:8888

and enter in the Jupyter password the word admin. A Jupyter-Lab interface should open with a locally mounted notebooks directory in it.

List of implemented algorithms:

List of Notebooks

Name Description Link Colab NBViewer
REINFORCE.ipynb Implementation of the REINFORCE and REINFORCE with baseline algorithms using PyTorch and Gymnasium on the LunarLander-v2 environment notebook Open In Collab nbviewer
REINFORCE_continuous.ipynb Implementation of the REINFORCE and REINFORCE with baseline algorithms for environments with continuous action spaces using PyTorch and Gymnasium on the LunarLander-v2 continuous environment notebook Open In Collab nbviewer
Actor_Critic_TD_0.ipynb Implementation of the Actor-Critic TD(0) algorithm for environments with discrete and continuous action spaces using PyTorch and Gymnasium on the LunarLander-v2 environment notebook Open In Collab nbviewer
SARSA.ipynb Implementation of the SARSA algorithm with and without an Experience Replay Buffer using PyTorch and Gymnasium on the CartPole-v1 environment notebook Open In Collab nbviewer
Q-Learning.ipynb Implementation of the Q-Learning algorithm with and without an Experience Replay Buffer using PyTorch and Gymnasium on the Acrobot-v1 environment notebook Open In Collab nbviewer
Expected_SARSA.ipynb Implementation of the Expected-SARSA algorithm using PyTorch and Gymnasium on the Acrobot-v1 environment notebook Open In Collab nbviewer
Double_Q-Learning.ipynb Implementation of the Double Q-Learning vs. Q-Learning algorithms using PyTorch and Gymnasium on the Acrobot-v1 environment notebook Open In Collab nbviewer
SARSA_n_step_tabular.ipynb Implementation of the n-steps SARSA algorithm in its tabular version using Gymnasium on the CliffWalking-v0 environment notebook Open In Collab nbviewer
SARSA_n_step.ipynb Implementation of the n-steps SARSA algorithm in its non-tabular version using PyTorch and Gymnasium on the CartPole-v1 environment notebook Open In Collab nbviewer
Off_policy_Expected_SARSA_n_step.ipynb Implementation of the Off-policy n-steps Expected-SARSA algorithm in its non-tabular version using PyTorch and Gymnasium on the CartPole-v1 environment notebook Open In Collab nbviewer
SARSA_lambda.ipynb Implementations of the SARSA(λ) algorithm in its tabular and deep cases, with and without an Experience Replay Buffer using PyTorch and Gymnasium on the CliffWalking-v0 and CartPole-v1 environments notebook Open In Collab nbviewer

rl_algorithms's People

Contributors

royelkabetz avatar

Watchers

Kostas Georgiou avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.