Intelligent rudder control of an unmanned surface vessel

Intelligent rudder control of an unmanned surface vessel

ARTICLE IN PRESS JID: ESWA [m5G;February 15, 2016;21:5] Expert Systems With Applications xxx (2016) xxx–xxx Contents lists available at ScienceDir...

2MB Sizes 0 Downloads 46 Views

ARTICLE IN PRESS

JID: ESWA

[m5G;February 15, 2016;21:5]

Expert Systems With Applications xxx (2016) xxx–xxx

Contents lists available at ScienceDirect

Expert Systems With Applications journal homepage: www.elsevier.com/locate/eswa

Intelligent rudder control of an unmanned surface vessel Joseba Menoyo Larrazabal a, Matilde Santos Peñas b,∗

Q1

a

Q2

b

Telvent, 28108 Madrid, Spain Facultad de Informática, Universidad Complutense de Madrid (UCM), 28040 Madrid, Spain

a r t i c l e

i n f o

Keywords: Intelligent control Gain scheduling Fuzzy logic Genetic algorithms Trajectory tracking Unmanned surface vessel (USV)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

a b s t r a c t Trajectory tracking control for unmanned marine surface vessels (USV) is quite complex because of the strongly non-linearity of the system and the presence of uncertainties and environmental changing conditions. To face those issues, in this paper intelligent and conventional strategies are used as the main control framework for the rudder angle of an USV. The guidance law calculates the desired angle and estimates the trajectory based on the dynamic model of the autonomous ship, which has been generated from real data obtained from experiments with a scale prototype. The model accounts for the physical limitations of both the rudder and the ship propulsion system. An adaptive control law is first proposed which is suitable for any different trajectory and can deal with varying path shapes. This gain scheduling approach utilizes PID controllers whose tuning parameters have been optimized by genetic algorithms (GA) for the different operation points (GS-PID-GA). Besides, a fuzzy logic controller (FLC) is designed to deal with the uncertainties of the dynamics and to include the expertise of an operator. Simulations validate the effectiveness of the proposed control approaches that have been compared with conventional control. © 2016 Elsevier Ltd. All rights reserved.

1. Introduction Automatic control systems are currently an interesting issue within marine applications (Martin, 2013). In recent years, the research has expanded from control of manned vessels to also include unmanned vessels. Autonomous Surface Vessels (ASV) or Unmanned Surface Vehicles (USV) is with increasing popularity being seen in various applications. The rising need for transportation services and the demand for a higher safety level have been the driving forces for a general trend towards path following control of marine vehicle systems (Roberts, 2008). There are several scenarios where autonomous ships can be used: search and rescue, spill collection, surveillance, placing nets, bathymetric map creation, transportation, exploration tasks, environmental monitoring, marine survey, coastal and inland monitoring, etc., (Cruz de la, Aranda, & Girón, 2012). Motivated by the interest in reducing human intervention in dangerous environments, as well as achieving a more accurate and efficient control, ship controllers have gone through a technological evolution, from classical Proportional-Integral-Derivative (PID) controllers to a more sophisticated robust and adaptive control, where



Corresponding author. Tel.: +34 91 394 76 20; fax: +34 91 394 75 27. E-mail addresses: [email protected] (J.M. Larrazabal), msantos@ucm .es, [email protected], [email protected] (M.S. Peñas).

artificial intelligence techniques play an important role (Santos, 2011). However, the control of surface vessels is still a very challenging problem. Surface marine vehicles can become unsteady and quite difficult to control. When dealing with surface vessels in general, uncertain nonlinear hydrodynamics and external disturbances must be considered. Its complexity is in part due to the non-linear dynamics and strong couplings between the multiple state variables (Fossen, 2002). These aspects make quite complicated the obtaining of a mathematical model, which represents the dynamics with an analytical approach. That is why traditional control systems may not have a good performance with these complex nonlinear multiple-input-multiple-output systems. Even sophisticated conventional control solutions are usually based on linear analytical models, which are not the best representation of this type of real marine vehicles (Sharma, Sutton, Motwani, & Annamalai, 2014). Even more, it is necessary to deal with the uncertainty that comes from the system itself and the varying environmental conditions (Sonnenburg & Woolsey, 2013). Nevertheless, artificial intelligent techniques can be very useful for ship autopilots and course guiding. Intelligent controllers have proven very efficient to deal with nonlinearities and uncertainties that appear in marine applications (Santos, 2014). On the one hand, fuzzy logic-based systems have proven to be a good alternative for nonlinear system, as it is the case of USV. Fuzzy Logic Controllers (FLC) are non-linear controllers that also

http://dx.doi.org/10.1016/j.eswa.2016.01.057 0957-4174/© 2016 Elsevier Ltd. All rights reserved.

Please cite this article as: J.M. Larrazabal, M.S. Peñas, Intelligent rudder control of an unmanned surface vessel, Expert Systems With Applications (2016), http://dx.doi.org/10.1016/j.eswa.2016.01.057

21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46

JID: ESWA 2

47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112

ARTICLE IN PRESS

[m5G;February 15, 2016;21:5]

J.M. Larrazabal, M.S. Peñas / Expert Systems With Applications xxx (2016) xxx–xxx

incorporate the expertise of an operator. For USV, this intuitive knowledge is available. On the other hand, marine systems are in changing environments, and its own dynamics varies depending on environmental conditions. A general control law may not be the best one for these systems if it is not enough robust. In this sense adaptive control law, and particularly gain scheduling strategy, is a good choice to address these systems that vary their behavior depending on the operating point. Therefore in this paper we have implemented these advanced approaches for unmanned vessel control, showing their efficiency. Our work is focused on the control of the vehicle dynamics via actuator inputs to complete certain missions (path following). The first trajectory tracking proposal is the design of a fuzzy logic controller that calculates the rudder angle of the ship according to the desired course angle. As it is well known, fuzzy logic provides with a heuristic (not necessarily model-based) approach to nonlinear controller generation and deals with the uncertainty that comes from the environment. Besides, the FLC is simple to design. It can incorporate the knowledge of an expert, which in the case of trajectory tracking is very intuitive. In addition, being a non-linear control it allows to deal with realistic characteristic such as actuator saturation, which makes the system nonlinear. The second path following proposal is an adaptive control law, a gain scheduling PID controller optimized by Genetic Algorithm (GS-PID-GA). The proposed GS-PID-GA control relies on several points. On the one hand, the field of marine vehicles has a long tradition of applying conventional control theory, which provides robustness to the control. This makes users are comfortable working with PID regulators, of which there is a long experience in control. Indeed, conventional controllers are still a good solution for an automatic steering system which is a typical single-inputsingle-output case, but not sufficient for complex and strong coupled non-linear MIMO systems such as USV (Zheng, Negenborn, & Lodewijks, 2014). On the other hand, gain scheduling adapts the control law to the changes of the operating conditions of the system. The scheduling variable we have selected –the trajectory- is general enough to be applied in different environments: in lakes and sea, for different surge speeds, for different size and shape of ships, etc. We think that the choice of this scheduling variable makes the tracking more effective than others paper which present a more specific solution (Liu, Yuan, & Zhang, 2015; Zhixiang et al., 2015). Finally in this proposal we have applied genetic algorithms to tune the controllers. Genetic algorithms perform an evolutionbased stochastic search that can be useful in finding good solutions to practical complex optimization problems, in our case to the tuning of the adaptive control law. Thus we are optimizing the control for different operating conditions. Therefore, the key contributions of the present paper are twofold: (i) to introduce intelligent controllers in conventional control structures, and (ii) to propose a synergy that makes them more efficient for trajectory tracking of unmanned surface vessels. The intelligent and advanced approaches have proved interesting for USV path following, not only when applied separately but also in combination with conventional control strategies. The USV trajectory tracking control strategies have been compared in terms of characteristics of the marine system response, as overshoot, steady state error and settling time. The advanced and intelligent controllers give better results than the conventional one. This is very convenient as an accurate trajectory tracking avoids obstacles and prevent accidents. On the other hand, they require less control effort, resulting in a better conservation of the actuators and a longer life time. The USV used for experimental testing is a 1/15 scale model of an operational autonomous vessel. These experiments have pro-

vided a model from the real data and allow us to test the different controllers on it. The rest of this paper is organized as follows. The following section summarizes the related works on this topic found in the literature. The marine system is described in Section 3. The modeling and the characteristics of the replica of the ship are presented. A gain scheduling PID control strategy which has been tuned by genetic algorithms is developed in Section 4. An intelligent control based on fuzzy logic is designed and applied to the marine craft in Section 5. In Section 6 simulation results are shown and comparison between control laws is discussed. Conclusions end the paper.

114 115 116 117 118 119 120 121 122 123

2. Related works

124

In this section we present the literature on course control of Unmanned Surface Vessel (USV) and our main contributions regarding these works. Along the large history of the marine systems, different control strategies have been applied to the design of ship autopilots. Sperry and Minorski developed the first autopilot in 1922 and led to the introduction of the proportional-integral-derivative (PID) controller for automatic ship steering. Since then, the simple conventional regulator and much more sophisticated controllers have been applied to marine crafts. From the first adaptive autopilot introduced by Amerongen, Udink, and Cate (1975), to the application of backsteeping techniques that guarantee the convergence of direction and position in relation to a reference trajectory (Do, 2010; Dong, Wan, Li, Liu, & Zhang, 2015), or exploit the sliding mode control (Conte, Capua, & Scaradozzi, 2016). But most of these sophisticated control algorithms have the disadvantage of requiring high computational effort (Pan, Lai, Yang, & Wu, 2015). Although intrinsically marine vehicles are known to exhibit non-linear dynamic characteristics, modern marine autopilot system designs continue to be developed based on both analytic linear and non-linear models. The book by Fossen (2011) collects results on control of marine crafts. It is mainly focused on feedback control methods such as PID controllers and more advance motion control strategies based on optimal control theory. SISO and MIMO PID control is applied to a nonlinear 3 degrees-of-freedom (DOF) and 6-DOF models of the marine vehicle. The interest this book has caused shows that conventional control is still widely applied to marine surface vessels. That is, classical control is an indispensable reference. That is why in our work we have compared our control proposals with a PID controller. Besides, in order to make a fair comparison, we have optimized the tuning parameters of the conventional controller by applying genetic algorithms in order to achieve its best performance. Even more, PID control is still being applied to USV. In the paper presented by Guo, Wang, and Dun (2015), the main control system consists of PID controllers in the inner and outer loops. The unmanned ship has conducted a lake test with satisfactory results. Xu (2014) claims that PID controller is used in most of the course-keeping closed-loop control of unmanned surface vehicles. Xu and Soares (2015, 2016) present an optimized two-dimensional path following algorithm used for way-points tracking of a surface ship. In both papers a PID heading autopilot is used for the ship control. However, the parameters of the PID regulator may be difficult to tuning. In the literature the application of Genetic Algorithms (GA) and other evolutive techniques to the optimization of the tuning parameters of conventional controllers can be found. The following works can be taken as examples, among others. By Yu, Liu, Liu, and Wang (2015), a self-tuning PID controller for fin/rudder roll stabilization is optimized using multi-objective genetic algorithm. In this paper the performance index to be optimized includes the energy. They also compare the proposal with traditional control to

125

Please cite this article as: J.M. Larrazabal, M.S. Peñas, Intelligent rudder control of an unmanned surface vessel, Expert Systems With Applications (2016), http://dx.doi.org/10.1016/j.eswa.2016.01.057

113

126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176

JID: ESWA

ARTICLE IN PRESS

[m5G;February 15, 2016;21:5]

J.M. Larrazabal, M.S. Peñas / Expert Systems With Applications xxx (2016) xxx–xxx

177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242

show how it improves the efficiency of roll stabilization and yaw control precision. Xu (2014) adopts an elitism estimation of distribution algorithm to optimize the PID system used to control the course of the USV. It makes use of the probabilistic model to estimate the optimal solution distribution. Finally, Rathore and Kumar (2015) show a robust PID steering control of an autonomous underwater vehicle tuned by GA to guarantee the stability of the system. In our work we have also applied this evolutive algorithm to tune the PID gains. In our case the GA minimizes the trajectory error. Some recent papers on USV control are focused on adaptive control laws to deal with the changing dynamics of the marine system. Among them, gain scheduling approach allows us to optimally adapt the control to different operating conditions. The gain scheduling improves the controller performance by varying the control parameters according to the variable that most influence the system behaviour. For example, the paper by Liu et al. (2015) works with the mass variation as scheduling variable. A linear parameter varying controller with adaptive parameter estimation is synthesized to operate a USV under variation in its overall mass. Although for an autonomous underwater vehicle, González, Gomáriz, and Batlle (2015) apply PID gain scheduling for different conditions both in surge velocity and in changes in yaw reference. The hydrodynamic model of the vehicle is linearized under different operating speeds and several linear controls are designed for their actuation at certain situations. The paper by Zhixiang, Youmin, Chi, and Jun (2015) also proposes an adaptive linear parameter varying fault tolerant control approach with application to an unmanned surface vehicle steering control. The baseline controller is designed to guarantee the acceptable tracking performance and stability of USV under time-varying operating states (distinct surge speed). Other similar works that apply different adaptive control schemes are presented by Eske, Sorensen, and Breivik (2015). In this paper the authors only present numerical simulations for target tracking along both straight-line and circular paths. The same happens by Dong et al. (2015), where a state feedback based backstepping control algorithm is proposed to address the trajectory tracking problem of an USV in the horizontal plane. The trajectory tracking controller designed can track both curve trajectory and straight line trajectory. In our work we have chosen the characteristic of the trajectory as scheduling variable. We think it is more general that the used by other papers. As far as we know, this approach has not been previously applied to USV and therefore is novel. Besides, regarding the other papers cited, we have used a wider range of trajectories, not only simple ones. Furthermore, tuning the gain scheduling controller by GA makes it possible to optimize the control law for different operating points. On the other hand, intelligent controllers based on fuzzy logic have been widely used in different fields, including marine applications (Santos, 2011; Santos, López, & Cruz de la, 2005). A closely related work is presented by Wang, Kang, Xu, and Xu (2016), where the rudder automatic control is based on 245 pieces of fuzzy logic rules summarized from the general steering experiences. It was applied to 1.5 m sailboat experiment in a lake showing the effectiveness of the track following fuzzy controller in various wind conditions. Wang, Fu, and Liu (2015) try to simplify a conventional fuzzy controller for ship course reaching a trade-off between accuracy and the number of control rules. They propose a variable universe fuzzy controller that has superior property in effectiveness and robustness than conventional control. In the paper by González et al. (2015), a fuzzy control design for yaw tracking of an autonomous underwater vehicle is also presented. The fuzzy control works globally better than the gain scheduling approach that has also been applied to the same model. In comparison to these, our fuzzy proposal is quite simple (small number of rules)

3

Fig. 1. Rotation and translation axes of a ship.

but efficient in terms of tacking accuracy, as it is shown by the results. Azzeri, Adnan, and Zain (2015) present a review of research work done on various aspects of control system approaches of unmanned surface vehicle in order to improve the course keeping performance. Although the review reveals that the adaptive backstepping control system is a powerful tool for these nonlinear systems, fuzzy logic control is also suggested as good alternative approach for complex systems such as USV. Finally, one of the main contributions of our work is to show that intelligent techniques combined with conventional controllers are a good alternative to deal with complex systems that, as in the case of marine vehicles, have been traditionally controlled by classical control theory but with poor performance. The synergy of these techniques improves the control action. In our case we have applied GA for the adaptive tuning of a gain scheduling control based on conventional controllers. Although this scheme is new, in the literature it is possible to find other combinations that have been applied to the tuning of course control system of USV. Just to mention a few, by Yunsheng, Xiaojie, Guofeng, and Chen (2015) a combination of PID control and fuzzy logic is developed. Simulation results show that the fuzzy self-adaptive PID USV course control possesses good dynamic response comparing with the conventional PID control. Liu, Xing, and Zhu (2015) present a fuzzy PID fusion ship course controller with a continuous updating of its ´ output scaling factor. Trybus, Swider, and Stec (2015) present tuning rules for PID controller of conventional autopilot and for PI or state-space control of an advanced one. 3. System behaviour description

246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269

271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286

(1)

where M is the inertia matrix (including the added mass), C(v) is the centrifugal and Coriolis matrix, v = [u,v,w,p,q,r]T , is the linear

Please cite this article as: J.M. Larrazabal, M.S. Peñas, Intelligent rudder control of an unmanned surface vessel, Expert Systems With Applications (2016), http://dx.doi.org/10.1016/j.eswa.2016.01.057

245

270

The rigid-body and hydrodynamic equations of motion for a ship are given by a set of very complicated differential equations describing the 6 degrees-of-freedom (6 DOF). The motions in the horizontal plane are referred to as surge (longitudinal motion), sway (sideways motion) and yaw (rotation around the vertical axis) for translation (position) in three perpendicular coordinate axes. The other three DOF are roll (rotation about the longitudinal axis), pitch (rotation about the transverse axis), and heave (vertical motion), for rotation (orientation), as shown in Fig. 1 (Perez & Blanke, 2002). The models used to represent the physics of the real world, however, vary as much as the underlying control objectives vary. The motion equations of the ship as a rigid body can be obtained by Newton’s second law. For cruising at a nearly constant surge speed and only considering first order approximations of the viscous damping, a linear parametrically varying approximation of the steering dynamics is applicable (Fossen, 2002),

Mv˙ + C (v )v = τ

243 244

287 288

ARTICLE IN PRESS

JID: ESWA 4

289 290 291 292 293 294 295 296 297 298 299 300 301

J.M. Larrazabal, M.S. Peñas / Expert Systems With Applications xxx (2016) xxx–xxx

and angular velocity vector of the rigid body, and τ = [X,Y,Z,K,M,N]T , τ ∈ R3×3 is the force and momentum vector, that will be the control vector. Assuming that the ship is longitudinally and laterally stable with small amplitudes, one can discard the dynamics of roll and pitch. Likewise, since the ship is floating in the horizontal plane, one can discard the heave dynamics. The resulting model for the purpose of manoeuvring the ship in the X-Y plane becomes a 3 DOF model that is linear in the kinetic part. That is, for ship maneuvering control, it is common to formulate a coupled surge-sway-yaw model (Fossen, 2011). Considering just forward/backward, left/right and yaw movements, Eq. (1) can be simplified as follows, where the subscript RB refers to rigid-body,

MRB(3×3) v˙ + CRB(3×3) (v )v = τRB(3×1)

304 305

moment N. The inertia matrix is defined as,

303



MRB(3×3) = 306 307 308 309 310 311

m 0 0

313 314 315 316 317 318 319 320 321

0 mxG Iz



(3)

where m is the mass of the ship, xG the x-axis coordinate of the center of gravity, and Iz is the moment of inertia about the zRB axis (that is, yaw rotation). Several representations for the Coriolis matrix are possible. Based on Theorem 3.2 by Fossen (2002), we choose the skewsymmetric representation,



CRB(3×3) (v ) = 312

0 m mxG

0 0 m ( xG r + v )

0 0 −mu



−m(xG r + v ) mu 0

(4)

Therefore the six state variables of the vessel can be taken as [x,y,ψ ,u,v,r]T , where (x,y) (m) are the positions along axis (Cartesian positions), and ψ (rad) is vessel’s orientation (heading angle) in the inertial frame (Earth-fixed); u (m/s), v (m/s) are the linear velocities (surge, sway), and r (rad/s) is the yaw rate in the bodyfixed frame (ship angular velocity). The variables for the action space are: X (N), Y (N) and N (Nm) that are the surge and sway forces and yaw moment, respectively, produced by the vessel actuators (propellers, thrusters, and rudders).

τRB(3×3) = [X Y N]T 322 323

324 325 326 327 328 329

(5)

To summarize, the following equations can then be obtained from the previous development:

Surge(Forward/backward ): Sway(Left/right ) : Yaw :





m u˙ − vr − xG r2 = X m(v˙ − ur + xG r˙ ) = Y Iz r˙ + mxG (ur + v˙ ) = N

(6)

The reference path is given by Pd = [xd ,yd ,ψ d ∈ R which is generated with the desired velocities ud and rd . This work aims to control the ship course acting on its rudder, located at the boat’s stern. Fig. 2 shows a schematic representation of the X–Y horizontal plane of the ship, where, ψ d represents the desired heading angle (orientation) and δ the rudder position. ]T

3.1. Ship modeling

331

An adequate mathematical model is essential to simulate and predict the behaviour of a real system. If reliable mathematical models are available and they predict the behaviour of the real systems accurately, then control actions can be planned and tested in simulation avoiding the costly, in time and money, practical tests. But on the other hand, real applications demand computational

333 334 335 336

low-cost mathematical representations. For these reasons, simpler vehicle models are commonly used so that, although without reflecting all the dynamic features of the vehicle, they reproduce the real behaviour of ships in most of practical scenarios (Sonnenburg & Woolsey, 2013). In this paper we have used the marine system model generated by Moreno-Salinas, Chaos, Cruz de la, & Aranda, 2013, to test the proposed controllers. Identification is done with experimental data obtained from a scale surface marine vessel sailing in the Valmayor reservoir (Madrid, Spain). Manoeuver tests have been conducted to identify the physical and hydrodynamical parameters of this ship. It is assumed that the vessel moves in calm water experiencing negligible currents, wind, and waves, and that forces caused by environmental disturbances can be excluded. The mathematical model obtained by applying Support Vector Machine was validated with experimental tests carried out with the scale ship. The identified model is called Model 2760. The real vessel we are working with was developed in CEHIPAR (2016) (Canal de Experiencias Hidrodinámicas del Pardo, Spain). It is a scale model of an operational vessel. The prototype is 5-meter long (1:15 scale of a real 75 m long, 15 m beam and 6.5 m draught), with a 277 Kg tare, and a maximum speed of 4 m/s (7.3 knots). The screw is powered by a 0.85 KW and 1400 rpm ABB AC motor to control the propeller turning speed, and the rudder angle is controlled by a Beckhoff AS1060 stepper motor, with a 1.8º/200 resolution. The ship is equipped with an Octopus F180 inertial navigation system for attitude and positioning calculations that provides 0.5 m, 0.04 m/s and 0.1º accuracy. The desired rudder angle and surge speed are commanded through a Wi-Fi connection between the ship and the control station at land. The transfer function for yaw rate of the ship is represented in (7). This model provides the transfer function that relates the yaw rate, r, to the rudder angle δ :

GW =

3,

330

332

Fig. 2. X–Y plane of the ship.

(2)

where MRB ∈ R3×3 is the rigid-body system inertia matrix, CRB (v) ∈ R3×3 is the corresponding matrix of Coriolis and centripetal terms, and τRB T ∈ R3 is a generalized vector of external forces (X,Y) and

302

[m5G;February 15, 2016;21:5]

r

δ

(s ) =

KT3 s + K T1 T2 s2 + (T1 + T2 )s + 1

Kv Tv s + Kv v (s ) = δ T1 T2 s2 + (T1 + T2 )s + 1

341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369

370 371 372 373

(8)

where Kv = 0.3759 and Tv = 0.0277.

374

3.2. Simulation scenario

375

Simulations have been run using Matlab/Simulink©. Different manoeuvres have been made (circular, zigzag, straight with specific turns, etc.) for the analysis of the system response with the

377

Please cite this article as: J.M. Larrazabal, M.S. Peñas, Intelligent rudder control of an unmanned surface vessel, Expert Systems With Applications (2016), http://dx.doi.org/10.1016/j.eswa.2016.01.057

339 340

(7)

with the values of K = 0.3573, T1 = 0.8138, T2 = 1.1500, T3 = 0.9752, in this case. On the other hand, transfer function for sway velocity of the ship is the following:

Gv =

337 338

376 378

ARTICLE IN PRESS

JID: ESWA

[m5G;February 15, 2016;21:5]

J.M. Larrazabal, M.S. Peñas / Expert Systems With Applications xxx (2016) xxx–xxx

5

Fig. 3. Block diagram of the control scenario.

379 380 381 382 383 384 385 386 387

different control strategies, which are to be described in following sections. Fig. 3 shows the simulation and control diagram. The block on the left generates the desired course angle, ψ d (t), which corresponds to a specific trajectory to be followed by the ship. The output of this function block is the reference signal of the control system, so that the error vector is calculated as the difference between this set-point signal (desired course angle, ψ d ) and the real course angle ψ of the ship, calculated as,

e(t ) = ψd (t ) − ψ (t ) 388 389 390

(9)

To obtain the real course angle of the ship, an integrator (a pole) is included in (7), so that the transfer function relates yaw angle (or course angle, ψ ) to the rudder angle δ (10).

KT3 s + K ψ (s ) = δ s(T1 T2 s2 + (T1 + T2 )s + 1 )

(10)

409

The values of the parameters of (10) have been given above. The output of the controller is the angle of the ship rudder, δ . In order to get a more robust system according to the real physical limitations, a saturation element has been included to keep the rudder angle between ± 40º. This non-linear element avoids the rudder actuator to surpass the physical limits in case the controller tends to apply too aggressive actions. Constraints such as actuator saturation are included. That introduces a non-linearity in the control law but, in reality, engines can only provide limited power and mechanical components have maximum deflections or revolutions, which introduce constraints to the vessel system; neglecting these constraints in the controller design could lead to poor control performances or even actuator damages in real implementation. That is why we have plotted the control signal (actuator) in all the cases with the ship response. As shown in (8) and (10), the model of the ship generates two outputs as a function of the rudder angle, δ : sway velocity (Vs ) and course angle (ψ ). Both are used to calculate the trajectory made by the ship.

410

4. Gain scheduling PID control optimized by GA (GS-PID-GA)

411

Trajectory tracking is related to the design of control laws that lead the marine vehicle to reach and follow a desired reference. The degree of difficulty of solving this problem depends on vehicle dynamics. The control logic consists of an algorithm that calculates the necessary rudder angle to reach the desired path in a feasible way. The first proposed control system, which will be used as a benchmark, is a proportional-integral-derivate (PID) regulator where the tuning parameters are optimized by applying Genetic Algorithms (GA). The control law u(t) obtained by a PID controller is given by,

391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408

412 413 414 415 416 417 418 419 420 421



  1 d u(t ) = Kp e(t ) + e(t )dτ + Td e(t ) Ti dt  d = Kp e(t ) + Ki e(t )dτ + Kd e(t ) dt

(11)

where e(t) is the error signal, defined in this application by (9). The tuning parameters or gains of the PID are the following: - Proportional gain, Kp. - Integral time Ti or integral gain, Ki . - Derivate time Td or derivative gain, Kd . The fact that there can be different possible values for these parameters makes this evolutive technique, genetic algorithms, an appropriate one. There are many possible combinations of values for the three tuning gains of the controller, all of them good enough for a specific application. As it is well known, in a general genetic algorithm, a population P(i) = {x1 , …, xN }i of N individuals is generated per iteration I (generation). Each of these individuals, called chromosomes, represents a possible solution to the problem. The fitness of each solution xn i is evaluated (evaluation step) in order to create a new population P(i+1) by selecting the best individuals (selection step). Some members of the population undergo transformations by the use of genetic operators to generate new solutions. There are unary transformations mj , or mutations, which create new genotypes by introducing a small change in a single individual (mj : S → S), and higher order transformations such as ck , or crossover, which create new individuals by combining parts of several genotypes, i.e., (ck : S × … × S → S). After a number of generations the program converges and the best resulting individuals represent reasonable near-optimum solutions (Mitchell, 1998; Santos & Cantos, 2010). The developed algorithm is configurable depending on the characteristics of the ship course changes. The configuration of the GA is a crucial task. It depends on the specific application, and the solutions and time required to reach it depend on these configurations parameters (chromosome encoding, fitness function, selection, crossover or mutation types and probabilities, etc.). In this work the configuration of the genetic algorithm parameters can be done by the user. Even more, it is possible to try different values for these parameters in order to analyze their effects on the system response. Some of these configurable parameters are: - Individuals. Each individual is a possible solution. In this case, an individual consists of chromosomes that represent the controller parameters. Therefore, three chromosomes define the tuning gains of a classical PID regulator (Kp , Ki and Kd ). It is also possible to modify the structure to simulate a P, PI or PD type controller, reducing the number of chromosomes and the number of variables to optimize. The number of bits that define each one is also configurable, allowing more results at the expense of a higher computational load. - Crossover and mutation types and probabilities can be modified for different simulations. The standard ones have been implemented. Different probabilities have also been tried. - Evaluation step. The fitness function of the algorithm, the one that indicates how good each individual is, has been designed in a way that it is easy to modify it depending on the type of trajectory (zig–zag, circular, smooth course changes, aggressive turns, etc.). This will allow us to incorporate the scheduling.

Please cite this article as: J.M. Larrazabal, M.S. Peñas, Intelligent rudder control of an unmanned surface vessel, Expert Systems With Applications (2016), http://dx.doi.org/10.1016/j.eswa.2016.01.057

422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474

ARTICLE IN PRESS

JID: ESWA 6

475 476 477 478 479

[m5G;February 15, 2016;21:5]

J.M. Larrazabal, M.S. Peñas / Expert Systems With Applications xxx (2016) xxx–xxx

- The algorithm calculates the fitness value of each individual applying a set-point signal at the input of the system and computing the error of the response by (12). Changing the characteristics of this reference signal the result can be optimized for different course changing.

Trajectory_error(t ) = reference − trajectory(t ) −system − position(t ) 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494

The error of the position of the ship regarding the desired trajectory is obtained by the integration of the velocities of the model response. The GA minimizes this error. It is possible to choose between different performance metrics, such as the MSE, the integral of the absolute error (IAE), the integral of the square of the error (ISE) or the integral of the absolute error multiplied by time (ITAE). The IAE simply describes the temporal evolution of the absolute value of the error without adding any weight to the error. The ISE penalizes large errors more than smaller ones, indicating how good the particular algorithm is at eliminating large errors. The calculation of ITAE penalizes errors which have been present for a long time more heavily than those present at the beginning (Eske et al., 2015). ITAE will show if there is a stationary error present in the system, and it will be the one to be minimized by our control proposal.



ITAE = 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533

(12)

0



t |e(t )|dt

(13)

The error defined in (12) is different from (9), where the desired rudder angle (º) was applied to calculate it. This angle makes the ship to follow a desired path when it is applied to the dynamic model of the ship. - Selection step. The developed algorithm includes two different reinsertion strategies: pure reinsertion and a fitness based reinsertion. The first one produces as many offspring as parents, and replaces all parents by the offspring. The other reinsertion type, instead of forming the new generation replacing all the parents, makes a selection of parents and offspring, and creates the new generation choosing the best individuals of both groups. Another advantage of being able to modify these GA parameters is that it is possible to find a trade-off between computational time and a good solution. The number of generations has been calculated in order to reduce the convergence time, keeping a good solution. The cost in time of improving the solution has also been calculated. In this application the size of the initial population has a strong influence on the time required to find the solution. Obviously it can be expected that the number of parameters to be optimized (number of chromosomes), that is, if the controller is a P, PI, PD or a PID regulator, had an influence but it is negligible compared to number of individuals. In fact, time grows linearly with the number of individuals. Different tests have been carried out to determine a good configuration of the GA. Regarding the initial population size, it was found that 40 individuals evolving during approximately 50 generations gave a good system response, within a reasonable time, and without significant improvement if the simulation is longer. The variables to be optimized are the three gains of the PID controller: proportional gain Kp , integral gain Ki and derivative gain Kd (Fig. 4). Optimization aims to both reduce the overshoot, as providing a rapid response to disturbances. The values of these tuning parameters have to be carefully obtained as the system might be unstable if they are not appropriate. As stated in the introduction, the changing environmental conditions make the ship dynamics also change. Then, a fixed gain PID controller cannot usually give satisfactory control performance at

Fig. 4. Gain scheduling PID control tuned by GA (GS-PID-GA). Table 1 Gain scheduling values for different course changes.

Type 1 (linear and smooth) Type 2 (big) Type 3 (fast and big)

Kp

Ki

Kd

4.9994 4.9948 4.9506

3.5866 2.2681 0.0111

4.9914 1.8773 4.7782

some operating points, since the controller parameters must be adjusted following a change in operating conditions. Therefore, one way to improve the control performance of a PID controller on highly nonlinear systems is to vary the controller parameters according to the operating conditions. This is known as gain scheduling control (Santos & Dexter, 2002). This technique can be very useful for unmanned vehicles, which are usually non-linear. Therefore, in this section we have implemented a gain scheduling strategy. That is, for each operating point, a different PID is applied. This approach includes the non-linearity of the behaviour of the ship regarding the different types of motion. In our case, the scheduling variable is the shape of the trajectory. We have seen that the characteristics of the ship course have a strong influence on the system response. The trajectory can be circular, zigzag, straight line, close turns, sinusoidal, etc., and it usually known in advanced. Each trajectory has specific features such as the radius of the circle, the angle of the zigzag movement, etc. Therefore, gain scheduling is applied taking into account the type of trajectory, i.e., course changing. Instead of having the same values of the PID gains for any trajectory, suitable values of the proportional gain, integral time and derivative time constant are selected for each operating condition. This allows us to adapt the response to the desired course angle. Besides, the best tuning controller parameters are obtained by GA for each operation point. Table 1 shows 3 cases. The PID parameters have been obtained by GA optimization. Type 1 parameters offer a fast and good response to smooth course changes, such as wide circular stretches, smooth sinusoidal trajectories, etc. Type 2 parameters are more appropriate for aggressive turns, where the response needs to be faster. Finally, a controller with type 3 parameters is optimized for fast zigzag type trajectories, i.e., fast and big angle changes. The results will prove that this gain scheduling control strategy improves the efficiency of the control action and provides a better trajectory following. Even more, this scheduler control is simple but faster enough to be applied in real time applications because the controllers are tuned off-line.

535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570

5. Intelligent fuzzy control (FLC)

571

Fuzzy logic controllers (FLC) are knowledge-based systems. They are able to transform a linguistic control strategy based on expert knowledge into automatic control (Sugeno, 1985). Fuzzy control provides important advantages in applications with mathematic complex models. Based on approximate reasoning, it makes

572

Please cite this article as: J.M. Larrazabal, M.S. Peñas, Intelligent rudder control of an unmanned surface vessel, Expert Systems With Applications (2016), http://dx.doi.org/10.1016/j.eswa.2016.01.057

534

573 574 575 576

ARTICLE IN PRESS

JID: ESWA

[m5G;February 15, 2016;21:5]

J.M. Larrazabal, M.S. Peñas / Expert Systems With Applications xxx (2016) xxx–xxx

Fig. 5. Fuzzy logic controller (FLC).

577 578 579 580 581 582 583 584 585 586

it possible to control complex systems, such marine vessels, even in uncertain environments (Santos et al., 2005). A fuzzy inference system is based on the definition of fuzzy set. Given a universe of discourse U, a fuzzy set is a mapping μ: U→[0, 1] that gives a membership degree to every element of U in the interval [0, 1]. A semantic label is assigned to this fuzzy set and its membership degree is used to measure a characteristic of the elements of the universe U. Fuzzy systems are normally used to formulate human knowledge that is represented by a fuzzy rule with the canonical form as,

Ru(l ) : IF x1 is Al1 and xn is Aln THEN y is Bl 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602

(14)

where Ru(l ) is the lth rule, Ali and Bl are fuzzy sets in Ui ⊂ R and V ⊂ R, respectively, and x = (x1 , x2 , …, xn )T ∈ U are inputs and y ∈ V outputs of the fuzzy system. The fuzzy logic is then worked out by the compositional rule of inference that determines the membership functions of the fuzzy propositions in the conclusions. In other words, the rules in the fuzzy rule base are combined into a mapping. A fuzzy system in general and a FLC in particular, consist of four modules that can be briefly defined as follows (Fig. 5). 1. Fuzzyfication: the input variables of the application are selected based on experience. Each of these linguistic variables is associated to several fuzzy sets. Every fuzzy set is defined by a semantic label and a membership function. For each input, that is, the crisp value of an input variable, its membership degree to every fuzzy set is calculated. These values will fire the fuzzy rules.

2. Decision-making logic: the fuzzy rules are relations between antecedents and consequents (14). The if-then form is used. The rule base is defined comprising the knowledge of an expert. 3. Fuzzy Inference: the inference method, such as max-min (Mamdani) or max-product (Larsen), is selected based on inductive or deductive reasoning approaches. The Sugeno type inference can also be used depending on the problem type and the nature of the data. The fired rules result from using the inference method considered. A fuzzy set is obtained at the end of each inference. 4. Defuzzyfication: the fuzzy outputs are converted to crisp values by applying a defuzzyfication method (centroid, weighted average, etc.) The centroid is the most widely defuzzyfication strategy used. The diagram of the Fuzzy Logic Controller (FLC) applied to the ship is shown in Fig. 5. In this work we have implemented a Fuzzy-PD type controller for the ship rudder angle, δ , in order to make the ship follows a desired trajectory. The integral action is given by the pole that has been added to the transfer function of the system, as shown in (10), therefore it is not necessary to include it in the control law. The controller has been defined as a Mamdani fuzzy system, with two inputs and one output. - The input variable “error” e(t) is the ship course angle error, i.e., the difference between the desired course angle, ψ d , and the real course coming from the model simulation, ψ , as given by (9) - The input variable “error.dt” is the derivative of the error. - The output variable “ang” represents the rudder angle, δ . Fig. 6 shows the membership functions of the signals and the control surface. Seven triangular fuzzy sets have been defined for both input variables, named NB (Negative Big), NM (Negative Medium), NS (Negative Small), ZE (Zero), and the corresponding ones for the positive values, PS (Positive Small), PM (Positive Medium), PB (Positive Big). The output is defined by seven fuzzy sets with the same labels but, in this case, smoother membership functions have been used at the ends. During the simulation tests, it was shown that narrower functions for near zero output signals provided a more stable response when trying to keep a straight trajectory.

Fig. 6. Membership functions of the input variables (top), fuzzy sets of the output (bottom left) and control surface (bottom right).

Please cite this article as: J.M. Larrazabal, M.S. Peñas, Intelligent rudder control of an unmanned surface vessel, Expert Systems With Applications (2016), http://dx.doi.org/10.1016/j.eswa.2016.01.057

7

603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641

ARTICLE IN PRESS

JID: ESWA 8

[m5G;February 15, 2016;21:5]

J.M. Larrazabal, M.S. Peñas / Expert Systems With Applications xxx (2016) xxx–xxx

Fig. 7. Fuzzy controller of the USV.

Fig. 8. Smooth course changing; (a) Reference and system response with different controllers; (b) Control signal; (c) Trajectory following.

642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659

The universe of discourse for each variable has been defined according to its possible range of values after carrying out different tests. As it was said, the interval of the rudder angle is [–40, 40]º, therefore the error input and the rudder angle output membership functions go from –40 to +40 degrees (saturation at the model input has been applied). Simulations when applying typical trajectories showed that the error derivative signal hardly reaches values higher than +/–10º/s, so it ranges from –15 to +15º/s. The fuzzy controller tuning is not an easy task. After the initial adjustment of the fuzzy sets, the controller was further tuned by adding gain values to the input and output signals (Ge, Gde, Gu). Changing these values is equivalent to change the membership function. This is the procedure that has been used to achieve the fine-tuning of the controller (Santos, 2014). Fig. 7 shows the diagram of this fuzzy controller with the tuning parameters and the variables of the model. This intelligent controller obtains the rudder angle that will be the input of the ship model.

660

6. Simulation results and discussion

661

All the simulations are run in MATLAB/Simulink©. For the problem at hand, we consider a constant surge speed of 1 m/s, a real value. The examples chosen here are taken from several simulations. The responses of the proposed controllers are compared for different cases.

662 663 664 665 666 667 668

(a) Conventional PID controller: the initial PID parameters are determined using the Ziegler–Nichols tuning method. Based on the model given by (10) they are calculated as,

Kp = 3.2, Ki = 0.75, Kd = 4.0. 669 670 671 672 673 674 675 676 677 678

(b) Fuzzy logic controller (FLC): the gains are determined by trial and error. The following values are obtained: a. Ge = 1.5 b. Gde = 0.5 c. Gu = 3.5 (c) The genetic algorithm configuration parameters are as follows, a. Initial population size: 0–60 (40) b. Maximum number of generation: 0–300 (50) c. Crossover probability Pc = 0–1 (1) d. Mutation probability PM = 0–0.1 (0.01)

e. Fitness-based reinsertion f. Fitness function adapted to course changing characteristics g. ITAE error (13) in the fitness function.

681

6.1. Comparison of the controller responses for different trajectories

682

The following figures show the comparison between the three controllers for different desired courses. These three control systems are: the conventional PID regulator, the gain scheduling PID optimized by genetic algorithms (GS-PID-GA), and the fuzzy logic controller (FLC). Different trajectories were set as references. The input signal commanded is the rudder angle. The control signal is always shown to check if it is feasible and if the actuator has been saturated, according to the real physical limitations. Unlike other papers (Pan et al., 2015), in this work this non-linearity of the control element is taken into account. In all the figures, the dotted green line corresponds to the PID controller, the dash-dotted red line to the GS-PID-GA, and the dashed blue line to the FLC. The desired reference is the solid black line. First, a sinusoidal trajectory has been applied. It corresponds to a smooth change (small angle variation). The trajectories carry out by the ship with each controller and the corresponding control signals are shown in Fig. 8a and b, respectively. It is possible to see that the PID control action presents some ripples (Fig. 8b) but, as the course turnings (and therefore the rudder angle change) are small, this effect is insignificant on the ship movement. It is worthy to remark that the simulation and the reference generation are computing using the course angle and the sway velocity obtained as outputs of the ship model (Fig. 7). Because of that, as it is possible to see in Fig. 8c, the path followed by the ship is slightly moved to the direction of the sway velocity. In order to avoid this effect, we have applied a corrective action. Fig. 9 shows the trajectory followed by the ship when this undesirable effect of the sway velocity is eliminated. From now on, in all the cases the sway velocity effect has been corrected. Fig. 10a shows straight trajectories or linear stretches of wide circles. Again, the performance of the controllers is good (Fig. 10c) and the required control effort is feasible (Fig. 10b). In the previous simulations (Fig. 8–10), the change of the course angle is smooth. The response of the controllers is similar and all of them can easily follow the desired trajectory. None of them

683

Please cite this article as: J.M. Larrazabal, M.S. Peñas, Intelligent rudder control of an unmanned surface vessel, Expert Systems With Applications (2016), http://dx.doi.org/10.1016/j.eswa.2016.01.057

679 680

684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718

JID: ESWA

ARTICLE IN PRESS

[m5G;February 15, 2016;21:5]

J.M. Larrazabal, M.S. Peñas / Expert Systems With Applications xxx (2016) xxx–xxx

Fig. 9. Smooth turning trajectory when the sway velocity disturbance has been corrected.

719 720 721 722 723 724 725 726 727 728 729 730 731 732 733

presents overshoot and the response is fast. Although the effect of the sway velocity is clear for the three of them and it has been corrected, the path followed by the ship when the fuzzy controller is applied is displaced more than the others and gives a small stationary error. The best one is the GS-PID-GA. Fig. 11 shows the system response for a ship that is following a straight path until it experiments a turn. The input signal, rudder angle, changes from 0 to 24 degrees keeping a nominal surge speed of 1 m/s. Completing a 24-degree turn takes nearly 20 s to the PID controller, but around 15 s to the other alternatives. In this case the best performance is obtained by the FLC (Fig. 11a), which has the smallest overshoot and the shortest settling time, even if during the straight path it had a stationary error. All the control actions are in the range of feasible values (Fig. 11b).

Fig. 12 shows the response for a more aggressive turn. The input signal (rudder angle) takes the value of 60 degrees, with a nominal surge speed of 1 m/s (Fig. 12a). In this case, it is possible to see the saturation effect in the control actuator (it reaches +40º) (Fig. 12b). The effect of this short period of saturation in the control signal is clearly visible when suppressing the sway velocity effect. In Fig. 12c), the PID (dotted green) and the GS-PID-GA (dash-dotted red) responses are quite close to the reference, but due to this saturation, the fuzzy regulator has a stationary error (dashed blue). Again the best one is the GS-PID-GA. In Fig. 13, due to a strong turn in the ship path (rudder angle set to 90 degrees, Fig. 13a), all controllers give a more aggressive control action. In this case the saturation effect is very relevant. Regarding the overshoot and settling time, the FLC presents the best behaviour but it also produces a big stationary error (Fig. 13b) in the trajectory plane. In real applications these aggressive course changes should be avoided. In order to prevent activating the saturation element, it is better to apply smoother references, with smaller changes during a longer time period (to get the same overall course change as the aggressive one). So far, the FLC gives the best response regarding the reference, i.e., reaching the desired rudder angle. Nevertheless, the hybrid controller, GS-PID-GA is the one that best follows the trajectory in the X–Y plane. This may be due to the fact that the gain scheduling is adapted to the shape of the trajectory. The conventional PID regulator also gives good results but it is slower and requires a larger settling time. We have also tried more complex trajectories. Fig. 14 shows the system response for a 40/40 degree zigzag maneuver with a nominal surge speed of 1 m/s.

Fig. 10. Straight and circular trajectories.

Fig. 11. (a) Straight trajectory with +24º turn; (b) control signal.

Please cite this article as: J.M. Larrazabal, M.S. Peñas, Intelligent rudder control of an unmanned surface vessel, Expert Systems With Applications (2016), http://dx.doi.org/10.1016/j.eswa.2016.01.057

9

734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765

JID: ESWA 10

ARTICLE IN PRESS

[m5G;February 15, 2016;21:5]

J.M. Larrazabal, M.S. Peñas / Expert Systems With Applications xxx (2016) xxx–xxx

Fig. 12. Straight trajectory with a +60 degree turn.

Fig. 13. Straight trajectory with +90 degree turn.

Fig. 14. Zigzag trajectory (40/40)º.

Fig. 15. Two consecutive turning manoeuvres trajectory.

766 767 768 769 770 771 772

In this case, the PID controller makes the ship go away from the reference more and more each cycle of the zigzag trajectory. This is due to the fact that the course changes are quite fast, and the PID controller cannot reach the steady state before reversing the ship course. So, as the zigzag trajectory moves forward, the response of the ship with the PID controller is worse. On the other hand, although there is a small difference between the desired trajectory

and the ones obtained applying the GS-PID-GA and the FLC, this error keeps constant maybe because of the inertia of the vessel. Finally, Fig. 15 shows a trajectory with several consecutive turning manoeuvres. The control signal oscillations are more relevant than in the previous cases (Fig. 15b). Again the FLC gives the best response (Fig. 15c) and the GS-PID-GA is the second best.

Please cite this article as: J.M. Larrazabal, M.S. Peñas, Intelligent rudder control of an unmanned surface vessel, Expert Systems With Applications (2016), http://dx.doi.org/10.1016/j.eswa.2016.01.057

773 774 775 776 777 778 779

JID: ESWA

ARTICLE IN PRESS J.M. Larrazabal, M.S. Peñas / Expert Systems With Applications xxx (2016) xxx–xxx

788

That is, facing more complex references, the intelligent controllers work better. Both of them, the GS-PID-GA and the FLC provide a significantly good response. To summarize, according to the figures presented above, the simulation results prove that intelligent control strategies (fuzzy logic) and the hybridization of conventional and intelligent control (gain scheduling PID optimized by genetic algorithms) give better results regarding path planning for complex systems such as autonomous marine vessels than only conventional regulators.

789

7. Conclusions

790

In this paper we have dealt with the rudder control of a marine system. The control of this actuator of an unmanned surface vessel (USV) is complex because of the strongly non linearity of the system dynamics and the changing environment. Therefore we have proposed and applied different control strategies to address these problems. The control proposals have been applied to the model of a scale replica of an operational ship, which has been obtained from real experiments. The performance of these controllers has been compared in terms of system response characteristics: overshoot, settling time, steady state error. An optimized conventional controller has been chosen as a benchmark. The limitation of the real actuators has been taken into account to test the feasibility of the control action. Simulations of the trajectory tracking of the autonomous vessel have proved the advantages and drawbacks of the different proposals. A wide range of trajectories has been taken into account. First we have designed a fuzzy logic controller (FLC) to face the uncertainty and the non-linearity of the system. It presents the faster response to the different references of the rudder angle. Even more, being a non-linear control, it includes the saturation of the actuator and gives the smoothest control action. We have also implemented a gain scheduling PID control strategy which has been tuned by genetic algorithms (GS-PID-GA). This controller is adapted to the different operational conditions of the ship. Specifically, we have chosen the trajectory as the scheduling variable. The controller is therefore optimized by the evolutive technique for the desired course. This solution, in addition to being adaptive, has a low computational cost because the scheduling variable can be known in advance and the control parameters can be calculated off-line and applied in real-time. Because of this, it is more efficient than the adaptive linear parameter varying techniques proposed in other articles. Simulation results show it is more effective regarding path following in terms of accuracy than FLC and PID control for our USV. As far as we know this combination of techniques in a scheduling control scheme has not been previously applied to USV and therefore is novel. The results show that the combination of conventional and intelligent control is a good choice to deal with complex systems such as marine surface vehicles. The fuzzy controller and the gain scheduling PID optimized by AG regulator have shown better performance than conventional control law. They provide a more accurate path following for USV, and this is extremely important in real applications of surface vessels to avoid obstacles and prevent accidents. Besides the obtained control actions verify the feasibility and reliability of these control system and provide a firm foundation for future work Therefore this work proves that the integration of different techniques is the only way to tackle complex problems. Specifically in the control of USV, although there is work done, it is still necessary to provide solutions to improve the trajectory tracking of real marine vehicle because of its impact on transportation, accident prevention, economic losses, etc. Our work offers an alternative, or, at least, a complementary possibility to improve the trajectory tracking control of USV. These results could be used in future

780 781 782 783 784 785 786 787

791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843

[m5G;February 15, 2016;21:5] 11

frameworks (such as transportation, spill collection, placing nets, etc.), where we think our contribution can be useful because of the necessity of realistic and accurate path following. We think that the next step should clearly be on the line of testing the control algorithms in the real USV, which is available and will be soon operating in a lake in Madrid, Spain. This will surely lead to a better adjust of the control systems that will have to deal with the input signals given by the sensors, which are noisy. On the other hand, from the knowledge point of view, an interesting contribution would be to test other scheduling variables such as different sea states and to include some disturbances that came from the waves, wind, etc. Uncited references

845 846 847 848 849 850 851 852 853 854 855 856 Q3 857

Hu, Zhou, & Xiao, 2012; Liu, Xing, & Zhu, 2015; Wang, Dai, Liu, & Han, 2014

858

Acknowledgments

860

859

The authors would like to thank the Spanish Ministry of Science and Innovation (MICINN) for support under project DPI201346665-C2-1-R. They would also like to thank the ISCAR team (UCM) for the available data and model of the ship.

864

References

865

Amerongen, J., Udink, Ten, & Cate, A. J. (1975). Model reference adaptive autopilots for ships. Automatica, 11(5), 441–449. Azzeri, M. N., Adnan, F. A., & Zain, M. M. (2015). Review of course keeping control system for unmanned surface vehicle. Journal Teknologi, 74(5). CEHIPAR (2016) http://www.cehipar.es/ (last accessed 01/2016). Conte, G., Capua, G. P. de, & Scaradozzi, D. (2016). Designing the NGC system of a small ASV for tracking underwater targets. Robotics and Autonomous Systems, 76, 46–57. Cruz de la, J. M., Aranda, J., & Girón, J. M. (2012). Automatic marine: a review from a control point of view. Revista Iberoamericana de Automática e Informática Industrial, 9(3), 205–218. Do, K. D. (2010). Practical control of under-actuated ships. Ocean Engineering, 37(13), 1111–1119. Dong, Z., Wan, L., Li, Y., Liu, T., & Zhang, G. (2015). Trajectory tracking control of underactuated USV based on modified backstepping approach. International Journal of Naval Architecture and Ocean Engineering, 7(5), 817–832. Eske, M., Sorensen, N., & Breivik, M. (2015). Comparing nonlinear adaptive motion controllers for marine surface vessels. IFAC-PapersOnLine, 48(16), 291–298. Fossen, T. I. (2002). Marine control systems: Guidance, navigation and control of ships, rigs and underwater vehicles. Trondheim: Marine Cybernetics. Fossen, T. I. (2011). Handbook of marine craft hydrodynamics and motion control. John Wiley & Sons. González, J., Gomáriz, S., & Batlle, C. (2015). Fuzzy control for yaw tracking of Cormoran AUV. Revista Iberoamericana de Automática e Informática Industrial, 12(2), 166–176. Guo, W., Wang, S., & Dun, W. (2015). The design of a control system for an unmanned surface vehicle. Open Automation and Control Systems Journal, 7, 150– 156. Hu, G. S., Zhou, Y. B., & Xiao, H. R. (2012). Application of fuzzy neural network in ship course control. Applied Mechanics and Materials, 135, 309–315. Liu, Z. X., Yuan, C., & Zhang, Y. M. (2015). Linear parameter varying adaptive control of an unmanned surface vehicle. IFAC-PapersOnLine, 48(16), 140–145. Liu, S., Xing, B., & Zhu, W. (2015, June). A fusion fuzzy PID controller with realtime implementation on a ship course control system. In Proceedings of the 23th Mediterranean Conference on Control and Automation (MED), 2015 (pp. 916–920). IEEE. Martin, A. Y. (2013). Unmanned maritime vehicles: technology evolution and implications. Marine Technology Society Journal, 47(5), 72–83. Mitchell, M. (1998). An introduction to genetic algorithms. MIT Press. Moreno-Salinas, D., Chaos, D., Cruz de la, J. M., & Aranda, J. (2013). Identification of a surface marine vessel using LS-SVM. Journal of Applied Mathematics, 1–11. Pan, C. Z., Lai, X. Z., Yang, S. X., & Wu, M. (2015). A biologically inspired approach to tracking control of underactuated surface vessels subject to unknown dynamics. Expert Systems with Applications, 42(4), 2153–2161. Perez, T., & Blanke, M. (2002). Mathematical Ship Modelling for control applications. Technical Report. Technical University of Denmark. Rathore, A., & Kumar, M. (2015). Robust steering control of autonomous underwater vehicle: based on pid tuning evolutionary optimization. International Journal of Computer Applications, 117(18), 1–6.

866 867 868Q4 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884Q5 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904Q6 905Q7 906 907 908 909 910 911 912 913 914

Please cite this article as: J.M. Larrazabal, M.S. Peñas, Intelligent rudder control of an unmanned surface vessel, Expert Systems With Applications (2016), http://dx.doi.org/10.1016/j.eswa.2016.01.057

844

861 862 863

JID: ESWA 12

915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941

ARTICLE IN PRESS

[m5G;February 15, 2016;21:5]

J.M. Larrazabal, M.S. Peñas / Expert Systems With Applications xxx (2016) xxx–xxx

Roberts, G. N. (2008). Trends in marine control systems. Annual reviews in control, 32(2), 263–269. Santos, M., & Dexter, A. L. (2002). Control of a cryogenic process using a fuzzy PID scheduler. Control Engineering Practice, 10(10), 1147–1152. Santos, M., López, R., & Cruz de la, J. M. (2005). Fuzzy control of the vertical acceleration of fast ferries. Control Engineering Practice, 13(3), 305–313. Santos, M., & Cantos, A. J. (2010). Classification of plasma signals by genetic algorithms. Fusion Science and Technology, 58(2), 706–713. Santos, M. (2011). An applied approach of intelligent control. Revista Iberoamericana de Automática e Informática Industrial, 8(4), 283–296. Santos, M. (2014). Neuro-fuzzy modeling and fuzzy control of a fast ferry. In Fuzzy Modeling and Control: Theory and Applications, Atlantis Computational Intelligence Systems 9, chap: 10 (pp. 191–204). Sharma, S. K., Sutton, R., Motwani, A., & Annamalai, A. (2014). Non-linear control algorithms for an unmanned surface vehicle. Proceedings of the Institution of mechanical engineers. Part M: Journal of Engineering for the Maritime Environment, 228(2), 146–155. Sonnenburg, C. R., & Woolsey, C. A. (2013). Modeling, identification, and control of an unmanned surface vehicle. Journal of Field Robotics, 30(3), 371–398. Sugeno, M. (1985). An introductory survey of fuzzy control. Information sciences, 36(1), 59–83. ´ Trybus, L., Swider, Z., & Stec, A. (2015). Tuning rules of conventional and advanced ship autopilot controllers. In Progress in Automation, Robotics and Measuring Techniques (pp. 303–311). Springer International Publishing. Wang, N., Dai, B., Liu, Y., & Han, M. (2014). Adaptive robust tracking control of surface vessels using dynamic constructive fuzzy neural networks. In Fuzzy Systems (FUZZ-IEEE) (pp. 377–382). 2014 IEEE International Conference on.

Wang, Y., Fu, H., & Liu, S. (2015). Adaptive fuzzy control based on variable universe for ship course. In Proceedings of the 2015 Chinese Intelligent Automation Conference (pp. 299–307). Springer Berlin Heidelberg. Wang, Q., Kang, M., Xu, J., & Xu, J. (2016). Autonomous sailboat track following control. In Robotic Sailing 2015 (pp. 125–136). Springer International Publishing. Xu, Q. (2014). USV course controller optimization based on elitism estimation of distribution algorithm. In Proceedings of IEEE Chinese Guidance, Navigation and Control Conference (CGNCC), 2014 (pp. 958–961). IEEE. Xu, H., & Soares, C. G. (2015). An optimized path following algorithm for a surface ship model. Towards Green Marine Technology and Transport, 151–158. Xu, H., & Soares, C. G. (2016). Vector field path following for surface marine vessel and parameter identification based on LS-SVM. Ocean Engineering, 113, 151–161. Yu, L., Liu, S., Liu, F., & Wang, H. (2015). Energy optimization of the fin/rudder roll stabilization system based on the multi-objective genetic algorithm (MOGA). Journal of Marine Science and Application, 14(2), 202–207. Yunsheng, F., Xiaojie, S., Guofeng, W., & Chen, G. (2015). On fuzzy self-adaptive PID control for USV course. In Proceedings of the 34th Chinese Control Conference (CCC), 2015 (pp. 8472–8478). IEEE. Zheng, H., Negenborn, R. R., & Lodewijks, G. (2014). Trajectory tracking of autonomous vessels using model predictive control. In Preprints of the 19th World Congress, The International Federation of Automatic Control. Zhixiang, L., Youmin, Z., Chi, Y., & Jun, L. (2015, July). An adaptive linear parameter varying fault tolerant control scheme for unmanned surface vehicle steering control. In Proceedings of the 34th Chinese Control Conference (CCC), 2015 (pp. 6197–6202). IEEE.

Please cite this article as: J.M. Larrazabal, M.S. Peñas, Intelligent rudder control of an unmanned surface vessel, Expert Systems With Applications (2016), http://dx.doi.org/10.1016/j.eswa.2016.01.057

942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966