robotics Article
Coordination of Multiple Biomimetic Autonomous Underwater Vehicles Using Strategies Based on the Schooling Behaviour of Fish Jonathan McColgan * and Euan W. McGookin Received: 13 November 2015; Accepted: 28 December 2015; Published: 13 January 2016 Academic Editors: Ingrid Schjølberg and Thor I. Fossen Division of Aerospace Sciences, School of Engineering, University of Glasgow, Glasgow G12 8QQ, UK;
[email protected] * Correspondence:
[email protected]; Tel.: +44-0141-330-2000
Abstract: Biomimetic Autonomous Underwater Vehicles (BAUVs) are Autonomous Underwater Vehicles (AUVs) that employ similar propulsion and steering principles as real fish. While the real life applicability of these vehicles has yet to be fully investigated, laboratory investigations have demonstrated that at low speeds, the propulsive mechanism of these vehicles is more efficient when compared with propeller based AUVs. Furthermore, these vehicles have also demonstrated superior manoeuvrability characteristics when compared with conventional AUVs and Underwater Glider Systems (UGSs). Further performance benefits can be achieved through coordination of multiple BAUVs swimming in formation. In this study, the coordination strategy is based on the schooling behaviour of fish, which is a decentralized approach that allows multiple AUVs to be self-organizing. Such a strategy can be effectively utilized for large spatiotemporal data collection for oceanic monitoring and surveillance purposes. A validated mathematical model of the BAUV developed at the University of Glasgow, RoboSalmon, is used to represent the agents within a school formation. The performance of the coordination algorithm is assessed through simulation where system identification techniques are employed to improve simulation run time while ensuring accuracy is maintained. The simulation results demonstrate the effectiveness of implementing coordination algorithms based on the behavioural mechanisms of fish to allow a group of BAUVs to be considered self-organizing. Keywords: robotic fish; coordination algorithms; mathematical modelling; biomimetic
1. Introduction Approximately 71% of the Earth’s surface is comprised of water [1], yet it is estimated that as much as 95% of this vast resource remains unexplored to a similar resolution that is available for the surface of the moon [2]. Although essential to all known life, the salt water medium which makes up the Earth’s oceans, and affects global climate and weather patterns also provides a hostile environment for exploration [3]. In particular, the oceans present a hazardous environment for the safe and successful operation of a group of underwater vehicles known as Autonomous Underwater Vehicles (AUVs). Unlike other autonomous platforms (e.g., Unmanned Aerial Vehicles (UAVs) and Unmanned Surface Vehicles (USVs)), AUVs are operated in an environment where access to accurate positional data and a reliable communication medium is severely limited. Nonetheless, AUVs have evolved from research platforms used exclusively by academic institutions in the 1950s through to the present day where these highly autonomous systems are used within the oil and gas industry for pipeline inspection [4] as well as being utilized for search and recovery missions [5], maritime surveillance [6], and sampling previously unexplored regions of the Earth such as under the Arctic ice pack [7]. Robotics 2016, 5, 2; doi:10.3390/robotics5010002
www.mdpi.com/journal/robotics
Robotics 2016, 5, 2
2 of 23
However, as a result of AUVs being untethered, the power available to these vehicles is finite and as such, their range and endurance is limited [8]. While it is now common for AUV mission endurance to be measured in days, the operation of a single vehicle for large spatiotemporal data collection operations, such as oil plume tracking [9], is inadequate. Therefore, the only way to satisfy this requirement is to operate a groups of AUVs within a multi-vehicle deployment which has been proven to improve the efficiency of current missions as described in [10,11]. Despite the improved efficiencies offered by multi-vehicle coordination, the difficulties associated with the underwater environment present a number of substantial technological barriers which must be overcome before fully autonomous multi-vehicle coordination is realized. At present, the greatest of these challenges is establishing a suitable communication strategy among the vehicles which is tolerant to the limitations of the underwater acoustic communication channel [3,12]. Nevertheless, a number of sea-trials have been completed since the start of the 21st century that have demonstrated not only the feasibility of operating multiple AUVs within a group structure but also the advantages of doing so [10,11]. While the trials discussed above are essential to the realization of a self-coordinating group of AUVs, the costs associated with completing such trials do not present an economically viable method to develop, test and analyse the various potential coordination algorithms associated with the deployment of a group of AUVs. Instead, extensive testing and optimization of the algorithms can be completed in a more time efficient manner using mathematical modelling and simulation techniques [13]. Mathematical modelling involves representing the dynamics and kinematics of a vehicle through a serious of differential equations that when integrated, simulate the motion of that particular vehicle. When used correctly, mathematical modelling provides a powerful tool through all phases of the design process. Therefore, this paper uses mathematical modelling techniques to accurately represent the dynamics of a particular type of AUV known as RoboSalmon, which has been designed, built and tested at the University of Glasgow [14]. RoboSalmon is classed as a Biomimetic Autonomous Underwater Vehicle (BAUV). These vehicles adopt the same propulsion and steering mechanisms as real fish [14–18] and in doing so, their propulsive mechanism has been found to be more efficient at low speeds when compared with traditional propeller based AUVs [19] but also poses far greater manoeuvrability characteristics [20]. As a result, BAUVs are more suited to operating in confined environments and therefore make an ideal candidate vehicle for assessing the feasibility of coordinating multiple vehicles in close proximity to one another. However, in order for a group of vehicles to complete the large scale spatiotemporal data collection missions discussed above, it is apparent that the vehicles must be able to coordinate themselves to ensure the given survey area is mapped efficiently. To achieve this, the coordination algorithms must ensure that all vehicles within the group are spaced appropriately, move with a common heading angle while avoiding collisions between neighbouring vehicles. One particular coordination strategy that satisfies the above criteria is related to the behavioural mechanism utilized by fish within large school structures. This mechanism enforces a number of behavioural zones around each fish, which, depending on the distance to its nearest neighbours, results in the fish manoeuvring in an attractive, orientating or repulsive manner [21–23]. Therefore, it is the aim of this paper to demonstrate that coordination algorithms based on the behavioural mechanisms of fish provides a suitable and easily adaptive method to allow a group BAUVs to be considered self-coordinating. Furthermore, the work presented in this paper shows the benefits of employing reduced fidelity versions of the current validated mathematical model of RoboSalmon for multi-vehicle coordination studies [20]. This study is presented in this paper in the following manner. Section 2 briefly describes the RoboSalmon vehicle and compares it with the other types of Unmanned Underwater Vehicles. It then discusses in detail the current mathematical model of RoboSalmon, its run time performance
Robotics 2016, 5, 2 Robotics 2016, 5, 2
3 of 23 3 of 23
methodologies implemented to improve its its run time. are and methodologies implemented to improve run time.Results Resultsfrom fromthe the validation validation process process are presented in order to ensure that the reduced fidelity models still accurately represent the dynamics presented in order to ensure that the reduced fidelity models still accurately represent the dynamics of of the RoboSalmon vehicle. Section 3 willdescribe describethe theimplementation implementationofofthe thecoordination coordinationalgorithms algorithms the RoboSalmon vehicle. Section 3 will discussed above with the inclusion of realistic communication constraints. Section 4 presents the discussed above with the inclusion of realistic communication constraints. Section 4 presents the results from the simulations involving the coordination algorithms and finally, Section 5 presents the results from the simulations involving the coordination algorithms and finally, Section 5 presents the conclusions of of the the work work completed completed in in this this paper. paper. conclusions 2. RoboSalmon—Biomimetic 2. RoboSalmon—Biomimetic Autonomous Autonomous Underwater Underwater Vehicle Vehicle (BAUV) (BAUV) 2.1. 2.1. Vehicle Vehicle Design Design The vehicle is based on on thethe North Atlantic Salmon (see Figure 1a). This The design designofofthe theRoboSalmon RoboSalmon vehicle is based North Atlantic Salmon (see Figure 1a). particular species of fishof is fish considered to be oftosubcarangiform which means 50%–60% of its body is This particular species is considered be of subcarangiform which that means that 50%–60% of its used the propulsive wave required to generate the body’s Therefore, in order bodyto is generate used to generate the propulsive wave required to generate themotion body’s[16]. motion [16]. Therefore, to this particular type of locomotion, the RoboSalmon vehicle (Figure 1b) is composed of two in mimic order to mimic this particular type of locomotion, the RoboSalmon vehicle (Figure 1b) is composed sections: a forward rigid body and a and fullya actuated segmented tail section, which allows the of two sections: a forward rigidsection body section fully actuated segmented tail section, which allows swimming gait gait of the Atlantic Salmon to betoreplicated. the swimming of North the North Atlantic Salmon be replicated.
(a)
(b)
Figure 1. RoboSalmon BAUV designed and built at the University of Glasgow [20]: (a) RoboSalmon Figure 1. RoboSalmon BAUV designed and built at the University of Glasgow [20]: (a) RoboSalmon vehicle; and (b) Schematic diagram. Reproduced with permission from Naddi Mazlan, PhD vehicle; and (b) Schematic diagram. Reproduced with permission from Naddi Mazlan, PhD Thesis [20]. Thesis.[20]
In In order order to to assess assess RoboSalmon’s RoboSalmon’s performance performance against against that that of of other other Unmanned Unmanned Underwater Underwater Vehicles (UUVs), a number of performance parameters are presented in Vehicles (UUVs), a number of performance parameters are presented in Table Table 11 for for comparison comparison purposes. The data contained within Table 1 can be obtained from [20,24–28]. purposes. The data contained within Table 1 can be obtained from [20,24–28]. Table 1. Typical performance parameters for the various classes of UUVs. Table 1. Typical performance parameters for the various classes of UUVs. Class of AUV
Vehicle Name
AUV
Iver2-580 Bluefin-9M
Class of AUV
UGS
Vehicle Length (m) Vehicle
Vehicle Name
Iver2-580 AUV SLOCUM Bluefin-9M Spray
SLOCUM UGS RoboSalmon BioSwimmerSpray
1.6Length (m) 2.5 1.52 2
1.6 2.5
Surge Velocity Surge (m/s) 2.06 (m/s) Velocity 2.57
2.06 0.2 2.57
0.26
Turning TurningRadius (m) 4 Radius (m)
4 2.63 2.63 7 30
1.52 0.2 7 0.9 0.14 0.6 BAUV 2 0.26 30 1.52 2.57 1 RoboSalmon 0.9 0.14 0.6 BAUV BioSwimmer 1.52 length the manoeuvrability 2.57 1 As presented in Table 1, for vehicles of similar characteristics of BAUVs are superior to those achievable using AUVs and UGS which would suggest that these vehicles As presented in to Table 1, for within vehicles of similar length the[29]. manoeuvrability of are particularly suited operating confined environments The following characteristics section describes BAUVs are superior to those achievable using AUVs and UGS which would suggest that these in detail the current validated mathematical model of the RoboSalmon vehicle. vehicles are particularly suited to operating within confined environments [29]. The following section describes in detail the current validated mathematical model of the RoboSalmon vehicle.
Robotics 2016, 5, 2
4 of 23
Robotics 2016, 5, 2
4 of 23
2.2. Mathematical Mathematical Model Model 2.2. As shown shown in in Figure model of of RoboSalmon RoboSalmon can can be be separated separated into into three three As Figure 2, 2, the the mathematical mathematical model subsystems: Tail Actuator Dynamics, Vehicle Dynamics and finally, the vehicle’s Guidance System. subsystems: Tail Actuator Dynamics, Vehicle Dynamics and finally, the vehicle’s Guidance System.
Figure 2. Mathematical model structure. Figure 2. Mathematical model structure.
The values within each subsystem of Figure 2 demonstrate the various rates at which The values within each subsystem of Figure 2 demonstrate at which functionality is evaluated within the model, ranging from 1000 the Hz various down torates a single hertz.functionality As a result, is evaluated within the is model, 1000dynamics Hz down to asmaller single time hertz. As a result, the the mathematical model able toranging evaluatefrom the fast with constants while the mathematical model is able to evaluate the fast dynamics with smaller time constants while slower dynamic sections are evaluated with larger time constants. This methodology, knownthe as slower dynamic sections are evaluated with larger efficiency time constants. methodology, known multi-rate simulation, improves the computational of the This model without sacrificing as multi-rate simulation, improves thesubsystem computational efficiency of the model without sacrificing numerical accuracy. Finally, each of the presented in Figure 2 are described in more detail numerical accuracy. Finally, each of the subsystem presented in Figure 2 are described in more detail in the following sections. in the following sections. 2.2.1. Tail Actuator Dynamics 2.2.1. Tail Actuator Dynamics As mentioned previously, the purpose of the fully actuated tail section of the vehicle is to As mentioned previously, the fully of the the vehicle is tomotion replicate replicate the swimming gait ofthe thepurpose Atlanticofsalmon. It actuated achieves tail thissection through combined of the swimming gait of the Atlantic salmon. It achieves this through the combined motion of ten, ten, individually controlled revolute joints attached to a replica caudal fin. The structure of the system individually controlled revolute joints attached a replica caudal fin. Theisstructure of the system used used to control this motion of each motor withintothe mathematical model presented below in Figure to control this motion of each motor within the mathematical model is presented below in Figure 3. 3.
Figure 3. Structure of tail actuator system within mathematical model. Figure 3. Structure of tail actuator system within mathematical model.
Figure 3 demonstrates that the input for each motor, j, is a user defined step angle. These angles Figure 3indemonstrates that the the input for each motor, is aactual user defined step angle. are defined terms of replicating swimming gait ofj,the fish [14]. They are These chosenangles such are defined in termsmotion of replicating gait of the actual [14]. They are chosen such that that the resultant of the the tail swimming is an approximation of thefish travelling wave equation which the resultant motion of the tail is an approximation of the travelling wave equation which Lighthill Lighthill suggested replicates the undulatory nature of fish locomotion [30]. suggested replicates the undulatory nature of fishdefined locomotion As shown in Figure 3, for each motor, i, the step [30]. angles are compared with the motor’s As angular shown in Figure to 3, for each motor, i, angle, the defined step angles are compared with system. the motor’s present position produce an error 𝛥θ𝑗 which is the input to the control The present angular position to produce an error angle, ∆θ which is the input to the control system. j represented by the following equation: The control system is a standard PID controller which can be control system is a standard PID controller which can be represented by the following equation: 𝑑𝛥θ𝑗 (1) 𝑉𝑗 = 𝐾𝑝 𝛥θ𝑗 + 𝐾𝑖 ∫ ż 𝛥θ𝑗 𝑑𝑡 + 𝐾𝑑 𝑑𝑡 d∆θ j Vj “ K p ∆θ j ` Ki ∆θ j dt ` Kd (1) dt where 𝛥θ represents the aforementioned comparison error between the required and demanded motor angle and 𝑉 represents the required voltage from each motor to achieve the desired step where ∆θ represents𝑗 the aforementioned comparison error between the required and demanded motor angle. 𝐾𝑝 , 𝐾𝑖 and 𝐾𝑑 are the proportional, integral and derivative gains, respectively, which are angle and Vj represents the required voltage from each motor to achieve the desired step angle. K p , Ki tuned to produce the required response. The voltage, Vj generated by the controller for each motor is and Kd are the proportional, integral and derivative gains, respectively, which are tuned to produce the applied as an input to the mathematical model of the motors which can be represented by the required response. The voltage, Vj generated by the controller for each motor is applied as an input to following differential equations: the mathematical model of the motors which can be represented by the following differential equations: 𝑑𝑖𝑗 𝑑θ𝑗 (2) 𝐿di j + 𝑅𝑖𝑗 = 𝑉𝑗 − 𝐾𝑡 dθ j 𝑑𝑡 L ` Ri j “ Vj ´ Kt 𝑑𝑡 (2) dt𝑑 2 θ dt 𝑑θ 𝑗 𝑗 (3) 𝐽 2 +𝑏 = 𝐾𝑡 𝑖𝑗 𝑑𝑡 𝑑𝑡
Robotics 2016, 5, 2
5 of 23
J
dθ j d2 θ j `b “ Kt i j dt dt2
(3)
where L is the motor inductance, i is the current, R is the resistance, V is the voltage applied (evaluated dθ d2 θ using Equation (1)), and 2 are the motor angular velocities and accelerations, respectively, J is dt dt the moment of inertia, b is a damping constant, Ke is a motor constant, and Kt is the torque coefficient. Equations (2) and (3) are rearranged and numerically integrated to evaluate the updated angular displacement, θ, for each motor based on the applied voltage evaluated using Equation (1). As the simulation continuous, the values for these angular displacements should begin to be approximate the defined step angles described previously to ensure that the swimming gait of Atlantic salmon is replicated as accurately as possible. 2.2.2. Vehicle Dynamics and Guidance System The dynamics of the RoboSalmon vehicle can be presented in state-space form using the equation presented below which is based on the work presented in [31]. « ¨ ff ν ¨
η
« “
ff « ff ` ` ˘˘ ff « M´1 ´ C pνq ` D pνq ` g pηq ν´1 ν M´1 ` τ J pηq η 0
(4)
In the above equation, M represents the mass/inertia matrix, C is the Coriolis matrix, D is the damping matrix, ν is the state vector containing the Body-fixed velocities (u,v,w,p,q,r), τ is the input force/moment vector, g is the gravitational force/moment vector, η represents the Earth-fixed dynamic variables (xe ,ye ,ze ,θV , φV , ψV ) and J is the Euler transformation matrix. The primary assumption made when modelling the RoboSalmon vehicle was to assume that the centre of gravity of the vehicle is collocated at the origin of the body axes. Furthermore, only motion in the horizontal plane is taken into consideration. Consequently, the combination of the above two factors as well as assuming that the vehicle is neutrally buoyant results in a simplified version of the 6 DoF Equations of Motion being utilised to describe the vehicle’s dynamics. The states evaluated are summarized in Table 2. Table 2. Body-fixed and Earth-fixed parameters. Body Fixed Velocities
Parameter
Earth Fixed Variables
Parameter
Surge Sway Yaw
u v r
X-Coordinate Y-Coordinate Heading Angle
xe ye ψV
A thorough description and review of the functionality contained within each of the above matrices to evaluate the states presented in Table 2 is presented in [14,20]. Furthermore, the guidance system is based on a Line-of-Sight (LOS) algorithm being utilized in conjunction with a PI heading controller and again, [14,20] describe, in detail, the functionality relating to the vehicle’s Guidance System. 2.3. Model Performance In mathematical modelling, model performance is used to analyse the quality of a model with respect to its ability to accurately represent the dynamics of the physical system [13]. Furthermore, it is widely accepted that in order to improve accuracy, the complexity of the model has to increase which in turn has the undesirable effect of increasing the simulation execution time. However, Sergent [32] suggested that a model should be developed for a specific purpose and its validity measured with respect to that purpose. This would imply that in certain circumstances, an overly complex model is not required and the fidelity of the model should be appropriate to the investigations being completed.
Robotics 2016, 5, 2
6 of 23
Consequently, while the above model has been validated against hardware data, its applicability to be Robotics 2016, 5, 2 6 of 23 used to simulate multi-vehicle scenarios in a time efficient manner has yet to be established. Therefore, it is the of the to determine validityten andidentical applicability in this respect. Toaim allow thefollowing executionsection time of the modelthe to model’s be evaluated, simulations where To allow the execution time of the model to be evaluated, ten identical simulations where performed using the MATLAB software package [33]. In each instance, 200 s worth of simulated data performed using the and MATLAB software [33]. each In each instance,noted. 200 s worth of simulated data has been evaluated the time taken package to complete simulation An average simulation has been evaluated and the been time taken to complete each simulation An average simulation execution time of 143 s has evaluated. This is the equivalent of noted. one second in simulation time execution time of 143 s has been evaluated. This is the equivalent of one second in simulation time taking approximately 0.7 s in real time to evaluate. However, this value does not provide sufficient taking 0.7 s time in real time toby evaluate. However, this value provide sufficient insightapproximately into the execution utilized the different elements withindoes the not model. Therefore, the insight into the execution time utilized by the different elements within the model. Therefore, the MATLAB profiler tool is utilized to evaluate the execution time of each of the subsystems described MATLAB tool isare utilized to evaluate the execution of each in Figure profiler 2. The results presented in graphical form intime Figure 4. of the subsystems described in Figure 2. The results are presented in graphical form in Figure 4. 100 90 80 70 60 50 40 30 20 10 0
Tail Actuator Dynamics
Tail Kinematics and Vehicle Dynamics
Guidance System
Figure 4. Percentage simulation time evaluating functionality within different subsystems. Figure 4. Percentage simulation time evaluating functionality within different subsystems.
ItIt is is clear clear from from Figure Figure 44 that that the the vast vast majority majority of of the the execution execution time time can can be be attributed attributed to to the the Tail Tail Actuator Dynamics section of the model. The reasons for the above findings are due to a number Actuator Dynamics section of the model. The reasons for the above findings are due to a number of of factors. The first first of of which which isisthe thedecision decisiontotoevaluate evaluatethe thefunctionality functionalitywithin withinthis this section a rate factors. The section at at a rate of of 1000 Hz.Secondly, Secondly,the theapplication applicationofofaa4th 4th Order Order Runge-Kutta Runge-Kutta solver solver to 1000 Hz. to numerically numerically integrate integrate Equations (3) results results in in these theseequations equationsbeing beingevaluated evaluatedfour fourtimes timesevery every one thousandth Equations (2) (2) and and (3) one thousandth of of a second. Finally, the fact that the tail section is comprised of 10 motor joints means a second. Finally, the fact that the tail section is comprised of 10 motor joints means that that the the functionality functionality within within this this section section is is evaluated evaluated ten ten times. times. The The resulting resulting combination combination of of these these factors factors results in the functionality within the Tail Actuator Dynamics being evaluated 40,000 times per second. results in the functionality within the Tail Actuator Dynamics being evaluated 40,000 times per Furthermore, if the present is model utilizedisto simulate multi-vehicle scenarios,scenarios, the number times second. Furthermore, if themodel present utilized to simulate multi-vehicle the of number this functionality would have to be evaluated would increase of times this functionality would have to be evaluated woulddramatically. increase dramatically. Therefore, it can be concluded that the model described Therefore, it can be concluded that the model described above, above, in in its its current current form, form, is is unsuitable unsuitable for for simulating simulating multi-vehicle multi-vehicle scenarios. scenarios. The The reason reason one one can can arrive arrive at at this this conclusion conclusion is is due due to to the the fact fact that investigations into multi-vehicle cooperation are primarily concerned with the interaction between that investigations into multi-vehicle cooperation are primarily concerned with the interaction individual vehicles. These interactions can be investigated through analysis the states between individual vehicles. These interactions can be investigated throughofanalysis ofpresented the states in Table 2 and consequently the evaluation of the parameters associated associated with the motion of the tail presented in Table 2 and consequently the evaluation of the parameters with the motion (Equations (1)–(3)) is unnecessary and as shown in Figure 4, computationally expensive. of the tail (Equations (1)–(3)) is unnecessary and as shown in Figure 4, computationally expensive. The The following following section section describes describes the the techniques techniques implemented implemented to to remove remove the the unnecessary unnecessary and and computationally expensive functionality of the Tail Actuator Dynamics section while still being able to computationally expensive functionality of the Tail Actuator Dynamics section while still being able accurately evaluate the motion of the caudal fin. to accurately evaluate the motion of the caudal fin. 2.4. Model Reduction 2.4. Model Reduction As demonstrated above, the mathematical model of RoboSalmon is built upon established As demonstrated above, the mathematical model of RoboSalmon is built upon established relationships between system parameters such as those presented in Equations (2) and (3). While relationships between system parameters such as those presented in Equations (2) and (3). While providing the user with the greatest physical insight into the dynamics of the system, mathematical models designed in this way are well-known to produce computationally expensive simulations [13]. However, system identification techniques can be used to replace complex white-box models with simplified mathematical relationships. These simplified expressions, if evaluated appropriately,
Robotics 2016, 5, 2
7 of 23
providing the user with the greatest physical insight into the dynamics of the system, mathematical models designed in this way are well-known to produce computationally expensive simulations [13]. However, Robotics 2016, 5, 2 system identification techniques can be used to replace complex white-box models 7 of 23 with simplified mathematical relationships. These simplified expressions, if evaluated appropriately, can accurately represent the dynamics of a system while producing a significant reduction in the computational This process process of representing a system’s dynamics through abstract computational effort required. This mathematical expressions is known as black-box modelling [31], which provide zero physical insight to the system. Therefore, the following section will describe the implementation of two system identification techniques known as Artificial Neural Networks Networks (ANNs) (ANNs) and and Look Look Up Up Tables Tables (LUTs) to replace the functionality contained contained within tail actuator dynamics of the RoboSalmon model. functionality within tail actuator dynamics section ofsection the RoboSalmon model. Consequently, Consequently, alternative, fidelitymodels mathematical for the RoboSalmon vehicle two alternative,two reduced fidelityreduced mathematical for the models RoboSalmon vehicle will be created will be structure created whose structure that of the original model as shown below whose will vary from will that vary of thefrom original model as shown below in Figure 5. in Figure 5.
Figure 5. Comparison of original model structure (a) and model structure with tail actuator dynamics Figure 5. Comparison of original model structure (a) and model structure with tail actuator dynamics and tail kinematics subsystems replaced with system identification techniques (b). and tail kinematics subsystems replaced with system identification techniques (b).
Figure 5 illustrates that within the alternative, reduced fidelity models, the system identification Figure will 5 illustrates thatTail within the alternative, reduced fidelity models, the system identification techniques replace the Actuator Dynamics and Tail Kinematics subsystems. Consequently, the techniques will replace the Tail Actuator Dynamics and Tail Kinematics subsystems. Consequently, techniques implemented must be able to replicate the motion of the caudal fin. Therefore, in orderthe to techniques implemented must be able to replicate the motion of the caudal fin. Therefore, in order successfully implement these system identification techniques, the evolution of the caudal fin’s to successfully implementthroughout these system techniques, therange evolution ofbe theanalysed. caudal fin’s position and orientation the identification vehicle’s entire operational has to As position and orientation throughout the vehicle’s entire operational range has to be analysed. shown in Figure 6, in order to complete turning manoeuvres, the centreline of the tail section hasAs to shown in Figure 6, in order to complete turning manoeuvres, the centreline of the tail section has to be be deflected by an angle, δ 𝑇 . If the vehicle is instructed to move to the right, δ 𝑇 is positive and deflected byδan angle, δT . If the vehicle is instructed to move to the right, δT is positive and conversely conversely 𝑇 is negative if a turn to the left is instructed, Furthermore, the magnitude of δ 𝑇 can be δ is negative turn todirection the left isand instructed, Furthermore, the magnitude of δTthe canoperational be as large as 90˝ asT large as 90°ifina either therefore for the purposes of this paper, range in direction andclassified thereforeinfor the purposes of this paper,from the operational of either the vehicle can be terms of, δ 𝑇 which ranges −90° to 90°. range of the vehicle can be classified in terms of, δT which ranges from ´90˝ to 90˝ .
Robotics 2016, 5, 2 Robotics 2016, 5, 2 Robotics 2016, 5, 2
8 of 23 8 of 23 8 of 23
Figure 6. Tail centre deflection of RoboSalmon vehicle [20]. Reproduced with permission from Naddi Figure 6. Tail centre deflection of RoboSalmon vehicle [20]. Reproduced with permission from Naddi Figure Tail centre deflection of RoboSalmon vehicle [20]. Reproduced with permission from Naddi Mazlan,6.PhD Thesis.[20] Mazlan, PhD Thesis.[20] Mazlan, PhD Thesis [20].
In order to analyse the motion of the caudal fin, open loop simulations were completed which In order to analyse the motion of the caudal fin, open loop simulations were completed which altered the value of δ 𝑇 to allow the of motion of the fin, caudal finloop throughout its entire range In to analyse the motion the caudal open simulations were operational completed altered order the value of δ 𝑇 to allow the motion of the caudal fin throughout its entire operationalwhich range to be analysed. altered the value of δ to allow the motion of the caudal fin throughout its entire operational range to T to be analysed. By analysing Figure 7, a number of conclusions can be made about the caudal fin’s motion. The be analysed. By analysing Figure 7, a number of conclusions can be made about the caudal fin’s motion. The first By and perhaps most obvious is theofcyclical naturecan of themade response. is not unexpected all, 7, a number conclusions aboutThis the caudal fin’s motion.at first andanalysing perhaps Figure most obvious is the cyclical nature of be the response. This is not unexpected atThe all, and and is inperhaps fact referred to as the isTail Beat Frequency of the vehicle which in this particular instance, is first most obvious the cyclical nature of the response. This is not unexpected at all, and and is in fact referred to as the Tail Beat Frequency of the vehicle which in this particular instance, is equal to 1referred Hz. Secondly, itTail is evident that during transitioning phases, the response of the caudal fin’s is in fact to as the Beat Frequency of the vehicle which in this particular instance, is equal to equal to 1 Hz. Secondly, it is evident that during transitioning phases, the response of the caudal fin’s is dependable on the and sign ofphases, δ . Finally, unlike the response theposition caudal 1position Hz. Secondly, it is evident thatmagnitude during transitioning the response of the caudal of fin’s position is dependable on the magnitude and sign of δ𝑇𝑇 . Finally, unlike the response of the caudal findependable position, the of the throughout and unaffected by the is on orientation the magnitude andcaudal sign offin δTremains .remains Finally, cyclical unlike the response of theis fin position, fin position, the orientation of the caudal fin cyclical throughout and iscaudal unaffected by the transitioning phases. Therefore, the abovecyclical factors have to be taken into consideration when the LUTs the orientation of the caudal fin remains throughout and is unaffected by the transitioning transitioning phases. Therefore, the above factors have to be taken into consideration when the LUTs are constructed architecture the ANNinto is established as when will be demonstrated in the phases. Therefore,and the the above factors haveof be taken consideration LUTs are constructed are constructed and the architecture oftothe ANN is established as will the be demonstrated in the following sections. of the ANN is established as will be demonstrated in the following sections. and the architecture following sections.
Figure 7. 7. Evolution of of caudal fin fin position and and orientation for for various tail tail centreline deflection deflection angles Figure Figure 7. Evolution Evolution of caudal caudal fin position position and orientation orientation for various various tail centreline centreline deflection angles angles within the operational range of the vehicle. (above) The tail centreline deflection angle; (middle) The The within the operational range of the vehicle. (above) The tail centreline deflection angle; (middle) within the operational range of the vehicle. (above) The tail centreline deflection angle; (middle) The evolution of of the lateral lateral position of the caudal fin due to the different tail centreline deflection angles ;; evolution evolution of the the lateral position position of of the the caudal caudal fin fin due due to to the the different different tail tail centreline centreline deflection deflection angles angles ; (below) The The evolution evolution of of the the caudal caudal fin fin angle. angle. (below) (below) The evolution of the caudal fin angle.
Robotics 2016, 5, 2
9 of 23
Robotics 2016, 5, 2
9 of 23
2.4.1. Look Up Tables 2.4.1. Look Up Tables In order for a LUT to be constructed, the combination of variables which produces a unique In order for a LUT to be constructed, the combination of variables which produces a unique solution to the functionality being replaced must be identified. To replace the functionality evaluating solution to the functionality being replaced must be identified. To replace the functionality evaluating the position of the caudal fin, three variables are required: the current tail centre deflection angle, θTC , the position of the caudal fin, three variables are required: the current tail centre deflection angle, θTC, the required change in tail centreline deflection angle, δT and the present point in the cycle, t. As a the required change in tail centreline deflection angle, δ 𝑇 and the present point in the cycle, t. As a result, the LUT can be considered a three dimensional structure where every possible combination of result, the LUT can be considered a three dimensional structure where every possible combination of the above three variables produces a unique solution (and position in space). the above three variables produces a unique solution (and position in space). In order to populate the above structure with the relevant values, the model described in In order to populate the above structure with the relevant values, the model described in Section Section 2.2.1—2.2.1 is evaluated for all possible integer combinations of the above three variables and 2.2.1—2.2.1 is evaluated for all possible integer combinations of the above three variables and the the unique solutions indexed within a LUT. As it is unlikely that θTC and δT will be integer values, a unique solutions indexed within a LUT. As it is unlikely that θTC and δ 𝑇 will be integer values, a linear interpolation function is implemented to evaluate the caudal fin’s position for decimal values of linear interpolation function is implemented to evaluate the caudal fin’s position for decimal values these parameters as shown below in Equation (5). of these parameters as shown below in Equation (5). px (xθ TC ´ − xxθθTC´1 )q TC−1 yθyTC “ y yTC´1 ` pyθθTC`1 ´−yyθθTC´1 q) θTC θTC = θ θTC−1 + (y TC+1 TC−1 px ´ q (xθθTC`1 − xθθ𝑇𝐶−1 TC´1) 𝑇𝐶+1
(5) (5)
where,yθTC yθTCrepresents represents interpolated caudal fin position relating the decimal value θTC, where, thethe interpolated caudal fin position relating to theto decimal value of θTC , of yθTC`1 yθTC+1 yrepresent the caudal fin’s position obtained the up look up table formaximum the maximum and yθand the caudal fin’s position obtained from from the look table for the and θTC−1 represent TC´1 and minimum integer values relating to θ TC. x is the decimal value of θ TC , and x and x minimum integer values relating to θTC . xθTC θis and xθTC´1θTC−1 are θTC+1 TCthe decimal value of θTC , and xθTC`1 are index the index values to obtain yθTC+1 𝑦θTC−1 the LUT. the values usedused to obtain yθTC`1 andand yθTC´1 fromfrom the LUT. Furthermore, inin a similar manner butbut is Furthermore,the theLUT LUTfor forthe theorientation orientationofofthe thecaudal caudalfinfinisisconstructed constructed a similar manner simplified as only one one variable, the present point point in the in cycle, required to produce a uniqueasolution is simplified as only variable, the present the iscycle, is required to produce unique to the relevant solution to the functionality. relevant functionality. The The above above two two LUTs LUTs are areimplemented implemented within within the the mathematical mathematical model model using using multidimensional multidimensional arrays arrays which which are are evaluated evaluated 200 200 times times per per second secondusing usingthe theinputs inputsshown shownin inFigure Figure8.8.
Figure 8. Input/output structure of LUTs. Figure 8. Input/output structure of LUTs.
The values of θTC and δ 𝑇 are evaluated at the same frequency as the Guidance System The values of θTC5) and δTtare at the same as the Guidance functionality functionality (Figure and is aevaluated counter whose valuefrequency ranges between one and System two hundred and is (Figure 5) and t is a counter whose value ranges between one and two hundred and is reset to one reset to one every time functionality within the Guidance System is evaluated. every time functionality within the Guidance System is evaluated. 2.4.2. Artificial Neural Networks 2.4.2. Artificial Neural Networks An ANN can be classified as an interconnected graph of simple mathematical functions whose An ANN can be classified as an interconnected graph of simple mathematical functions whose operation can loosely be described as mimicking the function of the brain [34,35]. Like the brain, ANN operation can loosely be described as mimicking the function of the brain [34,35]. Like the brain, ANN have the inherent ability to learn from the data it processes and as such, they can be considered as an have the inherent ability to learn from the data it processes and as such, they can be considered as an ideal function approximation tool for estimating the unknown mapping between a set of inputs, X ideal function approximation tool for estimating the unknown mapping between a set of inputs, X and and corresponding outputs, Y. Therefore, this would appear to be an appropriate methodology to corresponding outputs, Y. Therefore, this would appear to be an appropriate methodology to evaluate evaluate the mapping between the parameters discussed in the previous section (θTC, δ 𝑇 , t) and the the mapping between the parameters discussed in the previous section (θTC , δT , t) and the caudal caudal fin’s position. fin’s position. However, in order to provide an accurate mapping, the ANN has to be supplied with training However, in order to provide an accurate mapping, the ANN has to be supplied with training data to allow it to “learn” the specific values of the interconnecting weights (wij and wkj in Figure 9), data to allow it to “learn” the specific values of the interconnecting weights (wij and wkj in Figure 9), which will produce the desired mapping. This training data were obtained from the original model and is selected specifically to ensure the entire operational range of the vehicle is included.
Robotics 2016, 5, 2
10 of 23
which will produce the desired mapping. This training data were obtained from the original model and is selected specifically to ensure the entire operational range of the vehicle is included. Robotics 2016, 5, 2 10 of 23
Figure 9. Input layer (Left, Blue); hidden layer (Middle, Red) and output layer (Right, Green) of
Figure 9. Input layer (Left, Blue); hidden layer (Middle, output (Right, Green) of standard artificial neural network with connections betweenRed) layers and represented by layer Arrows. standard artificial neural network with connections between layers represented by Arrows. In this study, the ANN contains two inputs, θTC and δ 𝑇 , and produces 200 outputs. The outputs represent the position of the caudal fin every 0.05 s for the unique combination of θ and δθ . This In thisparticular study, the ANN contains two inputs, θTCnumber and δofT ,iterations and produces 200 outputs. The outputs structure has been chosen to reduce the required within the training represent the position of the fin every 0.05 s for thethe unique combination of θ and δθ . This scheme of the ANN andcaudal thus decrease the time taken to train network. In order to allow network evaluate thenumber values of of theiterations interconnecting weights, a training particular structure has beenthe chosen to to reduce the required within the training algorithm has to be implemented that will produce the correct outputs, Y based on the corresponding scheme of the ANN and thus decrease the time taken to train the network. inputs, X. In the work completed in this paper, the backpropagation training algorithm is In order to allow the network to evaluate the values of the interconnecting weights, a training implemented which is a gradient descent algorithm that uses the difference between the “training algorithm has toand be the implemented that will the correct outputs, Y based on to thealter corresponding data” current outputs from theproduce neural network. The difference obtained is used the values of the interconnecting weights to allow the network to produce a more accurate mapping inputs, X. In the work completed in this paper, the backpropagation training algorithm is implemented X descent and Y. Furthermore, difference is used within abetween cost function determine data” when and the which is a between gradient algorithmthis that uses the difference theto“training network has produced a satisfactory mapping and hence the training algorithm can be stopped. The current outputs from the neural network. The difference obtained is used to alter the values of the cost function implemented is the well-known Mean-Squared Error which can be represented by the interconnecting weights to allow the network to produce a more accurate mapping between X and Y. following equation: 𝑁 Furthermore, this difference is used within a cost function to determine when network has produced a 1 2 (6) 𝐶(𝑤) = ∑(𝑌 − 𝑌 𝑘 𝑘 ) stopped. The cost function implemented satisfactory mapping and hence the training algorithm can be 𝑁 𝑘=1 is the well-known Mean-Squared Error which can be represented by the following equation:
where, N represents the number of outputs from the network, 𝑌𝑘 represents the value of the target data and 𝑌𝑘 is the value obtained from the neural network for a specific set of interconnecting N ˘2 1 ÿ` weights. Cpwq “ Y k ´ Yk (6) N begin an initial set of interconnecting weights must Before the backpropagation algorithm can k “1 be supplied and in the work completed in this paper, the MATLAB rand number generator was used to produce random values between ±0.5. where, N represents the number of outputs from the network, Y k represents the value of the target The above process is repeated for the implementation of an ANN to evaluate the orientation of data and Ykthe is caudal the value obtained the being neural a specific of interconnecting fin with the only from difference thenetwork reduction for in the number ofset inputs from two to one. weights. BeforeInthe can beginofan interconnecting weights must be thisbackpropagation instance the input is algorithm equal to the amplitude theinitial caudal set fin’sof motion.
supplied and in the work completed in this paper, the MATLAB rand number generator was used to 2.5. Validation of Mathematical Models produce random values between ˘0.5. the purpose of the model is to implement coordination algorithms for multi-vehicle scenarios, The aboveAsprocess is repeated for the implementation of an ANN to evaluate the orientation of it is imperative that the two models produced are still able to accurately represent the dynamics of the caudal fin with the only difference being thethe reduction inexecution the number the vehicle while, at the same time, reducing simulation time. of inputs from two to one. In this instance the equalthat to the theabove amplitude caudal fin’s motion. In input order toisensure criterionof arethe satisfied, simulations completing the well-known open loop zigzag and turning circle manoeuvres where completed for the original model as well as the two reduced fidelity models and the results from each simulation compared. Furthermore, the 2.5. Validation of Mathematical Models simulations where designed to ensure the entire operational range of the vehicle was tested as shown
As theinpurpose Table 3. of the model is to implement coordination algorithms for multi-vehicle scenarios, it is imperative that the two models produced are still able to accurately represent the dynamics of the vehicle while, at the same time, reducing the simulation execution time. In order to ensure that the above criterion are satisfied, simulations completing the well-known open loop zigzag and turning circle manoeuvres where completed for the original model as well as the two reduced fidelity models and the results from each simulation compared. Furthermore, the simulations where designed to ensure the entire operational range of the vehicle was tested as shown in Table 3.
Robotics 2016, 5, 2
11 of 23
Robotics 2016, 5, 2 Table
3. Tail centre deflection angles implemented within validation simulations.
Robotics 2016, 5, 2
11 of 23 11 of 23
Table 3. Tail centreZigzag deflection angles implemented within validation simulations. Manoeuvre Turning Circle Manoeuvre Table 3. Tail centre deflection angles implemented within validation simulations.
Tail Centreline Deflection Angles TailImplemented Centreline Deflection
Zigzag ´45˝ toManoeuvre 45˝ ˝ (5 Intervals) Zigzag Manoeuvre −45° to 45°
Turning Circle Manoeuvre (´50, ´60, ´70, ´80, ´90, 50, 60, 70, 80, 90)˝ Turning Circle Manoeuvre (−50, −60, −70, −80, −90, 50, 60, 70, 80, 90)° (−50, −60, −70, −80, −90, 50, 60, 70, 80, 90)°
Tail Centreline Deflection −45° to 45° Angles Implemented (5° Intervals) Angles Implemented (5° Intervals) Various techniques can be implemented to estimate the similarity between two sets of data and Various techniques can be implemented estimate the similarity between two sets of data and thus allow a determination of whether or not thetotwo reduced fidelity models are still able to accurately can be to estimate similarity between two are sets still of data thus Various allow atechniques determination ofimplemented whether or not the twothe reduced fidelity models ableand to represent the dynamics of the RoboSalmon vehicle. The first and simplest technique is to compare thus allow represent a determination of whether or not the two reduced still ableis to accurately the dynamics of the RoboSalmon vehicle. The fidelity first andmodels simplestare technique to the results from the open loop manoeuvres for each simulation graphically. Although impractical accurately represent dynamics of the Thesimulation first and simplest technique is to compare the results the from the open loopRoboSalmon manoeuvresvehicle. for each graphically. Although to present all the thetoresults results in Figures 10 and 11 10 demonstrate how similar the results compare theresults open form, loop manoeuvres for each simulation graphically. Although impractical presentfrom allgraphical the in graphical form, Figures and 11 demonstrate how similar produced from the different models are in relation to one another. impractical to presentfrom all the in graphical Figures and 11 demonstrate how similar the results produced theresults different models areform, in relation to10 one another. the results produced from the different models are in relation to one another.
Figure 10. Comparison of the heading angle results produced from the Zigzag manoevre using the
Figure 10. Comparison of the heading angle results produced from the Zigzag manoevre using the three models—original ANN model andproduced LUT model. Figure 10. Comparison valid of themodel, heading angle results from the Zigzag manoevre using the three models—original valid model, ANN model and LUT model. three models—original valid model, ANN model and LUT model.
Figure 11. Comparison of the trajectories obtained from turning circle manoeuvre using the three models—original valid model, ANN modelobtained and LUTfrom model. Figure 11. Comparison of the trajectories turning circle manoeuvre using the three Figure 11. Comparison of the trajectories obtained from turning circle manoeuvre using the three models—original valid model, ANN model and LUT model.
models—original valid model, ANN model and LUT model.
Robotics 2016, 5, 2
12 of 23
As demonstrated by the results in Figures 10 and 11 visually, it is hard to ascertain the difference between the results from the various models and therefore an alternative, quantitative technique is required. The particular quantitative technique implemented is known as the Theil’s Inequality Coefficient (TIC) [13] and is evaluated using the equation shown below: c
1 řn 2 i pXi ´ Yi q n c T.I.C “ c 1 řn 2 1 řn 2 Y i Xi ` n n i i
(7)
If the value produced from the above equation is close to zero, the two sets of data are considered to be very similar and conversely, if the value is close to one, then the two sets of data are considered dissimilar [18]. The value Xi within Equation (7) represents the results obtained from the original, high fidelity model and Yi represents the corresponding values obtained from the ANN and LUT models. The results produced from the implementation of Equation (7) for each of the six states for the simulations described in Table 3 are presented in Table 4. Table 4. Average TIC Values obtained from comparison of simulations implementing zigzag and turning circle manoeuvres.
Body and Earth Fixed Variables Surge Sway Roll X-Pos Y-Pos Heading Angle
Zigzag Manoeuvre
Turning Circle Manoeuvre
Artificial Neural Network
Look Up Table
Artificial Neural Network
Look Up Table
0.0051 0.0109 0.0129 0.0011 0.0149 0.0061
1.559E´06 3.084E´06 2.910E´06 4.117E´07 1.560E´06 4.534E´07
0.0015 0.0052 0.0080 0.0027 0.0008 0.0003
6.250E´05 9.893E´05 4.971E´06 9.170E´05 7.719E´06 3.697E´07
As demonstrated by the results presented in Table 4, the values obtained from the LUT and ANN models are very similar to that of the original, validated high fidelity model with the largest TIC value being equal to 0.0149 and therefore the new models produce an accurate representation of the dynamics of the RoboSalmon vehicle. As well as being able to accurately represent the vehicles dynamics, the new models should demonstrate an improvement in run time performance. In order to measure this metric, the simulations completed to provide the validation data presented in Table 4 where repeated several times and an average simulation execution time calculated. The results are presented below in Table 5: Table 5. Comparison of simulation execution time for the three models. Mathematical Model
Simulation Execution Time (s)
Original ANN LUT
110 22 16
As demonstrated by Table 5, the models implementing system identification techniques resulted in a drastic reduction in the simulation execution time. The ANN model is able to complete simulations 80% faster than the original model, while the LUT model is capable of completing simulations 85% faster.
Robotics 2016, 2016,5, 5,22 Robotics
13ofof23 23 13
The results presented above have demonstrated the successfulness of implementing system The results presentedtoabove havemathematical demonstratedmodels the successfulness implementing system identification techniques produce that are notofonly able to accurately identification techniques to produce mathematical models that are not only able to accurately represent represent the dynamics of the RoboSalmon vehicle but also produce drastic reductions in simulation the dynamics of the RoboSalmon vehicle but also produce in simulation execution execution time. While further simplifications could bedrastic madereductions to the model by replacing the time. While further simplifications could be made to the model by replacing the functionality within functionality within the Vehicle Dynamics section of the model, it has been decided that this the Vehicle Dynamics the model,for it has decidedreasons. that thisThe functionality functionality should section remainofunchanged twobeen important first reasonshould is dueremain to the unchanged for complexity two important reasons. The firstas reason is due to the relatively low complexity relatively low of this functionality demonstrated in Figure 4 whereby only 9%of ofthis the functionality as demonstrated in Figure 4 whereby only 9% of the total simulation time is required to total simulation time is required to evaluate the functionality within this section. Therefore, the evaluate the functionality within this section. the acceptable improvement in simulation would improvement in simulation time would notTherefore, be deemed compared to thetime inevitable not be deemed compared to the inevitable in the ability to accurately reduction in theacceptable model’s ability to accurately representreduction the dynamics of model’s the real RoboSalmon system. represent dynamics of the aforementioned real RoboSalmonfunctionality, system. Secondly, by maintaining the aforementioned Secondly,the by maintaining it is possible to confidently evaluate what functionality, is possible to confidently evaluate what varying certain design parameters effect varyingit certain design parameters will have oneffect the manoeuvrability characteristics ofwill the have on the manoeuvrability characteristics of the vehicle. These investigations would otherwise not vehicle. These investigations would otherwise not be possible if the functionality representing the be possible if the functionality representing the rigid body dynamics of the vehicle where removed. rigid body dynamics of the vehicle where removed. 3. Implementation of of Algorithms Algorithms for for Multi-Vehicle Multi-Vehicle Coordination Coordination 3. Implementation As As the the results results in in the the previous previous section section demonstrated, demonstrated, mathematical mathematical models models implementing implementing system system identification techniques are able to complete simulations in a fraction of the time required by identification techniques are able to complete simulations in a fraction of the time required by their their corresponding fidelity, white-box white-box models. models. As Asa aresult, result,these thesemodels models are particularly suited corresponding high high fidelity, are particularly suited to to completing investigations intomulti-vehicle multi-vehiclescenarios. scenarios.Consequently, Consequently,the the following following section completing investigations into section will will describe describe the the implementation implementation of of coordination coordination algorithms algorithms based based on on the the behavioural behavioural mechanisms mechanisms of of fish fish to allow a group of BAUVs to be considered self-organizing. The algorithms will be implemented to allow a group of BAUVs to be considered self-organizing. The algorithms will be implemented within within the the LUT LUT and and ANN ANN models models described described in in the the previous previous section section and and aa comparison comparison between between the the results obtained from these models and the original high fidelity model will be made in terms results obtained from these models and the original high fidelity model will be made in terms of of accuracy accuracy and and simulation simulation execution execution time. time. In In order order to to successfully successfully operate operate aa group group of of vehicles vehicles within within aa fully fully autonomous autonomous multi-vehicle multi-vehicle scenario a number of different features of the overall system design have to be taken into consideration. scenario a number of different features of the overall system design have to be taken into These features can be features broadly categorized intocategorized the following groups: Coordination Methodologies, consideration. These can be broadly into the following groups: Coordination Communication, Vehicle Control and Dynamics. Methodologies, Communication, Vehicle Control and Dynamics. The relationships which existexist among thesethese features is known as the system The interdependencies interdependenciesand and relationships which among features is known as the architecture and is presented diagrammatically in Figure 12. system architecture and is presented diagrammatically in Figure 12.
Figure 12. System architecture for coordinating multiple BAUV’s autonomously. Design features Figure 12. System architecture for coordinating multiple BAUV’s autonomously. Design features within the green box relate to design considerations for each of the individual vehicles within the within the green box relate to design considerations for each of the individual vehicles within the group. group. Design features within the red box relate to the features required to allow the vehicles within Design features within the red box relate to the features required to allow the vehicles within the group the group to communication and coordinate with one another. to communication and coordinate with one another.
Within Figure 12, the Vehicle Dynamics and Control section represents the dynamics and Within 12, the Vehicle Dynamics Control2.2. section the dynamics kinematics ofFigure the RoboSalmon vehicle describedand in Section While represents for the navigation section,and it is kinematics of the RoboSalmon vehicle described in Section 2.2. While for the navigation section, assumed that each vehicle’s position is known and represented by a two-dimensional Cartesian itcoordinate is assumed that each vehicle’s position is known and represented by a two-dimensional Cartesian system. coordinate system.apparent from Figure 12 is that in order to produce autonomous multi-vehicle In addition, In addition, apparent fromstrategy Figure has 12 is in order totoproduce multi-vehicle coordination, a communication to that be established allow theautonomous individual vehicles within coordination, a communication strategy has to be established to allow the individual vehicles within the group to share their relevant positional data. Furthermore, coordination algorithms have to be the group to share their relevant positional data.this Furthermore, algorithms have to be implemented that are able to process and utilize informationcoordination to manoeuvre the vehicles to move implemented that are able to process and utilize this information to manoeuvre the vehicles to move in the correct direction. in the correct direction.
Robotics 2016, 5, 2
14 of 23
However, as discussed previously, the underwater milieu presents a number of unique characteristics which makes the implementation of these two design features particularly challenging. Therefore, it is the purpose of the following sections to present the communication protocols and coordination algorithms implemented that take into account these challenges and allow the coordination of a school of BAUVs. The implementation of a communication strategy within any group scenario is essential to the group’s ability to successfully complete the specified task. However, due to the aforementioned physical limitations of the underwater communication channel, the implementation of a successful communication strategy for multi-vehicle cooperation is particularly challenging. Nonetheless, presently there are three strategies utilized within the underwater acoustic channel: Frequency Division Multiple Access (FDMA), Code Division Multiple Access (CDMA) and Time Division Multiple Access (TDMA) [36]. Evidently, in order to implement these strategies, each of the vehicles would have to be fitted with an acoustic modem. While there are acoustic modems on the market which could fit into the current version of RoboSalmon [37], it is expected that the size of the vehicle would have to be slightly increased to allow further sensing equipment payload to be incorporated within the vehicle. While each of the above possess their own operational benefits, this paper involves the implementation of a TDMA protocol for facilitating communication among the different vehicles. The TDMA protocol operates by assigning each vehicle within a group a unique timeslot within which it can transmit its data to the other vehicles. Once each vehicle has transmitted its data once, the process is repeated and the cycle continues until the end of the mission [37]. The length of the timeslot, t is dependent on the transmission time of the data and the propagation delay due to the speed of sound in water. The timeslot can be calculated using the following equation: t “ Transmission Time `
Maximum Intervehicle Distance 1500
(8)
The Transmission Time in the above equation is a constant value based on the size of the data being transmitted (256 bits) and the transmission rate of the acoustic modem (31.2 kbits/s). The second term is known as the propagation delay and determines the maximum time interval required for a packet of data to be transferred between the two vehicles furthest away from one another. As it is not possible to know the exact value of this parameter, a conservative estimation is made based on one of the parameters associated with the coordination algorithms and is discussed below in Section 4. 3.1. Coordination Algorithms As discussed earlier, one of the main motivations for operating AUVs within multi-vehicle deployments is to allow the collection of data over large spatiotemporal domains. Consequently, the coordination of the vehicles within the group is of critical importance to ensure not only their safe operation but also to ensure that the data collected is done so in an efficient manner. To achieve this, the algorithms implemented will have to ensure that neighbouring vehicles do not collide with one another but also ensure the formation of a group structure moving with a common directionality. While several coordination methodologies exist that, if implemented, would satisfy the above criteria, the work presented in this paper will once again take inspiration from nature and implement a coordination strategy based on the behavioural mechanisms known to exist within school structures in nature. These naturally occurring formations have been known to range in size from small groups containing as little as two individuals to immense structures containing millions of fish often moving with remarkable synchronicity [38]. While, initially, debate surrounded the exact mechanism used to explain this phenomenon, Aoki’s work published in 1981 presented a set of behavioural mechanisms that when implemented within a simulation model, successfully imitate the behaviours exhibited by fish within school structures in nature [39].
Robotics 2016, 5, 2
15 of 23
In his paper, Aoki established that fish must poses three behavioural tendencies in order to Robotics 5, 2 15 ofspecific 23 produce the2016, schools structures displayed in nature i.e., repulsion, orientation and attraction. The mechanism presented in Aoki’s paper to trigger the above behaviours is to assign three concentric mechanism presented in Aoki’s paper to trigger the above behaviours is to assign three concentric circles of variable size to each individual and depending on which of these zones is occupied by its circles of variable size to each individual and depending on which of these zones is occupied by its nearest neighbours, the individual in the centre will manoeuvre in either a repulsive, orientating or nearest neighbours, the individual in the centre will manoeuvre in either a repulsive, orientating or attractive manner as shown in in Figure attractive manner as shown Figure13. 13.
Figure 13. Graphical representation of behavioural mechanisms of fish within school structures. The
Figure 13. Graphical representation of behavioural mechanisms of fish within school structures. The diagram demonstrates how Fish (2), (3) and (4) would manoeuvre with reference to Fish (1). Fish (2) diagram demonstrates howZone Fishso(2), (3) andlook (4) to would with(1). reference to Fish (1). occupies the Repulsion it would move manoeuvre away from Fish Fish (3) occupies the Fish (2) occupies the Repulsion Zone so it would look to move away from Fish (1). Fish (3) occupies Attraction Zone and would therefore look to move towards Fish (1). Fish (4) occupies the Orientation the Attraction Zone and therefore would therefore look to move towards Fish Zone and would align its heading angle with that of Fish(1). (1).Fish (4) occupies the Orientation Zone and would therefore align its heading angle with that of Fish (1). Therefore, it is believed that this mechanism can be adopted and implemented as a coordination strategy foritthe movement of multiple vehicles. However, is apparent from 13 Therefore, is coordinated believed that this mechanism can be adopted and it implemented as aFigure coordination that in order to implement the above mechanism, the individual vehicles within the group have to strategy for the coordinated movement of multiple vehicles. However, it is apparent from Figure 13 communicate their positional and heading data to the other vehicles within the group. As presented that in order to implement the above mechanism, the individual vehicles within the group have to in [20], the RoboSalmon vehicle is equipped with an Inertial Measurement Unit (IMU) containing a communicate their positional andand heading data to the other vehicles within the group. As presented combination of accelerometers gyroscopes. Consequently, dead reckoning techniques could be in [20], the RoboSalmon vehicle equipped with an Inertial Measurement Unit positional (IMU) containing implemented to integrate the is signals from these sensors to obtain each vehicle’s and a combination accelerometers and gyroscopes. Consequently, deaderror reckoning orientation of data. While dead reckoning techniques produce positional growthtechniques [40], for thecould purposes of the investigations completed in this paper, the influence of these errors on the and be implemented to integrate the signals from these sensors to obtain each vehicle’s positional coordination havereckoning not been taken into consideration. As discussed, thisgrowth occurs through orientation data. algorithms While dead techniques produce positional error [40], for the the transmission of data using acoustic in communication methods andof adopting a TDMA protocol. purposes of the investigations completed this paper, the influence these errors on the coordination
algorithms have not been taken into consideration. As discussed, this occurs through the transmission 3.2. Implementation of Coordination Algorithms of data using acoustic communication methods and adopting a TDMA protocol. The controller implemented within the Guidance System (Figure 2) to alter the heading angle of each vehicle requires a desired heading angle as an input. Consequently, the equations implemented 3.2. Implementation of Coordination Algorithms to produce either a repulsive, orientating or attractive manoeuvre from each vehicle are required to
The controller implemented Guidance System data (Figure to alterneighbours the heading angle of produce an angular value basedwithin on the the positional and heading of its2)nearest as well each as vehicle requires a desired heading angle as an input. Consequently, the equations implemented the behavioural zone which the neighbouring vehicles are occupying. to produce either a repulsive, orientating or attractive manoeuvre from each vehicle are required to 3.2.1. Behaviour produce anRepulsive angular value based on the positional and heading data of its nearest neighbours as well as the behavioural zone which the neighbouring aregroup occupying. The repulsive behaviour of each vehiclevehicles within the has to ensure that the vehicle will manoeuvre in such a way as to avoid colliding with its nearest neighbour. The equation implemented
3.2.1.toRepulsive Behaviour achieve this behaviour is shown below in Equation (9).
The repulsive behaviour of each vehicle within the𝜋 group has to ensure that the vehicle will ψLOS = ψ𝑉 ± (9) 4 manoeuvre in such a way as to avoid colliding with its nearest neighbour. The equation implemented to achieve this behaviour is shown below in Equation (9). ψLOS “ ψV ˘
π 4
(9)
Robotics 2016, 5, 2
16 of 23
where ψLOS represents the desired heading angle (radians) which is input to the controller within the Robotics 2016, 5, 2 16 of 23 guidance system and ψV is the present heading angle of the vehicle. The decision of whether to add or subtract theψ45˝ depends thedesired relative position between thewhich two vehicles inthe question. where representsonthe heading angle (radians) is input to controller within LOS
the guidance system and ψ𝑉 is the present heading angle of the vehicle. The decision of whether to 3.2.2.add Orientating Behaviour or subtract the 45° depends on the relative position between the two vehicles in question.
On the other hand, the orientating behaviour has to result in each vehicle aligning its heading 3.2.2. Orientating Behaviour angle with that of its nearest neighbours and the equation implemented within the algorithm to achieve On the other hand, the orientating behaviour has to result in each vehicle aligning its heading this is shown below: Iÿ NN angle with that of its nearest neighbours and the implemented within the algorithm to 1 equation ψ “ ψNN (10) LOS achieve this is shown below: INN NN“1
3.2.3. Attractive Behaviour
ψLOS =
INN
1 INN
∑ ψNN
(10)
NN=1
Finally, the attractive behaviour of each vehicle has to result in a manoeuvre that results in each vehicle reducing its distance 3.2.3. Attractive Behaviourto its neighbouring vehicles. This is achieved by creating a point in space which is equal to the average x and y positions of each vehicles nearest neighbours. The equations Finally, the attractive behaviour of each vehicle has to result in a manoeuvre that results in each implemented to complete this task shown below: vehicle reducing its distance to itsis neighbouring vehicles. This is achieved by creating a point in space which is equal to the average x and y positions of each vehicles nearest neighbours. The equations INN 1 ÿ implemented to complete this task is shown below:
xd “
INN
xd =
yd “
xNN
1 ∑ x INN INN NN
1 INN1
yd =
I
I
(11)
NN NN “1
NN=1 ÿ INN
(11)
yNN
NN “1y ∑
NN
(12) (12)
NN NN=1 where x NN and y NN represent the x and y positions of nearest neighbours, respectively. These positions are then used to evaluate required ψ LOS the vehicle to manoeuvre in theThese direction where 𝑥𝑁𝑁 and 𝑦𝑁𝑁 the represent theheading x and yangle, positions ofof nearest neighbours, respectively. are then used to evaluate the required of its positions nearest neighbour using the equation shownheading below.angle, ψ𝐿𝑂𝑆 of the vehicle to manoeuvre in
the direction of its nearest neighbour using the equation shown below.
3.2.4. Structure of Coordination Algorithm 3.2.4. Structure of Coordination Algorithm
The decision process to determine which of the above equations is used and its relationship The decision process to determine which of the above equations is used and its relationship with with the communication protocol described in Section 3.1 is known as the algorithms structure and is the communication protocol described in Section 3.1 is known as the algorithms structure and is presented below in Figure 14. presented below in Figure 14.
Figure 14. Algorithm structure.
Figure 14. Algorithm structure.
Robotics 2016, 5, 2
17 of 23
Equations (9)–(12) and the structure presented above represent the coordination algorithm implemented based on the behavioural mechanisms of fish within school structures. The following section presents results demonstrating the effectiveness of the above strategy to coordinate multiple BAUVs form a school structure. 4. Results In the work, presented in this paper, a deployment of 12 vehicles is simulated for two different behavioural zones sizes. The maximum number of nearest neighbours that each vehicle could take into consideration is set to six based on the results from the work completed in [41,42]. Furthermore, as demonstrated by Equation (8), the time slot assigned to each vehicle to communicate its relevant data to the remaining vehicles is predetermined and is based on the transmission time of the data and the propagation delay. While the transmission time is constant at 0.008 s, the propagation delay is dependent on the maximum distance between two vehicles within the group. However, since this value cannot be determined and in actual fact varies throughout the simulation, a conservative value for the maximum distance between two vehicles has been selected to be double the size of the attraction zone utilised within the simulation. Finally, the size of the behavioural zones have been selected to ensure that the minimum inter-vehicle distances across the deployment are such that hydrodynamic interactions are negligible based on the results of [43]. The above parameters are summarized below in Table 6. Table 6. Simulation parameters. Parameter
Value
Deployment Size Number of Nearest Neighbours Small Behavioural Zone Sizes Large Behavioural Zone Sizes Time Slot Size—Small Behavioural Zone Time Slot Size—Large Behavioural Zone
12 Vehicles 6 2, 8, 50 m 10, 20, 60 m 0.07 s 0.08 s
Simulations utilizing the above parameters where completed for the three models discussed in this paper: the original high fidelity model, the LUT and ANN models. The following section will present the results from these simulations in terms of the ability of the algorithms to form a group structure but also to analyse the performance of the reduced models compared to the high fidelity model. In order to determine whether or not the coordination algorithms have been successful, the variation in the average heading angle of the group was calculated using the standard deviation metric. Consequently, if the standard deviation calculated converges to a relatively small value, then it can be concluded with confidence that all the vehicles within the group are moving with a common directionality. However, to definitively demonstrate that the algorithms have been successful, the average distance to each vehicles nearest neighbours should also converge to be within the boundaries of the orientation zone. Therefore, the above metrics where calculated for the results produced from each of the three models discussed in this work and the results are presented below in Figures 15 and 16. Figures 15 and 16 clearly demonstrate that for each of the three models, the standard deviation and average nearest neighbour metrics behave as expected and converge to a steady state value. This suggests that the coordination algorithms have been successful in promoting the formation of a self-organizing group. Inspecting Figures 15 and 16 more closely, it also becomes apparent that for the simulations involving the smaller behavioural zones, the time to convergence is greater when compared to the simulations involving the larger behavioural zones. This behaviour is yet again expected as the initial starting positions are the same for both scenarios and therefore, the time taken
Robotics 2016, 5, 2 Robotics Robotics 2016, 2016, 5, 5, 22
18 of 23 18 18 of of 23 23
for individuals to start occupying one another’s orientations zones will be less when the behavioural for individuals individuals to to start start occupying occupying one one another’s another’s orientations orientations zones zones will will be be less less when when the the behavioural behavioural for zone sizes are larger. zone sizes sizes are are larger. larger. zone
Figure 15. Comparison between results obtained for validated model, LUT model and ANN model Figure 15. 15. Comparison Comparison between between results results obtained obtained for for validated validated model, model, LUT LUT model model and and ANN ANN model model Figure for the standard deviation of heading angle of the group. The figure also presents the results for two for the the standard standard deviation deviation of of heading heading angle angle of of the the group. group. The figure figure also also presents presents the the results results for for two two for different behavioural zone sizes. (a) Small Behavioural Zone Sizes (Table 6); (b) Large Behavioural different behavioural behavioural zone zone sizes. sizes. (a) Small Behavioural Zone Sizes (Table (Table 6); 6); (b) (b) Large Large Behavioural Behavioural different Zone Sizes (Table 6). Zone Sizes Sizes (Table (Table6). 6). Zone
Figure Figure 16. 16. Comparison Comparison between between results results obtained obtained for for original original model, model, LUT LUT model model and and ANN ANN model model for for Figure 16. Comparison between results obtained for original model, LUT modelthe and ANNfor model the standard deviation of heading angle of the group. The figure also presents results the standard deviation of heading angle of the group. The figure also presents the results for two two for the standard deviation of heading angle of the group. The figure also presents the results for two different different behavioural behavioural zone zone sizes. sizes. (a) (a) Small Small Behavioural Behavioural Zone Zone Sizes Sizes (Table (Table 6); 6); (b) (b) Large Large Behavioural Behavioural different behavioural zone sizes. (a) Small Behavioural Zone Sizes (Table 6); (b) Large Behavioural Zone Sizes (Table 6). Zone Sizes (Table 6). Zone Sizes (Table 6).
Robotics 2016, 5, 2
19 of 23
In relation to the accuracy of the reduced fidelity models, the above metrics cannot be used to compare the different models. The reason that this is the case is that, although the standard deviation of the heading angle converges to zero for each model, the results from the reduced fidelity models might have an entirely different average heading angle to that of the validated model and therefore, the group may be converge to a different heading angle. Nevertheless, the above figures would suggest that the results produced from the ANN model are slightly less accurate than that of the results produced from the LUT model. This becomes apparent by inspecting Figure 15 where the evolution of the standard deviation metric is noticeable different for the ANN model when compared with the validated model and LUTs results. However, in order to accurately quantify the discrepancy between the different models, the Theil’s Inequality Coefficient (TIC) was calculated again for each of the six states presented in Table 2 for the results produced from the multi-vehicle simulations. The results are presented below in Table 7. Table 7. Average TIC values obtained from comparison of simulations implementing the large and small behavioural zones.
Body and Earth Fixed Variables Surge Sway Roll X-Pos Y-Pos Heading Angle
Small Behavioural Zones
Large Behavioural Zones
Artificial Neural Network
Look Up Table
Artificial Neural Network
Look Up Table
0.1023 0.2475 0.4604 0.0403 0.0771 0.2147
0.0515 0.1616 0.3123 0.0117 0.0342 0.120
0.0799 0.2168 0.4447 0.0290 0.0932 0.1978
0.0399 0.1375 0.3185 0.0061 0.0447 0.1317
The results presented in Table 7 clearly demonstrate that, regardless of the behavioural zone sizes implemented, the TIC values are greater for the comparison between the validated model and ANN model than they are for the comparison between the LUT model and the validated model. This would support the findings discussed above from the visual inspection of Figure 15. The reason that the ANN model is not as accurate as the LUT is due to the way in which the neural network was trained. The target data supplied to the ANN for training purposes was the evolution caudal fins position throughout one second corresponding to a specific tail centre deflection angle. In order to ensure the evolution of the caudal fin’s position throughout the vehicle’s entire operational range was supplied to the ANN, only caudal fin positions relating to tail centre deflection angles in five degree intervals where supplied to the network. As a result, the ANN produced a mapping which would be accurate for tail centre deflection angles starting at ´90˝ and ending at 90˝ in five degree intervals. This was disguised in the results for the open loop manoeuvres where the tail centre deflections angles utilised (Table 3) coincided with the same angles for which training data were supplied to the ANN. However, for the simulations involving multi-vehicle scenarios, the commanded tail centre deflection angles could be any value between ´90 and 90. Therefore, the ANN was producing values for the caudal fin’s position which it had not been specifically trained to produce and was instead, relying on the mapping obtained during the training phase to be sufficiently accurate. Furthermore, while the ANN was only supplied training data at five degree intervals, the LUTs constructed contained data for the caudal fins position at one degree intervals. Consequently, the look table model only had to interpolate between one degree intervals in tail centre deflection angle whereas, the ANN was essentially interpolating over five degree intervals. By comparing the results from Tables 4 and 7 it is also apparent that the TIC values has increased for both the LUT model and ANN model. The reason for this can be explained by the nature of the open loop manoeuvres, whereby the tail centreline is deflected to a particular value where it remains
Robotics 2016, 5, 2
20 of 23
Robotics 2016, 5, 2
20 of 23
for a considerable period of time. Whereas, within the multi-vehicle scenario, the tail centreline will be be transitioning between various angles a frequency Hz.Therefore, Therefore,the thefact factthat thatmore moretransient transient transitioning between various angles at at a frequency ofof 1 1Hz. behaviour exists within the multi-vehicle simulations would suggest that the system identification behaviour exists within the multi-vehicle simulations would suggest that the system identification techniques employed employed to to represent represent the the transient transient behaviour behaviour are are less less accurate accurate than than those those employed employed to to techniques evaluate the the steady-state steady-state behaviour. behaviour. evaluate Table77also alsodemonstrates demonstratesthat that the the state state parameter parameter which which has has the the greatest greatest discrepancy discrepancy is is the the roll roll Table rate, with with aa maximum maximum value value of of 0.4604. 0.4604. However, However, closer closer analyses analyses of of the the difference difference between between the the results results rate, produced from the models for this parameter demonstrates that the TIC of 0.4604 value is equivalent produced from the models for this parameter demonstrates that the TIC of 0.4604 value is equivalent ˝ /s. to aa maximum maximum discrepancy discrepancyof of6.33 6.33°/s. to However, as as well well as asanalysing analysing the the accuracy accuracy of of the the models models for for the the multi-vehicle multi-vehicle simulations, simulations, the the However, run time performance of the models has been evaluated. The multi-vehicle simulations evaluated 400 run time performance of the models has been evaluated. The multi-vehicle simulations evaluated s worth of data andand thethe original model required LUT model model 400 s worth of data original model requiredapproximately approximately40 40min minto tocomplete, complete, the the LUT required approximately approximately3.8 3.8min minwhile whilethe theANN ANNmodel modelrequired requiredapproximately approximately4.2 4.2min. min. required Finally,the theoverall overall difference in results the results produced from theplots three can beanalyzed visually Finally, difference in the produced from the three canplots be visually analyzed by inspecting the plots trajectory plotsfrom obtained from the results below as shown below17. in Figure 17. by inspecting the trajectory obtained the results as shown in Figure
(a)
(b)
Figure 17. Comparison of trajectory plots obtained from the three models. Black trajectory represents Figure 17. Comparison of trajectory plots obtained from the three models. Black trajectory represents validated model, blue line represents the ANN model and the red line represents the LUT Model. (a) validated model, blue line represents the ANN model and the red line represents the LUT Model. Small Behavioural Zone Sizes (Table 6); (b) Large Behavioural Zone Sizes (Table 6). (a) Small Behavioural Zone Sizes (Table 6); (b) Large Behavioural Zone Sizes (Table 6).
Although Figure 17 demonstrates that there are differences between the reduced fidelity models Figuremodel, 17 demonstrates that there between the reduced fidelity models and Although the validated the magnitude of are thedifferences discrepancy is small in comparison to the and the validated model, the magnitude of the discrepancy is small in comparison to the improvement improvement in the simulation execution time achieved. in the simulation execution time achieved. 5. Conclusions 5. Conclusions The work presented in this paper has defined the operational benefits of being able to deploy a The work presented in this paper has defined the operational benefits of being able to deploy self-coordinating group of AUVs for oceanic monitoring purposes, the challenges associated with a self-coordinating group of AUVs for oceanic monitoring purposes, the challenges associated with doing so as well as the current state of the art in the deployment of groups of AUVs. doing so as well as the current state of the art in the deployment of groups of AUVs. The paper has also demonstrated the benefits associated with implementing system identification techniques to replace complex functionality within high fidelity mathematical models to allow a drastic reduction in the simulation execution time while still producing results that are representative of the dynamics of the RoboSalmon vehicle. However, the results also demonstrated
Robotics 2016, 5, 2
21 of 23
The paper has also demonstrated the benefits associated with implementing system identification techniques to replace complex functionality within high fidelity mathematical models to allow a drastic reduction in the simulation execution time while still producing results that are representative of the dynamics of the RoboSalmon vehicle. However, the results also demonstrated that of the two system identification techniques implemented, the model implementing LUTs was slightly more accurate when compared to the results obtained from the ANN model. Furthermore, this paper has also presented the feasibility of implementing a decentralized coordination algorithm based on the behavioural mechanisms of fish to allow a group of BAUVs to be considered self-organizing. The results also demonstrated the ability of the algorithms to coordinate the vehicles to manoeuvre with specific inter-vehicle distances and therefore the algorithms could be implemented to allow a group of BAUVs to completed large-scale spatiotemporal data collection. Therefore, in summarizing, the results produced in this paper have demonstrated the ability to implement system identification techniques to produce low fidelity mathematical models that dramatically reduce simulation execution time while maintaining an accurate representation of RoboSalmon’s dynamics. As a result, these models are able to produce more efficient simulations when investigating multi-vehicle scenarios. However, the results also demonstrated that of the two system identification techniques implemented, the LUT model was not only more accurate but was also capable of completing simulations quicker than the ANN model. Acknowledgments: The financial support for the work completed in this paper has been provided by Engineering and Physical Sciences Research Council (EPSRC) through the award of a Doctoral Training Grant (DTG). Author Contributions: The research completed to attain the results provided in this paper and the initial drafting of the above report was completed by Jonathan McColgan. Euan McGookin provided insight and advice throughout the completion of the research as well as reviewing and providing contributions during the writing phase of this paper. Conflicts of Interest: The authors declare no conflict of interest.
References 1. 2.
3. 4.
5. 6. 7.
8. 9. 10.
Miller, S.; Spoolman, G. Climate and Biodiversity. In Environmental Science; Brooks/Cole: Belmont, CA, USA, 2010. Copley, J. Just How Little Do We Know about the Ocean Floor. 2014. Available online: http://www.scientificamerican.com/article/just-how-little-do-we-know-about-the-ocean-floor/ (accessed on 15 October 2015). Redfield, S. Cooperation between Underwater Vehicles. In Marine Robot Autonomy; Springer-Verlag: New York, NY, USA, 2013; pp. 257–286. Mohamed, N.; Jawhar, I.; Al-Jaroodi, J.; Zhang, L. Monitoring underwater pipelines using sensor networks. In Proceedings of the 2010 12th IEEE International Conference on High Performance Computing and Communications (HPCC), Melbourne, Australia, 1–3 September 2010; pp. 346–353. Stacy, D. Deep-Sea Explorers Angle to Solve Mystery of Missing Malayasian Airliner. Wall Street J. 2014, 8, 1–9. Lapierre, L. Underwater Robots Part I: Current systems and problem pose. In Mobile Robotics—Towards New Applications; Advanced Robotic Systems International: Mammendorf, Gernmany, 2006; pp. 310–334. Kaminski, C.; Crees, T.; Ferguson, J.; Forrest, A.; Williams, J.; Hopkin, D.; Heard, G. 12 Days Under Ice—An Historic AUV Deployment in the Canadian High Arctic. In Proceedings of the 2010 IEEE/OES Autonomous Underwater Vehicles, AUV 2010, Monterey, CA, USA, 1–3 September 2010. Griffiths, G.; Jamieson, J.; Mitchell, S.; Rutherford, K. Energy storage for long endurance AUVs. In Proceedings of the ATUV Conference, iMarEST, London, UK, 16–17 March 2004. Petillo, S.; Schmidt, H.; Balasuriya, A. Constructing a distributed AUV network for underwater plume-tracking operations. Int. J. Distrib. Sens. Netw. 2012, 2012, 191235. [CrossRef] Fiorelli, E.; Leonard, N.E.; Bhatta, P.; Paley, D.A.; Bachmayer, R.; Fratantoni, D.M. Multi-AUV control and adaptive sampling in Monterey Bay. IEEE J. Ocean. Eng. 2006, 31, 935–948. [CrossRef]
Robotics 2016, 5, 2
11. 12. 13.
14.
15. 16.
17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35.
22 of 23
Sotzing, D.M.; Lane, C.C. Improving the coordination efficiency of limited-commuication multi-autonomous underwater vehicle operations using a multiagent architecture. J. F. Robot. 2010, 27, 412–429. [CrossRef] Diamant, R.; Lampe, L. Spatial reuse time-division multiple access for broadcast Ad Hoc underwater acoustic communication networks. IEEE J. Ocean. Eng. 2011, 36, 172–185. [CrossRef] Murray-Smith, D.J. Experimental Modelling: System Identification, Parameter Estimation and Model Optimsation Techniques. In Modelling and Simulation of Integrated Systems in Engineering; Woodhead Publishing: Cambridge, UK, 2012. Mazlan, A.N.A.; McGookin, E. Modelling and Control of a Biomimetic Autonomous Underwater Vehicle. In Proceedings of the International Conference on Control, Automation, Robotics & Visions, Guangzhou, China, 5–7 December 2012; pp. 88–93. Wu, Z.; Yu, J.; Tan, M.; Zhang, J. Kinematic comparison of forward and backward swimming and maneuvering in a self-propelled sub-carangiform robotic fish. J. Bionic Eng. 2014, 11, 199–212. [CrossRef] Watts, C.; McGookin, E.; Macauley, M. Modelling and Control of a Biomimetic Underwater Vehicle with a Tendon Drive Propulsion System. In Proceedings of the Oceans 2007—Europe, Aberdeen, UK, 18–21 June 2007; pp. 1–6. Watts, C.; McGookin, E. Modeling and Simulation of a Biomimetic Underwater Vehicle. In Proceedings of the Summer Simulation Multi-Conference, Edinburgh, UK, 2008. Takada, Y.; Koyama, K.; Usami, T. Position Estimation of Small Robotic Fish Based on Camera Information and Gyro Sensors. Robotics 2014, 3, 149–162. [CrossRef] Watts, C.M.; McGookin, E.W. Surge Performance of an Underwater Vehicle with a Biomimetic Tendon Drive Propulsion System. J. Eng. Marit. Environ. 2013, 228, 315–330. [CrossRef] Mazlan, A.N.A. A Fully Actuated Tail Propulsion System for a Biomimetic Autonomous Underwater Vehicle; University of Glasgow: Glasgow, UK, 2015. Hemelrijk, C.K.; Hildenbrandt, H. Self-organized shape and frontal density of fish schools. Ethology 2008, 114, 245–254. [CrossRef] Couzin, I.D.; Krause, J.; James, R.; Ruxton, G.D.; Franks, N.R. Collective memory and spatial sorting in animal groups. J. Theor. Biol. 2002, 218, 1–11. [CrossRef] [PubMed] Huth, A.; Wissel, C. The Simulation of the Movement of Fish Schools. J. Theor. Biol. 1991, 156, 365–385. [CrossRef] Sherman, J.; Davis, R.E.; Owens, W.B.; Valdes, J. The autonomous underwater glider "Spray". IEEE J. Ocean. Eng. 2001, 26, 437–446. [CrossRef] Simonetti, P. Slocum Glider: Design and 1991 Field Trials; Woods Hole Oceanographic Institution: Woods Hole, MA, USA, 1992. Boston, E. BIOSwimmer: Changing the Underwater Inspection Game; Boston Engineering: Boston, MA, USA, 2014. Geo-Matching, "Iver2-580". Available online: http://www.geo-matching.com/products/id1973-iver2-580.html (accessed on 16 December 2015). Geo-Matching, “Bluefin-9M”. Available online: http://www.geo-matching.com/products/id1951-bluefin-9m.html (accessed on 16 December 2015). Fish, F.E.; Kocak, D.M. Biomimetics and Marine Technology: An Introduction. Mar. Technol. Soc. J. 2011, 45, 8–13. [CrossRef] Lighthill, M.J. Note on the swimming of slender fish. J. Fluid Mech. 1960, 9, 305–317. [CrossRef] Fossen, T.I. Guidance and Control of Ocean Vehicles; John Wiley & Sons: Chichester, UK, 1994. Sargent, R.G. Validation and verification of simulation models. In Proceedings of the Winter Simul. Conference WSC, Washington, DC, USA, 9–12 December 2007; pp. 124–137. Mathworks, “Profiling for Improving Performance”. Available online: http://uk.mathworks.com/help/ matlab/matlab_prog/profiling-for-improving-performance.html (accessed on 8 May 2015). Gurney, K. Neural Network—An overview. In An Introduction to Neural Networks; Taylor & Francis Group: London, UK, 1997; pp. 1–6. Bishop, C. Statistical Pattern Recognition. In Neural Networks for Pattern Recognition; University Press Inc.: New York, NY, USA, 1995; pp. 1–28.
Robotics 2016, 5, 2
36.
37. 38. 39. 40. 41.
42. 43.
23 of 23
Burrowes, G.E.; Brown, J.; Khan, J.Y. Adaptive Space Time—Time Division Multiple Access ( AST-TDMA ) Protocol for an Underwater Swarm of AUV’s. In Proceedings of the OCEANS Conference, Bergen, Norway, 10–14 June 2013; pp. 1–10. Evo Logics, S2CR 48/78 Product Information. 2014. Available online: http://www.evologics.de/files/ DataSheets/EvoLogics_S2CR_4878_Product_Information.pdf (accessed on 16 December 2015). Parrish, J.K.; Viscido, S.V. Traffic rules of fish schools: A review of agent-based approaches. In Self-Organisation and Evolution of Social Systems; Cambridge University Press: Cambridge, UK, 2005; pp. 50–80. Aoki, I. A Simulation Study on the Schooling Mechanism in Fish. Bull. Jpn. Soc. Sci. Fish. 1981, 48, 1081–1088. [CrossRef] Paull, L.; Saeedi, S.; Seto, M.; Li, H. AUV navigation and localization: A review. IEEE J. Ocean. Eng. 2014, 39, 131–149. [CrossRef] McColgan, J.; McGookin, E.; Mazlan, A.N.A. Analysis of the Group Structure of a School of Biomimetic AUVs Coordinated Using Nearest Neighbour Principles. In Proceedings of the 6th International Conference on Automation, Robotics and Applications, Queenstown, New Zealand, 17–19 February 2015; pp. 312–317. McColgan, J.; McGookin, E.W.; Mazlan, A.N.A. A Low Fidelity Mathematical Model of a Biomimetic AUV for Multi-Vehicle Cooperation. In Proceedings of the OCEANS 2015, Genoa, Italy, 18–21 May 2015. Daghooghi, M.; Borazjani, I. The Hydrodynamic Advantages of Synchronized Swimming in a Rectangular Pattern. Bioinspir. Biomim. 2015, 10, 1–23. [CrossRef] [PubMed] © 2016 by the authors; licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons by Attribution (CC-BY) license (http://creativecommons.org/licenses/by/4.0/).