# Autonomous Underwater Vehicle Localization Using Sound Measurements of Passing Ships
## 3 The Localization Method Using Bearing-Only Measurements  
### System Models  
This manuscript considers horizontal AUV motion in two dimensions. In other words, the AUV maneuvers while maintaining a certain depth. The AUV's depth can be measured fairly well by utilizing pressure sensors. We first introduce some notations used in this paper. \(\mathbf{I}_{r}\) presents the identity matrix with \(r\) rows and \(r\) columns. Let \(\mathbf{diag}(a,b,c,\ldots)\) indicate a diagonal matrix with diagonal elements \(a,b,c,\ldots\) in this order. \(Cov[\mathbf{q}]\) is used to present the error covariance of a variable \(\mathbf{q}\). Let \(atan2(y,x)\) denote the argument (also called phase or angle) of the complex number, say \(x+iy\). Suppose that the AUV measures the sound of \(N\) ships in total. \([x_{k}^{t,n},y_{k}^{t,n}]\) (\(n\in\{1,2,\ldots,N\}\)) is the vector representing the position of the \(n\)-th ship at sample-index \(k\). \([\hat{x}_{k}^{t,n},\hat{y}_{k}^{t,n}]^{T}\) is the 2D vector representing the velocity of the \(n\)-th ship at sample-index \(k\). We assume that the AUV can access the trajectory of a passing ship, while identifying the ship by processing the sound of the ship. This implies that the AUV at sample-index \(k\) can access \([x_{k}^{t,n},y_{k}^{t,n},\hat{x}_{k}^{t,n},\hat{y}_{k}^{t,n}]\) for all \(n\in\{1,2,\ldots,N\}\). Let \([x_{k}^{o},y_{k}^{o}]\) denote the 2D vector representing the position of the AUV at sample-index \(k\). Let \([x_{k}^{o},y_{k}^{o}]^{T}\) denote the 2D vector representing the velocity of the AUV at sample-index \(k\). Let  
\[\mathbf{X}_{k}=[x_{k}^{o},y_{k}^{o},\hat{x}_{k}^{o},\hat{y}_{k}^{ o}]^{T} \tag{22}\]  
denote the state vector representing the AUV state. Recall that \(dt\) denotes the sampling interval in the discrete-time systems. The discrete-time process model of the AUV is  
\[ \begin{array}{rcl}x_{k+1}^{o}&=&x_{k}^{o}+\dot{x}_{k}^{o}*dt,\\ y_{k+1}^{o}&=&y_{k}^{o}+\dot{y}_{k}^{o}*dt,\\ \dot{x}_{k+1}^{o}&=&\dot{x}_{k}^{o}-\dot{x}_{k}^{o}+\dot{x}_{k+1}^{o},\\ \dot{y}_{k+1}^{o}&=&\dot{y}_{k}^{o}-\dot{y}_{k}^{o}+\dot{y}_{k+1}^{o}.\end{array}  \tag{23}\]  
The AUV velocity \([\dot{x}_{k}^{o},\dot{y}_{k}^{o}]^{T}\) can be estimated by integrating propeller and IMU. We can estimate the AUV velocity using the integration approach in [26; 27]. Considering the process noise in the estimation, Equation (23) can be rewritten as  
\[\mathbf{X}_{k+1}=\mathbf{F}\mathbf{X}_{k}+\mathbf{A}_{k}+\mathbf{w}_{k}^{p}. \tag{24}\]  
In (24), \(\mathbf{F}\) is  
\[\mathbf{F}=\left( \begin{array}{cccc}1&0&dt&0\\ 0&1&0&dt\\ 0&0&1&0\\ 0&0&0&1\end{array} \right). \tag{25}\]  
Also, \(\mathbf{A}_{k}\) is  
\[\mathbf{A}_{k}=[0,0,-\dot{x}_{k}^{o}+\dot{x}_{k+1}^{o},-\dot{y}_{k}^{o}+\dot{ y}_{k+1}^{o}]^{T}. \tag{26}\]  
In (24),  
\[\mathbf{w}_{k}^{p}=\Gamma*[a_{x},a_{y}]^{T} \tag{27}\]  
presents the process noise. Here, \([a_{x},a_{y}]^{T}\) presents the AUV's 2D acceleration noise, which is unknown a priori. In \(\mathbf{w}_{k}^{p}\), we utilize  
\[\Gamma=\left( \begin{array}{c}\frac{(dt)^{2}}{2}*\mathbf{I}_{2}\\ dt*\mathbf{I}_{2}\end{array} \right). \tag{28}\]  
The process noise \(\mathbf{w}_{k}^{p}\) is added in (24), considering the error in estimating \([\dot{x}_{k}^{o},\dot{y}_{k}^{o}]^{T}\) as we integrate propeller and IMU. In (24), \(\mathbf{A}_{k}+\mathbf{w}_{k}^{p}\) is assumed to be derived by integrating propeller and IMU [26; 27]. For instance, unknown sea currents can generate large process noise \(\mathbf{w}_{k}^{p}\)[26]. In (24), \(\mathbf{w}_{k}^{p}\) is a Gaussian noise with mean \(\mathbf{0}\) and covariance matrix \(\mathbf{Q}_{k}\). The proposed localization scheme can be considered as the reverse process of the BOTMA. The proposed localization method uses sound bearing measurements of a passing ship moving along a known trajectory (planned routes). Let \(\mathbf{z}_{k}^{n}\) denote the bearing measurement associated to the \(n\)-th ship (\(n\in\{1,2,\ldots,N\}\)) at sample-index \(k\).