pymapf 0.1.3

Creator: bigcodingguy24

Last updated:

Add to Cart

Description:

pymapf 0.1.3

PyMAPF
✨ A Python toolbox for Multi-Agents Planning (Centralized and Decentralized) ✨












Report Bug Β· Request Feature
Loved the project? Please consider donating to help it improve!

Features 🌱

✨ Built to be expanded: easy to add new planners
πŸ–₯️ Supported on Ubuntu
🎌 Built with Python
πŸ”Ž Reactive Distributed Planners (Nonlinear Model Predictive Control, Velocity Obstacles)
🧭 Centralized Planners (Incoming...)
πŸ“Š Benchmark Tools (Incoming...)
🍻 Maintained (Incoming: Enhanced Conflict-Based Search, Cooperative A*, Local-Repair A*, Replanning RRT*...)




Dependencies πŸ–‡οΈ

Install Python (3.7.5 is the tested version)
Install Pip: sudo apt install python3-pip
Upgrade Pip: python3 -m pip install --upgrade pip

Using the repository πŸ’Ύ

Clone the repo: git clone https://github.com/apla-toolbox/pymapf
Cd into the repo cd pymapf
Install requirements: python3 -m pip install -r requirements.txt

Using the pip package πŸ“¦

Install the package: python3 -m pip install pymapf

Usage πŸ“‘
Scripts πŸ’¨
Launch hub switch scripts using:

python3 scripts/switch_positions_nmpc.py
python3 scripts/switch_positions_vel_obstacles.py (broken)

More to come...
Library πŸ—ΊοΈ
from pymapf.decentralized import MultiAgentNMPC
from pymapf.decentralized.position import Position
import numpy as np

sim = MultiAgentNMPC()
sim.register_agent("r2d2", Position(0, 3), Position(10, 7))
sim.register_agent("bb8", Position(0, 7), Position(5, 10))
sim.register_agent("c3po", Position(10, 7), Position(5, 0))
sim.register_obstacle(2, np.pi/4, Position(0, 0))
sim.run_simulation()
sim.visualize("filename_test", 10, 10)

from pymapf.decentralized.velocity_obstacle import MultiAgentVelocityObstacle
from pymapf.decentralized.position import Position

sim = MultiAgentVelocityObstacle(simulation_time=8.0)
sim.register_agent("r2d2", Position(0, 3), Position(10, 7))
sim.register_agent("bb8", Position(0, 7), Position(5, 10))
sim.register_agent("c3po", Position(10, 7), Position(5, 0))
sim.run_simulation()
sim.visualize("filename_test_2", 10, 10)

Cite πŸ“°
If you use the project in your work, please consider citing it with:
@misc{pymapf,
author = {Erwin Lejeune},
title = {PyMAPF: a python library for multi-agent pathfinding},
year = {2021},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/APLA-Toolbox/pymapf}}
}

List of publications & preprints using pymapf (please open a pull request to add missing entries):

Survey of MAPF solutions (January 2021)

Contribute πŸ†˜
Open an issue to state clearly the contribution you want to make. Upon aproval send in a PR with the Issue referenced. (Implement Issue #No / Fix Issue #No).
Maintainers Ⓜ️

Erwin Lejeune
Sampreet Sarkar

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.