Git Product home page Git Product logo

planning-multi-robot-gym's Introduction

Planning Multi-Robot Gym

A Gymnasium environment for simulating multi-robot planning. This environment is an implementation of the task to plan for multiple robots to reach a target location, avoiding obstacles in their path. The implementation of the environment logic and graphics was based on this code written by Andrew Davison.

This environment simulates the movements of multiple robots in an environment with barriers and a target. The robots are controlled by the actions given by an agent. The observations received by the agent includes information about the position, velocity and orientation of each robot, the future position of the target and the future position of the obstacles. The goal of the agent is to navigate the robots to the target while avoiding collisions with the obstacles.

Installation

This package is not yet on PyPi so a local installation is required:

git clone https://github.com/riiswa/planning-multi-robot-gym
cd planning-multi-robot-gym
pip install -e .

Usage

import planning_multi_robot_gym

# There are many adjustable parameters for this environment, please refer to the brief documentation in the code.
env = planning_multi_robot_gym.make("PlanningMultiRobot-v0", render_mode="human", n_robots=5, n_barriers=80)

observation, info = env.reset(seed=42)

for _ in range(1000):
    action = ... # Your policy
    observation, reward, terminated, truncated, info = env.step(action)
    env.render()
    if terminated or truncated:
        observation, info = env.reset()

env.close()

Help wanted

Here is a non-exhaustive list of tasks for people who would be interested in contributing to this repository:

  • Write documentation;
  • Add tests;
  • Create new agents;
  • Improve performance (e.g. by vectorizing some calculations).

planning-multi-robot-gym's People

Contributors

corentinlger avatar riiswa 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.