## 6 AI-Based Approaches for Autonomous UAV Swarm Systems
### AI-Based Routing Protocol
#### 6.2.1 Network Topology-Based Routing Protocol  
A key feature of predictive routing protocols is their use of machine learning (ML) algorithms to predict the movement trajectories of nodes in UAV networks and then combine them with path selection mechanisms. Some prominent routing protocols in recent years to improve the performance of routing algorithms for UAV networks are reviewed in detail below. Predictive routing based on reinforcement learning: To cope with the high mobility and rapid changes in UAV swarm networks, the authors [147] proposed a predictive routing protocol driven by reinforcement learning and trajectory knowledge (PARRoT). This novel machine learning-enabled routing protocol exploits mobility control information to incorporate knowledge about the future movements of mobile agents into the routing process. The overall system architecture of the proposed PARRoT is shown in Figure 32. PARRoT consists of three core components: PARRoT Wings predicts cross-layer mobility based on a multi-layer approach that leverages knowledge from the mobility control domain to predict relative mobility between different agents; PARRoT Chirp disseminates routing messages and context knowledge based on user data protocols; PARRoT Brain performs route maintenance tasks based on reinforcement learning. In a comprehensive simulation-based performance evaluation, PARRoT achieves robust data transmission and significantly lowers end-to-end latency, even under challenging radio propagation conditions. Figure 32: Overall system architecture model of PARRoT routing protocol with components, including: (**a**) PARRoT Wings; (**b**) PARRoT Chirp; (**c**) PARRoT Brain. Mobility Prediction-Based Virtual Routing (MPVR) [148]: the authors proposed a mobility prediction-based virtual routing algorithm, as shown in Figure 33. This scheme improves the connection efficiency and routing time between cooperative UAVs based on the probability density function of UAV movements using a Gaussian distribution model. In addition, an optimal virtual routing model is designed to select the optimal relay node with the smallest distance between UAVs. The simulation results show that MPVR can improve the average routing time, average link delay, and packet delivery ratio compared with other conventional algorithms. Predictive routing based on shortest path algorithm: in [149], the authors proposed an optimal routing algorithm for UAV networks with queuing communication systems based on [PERSON]'s shortest path algorithm, as a major step towards developing a fully predictable communication platform. As depicted in Figure 34, the authors consider a hierarchical setup, with the networks consisting of several UAV clusters. Intra-cluster routing is performed using conventional routing algorithms since the relative distances are almost constant for UAVs due to their correlated motion trajectories. ML-based predictive routing is designed for inter-cluster communication. The proposed algorithm incorporates this predictive information into the path selection criteria based on [PERSON]'s shortest path algorithm. The results show superior performance compared to the standard Dijkstra algorithm, especially when higher velocities are applied, with the performance gain achieved depending on the accuracy of the prediction. Figure 34: Proposed system model for large-scale UAV networks consisting of multiple UAV swarms. Figure 33: MPVR protocol based on UAV mobility prediction. Q-learning-based location routing protocol (QGeo): in [150], the authors proposed an ML-based geographic routing scheme to reduce network overhead in high mobility scenarios. Nodes make geographic routing decisions in a distributed manner, based on reinforcement learning techniques on the fly without knowing the entire network topology. It consists of a location estimation, neighbor table, and QL module. The current location information is updated in the Location Estimation Module based on GPS positioning parameters.