# Multi-Objective Optimized GPSR Intelligent Routing Protocol for UAV Clusters
## 3 Mathematical Modeling of Multi-Objective Routing Optimization Problems
### MDP Modeling of the Routing Forwarding Process
In order to balance the energy consumption of the nodes within the network, this study considers adding the residual energy share metrics of the candidate neighbors in the next-hop selection process \(E_{j}^{grade}\), which is calculated as described below:  
\[E_{j}^{grade}=\frac{E_{rem_{j}}}{E_{init_{j}}} \tag{11}\]  
where \(E_{rem_{j}}\) denotes the remaining energy of neighbor node j and \(E_{init_{j}}\) denotes the initial energy of neighbor node j, and the ratio of the two can evaluate the energy consumption after a period of time. * Expected total waiting delay within the node  
In this study, we approximate the expected total waiting delay of a packet in the node j, representing that if the node \(i\) chooses to send the data packet to neighbor \(j\), the packet will be processed after the waiting time of \(T_{j}^{wait}\). The computational procedure of \(T_{j}^{wait}\) is developed as follows:  
\[T_{j}^{wait}=T_{j}^{t}+T_{j}^{q} \tag{12}\]  
where \(T_{j}^{t}\) denotes the transmission delay of all packets in the MAC layer of the candidate neighbor node \(j\), \(T_{j}^{q}\) denotes the expected queuing delay in the IP layer. The processing delay and the propagation delay are not considered in this study since the processing delay can be of a subtle or even lower order of magnitude, while the propagation delay in UAV clusters on the order of hundreds of meters is on the order of nanoseconds. The calculation of \(T_{j}^{t}\) and \(T_{j}^{q}\) are shown as (13) and (14):  
\[T_{j}^{t}=\frac{DataSize_{p}}{DataRate_{dev}} \tag{13}\]  
\[T_{j}^{q}=T_{q}^{avg}\cdot sum_{pkt} \tag{14}\]  
where \(DataSize_{p}\) indicates the length of all packets in the link layer in bits. \(DataRate_{dev}\) denotes the device's data transfer rate. Further, to estimate the queuing delay of all packets in j, we utilize the total number of packets in the queue \(sum_{pkt}\) and the average queuing delay of packets \(T_{q}^{avg}\). Further, this study estimates the queuing delay by a method of calculating the dynamic average queuing delay based on a fixed window. This method maintains a fixed number of packet counts \(N\) as an observation window and calculates the average queuing delay within the current window \(T_{q}^{avg}\). Once the total number of packets counted is greater than the current window \(N\), it is necessary to clear the state for the monitoring of the next window, including the reset of the cumulative value of the queuing delay and the value of the queuing packet count, this average delay calculation is defined as follows (15). This average delay calculation is defined as shown:  
\[P_{l}(d)=P_{l}(d_{0})+n10\log_{10}(\frac{d}{d_{0}}) \tag{6}\]0  
where \(count\) indicates the total number of queued packets in the window at the current moment (\(count\leq N\)), \(t_{i}^{De}\) denotes the outgoing queue moment of the \(i\)-th packet, \(t_{i}^{En}\) denotes the moment when the i-th packet enters the queue. It should be noted that every time a packet is queued out of the buffer, the average delay is updated. * Routing void possibilities \(P_{hop_{2}}\), \[P_{l}(d)=P_{l}(d_{0})+n10\log_{10}(\frac{d}{d_{0}}) \tag{6}\]1 (16)  
As (16) shows, where \(d^{\min}_{(i^{(hop_{2}},dst)}\) denotes the shortest distance of a two-hop neighbor node from the destination node estimated by the current node \(i\) based on the perimeter topology information of the forwarding node \(j\). In this study, we utilize the method in literature [33] to calculate the surrounding topology information NBT of all the nodes and broadcast it periodically with the HELLO beacon. The nodes receiving the message will estimate \(d^{\min}_{(i^{(hop_{2}},dst)}\) based on the NBT and further get \(P_{hop_{2}}\). If \(P_{hop_{2}}>1\), it means that once the current node \(i\) chooses \(j\) as the next hop, node \(j\) is likely to have the routing hole problem.