Abstract

This paper presents a simulation study of an autonomous underwater vehicle (AUV) navigation system operating in a GPS-denied environment. The AUV navigation method makes use of underwater transponder positioning and requires only one transponder. A multirate unscented Kalman filter is used to determine the AUV orientation and position by fusing high-rate sensor data and low-rate information. The paper also proposes a gradient-based, efficient, and adaptive novel algorithm for plume boundary tracking missions. The algorithm follows a centralized approach and it includes path optimization features based on gradient information. The proposed algorithm is implemented in simulation on the AUV-based navigation system and successful boundary tracking results are obtained.

1. Introduction

Most plume tracking and detection systems reported in the literature are based on surface dynamic oceanographic features. These are detected by satellites and their images are preprocessed for selecting regions of interest to generate optimal tracking sequences [1, 2]. As automated data collection is becoming more prevalent, optimum path planning and trajectory designs for autonomous underwater vehicles (AUVs) are becoming more important, since those planning approaches are required to navigate the AUV for collecting information. In order to track evolving features of interest in the ocean using predictive ocean models, several waypoint selection algorithms are developed and experimentally tested in [3]. Design and control of trajectories for AUVs to obtain optimal data collection are presented in [4]. The AUVs rely on GPS data for accurate position fixes. However, due to the dielectric contrast and high dielectric loss factor of seawater compared to air, most of the strength of the GPS signal is reflected back or attenuated and the AUV has to surface occasionally for position update. Therefore, in situations like under-ice oil spills and deep-sea exploration, the detection and tracking tasks need to be performed without GPS support and rely on a very low frequency acoustic communication channel.

A review of the state-of-the-art AUV navigation techniques is presented in [5, 6], along with a brief comparison of their mission-based suitability. The methods discussed include inertial, acoustic, and geophysical AUV navigation. To this extent, obtaining GPS-based surface fixes as well as utilizing a Long Base Line (LBL), Short Base Line (SBL), or Ultra Short Base Line (USBL) system has been the standard practice for AUV navigation [7]. These systems have similar deployment and transponder positioning challenges. Inverted USBL configuration, where the USBL array is located on the vehicle, interrogates transponders placed in known positions [7]. The study reported in [8] discusses underwater transponder positioning (UTP), which requires only one transducer due to the tight coupling with the vehicle’s Inertial Navigation System (INS), and serves as an alternative approach.

In this paper, we use the inverted USBL configuration, which enables AUV positioning to be single-referenced and hence greatly reduces the complex operational logistics. A GPS-capable transponder, which is suspended from surface ice or a platform, is considered. The transponder transmits its position with each ping to the AUV and provides a means to position update in a GPS-denied undersea environment. It is also assumed that several receivers are placed along the body of the AUV on a noncoplanar configuration, keeping a sufficient space between each of the receivers. The transponder and AUV’s clocks are synchronized and the transponder broadcasts a unique signal with a known delay [9, 10]. Upon arrival of the transmitted signal to the AUV, a single trip travel time for each of the receivers is recorded. The recorded travel times are then used for the measurement update in state estimation. In between transponder broadcasts, short-term dead-reckoning is utilized based on high-rate INS data.

In operation conditions such as rough bathymetry or limited sensor range, where DVL bottom-track data is unavailable, the AUV’s dynamic model-based position information is incorporated for position estimation [1113]. A Linear Quadratic Regulator (LQR) is implemented based on the estimated states and further improved by adding a Proportional-Integral (PI) Controller for rudder control. The proposed approach is implemented in the nonlinear dynamic model of the REMUS AUV (Figure 1) presented in [14].

The paper has the following contributions:(1)a multirate unscented Kalman filter is employed for sensor fusion in AUV localization;(2)a novel efficient adaptive plume boundary tracking algorithm is developed using gradient information;(3)numerous simulation results are presented to verify the approach.

The rest of the paper is organized as follows. In Section 2, an introduction on sensor package is given and the AUV navigation algorithm is presented. In Section 3, simulated results of AUV navigation are discussed. In Section 4, a plume boundary tracking algorithm is presented with its simulation results. The paper concludes by reporting the future research directions. A preliminary version of this paper appears in proceedings of the 27th Canadian Conference on Electrical and Computer Engineering (CCECE) [15]. In this version we focused on providing a detailed description of the work and more simulation results.

2. Sensor and System Modeling

2.1. Preliminaries and Notation

According to [16], Degrees Of Freedom (DOF) model of AUV dynamics and kinematics can be derived aswhere matrix represents the inertia of the vehicle and hydrodynamic added-mass; matrix includes rigid body Coriolis and centrifugal components as well as added-mass derivatives corresponding to the velocity coupling; matrix includes energy dissipative terms due to relative motion between vehicle and surrounding fluid; combines gravitational and buoyancy forces; and is the thruster control matrix, where is the number of thrusters. Furthermore, , where and are body-fixed linear and angular velocities. The total force matrix is represented as . Also, , where is the position vector relative to the inertial reference frame origin and is the vector of Euler angles, which are roll, pitch, and yaw, respectively. is the control input of the thrusters. The Jacobian , where is the coordinate transform matrix from to and relates to Euler rate vector . These are computed as follows:where , , and , with , , and . We assume that as otherwise approaches a singularity. If such an operation is required, quaternion-based attitude representation can be adopted as in [17]. The coefficient matrices we used in this work are based on the REMUS AUV dynamic model [14]. Our AUV has a typical set of sensors as mentioned in Table 1. The noise in each acoustic receiver is the quantization error introduced by the analog to digital converter of the system [18]. The transponder emits signals at 1 Hz and the control loop runs at 100 Hz. The AUV navigation system including USBL array is depicted in Figure 2.

2.2. Sensor Modeling
2.2.1. IMU Measurements

The Inertial Measurement Unit (IMU) sensor consists of accelerometers and gyroscopes (gyros), which measure specific forces and angular rates in the body-fixed coordinate system. The accelerometer reading can be modeled as [20]where is the skew symmetric matrix cross product form of the vector , which is given aswhere is the gravity vector and is the bias of the reading with . The measurement noise is distributed as , with as the variance for each direction. The gyro reading is modeled as [20]where is the bias of the reading with . The noise of the reading is distributed as , with as the variance on each axis.

2.2.2. Attitude Measurements

Attitude sensors composed of magnetometers and compasses measure roll, pitch, and yaw angles. These sensors are modeled as [20]:where the sensor noise is distributed as with having as the variances of measurements.

2.2.3. Pressure Sensor Reading

A model for the pressure sensor is given as [20]where is the sensor reading, is the seawater density, and is the sensor location in body frame. The sensor noise is distributed as with as the variance.

2.2.4. DVL Sensor Reading

The DVL update (in processed form) is modeled aswhere is the DVL reading and the sensor noise is distributed as with having as the variance in each direction.

2.2.5. Velocity Estimation Using Dynamic Model

When DVL bottom-track data is unavailable, the body-fixed linear velocities are calculated using AUV’s nonlinear dynamic model and used in the measurement update process:where is an estimate for calculated using (1) and . The noise matrix for this estimate can be calculated recursively aswhere and . The matrix represents the noise in control space, which includes the noises in rudder and elevator angle control and the noise in thruster force.

Therefore, the linear velocity measurement or and its noise covariance or accordingly.

2.2.6. Time of Arrival Measured Using USBL

The time of arrival (TOA) of the acoustic wave from the transponder to the receiver is modeled as follows:where is the counted reading, is the sampling frequency, is the position of on the AUV body, is the transponder position, is the speed of sound in the seawater, and is the quantization noise. Note that . In this work we assume . However, in practical implementations can be computed using Conductivity Temperature Depth (CTD) sensor readings [21]. Furthermore, we assume that TOA is disturbed by a noise of with and , having as the noise variance.

A tightly coupled approach was adopted to infer the range and angle of arrival information. This is performed by feeding an array of TOA measurements to the estimation program. Let be the vector that includes all TOA measurements as

2.3. System Modeling

Incorporating the kinematics and measurements, the system equations can be written as follows [20]:The state vector consists of 15 states:The process noise covariance matrix is given asThe measurement model is written as , where is the measurement vector, is the measurement function, and is the measurement noise covariance. They are given as follows:

3. State Estimation, Control, and Navigation

Based on (14), the state vector is propagated through time and a multirate unscented Kalman filter (UKF) is implemented for state estimation. The filter update process runs asynchronously as a response to the measurement readings. Once the transmitted signal is received by all of the receivers, the system performs the position update. If the difference in time of arrival of the signal between the first and last receiver is very small, then the AUV movement at that time is neglected.

3.1. Controller Implementation

The navigation system is decoupled for ease of control implementation, assuming negligible coupling effects between vertical and horizontal planes. AUV movement in these two planes is governed by the control of its elevator angle and rudder angle , respectively. Two controllers are developed based on estimated states and the linearised versions of state equations to control and . Mechanical constraints on these angles are such that .

is controlled by :where is the Linear Quadratic Regulator (LQR) controller for elevator angle, are LQR gains, and (i.e., the difference between and current waypoint coordinate).

is controlled by , which combines LQR and Proportional-Integral (PI) Controllers:where are LQR gains and are proportional and integral gains. Also, , whereand is the perpendicular distance from the AUV position to the assigned path plane. After several iterations to reduce settling time, overshoot, and steady state errors, the optimized controller gains were found to be

AUV reaching the waypoint is determined by

3.2. An Algorithm for Localization and Autonomous Navigation

Incorporating the state estimation and control strategies, an algorithm is developed for AUV localization and navigation and is shown in Algorithm 1.

()    Initialize with: and its covariance
()    for    do
()        for    do
()            Read IMU measurements
()            Calculate sigma points
()            Compute using and (14)
()            Redraw sigma points
()            if  Attitude measurements are available  then
()             Read
()         if  Pressure measurement is available  then
()          Read
()         if  DVL bottom-track is available  then
()          ,
()         else
()          ,
()         if  Tr signal is received by all receivers  then
()          Construct
()         Compute
()         Implement and using (18) and (19)
()         Check the condition in (22)
()         if  WP is achieved  then
()          Exit and start from the next WP

One advantage of this approach is that gyroscope readings are not treated as measurements and hence is not included in the state vector. Consequently, the dimension of the state vector is reduced. In fact, is used for the state-based controller implementation. However, since the gyros have very low noise (), we assume that eliminating the bias error from gyro readings will provide with sufficient accuracy.

3.3. Simulation Setup

Navigation simulations are performed assuming a three-dimensional space. The ocean current velocity is assumed as in , , and directions, respectively. The mission is to perform a lawnmower-type navigation in the environment under five different cases:(1)navigation without acoustic-based position fixes,(2)navigation with position aiding and DVL dropout,(3)dynamic model-aided navigation when DVL data is unavailable,(4)navigation with transponder dropout and no velocity aiding,(5)navigation with incremental transponder dropouts.The start and end positions of the mission are given as 1200 m, 0 m, and −10 m and −1200 m, 1000 m, and −10 m in inertial directions, respectively. While navigating between these two positions, a 10 m step change occurs in vertical () direction.

3.4. Bias Estimation

The predefined bias values of the accelerometers and gyroscopes are estimated. This is depicted in Figure 3. Figures 3(a)3(c) show the estimates of accelerometer bias in directions , respectively. Figures 3(d)3(f) show gyro bias estimates, respectively, in . All the bias estimates converged quickly within less than 30 s and remained constants thereafter.

3.5. Navigation without Acoustic-Based Position Fixes

Simulation is performed without transponder aiding for position fixes throughout the run. However, velocity aiding is provided by DVL measurements. The results are shown in Figure 4. Figures 4(b)4(d) show the error in AUV position estimates of inertial directions, respectively. The errors in positions are still low due to the accurate localization based on low noise DVL measurements. The error in is still very low as the estimation of is updated based on pressure sensor readings.

3.6. Navigation with DVL Dropout

Navigation simulation is performed with a DVL data dropout over a 5000 s period, but transponder aiding is provided throughout the run. During the DVL dropout period, (9) and (10) are not used and the lines (12)–(15) in Algorithm 1 are not implemented in the controller. The results are shown in Figure 5. In Figure 5(a), the blue path shows the navigation in normal conditions where DVL data is available. The red path from A to B shows the time where DVL data is unavailable.

3.7. Model-Aided Navigation under DVL Dropout

In this case, the AUV’s dynamic model-based information is incorporated in the DVL dropout period. Figures 6(a) and 6(b) depict the 2D and 3D plots of the trajectory, respectively. Note that from A to B the algorithm uses model-based data and successful navigation is performed. Figures 7(a)7(c) show the errors associated with this model-aided navigation which occurs between  s and  s. Figures 8(a)8(c) show the errors in Euler angles under model-aided navigation from A to B shown in Figure 6. The errors in and are very low and under the range of 0.02 rad. However, error in is under 0.05 rad. The computation of Euler angles is not affected by the DVL dropout.

3.8. Navigation with Transponder Dropout and No Velocity Aiding

Navigation simulation is performed with the transponder dropout and no velocity aiding for 5000 s period. The 2D plot of the trajectory is shown in Figure 9(a) and errors in , and are shown in Figures 9(b), 9(c), and 9(d), respectively. Note that, with no velocity aiding, the AUV quickly diverges from the assigned path resulting in high errors in and . Once the velocity aiding is established again (in this case the DVL reading) the AUV converges and errors in are decreased.

3.9. Navigation with Incremental Transponder Dropouts

In this case, we consider a scenario where transponder dropout occurs at every 50 s and consequent loss of position fixes. The simulation run is limited to 10000 s. Figures 10(a) and 10(b) show the errors in range and azimuth from the AUV to the transponder position, respectively. Figures 10(c) and 10(d) show the errors in inertial and directions due to the transponder dropouts. It can be observed that, even with incremental loss of position, the estimated horizontal position is maintained with low error bounds.

3.10. Discussion on the AUV Navigation Results

We have performed numerous simulations using the AUV localization and navigation algorithm. The AUV localization is performed by employing an unscented Kalman filter, where the true nonlinear system is used to capture the correct mean and covariance to the 3rd order, providing better performance than standard extended Kalman filter based approaches [22]. The localization scheme yields satisfactory performance even with the transponder dropouts.

In Figures 5(b) and 5(c) increased errors in positions can be observed when DVL dropout occurs. At this period the AUV failed to perform a smooth navigation. Also, in Figure 5(d) there is a small reduction of the error in inertial at the DVL dropout period. At the DVL drop the observability matrix is not full rank. Hence, to preserve the observability the dimensions are reduced. As a result, the cross-covariance (which is introduced by DVL measurements) of filter covariance matrix is eliminated and a better representation of the uncertainty can be obtained in inertial direction, which may cause the error reduction. However, in practice the error in is mainly caused by the depth controller, which is mostly decoupled from the horizontal motion and makes decisions based readings from only the pressure sensor.

In the model-aided navigation under DVL dropout, an increment of the error in inertial direction can be observed at the DVL dropout period on Figure 7(c). This can be due to the fact that the new cross-covariance, which is introduced by using the model-aided information in the DVL dropout period, degrades the filter performance, hence leading to higher error in .

The rudder angle control is achieved by combining LQR with PI controller. As a result, the AUV was able to withstand the strong currents () and successful performances are shown in all cases.

4. Adaptive Plume Tracking

According to Algorithm 2, AUV navigation is performed and information is collected about the plume boundary based on in situ fluorometer readings. Incorporating that information, an estimate on dispersion of the plume can be achieved. Table 2 depicts the methods and limitations of the state-of-the-art plume tracking strategies used in the literature. In this work, we developed an efficient adaptive plume tracking algorithm to track the plume boundary and investigate its dispersion, with path optimization. An initial bounding box is assigned based on some prior knowledge (such as remote sensing data) and it is assumed that the oil plume is located inside the bounding box. The tracking algorithm navigates the AUV through the predefined search path and fluorometer readings are incorporated for detecting the plume boundary. Once a fluorometer reading exceeds a predefined threshold , a plume can be detected with a higher concentration. At this point, the AUV reaches the first boundary point and the algorithm switches to the boundary detecting mode.

input: Fluorometer readings   , threshold ()
output: Adaptive boundary tracking algorithm
()    while    do
()     Navigate the AUV through pre-defined path.
()     if  AUV reaches to last WP  then
()      Could not locate the plume…! exit
()    while  boundary track is not complete  do
()     if    then
()      Plume boundary is detected:
()      Move AUV until ()
()      Calculate the gradient using and
()   Set
()   Calculate section length and move AUV
()   Set and move
()  if    then
()   Repeat from line () to ()
()   if    then
()    Plume cannot be located…!
()    Calculate the center point using
()    Set to and move
()    Repeat from line ()

The proposed approach is depicted in Figure 11 and the steps followed are described in Algorithm 2. Let be a predefined number of consecutive fluorometer readings to ensure the AUV is inside the plume boundary. Also, let be another predefined number of consecutive fluorometer readings, which are lower than , to ensure that the plume cannot be located. The transect is proportional to . The same can be applied when the AUV is outside the boundary. Furthermore, is used for rapid plume mapping and it helps to improve the efficiency of the algorithm. To calculate , the system needs the two latest consecutive gradient values (as stated in line (11) of Algorithm 2). These consecutive gradient values are obtained from the four consecutive logged () positions. The calculation of is mentioned in line (9) of Algorithm 2. When the plume boundary is relatively smooth, the two consecutive gradients are nearly equal and the section length can be long. This is better for smooth sections of the plume boundary. Also when the plume boundary seems irregular, those consecutive gradients will be different and will be short comparatively. As a result, the system can map the complex, irregular-shaped section of the boundary.

Lines (15)–(18) in Algorithm 2 ensure that the plume is tracked all the time. Here, controls the distance the AUV moves before it turns to the center point direction. The condition in line (5) is evaluated based on a predefined distance between start and end points (points A and B in Figure 11) and terminates the plume detection mode.

One limitation of the approach is that the accuracy of plume boundary coverage entirely depends on the sensitivity of the fluorometer and the predefined values. The performance on “noisy” plume boundaries may be improved by adaptively changing the values and adding an array of fluorometers.

4.1. Plume with an Ellipse-Shaped Boundary

A horizontal plume dispersion with a simple ellipse shape is considered. The major and minor axis lengths of the ellipse are 100 m and 150 m. The angle shift from the major axis is . Figure 12(a) shows the true and detected plume boundaries under DVL-aided and dropout (dynamic model-based) navigation. Figures 12(b) and 12(c) show the 3D view of the navigation and the error in plume detection in directions, respectively. Point A is the place where the AUV looses the DVL data. Although instant high errors can be observed in inertial , those errors slowly converge due to the help of model-aided navigation.

4.2. Plume Boundary Modeled Using Fourier Orders

A rough estimate of the horizontal dispersion of a real plume can be obtained using Fourier orders of the form [28]where is the radial distance to the plume boundary, is the highest Fourier order of the series, is the undisturbed plume radius, is the angles about the center of the plume evaluated for each degree, is the radial amplitude perturbation, and is the phase shift of order. Figures 13(a) and 13(b) show the dispersion of the plume and the detected plume boundary in 2D and 3D view. Figure 13(c) shows the error in plume detection in directions. Note that the section length is reduced due to the irregularity of the plume dispersion.

4.3. Discussion on the Developed Plume Tracking Algorithm

The proposed approach was able to successfully track a more realistic plume boundary demonstrating its path optimization and adaptive features. This can be observed in Figure 13(a). From sections A-B where the irregularity of the plume boundary is lower, the AUV crosses the plume more loosely. Also at the places where the irregularity seems higher (sections C-D or E-F) AUV crosses the plume tightly. Also, the AUV navigation plan is not predefined and adaptive according to the shape of the plume boundary.

Certainly there are lots of facts that could influence the limitations of the algorithm. The measurement uncertainty of the oil sensor is not considered and the operation is assumed as an ON/OFF type. Consequently, those uncertainties can affect the accuracy of the detection/tracking of the plume boundary. The accuracy of the plume tracking system can be improved by adding an array of fluorometers to better estimate the oil concentration. Another challenge is the noisy plume boundaries where the gradient information based on fluorometer readings cannot be established accurately enough. Consequently, the AUV could fail to generate a reliable boundary tracking. Furthermore, the accuracy of the boundary tracking specially with irregular gradients is limited by the physical AUV dynamics and actuator constraints. Moreover, due to the medium density changes in a plume area the behavior of the acoustic could be complicated. This can introduce screening effects that severely impair the acoustic system and the AUV may fail to estimate positions accurately. However, at this work we did not model the medium density changes and its effect in acoustics. We assumed that the acoustic channel behaves the same both in and out of the plume. We believe it can be an interesting future work.

5. Conclusion

In this work we have developed a multirate UKF algorithm for AUV localization in a GPS-denied undersea environment. Furthermore, an adaptive plume detection and tracking system is developed. The proposed tracking algorithm uses gradient information. The algorithms are implemented in simulations and successful results are obtained.

The adaptive plume tracking system developed in this work is not limited to tracking oil plumes and it can be also used to track other types of plumes such as biological and chemical. As a future work we expect extending the proposed system to track 3D dynamic plumes and implementing it in real time to investigate most of the issues present in physical scenarios, which are not examined in detail with the current simulation work. Moreover, extending this system for multi-AUV navigation missions such as implementing a cooperative AUV network for under-ice oil plume detection and tracking would be an interesting research study. This will decrease the overall time for feature tracking and improve the usage and sharing of information, which lead to a better representation of the plume boundary.

Conflict of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.