## 3 Proposed Opportunistic Routing Algorithm  
### Link Reliability Prediction  
The highly dynamic of the sensor nodes caused by the winds, waves and currents would result in routing failure due to the frequent interruption of the communication links. Therefore, an efficient link quality prediction method would be presented in this section to evaluate the possibility of the interruption. Moreover, the update period (the broadcast period of the \"Hello\" message) would be conducted to renew the link connectivity metric in real-time to ensure reliability of the routing path. In the light of the theoretical path loss model (Shadowing Model), the received power \(P_{R}(d)\) could be expressed as [2],  
\[P_{R}(d)=P_{t}-PL(d_{0})-10\alpha\log_{10}\left(\frac{d}{d_{0}}\right)+X_{ \sigma} \tag{3}\]  
where \(P_{t}\) is the transmit power of the node, \(PL(d_{0})\) indicates the signal strength loss when the reference distance is \(d_{0}=1\)m, \(\alpha\) is the path-loss attenuation exponent, \(X_{\sigma}\) is the wave shadow factor on the propagation path, which follows the Gaussian distribution with zero mean and variance \(\sigma^{2}\).  
Assuming that the communication radius of the nodes is \(r\) (from [29], the average distance between two randomly moving nodes in a circular area of radius \(r\) is \(0.9054r\)). Ignoring the shadowing factor, the received signal strength threshold for a node that can successfully receive the data packets should be,  
\[P_{R-Th}=P_{t}-PL(d_{0})-10\alpha\log_{10}\left(\frac{0.9054r}{d_{0}}\right) \tag{4}\]  
The received strength threshold \(P_{R-Th}\) represents the minimum signal strength in which the node can receive its neighbor node message. It should be noted that \(P_{R-Th}\) is a constant only when \(P_{t}\), \(\alpha\), and \(r\) are determined. By comparing the threshold \(P_{R-Th}\) and the received signal strength, the metric \(LC\) is defined to quantify the link connectivity between the node and their neighbor nodes. In addition, the proposed \(LC\) can be expressed as,  
\[LC_{ij}=\begin{cases}0,&if\ P_{r}(d)\leq P_{R-Th}\\ 1-\mathrm{e}^{1-\frac{P_{R-Th}}{D(d)}},&if\ P_{r}(d)>P_{R-Th}\end{cases} \tag{5}\]where \(LC_{i_{j}}\) represents the link connection probability between node \(i\) and its neighbor node \(j\). Theoretically, the larger the value of \(LC_{i_{j}}\), the more reliable the link. If \(LC_{i_{j}}=0\), it represents the link is disconnected or will be interrupted.  
In a highly dynamic marine environment, the network topology is constantly changing, and the established reliable communication link among marine nodes cannot maintain for a long time. Therefore, it is necessary to periodically update \(LC_{i_{j}}\). In [29], one of the extreme situations was considered, in which two nodes are assumed to move in a opposite direction at the maximum speed. Then the minimum time for the direct link of the node to maintain connectivity is,  
\[t_{\min}=\frac{r-0.9054r}{2v_{\max}}=\frac{0.0473r}{v_{\max}} \tag{6}\]  
where \(v_{\max}\) is the maximum movement speed of the marine node. The update period \(T\) is set to \(t_{\min}\) for the sake of ensuring the real-time nature of \(LC_{i_{j}}\) and avoiding unnecessary routing overhead.