Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
TECHNIQUES FOR DOPPLER ESTIMATION AND CORRECTION FOR TRANSMISSIONS THROUGH ACOUSTIC CHANNELS IN UNDERWATER ENVIRONMENTS
Document Type and Number:
WIPO Patent Application WO/2024/107689
Kind Code:
A1
Abstract:
Doppler correction of received underwater acoustic signals includes training a model that includes a Doppler estimator and tap selector. The estimator inputs a digitized acoustic signal ad outputs a Doppler shift D and ratio K of line of sight (LOS) energy to second dominant path (SDP) energy. The tap selector module inputs D and K and outputs a circuit tap in a Digital Phase-Locked Loop (DPLL) of a Decision Feedback Equalizer (DFE). Each instance of a training set includes a digitized acoustic signal and corresponding outputs D, K and circuit tap. Second data is received that includes a current received acoustic signal. Third data is generated that indicates a current circuit tap output by the model operating on the second data. An acoustic receiver uses the current circuit tap to process the received acoustic signal.

Inventors:
POMPILI DARIO (US)
HSIEH YUNG-TING (US)
Application Number:
PCT/US2023/079587
Publication Date:
May 23, 2024
Filing Date:
November 14, 2023
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
UNIV RUTGERS (US)
International Classes:
H04B11/00; G01S3/80; H04B13/02; H04W56/00; H04B7/00
Attorney, Agent or Firm:
MOLINELLI, Eugene J. (US)
Download PDF:
Claims:
CLAIMS

What is claimed is:

1. A non-transitory computer-readable medium carrying one or more sequences of instructions for Doppler correction of underwater communications, wherein execution of the one or more sequences of instructions by one or more processors causes the one or more processors to perform the steps of: retrieving from a computer-readable medium first data that indicates a model that comprises a Doppler tracker module and tap selector module, wherein the Doppler tracker module is configured to take as input a digitized acoustic signal and to output a value for a Doppler shift D and ratio K of line of sight (LOS) energy to second dominant path (SDP) energy, wherein the tap selector module is configured to take as input values of D and K and to output a value for a circuit tap in a Digital Phase-Locked Loop (DPLL) of a Decision Feedback Equalizer (DFE), which model is trained on a training set including for each instance input values for a corresponding digitized acoustic signal and corresponding output value for D, output value for K and output value for circuit tap; receiving second data that indicates input values for a current digitized acoustic signal based on a received acoustic signal; generating third data that indicates a value for a current circuit tap output by the model of the first data operating on the second data; and causing an acoustic receiver to use the current circuit tap to process the received acoustic signal.

2. A non-transitory computer-readable medium as recited in claim 1 , wherein the tap selector module comprises a fine tree classifier, a linear Support Vector Machine (SVM) classifier, a quadratic SVM classifier or a cubic SVM classifier.

3. A non-transitory computer-readable medium as recited in claim 1, wherein the Doppler shift module is a neural network.

4. A non-transitory computer-readable medium as recited in claim 3, wherein the Doppler shift module is trained using simulations from a Rician fading channel model.

5. An apparatus for Doppler correction of underwater communications, the apparatus comprising: at least one processor; and at least one memory including one or more sequences of instructions, the at least one memory and the one or more sequences of instructions configured to, with the at least one processor, cause the apparatus to perform at least the following, retrieving from a computer-readable medium first data that indicates a model that comprises a Doppler estimator module and tap selector module, wherein the Doppler estimator module is configured to take as input a digitized acoustic signal and to output a value for a Doppler shift D and ratio K of line of sight (LOS) energy to second dominant path (SDP) energy, wherein the tap selector module is configured to take as input values of D and K and to output a value for a circuit tap in a Digital Phase-Locked Loop (DPLL) of a Decision Feedback Equalizer (DFE), which model is trained on a training set including for each instance input values for a corresponding digitized acoustic signal and corresponding output value for D, output value for K and output value for circuit tap; receiving second data that indicates input values for a current digitized acoustic signal based on a received acoustic signal; generating third data that indicates a value for a current circuit tap output by the model of the first data operating on the second data; and causing an acoustic receiver to use the current circuit tap to process the received acoustic signal.

6. A system for underwater communications comprising two or more underwater devices each comprising the apparatus of claim 4. A method for underwater communications, the method comprising: training automatically on a processor a model that comprises a Doppler estimator module and tap selector module, wherein the Doppler estimator module is configured to take as input a digitized acoustic signal and to output a value for a Doppler shift D and ratio K of line of sight (LOS) energy to second dominant path (SDP) energy, wherein the tap selector module is configured to take as input values of D and K and to output a value for a circuit tap in a Digital Phase-Locked Loop (DPLL) of a Decision Feedback Equalizer (DFE), which model is trained on a training set including for each instance input values for a corresponding digitized acoustic signal and corresponding output value for D, output value for K and output value for circuit tap; and sending first data that indicates the model to a processor on an underwater device that comprises an underwater acoustic transceiver, wherein the underwater device is configured to perform at least the steps of: receiving second data that indicates input values for a current digitized acoustic signal based on a received acoustic signal; generating third data that indicates a value for a current circuit tap output by the model of the first data operating on the second data; and causing an acoustic receiver to use the current circuit tap to process the received acoustic signal.

Description:
TECHNIQUES FOR DOPPLER ESTIMATION AND CORRECTION FOR TRANSMISSIONS THROUGH ACOUSTIC CHANNELS IN UNDERWATER ENVIRONMENTS

CROSS-REFERENCE TO RELATED APPLICATIONS

[0001] This application claims benefit of Provisional Appln. 63/383,560, filed November 14, 2023, the entire contents of which arc hereby incorporated by reference as if fully set forth herein, under 35 U.S.C. § 119(e).

STATEMENT OF GOVERNMENTAL INTEREST

[0002] This invention was made with government support under Contract No. 1763964 awarded by the National Science Foundation. The government has certain rights in the invention.

BACKGROUND

[0003] The transmission of multimedia data such as text, images, audio and videos is useful and even enabling for those working in the field of underwater exploration, monitoring and operations as such data could provide vital information about the number, health and distribution of various species and machines in the underwater environment. However, such transmission is challenging because electromagnetic (radio and optical) systems have very limited range (on the order of tens of meters). The usage of the Underwater Wireless Optical Communication (UWOC) makes it possible to achieve high bandwidth within a communication distance of up to hundreds of meters. However, the UWOC suffers from water absorption and scattering effects caused by impurities in the water. Additionally, some alignments between the transmitter and receiver are required, and the quality of the communication link can be severely impaired by external factors, such as the presence of sources of reflection, e.g., bubbles. Acoustic signals traversing through an underwater acoustic channel are subject to low bandwidth and distortions due to varying interactions with the sea surface, varying interactions with the seafloor of varying depth, interference from other objects, varying acoustic noise, and varying sound channel conditions including temperature, salinity and currents and current shear. Thus, the underwater acoustic sound channel is non- stationary on time scales relevant to usual communication applications, including the duration of many audio and video transmissions. [0004] The underwater acoustic channel is usually modelled as a Rician fading channel for short-range shallow water communication (with a depth of less than 100 m, where the power of the Line-of- Sight (LOS) signal is stronger than the multipath delay signals due to reflections from the sea surface, sea floor, or other objects) as a special case of Rayleigh and Rice models.. [0005] Because of acoustic channel variability, a system that uses one kind of coding and modulation scheme for representing images, audio or video will underperform over an extended period of time and hence an adaptive system is desired, which can change its coding or transmission parameters or both based on the current underwater acoustic channel conditions. [0006] Most of the work towards realizing such an adaptive communication protocol has been directed towards optimizing source coding and channel coding separately, or rather optimizing parameters of hand-made codes, such as Joint Photographic Experts Group (JPEG) coding for imagery and Turbo coding for transmission, among others.

SUMMARY

[0007] Techniques are provided for correctio of Doppler shifts in underwater acoustic communications.

[0008] In a first set of embodiments, a method for Doppler correction of received underwater acoustic signals includes training a model that comprises a Doppler tracking module and tap selector module. The Doppler tracking module is configured to take as input a digitized acoustic signal and to output a value for a Doppler shift D and ratio K of line of sight (LOS) energy to second dominant path (SDP) energy. The tap selector module is configured to take as input values of D and K and to output a value for a circuit tap in a Digital Phase-Locked Loop (DPLL) of a Decision Feedback Equalizer (DFE). The model is trained on a training set including for each instance input values for a corresponding digitized acoustic signal and corresponding output value for D, output value for K and output value for circuit tap. The method also includes receiving second data that indicates input values for a current digitized acoustic signal based on a received acoustic signal. The method further includes generating third data that indicates a value for a current circuit tap output by the model of the first data operating on the second data. Yet further, the method includes causing an acoustic receiver to use the current circuit tap to process the received acoustic signal. [0009] In some embodiments of the first set, the tap selector module comprises a fine tree classifier, a linear' Support Vector Machine (SVM) classifier, a quadratic SVM classifier or a cubic SVM classifier.

[0010] In some embodiments of the first set, the Doppler estimator module comprises a neural network. In some of these embodiments the neural network is trained using simulations from a Rician fading channel model.

[0011] In other sets of embodiments, a non-transient computer-readable medium or an apparatus or a neural network is configured to perform one or more steps of the above methods.

[0012] Still other aspects, features, and advantages are readily apparent from the following detailed description, simply by illustrating a number of particular embodiments and implementations, including the best mode contemplated for carrying out the invention. Other embodiments are also capable of other and different features and advantages, and its several details can be modified in various obvious respects, all without departing from the spirit and scope of the invention. Accordingly, the drawings and description are to be regarded as illustrative in nature, and not as restrictive.

BRIEF DESCRIPTION OF THE DRAWINGS

[0013] Embodiments are illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings in which like reference numerals refer to similar elements and in which:

[0014] FIG. 1 A is a block diagram that illustrates an example training set for machine learning; [0015] FIG. IB is a block diagram that illustrates an example automatic process for learning values for parameters of a chosen model during machine learning, according to various embodiments;

[0016] FIG. 2A is a block diagram that illustrates an example neural network 200 according to various embodiments;

[0017] FIG. 2B is a plot that illustrates example activation functions used to combine inputs at any node of a neural network, according to various embodiments; [0018] FIG. 3A and FIG. 3B are block diagrams that illustrate examples of underwater device configurations that encounter Doppler shifts in underwater communications, according ot various embodiments;

[0019] FIG. 3C and FIG. 3D are block diagrams that illustrate examples of hardware configurations that compensate Doppler shifts in underwater communications, according to the prior art;

[0020] FIG. 4 is a block diagram that illustrates an examples of a hardware configuration that compensates Doppler shifts in underwater communications with machine learning, according to an embodiment;

[0021] FIG. 5 is a flow diagram that illustrates an example method for performing underwater acoustic communications affected by Doppler shifts, according to an embodiment;

[0022] FIG. 6A and FIG. 6B are tables that list machine learning options for Doppler shift compensation, according to various embodiments;

[0023] FIG. 7A through FIG. 7C are plots that illustrate examples of simulated bit error rate (BER) of joint machine learning Doppler compensation with Binary Phase-Shift Keying (BPSK) modulation in a line of sight path (LOS) plus second dominant path (SDP), according to various embodiments;

[0024] FIG. 8A through FIG. 8C are plots that illustrate examples of performance relative to prior art approaches, according to various embodiments;

[0025] FIG. 9 is a block diagram that illustrates a computer system upon which an embodiment of the invention may be implemented; and

[0026] FIG. 10 illustrates a chip set upon which an embodiment of the invention may be implemented.

DETAILED DESCRIPTION

[0027] A method and apparatus are described for using machine learning to detect and correct for variations in an underwater acoustic channel during underwater communications. In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, to one skilled in the art that the present invention may be practiced without these specific details. In other instances, well-known structures and devices are shown in block diagram form in order to avoid unnecessarily obscuring the present invention.

[0028] Some embodiments of the invention are described below in the context of communicating imagery or video source data through continental shelf sea water environments with bathymetric depths on the order of 100 meters (m) and modeled by Rician model for two or more submerged vehicles. However, the invention is not limited to this context. In other embodiments, the techniques used here apply to other source data, including communicating text or audio data or imagery or video or some combination of source data, through saltwater or freshwater environments with both deeper or shallower bathymetric depths, with more or fewer, autonomous, or remote controlled or human occupied, submerged vehicles.

1. Overview of machine learning.

[0029] In various embodiments, machine learning, a branch of artificial intelligence, is used to detect or correct for variations in the underwater acoustic channel available during underwater communications. In its most general form, machine learning involves a model M that has one or more adjustable parameters P. The model M accepts available data X to produce a desired result Y, represented by the equation Y = M(P, X), where X, Y and P are sets of one or more elements. During machine learning, a training set that includes both X values and Y values, based on simulations or past experience or domain knowledge, are used to set values for one or more otherwise uncertain values for the adjustable parameters P.

[0030] FIG. 1 A is a block diagram that illustrates an example training set 100, according to an embodiment. The training set 100 includes multiple instances, such as instance 101. The instances 101 for the training set 100 are selected to be appropriate for a particular operational purpose as explained in more detail in an appendix of this patent application. Each instance 101 includes a set of values 102 for context variables X expected to be available as input to a learned process, and includes a set of one or more values 104 for result variables Y expected to be provided by the learned process.

[0031] During machine learning, a model M is selected appropriate for the purpose and data at hand. One or more of the model M adjustable parameters P is uncertain for that particular purpose and the values for such one or more parameters are learned automatically. Innovation is often employed in determining which model to use and which of its parameters P to fix and which to learn automatically. The learning process is typically iterative and begins with an initial value for each of the uncertain parameters P and adjusts those prior values based on some measure of goodness of fit of its Model output YM with known results Y for a given set of values for input context variables X from an instance 101 of the training set 100.

[0032] FIG. IB is a block diagram that illustrates an example automatic process for learning values for uncertain parameters P 112 of a chosen model M HO The model M 110 can be a Boolean model for a result Y of one or more binary values, each represented by a 0 or 1 (e.g., representing FALSE or TRUE respectively), a classification model for membership in two or more classes (either known classes or self-discovered classes using cluster analysis), other statistical models such as multivariate regression or neural networks, or a physical model, or some combination of two or more such models. A physical model differs from the other purely data-driven models because a physical model depends on mathematical expressions for known or hypothesized relationships among physical phenomena. When used with machine learning, the physical model includes one or more parameterized constants, such as seafloor reflection coefficients, that are not known or not known precisely enough for the given purpose.

[0033] During training depicted in FIG. IB, the model 110 is operated with current values 112 of the parameters P, including one or more uncertain parameters of P (initially set arbitrarily or based on order of magnitude estimates) and values of the context variables X from an instance 101 of the training set 100. The values 116 of the output YM from the model M, also called simulated measurements, are then compared to the values 124 of the known result variables Y from the corresponding instance 101 of the training set 100 in the parameters values adjustment module 130.

[0034] The parameters values adjustment module 130 implements one or more known or novel procedures, or some combination, for adjusting the values 112 of the one or more uncertain parameters of P based on the difference between the values of YM and the values of Y. The difference between YM and Y can be evaluated using any known or novel method for characterizing a difference, including least squared error, maximum entropy, fit to a particular probability density function (pdf) for the errors, e.g., using a priori or a posterior probabilities. The model M is then run again with the updated values 112 of the uncertain parameters of P and the values of the context variables X from a different instance of the training set 100. The updated values 116 of the output YM from the model M are then compared to the values of the known result variables Y from the corresponding instance of the training set 100 in the next iteration of the parameter values adjustment module 130.

[0035] The process of FIG. IB continues to iterate until some stop condition is satisfied. Many different stop conditions can be used. The model can be trained by cycling through all or a substantial portion of the training set. In some embodiments, a minority portion of the training set 100 is held back as a validation set. The validation set is not used during training, but rather is used after training to test how well the trained model works on instances that were not included in the training. The performance on the validation set instances, if truly randomly withheld from the instances used in training, is expected to provide an estimate of the performance of the learned model in producing YM when operating on target data X with unknown results Y. Typical stop conditions include one or more of a certain number of iterations, a certain number of cycles through the training portion of the training set, producing differences between YM and Y less than some target threshold, producing successive iterations with no substantial reduction in differences between YM . and errors in the validation set less than some target threshold, among others.

[0036] In some embodiments, the model M is a neural network, widely used in image processing and natural language processing. FIG. 2A is a block diagram that illustrates an example neural network 200, according to various embodiments. A neural network 200 is a computational system, implemented on a general-purpose computer, or field programmable gate array, or some application specific integrated circuit (ASIC), or some neural network development platform, or specific neural network hardware, or some combination. The neural network is made up of an input layer 210 of nodes, at least one hidden layer such as hidden layers 220, 230 or 240 of nodes, and an output layer 250 of one or more nodes. Each node is an element, such as a register or memory location, that holds data that indicates a value. The value can be code, binary, integer, floating point or any other means of representing data. In common forms of neural networks, values in nodes in each successive layer after the input layer in the direction toward the output layer is based on the values of one or more nodes in the previous layer. The nodes in one layer that contribute to the next layer are said to be connected to the node in the later layer. Example connections 212, 223, 245 are depicted in FIG. 2A as arrows. The values of the connected nodes are combined at the node in the later layer using some activation function with scale and bias (also called weights) that can be different for each connection. Neural networks are so named because their nodes are modeled after the way neuron cells are connected in biological systems. A fully connected neural network has every node at each layer connected to every node at any previous or later layer or both.

[0037] FIG. 2B is a plot that illustrates example activation functions used to combine inputs at any node of a neural network. These activation functions are normalized to have a magnitude of 1 and a bias of zero; but when associated with any connection can have a variable magnitude given by a weight and centered on a different value given by a bias. The values in the output layer 250 depend on the values in the input layer and the activation functions used at each node and the weights and biases associated with each connection that terminates on that node. The sigmoid activation function (dashed trace) has the properties that values much less than the center value do not contribute to the combination (a so called switch effect, switching on when traversing the plot from left edge to center, and switching off when traversing the plot from center to left edge) and large values do not contribute more than the maximum value to the combination (a so called saturation effect), both properties frequently observed in natural neurons. The tanh activation function (solid trace) has similar properties but allows both positive and negative contributions. The softsign activation function (short dash-dot trace) is similar to the tanh function but has much more gradual switch and saturation responses. The rectified linear units (ReLU) activation function (long dash-dot trace) simply ignores negative contributions from nodes on the previous layer but increases linearly with positive contributions from the nodes on the previous layer; thus, ReLU activation exhibits switching but does not exhibit saturation. In some embodiments, the activation function operates on individual connections before a subsequent operation, such as summation or multiplication; in other embodiments, the activation function operates on the sum or product or other mathematical or logical or textual operation on the values in the connected nodes. In other embodiments, other activation functions are used, such as kernel convolution.

[0038] Some neural networks are used that remember past layer contents and are useful in feedback, recursive and accumulation circuits. Such networks are called recurrent neural networks (RNN). Long Short Term Memory (LSTM) registers have been useful in implementing such RNN. LSTM networks are a type of RNN that has an internal state that can represent context information. They keep information about past inputs for an amount of time that is not fixed a priori, but rather depends on its weights and on the input data.

[0039] An advantage of neural networks is that they can be trained as a model M to produce a desired output from a given input without knowledge of how the desired output is computed. There are various algorithms known in the art to train the neural network on example inputs with known output, such as back propagation. The adjustable parameters P include the number of layers, the number of nodes in each layer, the connections, the operation at each node, the activation function and the weight and bias at each node. Typically, however, the number of layers, number of nodes per layer, the connections and the activation function for each node or layer of nodes is predetermined, and the training determines the weight and bias for each connection or at each node on each layer, so that weights and biases for all nodes constitute the uncertain parameters of P. A trained network that provides useful results, e.g., with demonstrated good performance for known results during validation, is then used in operation on new input data not used to train or validate the network.

[0040] In some neural networks, the activation functions, weights and biases, are shared for an entire layer. This provides the networks with shift and rotation invariant responses especially useful for identifying features, such as holes or objects, anywhere and oriented at any angle in an image. The hidden layers can also consist of convolutional layers, pooling layers, fully connected layers and normalization layers. The convolutional layer has parameters made up of a set of learnable filters (or kernels), which have a small receptive field, i.e., are connected to just a few nodes of the previous layer. In image processing the small receptive field is usually a few contiguous nodes in an area of an image represented by the previous layer, as in the visual system of an animal eye. In a pooling layer, the activation functions perform a form of non-linear down- sampling, e.g., producing one node with a single value to represent four nodes in a previous layer. There are several non-linear functions to implement pooling among which max pooling is the most common. A normalization layer simply rescales the values in a layer to lie between a predetermined minimum value and a predetermined maximum value, e.g., 0 and 1, respectively. [0041] It has been found that neural networks of limited output layer size provide advantages in recognizing contents or features in images.

[0042] A method for machine learning includes selecting the training set, the variables that will serve as context input X and result output Y, a model M, and the model’s certain (fixed) and uncertain (adjusted automatically during machine learning), parameters PF and PL, respectively, of model parameters, P = PFUPL- The training set T is then divided into a training subset TT with the majority of instances and a validation subset Tv with the remaining instances, such that T = TTUTV. Values for PL are determined by applying the method of FIG. IB on the training subset TT. The PL values are validated by using them on the validation set Tv, provided that the differences between YM and the Y for the validation set Tv is acceptably small, e.g., have mean square error (MSE) less than a desired threshold or have a distribution that satisfies desired characteristics, e.g., maximum entropy. If not validated, then control returns to earlier steps to revise the training set T, e.g., by acquiring more instances, or revising the model M, or revising the set of adjustable parameters PL or some combination If validated, then the model is used with the current values for P, on new operational data, Xo to produce operational results Yo. In some embodiments, where Yo can be subsequently or eventually determined to obtain Yod, the values of Xo and Yod are randomly or consistently added to the training set T and the parameters PL are updated using a new subset of TT of the updated T.

2. Doppler Compensation

[0043] In underwater acoustic communications, the Doppler effect results from the motion of the transmitter, the motion of the receiver, and the motion of acoustic scatterers including the surface water waves, leading to a frequency shift in received signals and making demodulation difficult at the receiver.

[0044] FIG. 3A and FIG. 3B are block diagrams that illustrate examples of underwater device configurations that encounter Doppler shifts in underwater communications, according to various embodiments. Depicted are two submersible remotely operated vehicles 310 a and 310b in relative motion. Acoustic transmission occurs along a ray that follows a direct line of sight (EOS). FIG. 3A also shows a boat 309 that can scatter an acoustic transmission such that a replica of the signal travels along a longer path to the boat and back to the receiving ROV, arriving at a later time than the transmission along the LOS path. Movement of the ROVs 310a and 310b and the boat add Doppler shifts to the frequency of the signal received due to their relative motions indicated by their velocity vectors VA, VB, VC for ROV 310a, ROV 310b and boat 309, respectively. The Doppler shift observed along the line of sight is controlled by the relative velocity of the two ROVs 310a, 310b, which is the projection of their velocity vectors along the LOS, as indicated by the angles added to FIG. 3B.

2.1 Prior art Doppler Compensation

[0045] In Phase Shift Keying (PSK), a signal is a time series of acoustic phases at N time points, each acoustic phase represented by 0n, n =l, N. For two phases TC radians (180 degrees) apart, each phase is a binary symbol, i.e., one bit. For phases JC/2 radians (90 degrees) apart, each phase is a 2-bit symbol (e.g., 0, 1, 2, 3). A pilot message is a known PSK signal, such as a binary (one bit) PSK (BPSK). The phases in these pilot signals are distorted by Doppler shifts in the LOS and other paths, including the SDP. Corrections to bring the phases to their original configuration is done by circuits at various taps. Different circuits have been designed to solve a Line of Sight (LOS) received signal plus a strong path reflection which is called the Second Dominant Path (SDP) that can be expected to have a very different Doppler shift. These different circuits are activated by a contact point called a tap that samples the received signal for processing by that circuit. Applying the correct tap to use is performed by a Decision Feedback Equalizer, which converges on the correct tap using feedback loops.

[0046] FIG. 3C and FIG. 3D are block diagrams that illustrate examples of hardware configurations that compensate Doppler shifts in underwater communications, according to the prior art. FIG. 3C depicts a Decision Feedback Equalizer (DFE) 320 that includes a feedforward filter 322, a single digital phase-locked loop (DPLL) 324, a feedback filter 326, and a tap decision module 328 with adjustable parameters for each set by a parameters updating algorithm module 321. The feedforward filter 322 compensates for the channel response of the direct (LOS) signal and the symbols aff summed represent the phase times series of the received signal, such as the pilot signal. The DPLL 324 compensates for the non-linear component of the phase shifts. The Feedback filter 326 compensates for the channel responses of the multipath signals. The tap decision module 328 selects the tap to use based on the results of the other components. The DFE works by iteratively adjusting the filter taps until the output signal is acceptable. The feedback loop in the DFE adjusts the filter taps based on the difference between the received signal and the estimated signal. The estimated signal is obtained by subtracting the feedback signal from the output of the feedforward filter. The feedback signal is obtained by passing the output of the feedback filter through the DPLL [5]. Thus, the decision module involves multiple trial and error multiple iterations. The corrected data 429 is then output.

[0047] An improved Model-based compensation is depicted by the DFE 330 in FIG. 3D. Here multiple DPLLs 335 arc added to the feedback filter 336 to suppress the phase shifts of the multipath signals. The parameters updating algorithm module 331 is revised, compared to 321, to set the parameters for the multiple DPLLs. The decision module 338 is revised compared to 328, and the output data 339 compared to 329, for the same reason. The performance is improved, but the computation cost is drastically increased. The improved performance includes better ability to solve nonlinear- distortion. However, the time to operate is increased to a range from several seconds to thousands of seconds. Thus, the Doppler corrections cannot be updated on shorter time scales. Adding more pilot messages makes it easier to estimate the channel properties, but the net data rate decreases due to the overhead of the extra pilot messages. Also, more pilot messages lowers spectrum utilization efficiency.

2.2 Improved Doppler Compensation

[0048] In various embodiments, a joint ML-based method is used to do estimation and compensation for the signal heavily affected by the Doppler effect in different settings of the environment. An ML-based estimator is trained with Phase Shift Keying (PSK) signals corresponding to different relative speeds of the Transmitter (Tx) and Receiver (Rx).

[0049] FIG. 4 is a block diagram that illustrates an examples of a hardware configuration that compensates Doppler shifts in underwater communications with machine learning, according to an embodiment. This embodiment of a DFE 430 includes a ML-based acoustic channel tap chooser 425 in the feedback loop 436. The feedforward filter 322 and single DPLL 324 are as described earlier. The parameter updating algorithm module 431 is revised compared to earlier versions to account for the ML tap chooser parameters. [0050] The tap chosen implements a path specific delay to different paths. Each tap in the ML- based solution combined with the summation of the phases is defined as a unique tap setting T. T p is considered the best solution for a particular LOS and SDP condition. The two next best settings, T p -i and T p+i are considered acceptable (good) but not best settings.

[0051] When the Rx receives signals, the received signals will first be classified by the ML- based Doppler estimator. The output of the Doppler estimator is K, defined as the power ratio of the line of sight (LOS) path to other paths in the channel, and D, the Doppler shifted frequency ratio, which is the Doppler shifted frequency fs over the central carrier frequency fc.

[0052] After the Doppler estimator is an ML-based digital estimator. The digital estimator is designed to be used with the previous methods which use a Digital Phase-Locked Loop (DPLL) combined with a Decision Feedback Equalizer (DFE). In the ML digital estimator, the DPLL loops in the feedback filter are expressed as circuit taps; so, the digital estimator is also called a tap selector and the output of the tap selector is a particular circuit tap that provides the best or preferred Doppler compensation for the current signal. The tap selector uses as input the K and D values from the Doppler estimator. After training with the data set and added features from ML-based Doppler compensating output, the estimator can choose the most appropriate tap, designated selected tap, taps, for the DFE to deal with the acoustic signals severely influenced by the Doppler conditions.

[0053] In these embodiments, the model M to be trained is used at a receiver to process acoustic signals received through the underwater acoustic channel. M=MuuMc. where MD is the Doppler estimator and Me is the circuit tap selector. In some embodiments, MD is a multilayer neural network (NN) with PDL= weights and biases of nodes in different layers to input the received pilot signal (or both sent and received pilot signal) and to output D and K, e.g., a neural network trained on simulations from a physical model using predetermined ranges of values for D and K. In some embodiments the neural network is a convolutional neural network or a recurrent neural network (RNN), the latter using long short term memory (LSTM) registers. In some embodiments MD is a physics model, such as a Rician model, with D and K parameters to be learned from the difference between received and known pilot signals. Me is a parameterized classifier (such as fine tree, linear discriminant, Gaussian naive Bayes, kernel naive Bayes, linear Support Vector Machine (SVM), quadratic SVM and cubic SVM) which uses received signal (in time domain) to determines whether the D and K combination belongs to a class that uses one tap or belongs to a different class that uses a different tap. The DFE/DPLL circuit uses the selected tap, taps, to process the received signal to most favorably match the transmitted signal by whatever similarity measure is desired, such as minimum mean square error or maximum entropy of deviations. The process is repeated for the next portion of the time series which may have a different combination of D and K and therefore use a different tap. In some embodiments, the persistence of the values for either D or K or both are considered, so that the values at one or more precious times becomes the initial estimate for the next values of D and K. In some embodiments, the correlation across the various taps (meaning, the Doppler correlation in the various paths) at a single time is considered. For example, a Kalman Filtering module (KM) or possibly an Extended KM can do the job.

[0054] M is trained so that the received reconstructed signal Y is about the same as the transmitted source signal X in the training set T. For example, if the transmitted source signal is output from a PSK encoder, then X= V. In some embodiments, the training involves the pilot signals for which the receiver knows the values of X. The signal received at the receiver is designated XR and is distorted by the acoustic channel including Doppler shift and multipaths. It is processed by the receiver using Compensation module C that uses the tap output by Me and the received signal XR, e.g., Y= C(XR, taps)

[0055] MD is trained, e.g., using X and XR to derive known D and K as produced using simulations with a physics-based model, such as the Rician model for the fading acoustic channel in 100 m of water depth, to provide a separate training set for the MD portion of the model, with known values for ranges of D and K and SNR. The output of MD is set of values: D and K for the LOS, as well as D and K for the SDP. One set of values corresponds to a unique tap to be used for processing that portion of the signal. Multiple passband paths (each with its own phase and amplitude, as each has a different attenuation and propagation delay) are processed by one complex tap. Often there are hundreds of paths but just a few taps have been found to be sufficient to handle such variability. Thus, though here are multiple taps, there are many fewer taps than paths. [0056] All uncertain parameters of the model M, including PD, PC are learned together, i.e., there is joint machine learning. Such embodiments for underwater acoustic communications use a method depicted in FIG. 5.

[0057] FIG. 5 is a flow diagram that illustrates an example method for performing underwater acoustic communications affected by Doppler shifts, according to an embodiment. Although steps are depicted in FIG. 5 as integral steps in a particular order for purposes of illustration, in other embodiments, one or more steps, or portions thereof, are performed in a different order, or overlapping in time, in series or in parallel, or are omitted, or one or more additional steps are added, or the method is changed in some combination of ways.

[0058] In step 501 through step 515 models MD and Me are trained. In step 501 values of a sent pilot time series (serving as context variable XI and comprising a series of symbols, such as phase shifts </)i in PSK protocols) and a received pilot time series (serving as result Y 1), either measured or computed by simulation, are collected for a machine learning training set. If measured, then in addition separate values of Doppler shift D and relative energy level K should be measured for at least a line of sight path (LOS) and one or more multipaths, including at least a second dominant path (SDP). In some embodiments, the shifts D and relative energy K, can be inferred by fitting a physical model, such as a Rayleigh or Rician model to the observed results. If simulated, than the simulations include a range of predetermined paths with their unique Doppler shifts and signal to noise ratios that amount to known values of K and D for each path. [0059] In step 503 a model to be trained for determining D and K for at least the LOS and SDP is selected. For example, if operations are confined to shallow waters less than 100m, then a Rician fading channel model can be fit to a received pilot in real time. A faster computation could be performed using a neural network or other data driven model that is pretrained on the training set. In some of these embodiments the model includes memory of past movements to predict a relatively narrow range for expected changes in Doppler shift and signal to noise ration affecting D and K for each path. In some embodiments, tracking the previous movement history is performed using time- sequential recurrent neural networks (RNN) embodied in long short term memory (LSTM) circuits with Kalman filtering to project ahead. This novel approach aims to optimize performance even in the most diverse Doppler-affected conditions, ensuring that the system remains adaptable and reliable. [0060] In step 505, another training set is collected that groups the best circuit tap for a given combination of D and K for the multipaths, such as the LOS and SDP. This can be performed using the current methods as the gold standard because these efforts are directed to improving efficiency and not necessarily concluding with a different processing tap.

[0061] In step 507 a tap classification model Me is selected to classify the D and K conditions for multipath, such as LOS and SDP, among others, as suitable for one tap or another. The classification model and any parameters therefore are determined in this step for each instance in the training set. In step 511, the models MD and Me selected above is trained on the training set, either separately or jointly. As described in more detail below, performance is improved if both Me and MD are trained jointly, i.e., the adjustable parameters PL of each iterated for each instance in the training set.

[0062] In step 513, it is determined if a model M training stop condition has been reached, such as any of the stop conditions described above with respect to machine learning, or some combination. Recall that typical stop conditions include one or more of a certain number of iterations, a certain number of cycles through the training subset TT of the training set T, producing differences between YM and Y less than some target threshold, producing successive iterations with no substantial reduction in differences between YM- If it is determined that the stop condition is not yet satisfied, control passes back to step 511 to continue with machine learning for model M.

[0063] If it is determined in step 513 that the stop condition is satisfied, then control passes to step 515 to determine whether the trained model M is validated. Any method may be used to validate the trained model M, such as differences between the model output YM and the source Xs is acceptably small, as measured by maximum or average differences or a random distribution of differences. If it is determined that the model M is not yet validated, control passes back to step 501 to expand the training set T and continue with machine learning for model M.

[0064] If it is determined in step 515 that the model M is validated, then control passes to step 531. In step 531, the models MD and Me are installed on a processor for a device engaged in underwater acoustic communications, such as one or more submersibles, manned or unmanned, mobile or stationary. Step 531 includes listening for acoustic signals until an acoustic signal is received. When an acoustic signal is received control passes to step 533. [0065] In step 533, it is determined whether the signal received is a pilot message or not. Step 531 includes digitizing an analog acoustic signal at an acoustic receiver. If not, control passes to step 535, described later. If it is a pilot message, then control passes to step 541.

[0066] In step 541, the digital signal input is fed into the Moto detect current values for D and K for each of one or more multipaths. Step 541 includes feeding the current values for D and K into Me to determine the current tap for processing subsequent acoustic signals. This accomplishes in essentially one iteration what the prior art methods require multiple feedback iterations to converge on an tap. Thus, these steps occur much faster than in the prior art computationally heavy methods, as described in more detail in a later section for example embodiments. In some embodiments, the values of D and K are used to track the transmitting device or the scatterer providing the SDP and, optionally, to predict their future movements and D or K values, e.g., using a physics model or a Kalman filter.

[0067] In some embodiments, the method 500 includes steps 543 and 545 to update the training set or models. In step 543 the pilot message is processed at the current tap and any discrepancies are used to provide revised values of the tap or D or K for one or more of the paths. For example, the pilot message can be processed at one or more of the adjacent taps to see if better results are obtained, such as results most similar to the known pilot message at a different tap. In step 545 it is determined whether to retrain one or more models, e.g., based on systematic discrepancies noted over the processing of several pilot messages. If so, control passes back to step 511 to train with the enhanced training set. If not control passes to step 561.

[0068] In step 561, it is determined whether conditions are satisfied to end the process. For example, the device on which the models are implemented has surfaced and is no longer engaged in underwater communications. If so, the process ends. Otherwise, control passes to step 531 described above.

[0069] If it is determined, in step 533, that the signal received is NOT a pilot message, control passes to step 535. In step 535 the current tap (determined in step 541) is used to process the signal. In some embodiments, the values of D and K are used to track the transmitting device or the scatterer providing the SDP and, optionally, to predict their future movements and D or K values, e.g., using a physics model for the objects, such as boats or animals, or a Kalman filter. Control then passes to step 561 described above to determine whether to end the method. 3. Example Embodiments

[0070] Example embodiments are described here. In the example embodiments, the input values X represent a digitized received acoustic signal. The Model M is a combination of a partially physical model MD that parameterize the effective acoustic channel environment and a purely data-driven model Me that parameterizes the preferred tap. Here, the application is to environments with one LOS and one SDP path accounting for most of the received acoustic signal. For such embodiments the physics-based model is a Rician model. The SNR is indicated in the performance plots by the ratio Eb/ N o , which is the energy per bit (Eb) divided by the noise (No).

[0071] Doppler tracking starts from the simplest set of available sensors and only considers information about ROVs’ absolute velocity and their planned trajectories as shown in FIG. 3B. These parameters allow communicating partners, denoted as ROVA and ROVs to estimate the potential Doppler shift of the direct path LOS with the projected velocities VA and VA onto the common LOS direction 6AB, the Doppler shifted frequency f s is expressed as given in Equation 1.

The term c is the velocity of the sound wave in the water and f c is the frequency of the carrier wave, VA is the horizontal component of the speed VA can be acquired as VA = VA COS 0 A, same as VB in the FIG. 3B. If we consider another strong reflection, which is a signal reflected by a boat as we label “C” and shown in FIG. 3A, the Doppler effected frequency between A, B and C can be presented as Equation 2. where 0AC and 0CB are common LOS directions between “AC” and “CB”, correspondingly. [0072] Assume (t) is the transmitted signal at the baseband. With a carrier frequency of f c , then the transmitted signal at the passband s(t) can be expressed by Equation 3.

Tx where Re{ • } means the real part, and t 0 is the starting time of the transmission. [0073] During the conventional demodulation, Doppler compensation is based on providing the DFE 320 with a DPLL 324 (as shown in FIG. 3C) the feedforward filter 322 compensates the channel response of the direct signal, the DPLL 324 compensates the nonlinear component of the phase shifts <pQ L (t), and the feedback filter 326 compensates the channel responses of the multipath signals. In the upgrade demodulation shown in FIG. 3D, DFE 330 , more DPEEs335 are added to the feedback filter 336 to suppress the phase shifts of the multipath signals. Among the feedback loops, the terms bf b are combined with summation i... /c. The terms b^ b refer to the conjugate transpose of the feedback filter taps. They are used in the calculation of the compensation phase update for the additional DPEEs. The performance is improved, but the computation cost is increased. Moreover, in real-time communications, the process of DFE 330 costs more time and results in a higher delay in transmissions.

3.1 Example processing

[0074] In the example embodiment in FIG. 4, w an ML tap chooser 425 is included in the feedback loop 436. Each tap in the ML-based solution, a tap is b^ b combined with summation <pl...<pk, is defined as a unique setting Tp, and two next best taps arc labeled as Tp-i and T P+ i. Here, <pk means the difference between the phase shifts of the direct and kth multipath signals. To solve for one direct path LOS plus SDP condition setting, one considers the combination in power ratio K of the LOS and other paths and Doppler shift frequency ratio D, to reduce the complexity and save time.

[0075] In the data driven solution, the first model is Doppler tracking with supervised machine learning. The existing Doppler tracking methods are primarily physics model-based and the model-based techniques are mature. However, for a heavy multipath environment, the accurate estimation requires a high complexity physics model with a Cross-Ambiguity Function (CAF) or a Single-Branch Autocorrelation (SB A) [20]. Data driven models give an opportunity to avoid the complex physics model. In the data driven models, we shrink the physical conditions to labels for the most likely to appear Doppler shifts. For example, in underwater communication, neither Tx or Rx is modeled to have a velocity the same as a jet. We train the machine learning model with reasonable velocity induced phase shift of the received signals. Stated another way, the high number of acoustic channel conditions can be grouped into a limited number of classes of Doppler shifts. For example, the high dimensionality of channel conditions is reduced to a lower dimensionality space of Doppler shifts D and relative energy K in the LOS path. In various embodiments this is accomplished using Linear Discriminant Analysis (LDA), Naive Bayes Analysis with a Gaussian kernel, Support Vector Machine (SVM) with linear, quadratic or cubic decision functions,

[0076] The Doppler effect allows the measurement of the distance, velocity and acceleration between a transmitter from water and a receiver on the seafloor by observing how the frequency received from the transmitter changes as it approaches the transmitter, is overhead and moves away.

[0077] For both training and evaluation, acoustic channel simulation are performed. In the underwater communication simulation, the software used were Matlab and Simulink on a desktop equipped with AMD Ryzen 9 5950X 16-core CPU (overclocked to 4.0 GHz), Patriot DDR4 128 GB RAM (overclocked to 3333 MHz), Samsung 970 EVO Plus 2 TB SSD (read speed up to 3500 mb/s) and Nvidia Quadro RTX 8000 GPU. The simulated signals are modulated and demodulated with BPSK. The physics model channels used were the Rayleigh channel, which is Rice with power ratio K as shape parameter having a value of K = 0, i.e., heavy multipath/saturation conditions and Rician with low, medium, and high K, i.e., different energy fractions on the LOS. It was confirmed that the result of using the Rayleigh channel dovetailed nicely with the Rician K = 0 setting. Rician fading is a stochastic model for signal propagation anomaly caused by partial interference of a signal with itself - the signal arriving at the receiver by several different, possibly constructively or destructively interfering paths. This is the multipath effect, and at least one of the paths is changing, including getting longer or shorter in length. Rician fading channel is the channel that considers when one of the paths, typically a LOS signal or some strong reflection signals, is much stronger than the others. In Rician fading, the amplitude gain is characterized by a Rician distribution. Rayleigh fading is considered a special case of Rician fading for when there is no LOS. In such a case, the Rician distribution, which describes the amplitude gain distribution in Rician fading, reduces to a Rayleigh distribution mathematically as K = 0. It is notable that Rician fading itself is a special case of Two- Wave with Diffuse Power (TWDP) fading, the characteristic can be described by two main parameters. The first one, K, is the ratio between the power in the direct path and the power in the other scattered paths. The second one, Q, is the total power from both paths and acts as a scaling factor to the distribution, K = i /2cr 2 , = v 2 + 2a 2 .

By tuning K, one can train or evaluate our proposed solution under different multipath conditions.

3.2 Example training

[0078] In an example embodiment, ML-based Doppler estimation by training one of several known classifiers with time domain Rician channel frequency shifted signals. Pilot signals are shifted by 100 Hz, 300 Hz or 500 Hz in a carrier wave that has carrier frequency fc = 10 kHz to train the Doppler estimator for D = 0.01, 0.03, 0.05. Each Doppler shift represents one relative velocity condition of the LOS and the multipath. The time signal is sampled with 1000 points as the source of the training data, which means 1000 instances for training the ML model. Here, Linear discriminant, linear SVM, quadratic SVM and cubic SVM , Naive Bayes for SVM are trained for Doppler relative speed estimation (by classifying the closest relative speed).

[0079] The data driven method simplifies the potential Doppler frequency shift compensation for difficult Doppler effects introduced by real situations. Unlike the prior art physics modelbased method, the data driven can (i) avoid unnecessary frequency shift band thus reducing the complexity of the model, and (ii) decrease the number of self-correlation or DPLLs and thereby save the corresponding computation time.

[0080] During validation and evaluation of the ML-based DFE 430, a more complex Doppler scenario is presented to the models. Compared with previous works, which consider moving objects and their direct path and multipath on the main path, we simulate the Doppler affected signals with a Rician channel that allows reflected paths and other dominant paths to be considered with their separate parameters. For example, considering the scenario of FIG. 3A, an SDP signal is produced by the relative speed between A and C. Under this condition, the Rician channel provides the two dominant paths by two different K factors and two different Doppler phase shifts D.

[0081] In an example embodiment, the ML-based Doppler estimator is trained to directly classify the shifted frequency. Secondly, the ML-based tap chooser in the feedback loop for the Doppler compensation is trained with different combinations of the more complex underwater Doppler environment, i.e., a major LOS plus an SDP. The tap chooser is trained with different K and D combinations in these two signal paths. After training, we perform the Doppler compensation with both the estimation result and the tap chooser to achieve a fast and power saving Doppler compensation compared with the existing physics and complex model-based methods. The tap chooser again trains several known classifier models with the more complex multipaths and selects the one with the best performance in a validations et..

[0082] The ML-based Doppler estimator is trained and validated with cross-validation in 5 folds (k=5). Different candidate classification models were used in the Doppler estimator, including fine tree, linear discriminant, Gaussian naive Bayes, kernel naive Bayes, linear SVM, quadratic SVM and cubic SVM. In other embodiments various neural networks (e.g., CNN, RNN) are used, but those results ae not evaluated here. The candidate Doppler estimators were trained with 30 combinations of D, K and SNR, including Doppler shift =0.0L 0.05, 0.1 separately applying random SNR (Eb/NQ) between 10 dB to 19 dB. To do the supervised machine learning training and validation, 1000 samples in the time domain serve as 1000 features and are labeled with corresponding configurations, which means a training set with 30,000 instances.

3.1 Example performance

[0083] FIG. 6A and FIG. 6B are tables that list machine learning options for Doppler shift compensation, according to various embodiments. Table 1 (FIG. 6A) lists Doppler estimation with different ML methods under different Doppler shift in LOS. Table 1 shows linear discriminant, linear SVM, quadratic SVM and cubic SVM have better performance than other classification models. Any of these are suitable for the Doppler estimator MD. In addition neural networks can be considered even though they were not tested here. Naive Bayes methods have compromised performance since the assumption that the features are independent of each other is not strictly true. The features in the Doppler shifted signal are not totally independent. With the platform spec described previously, the prediction speed can achieve 140 to 160 obs per second except for the inefficient kernel naive Bayes.

[0084] Also tested were two options for joint Doppler estimation and tap chooser. In the Doppler compensation module M, two configurations in machine learning were compared. One is the DFE tap chooser (Me) without aid from the ML-based Doppler estimation output (MD), and the other one is with the aid of the estimation output (MD). Before the Doppler compensation, we firstly investigate the influence on the Bit Error Rate (BER) of different K and D. The increase of K reduces the non-LOS paths interference to result in a better performance on BER. The more serious Doppler shift, which means higher D, leads to a compromised performance, higher BER. The compensation is designed to solve the one LOS plus one strong reflection problem. The ML-based Doppler estimator is shown in FIG. 4. It is modified from FIG. 3D . By making taps in the feedback loop in some fixed parameters, then we design a machine learning tap chooser to decide which tap to be used in the Doppler compensation feedback loop.

[0085] If the tap chooser MC is trained just on the pilot signal input and the associated tap, then the performance is found to be accurate no more than 85% of the time, which is considered poor. The complexity of the interference from two major paths is higher than only one path, making the dataset more difficult to be classified through machine learning methods. The highest accuracy is still less than 85%, which indicates using the sampled data solely as the dataset for the machine learning is not enough.

[0086] Consequently it was decided to use the output of K and D for each of several paths as determined by the Doppler estimator as input associated with known taps during training of the tap chooser model Me. This combined modeling worked well. When jointly trained with a training set of 30 data samples with the increment of 10 features sweep. Each of 1050 features, the performance of the joint Doppler estimator and tap chooser is shown in Table 2 (FIG. 6B). One of the top four classification methods including fine tree, linear SVM, quadratic SVM and cubic SVM is considered for the joint Doppler compensation model M. The joint Doppler estimation MD and compensation tap chooser Me sacrifice about 10 obs/sec in the prediction speed but get better accuracy in the validation.

[0087] FIG. 7A through FIG. 7C are plots that illustrate examples of simulated bit error rate (BER) of joint machine learning Doppler compensation with Binary Phase-Shift Keying (BPSK) modulation in a line of sight path (LOS) plus second dominant path (SDP), according to various embodiments. The horizontal axis is signal to noise ratio (SNR) the vertical axis is bit error rate. On each plot two channel conditions are plotted. Each condition is identified by the K and D for both the LOS and SDP. For each channel condition three traces are plotted, the BER for the best tap (T p ) and for the two next best taps (T p -i and T p+ iThe performance of two neighbor taps indicate the performance when the chosen tap is not the best one. As the Signal-to-Noise Ratio (SNR) increases, the performance of the higher K signal in the Rician channel can be very good. It is notable that the Doppler effect has a certain constant influence among low SNR to high SNR. In the low SNR condition, parameter D has a greater influence on the performance of the communication. On the other hand, in the high SNR condition, the power ratio K affects the performance more.

[0088] FIG. 8A through FIG. 8C are plots that illustrate examples of performance relative to optimal approaches, according to various embodiments. The horizontal axis indicates SNR and the vertical axis indicates mean square error of the Doppler compensation. The MSE is the MSE of the BER in FIG.7. MSE is dimensionless, indicating the disparity between error rates. For FIG.8A the dl through d4 arc 1 st : K=0dB, OdB D=0, 0.01 MSE between Tp and Tp-1; 2 nd : K=0dB, OdB D=0, 0.01 MSE between Tp and Tp+1; 3 rd : K=0dB, lOdB D=0, 0.01 MSE between Tp and Tp-1; 4 th : K=0dB, lOdB D=0, 0.01 MSE between Tp and Tp+l._This shows the difference between the conventional DFE 330 and our proposed ML-based method 430. In the conventional method 330, massive computation guarantees the most suitable tap is generated. However, the ML-based method 430 is choosing the tap in the feedback loop instead of performing all those computations. This trade-off leads to the possibility to choose the neighbor tap, and getting compromised Doppler compensation. The compromised performance is the cost for the simpler data driven method compared with the conventional DFE. Moreover, it is notable that lower K is getting fair performance In FIG. 7A through FIG. 7C because of the influence of the DFE and the interference caused by two strong paths.

4. Computational Hardware Overview

[0089] FIG. 9 is a block diagram that illustrates a computer system 900 upon which an embodiment of the invention may be implemented. Computer system 900 includes a communication mechanism such as a bus 910 for passing information between other internal and external components of the computer system 900. Information is represented as physical signals of a measurable phenomenon, typically electric voltages, but including, in other embodiments, such phenomena as magnetic, electromagnetic, pressure, chemical, molecular atomic and quantum interactions. For example, north and south magnetic fields, or a zero and non-zero electric voltage, represent two states (0, 1) of a binary digit (bit). Other phenomena can represent digits of a higher base. A superposition of multiple simultaneous quantum states before measurement represents a quantum bit (qubit). A sequence of one or more digits constitutes digital data that is used to represent a number or code for a character. In some embodiments, information called analog data is represented by a near continuum of measurable values within a particular range. Computer system 900, or a portion thereof, constitutes a means for performing one or more steps of one or more methods described herein.

[0090] A sequence of binary digits constitutes digital data that is used to represent a number or code for a character. A bus 910 includes many parallel conductors of information so that information is transferred quickly among devices coupled to the bus 910. One or more processors 902 for processing information are coupled with the bus 910. A processor 902 performs a set of operations on information. The set of operations include bringing information in from the bus 910 and placing information on the bus 910. The set of operations also typically include comparing two or more units of information, shifting positions of units of information, and combining two or more units of information, such as by addition or multiplication. A sequence of operations to be executed by the processor 902 constitutes computer instructions. [0091] Computer system 900 also includes a memory 904 coupled to bus 910. The memory 904, such as a Random Access Memory (RAM) or other dynamic storage device, stores information including computer instructions. Dynamic memory allows information stored therein to be changed by the computer system 900. RAM allows a unit of information stored at a location called a memory address to be stored and retrieved independently of information at neighboring addresses. The memory 904 is also used by the processor 902 to store temporary values during execution of computer instructions. The computer system 900 also includes a read only memory (ROM) 906 or other static storage device coupled to the bus 910 for storing static information, including instructions, that is not changed by the computer system 900. Also coupled to bus 910 is a non-volatile (persistent) storage device 908, such as a magnetic disk or optical disk, for storing information, including instructions, that persists even when the computer system 900 is turned off or otherwise loses power. [0092] Information, including instructions, is provided to the bus 910 for use by the processor from an external input device 912, such as a keyboard containing alphanumeric keys operated by a human user, or a sensor. A sensor detects conditions in its vicinity and transforms those detections into signals compatible with the signals used to represent information in computer system 900. Other external devices coupled to bus 910, used primarily for interacting with humans, include a display device 914, such as a cathode ray tube (CRT) or a liquid crystal display (LCD), for presenting images, and a pointing device 916, such as a mouse or a trackball or cursor direction keys, for controlling a position of a small cursor image presented on the display 914 and issuing commands associated with graphical elements presented on the display 914.

[0093] In the illustrated embodiment, special purpose hardware, such as an application specific integrated circuit (IC) 920, is coupled to bus 910. The special purpose hardware is configured to perform operations not performed by processor 902 quickly enough for special purposes. Examples of application specific ICs include graphics accelerator cards for generating images for display 914, cryptographic boards for encrypting and decrypting messages sent over a network, speech recognition, and interfaces to special external devices, such as robotic arms and medical scanning equipment that repeatedly perform some complex sequence of operations that are more efficiently implemented in hardware.

[0094] Computer system 900 also includes one or more instances of a communications interface 970 coupled to bus 910. Communication interface 970 provides a two-way communication coupling to a variety of external devices that operate with their own processors, such as printers, scanners and external disks. In general the coupling is with a network link 978 that is connected to a local network 980 to which a variety of external devices with their own processors are connected. For example, communication interface 970 may be a parallel port or a serial port or a universal serial bus (USB) port on a personal computer. In some embodiments, communications interface 970 is an integrated services digital network (ISDN) card or a digital subscriber line (DSL) card or a telephone modem that provides an information communication connection to a corresponding type of telephone line. In some embodiments, a communication interface 970 is a cable modem that converts signals on bus 910 into signals for a communication connection over a coaxial cable or into optical signals for a communication connection over a fiber optic cable. As another example, communications interface 970 may be a local area network (LAN) card to provide a data communication connection to a compatible LAN, such as Ethernet. Wireless links may also be implemented. Carrier waves, such as acoustic waves and electromagnetic waves, including radio, optical and infrared waves travel through space without wires or cables. Signals include man-made variations in amplitude, frequency, phase, polarization or other physical properties of carrier waves. For wireless links, the communications interface 970 sends and receives electrical, acoustic or electromagnetic signals, including infrared and optical signals, that cany information streams, such as digital data.

[0095] The term computer-readable medium is used herein to refer to any medium that participates in providing information to processor 902, including instructions for execution. Such a medium may take many forms, including, but not limited to, non-volatile media, volatile media and transmission media. Non-volatile media include, for example, optical or magnetic disks, such as storage device 908. Volatile media include, for example, dynamic memory 904. Transmission media include, for example, coaxial cables, copper wire, fiber optic cables, and waves that travel through space without wires or cables, such as acoustic waves and electromagnetic waves, including radio, optical and infrared waves. The term computer-readable storage medium is used herein to refer to any medium that participates in providing information to processor 902, except for transmission media.

[0096] Common forms of computer-readable media include, for example, a floppy disk, a flexible disk, a hard disk, a magnetic tape, or any other magnetic medium, a compact disk ROM (CD-ROM), a digital video disk (DVD) or any other optical medium, punch cards, paper tape, or any other physical medium with patterns of holes, a RAM, a programmable ROM (PROM), an erasable PROM (EPROM), a FLASH-EPROM, or any other memory chip or cartridge, a carrier wave, or any other medium from which a computer can read. The term non-transitory computer- readable storage medium is used herein to refer to any medium that participates in providing information to processor 902, except for carrier waves and other signals.

[0097] Logic encoded in one or more tangible media includes one or both of processor instructions on a computer-readable storage media and special purpose hardware, such as ASIC 920. [0098] Network link 978 typically provides information communication through one or more networks to other devices that use or process the information. For example, network link 978 may provide a connection through local network 980 to a host computer 982 or to equipment 984 operated by an Internet Service Provider (ISP). ISP equipment 984 in turn provides data communication services through the public, world-wide packet-switching communication network of networks now commonly referred to as the Internet 990. A computer called a server 992 connected to the Internet provides a service in response to information received over the Internet. For example, server 992 provides information representing video data for presentation at display 914.

[0099] The invention is related to the use of computer system 900 for implementing the techniques described herein. According to one embodiment of the invention, those techniques are performed by computer system 900 in response to processor 902 executing one or more sequences of one or more instructions contained in memory 904. Such instructions, also called software and program code, may be read into memory 904 from another computer-readable medium such as storage device 908. Execution of the sequences of instructions contained in memory 904 causes processor 902 to perform the method steps described herein. In alternative embodiments, hardware, such as application specific integrated circuit 920, may be used in place of or in combination with software to implement the invention. Thus, embodiments of the invention are not limited to any specific combination of hardware and software.

[0100] The signals transmitted over network link 978 and other networks through communications interface 970, carry information to and from computer system 900. Computer system 900 can send and receive information, including program code, through the networks 980, 990 among others, through network link 978 and communications interface 970. In an example using the Internet 990, a server 992 transmits program code for a particular application, requested by a message sent from computer 900, through Internet 990, ISP equipment 984, local network 980 and communications interface 970. The received code may be executed by processor 902 as it is received, or may be stored in storage device 908 or other non-volatile storage for later execution, or both. In this manner, computer system 900 may obtain application program code in the form of a signal on a carrier wave. [0101] Various forms of computer readable media may be involved in carrying one or more sequence of instructions or data or both to processor 902 for execution. For example, instructions and data may initially be carried on a magnetic disk of a remote computer such as host 982. The remote computer loads the instructions and data into its dynamic memory and sends the instructions and data over a telephone line using a modem. A modem local to the computer system 900 receives the instructions and data on a telephone line and uses an infra-red transmitter to convert the instructions and data to a signal on an infra-red a carrier wave serving as the network link 978. An infrared detector serving as communications interface 970 receives the instructions and data carried in the infrared signal and places information representing the instructions and data onto bus 910. Bus 910 carries the information to memory 904 from which processor 902 retrieves and executes the instructions using some of the data sent with the instructions. The instructions and data received in memory 904 may optionally be stored on storage device 908, either before or after execution by the processor 902.

[0102] FIG. 10 illustrates a chip set 1000 upon which an embodiment of the invention may be implemented. Chip set 1000 is programmed to perform one or more steps of a method described herein and includes, for instance, the processor and memory components described with respect to FIG. 9 incorporated in one or more physical packages (e.g., chips). By way of example, a physical package includes an arrangement of one or more materials, components, and/or wires on a structural assembly (e.g., a baseboard) to provide one or more characteristics such as physical strength, conservation of size, and/or limitation of electrical interaction. It is contemplated that in certain embodiments the chip set can be implemented in a single chip. Chip set 1000, or a portion thereof, constitutes a means for performing one or more steps of a method described herein.

[0103] In one embodiment, the chip set 1000 includes a communication mechanism such as a bus 1001 for passing information among the components of the chip set 1000. A processor 1003 has connectivity to the bus 1001 to execute instructions and process information stored in, for example, a memory 1005. The processor 1003 may include one or more processing cores with each core configured to perform independently. A multi-core processor enables multiprocessing within a single physical package. Examples of a multi-core processor include two, four, eight, or greater numbers of processing cores. Alternatively or in addition, the processor 1003 may include one or more microprocessors configured in tandem via the bus 1001 to enable independent execution of instructions, pipelining, and multithreading. The processor 1003 may also be accompanied with one or more specialized components to perform certain processing functions and tasks such as one or more digital signal processors (DSP) 1007, or one or more application-specific integrated circuits (ASIC) 1009. A DSP 1007 typically is configured to process real-world signals (e.g., sound) in real time independently of the processor 1003. Similarly, an ASIC 1009 can be configured to performed specialized functions not easily performed by a general purposed processor. Other specialized components to aid in performing the inventive functions described herein include one or more field programmable gate arrays (FPGA) (not shown), one or more controllers (not shown), or one or more other special-purpose computer chips.

[0104] The processor 1003 and accompanying components have connectivity to the memory 1005 via the bus 1001. The memory 1005 includes both dynamic memory (e.g., RAM, magnetic disk, writable optical disk, etc.) and static memory (e.g., ROM, CD-ROM, etc.) for storing executable instructions that when executed perform one or more steps of a method described herein. The memory 1005 also stores the data associated with or generated by the execution of one or more steps of the methods described herein.

4. Alternatives, Deviations and modifications

[0105] In the foregoing specification, the invention has been described with reference to specific embodiments thereof. It will, however, be evident that various modifications and changes may be made thereto without departing from the broader spirit and scope of the invention. The specification and drawings are, accordingly, to be regarded in an illustrative rather than a restrictive sense. Throughout this specification and the claims, unless the context requires otherwise, the word “comprise” and its valuations, such as “comprises” and “comprising,” will be understood to imply the inclusion of a stated item, element or step or group of items, elements or steps but not the exclusion of any other item, element or step or group of items, elements or steps. Furthermore, the indefinite article “a” or “an” is meant to indicate one or more of the item, element or step modified by the article. [0106] Notwithstanding that the numerical ranges and parameters setting forth the broad scope are approximations, the numerical values set forth in specific non-limiting examples are reported as precisely as possible. Any numerical value, however, inherently contains certain errors necessarily resulting from the standard deviation found in their respective testing measurements at the time of this writing. Furthermore, unless otherwise clear from the context, a numerical value presented herein has an implied precision given by the least significant digit. Thus, a value 1.1 implies a value from 1.05 to 1.15. The term “about” is used to indicate a broader range centered on the given value, and unless otherwise clear from the context implies a broader range around the least significant digit, such as “about 1.1” implies a range from 1.0 to 1.2. If the least significant digit is unclear, then the term “about” implies a factor of two, e.g., “about X” implies a value in the range from 0.5X to 2X, for example, about 100 implies a value in a range from 50 to 200. Moreover, all ranges disclosed herein are to be understood to encompass any and all subranges subsumed therein. For example, a range of "less than 10" for a positive only parameter can include any and all sub-ranges between (and including) the minimum value of zero and the maximum value of 10, that is, any and all sub-ranges having a minimum value of equal to or greater than zero and a maximum value of equal to or less than 10, e.g., 1 to 4.

5. References

[0107] All the references listed here are hereby incorporated by reference as if fully set forth herein except for terminology inconsistent with that used herein.

1. Mohammad Ali, Dushantha Nalin Jayakody, Tharindu Perera, Abhishek Sharma,

Kathiravan Srinivasan, and loannis Krikidis. 2019. Underwater Communications: Recent Advances. 1-10.

2. Stefano Basagni, Valerio Di Valerio, Petrika Gjanci, and Chiara Petrioli. 2018. Harnessing

HyDRO: Harvesting-Aware Data ROuting for Underwater Wireless Sensor Networks. In Proceedings of the Eighteenth ACM International Symposium on Mobile Ad Hoc Networking and Computing (Los Angeles, CA, USA) (Mobihoc ’18). Association for Computing Machinery, New York, NY, USA, 271-279. Won Choi, Girish Chowdhary, Andrew Singer, Hari Vishnu, AmirWeiss, and Gregory

Wornell. 2022. Online Segmented Recursive Least-Squares for Multipath Doppler Tracking. In 2022 Underwater Communications and Networking (UComms). IEEE. m Dagher. 2008. Quadratic kernel-free non-linear support vector machine. Journal of

Global Optimization 41, 1 (2008), 15-30. tsuyasu Deguchi, Yukihiro Kida, and Takuya Shimura. 2022. Suppression of effects of

Doppler shifts of multipath signals in underwater acoustic communication. Acoustical Science and Technology 43, 1 (2022), 10-21. qing Gui, Fu Xiao, Yang Zhou, Feng Shu, and Shui Yu. 2020. Performance Analysis of

Indoor Localization Based on Channel State Information Ranging Model. In Proceedings of the Twenty-First International Symposium on Theory, Algorithmic Foundations, and Protocol Design for Mobile Networks and Mobile Computing (Virtual Event, USA) (Mobihoc ’20). Association for Computing Machinery, New York, NY, USA, 191-200. ng-Ting Hsieh, Khizar Anjum, Songjun Huang, Indraneel Kulkarni, and Dario Pompili.

2021. Hybrid Analog-Digital Sensing Approach for Low-power Real-time Anomaly Detection in Drones. In 2021 IEEE 18th International Conference on Mobile Ad Hoc and Smart Systems (MASS). 446-454. ng-Ting Hsieh, Khizar Anjum, Songjun Huang, Indraneel Kulkarni, and Dario Pompili.

2021. Neural Network Design via Voltage-based Resistive Processing Unit and Diode Activation Function - A New Architecture. In 2021 IEEE International Midwest Symposium on Circuits and Systems (MWSCAS). 59-62. ng-Ting Hsieh, Khizar Anjum, and Dario Pompili. 2022. Ultra-low Power Analog

Recurrent Neural Network Design Approximation for Wireless Health Monitoring. In 2022 IEEE 19th International Conference on Mobile Ad Hoc and Smart Systems (MASS). ung-Ting Hsieh, Mehdi Rahmati, and Dario Pompili. 2020. FD-UWA: Full-Duplex

Underwater Acoustic Comms via Self-Interference Cancellation in Space. In 2020 IEEE 17th International Conference on Mobile Ad Hoc and Sensor Systems (MASS). 256-264. iqiang Ling, Lei Xie, and Huifang Chen. 2019. Joint Doppler Scale Estimation and

Timing Synchronization in Underwater Acoustic Communications. In 2019 IEEE International Conference on Signal Processing, Communications and Computing (ICSPCC). 1-6. iang Liu, Deborah Cohen, Tianyao Huang, Yimin Liu, and Yonina C. Eldar-. 2021.

Unambiguous Delay-Doppler Recovery From Random Phase Coded Pulses. 69 (2021 ), 4991-5004. enguang Mao, Jian He, and Lili Qiu. 2016. CAT: High-Precision Acoustic Motion

Tracking. In Proceedings of the 22nd Annual International Conference on Mobile Computing and Networking (New York City, New York) (MobiCom ’ 16). Association for Computing Machinery, New York, NY, USA, 69-81. ario Pompili, Tommaso Melodia, and Ian F. Akyildiz. 2009. Threedimensional and two-dimensional deployment analysis for underwater acoustic sensor networks. In Ad Hoc Networks, Vol. 7. 778 - 790. uoran Qi and Dario Pompili. 2022. Spatial Modulation-based Orthogonal Signal

Division Multiplexing for Underwater ACOMMS. In 6th Underwater Communications and Networking (UComms). 1-5. uoran Qi and Dario Pompili. 2022. UW-CTSM: Circular Time Shift Modulation for

Underwater Acoustic Communications. In 17th Wireless On-Demand Network Systems and Services Conference (WONS). 1-8. uoran Qi, Xueyuan Zhao, and Dario Pompili. 2019. Range-Extending Optical

Transceiver Structure for Underwater Vehicles and Robotics. In Proceedings of the International Conference on Underwater Networks & Systems (Atlanta, GA, USA) (WUWNET’ 19). Association for Computing Machinery, New York, NY, USA, Article 15, 8 pages. ehdi Rahmati, Zhuoran Qi, and Dario Pompili. 2021. Underwater Adaptive Video

Transmissions using MIMO-based Software-Defined Acoustic Modems. IEEE Transactions on Multimedia (2021), 1-1. .Yu. Rodionov, S.Yu. Kulik, F.S. Dubrovin, and P.P. Unru. 2020. Experimental

Estimation of the Ranging Accuracy Using Underwater Acoustic Modems in the Frequency Band of 12 kHz. In The 27th Saint Petersburg International Conference on Integrated Navigation Systems (ICINS). 1-3. mes Schatzman. 2015. The Cross- Ambiguity Function for emitter location and radar - practical issues for time discretization. In 2015 IEEE Signal Processing and Signal Processing Education Workshop (SP/SPE). 243-248. . Stojanovic, I. A. Catipovic, and I.G. Proakis. 1994. Phase-coherent digital communications for underwater acoustic channels. IEEE Journal of Oceanic Engineering 19, 1 (1994), 100-111. Stojanovic, J Catipovic, and J G Proakis. 1993. Adaptive multichannel combining and equalization for underwater acoustic communications. J. Acoust. Soc. Am (1993).ongying zhu, Xiaoping Li, Lei Shi, Yanming Liu, and Bo Yao. 2018. A New Fast

Doppler Shift and Doppler Rate Joint Acquisition Method for Hypersonic Vehicle Communications. In International Symposium on Antennas and Propagation (ISAP). 1- 2.