This project is a distributed multi-threaded simulation of coordinated firefighting drones. It models real-time drone coordination, mission assignment, and fault recovery using Java, UDP-based communication, and concurrent state machines. The system simulates multiple drones operating in parallel while communicating with one another through subsystems and UDP.
The goal of this project was to design and implement a distributed system that simulates drone flight for fire extinguishing, with a focus on concurrency, communication, and real-time decision-making.
Java, UDP Networking, Multithreading, Concurrent State Machines, System Design, UML
- Distributed, multi-threaded drone coordination system using UDP messaging between autonomous agents
- Concurrent state machines for drone navigation, task execution, and fault recovery
- Real-time mission queue processing and assignment system
- Simulation of resource constraints such as battery and mission load
- Graphical interface for visualizing drone states and mission execution
demo.mp4
- Developed the GUI for real-time visualization of drone states and mission execution
- Implemented and debugged key parts of the Scheduler subsystem responsible for mission assignment
- Contributed to system testing and validation, including identifying and resolving concurrency and synchronization issues
- Supported integration and debugging during system development
- Assisted in designing UML diagrams to model system architecture such as the class structure, state transitions, and drone interactions
This project was developed as part of a group-based academic assignment and is kept private in accordance with academic integrity policies. A demo showcasing the original system functionality is included.