A method for autonomously controlling a set of unmanned aerial vehicles, wherein each respective unmanned aerial vehicle performs the steps of:
- 1. Obtaining, by a respective unmanned aerial vehicle communications module implemented by a respective autonomous unmanned aerial vehicle control system associated with the respective unmanned aerial vehicle via a respective translator module implemented by the respective autonomous unmanned aerial vehicle control system, respective fleet configuration instructions wherein the respective unmanned aerial vehicle is associated with a respective role in the set of unmanned aerial vehicles;
- 2. Obtaining, by the respective unmanned aerial vehicle communications module from a respective unmanned aerial vehicle positioning system, respective proximity information associated with each unmanned aerial vehicle of the set of unmanned aerial vehicles, wherein the proximity information indicates a respective distance between each unmanned aerial vehicle of the set of unmanned aerial vehicles and all other objects in an area of interest including the other unmanned aerial vehicles of the set of unmanned aerial vehicles;
- 3. Determining in real time, by a swarm controller implemented by the autonomous unmanned aerial vehicle control system, whether the respective proximity information associated with the respective unmanned aerial vehicle of the set of unmanned aerial vehicles indicates a distance between the respective unmanned aerial vehicle and any other object is below a predetermined threshold;
- 4. In the case where the respective proximity information indicates a distance below the predetermined threshold between the respective unmanned aerial vehicle and any other object, updating, by the swarm controller, the respective fleet configuration instructions based on the respective proximity information and transmitting, by the swarm controller, the updated respective fleet configuration instructions to a respective flight controller of the respective unmanned aerial vehicle;
- 5. In the case where the respective proximity information indicates that the distance between the respective unmanned aerial vehicle in the set of unmanned aerial vehicles and any other object is at or above the predetermined threshold, transmitting, by the swarm controller, the respective fleet configuration instructions to the respective flight controller;
- and
- 6. generating, by the respective flight controller, a plurality of control signals to direct movement of the respective unmanned aerial vehicle based on the respective fleet configuration instructions.