Game of drones : dynamic trajectory planning and tracking in multi-player race

In this report we propose a solution to the Tier 1 task of Game of Drones – a simulation-based drone race organised by Microsoft Research [1]. Objective of the task was to fly a drone through a given series of gates with the minimum possible time, while avoiding collision with a competing drone and...

Full description

Bibliographic Details
Main Author: Fang, Meiyi
Other Authors: Huang Shell Ying
Format: Final Year Project (FYP)
Language:English
Published: Nanyang Technological University 2020
Subjects:
Online Access:https://hdl.handle.net/10356/138772
_version_ 1826109890224979968
author Fang, Meiyi
author2 Huang Shell Ying
author_facet Huang Shell Ying
Fang, Meiyi
author_sort Fang, Meiyi
collection NTU
description In this report we propose a solution to the Tier 1 task of Game of Drones – a simulation-based drone race organised by Microsoft Research [1]. Objective of the task was to fly a drone through a given series of gates with the minimum possible time, while avoiding collision with a competing drone and static obstacles. The simulator and the competition Application-Programming-Interface (API) were both provided by the organisers. Participants were required to implement their racing strategies based on the API in Python and verify these strategies in the simulator. Our solution focuses on three areas: trajectory planning, trajectory tracking, and collision avoidance. For trajectory planning, we used Cubic Hermite Spline interpolation through the gate centres. Tangents of spline segments were constrained with augmented gate orientations. A Pure Pursuit Controller and a Proportional-Integral-Derivative (PID) controller were used for trajectory tracking. We improved the Pure Pursuit Controller by scaling it with trajectory curvature to achieve more precise trajectory tracking. For collision avoidance, the trajectory was re-planned with new waypoints once opponent interference was detected. Our solution submitted for qualification flew the drone through all gates with a lap time of 121 seconds. After the competition, we continued to improve the solution. Eventually, our best lap time in the qualification round environment was reduced to 59 seconds. We continued to run the solution in the final round environment and improved it further. The final solution was able to fly the drone through all gates with a lap time of 74.8 seconds in the final round environment. Our experiments have shown that precise trajectory tracking was the key to solving the challenges in this task. Since the built-in opponent was moderately competitive, it was not difficult for the ego drone to surpass the opponent at the early stage of the race. To maintain this advantage, the ego drone should be able to precisely follow its planned trajectory at the maximum possible speed. With improved trajectory tracking, there would be more room for optimization in trajectory planning and collision avoidance. Therefore, a more robust trajectory tracker and trajectory planner can be developed in future studies.
first_indexed 2024-10-01T02:25:28Z
format Final Year Project (FYP)
id ntu-10356/138772
institution Nanyang Technological University
language English
last_indexed 2024-10-01T02:25:28Z
publishDate 2020
publisher Nanyang Technological University
record_format dspace
spelling ntu-10356/1387722020-05-12T08:48:53Z Game of drones : dynamic trajectory planning and tracking in multi-player race Fang, Meiyi Huang Shell Ying School of Computer Science and Engineering assyhuang@ntu.edu.sg Engineering::Computer science and engineering In this report we propose a solution to the Tier 1 task of Game of Drones – a simulation-based drone race organised by Microsoft Research [1]. Objective of the task was to fly a drone through a given series of gates with the minimum possible time, while avoiding collision with a competing drone and static obstacles. The simulator and the competition Application-Programming-Interface (API) were both provided by the organisers. Participants were required to implement their racing strategies based on the API in Python and verify these strategies in the simulator. Our solution focuses on three areas: trajectory planning, trajectory tracking, and collision avoidance. For trajectory planning, we used Cubic Hermite Spline interpolation through the gate centres. Tangents of spline segments were constrained with augmented gate orientations. A Pure Pursuit Controller and a Proportional-Integral-Derivative (PID) controller were used for trajectory tracking. We improved the Pure Pursuit Controller by scaling it with trajectory curvature to achieve more precise trajectory tracking. For collision avoidance, the trajectory was re-planned with new waypoints once opponent interference was detected. Our solution submitted for qualification flew the drone through all gates with a lap time of 121 seconds. After the competition, we continued to improve the solution. Eventually, our best lap time in the qualification round environment was reduced to 59 seconds. We continued to run the solution in the final round environment and improved it further. The final solution was able to fly the drone through all gates with a lap time of 74.8 seconds in the final round environment. Our experiments have shown that precise trajectory tracking was the key to solving the challenges in this task. Since the built-in opponent was moderately competitive, it was not difficult for the ego drone to surpass the opponent at the early stage of the race. To maintain this advantage, the ego drone should be able to precisely follow its planned trajectory at the maximum possible speed. With improved trajectory tracking, there would be more room for optimization in trajectory planning and collision avoidance. Therefore, a more robust trajectory tracker and trajectory planner can be developed in future studies. Bachelor of Engineering (Computer Science) 2020-05-12T08:48:53Z 2020-05-12T08:48:53Z 2020 Final Year Project (FYP) https://hdl.handle.net/10356/138772 en SCSE19-0288 application/pdf Nanyang Technological University
spellingShingle Engineering::Computer science and engineering
Fang, Meiyi
Game of drones : dynamic trajectory planning and tracking in multi-player race
title Game of drones : dynamic trajectory planning and tracking in multi-player race
title_full Game of drones : dynamic trajectory planning and tracking in multi-player race
title_fullStr Game of drones : dynamic trajectory planning and tracking in multi-player race
title_full_unstemmed Game of drones : dynamic trajectory planning and tracking in multi-player race
title_short Game of drones : dynamic trajectory planning and tracking in multi-player race
title_sort game of drones dynamic trajectory planning and tracking in multi player race
topic Engineering::Computer science and engineering
url https://hdl.handle.net/10356/138772
work_keys_str_mv AT fangmeiyi gameofdronesdynamictrajectoryplanningandtrackinginmultiplayerrace