This project involved designing and implementing a rescue drone control system for ACME Corp’s Outer Wilds department, focusing on outdoor rescue missions in hostile marine environments. The goal was to create software that could guide a high-value drone to locate survivors on isolated islands and identify the safest inlet (creek) for a rescue team to land, all while managing strict constraints such as limited battery, radio range, and flight safety rules
I led a team of three to design and build a Java-based system for a long-range drone capable of locating people in unknown terrain and identifying safe locations for rescue teams. The project applied JUnit for code testing and Git for version control to ensure collaboration efficiency. I managed software versioning and build systems, conducted thorough testing and troubleshooting, and maintained stability throughout the development of this complex engineering project.
Original Map:
Rescue Execution:
If you check map on the right, you could see green text and red text: Our Objectives are: first find postion of victim which is green text, and find the nearest evacuation point which are in the red text. And return the drone before the battery die
Here is another week recsue mission execution:
original map
Actually Execution
The project successfully delivered a non-trivial multi-module Java system capable of guiding a rescue drone under real-world constraints. It demonstrated skills in collaborative software engineering, algorithmic problem-solving, system design, and quality assurance. The final product balanced functionality (finding survivors and landing points) with robustness (avoiding MIA scenarios) and extensibility for future rescue actions.

As the team leader, I led a three-person group to successfully complete this project. My primary responsibility was to design the core algorithms that guided the rescue drone: from locating the island starting at the entry point, to developing systematic strategies for scanning the island, handling navigation when the drone encountered ocean boundaries, and calculating the nearest evacuation point to the survivors.
In addition, I was also in charge of the software architecture. Which is UML. I applied a modular design approach to break down the complex problem into smaller, manageable components, which I then delegated to team members. This allowed us to work efficiently in parallel while maintaining a coherent and scalable overall system design.


https://github.com/2AA4-W24/a2-rescue-mission-team-109
Project Documentation