This repository contains a resume of methodologies using in Reinforcement Learning. The following methods are included: -Basic concepts of Reinforcement Learning -Dynamical Programming -Models-Free-Methods -Models based on dqn -Models based on aproximate values -Using MCTS to simulate CartPole-v0 Python-Reinforcement-Learning Relevant for AI agent research
This repository provides a comprehensive summary of methodologies in Reinforcement Learning (RL), covering both theoretical foundations and practical implementations. It includes a variety of RL algorithms, ranging from dynamic programming techniques to deep reinforcement learning methods. The repository is particularly useful for AI agent research, providing implementations of value-based methods, policy-based learning, and Monte Carlo Tree Search (MCTS) simulations.
Explore fundamental and advanced RL methodologies to understand AI agent behavior. Implement model-free and model-based RL techniques for solving classic RL problems. Apply Deep Q-Networks (DQN) and function approximation methods to reinforcement learning tasks. Use Monte Carlo Tree Search (MCTS) for decision-making simulations in environments like CartPole-v0. Provide a structured framework for learning and experimenting with RL models.
Programming Language: Python Deep Learning & RL Libraries: TensorFlow, PyTorch, OpenAI Gym
Dynamic Programming (DP): Policy Iteration, Value Iteration Model-Free RL: Q-Learning, SARSA, Deep Q-Networks (DQN) Model-Based RL: Approximate Value Iteration, Policy Gradient Methods Tree Search: Monte Carlo Tree Search (MCTS) for decision-making
The repository contains several Jupyter Notebooks showcasing different RL techniques:
markov-decision-processes.ipynb – Introduction to MDPs and Bellman Equations. gym_interface.ipynb – Exploring OpenAI Gym for RL experiments. Bandit Problems: bandits.ipynb & Copy of bandits.ipynb – Multi-Armed Bandits and exploration-exploitation trade-offs. Dynamic Programming & Policy-Based Methods: practice_vi.ipynb – Value Iteration method. Sarsa.ipynb – SARSA (State-Action-Reward-State-Action) method. qlearning.ipynb – Q-Learning algorithm for model-free RL.
dqn_atari.ipynb & dqn_atari-1.ipynb – Deep Q-Network (DQN) applied to Atari games. Experiencia_replay.ipynb – Implementation of Experience Replay for stability. practice_approx_qlearning.ipynb – Approximate Q-Learning with function approximations. Crossentropy_method.ipynb & Deep_crossentropy_method.ipynb – Cross-entropy method for reinforcement learning. Policy Gradient & Actor-Critic Methods: Copy of practice_reinforce.ipynb & Practice_reinforce.ipynb – REINFORCE (policy gradient) algorithm. Monte Carlo Tree Search (MCTS) & Advanced Planning: Practice_mcts.ipynb – MCTS-based reinforcement learning.
distributed_backend_simple.ipynb – Simple backend implementation for distributed RL training.
Developed RL models that can effectively learn from simulation-based environments. Created structured implementations of both fundamental and deep RL methods. Implemented DQN-based AI agents with improved stability through experience replay. Showcased MCTS applications for action planning and decision-making. Provided a modular framework for researchers to experiment with RL algorithms.
The repository is structured with Jupyter Notebooks containing detailed implementations and explanations. Key files include:
Basic RL: markov-decision-processes.ipynb, gym_interface.ipynb Dynamic Programming: practice_vi.ipynb, Sarsa.ipynb, qlearning.ipynb Deep RL & Function Approximation: dqn_atari.ipynb, Experiencia_replay.ipynb, practice_approx_qlearning.ipynb Policy-Based & Monte Carlo Methods: Practice_reinforce.ipynb, Practice_mcts.ipynb Distributed Learning: distributed_backend_simple.ipynb