Skip to content

Path Planning algorithms for Unmanned Aerial Vehicles both fixed-wing and quad-rotor type. Implementation of Rapidly-exploring Random Tree (RRT) for waypoint generation and Java based Graphical User Interface for human interaction.

Notifications You must be signed in to change notification settings

BhavyanshM/Algorithms

 
 

Repository files navigation

Algorithms

Air Team, Unmanned Systems, ECE-UWF

This repository is a collection of algorithms used by the Air Team at the University of West Florida for different parts of the SUAS project such as Motion Planning, Obstacle Avoidance, Object Detection and Classification, etc.

Deep Reinforcement Learning (Deep Q-Network)

This project offers a Deep Reinforcement Learning solution to the Dynamic Obstacle Avoidance and Path-Planning problem for Unmanned Aerial Vehicles. A Deep Q-Network Agent is trained in a JavaFX 2D simulator using the same technique used by DeepMind to train agents that can play Atari 2600 games. The program also employs a Rapidly-exploring Random Tree (RRT) as a basis to distinguish between traversible and non-traversible regions in the airspace. It basically eliminates Static Obstacles from the problem.

Rapidly-Exploring Random Tree (RRT)

Rapidly-Exploring Random Tree (RRT) is a probabilistically complete and computationally efficient algorithm used for path planning in Robotics. This repository contains a basic RRT implemented in Java.

The following image shows a snapshot of the Graphical User Interface of the system. This interface provides the selection and deployment of algorithms and simulators used for training the agents for obstacle avoidance.

Screenshot

This project is an initiative towards creating a platform for anyone to test Deep Reinforcement Learning agents in a simulator.

About

Path Planning algorithms for Unmanned Aerial Vehicles both fixed-wing and quad-rotor type. Implementation of Rapidly-exploring Random Tree (RRT) for waypoint generation and Java based Graphical User Interface for human interaction.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 79.0%
  • Python 19.0%
  • Shell 1.3%
  • CSS 0.7%