# A Glider-Assisted Link Disruption Restoration Mechanism in Underwater Acoustic Sensor Networks
## 4 The GALO Algorithm
### The Problem Description  
In GALO, according to the received location of the link disruption and the position of the glider itself, the optimal relay location is calculated based on the glider's motion characteristics. The schematic diagram of GALO is shown in Figure 3. Assume that both node \(s_{i}^{a}\) and node \(s_{i}^{b}\) are undamaged, that is, their data sensing, data sending and receiving functions work normally. The disruption of the underwater acoustic channel between two nodes is then only a temporary suspension of the communication link due to changes in the water environment. Therefore, the glider is needed to repair the link between these two nodes. At this time, the glider serves as a relay node between two nodes to repair the damaged link and transmits the data back to the cluster head node for data fusion. Then the cluster head node transmits the message to the water surface aggregation node. In this problem, we need to calculate the best glider trajectory based on the glider's motion characteristics. We treatthis problem as a Nonlinear Program (NLP) problem. In this NLP problem, the position selection of the glider satisfies the signal-noise-ratio threshold of the receiver. Combining with the glider's motion characteristics, we minimize the signal loss of \(s_{i}^{a}-g_{i}\) and \(g_{i}-s_{i}^{b}\) through selecting the optimal position as the objective to establish multi-objective function:  
\[\text{min}\Big{\{}TL_{ag},TL_{gb}\Big{\}} \tag{1}\]  
When making decision in the game theory, the problem of multi-objective optimization is often solved by ideal point method. That is to say, the minimum value point of each component objective function is calculated as the ideal value of the component objective function. Then, the optimal solution of the original multi-objective programming problem is obtained by the way that the multi-objective function approximates the corresponding ideal value as much as possible in the feasible domain. The evaluation function is:  
\[u(f(x))=\left|TL_{ag}-TL_{ag}{}^{*}\right|+\left|TL_{gb}-TL_{gb}{}^{*}\right| \tag{2}\]  
\[TL_{ag}=\chi\log r_{ag}+\alpha r_{ag}\cdot 10^{-3} \tag{3}\]  
\[TL_{gb}=\chi\log r_{gb}+\alpha r_{gb}\cdot 10^{-3} \tag{4}\]  
where \(r_{ag}=\parallel x-y\parallel\), \(r_{gb}=\parallel x-z\parallel\), \(x=(x_{1},x_{2},x_{3})^{\text{T}}\) is the coordinate vector of the glider, \(y=(y_{1},y_{2},y_{3})^{\text{T}}\) is the coordinate vector of the sensor node \(s_{i}^{a}\), and \(z=(z_{1},z_{2},z_{3})^{\text{T}}\) is the coordinate vector of the sensor node \(s_{i}^{b}\). \(\chi\) is a parameter used to calculate the extended loss caused by the continuous expansion of the wavefront during the propagation of the sound wave. For the shallow sea, the wavefront expands according to the law of the cylinder side and at this time \(\chi=10\). The wavefront expands spherically for the deep sea and at this time \(\chi=20\). \(\alpha\) is used to calculate the absorption coefficient of sound attenuation due to medium viscosity and heat conduction. The corresponding empirical formula is \(\alpha=\frac{0.1f}{1+f^{2}}+\frac{40f}{4100+f^{2}}+2.75*10^{-4}f^{2}+0.003\). Therefore, the NLP problem can be expressed using Equation (5):  
\[ \begin{array}{l}\text{min}\Big{\{}\left|TL_{ag}-TL_{ag}{}^{*}\right|+\left| TL_{gb}-TL_{gb}{}^{*}\right|\Big{\}}\\ \text{s.t.}\\ \text{C1.}\quad TL_{ag}<TL_{th1}\\ \text{C2.}\quad TL_{gb}<TL_{th2}\\ \text{C3.}\quad c_{s}(x),c_{t}(x)\in trail(x)\end{array}  \tag{5}\]  
In order to ensure the signal quality of receiver, it is necessary to establish Equation (6), where \(SL\) (Unit: dB) is the signal level sent by the source node. \(TL\) is the transmission loss. \(NL\) is the noise level and \(DL\) is the directional gain:  
\[SL-TL-NL+DL\geq Th_{receiver} \tag{6}\]  
Therefore, this condition needs to be established as \(TL\leq SL-NL+DL-Th_{receiver}\). The constraint condition C1 indicates that the transmission loss from \(s_{i}^{a}\) to \(g_{i}\) should be lower than a loss threshold \(TL_{th1}\).