## 4 Robust Distributed Rendezvous Control  
### Distributed Breadth First Search (BFS) Algorithm to Generate a Spanning Tree \(T\)  
In our study, \(u_{N}\) is set as the root of a tree graph \(T\). In order to generate a tree \(T\) rooted at \(u_{N}\), we use a distributed Breadth First Search (BFS) algorithm in [61]. We acknowledge that [61] addressed a distributed BFS algorithm, so that a node in the network can guide a moving object across the network to the goal. Algorithm 2 in [61] can be applied to make a tree \(T\) rooted at \(u_{N}\). The tree \(T\) is rooted at \(u_{N}\), and \(T\) has a unique path from the UUV \(u_{i}\) to \(u_{N}\). Algorithm 1 shows a distributed BFS algorithm to generate a tree \(T\) containing all UUVs. The goal sensor in Algorithm 2 of [61] represents the root \(u_{N}\) in Algorithm 1. Initially, every UUV \(u\) contains \(hops_{g}(u)\), which indicates the hop distance to the root. The root \(u_{N}\) sets \(hops_{g}(u_{N})=0\) initially. For every UUV except for the root, we initially set \(hops_{g}(u)=\infty\), where \(u\
eq u_{N}\). ```
1:Every UUV \(u\) contains \(hops_{g}(u)\), which indicates the hop distance to the root;
2:The root \(u_{N}\) sets \(hops_{g}(u_{N})=0\) initially;
3:We initially set \(hops_{g}(u)=\infty\), where \(u\
eq u_{N}\);
4:Initially, \(u_{N}\) sends its hop distance information \(hops_{g}(u_{N})\) to its neighbor UUVs;
5:repeat
6:\(u\leftarrow\) every UUV;
7:if the UUV \(u\) satisfies \(hops_{g}(u)=\infty\), and it receives a hop distance message from its neighbor UUV, e.g., \(u\)then
8: The UUV \(u\) updates its hop distance information using (9);
9: The UUV \(u\) broadcasts \(hops_{g}(u)\) to its neighbors;
10:endif
11:until\(hops_{g}(u)\
eq\infty\) for all \(u\);
```  
**Algorithm 1** Distributed BFS algorithm to generate a spanning tree \(T\)Initially, \(u_{N}\) sends its hop distance information \(hops_{g}(u_{N})\) to its neighbor UUVs. Suppose a UUV \(u\) satisfies \(hops_{g}(u)=\infty\), and it receives a hop distance message from its neighbor UUV, e.g., \(n\). Then, \(u\) updates its hop distance information using the following equation:  
\[hops_{g}(u)=min(hops_{g}(u),hops_{g}(n)+1). \tag{9}\]  
Using Equation (9), \(hops_{g}(u)\) can be updated to \(hops_{g}(n)+1\). In this case, the parent of \(u\) is updated to \(n\). Thereafter, \(u\) broadcasts \(hops_{g}(u)\) to its neighbors. In Equation (9), \(min(a,b)\) returns a smaller value between \(a\) and \(b\). References [61, 62] proved that the number of message broadcasted by every UUV is 1 in this distributed BFS algorithm. This implies that the distributed BFS has the computational complexity \(O(1)\). Utilization of Signal Intensity Sensors to Detect Neighbors  
Note that in Algorithm 1, every UUV \(u_{i}\) utilizes its signal intensity sensors to detect its neighbors. Recall that \(u_{i}\) is a neighbor to \(u_{j}\) if \(P(u_{i})>P_{hres}\) and \(P(u_{j})>P_{hres}\). Based on the signal intensity measurements, \(u_{i}\) finds its neighbors, e.g., \(u_{i}\). For instance, if \(u_{i}\) detects two UUVs \(u_{j}\) and \(u_{l}\), then we set \(\mathfrak{N}_{i}=[u_{j},u_{l}]\). By making a UUV \(u_{i}\) stand still while measuring the signals from neighbor UUVs, \(u_{i}\) can determine \(\mathfrak{N}_{i}\). The obstacle environment is not known in advance. In order to build \(T\) in unknown obstacle environments, every UUV \(u_{i}\) utilizes its signal intensity sensors to detect its neighbors. As every UUV \(u_{i}\) turns on its signal intensity sensors while standing still, \(u_{i}\) can detect its neighbors. For the detection of neighbors, we assume that a UUV, e.g., \(u_{j}\), can identify another UUV, e.g., \(u_{l}\), by analyzing the signal emitted from \(u_{l}\). Each UUV emits signal using Binary Phase Shift Keying (BPSK) with a distinct frequency band. Suppose that every UUV shares the frequency band information of all UUVs. Suppose that a UUV, e.g., \(u_{j}\), receives the signal from another UUV, e.g., \(u_{l}\).