esa-sceva/satcom-chunk-collection huggingface dataset:
# TinyML Algorithms for Big Data Management in Large-Scale IoT Systems
## 3 Methodology
### Computational Framework for IoT Model Training and Evaluation  
In this study, the computational framework consists of two key elements: a centralized High-Performance Computing (HPC) cluster and a network of 10 Raspberry Pi 4 units. Each Raspberry Pi is configured with 4 GB of RAM and a 1.5 GHz quad-core processor. Importantly, these Raspberry Pi units are connected to a distinct network, separate from the HPC cluster, to emulate a realistic communication scenario as we have proposed in [89; 90].  
A primary function of the HPC server is to aggregate and analyze the individual models developed on each Raspberry Pi, culminating in the evaluation of a comprehensive global model, denoted as \(\mathcal{M}_{G}\).  
On each Raspberry Pi, a Flask server manages crucial tasks such as the exchange of models, execution of local training, and monitoring of memory usage. This aspect is particularly vital in contexts with limited hardware resources. Additionally, the server enables the handling of requests and facilitates essential updates over the air.  
The setup with Raspberry Pi units is designed to support experiments involving more than 10 clients, indicated as \(K>10\), with a constraint that no more than 10 clients (\(S\leq 10\)) are sampled in each communication round. This capability is achieved by storing all \(K\) client datasets on each Raspberry Pi. During each communication round \(l\), a subset of these datasets, corresponding to the \(S\) sampled clients, is allocated to a Raspberry Pi for processing.  
The Raspberry Pis are connected to a switch, which links them to the router via a cable. In scenarios where the switch is not in use, the Raspberry Pis switch to a Wi-Fi connection, allowing for the evaluation of communication overhead in two distinct network conditions: the faster Ethernet and the slower Wi-Fi. The network operates at a bandwidth of 100/100 Mbit/s, with the Ethernet utilizing full capacity and the Wi-Fi about 10% of it (10/10 Mbit/s). Each Raspberry Pi represents a client corresponding to a partition of the dataset, labeled as \(k_{1},\dots,k_{S}\), with Raspberry Pi 1 processing data as client \(k_{i}\) and Raspberry Pi 10 as \(k_{j}\).
## 2 The Proposed Method
### The Parameter Optimization of the SVM and Feature Selection Based on GA
#### 2.3.3 The Structure of the Proposed Method  
In this research, GA has been used to optimize the SVM parameters and feature selection. Figure 4 illustrates the structure of the proposed method. The main steps are explained as follows:  
1. Data preprocessing:  
Data preprocessing is an essential task in machine learning techniques for a variety of reasons. One of the most important aspects of data processing is data normalization because it can improve the cohesion among attributes existing in the dataset and improve the accuracy of the SVM classifier. Generally, each attribute will be normalized linearly in the range [0,1] by the Equation (9):  
\[f^{\prime}= \frac{f-\min}{\max-\min} \tag{9}\]  
where \(f^{\prime}\) is the scaled value, \(f\) is the original value, \(\min\) refers to low bound of the feature value, and \(\max\) denotes the upper bound of the feature value. After data preprocessing, the original dataset randomly splits into validation and training datasets. The training dataset is applied to build the SVM classifier while the validation dataset is applied to evaluate the learned SVM.  
Figure 4: System structure of the proposed method.  
Setting the initial population:  
Generally, the initial population is randomly produced. As previously mentioned, a binary string model is employed to specify initial chromosomes and tune the parameters, which include mutation rate, crossover rate, the number of iterations, the size of the population, etc. In this study, we randomly produce parameters \(C\) and \(\gamma\), whereas we choose all the features.  
3. Fitness evaluation:  
The training dataset is applied for learning the SVM classifier with the optimized feature subset and the obtained parameters \(\gamma\) and \(C\). Moreover, this dataset is used for computing the classification accuracy. After this step, each chromosome is assessed by fitness function according to Equation (8).  
4. Genetic operations:  
Genetic operations consist of mutation, crossover, and selection, which are used to produce the new generation according to the fitness value. It should be taken into account that this leads to population diversity for providing a reliable solution.  
5. Termination criteria:  
The process ends if the criteria for termination are met. Subsequently, the feature subset and the optimal parameters \(\gamma\), \(C\) are obtained. If this is not so, the process will continue with the next generation.
# Light-Induced Advanced Oxidation Processes as PFAS Remediation Methods: A Review
## 2 PFAS Applications and Related Concerns
### Analytical Techniques for PFAS Detection in Water
#### 2.4.2 Sensing Systems for PFAS Detection  
Since 2010, nanoscale materials have emerged as possible approaches for the monitoring of PFAS contaminants. Sensing nanomaterials present advantages due to the possibility of exploiting the unique physico-chemical properties of the nanometric size, such as aggregation, disaggregation, adsorption and desorption, potentially unparalleled sensitivity, and tunability. For example, chitosan-coated magnetite nanoparticles (Fe\({}_{3}\)O\({}_{4}\)-C18-chitosan-MNPs) were employed for the extraction of several PFAS compounds from both rainwater and tap water [43].  
Gold nanoparticles (AuNP) are among the most studied nanosensors in general and for PFAS sensing. A significant improvement in this kind of sensing platform was obtained by employing peroxisome proliferatorator-activated receptor \(\alpha\) (PPAR\(\alpha\))-responsive elements (PPRE) to modify AuNP sensors for the qualitative and quantitative analysis of PFAS in freshwater. This method was capable of detection at the ppt (2.5 ng/L) level [44]. Further efforts employing AuNPs were also reported using thiol-terminated-polystyrene, polyethylene glycol and perfluorinated thiols, polydopamine-polyvinylidene fluoro-membrane, and polydopamine [45; 46; 47].  
The high sensitivity offered by surface-enhanced Raman scattering (SERS) was exploited to detect fluorosurfactants (FS) in groundwater using silver nanoparticles (AgNPs) for Raman enhancement. Immiscible ion pairs were formed between cationic dyes (methylene blue or ethyl violet) and anionic FSs. In addition, graphene oxide (GO) was used to enhance the loading of FSs [48].
# Performance and Challenges of Service-Oriented Architecture for Wireless Sensor Networks
###### Abstract  
Wireless Sensor Networks (WSNs) have become essential components for a variety of environmental, surveillance, military, traffic control, and healthcare applications. These applications face critical challenges such as communication, security, power consumption, data aggregation, heterogeneities of sensor hardware, and Quality of Service (QoS) issues. Service-Oriented Architecture (SOA) is a software architecture that can be integrated with WSN applications to address those challenges. The SOA middleware bridges the gap between the high-level requirements of different applications and the hardware constraints of WSNs. This survey explores state-of-the-art approaches based on SOA and Service-Oriented Middleware (SOM) architecture that provide solutions for WSN challenges. The categories of this paper are based on approaches of SOA with and without middleware for WSNs. Additionally, features of SOA and middleware architectures for WSNs are compared to achieve more robust and efficient network performance. Design issues of SOA middleware for WSNs and its characteristics are also highlighted. The paper concludes with future research directions in SOM architecture to meet all requirements of emerging application of WSNs.  
wireless sensor network; quality of service; service-oriented architecture; Service-Oriented Middleware (SOM) architecture; data aggregation; security; heterogeneity; fault tolerance; scalability +
Footnote †: journal: Sensors
# The Internet of Drones: Requirements, Taxonomy, Recent Advances, and Challenges of Research Trends
## 3 Requirements of Internet of Drones (IoD)
### Communication Requirements  
The impact of IoD communication vulnerabilities is receiving increasing attention from researchers. Many remote locations would be hard to reach were it not for the usage of drones. As a result, drones are commonly employed for important tasks such as rescuing victims, providing surveillance, transportation, and helping with conserving and protection of the environment [18]. Therefore, critical communication requirements to support the different drone applications are discussed as follows.
## 3 Experimental Results
### Analysis and Comparison of Experimental Results
#### 3.2.2 Yield Stiffness  
Table 3 lists the measured elastic stiffness \(K_{e}\) of the tested specimens. The elastic stiffness \(K_{e}\) was defined in this study, as suggested by ASTM E2126-19. The SSP specimen shows a lower initial stiffness than the integrated member specimens, as shown in Figure 9. Since the steel sheet and studs were joined by screws in the SSP specimen, this stiffness was insufficient compared to that of the IP specimen. However, the increased initial stiffness of the IP specimens resulted in more rapid local buckling. The initial stiffnesses of the IP, IP-IS and IP-OS specimens are similar, as shown in Figure 9. This result indicates that there is little contribution to the elastic stiffness of the integrated member from the frame action.  
According to the American Society of Civil Engineers (ASCE) standard (ASCE/SEI 7-16), the allowable story drift for risk category 2--which includes most structures, such as residential, commercial and industrial buildings--is 2.5%, as shown in Figure 9. Since the drift ratio of local buckling in the IP specimen was less than the allowable story drift in ASCE/SEI 7-16, it is necessary to reinforce the IP with a stud to make the IP specimen practicable for this application.  
\begin{table}
\begin{tabular}{c c c c c c c c c c} \hline \hline \multirow{2}{*}{**Specimens**} & \multicolumn{6}{c}{**Test Results**} & \multicolumn{2}{c}{**Prediction**} & **Comparison** \\ \cline{2-10}  & \(V_{y}\) & \(V_{peak}\) & \(\Delta_{y}\) & \(\Delta_{peak}\) & \(\Delta_{a}\) & \(K_{e}\) & \(\mu\) & \(V_{n,AISI}\)\({}^{*}\) & \(V_{n,AISI}\)\({}^{*}\)/\(V_{y}\) \\ \cline{2-10}  & **(kN)** & **(kN)** & **(mm (\%))** & **(mm (\%))** & **(mm (\%))** & **(kN/mm)** & **(kN)** & **(kN)** & **(kN)** \\ \hline \multirow{2}{*}{SSP} & + & 20.1 & 23.5 & 49.7 (2.0) & 72.8 (3.0) & 103.7 (4.3) & 0.40 & 2.09 & - & - \\ \cline{2-10}  & - & 23.9 & 24.6 & 46.0 (1.9) & 73.0 (3.0) & 81.2 (3.3) & 0.52 & 1.76 & & \\ \hline \multirow{2}{*}{IP} & + & 23.7 & 28.1 & 38.1 (1.6) & 120.0 (4.9) & 137.5 (5.6) & 0.62 & 3.61 & & 0.87 \\ \cline{2-10}  & - & 26.2 & 31.8 & 27.1 (1.1) & 124.4 (5.1) & 121.6 (5.0) & 0.97 & 4.48 & & 0.79 \\ \hline \multirow{2}{*}{IP-IS} & + & 34.4 & 36.9 & 52.7 (2.2) & 61.8 (2.5) & 120.9 (5.0) & 0.65 & 2.29 & & 1.40 \\ \cline{2-10}  & - & 32.1 & 34.9 & 36.4 (1.5) & 48.7 (2.0) & 115.4 (4.7) & 0.88 & 3.17 & & 1.50 \\ \hline \multirow{2}{*}{IP-OS} & + & 29.9 & 32.6 & 50.9 (2.1) & 61.6 (2.5) & 138.2 (5.7) & 0.59 & 2.72 & & 1.62 \\ \cline{2-10}  & - & 30.6 & 35.0 & 26.6 (1.1) & 44.1 (1.8) & 121.0 (5.0) & 1.15 & 4.55 & & 1.58 \\ \hline \multicolumn{10}{c}{SSP: steel sheath panel; IP: integrated panel; IP-IS: IP-inner stud; IP-OS: IP-outer stud. \({}^{*}\)\(V_{n,AISI}\) is calculated using the equation (2) in Section 1.3.} \\ \end{tabular}
\end{table}
Table 3: Summary of key parameters for the tested specimens.
## 4 Simulation Analysis
### Optimization of the WPE Parameters  
Figure 1 shows the waveform and the corresponding spectrum of the simulated outer race fault signals. It is not easy to recognize the fault features of the simulated signal from Figure 1.  
In order to get better wavelet packet parameters, firstly, select several commonly used wavelet packet parameters (i.e., db1, db3, db5, db7, db10, coif1, coif2, coif3, coif4, coif5, sym1, sym3, sym5, sym7, sym10) from Table 1. Then, decomposed, energy calculated and reconstructed by using the above 15 wavelet functions respectively. Secondly, the reconstructed signal is filtered using FK and the filtered signal is square envelope spectrum analysis. Then, compare the amplitude of square envelope spectrum to determine the optimal wavelet base in Figure 2. It can be seen that db1, coif2, and sym1 decomposition effect is better than others. To further select the wavelet function, the above three wavelet functions are compared as shown in Figure 3. It can be seen that the decomposition of db1 and sym1 are similar, better than coif2. Finally, due to the db1 and sym1 decomposition effect being similar, then select the wavelet function (i.e., db2, db3, db4, db5) and (i.e., sym2, sym3, sym4, sym5) for comparison. Figure 4a,b depict that decomposition of db2, db3 and sym2, sym3 show a similar effect; however, the magnitude of db4, db5 is greater than the magnitude of sym4, sym5 in Figure 4c,d. Therefore, wavelet function dbN decomposition is best.  
Figure 1: Simulated signal of a faulty bearing: (**a**) waveform; (**b**) spectrum.  
Figure 2: The results of the envelope analysis: (**a**) dbN; (**b**) coifN; (**c**) symN.  
\begin{table}
\begin{tabular}{c c} \hline \hline
**Wavelet Function** & **Order Range** \\ \hline dbN & 1–45 \\ coifN & 1–5 \\ symN & 1–45 \\ \hline \hline \end{tabular}
\end{table}
Table 1: Wavelet packet parameters.  
Figure 3: The results of the envelope analysis.  
The above concludes that the decomposition of wavelet function dbN is the best. However, the order of the wavelet packet is not determined. In this paper, we applied the FK to optimize the wavelet packet order. The FK of the reconstructed signal is depicted in Figure 5. It can be found that the center frequency of FK utilize db3 is located in the subspace the frequency band. Therefore, db3 is selected as the wavelet function.  
Figure 5: The results of the fast kurtogram (FK) (**a**) db1; (**b**) db2; (**c**) db3; (**d**) db4; (**e**) db5.
# Superpixel-Based Singular Spectrum Analysis for Effective Spatial-Spectral Feature Extraction
## 2 The Proposed Methodology
### 2d-Ssa
#### 2.2.1 Embedding  
Imagine a HSI dataset \(H\), with a size of \(N_{x}\times N_{y}\times B\), where \(N_{x}\), \(N_{y}\) indicates the band image size and \(B\) represents the total number of available bands. Each band image \(H^{b}\) (\(b\in B\)) can be expressed as follows:  
\[H^{b}=\left[\begin{array}{cccc}H^{b}_{1,1}&H^{b}_{1,2}&\cdots&H^{b}_{1,N_{y} }\\ H^{b}_{2,1}&H^{b}_{2,2}&\cdots&H^{b}_{2,N_{y}}\\ \vdots&\vdots&\ddots&\vdots\\ H^{b}_{N_{x}1}&H^{b}_{N_{x}2}&\cdots&H^{b}_{N_{x},N_{y}}\\ \end{array}\right]_{N_{x}\times N_{y}} \tag{4}\]  
Next, a 2D window \(Q^{b}\) is defined, whose dimensions are \(M_{x}\times M_{y}\).  
\[Q^{b}=\left[\begin{array}{cccc}H^{b}_{i,j}&H^{b}_{i,j+1}&\cdots&H^{b}_{i,j+ M_{y}-1}\\ H^{b}_{i+1,j}&H^{b}_{i+1,j+1}&\cdots&H^{b}_{i+1,j+M_{y}-1}\\ \vdots&\vdots&\ddots&\vdots\\ H^{b}_{i+M_{x}-1,j}H^{b}_{i+M_{x}-1,j+1}&\cdots&H^{b}_{i+M_{x}-1,j+M_{y}-1}\\ \end{array}\right]_{M_{x}\times M_{y}} \tag{5}\]  
where \(1\leq M_{x}\leq N_{x}\), \(1\leq M_{y}\leq N_{y}\), and \(1<M_{x}M_{y}<N_{x}N_{y}\). Each pixel is spatially positioned by \((i,j)\) within the image \(H^{b}\). The pixels in a window \(Q^{b}\) can be rearranged into a column vector \(C^{b}_{i,j}\in\mathbb{R}^{M_{x}M_{y}}\) according to the reference position \((i,j)\) as follows:  
\[C^{b}_{i,j}=[H^{b}_{i,j},H^{b}_{i,j+1},\ldots,H^{b}_{i,j+M_{y}-1},H^{b}_{i+1, j},H^{b}_{i+1,j+1},\ldots,H^{b}_{i+M_{x}-1,j+M_{y}  
Note that the trajectory matrix \(\mathfrak{Z}^{b}\) has a structure of Hankel-block-Hankel (HbH). \(\mathfrak{Z}^{b}\) can be expressed as follows:  
\[\mathfrak{Z}^{b}=\left[\begin{array}{cccc}P_{i}^{b}&P_{i}^{b}&\cdots&P_{N_{x} -M_{x}+1}^{b}\\ P_{i}^{b}&P_{i}^{b}&\cdots&P_{N_{x}-M_{x}+2}^{b}\\ \vdots&\vdots&\ddots&\vdots\\ P_{M_{x}}^{b}&P_{M_{x}+1}^{b}&\cdots&P_{N_{x}}^{b}\end{array}\right]_{\text{M }_{x}\times(N_{x}-M_{x}+1)} \tag{8}\]  
Each of the submatrices \(P_{i}^{b}\) corresponds to a Hankel structure as follows:  
\[P_{i}^{b}=\left[\begin{array}{cccc}H_{i,1}^{b}&H_{i,2}^{b}&\cdots&H_{i,N_{y} -M_{y}+1}^{b}\\ H_{i,2}^{b}&H_{i,3}^{b}&\cdots&H_{i,N_{y}-M_{y}+1}^{b}\\ \cdot&\cdot&\cdot&\cdot\\ \cdot&\cdot&\cdot&\cdot\\ \cdot&\cdot&\cdot&\cdot\\ H_{i,M_{y}}^{b}&H_{i,M_{y}+1}^{b}&\cdots&H_{i,N_{y}}^{b}\end{array}\right]_{M _{y}\times(N_{y}-M_{y}+1)} \tag{9}\]
## 6 Results and Discussions  
In this section, the simulation results will be demonstrated in three aspects: (1) the influence of introducing confidence levels; (2) network performance with installation of an extra portable energy system; and (3) the influence of decoupling heat and power by installing a heat storage tank.  
\begin{table}
\begin{tabular}{c c c c c} \hline \hline
**Energy Carrier** & **CHP** & **Wind Turbine** & **PV** & **Fuel Cell** & **Battery System** \\ \hline Capital cost (10,000 \(\mathrm{\SIUnitSymbolMicro kW}\)) & 1.0 & 1.2 & 2.0 & 2.8 & 0.0667 \\ Life (Year) & 10 & 10 & 20 & 10 & 10 \\ Min power (kW) & 15 & 0 & 0 & 7 & \(-60\) \\ Max power (kW) & 75 & 30 & 30 & 40 & 60 \\ \hline \hline \end{tabular}
\end{table}
Table 1: The rated parameters of the traditional microgrid.  
\begin{table}
\begin{tabular}{c c c} \hline \hline
**Parameters** & **Rated Value** & **Parameters** & **Rated Value** \\ \hline \(\rho\) (kg/m\({}^{3}\)) & 0.8 & \(T_{amp}\) (\({}^{\circ}\)C) & 20 \\ \(A\) (m\({}^{2}\)) & 10 & \(GT_{STC}\) (kW/m\({}^{2}\)) & 1 \\ \(\eta_{w}\) & 0.59 & \(T_{\mathrm{NOC}}\) (\({}^{\circ}\)C) & 45.5 \\ \(v_{nom}\) (m/s) & 12 & \(P_{PV,STC}\) (kW) & 0.165 \\ \(v_{l}^{\prime}\) (m/s) & 5 & \(\gamma\) & 0.043\% \\ \(v_{o}^{\prime}\) (m/s) & 22 & \(T_{r}\) (\({}^{\circ}\)C) & 25 \\ \hline \hline \end{tabular}
\end{table}
Table 2: Portable energy system data sheet.  
Figure 2: The Monte Carlo simulation results of the renewable system outputs, thermal demands, and electrical demands.
## Cases Studies
### Solution Efficiency Comparison  
Moreover, a comparison is conducted to illustrate the advantage of the proposed two-step optimization model. The computing platform is a PC with Intel [EMAIL_ADDRESS] GHZ CPU and 8G RAM (Intel, Santa Clara, CA, USA), and the software environment is Windows 10 Professional and MATLAB R2010b (MathWorks, Natick, MA, USA).  
Concretely, the proposed two-step optimization model and the conventional one-layer optimization model are used to find the recovery for benchmark scenario. Specific information of the two recovery schemes is shown in Table 4 below. Scheme 3 is obtained by the conventional one-layer optimization model.  
\begin{table}
\begin{tabular}{c c c} \hline \hline  & **Scheme 1** & **Scheme 3** \\ \hline \multirow{2}{*}{**Elapsed time/minute**} & \multirow{2}{*}{0.54} & \multirow{2}{*}{9.96} \\ \cline{2-2} \cline{4-4}  & & \\ \cline{2-2} \cline{4-4}  & & \\ \hline \multirow{2}{*}{Total recovery capacity/kw} & \multirow{2}{*}{3549.08 kW} & \multirow{2}{*}{3469.96 kW} \\ \cline{2-2} \cline{4-4}  & & \\ \cline{2-2} \cline{4-4}  & & \\ \hline \multirow{2}{*}{Number of switching actions} & \multirow{2}{*}{2 times, 8–9 open, 10–87 close} & \multirow{2}{*}{2 times, 50–71 open, 10–87 close} \\ \cline{2-2} \cline{4-4}  & & \\ \hline \multirow{2}{*}{Frequency/Hz} & \multirow{2}{*}{49.5273} & \multirow{2}{*}{49.593 0} \\ \cline{2-2} \cline{4-4}  & Node 11 & 190 & 210 \\ \cline{2-2} \cline{4-4}  & Node 59 & 0 & 300 \\ \hline \multirow{2}{*}{_Vone-ul_/\%} & DG4 & 1.47 & 1.46 \\ \hline \multirow{2}{*}{_Cune-ul_/\%} & DG5 & 9.80 & 9.84 \\ \cline{2-2} \cline{4-4}  & min & 3.34 & 3.50 \\ \cline{2-2} \cline{4-4}  & max & 3.42 & 3.69 \\ \hline \hline \end{tabular}
\end{table}
Table 4: Results of the two-step optimization model and the single-layer optimization model for benchmark scenario.  
\begin{table}
\begin{tabular}{c c c} \hline \hline  & **THD-ul** & **THD-me** \\ \hline minimum & 4.41\% & 3.59\% \\ \hline maximum & 4.54\% & 3.70\% \\ \hline \hline \end{tabular}
\end{table}
Table 2: Comparison of _THD-ul_ and _THD-me_ for Scheme 2.  
\begin{table}
\begin{tabular}{c c c} \hline \hline  & _Cune-ul_ & _Cune-me_ \\ \hline DG5 & 10.56\% & 8.72\% \\ \hline \end{tabular}
\end{table}
Table 3: Comparison of _Cune-ul_ and _Cune-me_ for Scheme 2.  
From Table 4, the following can be seen:  
(1) The power-quality indexes of the two schemes satisfy the constraints, and the numbers of switching actions are both 2.  
(2) Theoretically, the conventional one-layer optimization model can obtain better optimal recovery scheme with enough time. However, as the searching space of the one-layer optimization model is too large, the optimal solution is hard to be obtained. Until the set maximum iteration value, the total recovery capacity of Scheme 3 is 3469.96 kW, which is smaller than 3549.08 kW.  
(3) Elapsed time for solving two-step optimization model is 0.52 minute, which is merely 5.22% of 9.96 minute.  
Therefore, via the proposed two-step optimization model, the time consumed can be reduced significantly, which can achieve the aim of rapid obtainment of a good recovery scheme.
## 7 Underwater Localization Techniques
### Underwater Sensor Positioning (UISP)  
In order to be able to determine their depth position while using USP for underwater localization, underwater nodes are designed to be equipped with pressure sensor nodes. A node on a horizontal surface submerged in water uses depth information to map the reachable anchors. While mapping from 3D to 2D, several anchor nodes may be close to one another. A submerged node can choose a different set of the anchor's sensor nodes when appropriate. At each iteration of USP, localized underwater nodes estimate their positions based on messages they receive from nearby nodes and broadcast where they are located. The localized nodes use just two anchor nodes to produce localization; this process is known as dilatation. If the node does not calculate a new position, it will wait until it learns from nearby nodes that the two anchors have already been localized. Before the same localization operation is started again, a predetermined amount of sleep time has passed. The authors offer a locating method for underwater sensor networks [71]. The authors suggested a weighted Gerchberg-Saxton algorithm to address the multi-path acoustic propagation problem of various potential distance estimates between two nodes. A standard positioning method is used to determine the distance between two sensor nodes based on the more robust path or the initial arrival, but neither node can agree on the direct acoustic path in the water.