Advertisement

A data assimilation framework for data-driven flow models enabled by motion tomography

  • Dongsik Chang
  • Catherine R. EdwardsEmail author
  • Fumin Zhang
  • Jing Sun
Open Access
Regular Paper
  • 104 Downloads

Abstract

Autonomous underwater vehicles (AUVs) have become central to data collection for scientific and monitoring missions in the coastal and global oceans. To provide immediate navigational support for AUVs, computational data-driven flow models described as generic environmental models (GEMs) construct a map of the environment around AUVs. This paper proposes a data assimilation framework for the GEM to update the map using data collected by the AUVs. Unlike Eulerian data, Lagrangian data along the AUV trajectory carry time-integrated flow information. To facilitate assimilation of Lagrangian data into the GEM, the motion tomography method is employed to convert Lagrangian data of AUVs into an Eulerian spatial map of a flow field. This process allows assimilation of both Eulerian and Lagrangian data into the GEM to be incorporated in a unified framework, which introduces a nonlinear filtering problem. Considering potential complementarity of Eulerian and Lagrangian data in estimating spatial and temporal characteristics of flow, we develop a filtering method for estimation of the spatial and temporal parameters in the GEM. The observability is analyzed to verify the convergence of our filtering method. The proposed data assimilation framework for the GEM is demonstrated through simulations using two flow fields with different characteristics: (i) a double-gyre flow field and (ii) a flow field constructed by using real ocean surface flow observations from high-frequency radar.

Keywords

Motion tomography Data assimilation Generic environmental models 

1 Introduction

Autonomous underwater vehicles (AUVs) are proven versatile instruments for ocean sampling and monitoring (Curtin et al. 1993; Fratantoni and Haddock 2009; Leonard et al. 2010). However, environmental changes such as ocean currents often hinder the survey performance of AUVs. To cope with environmental changes, an AUV can employ environmental models (e.g., Smith et al. 2010; Chang et al. 2015 for path planning and Song and Mohseni 2017 for localization). For geophysical flow, typical regional ocean models (e.g., Luettich et al. 1992; Bleck 2002; Shchepetkin and McWilliams 2005; Haidvogel et al. 2008) numerically solve partial differential equations (PDEs) for a large spatial area with long-term prediction. However, their high complexity makes solving these PDEs computationally expensive. To reduce the computational burden, regional ocean models typically solve these PDEs with large spatial and temporal resolutions that may not be suitable for AUV planning and control. Data-driven flow models (Petrich et al. 2009; Mokhasi et al. 2009; Chang et al. 2014) can provide high spatial and temporal resolutions computationally fast for a small spatial area with short-term prediction. Hence, data-driven flow models are suitable for local guidance of AUVs.

Extending our previous work (Chang and Zhang 2016b), this paper focuses on an estimation problem for data-driven computational flow models described as generic environmental models (GEMs) (Zhang 2016). After initialized by using prior information of the environment, possibly obtained from geophysical ocean models, the GEM constructs a map of the environment to provide immediate navigational support for AUVs. When a flow model is involved in AUV navigation, the performance of AUV navigation may, to a large extent, rely on the accuracy of the model. In Szwaykowska (2014), Szwaykowska and Zhang (2018), the authors analyze the influence of the geophysical ocean model on AUV navigation and demonstrate that the error growth rate of the vehicle position depends on the accuracy and resolution of the model. This concept can also be extended to data-driven models. To improve the model accuracy, observation data can be incorporated into the estimation of the ocean state or parameters in the model, which is generally known as data assimilation (Robinson and Lermusiaux 2008).

Observation data incorporated in data assimilation can be categorized into Eulerian and Lagrangian. Eulerian data are framed with a fixed grid in space and time, and Lagrangian data are obtained while moving with the flow over time. Since most flow models are Eulerian, assimilation of Eulerian data into the model is relatively straightforward. However, Lagrangian observations such as data collected by AUVs carry time-integrated information along the trajectory and have both direct and indirect connections with the state variables and observation noise (e.g., observation model error and sensor noise) of flow models (Kuznetsov et al. 2003). Therefore, assimilation of Lagrangian data raises difficulties and requires an additional framework in comparison to Eulerian data assimilation.

For geophysical ocean models, Lagrangian data assimilation mostly employs passive drifters or floats. In Kuznetsov et al. (2003), a method for Lagrangian data assimilation is developed by using the augmented state that combines the Eulerian ocean state with the positions of Lagrangian observations traced by using advection equations. Another method introduced in Molcard (2003) computes Lagrangian velocity as the difference between the positions of a drifter over the position update interval. Then, this velocity is interpolated to be assimilated into a flow model. However, since AUVs are not passive but ‘controlled’, these methods using the positions of passive drifters may not be easily applicable to data-driven flow models combined with observations from AUVs. In addition, data assimilation for geophysical ocean models with high complexity is computationally expensive. In Hackbarth et al. (2014), flow field estimation and data assimilation have been studied for AUV path planning using a computational fluid dynamics model and flow measurements from AUVs on the fly. However, AUVs typically have a limited capability of flow measurement. In this paper, we present a framework of computationally efficient data assimilation for data-driven flow models using AUVs with no direct flow measurement and limited underwater localization capabilities.

To facilitate assimilation of Lagrangian data collected by AUVs into the GEM, we employ the motion tomography (MT) method (Wu et al. 2013; Chang et al. 2016, 2017). Along the trajectory of a vehicle, its motion is typically perturbed by ambient flow, deviating the actual trajectory of the vehicle from its predicted trajectory. By deriving an expression of this deviation using a vehicle motion model, MT constructs a system of equations that describes the influence of flow on the vehicle trajectory. Through solving this system of equations, MT converts Lagrangian data into an Eulerian spatial map of a flow field, allowing Lagrangian data to be incorporated together with Eulerian data into a unified data assimilation framework. Note that instead of direct flow measurements, our method assimilates an underlying flow field estimated by MT from time-integrated flow information carried in the vehicle trajectory. Extending our previous work (Chang and Zhang 2016a), MT in this paper is formulated in both space and time so that time-integrated flow information along the trajectory can be inferred in both space and time. This formulation enables the spatial map of a flow field constructed by MT to account for the temporal variability. To the best of our knowledge, this paper is the first work on a unified data assimilation framework for data-driven flow models that incorporates both Eulerian data and Lagrangian data collected by AUVs. This framework may also be a helpful analysis tool for geophysical ocean models dealing with Lagrangian data collected by AUVs.

In this paper, the GEM is constructed by using spatial and temporal basis functions along with their corresponding parameters. Assimilation of both Eulerian and Lagrangian data into the GEM through the unified framework involves a nonlinear filtering problem to estimate the spatial and temporal parameters of the GEM. We design a filtering method in which the spatial and temporal parameters of the GEM are individually estimated through assimilation of Lagrangian and Eulerian data, respectively. We analyze the observability to check the convergence of the proposed filtering method. The GEM combined with the proposed data assimilation framework can provide effective navigational support for AUVs in real time. To demonstrate its capability for AUV guidance, we compare three GEMs assimilating (i) both Eulerian and Lagrangian data, (ii) only Eulerian data, and (iii) only Lagrangian data, respectively. The three GEMs are used to guide simulated station-keeping vehicles in the following two flow fields with different characteristics: (i) a double-gyre flow field and (ii) a flow field constructed by using real ocean surface flow observations from high-frequency (HF) radar. The differences in the performance of the three GEMs show that the GEM combined with the proposed unified framework can favorably account for the spatial and temporal variations of flow by assimilating both Eulerian and Lagrangian data.

The rest of the paper is organized as follows. Section 2 presents data-driven flow modeling with emphasis on its application to the GEM for the guidance of AUVs. Section 3 provides an overview of MT to describe how an Eulerian spatial map is constructed from Lagrangian data collected by AUVs. Section 4 introduces a data assimilation method for the GEM in which assimilation of both Eulerian and Lagrangian data is achieved in a unified framework to estimate the spatial and temporal parameters of the GEM. Section 5 validates our method through simulations and analyzes the results. Lastly, Sect. 6 concludes the paper with future directions.

2 Data-driven flow modeling

Flow field modeling and estimation have been studied in oceanography, fluid dynamics, and marine robotics. Typical regional ocean models for geophysical flow have high computational costs and coarse spatial and temporal resolutions (e.g., on the order of kilometers and output on the order of hours to days), which are not suitable for AUV planning and control. By compromising detailed physical insights, data-driven flow models obtain flow estimates computationally faster and in higher resolution than PDE-based geophysical ocean models. This section presents a data-driven approach for flow modeling for the guidance of AUVs.

2.1 Data collection of flow

In this section, we describe Eulerian and Lagrangian representations of flow and present typical Eulerian and Lagrangian data sources that can be used for data-driven flow models.

2.1.1 Eulerian and Lagrangian representations of flow

The Eulerian representation describes flow as vectors at fixed coordinates in space and is used as a general method for ocean circulation modeling. This concept can be visualized by a spatial map of a flow field, in which flow vectors are assigned to fixed spatial locations. In the Lagrangian representation, the position of a particle is tracked as it moves along flow vectors in space and time, and the path traced out by this particle is called a pathline. While a pathline describes the trajectory of a single particle along the flow vectors in both space and time, the flow vectors represent instantaneous lines of motion of particles at each of the assigned spatial locations at a fixed time (see Fig. 1).
Fig. 1

Illustration of Eulerian and Lagrangian representations of flow. Vectors of Eulerian flow at a fixed grid in space and time are represented by blue arrows and a pathline generated by a particle following the flow vectors is represented by a red line

2.1.2 Data sources of flow

This section reviews the following three typical data sources: moorings, HF radar systems, and AUVs. These data sources have different complexities and ranges, and their observation data can be complementary to understand the spatial and temporal characteristics of flow.

A mooring is a stationary oceanographic instrumentation anchored on the sea floor with a collection of sensors. A mooring with the current meter can measure ocean currents typically on an hourly basis at different depths from near the sea surface to near the sea bottom. Although a mooring provides Eulerian data on fast time scales that are useful for time series analysis and interpretation, since it is fixed at one location, its flow data provide insufficient spatial variability for AUVs unless a set of moorings are installed in a dense network or array.

HF radar systems (Paduan et al. 1995; Gurgel et al. 1999; Shay et al. 2007) are shore-based remote sensing systems that use over-the-horizon technology to measure surface ocean currents, and are widely used in coastal ocean observing to provide near real-time observations. Shore stations of HF radar emit radio signals that bounce off surface waves and return to the receiver. The received radio signals are used to compute ocean surface current movement relative to ocean surface wave movement and the surface current observation is typically processed by averaging 20 min to 1 h time-series. The spatial and temporal resolutions of the HF radar systems depend on the signal frequency and configurations of the system. Most HF radar systems provide Eulerian data hourly with a typical spatial resolution of \(3\times 3\) or \(6\times 6\ \mathrm{km}^{2}\) for a large spatial coverage. However, the spatial resolution is considered low for AUV guidance and the data from the HF radar national network data server (http://cordc.ucsd.edu/projects/mapping/) require a 3 h processing delay.

AUVs are an important tool for adaptive ocean sampling and can be used to collect transect data in horizontal and vertical spaces. AUVs typically have limited localization capabilities while underwater (Zhang et al. 2015), so their positions are only available when they are at the surface of water. Therefore, AUVs in general follow predicted trajectories generated prior to diving into the water. While traveling underwater, the motion of an AUV is perturbed by ambient flow, deviating its actual trajectory from its predicted trajectory. This deviation accumulates along the vehicle trajectory and provides important Lagrangian information of flow. For example, the dead-reckoning method of underwater gliders employs flow estimates computed from this deviation.

2.2 Generic environmental models

The GEM is a class of data-driven computational models that estimate a map of the environment using the data collected by AUVs to support their navigation (Zhang 2016). The GEM is named “generic” in the sense that it is independent of boundary conditions that are required to compute the states of typical PDE-based models. This section introduces the structure of the GEM and the modeling of coastal ocean flow as an example of the GEM.

2.2.1 Model structure

We consider 2-dimensional flow fields for simplicity of presentation. Let subscripts x and y denote the x and y components in \({\mathbb {R}}^{2}\) and define a flow vector as \({\mathbf{f }}=[f_{x},f_{y}]^{T}\in {\mathbb {R}}^{2}\). We assume that spatial and temporal characteristics of flow can be approximated by a series of spatial and temporal basis functions. Let us denote the time by \(t\in {\mathbb {R}}\) and the position by \({\mathbf{r }}\in {\mathbb {R}}^{2}\). For position \({\mathbf{r }}\), we define a series of spatial basis functions indexed by m as \(\phi _{m}({\mathbf{r }})\in {\mathbb {R}}\) to approximate spatial variation of flow. For time t, a series of temporal basis functions indexed by n is given by \(\psi _{n}(t)\in {\mathbb {R}}\) to approximate temporal variation of flow.

Assuming separation of variables (i.e., the flow field can be approximated by a space-dependent term multiplied by a time-dependent term), we define parameters associated with the spatial basis functions as \(\eta _{x,m}\in {\mathbb {R}}\) and \(\eta _{y,m}\in {\mathbb {R}}\) and parameters associated with the temporal basis functions as \(\rho _{x,n}\in {\mathbb {R}}\) and \(\rho _{y,n}\in {\mathbb {R}}\). Then, using M spatial basis functions and N temporal basis functions, flow velocity \({\mathbf{f }}\) at position \({\mathbf{r }}\) and time t is represented by
$$\begin{aligned} \begin{aligned} f_{x}({\mathbf{r }},t)&= \left( \sum _{m=1}^{M}\eta _{x,m}\phi _{m}({\mathbf{r }})\right) \left( \sum _{n=1}^{N}\rho _{x,n}\psi _{n}(t)\right) \\ f_{y}({\mathbf{r }},t)&= \left( \sum _{m=1}^{M}\eta _{y,m}\phi _{m}({\mathbf{r }})\right) \left( \sum _{n=1}^{N}\rho _{y,n}\psi _{n}(t)\right) . \end{aligned} \end{aligned}$$
(1)
Let \(\varvec{\varTheta }_{x}\in {\mathbb {R}}^{M+N}\) and \(\varvec{\varTheta }_{y}\in {\mathbb {R}}^{M+N}\) denote the vectors of all the parameters in the x and y components of flow, respectively (i.e., \(\varvec{\varTheta }_{x} = [\varvec{\eta }_{x}^{T},\varvec{\rho }_{x}^{T}]^{T}\) and \(\varvec{\varTheta }_{y} = [\varvec{\eta }_{y}^{T},\varvec{\rho }_{y}^{T}]^{T}\) where \(\varvec{\eta }_{x} = [\eta _{x,1},\dots ,\eta _{x,M}]^{T}\), \(\varvec{\eta }_{y} = [\eta _{y,1},\dots ,\eta _{y,M}]^{T}\), \(\varvec{\rho }_{x} = [\rho _{x,1},\dots ,\rho _{x,N}]^{T}\), and \(\varvec{\rho }_{y} = [\rho _{y,1},\dots ,\rho _{y,N}]^{T}\)). Then, we can express (1) as
$$\begin{aligned} \begin{aligned} f_{x}({\mathbf{r }},t)&= h({\mathbf{r }},t;\varvec{\varTheta }_{x})\\ f_{y}({\mathbf{r }},t)&= h({\mathbf{r }},t;\varvec{\varTheta }_{y}), \end{aligned} \end{aligned}$$
(2)
in which \(h({\mathbf{r }},t; \cdot )\) is a nonlinear mapping from \(\varvec{\varTheta }_{x}\) and \(\varvec{\varTheta }_{y}\) to \(f_{x}\) and \(f_{y}\), respectively.
The choice for temporal basis functions often relies on whether the basis functions approximate periodic or aperiodic flow. Possible choices include Fourier series, wavelets, piecewise polynomials, and splines. Spatial basis functions can also be chosen from a variety range of functions. Among them, our experience in flow modeling (Chang et al. 2014) suggests Gaussian radial basis functions (RBFs), which are expressed by
$$\begin{aligned} \phi _{m}({\mathbf{r }})=\exp \left( -\frac{\Vert {\mathbf{r }}-{\mathbf{c }}_{m}\Vert ^2}{2\sigma _{m}^2}\right) , \end{aligned}$$
(3)
where m is the index, \({\mathbf{c }}_{m}\in {\mathbb {R}}^{2}\) is the center, and \(\sigma _{m}>0\) is the width. An overview of RBFs is given in Bishop (1995), Kumar (2004), Fornberg and Flyer (2015). RBFs have the properties of universal approximation (Park and Sandberg 1991) and best approximation (Girosi and Poggio 1990). The former describes that a finite set of RBFs with a single hidden layer can approximate any continuous functions of a finite number of real variables. The latter characterizes that one of its approximations to a function has the minimum error between the approximation and the function.

The basis functions of the GEM can be constructed by using prior information of the environment obtained from existing ocean models or historic observation data and its parameters can be trained on nowcast or forecast data from the ocean models. Ocean models are typically updated on a daily basis. However, to support AUV navigation in dynamic environments, the model parameters should be updated more frequently. During the time between the ocean model updates, one may use other observations such as data from AUVs or moorings to update the parameters of the GEM. This process can be considered as simplified data assimilation for data-driven flow models. Details of this data assimilation process for (1) is discussed in Sect. 4.

2.2.2 An example of the GEM

This section presents an example of the GEM in the form of (1) that represents coastal ocean flow [see our previous work (Chang et al. 2014) for details]. Note that by expanding (1), the equations become
$$\begin{aligned} \begin{aligned} f_{x}({\mathbf{r }},t)&= \sum _{m=1}^{M}\sum _{n=1}^{N}\eta _{x,m}\rho _{x,n}\phi _{m}({\mathbf{r }}) \psi _{n}(t)\\ f_{y}({\mathbf{r }},t)&= \sum _{m=1}^{M}\sum _{n=1}^{N}\eta _{y,m}\rho _{y,n}\phi _{m}({\mathbf{r }}) \psi _{n}(t). \end{aligned} \end{aligned}$$
(4)
Let us define \(\vartheta _{x,(m,n)}\) and \(\vartheta _{y,(m,n)}\) as the product of the mth spatial and nth temporal parameters in the x and y components, \(\eta _{x,m}\rho _{x,n}\) and \(\eta _{y,m}\rho _{y,n}\), respectively. Then, by defining \(\varvec{\vartheta }_{(m,n)}=[\vartheta _{x,(m,n)},\vartheta _{y,(m,n)}]^{T}\), (1) can be expressed as
$$\begin{aligned} {\mathbf{f }}({\mathbf{r }},t) = \sum _{m=1}^{M}\sum _{n=1}^{N}\varvec{\vartheta }_{(m,n)}\phi _{m}({\mathbf{r }})\psi _{n}(t). \end{aligned}$$
(5)
The spatial characteristics of flow is modeled using Gaussian RBFs as discussed in the previous section. To model the temporal characteristics, we decompose coastal ocean flow into tidal and non-tidal components. Tidal flow is forced by a superposition of known tidal constituents, each of which has a specific frequency related to astronomical phenomena. Therefore, to model temporal variation of tidal flow, we define the following temporal basis functions by using a series of sinusoidal functions:
$$\begin{aligned} \psi_{n}^{\mathrm {tide}}(t) = {\left\{ \begin{array}{ll} 1 \qquad &{}\hbox {if}\ n = 0\\ \cos (\omega _{\left\lceil \frac{n}{2}\right\rceil }t) \qquad &{}\text {if } n \text { is odd}\\ \sin (\omega _{\left\lceil \frac{n}{2}\right\rceil }t) \qquad &{}\text {if } n \text { is even}, \end{array}\right. } \end{aligned}$$
(6)
in which \(n\in \{0,1,2,\dots \}\) is the index, \(\psi _{0}^{\mathrm {tide}}\) represents the tidal residual flow, and for \(i = \lceil \frac{n}{2}\rceil \ge 1\), \(\omega _{i}\) is the frequency corresponding to the ith tidal constituent. Then, for position \({\mathbf{r }}\) and time t, the tidal flow \({\mathbf{f }}_{\mathrm {tide}}\in {\mathbb {R}}^{2}\) is expressed as
$$\begin{aligned} {\mathbf{f }}_{\mathrm {tide}}({\mathbf{r }},t) = \sum _{m=1}^{M}\sum _{n=0}^{2N} \varvec{\vartheta }_{(m,n)}^{\mathrm {tide}}\phi _{m}({\mathbf{r }})\psi _{n}^{\mathrm {tide}}(t), \end{aligned}$$
(7)
in which \(\varvec{\vartheta }_{(m,n)}^{\mathrm {tide}}\in {\mathbb {R}}^{2}\) is the vector of parameters associated with the mth spatial and nth temporal basis functions, M is the number of RBFs, and N is the number of tidal constituents.
To approximate non-tidal flow, weighted Laguerre polynomials are chosen as temporal basis functions. The weighted Laguerre polynomials are orthogonal and force temporal components to decay exponentially as \(t\rightarrow \infty\), maintaining the system stable. The temporal basis function using the pth order weighted Laguerre polynomials is defined as
$$\begin{aligned} \psi _{p}^{\mathrm {nontide}}(t) = \sqrt{2\zeta }\frac{e^{\zeta t}}{p!} \frac{d^{p}}{dt^{p}}(t^{p}e^{-2\zeta t}), \end{aligned}$$
(8)
where \(p\in \{0,1,2,\dots \}\) is the index representing the order of the Laguerre polynomials and \(\zeta >0\) is the time scaling factor which determines the rate of exponential decay. Many discussions have been raised to find an optimal value for the time scaling factor (see Israelsen and Smith 2014). Practically, an optimal value with the minimum error is obtained by solving a nonlinear optimization. In this paper, we choose \(\zeta\) empirically. Using 0th to Pth order Laguerre polynomials, we model the non-tidal flow \({\mathbf{f }}_{\mathrm {nontide}}\in {\mathbb {R}}^{2}\) as
$$\begin{aligned} {\mathbf{f }}_{\mathrm {nontide}}({\mathbf{r }},t) = \sum _{m=1}^{M}\sum _{p=0}^{P} \varvec{\vartheta }_{(m,p)}^{\mathrm {nontide}}\phi _{m}({\mathbf{r }}) \psi _{p}^{\mathrm {nontide}}(t), \end{aligned}$$
(9)
in which \(\varvec{\vartheta }_{(m,p)}^{\mathrm {nontide}}\in {\mathbb {R}}^{2}\) is the vector of parameters associated with the mth spatial and pth temporal basis functions, M is the number of RBFs, and P is the largest order of the Laguerre polynomial functions.
Then, coastal ocean flow is modeled as the summation of the tidal and non-tidal flow such as
$$\begin{aligned} {\mathbf{f }}({\mathbf{r }},t) = {\mathbf{f }}_{\mathrm {tide}}({\mathbf{r }},t) + {\mathbf{f }}_{\mathrm {nontide}}({\mathbf{r }},t). \end{aligned}$$
(10)
Figure 2 shows time-series surface flow observation from HF radar for coordinates \((-80.0240^{\circ },31.3261^{\circ })\) off the coast of Georgia along with modeled and predicted flow using the flow model (10). The model is constructed by using 31-day historical data from January 1, 2012 00:23 to January 31, 2012 23:53. To approximate the flow, the three major (M2, N2, and S2) tidal constituents and 0th to 14th Laguerre polynomials with time scaling factor \(\zeta =\frac{1}{20}\) are chosen to construct the temporal basis functions for the tidal and non-tidal flow, respectively. Only a single RBF is used as the spatial basis function for the fixed coordinates. In this example, each product of the spatial and temporal parameters is considered as one spatio-temporal parameter and the parameters are estimated using linear least squares. After the flow model is constructed, predictions are generated from the model for the next 48 h. Please note that for the rest of the paper, we discuss how spatial and temporal parameters in (1) can be estimated separately through MT and data assimilation.
Fig. 2

Surface flow observation (green solid lines) from HF radar for coordinates \((-80.0240^{\circ },31.3261^{\circ })\) off the coast of Georgia along with modeled flow (blue dotted lines) and predicted flow (red dashed lines) using the flow model (10) initialized on 31-day data in January, 2012

3 Motion tomography: Eulerian flow mapping from Lagrangian data

To facilitate assimilation of Lagrangian data collected by AUVs into the GEM, we convert the data into an Eulerian spatial map through MT so that Lagrangian data assimilation can be achieved together with Eulerian data assimilation in a unified framework. In this section, we first study how the flow field affects the horizontal motion of AUVs. Then, by exploiting multiple AUVs traveling in a domain, MT is formulated with spatio-temporal discretization, allowing to account for both spatial and temporal variability of flow. Lastly, the flow field estimation problem through MT and its parameterization are introduced.

3.1 Horizontal motion of AUVs under flow

To model the influence of flow on the vehicle trajectory, we consider the horizontal motion of AUVs in the presence of flow. The horizontal vehicle motion is modeled using a first-order particle model with constant speed \(s_{\mathrm {h}}\) and vehicle heading \(\theta\). Let us denote the time by \(t\in {\mathbb {R}}\) and the position by \({\mathbf{r }}\in {\mathbb {R}}^{2}\). Let \({\mathcal {T}}=[t^{0},t^{f}]\) be a bounded time interval called the observation interval. Let us consider that a vehicle travels using constant flow prediction \(\hat{{\mathbf{f }}}\) during the observation interval. Suppose that the actual position \({\mathbf{r }}\) of a vehicle is available only at the beginning and ending times of its travel, \(t=t^{0}\) and \(t=t^{f}\), respectively.

The predicted vehicle position \(\tilde{{\mathbf{r }}}(t)\) during the observation interval can be obtained by integrating
$$\begin{aligned} \dot{\tilde{{\mathbf{r }}}}(t) = s_{\mathrm {h}}\left[ \begin{array}{l} \cos \theta \\ \sin \theta \end{array}\right] + \hat{{\mathbf{f }}}, \end{aligned}$$
(11)
in which \(s_{\mathrm {h}}\) is the horizontal through-water speed of the vehicle and \(\hat{{\mathbf{f }}}\) is the predicted flow velocity. Let us assume that vehicle heading \(\theta\) is known. The actual vehicle position \({\mathbf{r }}(t)\) is affected by real flow defined by \({\mathbf{f }}({\mathbf{r }},t)\) and can be obtained by integrating
$$\begin{aligned} \dot{{\mathbf{r }}}(t) = s_{\mathrm {h}}\left[ \begin{array}{l} \cos \theta \\ \sin \theta \end{array}\right] + {\mathbf{f }}({\mathbf{r }},t). \end{aligned}$$
(12)
Since real flow \({\mathbf{f }}\) is unknown, \({\mathbf{r }}(t)\) is unknown during \(t\in (t^{0},t^{f})\). In contrast, predicted flow \(\hat{{\mathbf{f }}}\) is known along the vehicle trajectory. Therefore, without loss of generality, we let \(\hat{{\mathbf{f }}}=\mathbf{0 }\) for simplicity and instead of (11), throughout the paper, we consider
$$\begin{aligned} \dot{\tilde{{\mathbf{r }}}}(t) = s_{\mathrm {h}}\left[ \begin{array}{l} \cos \theta \\ \sin \theta \end{array}\right] . \end{aligned}$$
(13)
Because of unknown flow \({\mathbf{f }}\), the actual trajectory differs from the predicted trajectory. This difference is referred to as the motion-integration error. Let \(\gamma \in \{{\mathbf{r }}(t)\}_{t\in {\mathcal {T}}}:{\mathcal {T}}\rightarrow {\mathbb {R}}^{2}\) be the trajectory of a vehicle. From (12) and (13), the motion-integration error \(\mathbf{d }\in {\mathbb {R}}^{2}\) over one observation interval is given by
$$\begin{aligned} \begin{aligned} \mathbf{d }(\gamma ,{\mathcal {T}}\;)&= \int ^{t^{f}}_{t^{0}}\left( \dot{{\mathbf{r }}}(t) - \dot{\tilde{{\mathbf{r }}}}(t)\right) dt\\&= \int ^{t^{f}}_{t^{0}}{\mathbf{f }}({\mathbf{r }},t)dt. \end{aligned} \end{aligned}$$
(14)
For trajectory \(\gamma\), we introduce arc-length parameter \(\ell\), given by \(d\ell = s_{\mathrm {tr}}({\mathbf{f }}({\mathbf{r }},t))dt\), in which \(s_{\mathrm {tr}}\) is the speed of the vehicle along its actual trajectory, defined by \(s_{\mathrm {tr}}({\mathbf{f }}({\mathbf{r }},t)) = \Vert \dot{{\mathbf{r }}}(t)\Vert\). Then, (14) becomes
$$\begin{aligned} \mathbf{d }(\gamma ,{\mathcal {T}}\;) = \int _{\gamma }\frac{1}{s_{\mathrm {tr}}({\mathbf{f }}({\mathbf{r }},t))}{\mathbf{f }}({\mathbf{r }},t)d\ell . \end{aligned}$$
(15)

The motion-integration error has been used to estimate a flow field in the vicinity of an AUV that does not measure ambient flow directly. For example, the underwater glider, a buoyancy-driven AUV (Davis et al. 2002), computes a spatially and temporally averaged flow estimate from the motion-integration error along the vehicle trajectory traveled over one subsurface interval (Merckelbach et al. 2008). This method is very efficient in computation, and the glider incorporates this estimate into navigation to reduce the motion-integration error for the next subsurface interval. The work Petrich et al. (2009) presents a similar way of estimating a flow velocity to identify model parameters for a time-invariant flow field. However, the effectiveness of this method significantly degrades in the presence of flow with strong spatial and temporal variations (Chang et al. 2015).

3.2 Formulation of MT

MT incorporates spatial and temporal variability of flow by discretizing (15) in both space and time (Chang and Zhang 2016a). Suppose we deploy K vehicles indexed by \(i\in \{1,\dots ,K\}\) to collect data in spatial domain \({\mathcal {D}}\) over observation interval \({\mathcal {T}}=[t^{0},t^{f}]\) as illustrated in Fig. 3. Let us discretize domain \({\mathcal {D}}\) into \(P=R\times S\) grid cells with \(D_{(r,s)}\) denoting the (rs)th cell where \(r\in \{1,\dots ,R\}\) and \(s\in \{1,\dots ,S\}\). We define index \(j=(r-1)S+s\) such that \(D_{j}\equiv D_{(r,s)}\), \(j\in \{1,\dots ,P\}\). Let us also discretize \({\mathcal {T}}\) into T intervals and define index \(\tau \in \{1,\dots ,T\}\) such that \({\mathcal {T}}_{1}=[t^{0},t^{1}],\dots ,{\mathcal {T}}_{\tau }=[t^{\tau -1},t^{\tau }],\dots ,{\mathcal {T}}_{T}=[t^{T-1},t^{T}=t^{f}]\). Let \((D,{\mathcal {T}})\) denote the entire spatio-temporal domain and \((D_{j},{\mathcal {T}}_{\tau })\) the \((j,\tau )\)th interval of the domain.
Fig. 3

Illustration of MT mapping formulation for a time-varying flow field. Actual (the blue solid line) and predicted (the blue dashed line) vehicle trajectories are displayed in a discretized domain

To construct the flow vector, let us denote the flow velocity in grid cell \(D_{j}\) for time interval \({\mathcal {T}}_{\tau }\) by \({\mathbf{f }}_{(j,\tau )} = {\mathbf{f }}({\mathbf{r }},t)\), \({\mathbf{r }}\in D_{j}\), \(t\in t^{\tau }\) and assume \({\mathbf{f }}_{(j,\tau )}\) is constant within \((D_{j},{\mathcal {T}}_{\tau })\). Let us stack flow velocities for all the spatio-temporal intervals and define vector \(\overline{{\mathbf{f }}} = [\overline{{\mathbf{f }}}_{x}^{T},\overline{{\mathbf{f }}}_{y}^{T}]^{T}\), where \(\overline{{\mathbf{f }}}_{x}=[\dots ,f_{x,(P,\tau -1)},f_{x,(1,\tau )},\dots ,f_{x,(P,\tau )},f_{x,(1,\tau +1)},\dots ]^{T}\) and \(\overline{{\mathbf{f }}}_{y}=[\dots ,f_{y,(P,\tau -1)},f_{y,(1,\tau )},\dots ,f_{y,(P,\tau )}, f_{y,(1,\tau +1)},\dots ]^{T}\) are the x and y components of \(\overline{{\mathbf{f }}}\), respectively. Assuming that vehicle heading \(\theta _{(j,\tau )}^{i}\) of the ith vehicle within \((D_{j},{\mathcal {T}}_{\tau })\) is constant, this flow setting constructs the linear trajectory in \((D_{j},{\mathcal {T}}_{\tau })\), leading to the piecewise linear trajectory over \(({\mathcal {D}},{\mathcal {T}})\). We assume that vehicle heading \(\theta _{(j,\tau )}^{i}\) can be measured by a compass or estimated with small bounded error. The influence of the vehicle heading error on MT is analyzed in our previous work (Chang et al. 2017).

Note that the vehicle trajectory clearly depends on the flow field. Consider the ith vehicle passing through the jth cell during the \(\tau\)th time interval. Using the arc-length parameter \(\ell\), the length of the vehicle trajectory \(L_{(j,\tau )}^{i}\) can be obtained by
$$\begin{aligned} L_{(j,\tau )}^{i} = \int _{\gamma _{i}(D_{j},{\mathcal {T}}_{\tau })}d\ell _{i}, \end{aligned}$$
(16)
in which \(\gamma _{i}(D_{j},{\mathcal {T}}_{\tau })\) represents curve \(\gamma _{i}\) within \((D_{j},{\mathcal {T}}_{\tau })\). Suppose the ith vehicle passes through \((D_{j-1},{\mathcal {T}}_{\tau -1})\) before \((D_{j},{\mathcal {T}}_{\tau })\). Since the vehicle trajectory is formed by integrating the vehicle motion starting from the ending position in \((D_{j-1},{\mathcal {T}}_{\tau -1})\), vehicle trajectory \(\gamma _{i}(D_{j},{\mathcal {T}}_{\tau })\) depends on \(\gamma _{i}({\mathcal {T}}_{\tau -1},D_{j-1})\) and flow within \(({\mathcal {T}}_{\tau -1},D_{j-1})\). To consider the dependency of the vehicle trajectory on the flow field, we express the length of the vehicle trajectory as \(L_{(j,\tau )}^{i} = L_{(j,\tau )}^{i}(\overline{{\mathbf{f }}}).\)
Then, for the ith vehicle, (15) can be discretized into
$$\begin{aligned} \mathbf{d }_{i}=\sum _{\tau =1}^{T}\sum _{j=1}^{P}\frac{L_{(j,\tau )}^{i}(\overline{{\mathbf{f }}})}{s_{\mathrm {tr}}^{i}({\mathbf{f }}_{(j,\tau )})}{\mathbf{f }}_{(j,\tau )}, \quad i\in \{1,\dots ,K\}. \end{aligned}$$
(17)
Considering the flow velocity along the x and y directions separately, we have
$$\begin{aligned} \begin{aligned} d_{x,i}&= \sum _{\tau =1}^{T}\sum _{j=1}^{P}\frac{L_{(j,\tau )}^{i}(\overline{{\mathbf{f }}})}{s_{\mathrm {tr}}^{i}({\mathbf{f }}_{(j,\tau )})}f_{x,(j,\tau )}\\ d_{y,i}&= \sum _{\tau =1}^{T}\sum _{j=1}^{P}\frac{L_{(j,\tau )}^{i}(\overline{{\mathbf{f }}})}{s_{\mathrm {tr}}^{i}({\mathbf{f }}_{(j,\tau )})}f_{y,(j,\tau )}. \end{aligned} \end{aligned}$$
(18)
By constructing vectors \(\overline{\mathbf{d }}_{x}=[d_{x,1},d_{x,2},\dots ,d_{x,K}]^{T}\) and \(\overline{\mathbf{d }}_{y}=[d_{y,1},d_{y,2},\dots ,d_{y,K}]^{T}\), we can rewrite (18) as
$$\begin{aligned} \begin{aligned} \overline{\mathbf{d }}_{x}&= \mathbf{L }(\overline{{\mathbf{f }}})\overline{{\mathbf{f }}}_{x}\\ \overline{\mathbf{d }}_{y}&= \mathbf{L }(\overline{{\mathbf{f }}})\overline{{\mathbf{f }}}_{y}, \end{aligned} \end{aligned}$$
(19)
where
$$\begin{aligned} \mathbf{L }(\overline{{\mathbf{f }}})=\left[ \begin{array}{lllll} \dots &{} \frac{L_{(1,\tau )}^{1}(\overline{{\mathbf{f }}})}{s_{\mathrm {tr}}^{1}({\mathbf{f }}_{(1,\tau )})} &{} \dots &{} \frac{L_{(P,\tau )}^{1}(\overline{{\mathbf{f }}})}{s_{\mathrm {tr}}^{1}({\mathbf{f }}_{(P,\tau )})} &{} \dots \\ \vdots &{} \vdots &{} \ddots &{} \vdots &{}\vdots \\ \dots &{} \frac{L_{(1,\tau )}^{K}(\overline{{\mathbf{f }}})}{s_{\mathrm {tr}}^{K}({\mathbf{f }}_{(1,\tau )})} &{} \dots &{} \frac{L_{(P,\tau )}^{K}(\overline{{\mathbf{f }}})}{s_{\mathrm {tr}}^{K}({\mathbf{f }}_{(P,\tau )})} &{} \dots \\ \end{array} \right] . \end{aligned}$$
Matrix \(\mathbf{L }(\overline{{\mathbf{f }}})\) contains information of the travel time of individual vehicles for each of the spatio-temporal intervals. Note that because of the dependency of the vehicle trajectory on flow, (19) is nonlinear and typically underdetermined (\(K < TP\)). Constructing spatial flow field maps for the time intervals from Lagrangian data boils down to solving (19) for \(\overline{{\mathbf{f }}}\).

3.3 Flow field mapping

To solve the equations in (19) for flow \(\overline{{\mathbf{f }}}\), we first need to determine \(\mathbf{L }(\overline{{\mathbf{f }}})\) based on the knowledge of vehicle trajectories. However, because of limited localization capabilities of AUVs, their underwater trajectories are often unknown and thus must be estimated before solving (19). Therefore, flow field mapping through MT (see Algorithm 1) is achieved through an iterative process consisting of two key steps: trajectory tracing and flow field estimation. In this section, we introduce flow field estimation and refer to Chang et al. (2017) for details about trajectory tracing.

3.3.1 Flow field estimation

To solve the underdetermined nonlinear system of equations in (19), our previous work (Wu et al. 2013; Chang et al. 2016, 2017) developed a method by extending the Kaczmarz method (Kaczmarz 1937, 1993). The Kaczmarz method, also known as the algebraic reconstruction technique (Gordon et al. 1970), iteratively solves an underdetermined linear system of equations for computerized tomography (Kak and Malcom 2001; Natterer 1986; Cierniak 2011) in medical imaging. As its extension, our method linearizes the system of equations associated with MT at each iteration and solves the linearized system of equations.

For simplicity of presentation, let us omit subscripts x and y in (19) and first suppose we have a linear system of equations \(\mathbf{L }\overline{{\mathbf{f }}} = \overline{\mathbf{d }}\) where
$$\begin{aligned} \mathbf{L } = \left[ \begin{array}{c} \mathbf{L }_{1}\\ \vdots \\ \mathbf{L }_{K} \end{array} \right] ,\; \overline{{\mathbf{f }}} = \left[ \begin{array}{c} f_{1}\\ \vdots \\ f_{P} \end{array} \right] ,\; \overline{\mathbf{d }} = \left[ \begin{array}{c} d_{1}\\ \vdots \\ d_{K} \end{array} \right] . \end{aligned}$$
To solve this linear system of equations, the Kaczmarz method iterates the following optimization process:
$$\begin{aligned} \begin{aligned}&\overline{{\mathbf{f }}}^{k+1} = \mathop {\hbox {argmin}}\limits _{\overline{{\mathbf{f }}}}\frac{1}{2}\left\Vert\overline{{\mathbf{f }}} - \overline{{\mathbf{f }}}^{k} \right\Vert^{2}\\&\text {subject to}\quad d_{i} = \mathbf{L }_{i}\overline{{\mathbf{f }}}, \end{aligned} \end{aligned}$$
(20)
where \(\mathbf{L }_{i}\) is the ith row of matrix \(\mathbf{L }\), \(d_{i}\) is the ith element of vector \(\mathbf{d }\), \(k\in \{0,1,2,\dots \}\) is the index for the iteration, and \(i = \bmod (k,K) + 1\). Through the Lagrange multiplier method, the above formulation of the Kaczmarz method leads to the following:
$$\begin{aligned} \overline{{\mathbf{f }}}^{k+1} = \overline{{\mathbf{f }}}^{k} + \frac{d_{i} - \mathbf{L }_{i}\overline{{\mathbf{f }}}^{k}}{\Vert \mathbf{L }_{i}\Vert ^{2}}\mathbf{L }_{i}^{T}. \end{aligned}$$
(21)
The Kaczmarz method is geometrically represented as an iterative projection of \(\overline{{\mathbf{f }}}^{k}\) onto the hyperplane \({\mathcal {H}}_{i}\in \{\overline{{\mathbf{f }}}\in {\mathbb {R}}^{n}|\mathbf{L }_{i}\overline{{\mathbf{f }}}=d_{i}\}\).
Extended from the Kaczmarz method, a nonlinear Kaczmarz method has been developed in Wu et al. (2013), Chang et al. (2016, 2017) to solve (19) for MT. Suppose we have the following system of equations:
$$\begin{aligned} \mathbf{L }(\overline{{\mathbf{f }}})\overline{{\mathbf{f }}} = \overline{\mathbf{d }}, \end{aligned}$$
(22)
where
$${\mathbf{L}}(\overline{{\mathbf{f}}} ) = \left[ {\begin{array}{*{20}c} {{\mathbf{L}}_{1} (\overline{{\mathbf{f}}} )} \\ \vdots \\ {{\mathbf{L}}_{K} (\overline{{\mathbf{f}}} )} \\ \end{array} } \right],\;\overline{{\mathbf{f}}} = \left[ {\begin{array}{*{20}c} {f_{1} } \\ \vdots \\ {f_{P} } \\ \end{array} } \right],\;\overline{{\mathbf{d}}} = \left[ {\begin{array}{*{20}c} {d_{1} } \\ \vdots \\ {d_{K} } \\ \end{array} } \right].$$
To solve (22), we first formulate the following iterative optimization problem:
$$\begin{aligned} \begin{aligned}&\overline{{\mathbf{f }}}^{k+1} = \mathop {\hbox {argmin}}\limits _{\overline{{\mathbf{f }}}}\frac{1}{2}\left\Vert\overline{{\mathbf{f }}} - \overline{{\mathbf{f }}}^{k} \right\Vert^{2}\\&\text {subject to}\qquad d_{i} = \mathbf{L }_{i}(\overline{{\mathbf{f }}})\overline{{\mathbf{f }}}, \end{aligned} \end{aligned}$$
(23)
where \(\mathbf{L }_{i}(\overline{{\mathbf{f }}})\) is the ith row of matrix \(\mathbf{L }(\overline{{\mathbf{f }}})\), \(d_{i}\) is the ith element of vector \(\mathbf{d }\), \(i = \bmod (k,K) + 1\), and \(k\in \{0,1,2,\dots \}\) is the iteration index. To deal with the nonlinearity in the constraint, we linearize it by using the latest estimate of \(\overline{{\mathbf{f }}}\) at each iteration. That is, the method solves the following iterative optimization problem:
$$\begin{aligned} \begin{aligned}&\overline{{\mathbf{f }}}^{k+1} = \mathop {\hbox {argmin}}\limits _{\overline{{\mathbf{f }}}}\frac{1}{2}\left\Vert\overline{{\mathbf{f }}} - \overline{{\mathbf{f }}}^{k} \right\Vert^{2}\\&\text {subject to}\qquad d_{i} = \mathbf{L }_{i}(\overline{{\mathbf{f }}}^{k})\overline{{\mathbf{f }}}. \end{aligned} \end{aligned}$$
(24)
By solving (24), we obtain the following update equation:
$$\begin{aligned} \overline{{\mathbf{f }}}^{k+1} = \overline{{\mathbf{f }}}^{k} + \frac{d_{i} - \mathbf{L }_{i}(\overline{{\mathbf{f }}}^{k})\overline{{\mathbf{f }}}^{k}}{\Vert \mathbf{L }_{i}(\overline{{\mathbf{f }}}^{k})\Vert ^{2}}\Big (\mathbf{L }_{i}(\overline{{\mathbf{f }}}^{k})\Big )^{T}. \end{aligned}$$
(25)
As with the Kaczmarz method, the nonlinear Kaczmarz method based on (25) can be geometrically represented as an iterative projection of \(\overline{{\mathbf{f }}}^{k}\) onto hyperplane \({\mathcal {H}}_{i}\in \{\overline{{\mathbf{f }}}\in {\mathbb {R}}^{n}|\mathbf{L }_{i}(\overline{{\mathbf{f }}}^{k})\overline{{\mathbf{f }}} = d_{i}\}\).

3.3.2 Parameterization

Since we discretize (15) in both space and time, the dimension of the solution space for \(\overline{{\mathbf{f }}}_{x}\) and \(\overline{{\mathbf{f }}}_{y}\) in (19) may become very high. In addition, we may not have enough trajectory information to estimate full solution, causing the solution variable to be sparse. To address these issues, instead of solving the system of equations in (22) directly, we parameterize (22) using (1) and solve the parameterized system of equations. That is, we estimate the parameters of the model first and then reconstruct a flow field. By using a sufficiently small number of basis functions associated with parameters to approximate the flow field, we can reduce the dimension of the solution space.

Following the discretization setting for MT and omitting subscripts x and y for simplicity, the flow model in (1) can be expressed as the following nonlinear function:
$$\begin{aligned} f_{(j,\tau )} = h({\mathbf{r }}^{j},t^{\tau };\varvec{\varTheta }), \end{aligned}$$
(26)
in which \({\mathbf{r }}^{j}\) represents the position for grid cell \(D_{j}\), \(j\in \{1,\dots ,P\}\), \(t^{\tau }\) represents the time for time interval \({\mathcal {T}}_{\tau }\), \(\tau \in \{1,\dots ,T\}\), and \(\varvec{\varTheta } = [\eta ^{T},\rho ^{T}]^{T}\) is the vector of spatial and temporal parameters, which is the input to the nonlinear function in (26). By stacking \(f_{(j,\tau )}\), we construct \(\overline{{\mathbf{f }}}=[\dots ,f_{(P,\tau -1)},f_{(1,\tau )},\dots ,f_{(P,\tau )},f_{(1,\tau +1)},\dots ]^{T}\), which is plugged into the system of equations in (22). Note that matrix \(\mathbf{L }\) in (22) is also a nonlinear mapping for input \(\varvec{\varTheta }\). Now that we have a system of equations with two nonlinear mappings \(\mathbf{L }\) and \(\overline{{\mathbf{f }}}\), solving the system of equations is challenging. As a workaround, we alternatingly fix either spatial or temporal parameters using their latest estimates and solve the system of equations for the other parameters.
Let us define \(\varvec{\varPhi }({\mathbf{r }}) = [\dots ,\phi _{m}({\mathbf{r }}),\dots ]^{T}\), \(m\in \{1,\dots ,M\}\) and \(\varvec{\varPsi }(t) = [\dots ,\psi _{n}(t),\dots ]^{T}\), \(n\in \{1,\dots ,N\}\). Suppose at the kth iteration, we have estimates for parameters, \(\varvec{\rho }^{k}\) and \(\varvec{\eta }^{k}\). By fixing spatial parameters \(\varvec{\eta }\) using \(\varvec{\eta }^{k}\), we have \(f_{(j,\tau )} = (\varvec{\eta }^{k})^{T}\varvec{\varPhi }({\mathbf{r }}^{j})(\varvec{\varPsi }(t^{\tau }))^{T}\varvec{\rho }\). Then, we define \(\mathbf{G }^{\eta ^{k}}(\varvec{\rho })\) such that \(\mathbf{G }^{\eta ^{k}}(\varvec{\rho })\varvec{\rho } = \mathbf{L }(\overline{{\mathbf{f }}})\overline{{\mathbf{f }}}\) where spatial parameter \(\varvec{\eta }\) in \(\overline{{\mathbf{f }}}\) is evaluated using \(\varvec{\eta }^{k}\). The temporal parameter estimation problem can be solved by the following iterative optimization problem:
$$\begin{aligned} \begin{aligned}&\varvec{\rho }^{k+1} = \mathop {\hbox {argmin}}\limits _{\varvec{\rho }}\frac{1}{2}\Vert \varvec{\rho } - \varvec{\rho }^{k}\Vert ^{2}\\&\text {subject to}\qquad d_{i} = \mathbf{G }_{i}^{\eta ^{k}}(\varvec{\rho }^{k})\varvec{\rho }, \end{aligned} \end{aligned}$$
(27)
in which \(\mathbf{G }_{i}^{\eta ^{k}}(\varvec{\rho })\) is the ith row of \(\mathbf{G }^{\eta ^{k}}(\varvec{\rho })\). Similarly, by fixing temporal parameters \(\varvec{\rho }\) using \(\varvec{\rho }^{k}\), we have \(f_{(j,\tau )} = (\varvec{\rho }^{k})^{T}\varvec{\varPsi }(t^{\tau })(\varvec{\varPhi }({\mathbf{r }}^{j}))^{T}\varvec{\eta }\). Let us define \(\mathbf{G }^{\rho ^{k}}(\varvec{\eta })\) such that \(\mathbf{G }^{\rho ^{k}}(\varvec{\eta })\varvec{\eta } = \mathbf{L }(\overline{{\mathbf{f }}})\overline{{\mathbf{f }}}\) where temporal parameter \(\varvec{\rho }\) in \(\overline{{\mathbf{f }}}\) is evaluated using \(\varvec{\rho }^{k}\). Then, the spatial estimation problem can be solved by the following optimization problem:
$$\begin{aligned} \begin{aligned}&\varvec{\eta }^{k+1} = \mathop {\hbox {argmin}}\limits _{\varvec{\eta }}\frac{1}{2}\Vert \varvec{\eta } - \varvec{\eta }^{k}\Vert ^{2}\\&\text {subject to}\qquad d_{i} = \mathbf{G }_{i}^{\rho ^{k}}(\varvec{\eta }^{k})\varvec{\eta }, \end{aligned} \end{aligned}$$
(28)
in which \(\mathbf{G }_{i}^{\rho ^{k}}(\varvec{\eta })\) is the ith row of \(\mathbf{G }^{\rho ^{k}}(\varvec{\eta })\).

Based on the above two alternating optimization problems, we obtain an iterative algorithm for flow model parameter estimation (Algorithm 2). In the algorithm, the updating equations include relaxation parameter \(\lambda ^{k}\) which affects the convergence rate. To check the convergence, for k that satisfies \(\bmod (k,K) + 1 = K\), we first reconstruct \(\overline{{\mathbf{f }}}^{k}\) using the estimated parameters, \(\varvec{\rho }^{k}\) and \(\varvec{\eta }^{k}\). Then, we stop the algorithm if \(\Vert \mathbf{L }(\overline{{\mathbf{f }}}^{k})\overline{{\mathbf{f }}}_{x}^{k} - \overline{\mathbf{d }}_{x}\Vert\) and \(\Vert \mathbf{L }(\overline{{\mathbf{f }}}^{k})\overline{{\mathbf{f }}}_{y}^{k} - \overline{\mathbf{d }}_{y}\Vert\) are sufficiently small (i.e., below a threshold \(\epsilon _{\overline{{\mathbf{f }}}}\)).

In the next section, we present assimilation of Lagrangian data, converted into a spatial map of a flow field by MT, into the GEM. Note that flow field estimation (Algorithm 2) in MT is deterministic. Hence, by incorporating Lagrangian data into the data assimilation framework, we can reduce the uncertainties in Lagrangian observation data.

4 Data assimilation

This section introduces a method for assimilating both Eulerian and Lagrangian data into data-driven flow models described as GEMs through a unified framework of data assimilation. We first construct a system model for data assimilation. Let us omit subscripts x and y for simplicity of presentation and define a state variable \(\varvec{\varTheta }\) as defined in (2). Suppose we have a mooring that provides Eulerian data at a fixed location with sampling period \(T_{s}\). A team of AUVs travel around the mooring, collecting data, and their Lagrangian trajectory information is processed through MT in a batch every \(\alpha T_{s}\), \(\alpha \in {\mathbb {N}}^{+}\ge 2\) where \({\mathbb {N}}^{+}\) denotes the positive integer. We denote \(\varvec{\varTheta }_{k} = \varvec{\varTheta }(kT_{s})\) where k is the time step index and assuming that the state evolution is linear, we define
$$\begin{aligned} \varvec{\varTheta }_{k+1} = \mathbf{A }_{k}\varvec{\varTheta }_{k} + \varvec{\omega }_{k}, \end{aligned}$$
(29)
where \(\mathbf{A }_{k}\) is the system matrix and \(\varvec{\omega }_{k}\) is the process noise at the kth time step. We assume that \(\varvec{\omega }_{k}\) is zero mean Gaussian with known covariance \(\mathbf{Q }_{k}\). System matrix \(\mathbf{A }_{k}\) can be determined by using prior information of the environment obtained from historic observation data or ocean models. For example, spatial and temporal characteristics of flow may depend on specific regions and/or seasons, and these characteristics can be analyzed from historic observation data or ocean models to determine \(\mathbf{A }_{k}\). If prior information is not available, a simple choice may be \(\mathbf{A }_{k}=I\).
For position \({\mathbf{r }}\) and time step k, let us define an observation variable \(z_{k}({\mathbf{r }})\) to be observation of either \(f_{x}({\mathbf{r }},kT_{s})\) or \(f_{y}({\mathbf{r }},kT_{s})\). Provided that a mooring is deployed at \({\mathbf{r }}^{E}\), Eulerian flow observation at time step k is denoted by \(z_{k}({\mathbf{r }}^{E})\). For Lagrangian data, suppose that a map of a flow field constructed by MT contains P spatial grid cells (see Fig. 3). Let \({\mathbf{r }}^{L}_{j}\) be a position that represents the jth grid cell. Then, we denote flow observation based on the Lagrangian data at time step k by \(z_{k}({\mathbf{r }}^{L}_{j})\), \(j\in \{1,\dots ,P\}\). Let us stack both Eulerian and Lagrangian observations such that \(\mathbf{z }_{k} = [z_{k}({\mathbf{r }}^{E}),z_{k}({\mathbf{r }}^{L}_{1}),\dots ,z_{k}({\mathbf{r }}^{L}_{P})]\) and define matrix \(\mathbf{H }\) using (2) such that
$$\begin{aligned} \mathbf{H }_{k}(\varvec{\varTheta }_{k})= \left[ \begin{array}{c} h_{k}({\mathbf{r }}^{E},\varvec{\varTheta }_{k})\\ h_{k}({\mathbf{r }}^{L}_{1},\varvec{\varTheta }_{k})\\ \vdots \\ h_{k}({\mathbf{r }}^{L}_{P},\varvec{\varTheta }_{k}) \end{array}\right] , \end{aligned}$$
(30)
where \(h_{k}({\mathbf{r }},\varvec{\varTheta }) = h({\mathbf{r }},kT_{s};\varvec{\varTheta })\). Then, the observation equation at time step k is given by
$$\begin{aligned} \mathbf{z }_{k} = \mathbf{H }_{k}(\varvec{\varTheta }_{k}) + \varvec{\nu }_{k}, \end{aligned}$$
(31)
where observation noise \(\varvec{\nu }_{k}\) is assumed zero mean Gaussian with known covariance matrix \({\mathbf{R}}_{k}\).

Remark 1

Assimilation of Eulerian and Lagrangian data into the GEM helps to reduce uncertainties in the noisy data. For such information fusion to be achieved in a unified framework of data assimilation, we should have a clear understanding of the covariance of noise in both data. Since Eulerian data are collected at a fixed location, the covariance of noise in Eulerian data can be obtained from historic data or geophysical ocean models. However, since Lagrangian data are collected from mobile sensors, the covariance of noise in Lagrangian data is difficult to identify. We assume that the noise in the field is spatially uniform with respect to covariance and the noise in Lagrangian data is ergodic with respect to covariance. Then, the covariance of noise in Lagrangian data can be obtained by computing the covariance of noise in Eulerian data averaged over time at a fixed location. We also consider local correlation of noise covariance in the field. We assume that each grid cell in the Eulerian spatial map converted from Lagrangian data is identically correlated with its neighboring grid cells with respect to noise covariance. That is, noise covariance matrix \({\mathbf{R}}_{k}\) is constructed such that \({\mathbf{R}}_{k,(p,p)} = {\mathbb {E}}[\omega _{k,p}\omega _{k,p}^{T}] = \omega\) and \({\mathbf{R}}_{k,(p,q)} = {\mathbb {E}}[\omega _{k,p}\omega _{k,q}^{T}] = \omega\) if the pth and qth grid cells are neighboring where \(p=\{1,\dots ,P\}\), \(q=\{1,\dots ,P\}\), and \(\omega\) is constant.

Because of the nonlinear observation equation, parameter estimation for the system (29) and (31) becomes a nonlinear filtering problem. To deal with this problem, we decompose it into two linear sub-filtering problems for (i) spatial parameter estimation and (ii) temporal parameter estimation. For each sub-filtering problem, we fix either set of spatial or temporal parameters and estimate the other set of parameters. Because of their different spatial and temporal sampling scales, Eulerian data better account for temporal variability of a flow field while Lagrangian data better for spatial variability. Therefore, we use Eulerian data to update temporal parameters and Lagrangian data to update spatial parameters. This decomposition of the nonlinear filtering problem is valid provided that the spatial and temporal characteristics of flow can be individually estimated from Lagrangian and Eulerian data, respectively. In the following sections, we present our filtering method and analyze the observability to verify the convergence of the derived filters.

4.1 Temporal and spatial parameter estimation

As described in the previous section, Eulerian and Lagrangian data are provided on different time scales, leading to different time scales for Eulerian and Lagrangian data assimilation (i.e., every time step for Eulerian data and every \(\alpha\)th time step for Lagrangian data). Suppose Eulerian data are available at time step k and the latest estimates of the spatial parameters were computed at time step \(\lfloor k/\alpha \rfloor \alpha\). We fix all the spatial parameters \(\varvec{\eta }_{k}\) using their latest estimates \(\varvec{\eta }_{\lfloor k/\alpha \rfloor \alpha }\) and estimate the temporal parameters \(\varvec{\rho }_{k}\). Now, in state vector \(\varvec{\varTheta }\), \(\varvec{\rho }\) is the only unknown, formulating the filtering problem that is linear in \(\varvec{\rho }\).

The state and observation equations for temporal parameter estimation are given by
$$\begin{aligned} \varvec{\rho }_{k+1}&= \mathbf{A }_{k}^{\rho }\varvec{\rho }_{k} + \varvec{\omega }_{k}^{\rho } \end{aligned}$$
(32)
$$\begin{aligned} \mathbf{z }_{k}&= \mathbf{H }_{k}^{\rho }\varvec{\rho }_{k} + \varvec{\nu }_{k}^{\rho }, \end{aligned}$$
(33)
where \(\mathbf{H }_{k}^{\rho } = \varvec{\eta }_{\lfloor k/\alpha \rfloor \alpha }^{T}\varvec{\varPhi }({\mathbf{r }}^{E})\varvec{\varPsi }_{k}^{T}\), and \(\varvec{\omega }_{k}^{\rho }\) and \(\varvec{\nu }_{k}^{\rho }\) are the vectors of the process and observation noise, which are zero mean Gaussian with known covariance \(\mathbf{Q }_{k}^{\rho }\) and \({\mathbf{R}}_{k}^{\rho }\). For the system in (32) and (33), a Kalman filter can be derived as
$$\begin{aligned} \hat{\varvec{\rho }}_{k}^{-}&= \mathbf{A }_{k}^{\rho }\hat{\varvec{\rho }}_{k-1}^{+}\\ \mathbf{P }_{k}^{\rho -}&= \mathbf{A }_{k}^{\rho }\mathbf{P }_{k-1}^{\rho +}(\mathbf{A }_{k}^{\rho })^{T} + \mathbf{Q }_{k-1}^{\rho }\\ \mathbf{K }_{k}&= \mathbf{P }_{k}^{\rho -}(\mathbf{H }_{k}^{\rho })^{T}(\mathbf{H }_{k}^{\rho }\mathbf{P }_{k}^{\rho -}(\mathbf{H }_{k}^{\rho })^{T} + {\mathbf{R}}_{k}^{\rho })^{-1}\\ \hat{\varvec{\rho }}_{k}^{+}&= \hat{\varvec{\rho }}_{k}^{-} + \mathbf{K }_{k}(\mathbf{z }_{k} - \mathbf{H }_{k}^{\rho }\hat{\varvec{\rho }}_{k}^{-})\\ \mathbf{P }_{k}^{\rho +}&= (I - \mathbf{K }_{k}\mathbf{H }_{k}^{\rho })\mathbf{P }_{k}^{\rho -}(I - \mathbf{K }_{k}\mathbf{H }_{k}^{\rho })^{T} + \mathbf{K }_{k}{\mathbf{R}}_{k}^{\rho }\mathbf{K }_{k}^{T}, \end{aligned}$$
where \(\hat{\varvec{\rho }}_{k}\) is the optimal estimate of \(\varvec{\rho }_{k}\).

Suppose Lagrangian data are available at the kth step. Since Lagrangian data are collected over relatively a long time period, the temporal scale of Lagrangian data does not match that of Eulerian data. To resolve this issue, we construct an Eulerian spatial map for time step k by using the estimated parameters through MT using Algorithm 2 and assimilate the constructed map into the GEM. Suppose that the latest estimates for the temporal parameters were computed at the \((k-1)\)th step. In contrast to temporal parameter estimation, we fix all the temporal parameters \(\varvec{\rho }\) using their latest estimates \(\varvec{\rho }_{k-1}\). Then, the subsequent filtering problem is linear in \(\varvec{\eta }\).

For spatial parameter estimation, the state and observation equations are given by
$$\begin{aligned} \varvec{\eta }_{k+1}&= \mathbf{A }_{k}^{\eta }\varvec{\eta }_{k} + \varvec{\omega }^{\eta }_{k} \end{aligned}$$
(34)
$$\begin{aligned} \mathbf{z }_{k}&= \mathbf{H }_{k}^{\eta }\varvec{\eta }_{k} + \varvec{\nu }_{k}^{\eta }, \end{aligned}$$
(35)
where
$$\begin{aligned} \mathbf{H }_{k}^{\eta } = \left[ \begin{array}{c} \varvec{\rho }_{k-1}^{T}\varvec{\varPsi }_{k}\varvec{\varPhi }({\mathbf{r }}^{L}_{1})^{T}\\ \vdots \\ \varvec{\rho }_{k-1}^{T}\varvec{\varPsi }_{k}\varvec{\varPhi }({\mathbf{r }}^{L}_{P})^{T} \end{array}\right] , \end{aligned}$$
and \(\varvec{\omega }_{k}^{\eta }\) and \(\varvec{\nu }_{k}^{\eta }\) are the vectors of the process and observation noise, which are zero mean Gaussian with known covariance \(\mathbf{Q }_{k}^{\eta }\) and \({\mathbf{R}}_{k}^{\eta }\). For the system in (34) and (35), we derive a Kalman filter as follows.
$$\begin{aligned} \hat{\varvec{\eta }}_{k}^{-}&= \mathbf{A }_{k}^{\eta }\hat{\varvec{\eta }}_{k-1}^{+}\\ \mathbf{P }_{k}^{\eta -}&= \mathbf{A }_{k}^{\eta }\mathbf{P }_{k-1}^{\eta +}(\mathbf{A }_{k}^{\eta })^{T} + \mathbf{Q }_{k-1}^{\eta }\\ \mathbf{K }_{k}&= \mathbf{P }_{k}^{\eta -}(\mathbf{H }_{k}^{\eta })^{T}(\mathbf{H }_{k}^{\eta }\mathbf{P }_{k}^{\eta -}(\mathbf{H }_{k}^{\eta })^{T} + {\mathbf{R}}_{k}^{\eta })^{-1}\\ \hat{\varvec{\eta }}_{k}^{+}&= \hat{\varvec{\eta }}_{k}^{-} + \mathbf{K }_{k}(\mathbf{z }_{k} - \mathbf{H }_{k}^{\eta }\hat{\varvec{\eta }}_{k}^{-})\\ \mathbf{P }_{k}^{\eta +}&= (I - \mathbf{K }_{k}\mathbf{H }_{k}^{\eta })\mathbf{P }_{k}^{\eta -}(I - \mathbf{K }_{k}\mathbf{H }_{k}^{\eta })^{T} + \mathbf{K }_{k}{\mathbf{R}}_{k}^{\eta }\mathbf{K }_{k}^{T}, \end{aligned}$$
where \(\hat{\varvec{\eta }}_{k}\) is the optimal estimate of \(\varvec{\eta }_{k}\).

4.2 Observability analysis

Given a system with no control input, a Kalman filter converges if the system is uniformly completely observable (see Jazwinski 1970). We redefine uniform complete observability in Jazwinski (1970) as follows.

Definition 1

The linear system
$$\begin{aligned} \varvec{\varTheta }_{k+1}&= \mathbf{A }_{k}\varvec{\varTheta }_{k} + \varvec{\omega }_{k} \end{aligned}$$
(36)
$$\begin{aligned} \mathbf{z }_{k}&= \mathbf{H }_{k}\varvec{\varTheta }_{k} + \varvec{\nu }_{k} \end{aligned}$$
(37)
is uniformly completely observable if there exist \(\tau ,\beta _{1},\beta _{2}>0\) such that the observability Gramian \({\mathcal {J}}(k,k-\tau ) = \sum _{j=k-\tau }^{k}\mathbf{H }_{j}^{T}{\mathbf{R}}_{j}^{-1}\mathbf{H }_{j}\) satisfies \(\beta _{1}I \preccurlyeq {\mathcal {J}}(k,k-\tau ) \preccurlyeq \beta _{2}I\) for all \(k>\tau\) where the dimension of I is defined accordingly. Here, \({\mathbf{R}}_{j}\) is the covariance matrix for noise \(\varvec{\nu }_{j}\).

Lemma 1

Let nonzero vectors\(\mathbf{u }_{i}\in {\mathbb {R}}^{n}\), \(i\in \{1,\dots ,n\}\)be linearly independent. Then, \(\varvec{{\mathcal {M}}} = \sum _{i=1}^{n}\mathbf{u }_{i}\mathbf{u }_{i}^{T}\in {\mathbb {R}}^{n\times n}\)has full rank.

Proof

Consider nonzero vector \(\mathbf{v }_{1}\in \mathrm {span}\{\mathbf{u }_{2},\dots ,\mathbf{u }_{n}\}^{\perp }\). Then, \(\varvec{{\mathcal {M}}}\mathbf{v }_{1} = (\mathbf{u }_{1}\mathbf{u }_{1}^{T})\mathbf{v }_{1} = \mathbf{u }_{1}(\mathbf{u }_{1}^{T}\mathbf{v }_{1})\) is a nonzero scalar multiple of \(\mathbf{u }_{1}\). Similarly, for \(\mathbf{v }_{i}\in \mathrm {span}\{\mathbf{u }_{j}\}^{\perp }_{j\ne i}\), \(\varvec{{\mathcal {M}}}\mathbf{v }_{i}\) is a nonzero scalar multiple of \(\mathbf{u }_{i}\). In other words, nonzero scalar multiples of each \(\mathbf{u }_{i}\) are in the range of \(\varvec{{\mathcal {M}}}\) and the dimension of the range of \(\varvec{{\mathcal {M}}}\) is n, which is equivalent to \(\varvec{{\mathcal {M}}}\) having full rank (c.f., Horn and Johnson 1985, p. 13). \(\square\)

In the following theorem, we prove uniform complete observability for spatial parameter estimation:

Theorem 1

The system in (34) and (35) is uniformly completely observable if the following conditions are satisfied:
(Cd1)

The matrix\({\mathbf{R}}_{j}^{\eta }\)is uniformly bounded for allj (i.e., \(\beta _{3}I_{(P+1)\times (P+1)}\preccurlyeq \mathbf{R}_{j}^{\eta }\preccurlyeq \beta _{4}I_{(P+1)\times (P+1)}\)for some constants\(\beta _{3}, \beta _{4} > 0\).

(Cd2)

Among\(\varvec{\varPhi }(\cdot )\)’s evaluated at the position of the mooring, \({\mathbf{r }}^{E}\), and the positions of the grid cells, \({\mathbf{r }}_{i}^{L}\), \(i \in \{1,\dots ,P\}\), at leastMnumber of\(\varvec{\varPhi }(\cdot )\)’s are linearly independent.

Proof

For the system in (34) and (35), we have observability Gramian \({\mathcal {J}}_{\eta }(k,k-\tau ) = \sum _{j=k-\tau }^{k}(\mathbf{H }_{j}^{\eta })^{T}({\mathbf{R}}_{j}^{\eta })^{-1}\mathbf{H }_{j}^{\eta }\). From (Cd1), \({\mathbf{R}}_{j}^{\eta }\) is positive definite and bounded above and below. Therefore, we obtain \(\beta _{4}^{-1}\sum _{j=k-\tau }^{k}(\mathbf{H }_{j}^{\eta })^{T}\mathbf{H }_{j}^{\eta } \preccurlyeq {\mathcal {J}}_{\eta }(k,k-\tau )\preccurlyeq \beta _{3}^{-1}\sum _{j=k-\tau }^{k}(\mathbf{H }_{j}^{\eta })^{T}\mathbf{H }_{j}^{\eta }\) for all \(k>\tau\). Next, we prove that \(\sum _{j=k-\tau }^{k}(\mathbf{H }_{j}^{\eta })^{T}\mathbf{H }_{j}^{\eta }\) is positive definite. We can compute
$$\begin{aligned} (\mathbf{H }_{j}^{\eta })^{T} \mathbf{H }_{j}^{\eta }&= \left[ \begin{array}{c} \varvec{\rho }_{j-1}^{T}\varvec{\varPsi }_{j}\varvec{\varPhi }({\mathbf{r }}^{L}_{1})^{T}\\ \vdots \\ \varvec{\rho }_{j-1}^{T}\varvec{\varPsi }_{j}\varvec{\varPhi }({\mathbf{r }}^{L}_{P})^{T} \end{array}\right] ^{T} \left[ \begin{array}{c} \varvec{\rho }_{j-1}^{T}\varvec{\varPsi }_{j}\varvec{\varPhi }({\mathbf{r }}^{L}_{1})^{T}\\ \vdots \\ \varvec{\rho }_{j-1}^{T}\varvec{\varPsi }_{j}\varvec{\varPhi }({\mathbf{r }}^{L}_{P})^{T} \end{array}\right] \\&= \left( \varvec{\rho }_{j-1}^{T}\varvec{\varPsi }_{j}\varvec{\varPhi }({\mathbf{r }}^{L}_{1})^{T}\right) ^{T}\varvec{\rho }_{j-1}^{T}\varvec{\varPsi }_{j}\varvec{\varPhi }({\mathbf{r }}^{L}_{1})^{T} + \cdots \\&\quad + \left( \varvec{\rho }_{j-1}^{T}\varvec{\varPsi }_{j}\varvec{\varPhi }({\mathbf{r }}^{L}_{P})^{T}\right) ^{T}\varvec{\rho }_{j-1}^{T}\varvec{\varPsi }_{j}\varvec{\varPhi }({\mathbf{r }}^{L}_{P})^{T}\\&=\! \left( \varvec{\rho }_{j-1}^{T}\varvec{\varPsi }_{j}\right) ^{2}\!\left[ \varvec{\varPhi }({\mathbf{r }}^{L}_{1})\varvec{\varPhi }({\mathbf{r }}^{L}_{1})^{T} \!+\! \cdots \!+\! \varvec{\varPhi }({\mathbf{r }}^{L}_{P})\varvec{\varPhi }({\mathbf{r }}^{L}_{P})^{T}\right] . \end{aligned}$$
The quadratic scalar term \(\left( \varvec{\rho }_{j-1}^{T}\varvec{\varPsi }_{j}\right) ^{2}\) is always positive unless the temporal component of flow is zero everywhere. Let us define \(\varvec{{\mathcal {M}}}^{\eta } = [\varvec{\varPhi }({\mathbf{r }}^{L}_{1})\varvec{\varPhi }({\mathbf{r }}^{L}_{1})^{T} + \cdots + \varvec{\varPhi }({\mathbf{r }}^{L}_{P})\varvec{\varPhi }({\mathbf{r }}^{L}_{P})^{T}]\). All the terms inside the bracket are rank-one positive-semidefinite matrices. From (Cd2) and Lemma 1, \(\varvec{{\mathcal {M}}}^{\eta }\) has full rank and is positive definite. Therefore, \(\beta _{5}I_{M \times M}\preccurlyeq \varvec{{\mathcal {M}}}^{\eta }\preccurlyeq \beta _{6}I_{M \times M}\) for some constants \(\beta _{5},\beta _{6}>0\).\(\square\)

Remark 2

Condition (Cd1) represents that the covariance of noise is uniformly bounded. Note that observation \(\mathbf{z }\) is obtained from a stationary sensor and the MT method. By assuming that the stationary sensor is reliable and the parameter estimation algorithm in MT is convergent, (Cd1) can be satisfied. Condition (Cd2) can be satisfied by choosing spatial basis functions appropriately. Consider Gaussian RBFs indexed by m, \(\phi _{m}({\mathbf{r }}) = \exp \left( -\frac{\Vert {\mathbf{r }}-{\mathbf{c }}_{m}\Vert }{2\sigma ^{2}}\right)\), where \({\mathbf{c }}_{m}\) is the center and \(\sigma\) is the width. If we use Gaussian RBFs as spatial basis functions for \(\varvec{\varPhi }({\mathbf{r }}) = [\dots ,\phi _{m}({\mathbf{r }}),\dots ]^{T}\), \(m\in \{1,\dots ,M\}\), (Cd2) can be satisfied by choosing M number of different centers.

In the following theorem, we prove uniform complete observability for temporal parameter estimation:

Theorem 2

The system in (32) and (33) is uniformly completely observable if (Cd1) and the following condition are satisfied:
(Cd3)

The sampling period\(T_{s}\)is chosen such that at leastNnumber of\(\varvec{\varPsi }_{j}\)’s, \(j\in [k-\tau ,k]\subset {\mathbb {N}}^{+}\)are linearly independent.

Proof

For the system in (32) and (33), we have observability Gramian \({\mathcal {J}}_{\rho }(k,k-\tau ) = \sum _{j=k-\tau }^{k}(\mathbf{H }_{j}^{\rho })^{T}({\mathbf{R}}_{j}^{\rho })^{-1}\mathbf{H }_{j}^{\rho }\). From (Cd1), \({\mathbf{R}}_{j}^{\rho }\) is positive definite and bounded above and below. Therefore, we obtain \(\beta _{4}^{-1}\sum _{j=k-\tau }^{k}(\mathbf{H }_{j}^{\rho })^{T}\mathbf{H }_{j}^{\rho } \preccurlyeq {\mathcal {J}}_{\rho }(k,k-\tau )\preccurlyeq \beta _{3}^{-1}\sum _{j=k-\tau }^{k}(\mathbf{H }_{j}^{\rho })^{T}\mathbf{H }_{j}^{\rho }\) for all \(k>\tau\). Next, we prove that \(\sum _{j=k-\tau }^{k}(\mathbf{H }_{j}^{\rho })^{T}\mathbf{H }_{j}^{\rho }\) is positive definite. We can compute
$$\begin{aligned} (\mathbf{H }_{j}^{\rho })^{T}\mathbf{H }_{j}^{\rho }&= \left[ \begin{array}{c} \varvec{\eta }_{\lfloor j/\alpha \rfloor \alpha }^{T}\varvec{\varPhi }({\mathbf{r }}^{E})\varvec{\varPsi }_{j}^{T}\\ \end{array}\right] ^{T} \left[ \begin{array}{c} \varvec{\eta }_{\lfloor j/\alpha \rfloor \alpha }^{T}\varvec{\varPhi }({\mathbf{r }}^{E})\varvec{\varPsi }_{j}^{T}\\ \end{array}\right] \\&= \left( \varvec{\varPhi }({\mathbf{r }}^{E})^{T}\varvec{\eta }_{\lfloor j/\alpha \rfloor \alpha }\varvec{\eta }_{\lfloor j/\alpha \rfloor \alpha }^{T}\varvec{\varPhi }({\mathbf{r }}^{E})\right) \varvec{\varPsi }_{j}\varvec{\varPsi }_{j}^{T}. \end{aligned}$$
The quadratic term in the parenthesis is always positive unless the spatial component of flow is zero everywhere. Let \(\varvec{{\mathcal {M}}}^{\rho } = \sum _{j=k-\tau }^{k}\varvec{\varPsi }_{j}^{T}\varvec{\varPsi }_{j}\). From (Cd3) and Lemma 1, \(\varvec{{\mathcal {M}}}^{\rho }\) has full rank and is positive definite. Therefore, \(\beta _{7}I_{N \times N}\preccurlyeq \varvec{{\mathcal {M}}}^{\rho }\preccurlyeq \beta _{8}I_{N \times N}\) for some constants \(\beta _{7},\beta _{8}>0\).\(\square\)

Remark 3

Even though the system in (32) and (33) and the system in (34) and (35) are uniformly completely observable, the convergence rate and accuracy of the derived filters may depend on how observable the systems are. For this problem, we can incorporate observability metrics such as the local unobservability index and the local estimation condition, introduced in Krener and Ide (2009), that evaluate the degree of observability or unobservability.

5 Simulation results

This section validates the proposed method by simulating one stationary and multiple mobile sensors that collect data in (i) a double-gyre flow field and (ii) a flow field constructed by real ocean surface flow observations from HF radar. Compared to a double-gyre flow field which is relatively smooth and has a periodic spatio-temporal pattern, an ocean surface flow field observed by HF radar is non-smooth and erratic. For the construction of the GEM and the parameterization of MT, we use the flow model in (1). The collected Eulerian and Lagrangian data are assimilated into the GEM through the proposed unified data assimilation framework. To show that the performance of the proposed method combined with the GEM, we compare three implementations of the GEM through AUV guidance: (i) GEM-EL, assimilating both Eulerian and Lagrangian data, (ii) GEM-E, assimilating Eulerian data only, and (iii) GEM-L, assimilating Lagrangian data only.

5.1 GEM in simulated double-gyre flow

As a test case, we first validate the proposed data assimilation method for the GEM in a flow field with a double-gyre pattern that occurs often in geophysical flow (Shadden et al. 2005). For position \({\mathbf{r }}=[x,y]^{T}\) and time t, a time-varying double-gyre flow field can be described by the stream-function
$$\begin{aligned} \varXi ({\mathbf{r }},t) = {\mathcal {A}}\sin (\pi \xi (x,t))\sin (\pi y), \end{aligned}$$
(38)
where
$$\begin{aligned} \xi (x,t)&= \alpha (t)x^{2} + \beta (t)x \end{aligned}$$
(39)
$$\begin{aligned} \alpha (t)&= \epsilon \sin (\omega t) \end{aligned}$$
(40)
$$\begin{aligned} \beta (t)&= 1 - 2\epsilon \sin (\omega t) \end{aligned}$$
(41)
over the domain \([0,2]\times [0,1]\). The parameter \({\mathcal {A}}\) determines the magnitude of the flow velocity in the field, \(\omega\) is the frequency of oscillation, and \(\epsilon\) determines approximately how far the separation line at \(x=1\) between the two gyres moves to the left or right. The velocity field is given by
$$\begin{aligned} f_{x}&= -\frac{\partial \varXi }{\partial y} = -\pi {\mathcal {A}}\sin (\pi \xi (x))\cos (\pi y) \end{aligned}$$
(42)
$$\begin{aligned} f_{y}&= \frac{\partial \varXi }{\partial x} = \pi {\mathcal {A}}\cos (\pi \xi (x))\sin (\pi y)\frac{d\xi }{dx}. \end{aligned}$$
(43)
For \(\epsilon =0\), the flow is time-invariant and for \(\epsilon \ne 0\), the gyres periodically expand and contract side to side in the x-direction within the domain. We choose \(\epsilon = 0.3\), \({\mathcal {A}} = \frac{0.1}{\pi }\), \(\omega = \frac{2\pi }{T}\), and T is 24 h, and then rescale the domain to \([0,20{,}000]\times [0,10{,}000]\ m^{2}\) (see Fig. 4). The parameters are chosen such that the gyres move side to side by approximately 3 km in both directions every 24 h.
Fig. 4

A time-varying double-gyre flow field. The surface color represents the magnitude of the flow speed and the colorbar displays the scale of the flow speed corresponding to the surface color. The maximum flow speed is 0.1 m/s at \(t=0\), but it increases up to slightly above 0.15 m/s while the gyres are moving side to side

We first define the spatial domain for the GEM. We choose the region centered at \((x,y)=(5000,5000)\) where a mooring is deployed. Figure 5 shows a time-series of flow velocity at the location of the mooring in the simulation. Around the mooring, 2 AUVs collect data underwater while traveling at 0.35 m/s and come to the surface every one observation interval of 4 h. Considering the distance that the vehicle can travel over one observation interval in the absence of flow, i.e., 5040 m for 4 h, we construct the spatial domain whose size is \([-2520,2520]\times [-2520,2520]\) m\(^{2}\) around the mooring.
Fig. 5

Time-series flow data collected from a mooring during the simulation using double-gyre flow

For the flow model in the GEM, the domain is discretized into \(6\times 6\) grid cells. Among the grid points, the centers of 4 Gaussian RBFs are determined by a K-means clustering algorithm to construct the spatial basis functions of the GEM. To determine the width for the RBFs, we first compute the distances between each individual center and other centers, and choose the minimum distance for each center. Then, compute an average of all the minimum distances associated with the 4 centers and divide the average by 2 (i.e., \(\sigma = \frac{\sum _{m=1}^{M}\min _{i\in m}\{\Vert {\mathbf{c }}_{i}-{\mathbf{c }}_{m}\Vert \}}{2M}\), \(m\in \{1,\dots ,M\}\) where \(M=4\) in the simulation). The temporal basis functions of the GEM are initialized such that the tidal flow consists of only the tidal residual flow which is constant and the non-tidal flow is approximated by using 0th to 4th Laguerre polynomials with time scaling factor \(\zeta =\frac{1}{10}\).

In data assimilation, one time step corresponds to 1 h and the spatial and temporal parameters of the GEM are initialized as \([0.01,\dots ,0.01]^{T}\) for both x and y components at the beginning. To apply the proposed filters for data assimilation, we let \(\mathbf{A }_{k}=I\), \(\mathbf{Q }_{k}^{\rho } = 10^{-4}I_{(L+2N+2)\times (L+2N+2)}\), and \(\mathbf{Q }_{k}^{\eta } = 10^{-4}I_{M\times M}\) for the system (29) and (31). The noise covariance is constructed such that for the pth grid cell, \({\mathbf{R}}_{k,(p,p)} = 10^{-2}\) and \({\mathbf{R}}_{k,(p,q)} = 10^{-2}\) if the pth and qth grid cells are neighboring. By assimilating Eulerian data, the temporal parameters of the GEM are updated at each time step.

For Lagrangian data, the two vehicles always attempt to criss-cross around the mooring by heading towards the mooring, but to make a wide spatial coverage to capture the spatial variability of flow, the actual heading is adjusted by adding \(18^{\circ }\) to the heading straight towards the mooring. The Lagrangian data collected over 24 h are converted by MT in a batch into an Eulerian spatial map. For the spatial map, we select the rectangle domain that can enclose the vehicle positions observed at the surface over 24 h. Since each vehicle generates 6 trajectories over 24 h, we discretize the spatial domain into \(6\times 6\) spatial grid cells. The spatial basis functions of MT are constructed using the centers and width of RBFs chosen for the spatial basis functions of the GEM. We also discretize the 24 h temporal domain into 3 temporal grid cells, but to estimate the most up-to-date temporal parameters, we construct the temporal basis functions of MT for the latest time step.

For MT, we need the initial guesses of the spatial and temporal parameters. We first compute an estimate of constant flow velocity over an individual vehicle trajectory during one observation interval of 4 h in a similar way that a glider computes its depth-averaged flow velocity (see Chang et al. 2017 for details). Then, for the grid cells that the trajectory of each vehicle passes through, we assign the flow estimate corresponding to the trajectory and construct an initial guess of the underlying flow field. Then, based on this initial guess of the flow field, we compute the initial guesses of parameters using a nonlinear least squares method using (1). Since a small number of AUVs is collecting Lagrangian data for MT, we lack information to solve the system of equations associated with MT. Therefore, we run Algorithm 2 up to 500 iterations with a convergence threshold of \(\epsilon _{\overline{{\mathbf{f }}}}=300\) m and a relaxation parameter of \(\lambda =0.01\), and choose the estimates with the lowest error. Along with Algorithm 2, we run trajectory tracing with a convergence threshold of \(\epsilon _{\gamma }=10\) m up to 5 times. By combining estimated parameters of MT with the basis functions of MT, an Eulerian spatial map is constructed. Then, this spatial map is assimilated into the GEM to update the spatial parameters of the GEM.

Remark 4

Instead of multiple vehicles, we can also use a single vehicle for MT. In this case, we may not have sufficient information of vehicle trajectories for MT. Therefore, estimation of the spatial and temporal parameters of the nonlinear flow model (1) through MT can be challenging. As a workaround, we can fix the temporal parameters of MT using the temporal parameters of the GEM and use MT to estimate the spatial parameters of MT only. Then, an Eulerian spatial map can be constructed by using the temporal parameters of the GEM and the spatial parameters of MT.

To demonstrate the proposed data assimilation framework combined with the GEM, we simulate 3 station-keeping vehicles guided by GEM-EL, GEM-E, and GEM-L, respectively. We assume that the vehicles are capable of canceling out the flow, i.e., the vehicle can always move in the opposite direction of flow at the same speed of flow. From each time step until the next, the simulated flow field for the station-keeping vehicles is assumed constant with the flow velocity evaluated at the time between the current and next time steps. Then, starting from \((x,y)=(5000,5000)\) in the domain, the vehicles predict flow using their own GEMs and attempt to maintain their current positions.

Figure 6 shows the trajectories of the vehicles guided by the GEMs over 24 h after 3 days of their initial data assimilation. Eulerian data continue to be assimilated during this 24 h validation period. Note that the flow prediction from the GEM outside the domain (i.e., \([-2520,2520]\times [-2520,2520]\) m\(^{2}\) around the mooring) is generated for the nearest grid point in the domain. To quantify the performance of the station-keeping vehicles, we compute the distance between the positions at two neighboring time steps as an error. The root-mean-square (RMS) errors for the station-keeping vehicles are provided in Table 1. Since GEM-EL captures the spatio-temporal variability the most, it guides a vehicle with the lowest error. Even though GEM-L does not assimilate temporal variability, since the temporal variations of flow in the region observed by the mooring are weak (see Fig. 5), the vehicle guided by GEM-E, which does not account for the spatial variability, deviates the most.
Fig. 6

Trajectories of station-keeping vehicles guided by GEMs for 24 h under double-gyre flow

Table 1

RMS errors for station-keeping vehicles guided by GEMs under double-gyre flow

GEM for guidance

EL

E

L

RMSE (m)

145.3524

244.3035

217.2148

For further investigation of the predicted flow by the GEMs, we compute the error between predicted flow by the GEMs and real flow during the validation period. First, we compute the spatial RMS errors of predicted flow by the GEMs. Figure 7 shows the time-series plots of the magnitude of the spatial RMS errors. As can be observed from the results of the station-keeping vehicles (see Fig. 6), GEM-EL has the smallest prediction error. In addition, we also compute the temporal RMS errors of predicted flow by the GEMs and show the spatial distribution of the RMS errors in Fig. 8, where the color represents the magnitude of the RMS errors. We can see that GEM-EL has the smallest prediction error compared to other GEMs throughout the spatial domain. With the low prediction error of GEM-EL, GEM-EL guides a station-keeping vehicle to stay within the domain. On the other hand, GEM-E and GEM-L have difficulties in guiding station-keeping vehicles so the vehicles get pushed by flow out of the domain and tend to drift along the flow (see Fig. 6). All these results demonstrate that GEM-EL sufficiently accounts for the spatio-temporal variations of a flow field and shows its potential for the guidance of AUVs.
Fig. 7

The magnitude of time-series RMS errors during the 24-h validation under double-gyre flow

Fig. 8

The spatial RMS errors during the 24-h validation under double-gyre flow. The surface color represents the magnitude of the flow speed and the colorbar displays the scale of the flow speed corresponding to the surface color

5.2 GEM in real flow observed by HF radar

In this section, we demonstrate the proposed data assimilation framework using real ocean surface flow data observed by HF radar off the coast of Georgia (see Fig. 9). Compared to the double-gyre flow in the previous section, the real flow observed by HF radar has non-smooth and erratic behaviors with stronger flow, and the features in real oceanic conditions could vary much more in the spatial scale (e.g., 10–500 km for mesoscale eddies and 100–200 km for the Gulf Stream current).
Fig. 9

A flow field observed by HF radar off the coast of Georgia on February 4, 2012 at 08:53:00. The cyan star at \((-80.0240^{\circ },31.3261^{\circ })\) represents the location of a mooring. The surface color represents the magnitude of the flow speed and the colorbar displays the scale of the flow speed corresponding to the surface color

Fig. 10

Time-series flow data collected from a mooring during the simulation using real surface flow observed by HF radar

To simulate the flow field, we use historic HF radar data that are post-processed for our convenience with \(3\times 15\) km\(^{2}\) spatial resolution and 30 min temporal resolution. For the region of the AUV and mooring deployment, we choose the region centered at \((-80.0240^{\circ },31.3261^{\circ })\) being \((x,y)=(0,0)\) where we deploy a mooring. As is done in the previous section, we construct the spatial domain whose size is \([-2520,2520]\times [-2520,2520]\) m\(^{2}\) around the mooring. We discretize the domain into \(6\times 6\) spatial grid cells whose grid points are used to compute the centers of 4 Gaussian RBFs using a K-means clustering algorithm. Then, we determine the width of the RBFs in the same way as in the previous section and construct the spatial basis functions of the GEM. This region is close to the Gulf Stream current which causes strong spatial and temporal variability in the region (see Fig. 9). Since the flow in this region is strong compared to the horizontal through-water speed 0.35 m/s of the AUV, we construct a simulated flow field by using a half magnitude of the actual flow velocity. See Fig. 2 for the actual flow velocity observed by HF radar and Fig. 10 for the reduced flow velocity at the location of the mooring.

To approximate the temporal variation of the flow, we first decompose ocean flow into tidal and non-tidal components using the T_Tide MATLAB® toolbox (Pawlowicz et al. 2002). Since the tidal component of ocean flow can be described by a superposition of multiple tidal constituents characterized by magnitude and phase, we use a series of sinusoidal basis functions. Using 31-day historical data from January 1, 2012 00:23 to January 31, 2012 23:53 as the initialization data set, we identify the three major (M2, N2, and S2) tidal constituents for tidal flow. In contrast to the double-gyre flow in the previous section, real flow off the coast of Georgia contains very complex non-tidal and non-periodic components of flow (see Fig. 10). Therefore, non-tidal flow is approximated by using 0th to 14th weighted Laguerre polynomials as temporal basis functions with time scaling factor \(\zeta =\frac{1}{20}\). Based on the above tidal and non-tidal approximations, we construct the temporal basis functions of the GEM.

As is the case in the previous section, a time step for data assimilation corresponds to 1 h and the spatial and temporal parameters of the GEM are initialized as \([0.01,\dots ,0.01]^{T}\) for both x and y components before data assimilation begins. To apply the proposed filters for data assimilation, we let \(\mathbf{A }_{k}=I\), \(\mathbf{Q }_{k}^{\rho } = 10^{-4}I_{(L+2N+2)\times (L+2N+2)}\), and \(\mathbf{Q }_{k}^{\eta } = 10^{-4}I_{M\times M}\) for the system (29) and (31). The noise covariance is constructed such that for the pth grid cell, \({\mathbf{R}}_{k,(p,p)} = 10^{-2}\) and \({\mathbf{R}}_{k,(p,q)} = 10^{-2}\) if the pth and qth grid cells are neighboring. By assimilating Eulerian data, the temporal parameters of the GEM are updated at each time step.

Since the flow in this region is very dynamic and complex, we have 3 AUVs criss-crossing around the mooring to collect data. The heading of the vehicles is always towards the mooring with \(18^{\circ }\) adjustment. The flow field simulated for the GEM and MT is the segment of HF radar data next to the period of the initialization data set. However, please note that the initialization data set is used only to identify the major tidal constituents for the domain. Based on Lagrangian data collected over 24 h, we first construct the spatial and temporal basis functions of MT. The spatio-temporal domain is discretized into \(6\times 6\) spatial grid cells and 3 temporal grid cells. Then, MT estimates the spatial and temporal parameters of MT using the initial guesses computed as in the previous section and construct an Eulerian spatial map for the latest time step. By assimilating this spatial map into the GEM, we update the spatial parameters of the GEM.

To demonstrate the proposed data assimilation framework combined with the GEM, we again simulate 3 station-keeping vehicles guided by GEM-EL, GEM-E, and GEM-L, respectively, starting from \((x,y)=(0,0)\) in the domain. Figure 11 shows the trajectories of the vehicles over 24 h of guidance by the GEMs after 3 days of their initial data assimilation. Eulerian data continue to be assimilated during this 24 h validation period. The RMS errors for the station-keeping vehicles are provided in Table 2. Note that the flow prediction from the GEM outside the domain (i.e., \([-2520,2520]\times [-2520,2520]\) m\(^{2}\) around the mooring) is generated for the nearest grid point in the domain. Since GEM-EL captures the spatio-temporal variations the most, the vehicle guided by GEM-EL has the lowest error. Because of insufficient spatial or temporal variability in GEM-E and GEM-L, we can see that the vehicles guided by them are swept away by strong flow that may represent the Gulf Stream current. Since flow in this region has strong temporal variation which is not captured by GEM-L, the vehicle guided by GEM-L deviates the most.
Fig. 11

Trajectories of station-keeping vehicles guided by GEMs for 24 h under real surface flow observed by HF radar

Table 2

RMS errors for station-keeping vehicles guided by GEMs under real surface flow observed by HF radar

GEM for guidance

EL

E

L

RMSE (m)

270.6909

396.5027

598.1049

To investigate the RMS errors of predicted flow by the GEMs during the validation period, we show the time-series of the magnitude of the spatial RMS errors and the spatial distribution of the RMS errors in Figs. 12 and 13, respectively. For GEM-EL and GEM-E, the mean RMS errors shown in the figures are very close. However, when a flow model is used to guide a vehicle, this small difference may cause a significant drift of a vehicle as shown in Fig. 11. As a result, with lower prediction error, GEM-EL can guide a station-keeping vehicle to stay within the domain. Even though the real flow observed by HF radar is complex, the results still show the promising performance of the proposed method and demonstrate the improved guidance of AUVs.
Fig. 12

The magnitude of time-series RMS errors during the 24 h validation under real surface flow observed by HF radar

Fig. 13

The spatial RMS errors during the 24 h validation under real surface flow observed by HF radar. The surface color represents the magnitude of the flow speed and the colorbar displays the scale of the flow speed corresponding to the surface color

The operational conditions of AUVs used in the simulation are motivated by underwater gliders which are robust sensor platforms widely used in the oceanographic community. Typical horizontal through-water speed of underwater gliders is 0.25–0.35 m/s. As observed in this section, real flow is very complex and dynamic, and can significantly affect the navigation of AUVs, especially slowly-moving AUVs such as gliders. Therefore, data collected by gliders are not necessarily synoptic and can thus convolve spatial and temporal representations of ocean features as they are sampled. Outside of its capability for the guidance of AUVs, the data assimilation framework presented in this paper could serve as a useful tool for analysis and interpretation of data from AUVs through rapidly evolving features in oceanographic studies.

6 Conclusions and future work

This paper has presented a unified framework for assimilating both Lagrangian and Eulerian data into data-driven computational flow models described as generic environmental models (GEMs). In the framework, Lagrangian data collected by autonomous underwater vehicles (AUVs) are converted into an Eulerian spatial map through the motion tomography (MT) method. This conversion has allowed for Lagrangian data assimilation to be achieved together with Eulerian data assimilation in the unified framework. Leveraging different spatial and temporal scales of Eulerian and Lagrangian data, Eulerian data are assimilated to update the temporal parameters of the GEM and Lagrangian data to update the spatial parameters. Assimilation of both Eulerian and Lagrangian data in the unified framework leads estimation of the spatial and temporal parameters in the GEM to a nonlinear filtering problem. To solve this nonlinear problem, two linear sub-filters are derived for spatial and temporal parameter estimation, respectively and to verify the convergence of the filters, the observability is analyzed. Lastly, the paper has demonstrated that the proposed data assimilation framework combined with the GEM can improve AUV navigation through simulations using a double-gyre flow field and a flow field constructed from real ocean surface flow observed by HF radar. Since geophysical ocean models incorporate Lagrangian data collected by AUVs, the proposed framework may be a helpful analysis tool for geophysical ocean models. Future work will study the design of vehicle trajectories so that we can minimize the uncertainty in the flow field constructed from Lagrangian data and maximize the accuracy of the flow model.

Notes

References

  1. Bishop, C.M.: Neural Networks for Pattern Recognition. Oxford University Press, Oxford (1995)zbMATHGoogle Scholar
  2. Bleck, R.: An oceanic general circulation model framed in hybrid isopycnic-Cartesian coordinates. Ocean Model 37, 55–88 (2002)CrossRefGoogle Scholar
  3. Chang, D., Liang, X., Wu, W., Edwards, C.R., Zhang, F.: Real-time modeling of ocean currents for navigating underwater glider sensing networks. In: Koubâa, A., Khelil, A. (eds.) Cooperative Robots and Sensor Networks. Studies in Computational Intelligence, vol. 507, pp. 61–75. Springer, Berlin (2014)CrossRefGoogle Scholar
  4. Chang, D., Wu, W., Edwards, C.R., Zhang, F.: Motion tomography: mapping flow fields using autonomous underwater vehicles. Int. J, Robot. Res. 36(3), 320–336 (2017)CrossRefGoogle Scholar
  5. Chang, D., Wu, W., Zhang, F.: Glider CT: analysis and experimental validation. In: Chong, N.Y., Cho, Y.J. (eds.) Distributed Autonomous Robotic Systems, Springer Tracts in Advanced Robotics, vol. 112, pp. 285–298. Springer, Tokyo (2016)CrossRefGoogle Scholar
  6. Chang, D., Zhang, F.: Distributed motion tomography for time-varying flow fields. In: OCEANS 2016-Shanghai, pp. 1–7 (2016)Google Scholar
  7. Chang, D., Zhang, F.: Resolving temporal variations in data-driven flow models constructed by motion tomography. In: IFAC-Papers OnLine, vol. 49, pp. 182–187. Elsevier, Amsterdam (2016)Google Scholar
  8. Chang, D., Zhang, F., Edwards, C.R.: Real-time guidance of underwater gliders assisted by predictive ocean models. J. Atmos. Ocean. Technol. 32(3), 562–578 (2015)CrossRefGoogle Scholar
  9. Cierniak, R.: X-ray Computed Tomography in Biomedical Engineering. Springer, London (2011)CrossRefGoogle Scholar
  10. Curtin, T.B., Bellingham, J.G., Catipovic, J., Webb, D.: Autonomous oceanographic sampling networks. Oceanography 6(3), 86–94 (1993)CrossRefGoogle Scholar
  11. Davis, R.E., Eriksen, C.C., Jones, C.P.: Autonomous buoyancy-driven underwater gliders. In: Griffiths, G. (ed.) Technology and Applications of Autonomous Underwater Vehicles, pp. 37–58. CRC Press, Boca Raton (2002)CrossRefGoogle Scholar
  12. Fornberg, B., Flyer, N.: A Primer on Radial Basis Functions with Applications to the Geosciences. Society for Industrial and Applied Mathematics, Philadelphia (2015)CrossRefzbMATHGoogle Scholar
  13. Fratantoni, D.M., Haddock, S.H.D.: Introduction to the autonomous ocean sampling network (AOSN-II) program. Deep Sea Res. Part II Top. Stud. Oceanogr. 56(3–5), 61 (2009)CrossRefGoogle Scholar
  14. Girosi, F., Poggio, T.: Networks and the best approximation property. Biol. Cybern. 63(3), 169–176 (1990)MathSciNetCrossRefzbMATHGoogle Scholar
  15. Gordon, R., Bender, R., Herman, G.T.: Algebraic reconstruction techniques (ART) for three-dimensional electron microscopy and X-ray photography. J. Theor. Biol. 29(3), 471–481 (1970)CrossRefGoogle Scholar
  16. Gurgel, K.W., Antonischki, G., Essen, H.H., Schlick, T.: Wellen radar (WERA): a new ground-wave HF radar for ocean remote sensing. Coast. Eng. 37(3–4), 219–234 (1999)CrossRefGoogle Scholar
  17. Hackbarth, A., Kreuzer, E., Schröder, T.: CFD in the loop: ensemble Kalman filtering with underwater mobile sensor networks. In: ASME 2014 33rd International Conference on Ocean, Offshore and Arctic Engineering, p. V002T08A063 (2014)Google Scholar
  18. Haidvogel, D., Arango, H., Budgell, W., Cornuelle, B., Curchitser, E., Di Lorenzo, E., Fennel, K., Geyer, W., Hermann, A., Lanerolle, L., Levin, J., McWilliams, J., Miller, A., Moore, A., Powell, T., Shchepetkin, A., Sherwood, C., Signell, R., Warner, J., Wilkin, J.: Ocean forecasting in terrain-following coordinates: formulation and skill assessment of the regional ocean modeling system. J. Comput. Phys. 227(7), 3595–3624 (2008)MathSciNetCrossRefzbMATHGoogle Scholar
  19. Horn, R.A., Johnson, C.R.: Matrix Analysis. Cambridge University Press, Cambridge (1985)CrossRefzbMATHGoogle Scholar
  20. Israelsen, B.W., Smith, D.A.: Generalized Laguerre reduction of the Volterra kernel for practical identification of nonlinear dynamic systems. arXiv:1410.0741 [cs.LG] (2014)
  21. Jazwinski, A.H.: Stochastic Processes and Filtering Theory. Dover Publications, New York (1970)zbMATHGoogle Scholar
  22. Kaczmarz, S.: Angenäherte auflösung von systemen linearer gleichungen. Bulletin International de l’Academie Polonaise des Sciences et des Lettres 35, 355–357 (1937)zbMATHGoogle Scholar
  23. Kaczmarz, S.: Approximate solution of systems of linear equations. Int. J. Control. 57(6), 1269–1271 (1993)MathSciNetCrossRefzbMATHGoogle Scholar
  24. Kak, A.C., Malcom, S.: Principles of Tombgraphic Imaging. Society for Industrial and Applied Mathematics, Philadelphia (2001)CrossRefGoogle Scholar
  25. Krener, A.J., Ide, K.: Measures of unobservability. In: Proceedings of the 48h IEEE Conference on Decision and Control (CDC) held jointly with 2009 28th Chinese Control Conference, pp. 6401–6406 (2009)Google Scholar
  26. Kumar, S.: Neural Networks: A Classroom Approach. Tata McGraw-Hill Education, New York (2004)Google Scholar
  27. Kuznetsov, L., Ide, K., Jones, C.K.R.T.: A method for assimilation of Lagrangian data. Monthly Weather Rev. 131(10), 2247–2260 (2003)CrossRefGoogle Scholar
  28. Leonard, N.E., Paley, D.A., Davis, R.E., Fratantoni, D.M., Lekien, F., Zhang, F.: Coordinated control of an underwater glider fleet in an adaptive ocean sampling field experiment in Monterey Bay. J. Field Robot. 27(6), 718–740 (2010)CrossRefGoogle Scholar
  29. Luettich, R.A., Westerink, J.J., Scheffner, N.W.: ADCIRC: an advanced three-dimensional circulation model for shelves, coasts, and estuaries. Report 1. Theory and methodology of ADCIRC-2DDI and ADCIRC-3DL. Tech. rep., Coastal Engineering Research Center, Vicksburg, Mississippi (1992)Google Scholar
  30. Merckelbach, L., Briggs, R., Smeed, D., Griffiths, G.: Current measurements from autonomous underwater gliders. In: 2008 IEEE/OES 9th Working Conference on Current Measurement Technology, pp. 61–67 (2008)Google Scholar
  31. Mokhasi, P., Rempfer, D., Kandala, S.: Predictive flow-field estimation. Physica D Nonlinear Phenomena 238(3), 290–308 (2009)CrossRefzbMATHGoogle Scholar
  32. Molcard, A.: Assimilation of drifter observations for the reconstruction of the Eulerian circulation field. J. Geophys. Res. 108(C3) (2003)Google Scholar
  33. Natterer, F.: The Mathematics of Computerized Tomography. Society for Industrial and Applied Mathematics, Philadelphia (1986)zbMATHGoogle Scholar
  34. Paduan, J., Petruncio, E., Barrick, D., Lipa, B.: Surface currents within and offshore of Monterey Bay as mapped by a multiple-site HF radar (CODAR) network. In: Proceedings of the IEEE Fifth Working Conference on Current Measurement, pp. 137–142 (1995)Google Scholar
  35. Park, J., Sandberg, I.W.: Universal approximation using radial-basis-function networks. Neural Comput. 3(2), 246–257 (1991)CrossRefGoogle Scholar
  36. Pawlowicz, R., Beardsley, B., Lentz, S.: Classical tidal harmonic analysis including error estimates in MATLAB using T\_TIDE. Comput. Geosci. 28(8), 929–937 (2002)CrossRefGoogle Scholar
  37. Petrich, J., Woolsey, C.A., Stilwell, D.J.: Planar flow model identification for improved navigation of small AUVs. Ocean Eng. 36(1), 119–131 (2009)CrossRefGoogle Scholar
  38. Robinson, A.R., Lermusiaux, P.F.: Data Assimilation in Models. Encyclopedia of Ocean Sciences, 2nd Edn., pp. 1–12 (2008)Google Scholar
  39. Shadden, S.C., Lekien, F., Marsden, J.E.: Definition and properties of Lagrangian coherent structures from finite-time Lyapunov exponents in two-dimensional aperiodic flows. Physica D Nonlinear Phenomena 212(3–4), 271–304 (2005)MathSciNetCrossRefzbMATHGoogle Scholar
  40. Shay, L.K., Martinez-Pedraja, J., Cook, T.M., Haus, B.K., Weisberg, R.H.: High-frequency radar mapping of surface currents using WERA. J. Atmos. Ocean. Technol. 24(3), 484–503 (2007)CrossRefGoogle Scholar
  41. Shchepetkin, A.F., McWilliams, J.C.: The regional oceanic modeling system (ROMS): a split-explicit, free-surface, topography-following-coordinate oceanic model. Ocean Modell. 9(4), 347–404 (2005)CrossRefGoogle Scholar
  42. Smith, R.N., Pereira, A., Yi Chao, Li, P.P., Caron, D.A., Jones, B.H., Sukhatme, G.S.: Autonomous underwater vehicle trajectory design coupled with predictive ocean models: A case study. In: 2010 IEEE International Conference on Robotics and Automation, pp. 4770–4777 (2010)Google Scholar
  43. Song, Z., Mohseni, K.: Long-term inertial navigation aided by dynamics of flow field features. IEEE J. Ocean. Eng. 43(4), 940–954 (2017)CrossRefGoogle Scholar
  44. Szwaykowska, K., Fumin, Z.: Trend and bounds for error growth in controlled Lagrangian particle tracking. IEEE J. Ocean. Eng. 39(1), 10–25 (2014)CrossRefGoogle Scholar
  45. Szwaykowska, K., Zhang, F.: Controlled Lagrangian particle tracking: error growth under feedback control. IEEE Trans. Control Syst. Technol. 26(3), 874–889 (2018)CrossRefGoogle Scholar
  46. Wu, W., Chang, D., Zhang, F.: Glider CT: reconstructing flow fields from predicted motion of underwater gliders. In: Proceedings of the Eighth ACM International Conference on Underwater Networks and Systems-WUWNet ’13, p. 47 (2013)Google Scholar
  47. Zhang, F.: Cyber-maritime cycle: autonomy of marine robots for ocean sensing. Found. Trends Robot. 5(1), 1–115 (2016)MathSciNetCrossRefGoogle Scholar
  48. Zhang, F., Marani, G., Smith, R.N., Choi, H.T.: Future trends in marine robotics [TC Spotlight]. IEEE Robot. Autom. Magn. 22(1), 14–122 (2015)CrossRefGoogle Scholar

Copyright information

© The Author(s) 2019

Open AccessThis article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.

Authors and Affiliations

  • Dongsik Chang
    • 1
  • Catherine R. Edwards
    • 3
    Email author
  • Fumin Zhang
    • 2
  • Jing Sun
    • 1
  1. 1.Department of Naval Architecture and Marine EngineeringUniversity of MichiganAnn ArborUSA
  2. 2.School of Electrical and Computer EngineeringGeorgia Institute of TechnologyAtlantaUSA
  3. 3.Skidaway Institute of OceanographyUniversity of GeorgiaSavannahUSA

Personalised recommendations