| Algorithm 2. LEADER ELECTION ALGORITHM |
| forevery iterationdo |
| fordroneido |
| Calculate distance of dronei from other drones; |
| Update dronei position from GPS; |
| Update node velocity; |
| Calculate Bopt value; |
| if Bopt ≥ gbest then |
| gbest = Bopt; |
| end |
| Elect dronei as leader; |
| end |
| foreach dronedo |
| Calculate drone velocity; |
| Update drone position; |
| Update drone ; |
| end |
| end |