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 (13.4%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Basic Info
  • Host: GitHub
  • Owner: dsdy120
  • License: mit
  • Language: Python
  • Default Branch: aer1217-course-project
  • Size: 3.82 MB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 1
  • Releases: 0
Created 11 months ago · Last pushed 10 months ago
Metadata Files
Readme License Citation

README.md

AER1217 Final Project

Description

Drone racing has become a popular sport in which professional human pilots fly small quadrotors through complex tracks at high speeds. Combining cutting-edge robotics technology and high-speed competition, drone racing is creating a new era of sports in the physical world, virtual environments, and the metaverse. Human pilots undergo years of training to master the sensorimotor skills involved in drone racing competitions. Today, robotics researchers are developing autonomous algorithms to achieve or even outperform expert human pilots in racing competitions. A key challenge is planning a time-optimal trajectory to complete the task while satisfying certain constraints. In the final project, we will hold an autonomous drone racing competition, which emphasizes the motion planning problem in robotics.

The final project includes two phases: - In the first phase, you are given a Pybullet simulation environment to develop the algorithm. The task is to design a planning algorithm to navigate, as fast as possible, through the four gates and reach the target point while avoiding obstacles. The sequence of the gates will be provided during the project demonstration day. In the simulation, we provide accurate pose measurements of the quadrotor, positions of the gates, interfaces to a low-level controller, and noisy positions of the obstacles. You are required to show that the proposed algorithm can safely navigate the quadrotor through the gates while dealing with the uncertainties of the obstacles.

  • In the second phase, we will execute the algorithm you developed in a real-world experimental setup. We will check if the proposed algorithm can navigate safely to the target point and the amount of time it takes to complete the task.

Install on Ubuntu

We recommend Ubuntu 20.04 on a mid-tier laptop and GPU (e.g., a Lenovo P52 with i7-8850H/Quadro P2000)

bash git clone https://github.com/utiasDSL/safe-control-gym.git cd safe-control-gym git checkout aer1217-course-project

Create and access a Python 3.8 environment using conda

bash conda create -n aer1217-project python=3.8 conda activate aer1217-project

Install the safe-control-gym repository

bash pip install --upgrade pip pip install -e .

Install pycffirmware

bash cd .. git clone https://github.com/utiasDSL/pycffirmware.git cd pycffirmware/ git submodule update --init --recursive sudo apt update sudo apt -y install swig sudo apt install build-essential cd wrapper/ chmod +x build_linux.sh ./build_linux.sh

Getting Started

Run the scripts in aer-course-project/

bash cd ../../safe-control-gym/aer-course-project/ python3 final_project.py --overrides ./getting_started.yaml

Modify file edit_this.py to customize your controller based on Crazyswarm's Crazyflie interface


University of Toronto's Dynamic Systems Lab / Vector Institute for Artificial Intelligence

Owner

  • Login: dsdy120
  • Kind: user

Citation (CITATION.cff)

cff-version: 1.2.0
preferred-citation:
  type: article
  authors:
  - family-names: "Brunke"
    given-names: "Lukas"
  - family-names: "Greeff"
    given-names: "Melissa"
  - family-names: "Hall"
    given-names: "Adam W."
  - family-names: "Yuan"
    given-names: "Zhaocong"
  - family-names: "Zhou"
    given-names: "SiQi"
  - family-names: "Panerati"
    given-names: "Jacopo"
    orcid: "https://orcid.org/0000-0003-2994-5422"
  - family-names: "Schoellig"
    given-names: "Angela P."
    orcid: "https://orcid.org/0000-0003-4012-4668"
  doi: "10.0000/00000"
  journal: "Annual Review of Control, Robotics, and Autonomous Systems"
  month: 1
  start: 1 # First page number
  end: 35 # Last page number
  title: "Safe Learning in Robotics: From Learning-Based Control to Safe Reinforcement Learning"
  issue: 1
  volume: 1
  year: 2021

GitHub Events

Total
  • Member event: 2
  • Push event: 90
  • Public event: 1
  • Pull request event: 1
  • Create event: 21
Last Year
  • Member event: 2
  • Push event: 90
  • Public event: 1
  • Pull request event: 1
  • Create event: 21

Dependencies

pyproject.toml pypi
  • Mosek ^9.3.14
  • Pillow ^9.0.0
  • PyYAML ^6.0
  • casadi ^3.5.5
  • cvxpy ^1.1.18
  • dict-deep ^4.1.2
  • gpytorch ^1.6.0
  • gym ^0.23.0
  • imageio ^2.14.1
  • matplotlib ^3.5.1
  • munch ^2.5.0
  • numpy ^1.22.1
  • pandas ^1.4.0
  • pybullet ^3.2.0
  • python ^3.8.10
  • ray ^1.9.2
  • rich ^12.5.1
  • scikit-optimize ^0.9.0
  • tensorboard ^2.8.0
  • termcolor ^1.1.0
  • torch ^1.10.2