reinforcement-learning-in-robotics

Jupyter notebook for reinforcement learning algorithm comparison

https://github.com/pablo-caballero-maria/reinforcement-learning-in-robotics

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
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.6%) to scientific vocabulary

Keywords

algorithms artificial-intelligence reinforcement-learning
Last synced: 7 months ago · JSON representation ·

Repository

Jupyter notebook for reinforcement learning algorithm comparison

Basic Info
  • Host: GitHub
  • Owner: Pablo-Caballero-Maria
  • License: mit
  • Language: Jupyter Notebook
  • Default Branch: main
  • Homepage:
  • Size: 1.14 MB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Topics
algorithms artificial-intelligence reinforcement-learning
Created almost 2 years ago · Last pushed almost 2 years ago
Metadata Files
Readme License Code of conduct Citation Security

README.md

Reinforcement learning in robotics

Run Jupyter Notebook Tests Python MIT License Status

Table of contents 1. [Introduction](#introduction) 2. [Project structure](#project-structure) 3. [Setting Up a Virtual Environment](#setting-up-a-virtual-environment) 4. [Installing Dependencies](#installing-dependencies) 5. [Running the Project](#running-the-project) 6. [Contact data](#contact-data) 7. [License](LICENSE.md)

Introduction

Reinforcement learning is a type of machine learning where an agent learns to make decisions by interacting with an environment. The agent observes the rewards or penalties resulting from its actions and adjusts its behavior to maximize the total reward over time. This learning process is based on the feedback the agent receives from the environment.

This project applies reinforcement learning to the field of mobile robotics. The specific task is for a robot to plan a route in an environment that contains obstacles. The robot's goal is to reach its destination while minimizing the chance of colliding with any obstacles.

The project uses Markov Decision Processes (MDPs) as the underlying mathematical model for the interactions between the robot (the decision-making agent) and the environment. In an MDP, the agent makes decisions at each time step to maximize a performance measure, which in this case is the accumulated reward over time. The environment is stochastic, meaning there is some level of uncertainty or randomness involved in the outcomes of the robot's actions.

Several reinforcement learning algorithms, including Q-Learning, SARSA, and Monte Carlo algorithms, will be used and compared in this project. These algorithms use MDPs to model the environment and calculate optimal strategies for the robot. They learn iteratively from the robot's experiences, adjusting their action policies to maximize the expected reward. They balance learning and decision-making using techniques like exploration (trying out new actions to see their effects) and exploitation (using the current knowledge to make the best decision).

Project structure

  • resources: Other files used in the project
  • src/: This directory contains the source code of the project.
    • main.ipynb: Main script of the project.
    • Project statement.pdf: A longer statement of the project.
  • .gitignore: Folders not to include in the repository
  • README.md: A briefing of the project and how to run it.
  • requirements.txt: List of Python dependencies of the project.

Setting Up a Virtual Environment

To create a virtual environment, navigate to the project directory and run the following command:

bash python3 -m venv venv

This will create a new virtual environment in a folder named venv.

To activate the virtual environment, use the following command:

On Windows:

bash venv\Scripts\activate

On Unix or MacOS:

bash source venv/bin/activate

Installing Dependencies

Once the virtual environment is activated, you can install the project's dependencies using the requirements.txt file. Run the following command:

bash pip install -r requirements.txt

This will install all the necessary packages for this project.

Running the Project

To run each cell of the notebook, click the "play" button next to the cell:

Play button

Or simply click

bash shift enter

Contact data

If you have any request or inquiry, feel free to contact me at pabcabmar3@alum.us.es

Back to Top

Owner

  • Name: Pablo Caballero
  • Login: Pablo-Caballero-Maria
  • Kind: user

Software engineering student

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
title: "Reinforcement learning in mobile robotics"
authors:
  - family-names: "Caballero María"
    given-names: "Pablo"
date-released: 2024-06-03
url: "https://github.com/Pablo-Caballero-Maria/Reinforcement-learning-in-robotics"
version: "1.0.0"
license: "MIT"

GitHub Events

Total
Last Year

Committers

Last synced: 8 months ago

All Time
  • Total Commits: 38
  • Total Committers: 2
  • Avg Commits per committer: 19.0
  • Development Distribution Score (DDS): 0.026
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Pablo Caballero 9****a 37
alfalolan a****n@a****s 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 8 months ago

All Time
  • Total issues: 0
  • Total pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Total issue authors: 0
  • Total pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels