## 3 Algorithm Description and Process
### Algorithm Description
#### 3.2.1 Uneven Clustering  
After nodes are scattered on the water surface randomly and uniformly, the sink node broadcasts to all nodes. Every node \(s_{i}\) calculates the distance to the sink node \(d(s_{i},Sink)\) according to the strength of the signal it receives and sets its probability threshold \(T_{h}(s_{i})\) by Equation (8). Every node \(s_{i}\) then generates a random number \(r(s_{i})\) from zero to one and compares this number to \(T_{h}(s_{i})\). If \(r(s_{i})<T_{h}(s_{i})\), node \(s_{i}\) becomes a provisional cluster head node and joins the set of provisional cluster head nodes \(P\) (\(P=\{p_{1},p_{2},\ldots\)\(p_{n1}\}=\{s_{i}\mid\)\(r(s_{i})<T_{h}(s_{i})\), \(s_{i}\in S\}\), where \(p_{i}\) represents the \(i\)-th provisional cluster head node); otherwise, node \(s_{i}\) exits from the cluster competition and transforms into sleep mode. \[T_{h}(s_{i})=\left\{ \begin{array}{ll}T_{h1}&d(s_{i},Sink)<d_{hot}\\ T_{h2}&d_{hot}\leq d(s_{i},Sink)<2d_{hot}\\ T_{h3}&d(s_{i},Sink)\geq 2d_{hot}\end{array} \right. \tag{8}\]  
where \(T_{h1}\), \(T_{h2}\) and \(T_{h3}\) are the probability threshold parameters, and \(T_{h1}>T_{h2}>T_{h3}\). \(d_{hot}\) represents the radius of the hot-spot area. Equation (8) represents that if a node is close to the sink node, its \(T_{h}\) is great. In other words, the nodes near the sink node have a great probability to become a provisional cluster head node, whose aim is to increase the number of the final cluster head nodes near the sink node as much as possible. Every provisional cluster head node \(p_{i}\) defines its own competition radius \(R(p_{i})\) by Equation (9) and broadcasts its status message (node ID, \(d(p_{i},Sink)\), \(R(p_{i})\)) with the communication radius \(R_{0}\). After a provisional cluster head node \(p_{i}\) receives the message, it calculates the distance \(d(p_{i}\), \(p_{j})\) to the signal-sending node \(p_{j}\) and defines the set of its own competition neighbor nodes \(S_{CH}(p_{i})\) by Equation (10), namely the provisional cluster head node within its competition radius \(R(p_{i})\). \[R(p_{i})=\left(1-c\frac{d_{\max}-d(p_{i},Sink)}{d_{\max}}\right)R_{0} \tag{9}\]  
where \(d_{max}\) is the farthest distance between any points in the water surface of the target area and the sink node; \(c\) is the proportional constant; \(R_{0}\) is the maximum competition radius. \[S_{CH}\left(p_{i}\right)=\left\{p_{j}|d(p_{i},p_{j})\leq\max\left(R(p_{i}),R(p _{j})\right),d(p_{i},p_{j})\leq R_{0}\right\} \tag{10}\]  
In the stage of cluster head competition, all provisional cluster head nodes set the same waiting time (_Time_). During the _Time_, each provisional cluster head node \(p_{i}\) compares its distance to the sink node with the nodes in \(S_{CH}(p_{i})\) and determines whether it will become a final cluster head node (_i.e._, cluster head node) \(f_{m}\) (\(f_{m}\) is the \(m\)-th element in the set of the final cluster head node, namely the \(m\)-th final cluster head node) according to the following conditions:  
1. \(d(p_{i},Sink)\leq\min(d(p_{j},Sink))\), \(p_{j}\in S_{CH}(p_{i})\): \(p_{i}\) becomes \(f_{m}\) and broadcasts the \"been cluster head\" message \(M_{CH}\) to notify its competition neighbor nodes with the communication radius of \(R_{0}\). 2. \(d(p_{i},Sink)>\min(d(p_{j},Sink))\), \(p_{j}\in S_{CH}(p_{i})\): \(p_{i}\) waits for messages from its competition neighbor nodes and takes the following corresponding operation according to the messages it receives: \(\triangleright\)\(p_{i}\) receives \(M_{CH}\) broadcasted by one of its competition neighbor node \(p_{j}\), gives up the cluster head competition and broadcasts the \"exit competition\" message \(M_{GC}\). It then converts to sleep mode. \(\triangleright\)\(p_{i}\) receives \(M_{GC}\) broadcasted by one of its competition neighbor node \(p_{j}\), removes node \(p_{j}\) from \(S_{CH}(p_{i})\), then compares the distance to the sink node with its updating competition neighbor nodes and continues the preceding operations.