Inspiration
We were inspired by search-and-rescue struggles after disasters, where modern technology is slow and expensive to deploy. We wanted to create software that's easy to upload and will swarm through a disaster zone and find all of the survivors faster and more efficiently than current methods.
What it does
Our simulated drones fly through a real life environment looking for survivors who don't have GPS, randomly placed around a 250 meter x 250 meter rubble city. Using reinforced learning our drones trained themselves to learn how to navigate the city the most efficiently, by mapping shared coverage, covering ground as fast as possible, and marking survivors that have been found.
How we built it
The stack we used was Python, NumPy, PyBullet for the 3D world, PettingZoo/Gymnasium for a multi-drone environment, and PyTorch MAPPO, a multi-agent PPO that is the head of our reinforced learning model. We began by testing in 2D, which after some time proved successful, and then transferred to 3D models. We continued making improvements and changes until we were satisfied with our environment, the drone movements, and the overall experience.
Challenges we ran into
Testing in 2D challenged us with edge cases. Testing in cities created challenges of moving around buildings and through streets. Transferring to 3D created many challenges like adding vertical movement, camera angles, and simulation runtimes. We had difficulty perfecting our reward systems to perform exactly how we wanted it to.
Accomplishments that we're proud of
We're able to find 80% of survivors and cover 80% of the area of our disaster zone extremely quickly. As a novel software we are extremely proud of this and are certain that with more time and effort in this project we could reach 100% coverage, survivors found, and even better efficiency.
What we learned
Multi-agent RL has many factors in it we never expected to account for. We learned how to use reinforced learning to accomplish our tasks, how to simulate cities, how to use AI to implement changes in our database. We learned about UI and usability and how that improves a project. We learned a lot about the different challenges real search-and-rescue teams face and had to figure out how to combat those things.
What's next for Disaster Drones
We are hoping to continue improving our learning model and environment to increase efficiency, speed and usability. Soon we want to publish this software for search and rescue teams around the country, and one day the world.
Log in or sign up for Devpost to join the conversation.