mpc_drones
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
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (10.4%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: PatrickYang-5
- License: mit
- Language: Python
- Default Branch: main
- Size: 1010 KB
Statistics
- Stars: 9
- Watchers: 1
- Forks: 1
- Open Issues: 1
- Releases: 0
Metadata Files
README.md
MPC for Multi-UAVs
This is the repository containing the Linear MPC codes used for Multi-UAVs.
Installation
On macOS and Ubuntu
```sh cd gym-pybullet-drones/
conda create -n drones python=3.10 conda activate drones
pip3 install --upgrade pip
pip3 install -e . # if needed, sudo apt install build-essential to install gcc and build pybullet
```
On Windows
Requirements
Download Visual Studio and C++ 14.0 - We recommend the free Community version - Select "Desktop development with C++"
Download Python 3 - Note: we used the Windows x86-64 installer on Windows 10 Home
Download a Python IDE - We recommend PyCharm Community - Select all the options in the installer and reboot
Installation
Download the code, unzip and open the project in PyCharm
To run code you may need to configure PyCharm.
- Go to File->Settings and Select Your dictionary->Python Interpreter
- Select the
+
Type
numpyand click "Install package".Type
matplotliband click "Install package".Type
pybulletand click "Install package".Type
gymand click "Install package".Type
Pillowand click "Install package".Type
Cyclerand click "Install package".Type
cvxpyand click "Install package".Type
pytransform3dand click "Install package".Type
open3dand click "Install package".
Run
The demos for MPC are located in folder gym_pybullet_drones/demo, named RegularMPC and OutputMPC
RegularMPC.py
A sample program for testing regular MPC, which can be used for a single drone or multiple drones, but does not incorporate multi-drone interaction.
OutputMPC.py
A sample program is used to test output MPC, which can be used for a single UAV or for multiple UAVs, where the constraints between the UAVs can be adjusted to soft and hard constraints.
Contact
This program is tested in Linux 20.04 and MacOS with M1 chip, if there are solving errors please try to adjust the weight matrix, prediction intervals and soft constraint weights, or contact the author for feedback on the problem.
Owner
- Login: PatrickYang-5
- Kind: user
- Repositories: 1
- Profile: https://github.com/PatrickYang-5
Citation (CITATION.cff)
cff-version: 1.2.0
preferred-citation:
type: article
authors:
- family-names: "Panerati"
given-names: "Jacopo"
orcid: "https://orcid.org/0000-0003-2994-5422"
- family-names: "Zheng"
given-names: "Hehui"
orcid: "https://orcid.org/0000-0002-4977-0220"
- family-names: "Zhou"
given-names: "SiQi"
- family-names: "Xu"
given-names: "James"
- family-names: "Prorok"
given-names: "Amanda"
orcid: "https://orcid.org/0000-0001-7313-5983"
- family-names: "Schoellig"
given-names: "Angela P."
orcid: "https://orcid.org/0000-0003-4012-4668"
doi: "10.0000/00000"
journal: "2021 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)"
month: 1
start: 1 # First page number
end: 8 # Last page number
title: "Learning to Fly---a Gym Environment with PyBullet Physics for Reinforcement Learning of Multi-agent Quadcopter Control"
issue: 1
volume: 1
year: 2021
GitHub Events
Total
- Watch event: 4
Last Year
- Watch event: 4
Dependencies
- gymnasium ^0.28
- matplotlib ^3.7
- numpy ^1.24
- pybullet ^3.2.5
- pytest ^7.3
- python ^3.10
- scipy ^1.10
- stable-baselines3 ^2.0.0
- transforms3d ^0.4.1