Next Article in Journal
Influence of Calcined Clay Reactivity on the Mechanical Properties and Chloride Diffusion Resistance of Limestone Calcined Clay Cement (LC3) Concrete
Next Article in Special Issue
Dynamics Modeling and Motion Simulation of USV/UUV with Linked Underwater Cable
Previous Article in Journal
Effects of Marine Exhaust Gas Scrubbers on Gas and Particle Emissions
Previous Article in Special Issue
Robust Output Path-Following Control of Marine Surface Vessels with Finite-Time LOS Guidance
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

AutoTuning Environment for Static Obstacle Avoidance Methods Applied to USVs

by
Rafael Guardeño
1,*,
Manuel J. López
1,
Jesús Sánchez
2 and
Agustín Consegliere
1
1
Escuela Superior de Ingeniería, Universidad de Cádiz, 11519 Puerto Real, Spain
2
Navantia Sistemas, 11100 San Fernando, Spain
*
Author to whom correspondence should be addressed.
J. Mar. Sci. Eng. 2020, 8(5), 300; https://0-doi-org.brum.beds.ac.uk/10.3390/jmse8050300
Submission received: 2 April 2020 / Revised: 21 April 2020 / Accepted: 22 April 2020 / Published: 25 April 2020
(This article belongs to the Special Issue Unmanned Marine Vehicles)

Abstract

:
This work is focused on reactive Static Obstacle Avoidance (SOA) methods used to increase the autonomy of Unmanned Surface Vehicles (USVs). Currently, there are multiple approaches to avoid obstacles, which can be applied to different types of USV. In order to assist in the choice of the SOA method for a particular vessel and to accelerate the pretuning process necessary for its implementation, this paper proposes a new AutoTuning Environment for Static Obstacle Avoidance (ATESOA) methods applied to USVs. In this environment, a new simplified modelling of a LIDAR (Laser Imaging Detection and Ranging) sensor is proposed based on numerical simulations. This sensor model provides a realistic environment for the tuning of SOA methods that, due to its low load computation, is used by evolutionary algorithms for the autotuning. In order to analyze the proposed ATESOA, three SOA methods were adapted and implemented to consider the measurements given by the LIDAR model. Furthermore, a mathematical model is proposed and evaluated for using as USV in the simulation enviroment. The results obtained in numerical simulations show how the new ATESOA is able to adjust the SOA methods in scenarios with different obstacle distributions.

1. Introduction

Nowadays, the development of the USV is an active and growing field of research. The reason is that the applications of a USV are very broad, covering from environmental control, as well as many scientific and commercial applications, to national security and surveillance issues [1]. The competencies required a vessel in order to be considered autonomous can be grouped into three fields: Navigation, Guidance and Control, [1,2,3]. In more detail, these three fields can be decomposed into the subsystems shown in Figure 1. Where, firstly, the state vector of the vessel dynamics must be estimated from state observers and wave filters [4,5]. Once the state of the vehicle is known, the detection system processes the information received by the surrounding sensors in order to generate a model of the environment in which the USV is located [6,7,8,9,10]. Using this model of the environment, the guidance system (composed by algorithms of: obstacle avoidance [8,11,12,13,14,15,16], path following [4,5,17,18] and path planning [3,7,17,19,20]) demands the course and speed setpoints which guide the vessel safely to its goal. With the aim of ensuring that the vehicle reaches these setpoints, the control system commands the vessel’s actuators (propulsion system and steering machine) [4,5]. In this way, the degree of autonomy of the USV is determined by the level of development of each subsystem, as well as by the integration of the set [1,2,3]. From the subsystems shown in Figure 1, this work is focused on the obstacle avoidance systems applied to USVs [8,10,12,13,14,15,16,21,22,23,24,25,26,27,28,29,30,31]. Most of this work is focussed on the avoidance of dynamic obstacles in open sea situations [8,12,13,14,15,21,22,23,24,25,26,27,28]. And, although some of them also consider a specific approach to static obstacles [15,22,23,25], their study and evaluation is secondary. However, on a lesser scale, works such as [10,16,17,29,30,31] are centered on the capacity of a USV to avoid static obstacles.
All these obstacle avoidance methods have a common requirement, they need a simulation environment for their design, development and evaluation. In this aspect, there are very complete approaches [32,33,34,35], where the authors are focused on the development of simulation environments for the validation of USVs under realistic sea conditions (wind, current and waves), considering also the models of inertial and LIDARs sensors available in the GAZEBO framework [36]. On the other hand, most of the works focused on obstacle avoidance methods do not take into account the ambient disturbances that affect the USV and, moreover, they assume known: position, dimension and speed of the obstacles. As exceptions, in [12,15] the error present in the estimates of the environment model is taken into account. In addition, in [15,22] the external disturbances that affect the USV are also considered by modelling them as constant forces and moments referred to the earth axes. As an alternative to these extremely simplified simulation environments [10,13,21,23,24,25,26,27,28,29,30,31], or the highly complete environments proposed in [32,33,34,35,36], in this work a new simulation environment based on the simplified modelling of a LIDAR sensor is proposed. As a result, the time of numerical simulations is reduced and the methods of obstacle avoidance are exposed to a higher level of uncertainty present in the environment surrounding the vessel. This facilitates that the simulation environment proposed in this work can be used by iterative optimization algorithms, such as the evolutionary algorithms [37], with the advantage that it requires less computer load. In this way, the main contribution of this work is achieved, a new autotuning environment for SOA methods applied to USVs. Currently, there are different approaches for the autotuning of unmanned vehicles [38,39,40,41,42,43,44]. In [38] the authors use machine learning for autotuning the guidance system on a physical ground vehicle. As autotuning methods applied in the marine environment, in [39] a genetic algorithm is used to autotune the parameters of a sliding mode controller, which is applied to the mathematical model of an oil tanker vessel. On the other hand, the work carried out in [40] is focused on the autotuning of a dynamic positioning system in response to changes in the sea state. This is evaluated in numerical simulations with the dynamic model of an offshore supply vessel. With regard to underwater vehicles, in [41] the authors propose a autotuning method for heading control on an underwater vehicle and validate their approach with the micro-ROV vehicle. In relation to these works, the objective of the ATESOA approach proposed in this paper is to facilitate and accelerate the pretuning process necessary to implement SOA methods in USVs. In addition, in order to evaluate this autotuning environment, three methods of static obstacle avoidance have been adapted and implemented in this work [10,23,29,30], which have already been used in USVs. As a secondary contribution of this work, through the application of the generalized potential fields [45,46], the performance of potential fields method for USVs proposed in [23,30] has been improved. Finally, a USV model must be used to evaluate the new autotuning environment. In the current state of the art different mathematical models of USVs have been proposed [22,26,28,47,48,49], most of them for vessels of small length. This is mainly because one of the advantages of this kind of vehicles is that, as these do not need a crew, the size of the vehicle can be reduced, increasing its manoeuvrability and reducing costs [1,2]. Many of these models [22,26,28,47,48] simplify the dynamics of the vessel since they do not take into account the modelling of the actuators and the effect of the ocean current. In order to make realistic the simulation environment proposed in this work, a mathematical model is proposed for an USV of 9.2 m of length. This model has been synthesized from previous work in the field of marine surface vehicle control [4,5,28,49,50,51,52], whose parameters have been calculated through numerical simulations in order to obtain a characteristic behavior of marine surface vehicles [5,53,54,55,56,57]. Concretely, the USV model is composed of: model of the vessel and the actuators, current effect and course/speed controllers.

Major Contribution

This work is focused on the reactive obstacle avoidance methods, which form part of USV guidance systems. The main contribution of this work is a autotuning environment for SOA methods applied to USVs, the ATESOA environment. ATESOA can be applied to different SOA methods and vessels. In particular, it is based on the simplified modelling of a LIDAR sensor. This model takes into account the uncertainty present in the environment by considering the perspective effect of the sensor. In addition, a variation of the error present in the measurements delivered is also modelled as a function of the distance to the obstacle. Given its low computational load, this sensor model is used to perform a realistic autotuning of SOA methods using an evolutionary algorithm. In order to analyze the proposed ATESOA, the SOA methods: LROABRA (Local Reactive Obstacle Avoidance Based on Region Analysis), Vector Field Histogram+ and Potential Fields, have been implemented and adapted to the measures delivered by the sensor model. The results obtained have been analysed in detail in terms of performance and robustness.
The organization of this paper is as follows: Section 2 contains the mathematical models that form the new autotuning environment. The Section 3 presents the SOA methods adapted and implemented in this work to evaluate the autotuning environment. In Section 4, the setting of the genetic algorithm used for autotuning is presented, as well as the indicators that have been defined to evaluate the performance of each avoidance method. Section 5 contains the results obtained in numerical simulations. Lastly, in Section 6 the Conclusions are presented.

2. Autotuning Environment Based on Numerical Simulations

This section describes the mathematical models that form the simulation environment proposed in this work for the autotuning of SOA methods applied to USVs.

2.1. USV Model

The USV model is based on the development proposed in [4,5] for the modelling of three degrees of freedom applied to vessels. Specifically, the non-linear modelling proposed by Norrbin [5,49] is taken into account for the damping and the effect of the ocean currents is incorporated into the model in terms of relative velocities, considering that the current variation is significantly slower than the ship dynamics, [5]. Thus, the dynamic model of the vessel is defined as:
u ˙ ( m X u ˙ ) = m v r + m x g r 2 Y v ˙ v r r + X u u r + X | u | u | u r | u r + τ x v ˙ ( m Y v ˙ ) + m x g r ˙ = m u r X u ˙ u r r + Y v v r + Y r r + Y | v | v v r | v r | + Y | r | v | r | v r + Y | v | r | v r | r + τ y r ˙ ( I z N r ˙ ) + m x g v ˙ = m x g u r N u v v r u r + N r r + N v v r + N | v | r | v r | r + N | r | v | r | v r + N | r | r | r | r + τ n x ˙ E y ˙ E ψ ˙ η ˙ = c o s ( ψ ) s i n ( ψ ) 0 s i n ( ψ ) c o s ( ψ ) 0 0 0 1 R ( ψ ) u v r ν
where η represents the position vector of the vessel referenced to earth axes, ν and ν r are the vectors of velocity and relative velocity referenced to body axes, R ( ψ ) is the rotational matrix from Body-axes reference system to Earth-axes reference system (see Figure 2), τ act = [ τ x τ y τ z ] T represents the forces and moment applied by the actuators and the viscous non-linear term N u v replaces ( X u ˙ Y v ˙ ) , which causes the destabilizing moment or Munk moment [5]. The relative velocity vector of the Model (1) is defined according to Equation (2), where V c is the module of the current velocity and β c its direction.
ν r = [ u r v r r ] T = [ u V c c o s ( β c ψ ) v V c s i n ( β c ψ ) r ] T
On the other hand, the actuators are the elements that allow the steering of the vessel [4,5,49,50,51]. For the USV model proposed in this work, an outboard motor is considered as the actuator, which generates the propulsion force and the steering torque. This actuator is modelled as the set formed by propeller and rudder [49,50,51]. In this way, the force vector produced by the outboard located on the vessel’s centreline is defined according to Equation (3).
τ act = τ x τ y τ n = 1 0 0 1 0 l x T a c t D a c t L a c t , T a c t = T | n | n | n | n T | n | u | n | u r D a c t = D | δ | | δ | | u r | u r L a c t = ( L δ δ L | δ | δ | δ | δ ) | u r | u r
where l x is the distance of the actuator to the vessel’s center of gravity, n represents the revolutions per minute (RPM) of the propeller, δ is the rudder angle relative to the vessel’s centerline, T a c t represents the thrust generated by the propeller and, finally, D a c t and L a c t are the drag and transversal forces generated by the rudder, respectively. In addition, the dynamics of the outboard motor is taken into account as:
δ ˙ = ( 1 / τ δ ) ( δ c δ ) , δ [ δ l i m , δ l i m ] , δ ˙ [ δ ˙ l i m , δ ˙ l i m ] n ˙ = ( 1 / τ n ) ( n c n ) , n [ n m i n , n m a x ]
where δ c and n c represent the setpoints for the rudder angle and the propeller RPM, respectively. The time constants τ δ and τ n define the dynamics of the outboard motor.
Once the mathematical model has been defined, in order to adjust its parameters, the turning radius K r = I z / m and the Nomoto model identified in [28] for the vessel Viknes 830, as well as its maximum speed, have been taken as references to synthesize the proposed mathematical model and its parameter values. The main features of Viknes 830 are listed in Table 1.
The parameters of the USV model proposed in this paper are collected in Table 2. Assuming a homogeneous mass distribution and taking as a reference the Viknes 830, the mass of the new model and its moment of inertia are obtained according to the Equation (5). In addition, the added masses that affect the vessel are estimated according to [52], see Equation (6).
m = L B D L v B v D v m v , I z = K r v 2 m
where L, B y D represent the length, the beam and the draft of the vessel, respectively.
X u ˙ = 0.05 m , Y v ˙ = ( 1 / 2 ) ρ π D 2 L , N r ˙ = ( 1 / 24 ) ( 0.1 m B 2 + ρ π D 2 L 3 )
where ρ defines the density of seawater.
The other parameters are adjusted to obtain stationary values for forward speed and angular rate close to those shown in Table 1. In order to verify this setting, a zero current velocity is assumed ( V c = 0 ) and, once the operating range of the actuators ( n c and δ c ) has been discretised, the points of equilibrium of the system are obtained (stationary values of the velocity vector ν ). As can be seen in Figure 3, the forward speed increases with propoller revolution (where u m a x = 10.5 m/s) and falls when the rudder is engaged. Furthermore, the relation of the stationary value of r with the rudder angle is consistent with the behaviour of surface marine vehicles exposed in [5,53,54,55,56].
On the other hand, the parameters listed in Table 2 must ensure a stable behavior of the Model (1) at all its operating points. In order to check its dynamic behavior, Model (1) is linearized at each operating point shown in Figure 3. As a result, the effective time constants obtained for the velocity vector ν are shown in Figure 4. As can be seen, the system is stable over its entire operating range and its dynamics becomes faster in function of the vessel’s speed [5,53,54,55,56]. Moreover, with a zero rudder angle, the effective time constant τ r varies, depending of the speed, around the 4 s obtained by [28] in the Nomoto model identified for the Viknes 830. To conclude with the analysis of the Model (1), it is evaluated through numerical simulations by carrying out different sea tests [57]. The Runge-Kutta numerical integration method of fourth order is used with an integration step of 0.01 s, holding n c = 2430 RPM and V c = 0 m/s. The Turning Circle Tests can be seen in Figure 5a. On the other hand, in Figure 5b,c the spiral (or Dioudonne) manoeuvre and zig-zag manoeuvres are shown.

2.2. Course and Speed Controllers

Most obstacle avoidance systems for USVs [10,12,13,15,21,22,23,24,25,26,27,29,30,31] require that the vessel be equipped with course and speed controllers. These controllers guarantee, within a range of defined sea states, that the vessel reaches the course and speed requested by the avoidance system in a finite time. To this end, there are currently a multitude of control methods [4,5,52,53,58]. As the objective of this work is not focused on the design of the controllers, and in order to limit the problem, two PID structures are used to control the course and speed, see Equation (7). Moreover, due to the strong non-linearity of the Model (1), the adaptive control technique Gain Scheduling is used [53,58]. For this purpose, the controller parameters are set experimentally for three operating points: low ( u l o w = 3 m/s), medium ( u m e d i u m = 6 m/s) and high ( u h i g h = 9 m/s) speed, see Table 3. For intermediate speeds, linear interpolations are carried out between the PIDs. Finally, these controllers have been discretised using the Euler backwards method with a sampling period T m = 0.05 s.
δ c ( k ) = K P ψ e ψ ( k ) δ P ( k ) + T m K I ψ e ψ ( k ) + δ I ( k 1 ) δ I ( k ) + K D ψ T m e f ψ ( k ) e f ψ ( k 1 ) δ D ( k ) n c ( k ) = K P u e u ( k ) n P ( k ) + T m K I u e u ( k ) + n I ( k 1 ) n I ( k ) + K D u T m e f u ( k ) e f u ( k 1 ) n D ( k ) e f i ( k ) = 1 c f + 1 e i ( k ) + c f e f i ( k 1 ) , e i ( k ) = s p i ( k ) i ( k )
where i { u , ψ } , c f = τ f / T m and the time constants have been fixed as τ f = 0.1 ( K D / K P ) .
Due to the effect of external disturbances, a compensation is carried out on the error signals of the controllers (7) [5,52]. In this way, the course angle ( χ = ψ + β , see Figure 2) is controlled instead of the heading angle ( ψ ), as well as the module of the velocity vector (U) of the USV.
e ψ ( k ) = s p ψ ( k ) χ ( k ) , χ ( k ) = ψ ( k ) + a t a n 2 ( v ( k ) , u ( k ) ) e u ( k ) = s p u ( k ) U ( k ) , U ( k ) = u ( k ) 2 + v ( k ) 2

2.3. Simplified Modelling of a LIDAR Sensor

As a novel contribution made in this work, and with the aim of increasing the realism of the numerical simulations carried out, a LIDAR sensor has been modelled. As a reference, the characteristics of the LIDAR Ultra Puck of the company Velodyne have been used [59]. In addition, as in [10,12,13,15,21,22,23,24,25,26,27,28,29,30,31], a 2D Cartesian space ( x E , y E ) is used to evaluate the obstacle avoidance systems applied to USVs. Therefore, only one of the vertical channels of the LIDAR sensor is taken into account. Thus, the computation of the sensor model is decreased, reducing simulation times and allowing its use in iterative optimization algorithms, as evolutionary algorithms. In particular, from the information provided by the manufacturer in [59], the following data are taken:
  • Distance Measurement Range of 200 m ( d r a n g e = 200 m).
  • Horizontal Field of View of 360 ° ( h r a n g e = 360 ° ).
  • Horizontal Angular Resolution between 0.1 ° and 0.4 ° . Looking for the worst case, h r e s = 0.4 ° .
  • Rotation Rate between 5 Hz to 20 Hz. Looking for a balance between computation and refresh rate of the environment information T m L , a rotation frequency f m L = 10 Hz is set.
  • Range Accuracy up to ± 3 cm. The minimum value for the standard deviation of the WGN (White Gaussian Noise) that affects the measurement is taken as σ m i n L = 0.03 m.
Before proceeding with the modelling of the LIDAR sensor, it is necessary to define the obstacle scenarios in which the USV is located. In this work, each obstacle O b s t E is defined as a polygon formed by four concatenated segments, which are referenced to Earth-axes. Consequently, a scenario ( S E ) is the result of the union of a finite number of obstacles ( n O ), see Equation (9).
S E = i O = 1 n O O b s t E i O , O b s t E i O = s e g 1 E i O = x 1 E i O , y 1 E i O , x 2 E i O , y 2 E i O , s e g 2 E i O = x 2 E i O , y 2 E i O , x 3 E i O , y 3 E i O , s e g 3 E i O = x 3 E i O , y 3 E i O , x 4 E i O , y 4 E i O , s e g 4 E i O = x 4 E i O , y 4 E i O , x 1 E i O , y 1 E i O
where s e g 1 E 4 E i O represents the concatenated segments that form each obstacle and x 1 E 4 E i O are the coordinates of its four points.
It is important to highlight that we have chosen to model each obstacle as a rectangle due to the facility for generating scenarios from these polygons. However, this LIDAR sensor model can also be used in the presence of irregular polygons such as the ones that define the marine environments [16,17,19]. For this purpose, two approaches can be taken. Firstly, Delaunay Triangulation [60] can be applied to polygons that form the coastlines [61]. This triangulation decomposes the polygon into a finite number of triangles ( n O ). Thus, each triangle is defined as a polygon formed by three concatenated segments. Secondly, the scenario can be defined as the set of segments collected in .shp files such as the ones collected in [61].
Defined the LIDAR parameters, as well as the obstacle scenario ( S E ), the measurement of this sensor can be modelled as the set of segments L B (10), which is referenced to Body-axes.
L B = s e g B i L x 1 B i L , y 1 B i L , x 2 B i L , y 2 B i L | x 1 B i L = y 1 B i L = 0 , x 2 B i L = c o s ( i L h r e s ) d r a n g e , y 2 B i L = s i n ( i L h r e s ) d r a n g e I L = i L | i L N , i L < n L , n L N
where x 1 B , 2 B i L and y 1 B , 2 B i L represent the coordinates of the two points that form a segment and n L is the number of segments (LIDAR beams) that compose the set L B ( n L = h r a n g e / h r e s = 900 ).
In order to model the distances measured by the LIDAR in its horizontal field of view ( h r a n g e ), the points of intersection between the two sets of segments S E and L B are taken. For this purpose, both sets of segments must refer to the same reference system. Therefore, once the set L B has been expressed in matrix form, it is rotated and translated to Earth-axes at each simulation instant (k):
x 1 E 0 y 1 E 0 x 2 E 0 y 2 E 0 x 1 E i L y 1 E i L x 2 E i L y 2 E i L x 1 E n L 1 y 1 E n L 1 x 2 E n L 1 y 2 E n L 1 L E = x 1 B 0 y 1 B 0 x 2 B 0 y 2 B 0 x 1 B i L y 1 B i L x 2 B i L y 2 B i L x 1 B n L 1 y 1 B n L 1 x 2 B n L 1 y 2 B n L 1 L B R p T 0 0 R p T + + 1 1 1 T x E ( k ) y E ( k ) x E ( k ) y E ( k ) , R p = c o s ψ ( k ) s i n ψ ( k ) s i n ψ ( k ) c o s ψ ( k )
The set of segments that form the scenario is also expressed in matrix form S E :
S E = Obst E 1 Obst E i O Obst E n O , Obst E i O = s e g 1 E i O s e g 2 E i O s e g 3 E i O s e g 4 E i O = x 1 E i O y 1 E i O x 2 E i O y 2 E i O x 2 E i O y 2 E i O x 3 E i O y 3 E i O x 3 E i O y 3 E i O x 4 E i O y 4 E i O x 4 E i O y 4 E i O x 1 E i O y 1 E i O
As the problem of the intersection of segments can be solved from the field of computational geometry [60], in this work the matrices (11) and (12) are used as inputs for the function proposed in [62]. This function calculates the intersections between two sets of segments, considering coincident and parallel segments. Between other outputs, it returns the matrices F Inter and ND L E , both of dimension n L × n O . Where F Inter defines which segments of the sets (11) and (12) are intersected ( F Inter ( i L , i O ) = 1 ) and ND L E returns the normalized distances between the intersection points and the starting points of the segments of the set L E . From the matrix F Inter , in the Equation (13) the vector f Inter L is obtained, which indicates that beams of the LIDAR sensor have detected an obstacle.
f Inter L = f I n t e r 0 f I n t e r i L f I n t e r n L 1 T , f I n t e r i L = 1 if F Inter i L · F Inter i L T 0 0 otherwise F Inter i L ϵ M 1 × n O R
Once the beams that have detected obstacles are known, the measured distance vector D m L is defined by the Equation (14). This LIDAR modelling considers the perspective effects that affect to this kind of sensors [1,21,26,32], since from each beam only the closest distance ( d m i n i L ) is taken, while the later points of intersection with other segments (obstacles) are ignored.
D m L = d m 0 d m i L d m n L 1 T , d m i L = d m i n i L + η i L if f I n t e r i L = 1 d r a n g e otherwise d m i n i L = min ND L E i L , ND L E i L ϵ M 1 × n O R
where η i L is the WGN that affects to each distance measurement, whose standard deviation ( σ i L ) depends of d m i n i L accoding to the Equation (15). Thus, the accuracy of each measure of the sensor is modelled with continuous limits and depends on the distance to the obstacle.
σ i L = t a n h 10 d m i n i L d r a n g e 5 + 1 σ m a x L σ m i n L 2 + σ m i n L
where the parameter σ m a x L must be set according to the sea states. Thereby, the performance of the sensor depends on the distance of the obstacles as well as of the environmental conditions. As maximum noise level, in this work σ m a x L = 5 m has been set.
Together with the measured distance matrix ( D m L ) and intersection flags ( f Inter L ), the sensor model also provides the matrix of detected points (16). Figure 6 shows the measurements delivered by the modelling proposed in this work for a LIDAR sensor.
P obst L B = x o b s t 0 B x o b s t i L B x o b s t n L 1 B y o b s t 0 B y o b s t i L B y o b s t n L 1 B T , x o b s t B i L = c o s i L h r e s d m i L y o b s t B i L = s i n i L h r e s d m i L
where the reference system of the LIDAR sensor coincides with the Body-axes reference system.
This modelling, with respect to other works [10,12,13,15,21,22,23,24,25,26,27,28,29,30,31] that also evaluate avoidance systems for USVs through numerical simulations, is a novel contribution. Because it exposes the avoidance systems to a higher level of the uncertainty present in the environment surrounding the vessel, without reaching the complexity required when a complete modelling of the environment is realized [32,33,34,35,36]. This facilitates its application in autotuning environments based on evolutionary algorithms, due to the large number of simulations that these algorithms must carry out. As a visual demonstration, the video [63] shows the LROABRA algorithm adapted to the approach for the LIDAR sensor model proposed in this work. As can be seen in this video, this modelling adds measurement error to the detected points in function of their distance to the vehicle. In addition, this model also takes into account the uncertainty present in the environment, since it does not detect hidden obstacles due to the effects of perspective.

2.4. Scenarios for Static Obstacle Avoidance Methods Testing

Before the description of the obstacle scenarios, it is necessary to emphasize that the SOA algorithms studied in this work are reactive methods [11]. These methods are characterized by the use of environmental information processed in real time from the measurements delivered by different sensors. Therefore, these methods do not ensure that the vehicle reaches the target if there are local minima. For this reason, in order to provide a complete solution to the problem of autonomous navigation [1,2,3], it is necessary to combine obstacle avoidance methods or reactive methods [8,10,12,13,14,15,21,22,23,24,25,26,27,28,29,30,31] with global or path planning algorithms [3,7,17,19,20]. In this sense, the obstacle scenarios studied in this work are focused only on the reactive part, unknown scenarios that the autonomous vehicle discovers while navigating. Without considering scenarios with local minimums such as those that can be found in marine environments (in which it would be necessary to have a guidance system that also incorporates a global algorithm). Specifically, the scenarios used to carry out the autotuning and to evaluate the SOA methods studied in this work are shown in Figure 7. A scenario is defined by the obstacles (9), the goal point P g o a l and the initial position and speed vectors ( η , ν r ) of the USV. In this work, five scenarios are proposed. With scenario 1 the implementation of the SOA methods is verified. The second scenario, mainly, is used to evaluate the stability of the avoidance algorithm in situations where there are close obstacles without risk of collision. As well as the subsequent response of these methods when a collision risk is presented. Scenario 3 places the USV in a zig-zag scenario where all directions, at greater or lesser distances, lead to collision. Thus, the behaviour of SOA methods in closed environments is evaluated. Finally, scenarios 4 and 5 are densely occupied and allow a wide range of alternative routes. These scenarios are used to study the robustness of SOA methods that, while these have been adjusted for a different scenario, must solve new geometric situations not contemplated in their initial adjustment. In all scenarios the vehicle starts moving at the goal speed u g o a l = u = 7 m/s and, looking for the most unfavourable case in which the current leads the USV towards the obstacles, V c = 0.5 m/s and β C = 0 has been set.

3. Static Obstacle Avoidance Methods

In order to evaluate the new autotuning environment proposed in this work, three obstacle avoidance methods have been adapted and implemented to the LIDAR sensor Model (10).

3.1. LROABRA Method

The LROABRA method is proposed in [29] as a static obstacle avoidance system that allows USVs to navigate at high speeds. In this approach, the obstacles are represented in a system of polar coordinates referenced to Body-axes, where each obstacle is modelled as a circle of radius r i and position O i ( ρ i , θ i ) . From these circles, the non-permitted directions are defined:
B o b s = i = 1 n O R o s b i , R o s b i = ψ ( k ) + θ i ϕ i σ , ψ ( k ) + θ i + ϕ i + σ if ρ i d n e a r otherwise
where σ is a safety angle used to expand the angular space occupied by obstacles, d n e a r is the threshold distance from which the obstacles are considered and ϕ i = a s i n ( r i / ρ i ) .
Based on [64], the guidance directions ( θ ) and speed commands ( s p u ) that can be reached by the USV are limited to the following dynamic window:
V T = s p u | s p u ϵ u ( k ) u ˙ m a x T m a , u ( k ) + u ˙ m a x T m a V H e a d = θ | θ ϵ ψ ( k ) + r ( k ) T m a 1 2 r ˙ m a x T m a 2 , ψ ( k ) + r ( k ) T m a + 1 2 r ˙ m a x T m a 2
where u ˙ m a x and r ˙ m a x represent the maximum linear and angular acceleration of the vessel, respectively, and T m a is the sample time of the algorithm.
Once the sets of forbidden ( B o b s ) and reachable ( V H e a d ) orientations have been defined, the Heuristics (19) is maximized in order to obtain the angle θ o p t i m a l .
F ϵ ( θ ) = ϵ 1 | θ g o a l θ | π f h e a d ( θ ) + ( 1 ϵ ) 1 n O i = 1 n O | θ ( θ i + ψ ( k ) ) | π f s a f e ( θ ) θ V H e a d , θ B o b s , θ [ π , π ]
where ϵ is the heuristic adjustment parameter and θ g o a l represents the goal direction.
Due to the fact that the angle θ o p t i m a l defines a safe and reachable direction for the USV, it is used to insert a temporary guidance waypoint P i n s e r t ( x i n s e r t , y i n s e r t ) at a distance D i n s e r t .
x i n s e r t = x E ( k ) + D i n s e r t c o s ( θ o p t i m a l ) y i n s e r t = y E ( k ) + D i n s e r t s i n ( θ o p t i m a l ) , s p ψ ( k ) = a t a n 2 y i n s e r t y E ( k ) , x i n s e r t x E ( k )
where P i n s e r t is updated when the USV reaches it or if the guidance angle is far from the optimal angle:
| x i n s e r t x E ( k ) , y i n s e r t y E ( k ) | d g a t e | s p ψ ( k ) θ o p t i m a l ( k ) | θ g a t e
where d g a t e and θ g a t e represent the linear and angular distance thresholds that set the P i n s e r t update.
On the other hand, the speed setpoint s p u is calculated according to the Equation (22), which is limited to the dynamic window V T (18).
s p u ( k ) = u g o a l η L ( k ) 1 | θ δ ( k ) | π , θ δ ( k ) = s p ψ ( k ) ψ ( k )
where the variable η L depends of the minimum distance to obstacles which lie within the impact zone of the USV, see Equation (23).
η L = η 1 = r ( k ) m a x ( θ δ ( k ) , r ( k ) ) if d m i n d n e a r η 2 = d m i n 2 + 2 r m a x d m i n d n e a r 2 + r m a x d n e a r otherwise , d m i n = m i n d o b s i d n e a r | θ i | < θ v
where r m a x is the maximum angular rate of the vessel, d o b s i is the distance to the center of each obstacle and θ v defines the angular impact zone of the USV.
In order to expose the LROABRA algorithm to a higher level of uncertainty in the environment, in this work the set of non-permitted directions is modified. Thus, B o s b is generated from the measurements delivered by the LIDAR sensor model, considering each beam from the Model (10) as an obstacle, see Equation (24). Furthermore, with the purpose that the algorithm considers the direction of the velocity vector, in the Equations (18), (19) and (22), ψ ( k ) is replaced by χ ( k ) . One of the executions of the LROABRA algorithm implemented in this work is shown in Figure 8.
B o b s = i = 1 n L R o s b i , R o s b i = χ ( k ) + i L h r e s σ , χ ( k ) + i L h r e s + σ if d m i L d n e a r otherwise
where the term θ i ± ϕ i of the Equation (17) has been replaced by i L h r e s .

3.2. Potential Fields Methods

The potential field (PF) method, due to its simplicity, has been widely used in different problems of mobile robotics [7,11,16,19,23,26,30,45,65]. A disadvantage of the classical potential fields used as a reactive obstacle avoidance method is that it can produce oscillatory trajectories [46]. In order to improve their performance in USVs, the classical potential fields [65] are modified by different authors in [23,30]. In their work, the forces of attraction and repulsion are modelled according to Equation (25).
f a t t = m a t t α a t t | P g o a l P U S V ( k ) | m a t t 1 f r e p i = η r e p 1 p s i 1 p o 1 p s i 2 | P U S V ( k ) P g o a l | n r e p f r e p 1 i + n r e p 2 η r e p 1 p s i 1 p o 2 | P U S V ( k ) P g o a l | n r e p 1 f r e p 2 i
where P U S V ( k ) = [ x E ( k ) y E ( k ) ] , P g o a l is the position of the goal waypoint, α a t t and m a t t are positive parameters used to tune the magnitude of the attraction potential, p o is the distance that limits the range of influence of the obstacles, p s i is the distance to each obstacle, and, finally, the magnitude of the repulsion potential is tuned with the positive parameters η r e p and n r e p .
The repulsive forces of Equation (25), as shown in [23], are generated from the vertices of the obstacles which form the coastline. In addition, the distances considered in [23] are in the range of kilometres. In order to expose the algorithm to a higher level of uncertainty in the environment and evaluate it in proximity situations ( d r a n g e = 200 m), which increases the difficulty of avoidance scenarios, in this work a repulsive force is generated by each of the beams of the LIDAR sensor (10). In this way, the total repulsive force, the attraction force and the resulting force, all of them referenced to Body-axes, are defined according to Equation (26).
F r e p ( k ) = i L = 1 n L f r e p i L c o s i L h r e s ζ ( k ) s i n i L h r e s ζ ( k ) F a t t ( k ) = f a t t c o s θ g o a l ( k ) χ ( k ) s i n θ g o a l ( k ) χ ( k ) F R ( k ) = F r e p ( k ) + F a t t ( k ) = F R x F R y
where ζ ( k ) = ψ ( k ) χ ( k ) , θ g o a l ( k ) = a t a n 2 y g o a l y E ( k ) , x g o a l x E ( k ) and the module of each repulsive force ( f r e p i L ) corresponds to term f r e p i of Equation (25), in which p s i has been replaced by the measured distance d m i L , which is defined in Equation (14).
The course setpoint s p ψ is obtained from the resulting force ( F R ) according to the Equation (27), [46]. As can be seen, a low-pass filter is applied to reduce the oscillations [66].
θ F R ( k ) = a t a n 2 F R y , F R x + χ ( k ) s p ψ ( k ) = 1 c F + 1 θ F R ( k ) + c F s p ψ ( k 1 )
where c F = τ F / T m a , τ F is the effective time constant of the filter applied to the resulting force and T m a is the sample time of the obstacle avoidance method.
On the other hand, in [23,30] the authors do not consider changes in the speed of the vessel. In order to ensure that the potential fields have the same manoeuvrability over the vessel as the other SOA methods studied in this paper, the approach proposed in [66] is adopted to calculate s p u . Thus, the speed setpoint depends on the resulting force and the speed of the vessel, see Equation (28).
s p u ( k ) = u g o a l ( 1 c o s θ ) c o s θ = 0 if | F R | = 0 u F R x + v F R y | U B | | F R | otherwise
where U B ( u , v ) represents the vessel’s velocity vector referenced to Body-axes.
As will be shown in the results section, despite the favourable results obtained in [23,30] when applying the modified potential fields (PFs) (for distances of several kilometres), if the detection range is limited ( d r a n g e = 200 m [59]) the PFs [23,30] do not provide acceptable results. As a secondary contribution of this work, and based on the concept of generalized potential fields (GPFs) proposed in [45] and studied in [46], we propose to use potential fields that consider the relative direction between the obstacle and the vessel’s velocity vector, see Equation (29). For this purpose, the module of repulsive forces f r e p i L calculated in (26) is replaced by:
f r e p G i L = f r e p i L | c o s ( ϕ i L ) β g p f | , ϕ i L = π / 2 if | i L h r e s ζ ( k ) | > π / 2 i L h r e s ζ ( k ) otherwise
where β g p f is a positive tuning parameter that decreases the effect of obstacles towards which the USV does not go.
The attraction force in the GPFs method is calculated as in the PFs proposed in [23].Therefore, any change in the guidance direction of one method with respect to another depends only on the repulsive forces. A comparative between the repulsive forces generated when applying the PFs proposed in [23,30] and those obtained when applying the GPFs proposed in this paper is shown in Figure 9. As can be seen in the bottom left graph, in the case of GPFs, only the obstacles towards which the USV is moving produce a repulsive force (blue circles in Figure 9). While, in the case of PFs, all obstacles under the range of influence ( p o ) produce repulsive forces (brown circles in Figure 9). As a consequence, at the simulation instant shown, the resultant force obtained when applying GPFs ( F t G P F ) guides the USV towards the goal, while if the resultant force obtained by the PFs ( F t P F ) were applied, this would drive the USV away from the obstacle zone (although these do not represent a real danger) and, consequently, away from the goal (see bottom right graph). In the simulation shown, the GPFs method is the one that guides the USV, which has been manually adjusted in an iterative procedure.

3.3. VFH+ Method

The VFH+ method is proposed in [67] as an improved version of the VFH (Vector Field Histogram) [68]. Later, it has been used as an obstacle avoidance system for an USV in [10]. In this work, the block of this algorithm available in Simulink is used [69]. As model of the environment, the VFH+ method uses The Primary Polar Histogram ( H P ), [67]. To generate it, the version of the method available in [69] is fully compatible with the model of the LIDAR sensor proposed in this work. As inputs, this block uses the distance measurements (14) and their angular positions (30). Furthermore, as in the other SOA methods, and in order to consider the effect of environmental disturbances [5,52], in this work the angular positions of the measured distances are referenced to the course angle χ ( k ) .
θ m L = θ m 0 θ m i L θ m n L 1 T , θ m i L = i L h r e s a t a n 2 ( v ( k ) , u ( k ) )
In the same way that the LROABRA method increases the angular occupation of obstacles with the parameter σ , and in contrast to the potential fields which do not consider the size of the USV, the VFH+ method approximates the shape of the vehicle to a circle of radius r w i d t h . Thus, the angular occupation of each detected point is extended according to γ r i L , see Equation (31). In this way, each bar of H P is defined according to the Equation (32).
γ r L = γ r 0 γ r i L γ r n L 1 T , γ r i L = a s i n r w i d t h / d m i L if f I n t e r i L = 1 0 otherwise
H P = h P 0 h P i L h P n L 1 T , h P i L = i L = 1 n O f d m i L b i L b i L = 1 if i L h r e s [ θ m i L γ r i L , θ m i L + γ r i L ] 0 otherwise
where f d m i L defines the occupation density as a function of distance, see [67,69].
Obtained H P , this is converted into a Binary Polar Histogram ( H B ) that classifies the directions between occupied or safe. To ensure that the state of the directions does not change several times, which generates an oscillatory behavior that can drive the system to dangerous situations [67], the hysteresis thresholds τ h i g h and τ l o w are applied:
H B = h B 0 h B i L h B n L 1 T , h B i L = 1 if h P i L ( k ) > τ h i g h 0 if h P i L ( k ) < τ l o w h B i L ( k 1 ) otherwise
In addition, in order to take into account the dynamic and kinematic of the vehicle, the VFH+ method simplifies its trajectory to circular arcs of radius r s h i p ,67]. These circular trajectories limit the safe directions, applying a mask to the H B and generating The Masked Polar Histogram:
H M = h M 0 h M i L h M n L 1 T , h M i L = 0 if h B i L ( k ) = 0 a n d θ m i L [ ϕ r , χ ] , [ χ , ϕ l ] 1 otherwise
where ϕ l and ϕ r are the safe angles to port and starboard, respectively. The definition of these angles is recorded in [67].
Defined H M , the course setpoint ( s p ψ ) is chosen between the safe or collision-free directions obtained ( h M i L = 0 ). For this purpose, the following cost function is minimized:
g ( θ m i L ) = μ 1 Δ θ m i L , θ g o a l + μ 2 Δ θ m i L , χ ( k ) + μ 3 Δ θ m i L , s p ψ ( k 1 )
where the parameters μ 1 , μ 2 and μ 3 are weighing factors that take into account: alignment with the goal direction, cost associated with the change of direction and alignment with the previous course setpoint (memory effect), respectively. The operator δ ( c 1 , c 2 ) calculates the angular distance between the directions c 1 and c 2 .
Finally, the speed setpoint s p u is calculated according to the Equation (36), [68]. Figure 10 shows one execution of the VFH+ method implemented in this work.
s p u ( k ) = u g o a l 1 | r ( k ) | r m a x
where r m a x is a tuning parameter which represents the maximum angular rate of the USV.

4. Simple Autotuning Approach for Obstacle Avoidance Methods

Currently there are a great variety of obstacle avoidance methods for USVs [8,10,12,13,14,15,21,22,23,24,25,26,27,28,29,30,31], as well as a wide range of surface marine vehicles [4,5,8,10,12,21,22,26,28,29,47,48,49,52] in which these can be applied. For this reason, and as main novelty contribution of this work, an AutoTuning Environment for Static Obstacle Avoidance (ATESOA) methods applied to USVs is proposed. This environment is flexible to any type of marine surface vehicle (that is equipped with course and speed controllers) and can be applied to different SOA methods. It should be noted that, starting from the limitations of each avoidance method, its performance to avoid obstacles and to reach the goal are determined by the tuning of its parameters ( Θ t u n i n g ). In addition, this tuning must be carried out on a specific obstacle scenario. However, in the problems of obstacle avoidance there can be an infinite number of geometric combinations that define the scenario. Therefore, even if the optimum value of Θ t u n i n g is obtained for a defined function, this parameter vector would only be optimal for that particular scenario. For this reason, the study carried out in this work does not pretend to find the optimal parameter vector for each avoidance method applied to a specific vessel. Instead, its purpose is to facilitate the pretuning process necessary to implement SOA methods in USVs, as well as to assist in their choice for a particular vessel, through the use of the new ATESOA proposed in this paper.
In this work, a Genetic Algorithm is used as optimization technique to perform autotuning. This election is due to its established use in vehicle autotuning [37,39,42,44] and to the fact that the methods of obstacle avoidance [8,10,12,13,14,15,21,22,23,24,25,26,27,28,29,30,31] usually include decision factors based on thresholds (that convert them into non-smooth functions, complicating the application of conventional least-squares optimization methods [43,53]). Thus, each tuning parameter of an avoidance method is considered as a gene and, consequently, its tuning parameter vector Θ t u n i n g represents an individual of the population. In addition, to quantify the performance achieved by an avoidance method, with a particular tuning vector Θ t u n i n g , the following indicators are proposed:
Δ s p ψ ( k ) = | s p ψ ( k ) s p ψ ( k 1 ) | π + Δ s p ψ ( k 1 ) Δ s p u ( k ) = | s p u ( k ) s p u ( k 1 ) | u m a x + Δ s p u ( k 1 ) d i s t D ( k ) = | ( x E ( k ) x E ( k 1 ) ) , ( y E ( k ) y E ( k 1 ) ) | + d i s t D ( k 1 ) t i m e ( k ) = k T m A d i s t G ( k ) = | ( x E ( k ) x g o a l ) , ( y E ( k ) y g o a l ) |
where Δ s p ψ and Δ s p u are used to quantify the control effort solicited by the avoidance system, d i s t D is the distance traveled by the USV, t i m e is the travel time and d i s t G is the distance up to P g o a l .
Once the indicators (37) have been defined, the fitness function that quantifies the performance of an avoidance method for each individual Θ t u n i n g is defined according to:
J = J s = t i m e ( k ) t i m e l i m + d i s t D ( k ) d i s t D l i m + 1 2 Δ s p ψ ( k ) Δ s p ψ l i m + Δ s p u ( k ) Δ s p u l i m if f s t o p = 1 J f = 3 + d i s t G ( k ) d i s t G ( 0 ) otherwise
where t i m e l i m , d i s t D l i m , Δ s p ψ l i m and Δ s p u l i m set the maximum allowed values for the indicators (37) in a particular scenario and d i s t G ( 0 ) represents the initial distance between the USV and P g o a l . On the other hand, f s t o p defines two situations: the USV has reached its target or not,
f s t o p = 1 if d i s t G ( k ) d w p 0 if n ( k ) = n l i m m i n D m L d c o l l i s i o n , n t i m e , d i s t D , Δ s p ψ , Δ s p u
where d w p and d c o l l i s i o n represent the distance thresholds, which define whether the USV has reached P g o a l or has collided, respectively.
In this way, if the parameter vector Θ t u n i n g drives the USV to the goal, within the established limits (39), the index J s is used to minimize: time, distance and control effort in the travel, see Equation (38). On the other hand, if the safety distance ( d c o l l i s i o n ) or any of the established limits is exceeded, the numerical simulation is stopped and the index used is J f . The value of J f will always be higher than that of J s and, furthermore, it depends on the final distance between the USV and P g o a l . This last facilitates that, if in the initial populations a parameter vector that successfully guides the USV to P g o a l is not obtained, the GA prioritizes those vectors Θ t u n i n g that drive the USV closest to the goal. Once the fitness function (38) has been described, the tuning parameter vectors of the four SOA methods studied in this work are defined in the Equation (40).
Θ L R O A B R A t u n i n g = u ˙ m a x r ˙ m a x ϵ D i n s e r t ( d n e a r D i n s e r t ) σ θ g a t e r m a x θ v T Θ P F t u n i n g = m a t t α a t t η r e p n r e p p o τ F R T , Θ G P F t u n i n g = Θ P F t u n i n g T β G P F T Θ V F H + t u n i n g = τ l o w ( τ h i g h τ l o w ) r s h i p μ 1 μ 2 μ 3 r m a x T
For the implementation of the AG, the Toolbox available in Matlab [70] has been used. In order to take into account the physical or adjustment limits established for the vectors Θ t u n i n g , these have been limited considering the guidelines exposed in [23,29,30,66,67,68,69], see Equation (41). Consequently, the option mutationadaptfeasible has been established as a mutation function [70] and the initial population has been limited to x l o w and x h i h g , see Equation (41). On the other hand, in order to limit the simulation times, we have established: a population of 200 individuals, a maximum of 20 generations, and the parameter M a x S t a l l G e n e r a t i o n s as 25 % of the maximum generations. Finally, with the purpose of avoiding early convergence [37,70], elite individuals have been limited to 1.5 % of the population and the crossover factor has been decreased (thus increasing the mutation factor) to 0.7. The other parameters are the ones established by default in [70].
Θ P F l o w = 0.1 50 8000 0.1 50 1 T , Θ P F h i g h = 5 1000 2.0 × 10 5 5 200 6 T Θ L R O A B R A l o w = 0.2 0.3 0.5 60 0 π / 18 π / 4 0.1 π / 36 T , Θ G P F l o w = Θ P F l o w T 2 T Θ L R O A B R A u p = 2 2.5 0.9 100 100 π / 6 3 π / 4 1 π / 6 T , Θ G P F h i g h = Θ P F h i g h T 15 T Θ V F H + l o w = 50 10 20 10 0 0 0.1 T , Θ V F H + u p = 500 1000 100 20 10 10 0.5 T
where the respective magnitudes are expressed in the international system of units.

5. Results

This section shows the results obtained by the new ATESOA applied to the USV model proposed in this work. For numerical simulations, Runge-Kutta numerical integration method of fourth order is used with an integration step of 0.01 s and the SOA methods have a sampling period of T m a = 1 s. Specifically, four SOA methods (LROABRA, PF, GPF and VFH+) have been automatically adjusted for the USV formed by the vessel Model (1), which is governed by the Controllers (7). In addition, in order to expose the algorithms to a higher level of uncertainty in the environment, these have been adapted to the measurements provided by the LIDAR sensor Model (10) proposed in this work, see Section 3. On the other hand, the scenarios 1, 2 and 3, which are defined in Section 2.4, have been used to carry out the autotuning of the SOA methods. As a result, the parameter vectors of each obstacle avoidance method (automatically adjusted for a scenario following the procedure given in Section 4) are shown in the Table 4. Where, for example, P F S 1 represents the PF method autotuning for the first scenario.
In order to validate the proposed autotuning environment and to compare the performance of each obstacle avoidance method studied in this work, Figure 11 and Table 5 are presented. On the one hand, Figure 11 shows the different trajectories described by the USV, on the three scenarios of autotuning, when each avoidance method is applied. In addition, Table 5 presents the Indicators (37) that define the performance achieved by each avoidance method when guiding the USV. As can be seen, with the exception of the potential fields applied to scenario 2, the new ATESOA achieves parameter vectors that guide the USV safely to P g o a l . A situation like scenario 2 is not evaluated by the authors in [23,30]. Since, in the most similar scenario, the authors in [23] guide the model of the Mariner class vessel (171.8-meter vessel) proposed in [52] by a scenario where the space between obstacles is about 10 km, compared with the Model (1) of 9.2 m length and the 50 m of distance between obstacles defined in this paper. Furthermore, in [23], the goal point is contained between the obstacles, which does not cause the F a t t force to drive the USV into these obstacles (situation posed in Scenario 2). Additionally, with manual tuning, the PFs and GPFs methods have also failed in this scenario. This situation corresponds to the problem described in [19,71], in which the restriction of potential fields when passing through small passages is exposed. To solve it, it would be necessary to apply more advanced potential fields as the one proposed in [71]. On the other hand, the contribution made in this work through the application of the concept of generalized potential fields [45,46] to the improved PFs for USV proposed in [23,30], notably improves the guidance of the USV in the studied scenarios. This can be seen in scenarios 1 and 3, where travel times have been reduced to 54.13 % and 58.85 % and distances driven to 51.33 % and 59.31 % , respectively. Nevertheless, the performance obtained, for the measurement range d r a n g e = 200 m and the USV Model (1, 7), by the methods based on potential fields is significantly lower than that obtained by the LROABRA and VFH+ methods, see Table 5. With respect to these, both present very similar indicators in the three scenarios. The performance obtained by the VFH+ is better in scenarios 1 and 2, while in scenario 3 the LROABRA method is superior.
On the other hand, in the problems of obstacle avoidance there are infinite geometric combinations that define the possible scenarios that the autonomous vehicle may encounter. Therefore, once the tuning of an avoidance method for a specific scenario has been made, its robustness for other scenarios with different obstacle distributions must be evaluated. In this aspect, a robust behaviour in the guidance of the USV, which is realized by an avoidance method, that keeps its performance (based on the Indicators (37) or similar) is not the objective. Instead, the capability of the avoidance method to safely guide the USV to P g o a l in significantly different scenarios than those used for its tuning is analyzed. In this context, each avoidance method has been evaluated, with the parameter vectors collected in Table 4, in scenarios with different obstacle distributions than those used for their autotuning. As a result, Figure 12 shows the paths described by the USV when applying each avoidance method over the scenarios defined in this work for which it has not been adjusted. In addition, as support to the previous figure, Table 6 shows the Indicators (37) achieved by each avoidance method in the guidance of the USV. In this robustness study, the indicator that presents the greatest interest is f s t o p , which defines success or failure in the vehicle’s guidance. As can be seen, in the scenarios defined in this work, the PFs and GPFs methods do not present good results in the guidance of the USV over scenarios for which these have not been adjusted. Since only a favourable result is obtained by the GPFs method adjusted in Scenario 3 when it guides the USV over Scenario 1 (GPFS3-S1). In the other scenarios, the methods based on potential fields lead the USV to a collision or generate trajectories that are proper of a limit cycle (PFS1 in Scenarios 3 and 5). On the other hand, the LROABRA method successfully solves the majority of scenarios for which it has not been adjusted. With two exceptions: Scenario 2 with the autotuning performed for scenario 1 and scenario 4 with any parameter vector. The first case is due to the value d n e a r = 141.72 m obtained in the autotuning, which constrains the passage between the two parallel obstacles. As a consequence, the avoidance method, without taking into account the USV’s dynamics, requires that the vessel turn completely to starboard, which causes a collision. In the second case, the numerical simulations carried out show that, in scenario 4, the collisions occur because the LROABRA method makes multiple switches in the guidance waypoint P i n s e r t . These commutations, as established in [67], cause undecided behaviour that leads the USV to a collision. To correct this, in a similar way to the VFH+ method, a possible solution would consist in adding to the heuristics (19) a weighting factor that takes into account the alignment of the candidate directions V H e a d with the previous course setpoint s p ψ ( k 1 ) .
With respect to the VFH+ method, it successfully resolves all of the scenarios defined in this paper for which it has not been adjusted. Moreover, it presents a robust behaviour to the variations in its parameter vector, since the Indicators (37) obtained in the same scenario for different values of Θ t u n i n g are very close, see Table 6. Therefore, for the defined scenarios, of the four methods of static obstacle avoidance applied to USVs that have been adapted and implemented in this work, the VFH+ method achieves the best results in terms of performance (see Table 5) and robustness (see Figure 12).
As shown in the results obtained in Figure 12 and in Table 6, the new ATESOA proposed in this work is flexible, such that it can be applied to different SOA methods used in USVs. Where, the robustness of the autotuning obtained depends on the scenario used, but mainly of the features specific of each obstacle avoidance method. Since, as shown below, the new ATESOA achieves a successful adjustment of the SOA methods that did not overcome the obstacle scenarios 4 and 5. In particular, the autotuning of the LROABRA method for scenario 4 and of the methods based on potentials fields for scenarios 4 and 5 is carried out. The parameter vectors obtained are collected in Table 7. As a result, Figure 13 shows the trajectories described by the USV when applying the LROABRA, PFs and GPFs methods autotuning in the new ATESOA. In addition, Table 8 presents the Indicators (37) obtained by each method in each scenario. As can be seen, all methods successfully solve the two scenarios. In scenario 4, the LROABRA method again improves performance with respect to potential fields. Regarding the potential fields [23,30], of the methods studied in this work, the results obtained indicate that these would be the worst option as an avoidance system for USVs in situations where the measurement range of the sensors is limited ( d r a n g e 200 m). Although in both scenarios, the GPFs method proposed in this work again produces a less oscillatory trajectory in the guidance than the PFs proposed in [23,30], which means shorter travel distances.

6. Conclusions

Due to the scientific and industrial interest, in the last years many works have been developed in order to provide a higher level of autonomy to the vessels. This has led to a diversity of methods for static obstacle avoidance applied to USVs. In order to design, development and validation of these methods, it is necesary an environment for computer simulation that allows the evaluation of the proposed algorithms. With this aim, the main contribution of this work is the new ATESOA, an autotuning environment for the design parameters associated with each static obstacle avoidance algorithm. This environment is adaptable to diverse SOA methods, which can be applied in different types of USVs. Due to the simplified model of the LIDAR sensor proposed in this paper, the simulation environment is more realistic than those used by most authors for the design of obstacle avoidance methods. With the advantage, over works focused on more sophisticated and complex simulation environments to validate USVs, that this model of the LIDAR sensor facilitates the application of evolutionary algorithms for autotuning (due to its lower computation load). To evaluate the new ATESOA, four SOA methods (LROABRA, PFs, GPFs and VFH+) have been adapted and implemented for using this sensor model. The results show how this new autotuning environment achieves a successful and, depending on the obstacle avoidance method, robust tuning of the parameters of the SOA methods for a range of measurement limited by the LIDAR [59] to 200 m. In addition, the parameters for the mathematical model of a USV of 9.2 m of length, whose modelling is based on previous work in the field of surface marine vehicle control, are proposed and evaluated. This model includes: non-linear modelling of the vessel and actuators dynamics, modelling of the effect of ocean currents and course/velocity controllers. In addition, as method of avoiding reactive obstacles, the performance of potential fields [23,30], applied to this USV model (length of 9.2 m) has been improved, through the adaptation of the generalized potential fields [45,46]. As future work, the new autotuning environment will be adapted for dynamic obstacle avoidance methods.

Supplementary Materials

Supplementary File 1

Author Contributions

R.G. was responsible for studying, adapting and implementing the obstacle avoidance methods, the LIDAR sensor model and the new autotuning environment. In addition, R.G. wrote most of the work. M.J.L. proposed and tested the new mathematical modelling of USV proposed in this work. M.J.L. has also participated in the analysis of proposals, methods and discussion of results. In addition, M.J.L. wrote part of the paper and reviewed in depth all its contents. J.S., due to his experience with the USVs in the Navantia company, reviewed all the work and, more in detail, the vessel’s model, the course/speed controllers and the obstacle avoidance methods. Finally, A.C. reviewed the entire article and contributed to its translation. All authors have read and agreed to the published version of the manuscript.

Funding

This research has been carried out within the collaborative framework of industrial doctoral thesis, which is financed by the Universidad de Cádiz and the company Navantia.

Acknowledgments

The development and financing of this work has been possible thanks to the vision and passion of Alberto González Cantos, a senior USV professional at Navantia. In addition, it is also necessary to thank the University of Cadiz for the funds to finance this paper. As well as the research group GAPSIS (Grupo de Automática, Procesamiento de Señales e Ingeniería de Sistemas), whose previous work has allowed the formulation of the framework in which this work has been carried out.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Liu, Z.; Zhang, Y.; Yu, X.; Yuan, C. Unmanned surface vehicles: An overview of developments and challenges. Annu. Rev. Control 2016, 41, 71–93. [Google Scholar] [CrossRef]
  2. Campbell, S.; Naeem, W.; Irwin, G.W. A review on improving the autonomy of unmanned surface vehicles through intelligent collision avoidance manoeuvres. Annu. Rev. Control 2012, 36, 267–283. [Google Scholar] [CrossRef] [Green Version]
  3. González, D.; Pérez, J.; Milanés, V.; Nashashibi, F. A Review of Motion Planning Techniques for Automated Vehicles. IEEE Trans. Intell. Transp. Syst. 2016, 17, 1135–1145. [Google Scholar]
  4. Fossen, T.I. Handbook of Marine Craft Hydrodynamics and Motion Control; John Wiley & Sons: Trondheim, Norway, 2011; ISBN 9781119991496. [Google Scholar]
  5. Fossen, T.I. Marine Control Systems; John Wiley & Sons: Trondheim, Norway, 2002; ISBN 8292356002. [Google Scholar]
  6. Elfes, A. Using Occupancy Grids for Mobile Robot Perception and Navigation. Computer 1989, 22, 46–57. [Google Scholar] [CrossRef]
  7. Lavalle, S. Planning Algorithms; Cambridge University Press: New York, NY, USA, 2006; ISBN 978-0-521-86205-9. [Google Scholar]
  8. Perera, L.P.; Ferrari, V.; Santos, F.P.; Hinostroza, M.A.; Guedes Soares, C. Experimental Evaluations on Ship Autonomous Navigation and Collision Avoidance by Intelligent Guidance. IEEE J. Ocean. Eng. 2015, 40, 374–387. [Google Scholar] [CrossRef]
  9. Perera, L.P.; Oliveira, P.; Guedes Soares, C. Maritime Traffic Monitoring Based on Vessel Detection, Tracking, State Estimation, and Trajectory Prediction. IEEE Trans. Intell. Transp. Syst. 2012, 13, 1188–1200. [Google Scholar] [CrossRef]
  10. Kim, T.; Choi, J.; Lee, Y.; Choi, H.-T. VFH+ based Obstacle Avoidance using Monocular Vision of Unmanned Surface Vehicle. J. Ocean Eng. Technol. 2016, 30, 426–430. [Google Scholar] [CrossRef]
  11. Minguez, J.; Lamiraux, F.; Laumond, J.-P. Motion Planning and Obstacle Avoidance. In Handbook of Robotics; Springer: Berlin/Heidelberg, Germany, 2008; Volume E, pp. 827–852. ISBN 9783540303015. [Google Scholar]
  12. Kuwata, Y.; Wolf, M.T.; Zarzhitsky, D.; Huntsberger, T.L. Safe maritime autonomous navigation with COLREGS, using velocity obstacles. IEEE J. Ocean. Eng. 2014, 39, 110–119. [Google Scholar] [CrossRef]
  13. Zhao, Y.; Li, W.; Shi, P. A real-time collision avoidance learning system for Unmanned Surface Vessels. Neurocomputing 2016, 182, 255–266. [Google Scholar] [CrossRef]
  14. Perera, L.P.; Carvalho, J.P.; Guedes Soares, C. Intelligent ocean navigation and fuzzy-Bayesian decision/action formulation. IEEE J. Ocean. Eng. 2012, 37, 204–219. [Google Scholar] [CrossRef]
  15. Johansen, T.A.; Perez, T.; Cristofaro, A. Ship collision avoidance and COLREGS compliance using simulation-based control behavior selection with predictive hazard assessment. IEEE Trans. Intell. Transp. Syst. 2016, 17, 3407–3422. [Google Scholar] [CrossRef] [Green Version]
  16. Singh, Y.; Sharma, S.; Sutton, R.; Hatton, D. Path Planning of an Autonomous Surface Vehicle based on Artificial Potential Fields in a Real Time Marine Environment. In Proceedings of the 16 International Conference on Computer and IT Applications in the Maritime Industries, Cardiff, Gales, UK, 15–17 May 2017; pp. 48–54. [Google Scholar]
  17. Bibuli, M.; Singh, Y.; Sharma, S.; Sutton, R.; Hatton, D.; Khan, A. A Two Layered Optimal Approach towards Cooperative Motion Planning of Unmanned Surface Vehicles in a Constrained Maritime Environment. IFAC-PapersOnLine 51 2018, 29, 378–383. [Google Scholar] [CrossRef]
  18. Gonzalez Cantos, A. Aplicación de la Teoría Cualitativa de Sistemas Dinámicos para el Guiado Autónomo de Vehículos; Universidad de Cádiz: Cádiz, Spain, 2017. [Google Scholar]
  19. Singh, Y.; Sharma, S.; Sutton, R.; Hatton, D. Towards use of Dijkstra Algorithm for Optimal Navigation of an Unmanned Surface Vehicle in a Real-Time Marine Environment with results from Artificial Potential Field. TransNav Int. J. Mar. Navig. Saf. Sea Transp. 2018, 12, 125–131. [Google Scholar] [CrossRef]
  20. da Silva Junior, A.G.; dos Santos, D.H.; de Negreiros, A.P.F.; de Souza Silva Silva, J.M.V.B.; Gonçalves, L.M.G. High-Level Path Planning for an Autonomous. Sensors 2020, 20, 1550. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  21. Agrawal, P.; Dolan, J.M. COLREGS-compliant target following for an Unmanned Surface Vehicle in dynamic environments. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Hamburg, Germany, 28 September–2 October 2015; pp. 1065–1070. [Google Scholar]
  22. Abdelaal, M.; Fränzle, M.; Hahn, A. Nonlinear Model Predictive Control for trajectory tracking and collision avoidance of underactuated vessels with disturbances. Ocean Eng. 2018, 160, 168–180. [Google Scholar] [CrossRef]
  23. Xue, Y.; Lee, B.S.; Han, D. Automatic collision avoidance of ships. Proc. Inst. Mech. Eng. Part M J. Eng. Marit. Environ. 2009, 223, 33–46. [Google Scholar] [CrossRef] [Green Version]
  24. Zhang, J.; Zhang, D.; Yan, X.; Haugen, S.; Guedes Soares, C. A distributed anti-collision decision support formulation in multi-ship encounter situations under COLREGs. Ocean Eng. 2015, 105, 336–348. [Google Scholar] [CrossRef]
  25. Naeem, W.; Irwin, G.W.; Yang, A. COLREGs-based collision avoidance strategies for unmanned surface vehicles. Mechatronics 2012, 22, 669–678. [Google Scholar] [CrossRef]
  26. Mousazadeh, H.; Jafarbiglu, H.; Abdolmaleki, H.; Omrani, E.; Monhaseri, F.; Abdollahzadeh, M.; Mohammadi-Aghdam, A.; Kiapei, A.; Salmani-Zakaria, Y.; Makhsoos, A. Developing a navigation, guidance and obstacle avoidance algorithm for an Unmanned Surface Vehicle (USV) by algorithms fusion. Ocean Eng. 2018, 159, 56–65. [Google Scholar] [CrossRef]
  27. Wang, X.; Liu, Z.; Cai, Y. The ship maneuverability based collision avoidance dynamic support system in close-quarters situation. Ocean Eng. 2017, 146, 486–497. [Google Scholar] [CrossRef]
  28. Loe, Ø.A.G. Collision Avoidance for Unmanned Surface Vehicles; Norwegian University of Science and Technology: Trondheim, Norway, 2008. [Google Scholar]
  29. Tang, P.; Zhang, R.; Liu, D.; Huang, L.; Liu, G.; Deng, T. Local reactive obstacle avoidance approach for high-speed unmanned surface vehicle. Ocean Eng. 2015, 106, 128–140. [Google Scholar] [CrossRef]
  30. Xie, S.; Wu, P.; Peng, Y.; Luo, J.; Qu, D.; Li, Q.; Gu, J. The obstacle avoidance planning of USV based on improved artificial potential field. In Proceedings of the 2014 IEEE International Conference on Information and Automation (ICIA), Hailar, China, 28–30 July 2014; pp. 746–751. [Google Scholar]
  31. Tang, P.; Zhang, R.; Liu, D.; Zou, Q.; Shi, C. Research on near-field obstacle avoidance for unmanned surface vehicle based on heading window. In Proceedings of the 2012 24th Chinese Control and Decision Conference, Taiyuan, China, 23–25 May 2012; pp. 1262–1267. [Google Scholar]
  32. Paravisi, M.; Santos, D.H.; Jorge, V.; Heck, G.; Gonçalves, L.M.; Amory, A. Unmanned surface vehicle simulator with realistic environmental disturbances. Sensors 2019, 19, 1068. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  33. Kermorgant, O. A Dynamic Simulator for Underwater Vehicle-Manipulators. In Proceedings of the International Conference on Simulation, Modeling, and Programming for Autonomous Robots (SIMPAR), Bergamo, Italy, 20–23 October 2014; Springer: Heidelberg/Berlin, Germany, 2014; Volume 8810, pp. 25–36. [Google Scholar]
  34. Rohmer, E.; Singh, S.P.N.; Freese, M. V-REP: A versatile and scalable robot simulation framework. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Tokyo, Japan, 3–7 November 2013; pp. 1321–1326. [Google Scholar]
  35. RobotX Simulator. Available online: https://bitbucket.org/osrf/vrx/src/default/ (accessed on 8 January 2020).
  36. Koenig, N.; Howard, A. Design and use paradigms for Gazebo, an open-source multi-robot simulator. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Sendai, Japan, 28 September–2 October 2004; Volume 3, pp. 2149–2154. [Google Scholar]
  37. Simon, D. Evolutionary Optimization Algortithms; John Wiley & Sons: Hoboken, NJ, USA, 2013; ISBN 978-0-470-93741-9. [Google Scholar]
  38. Xiao, X.; Liu, B.; Warnell, G.; Fink, J.; Stone, P. APPLD: Adaptive Planner Parameter Learning from Demonstration. arXiv 2004, arXiv:2004.00116. [Google Scholar]
  39. McGookin, E.W.; Murray-Smith, D.J.; Li, Y.; Fossen, T.I. Ship steering control system optimisation using genetic algorithms. Control Eng. Pract. 2000, 8, 429–443. [Google Scholar] [CrossRef]
  40. Alme, J.; Breivik, M. Autotuning aspects for dynamic positioning systems. IFAC Proc. Vol. 2009, 42, 334–339. [Google Scholar] [CrossRef]
  41. Mišković, N.; Vukić, Z.; Barišić, M.; Tovornik, B. Autotuning autopilots for Micro-ROVs. In Proceedings of the 14th Mediterranean Conference on Control and Automation IEEE, Ancona, Italy, 28–30 June 2006; pp. 1–6. [Google Scholar]
  42. Walker, M.; Messom, C.H. A comparison of genetic programming and genetic algorithms for auto-tuning mobile robot motion control. In Proceedings of the 1st IEEE International Workshop on Electronic Design, Test and Applications, Christchurch, New Zealand, 29–31 January 2002; pp. 507–509. [Google Scholar]
  43. Xiao, H.; Wang, S. Auto-tuning PID module of robot motion system. In Proceedings of the 6th Conference on Industrial Electronics and Apllications, Beijing, China, 21–23 June 2011; pp. 668–673. [Google Scholar]
  44. Al-Araji, A.S. Development of Kinematic Path-Tracking Controller Design for Real Mobile Robot via Back-Stepping Slice Genetic Robust Algorithm Technique. Arab. J. Sci. Eng. 2014, 39, 8825–8835. [Google Scholar] [CrossRef]
  45. Krogh, B.H. A Generalized Potential Field Approach to Obstacle Avoidance Control. In Robotics Research: The Next Five Years and Beyond; RI/SME: Bethlehem, PA, USA, 1984. [Google Scholar]
  46. Tilove, R.B. Local obstacle avoidance for mobile robots based on the method of artificial potentials. In Proceedings of the IEEE International Conference on Robotics and Automation (ICRA), Cincinnati, OH, USA, 13–18 May 1990; pp. 566–571. [Google Scholar]
  47. Do, K.D.; Jiang, Z.P.; Pan, J. Robust adaptive path following of underactuated ships. Automatica 2004, 40, 929–944. [Google Scholar] [CrossRef]
  48. Han, J.; Xiong, J.; He, Y.; Gu, F.; Li, D. Nonlinear Modeling for a Water-Jet Propulsion USV: An Experimental Study. IEEE Trans. Ind. Electron. 2017, 64, 3348–3358. [Google Scholar] [CrossRef]
  49. Skjetne, R.; Smogeli, Ø.N.; Fossen, T.I. A Nonlinear Ship Manoeuvering Model: Identification and adaptive control with experiments for a model ship. Identif. Control. 2004, 25, 3–27. [Google Scholar] [CrossRef] [Green Version]
  50. Sørensen, A.J. Marine Control Systems. Propulsion and Motion Control of Ships and Ocean Structures; Norwegian University of Science and Technology: Trondheim, Norway, 2012. [Google Scholar]
  51. Perez, T.; Blanke, M. Simulation of Ship Motion in Seaway. In Computer Science; Technical Report; The University of Newcastle: Callaghan, Australia, 2002; pp. 1–13. [Google Scholar]
  52. Fossen, T.I. Guidance and Control of Ocean Vehicles; John Wiley & Sons: Trondheim, Norway, 1994; ISBN 0471941131. [Google Scholar]
  53. Astrom, K.J.; Wittenmark, B. Adaptive Control; Addison Whesley: Boston, MA, USA, 1989; ISBN 0201097206. [Google Scholar]
  54. Kallstrom, C.G. Identification and Adaptive Control Applied to Ship Steering; Department of Automatic Control, Lund University: Lund, Sweden, 1979. [Google Scholar]
  55. Lewis, E.V. Principles of Naval Architecture, Vol III—Motions in Waves and Controllability; SNAME (The Society of Naval Architects and Marine Engineers): Jersey City, NJ, USA, 1989; ISBN 0939773023. [Google Scholar]
  56. López, M.J.; Consegliere, A.; Terrón, J. Modelado y Simulación de Sistemas. Aplicación al Buque; Universidad de Cádiz: Cádiz, España, 1997. [Google Scholar] [CrossRef]
  57. American Bureau of Shipping. Guide for Vessel Maneuverability; American Bureau of Shipping: Houston, TX, USA, 2006. [Google Scholar]
  58. Rubio, F.R.; López, M.J. Control Adaptativo y Robusto, 1st ed.; Universidad de Sevilla: Sevilla, Spain, 1996; ISBN 84-472-0319-0. [Google Scholar]
  59. Velodyne Lidar. UltraPuck Data Sheet; Velodyne: Hellyer Ave, SJ, USA, 2019. [Google Scholar]
  60. O’Rourke, J. Computational Geometry in C, 2nd ed.; Cambridge University Press: Cambridge, MA, USA, 1997; ISBN 0-521-64976-5. [Google Scholar]
  61. Gobierno de España, Ministerio de Transportes Movilidad y Agenda Urbana. Lineas de Costa. Available online: http://centrodedescargas.cnig.es/CentroDescargas/catalogo.do?Serie=CAANE (accessed on 15 April 2020).
  62. U. Murat Erdem. Fast Line Segment Intersection. MATLAB Central File Exchange. Retrieved 13 March 2020. Available online: https://www.mathworks.com/matlabcentral/fileexchange/27205-fast-line-segment-intersection (accessed on 4 February 2019).
  63. Guardeño, R.; López, M.J.; Sánchez, J.; Consegliere, A. LROABRA Algorithm for Static Obstacle Avoidance Adapted and Autotuning by ATESOA. Available online: youtube.com/watch?v=ZEDdUCz_3ZI (accessed on 16 April 2020).
  64. Fox, D.; Burgard, W.; Thrun, S. The Dynamic Window Approach to Collision Avoidance. IEEE Robot. Autom. Mag. 1997, 4, 23–33. [Google Scholar] [CrossRef] [Green Version]
  65. Khatib, O. Real-Time Obstacle Avoidance For Manipulators And Mobile Robots. In Proceedings of the IEEE International Conference on Robotics and Automation, St. Louis, MO, USA, 25–28 March 1985; pp. 500–505. [Google Scholar]
  66. Borenstein, J.; Koren, Y. Real-Time Obstacle Avoidance for Fast Mobile Robots. IEEE Trans. Syst. Man Cybern. 1989, 19, 1179–1187. [Google Scholar] [CrossRef] [Green Version]
  67. Ulrich, I.; Borenstein, J. VFH+: Reliable Obstacle Avoidance for Fast Mobile Robots. In Proceedings of the 1998 IEEE International Conference on Robotics & Automation, Leuven, Belgium, 16–20 May 1998; pp. 1572–1577. [Google Scholar]
  68. Borenstein, J.; Koren, Y. The vector field histogram—Fast obstacle avoidance for mobile robots. IEEE Trans. Robot. Autom 1991, 7, 278–288. [Google Scholar] [CrossRef] [Green Version]
  69. MathWorks. Vector Field Histogram. Available online: https://es.mathworks.com/help/nav/ug/vector-field-histograms.html (accessed on 23 May 2019).
  70. MathWorks. Genetic Algorithm. Available online: https://es.mathworks.com/help/gads/genetic-algorithm.html (accessed on 5 July 2019).
  71. Tu, K.Y.; Baltes, J. Fuzzy potential energy for a map approach to robot navigation. Robot. Auton. Syst. 2006, 54, 574–589. [Google Scholar] [CrossRef]
Figure 1. Interaction between the different systems that allow a boat to be considered as a USV.
Figure 1. Interaction between the different systems that allow a boat to be considered as a USV.
Jmse 08 00300 g001
Figure 2. Earth and body axis reference systems adopted in this work.
Figure 2. Earth and body axis reference systems adopted in this work.
Jmse 08 00300 g002
Figure 3. Equilibrium points or stationary velocities of the Model (1), which have been obtained by discretizing its operating range.
Figure 3. Equilibrium points or stationary velocities of the Model (1), which have been obtained by discretizing its operating range.
Jmse 08 00300 g003
Figure 4. Variation of the effective time constants of the Model (1) linearized at different points of its operating range.
Figure 4. Variation of the effective time constants of the Model (1) linearized at different points of its operating range.
Jmse 08 00300 g004
Figure 5. Numerical simulations of the Model (1) which is evaluated on different sea tests: (a) Turning Circle Tests. (b) Spiral maneuvering. (c) Zig-zag maneuvers. The propeller is kept at n c = 2430 RPM.
Figure 5. Numerical simulations of the Model (1) which is evaluated on different sea tests: (a) Turning Circle Tests. (b) Spiral maneuvering. (c) Zig-zag maneuvers. The propeller is kept at n c = 2430 RPM.
Jmse 08 00300 g005
Figure 6. Point detected by the LIDAR Model (16) during different simulation moments T s i m .
Figure 6. Point detected by the LIDAR Model (16) during different simulation moments T s i m .
Jmse 08 00300 g006
Figure 7. Obstacle scenarios used in this work for autotuning and evaluation of SOA methods.
Figure 7. Obstacle scenarios used in this work for autotuning and evaluation of SOA methods.
Jmse 08 00300 g007
Figure 8. Implementation of the LROABRA algorithm modified for the simulation environment for USVs proposed in this work.
Figure 8. Implementation of the LROABRA algorithm modified for the simulation environment for USVs proposed in this work.
Jmse 08 00300 g008
Figure 9. Implementation of the potential fields, as obstacle avoidance algorithms, adapted to the simulation environment for USVs proposed in this work.
Figure 9. Implementation of the potential fields, as obstacle avoidance algorithms, adapted to the simulation environment for USVs proposed in this work.
Jmse 08 00300 g009
Figure 10. Adaptation of the VFH+ algorithm available in [69] to the simulation environment for USVs proposed in this paper.
Figure 10. Adaptation of the VFH+ algorithm available in [69] to the simulation environment for USVs proposed in this paper.
Jmse 08 00300 g010
Figure 11. Trajectories of the USV ((1), (7)) by applying each autotuning obstacle avoidance method (LROABRA, PF, GPF and VFH+) for scenarios 1, 2 and 3 with the ATESOA proposed in this work.
Figure 11. Trajectories of the USV ((1), (7)) by applying each autotuning obstacle avoidance method (LROABRA, PF, GPF and VFH+) for scenarios 1, 2 and 3 with the ATESOA proposed in this work.
Jmse 08 00300 g011
Figure 12. Trajectories of the USV ((1), (7)) when applying the LROABRA, PF, GPF and VFH+ methods in different scenarios than those used for its autotuning.
Figure 12. Trajectories of the USV ((1), (7)) when applying the LROABRA, PF, GPF and VFH+ methods in different scenarios than those used for its autotuning.
Jmse 08 00300 g012
Figure 13. Trajectories of the USV ((1), (7)) by applying the methods LROABRA, PFs and GPFs autotuning.
Figure 13. Trajectories of the USV ((1), (7)) by applying the methods LROABRA, PFs and GPFs autotuning.
Jmse 08 00300 g013
Table 1. Viknes 830 parameters expressed in the international system of units [28].
Table 1. Viknes 830 parameters expressed in the international system of units [28].
SymbolDescriptionValueSymbolDescriptionValue
B v Beam2.97 m v Mass3980
L v Length8.52 I z v z-axis moment of inertia19,703
D v Draft0.82 u m a x Maximum forward speed10.5
K N o m o t o M o d e l Gain r / δ 0.5 τ N o m o t o M o d e l Time constant4
r m a x Maximum angular rate0.35 δ m a x Maximum rudder angle0.26
Table 2. Parameters of the vessel model proposed in this work.
Table 2. Parameters of the vessel model proposed in this work.
SymbolValueSymbolValueSymbolValueSymbolValue
L9.2 mB3 mD0.7 m x g 0.5 m
l x 4.5 mm3705.78 kg I z 18,345.50 kg m 2 X u ˙ −185.23 kg
Y v ˙ −7272.34 kg N r ˙ −51,433.21 kg m 2 ρ 1027 kg/m 3 X u −512.5
Y v −2200 Y r −500 N r −15,000 N v −311.1
X | u | u −59.5 Y | v | v −5000 Y | r | v −7000 N | r | r −4000
N | v | r −50 Y | v | r −40 N | r | v −1700 N u v −22
T | n | n 1.2 × 10 3 T | n | u 3.27 × 10 2 L δ 1.3886 L | δ | δ 1.28 × 10 2
D | δ | 0.71 τ n 0.5 s τ δ 1 s n m a x 3300 RPM
n m i n 800 RPM δ l i m 35 ° δ ˙ l i m 10 ° /s
Table 3. Parameters of the course and speed controllers.
Table 3. Parameters of the course and speed controllers.
K P ψ K I ψ K D ψ K P u K I u K D u
u l o w −40−0.01−304026
u m e d i u m −16−0.01−3235212
u h i g h −9.5−0.01−1745218
Table 4. Parameter vectors obtained by ATESOA in the scenarios 1, 2 and 3.
Table 4. Parameter vectors obtained by ATESOA in the scenarios 1, 2 and 3.
MethodScenaryParameter Vectors
LROABRAS1 Θ t u n i n g = 1.83 1.87 0.68 62.28 79.44 0.19 0.86 0.77 0.51 T
LROABRAS2 Θ t u n i n g = 1.43 1.84 0.63 67.13 41.91 0.19 1.17 0.66 0.11 T
LROABRAS3 Θ t u n i n g = 1.07 1.57 0.56 60.98 60.35 0.18 2.18 0.68 0.09 T
PFS1 Θ t u n i n g = 1.36 833.16 1.32 × 10 5 1.68 107.95 1.54 T
PFS2 Θ t u n i n g = 2.06 550.53 2.02 × 10 4 1.75 100.59 1.50 T
PFS3 Θ t u n i n g = 2.85 454.25 1.03 × 10 5 4.20 172.67 1.91 T
GPFS1 Θ t u n i n g = 2.62 909.49 1.89 × 10 5 4.48 161.7 2.27 14.49 T
GPFS2 Θ t u n i n g = 1.07 245.22 1.85 × 10 5 0.34 141.87 3.28 10.64 T
GPFS3 Θ t u n i n g = 0.75 447.15 1.55 × 10 5 0.50 120.94 1.06 13.75 T
VFH+S1 Θ t u n i n g = 93.71 714.1 50.94 15.81 7.58 0.30 0.45 T
VFH+S2 Θ t u n i n g = 305.97 176.25 72.96 13.01 2.12 9.71 0.43 T
VFH+S3 Θ t u n i n g = 407.43 40.24 70.08 19.84 3.13 3.18 0.47 T
Table 5. Indicators (37) achieved by each obstacle avoidance method in the scenarios 1, 2 and 3.
Table 5. Indicators (37) achieved by each obstacle avoidance method in the scenarios 1, 2 and 3.
Method-Scenary/Indicators f stop time [s] dist D [m] Δ sp ψ [rad] Δ sp u [m/s] dist G [m]
LROABRAS1 - S150263.64248.021.08
PFS1 - S1109573.20446.682.33
GPFS1 - S159294.23427.201.11
VFH+S1 - S147265.50162.141.29
LROABRAS2 - S282751.45154.191.74
PFS2 - S293.19
GPFS2 - S291.62
VFH+S2 - S278739.36131.861.23
LROABRAS3 - S3145929.25340.322.85
PFS3 - S33841993.101785.406.92
GPFS3 - S32261182.101837.201.05
VFH+S3 - S3148949.69428.772.28
Table 6. Indicators (37) achieved in the guidance of the USV by the SOA methods (LROABRA, PF, GPF and VFH+) in scenarios different to those used for their autotuning.
Table 6. Indicators (37) achieved in the guidance of the USV by the SOA methods (LROABRA, PF, GPF and VFH+) in scenarios different to those used for their autotuning.
Method-Scenary/Indicators f stop time [s] dist D [m] Δ sp ψ [rad] Δ sp u [m/s] dist G [m]
LROABRAS2 - S171350.42573.681.67
LROABRAS3 - S169346.06401.131.54
LROABRAS1 - S2408.43
LROABRAS3 - S282752.03133.031.65
LROABRAS1 - S3167951.04509.813.83
LROABRAS2 - S31651002.80638.773.83
LROABRAS1 - S4362.89
LROABRAS2 - S4357.68
LROABRAS3 - S4160.49
LROABRAS1 - S5109780.98344.931.60
LROABRAS2 - S589767.74236.102.05
LROABRAS3 - S588758.31232.562.01
PFS3 - S1103.32
PFS1 - S2419.99
PFS3 - S2406.31
PFS1 - S3646.32
PFS1 - S4422.80
PFS3 - S4418.08
PFS1 - S5303.24
PFS3 - S5139.99
GPFS3 - S164324.85356.461.14
GPFS1 - S2323.60
GPFS3 - S2360.60
GPFS1 - S3222.95
GPFS1 - S4226.71
GPFS3 - S4228.07
GPFS1 - S5181.70
GPFS3 - S5177.98
VFH+S2 - S148270.62164.541.33
VFH+S3 - S147267.96220.531.27
VFH+S1 - S280748.90130.651.39
VFH+S3 - S278743.54129.581.21
VFH+S1 - S31771081.70644.072.96
VFH+S2 - S31661018.60600.593.39
VFH+S1 - S478758.63194.631.44
VFH+S2 - S476754.82157.851.30
VFH+S3 - S475750.52151.351.23
VFH+S1 - S593791.22400.881.96
VFH+S2 - S592790.23275.571.83
VFH+S3 - S592793.59287.661.84
Table 7. Parameter vectors obtained for the LROABRA, PF and GPF methods, scenarios 4 and 5.
Table 7. Parameter vectors obtained for the LROABRA, PF and GPF methods, scenarios 4 and 5.
MethodScenaryParameter Vectors
LROABRAS4 Θ t u n i n g = 1.92 0.83 0.56 74.94 74.91 0.21 1.41 0.85 0.11 T
PFS4 Θ t u n i n g = 1.97 209.81 1.10 × 10 5 3.24 34.02 5.62 T
PFS5 Θ t u n i n g = 0.99 525.02 5.46 × 10 4 0.73 42.79 4.09 T
GPFS4 Θ t u n i n g = 1.96 867.47 5.34 × 10 4 3.31 76.05 3.92 11.45 T
GPFS5 Θ t u n i n g = 0.70 726.56 1.70 × 10 5 1.73 29.30 5.99 10.66 T
Table 8. Indicators (37) achieved by the LROABRA, PF and GPF methods in the scenarios 4 and 5.
Table 8. Indicators (37) achieved by the LROABRA, PF and GPF methods in the scenarios 4 and 5.
Method-Scenary/Indicators f stop time [s] dist D [m] Δ sp ψ [rad] Δ sp u [m/s] dist G [m]
LROABRAS4 - S497867.66290.041.12
PFS4 - S41441143.20511.334.36
GPFS4 - S41531063.40915.832.04
PFS5 - S51371047.60642.903.70
GPFS5 - S595815.77443.222.67

Share and Cite

MDPI and ACS Style

Guardeño, R.; López, M.J.; Sánchez, J.; Consegliere, A. AutoTuning Environment for Static Obstacle Avoidance Methods Applied to USVs. J. Mar. Sci. Eng. 2020, 8, 300. https://0-doi-org.brum.beds.ac.uk/10.3390/jmse8050300

AMA Style

Guardeño R, López MJ, Sánchez J, Consegliere A. AutoTuning Environment for Static Obstacle Avoidance Methods Applied to USVs. Journal of Marine Science and Engineering. 2020; 8(5):300. https://0-doi-org.brum.beds.ac.uk/10.3390/jmse8050300

Chicago/Turabian Style

Guardeño, Rafael, Manuel J. López, Jesús Sánchez, and Agustín Consegliere. 2020. "AutoTuning Environment for Static Obstacle Avoidance Methods Applied to USVs" Journal of Marine Science and Engineering 8, no. 5: 300. https://0-doi-org.brum.beds.ac.uk/10.3390/jmse8050300

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop