Research Article | Open Access
Modeling and Identification of Podded Propulsion Unmanned Surface Vehicle and Its Course Control Research
The response model of podded propulsion unmanned surface vehicle (USV) is established and identified; then considering the USV has characteristic of high speed, the course controller with fast convergence speed is proposed. The idea of MMG separate modeling is used to establish three-DOF planar motion model of the podded propulsion USV, and then the model is simplified as a response model. Then based on field experiments, the parameters of the response model are obtained by the method of system identification. Unlike ordinary ships, USV has the advantages of fast speed and small size, so the controller needs fast convergence speed and strong robustness. Based on the theory of multimode control, a fast nonsingular terminal sliding mode (FNTSM) course controller is proposed. In order to reduce the chattering of system, disturbance observer is used to compensate the disturbance to reduce the control gain and RBF neural network is applied to approximate the symbolic function. At the same time, fuzzy algorithm is employed to realize the mode soft switching, which avoids the unnecessary chattering when the mode is switched. Finally the rapidity and robustness of the proposed control approach are demonstrated by simulations and comparison studies.
With the development of marine technology, the USV has the advantages of being fast, small volume, low cost, and so on. It can work efficiently in harsh environments and is widely used in the field of ocean surveillance, search, rescue, and military . In order to better accomplish the tasks in the complex ocean, USV puts forward higher requirements for its propulsion system. Podded propulsor is a new type of propulsion device, which can save space and improve ship propulsion efficiency. In the absence of rudder and side thruster , ship can achieve rotation, reverse and horizontal movement, and so forth. It is one of the most promising new technologies in the field of ship propulsion , so for USV, the use of POD propeller can not only meet the basic needs of the operation, but also improve the performance of navigation.
For now, the modeling and identification of propeller-rudder propulsion ship are very mature, but in contrast only a few articles study podded propulsion ship. For a small POD propeller USV, on the basis of studying the operating characteristics under different speeds, the model of three-DOF is obtained by the method of system identification, and the identification result is verified . Japanese scholars Haraguchi and Nimura use the changing of course to study the model of podded propulsion ship and evaluate its operating performance . Aiming at a large podded propulsion ship,  uses the idea of separate modeling to propose the concept of equivalent rudder. For a podded propulsion semisubmersible ship, normal velocity field Kijima model and low velocity field Yoshimura model are combined to establish a three-DOF model, but the accuracy of the model is not verified . Paper  uses regression formula to estimate the thrust force generated by POD, and four-DOF model of semisubmersible ship is established. Paper  establishes a three-DOF model of podded propulsion ship by regression formula method, and based on this model, ADRC control theory is used to design the course controller. Generally, the research on modeling of podded propulsion ship is mostly limited to MMG model, but in fact in the design process of the actual ship controller, the most widely application is response model . So the first step of this paper is to establish the USV response model of podded propulsion; then the method of system identification is employed to get the model parameters.
The design of course controller is an important research topic of ship motion control, because it is related to not only the economy and security of the ship’s operation, but also the foundation of USV’s autonomous navigation. Sliding mode control (SMC) is applied to design ship course controller in , but the SMC high frequency chattering phenomenon is difficult to solve. In order to solve the chattering problem,  uses fuzzy control to optimize control signal to design the fuzzy sliding mode controller, and simulation results show that the performance is better than conventional SMC control. Paper  combines SMC and ADRC to design ship course and track controller, and the sideslip angle caused by wave current is solved by means of coordinate transformation. In , backstepping and terminal sliding mode are combined to design the course controller, and the fuzzy approximation method is used to solve the model uncertainty. In , the adaptive backstepping is adopted to design course controller, but the backstepping’s “computation explosion” problem has brought great difficulty to the controller design. In view of this problem, in , technique of dynamic surface is used to solve the problem of multiple derivation function effectively. On the basis of considering the input saturation, backstepping is used to design course controller and neural network approximation is employed to solve the problem of model uncertainty .
As previously mentioned, such as [5–9], there is little research on the identification of response model of podded propulsion ship. Meanwhile, unlike ordinary ships, USV has a faster speed and smaller volume, so the controller needs faster convergence speed and better anti-interference ability. That is, to a certain extent, the course controller of an ordinary ship is no longer applicable to USV (such as the methods proposed in [11–17]). So the contributions of this paper are that firstly, by analyzing the force acting on the hull and the thrust force of POD, the response model is derived; secondly, on the basis of field experiments, the response model of USV is identified by the method of system identification; finally, according to the characteristics of USV, based on the theory of multimode control and fuzzy weighted idea, a fast convergent course controller is proposed.
The rest of the paper is organized as follows. Section 2 introduces the experimental subject of Dalian Maritime University Lanxin USV and describes how the MMG model is simplified as a response model. In Section 3, the parameters of response model are identified and the result of identification is verified. Section 4 introduces the FNTSM course controller design. In Section 5, numerical simulations are carried out to show the rapidity and robustness of our design. Finally, some conclusions are made and future research directions are introduced in Section 6.
2. USV Modeling
At present, there are two main types of hydrodynamic model of the ship maneuvering: Abkowitz model and MMG model . From the practical experience, an overly complex or simple model cannot better describe the characteristics of system. Weighing the pros and cons of the two models, MMG model is employed to study the mathematical model of Lanxin USV.
2.1. Lanxin USV and Its POD
Lanxin USV is a small intelligence equipment platform of Dalian Maritime University, which has the function of water sampling, marine monitoring, maritime rescue, and so forth. It is shown in Figure 1.
Its POD propeller device is shown in Figure 2.
It can be seen from Figure 2 that its propeller and rudder are integrated. When the propulsor changes its propulsion angle, the vector thrust produced by the propeller can be decomposed into two directions: keep the forward thrust of the ship and produce lateral thrust to achieve steering. In the application process, the actual propulsion angle range is and its rate of change is limited to .
2.2. Planar Motion Model
Conventionally, the attached body coordinate system and the inertial coordinate system are adopted to study the model of USV. As shown in Figure 3, is the inertial coordinate system and is the attached body coordinate system. USV has six DOF including the surge velocity , sway velocity , heave velocity , yaw rate , rolling rate , and pitching angle . is course angle and is propulsion angle.
Based on , heave velocity, rolling rate, and heave velocity can be ignored. Meanwhile, we can premise that USV is symmetrical and the origin of the attached coordinate system and the barycenter of the USV are coincident. So six-DOF MMG model can be simplified to a three-DOF planar motion model.where is the mass of the USV, is the additional mass in the -axis direction, is the additional mass in the -axis direction, is the moment of inertia of the axis, is the additional moment of inertia in the direction of the -axis, , , and are the hydrodynamic forces and moments acting on the hull. According to , , , and can be divided as where is the hydrodynamic force acting on the bare hull and is the propulsor force. The plane motion variables of USV are shown in Figure 4.
is the speed of USV. According to paper , the hydrodynamic forces arewhere and are nonlinear fluid dynamics and they can be ignored if considered as high order small quantity. According to , the propulsor thrust can be expressed aswhere is propulsor thrust, is the rotation speed of propeller, and and are the coefficients that are greater than zero. When the propulsion angle is , the vector thrust in different directions iswhere is the length from the center of rotation to the fulcrum of the propulsor.
2.3. Derivation and Simplification
Assume that the outside interference is small; at this point the linear hydrodynamic force acting on USV occupies a dominant position, and the higher order terms can be ignored. In the field of ship model research, the linear motion of the ship is regarded as the balance state. Assume , , , and , where is the longitudinal initial velocity of USV. When the USV is disturbed by interference, , , , and . On the basis of this, formula (1) can be simplified as
Keep first-order small quantities , , , and ignore high order small quantities. Sowhere is the direct resistance of USV.where is the area of wet, is water density, is the total drag coefficient, and its essence is a function of speed.When the speed is , its total resistance coefficient is . of formula (8) is linearized as
Define where is the straight line resistance of the unmanned vehicle in the initial state.
So formula (7) can be simplified as
Considering that is small, so and . Therefore formula (5) can be changed as
Under the initial condition, the resistance of the USV is equal to the thrust of propulsor. That means , so we can draw that
Define , , , , , and . Then formula (18) can be simplified as
In order to simplify the problem, assuming that the initial state is uniform motion, and all the motion variables have zero initial value, then , , , , , , and . After Laplace transformation, formula (19) is converted to (20) and (21).
For ship control, we pay more attention to the relationship between the course and the propulsion angle, so we only analyze formula (21). By Laplace inverse transform, formula (21) can be transformed into a linear response equation in time domain.
The relationships between , , , and are shown in formulas (22)~(27). Their specific significance can refer to .where is the normalization of . Similarly , , and and so on with superscript express their normalization. In this state, the fluid force derivative is no longer the slope when and are zero. So in the nonlinear case, various linear hydrodynamic derivatives will depend on the changing of . When is changed, formulas (23)~(27) are bound to change. is known as the stability index, when the ship has the stability of the course; when the ship does not have the stability of the course; when the ship shows a very strong nonlinear characteristic. So Saku  proposes formula (27).
The left and right sides of formula (29) are divided by at the same time.
It can be seen that the response model of podded propulsion USV still conforms to the classic Norrbin model structure and it can be extended to ordinary vector propulsion ship.
3. Model Identification
3.1. Parameter Identification
In order to identify the response model, field experiments need to be done first. Field experiments include 5°, 8°, 12°, 15°, 17°, 18°, and 20° turning test and 15°/15° zig-zag test. It is noteworthy that field experiments need to be carried out in a relatively stable sea surface. The essence of Norrbin model is a linear Nomoto model with a nonlinear term , so and can be obtained by identifying the Nomoto model. Formula (33) is Nomoto model.
Based on 15°/15° zig-zag test data, Nomoto model is identified by recursive least squares. The curves of identification are displayed in Figure 5.
~ and ~ are the coefficients of discrete transfer function. The transfer function is
Because the coefficients of higher order and low order differ greatly, formula (35) can be simplified as
Formula (33) is changed to a transfer function and then compared with formula (36). We can get that and . is fitted by turning test data, and during the turning test, , , and are equal to zero, so formula (32) can be simplified as
It can be seen from formula (37) that if and are constants, and are one by one. So according to the multigroup turning tests, and the corresponding average can be obtained; then can be fitted out. The fitting curve is shown in Figure 6 and the final result is .
3.2. Model Validation
In order to verify the correctness of the identification results, the simulation 5° turning test is carried out and compared with the actual data. The actual turning test curve is shown in Figure 7 and the simulation turning test curve is shown in Figure 8.
As can be seen from Figures 7 and 8, the actual radius of gyration is 85.25 m and the simulation is 86.11 m. The error of numerical simulation and field experiment is small. This is to say, the results of modeling and identification are correct and credible.
4. Course Controller
4.1. Problem Formulation
Select state variables , , and , so formula (32) can be simplified aswhere , , , and are the input and output of the system, respectively; is the uncertainty of model and environmental interference, and it can be seen as a total disturbance; , .
Control Objective. In the presence of model uncertainties and external disturbances, design control input to make the course follow the target course .
4.2. Course Controller Design
Define tracking error
The control law is designed aswhere is constant and .
The shortcoming of LSM is that the system state cannot converge to zero in a limited time. In order to improve the performance of the system, the control method of terminal sliding mode is proposed and the better convergence performance than LAM control is obtained. According to , under certain circumstances, the terminal sliding mode has a singular problem which can cause the system to be out of control. So  proposes nonsingular terminal sliding mode (NTSM), which can overcome the singularity problem of terminal sliding mode and it has a wide range of applications in the field of mechanical arm, motor control .
For system (38), the NTSM control method and its proof of stability are proposed in the paper . The switching function of NTSM is defined aswhere is the sliding mode surface parameter to be designed, and are odd numbers, , and .
The control law is designed as
Remark 1. In order to solve the uncertainty of the model and the influence of external disturbance, (41) and (43) must have a larger and . However, there is a fatal weakness that it will produce strong chattering, which is not allowed by the mechanical mechanism. So we must adopt the corresponding solutions to ensure the convergence speed and robustness based on the weakening of the chattering.
When , formula (40) can be simplified as
Formula (42) can be simplified as
Contrasting formulas (44) and (45), due to , when the system is near the equilibrium point, the convergence rate of NTSM is higher than LSM; when the system is far away from the equilibrium state, the convergence rate of NTSM is lower than LSM . In the light of these characteristics, FNTSM control method is proposed in , and it is proved that FNTSM can converge in finite time.
The switching function of FNTSM is defined aswhere and are constants and and ; and are odd numbers; and . It can be seen from formula (46) that the switching function of FNTSM is connected by the switching function of LSM and NTSM. According to the preceding derivation, the control law of FNTSM is shown in formula (47).
Theorem 2. For system (38), under the control law of FNTSM, the system will reach the sliding surface in a limited time, and the tracking error on the sliding surface will converge to zero in a limited time.
According to Theorem 2, an important condition for the stability of Lyapunov is that meets . is the gain of sliding mode control switching, and it directly determines the severity of the chattering phenomenon. In order to eliminate the influence of on the control system, disturbance observer is designed to solve this problem.
Remark 3. Environmental interference is caused by the wind, flow, and two-order wave, and the frequency of these disturbances with respect to the dynamics of the ship is very low , so we can assume that the derivative of the uncertainty of model and environmental interference is equal to zero .
4.3. Disturbance Observer
The disturbance observer is designed aswhere , , are the parameters to be designed. When , ; when , . is the estimated value of and is the estimated value of . and ; and are, respectively, estimated error.
Remark 4. In practical engineering, the same disturbance observer can be used to compensate the disturbance. That means , , so .
So control law (47) becomes
When the control law is (49), the stability of the system is proved.
When , formula (46) is derivative.
Define the first Lyapunov function.
So it is asymptotically stable in the sense of Lyapunov.
When , formula (46) is derivative.
Define the second Lyapunov functions.
Define and . Then , so it is asymptotically stable in the sense of Lyapunov.
4.4. Weakened Chattering
Although the disturbance observer can reduce the control gain, because of the discontinuity of the switching function, the chattering is generated in the vicinity of the sliding mode.
Because the rapidity is mainly reflected in the LSM phase and the robustness is mainly embodied in the sliding mode of NTSM, when , symbolic function is still being used; when , RBF neural network  is used to approximate sign function . Define .
The algorithm principle of RBF network algorithm is shown as follows:where is the input signal of the network; is the number of nodes in the hidden layer of the network; is the output of the Gauss basis function; is the base width parameter for the node , ; is the ideal weights of neural network; is the approximation error of neural network, , and . In this paper, define , , and .
The output of RBF neural network is where is the estimated value of and is the estimated value of . Then and . Define , where is a design parameter and it is greater than zero. So the control law is
When the control law is (59), the stability of the system is proved.
Define the third Lyapunov function.
Considering and and defining , then
So it is asymptotically stable in the sense of Lyapunov.
Seeking the time integral of
Because , it can be concluded that is a nonincreasing function; then is bounded. So and . We can draw that
Obviously, is bounded. By Barbalat lemma
This shows that when , and , and then , . In total, the system can be globally asymptotically stable.
4.5. Fuzzy Weight
When the system error is , the control mode will change. If the option of is not appropriate, the controller will produce chattering. In this paper, fuzzy weighting method is used to design the controller gain vector in the mode switching process, which can improve the transient response of the system. The basic idea is that, according to the system state error, the control gain of LSM controller is obtained by using the fuzzy inference method; then the control gain of NTSM is .
The fuzzy controller is a single input and single output system. The input is the system error , and the output is the control gain of the LSM controller. Firstly, the systematic error is normalized as , and the domain of is . Their membership functions are shown in Figures 9 and 10, respectively.
The control rules are that if decreases, is also reduced. The control rules are shown in Figure 11.
Zadeh and Max-min method are used in fuzzy reasoning, and the centroid area of gravity method is used in the inverse model.
At this point, the final control law is
5. Numerical Simulations
In order to verify the performance of the FNTSM controller, numerical simulations of course keeping and course tracking for Lanxin USV are carried out. The control parameters of (67) are selected as , , , , , , , , , and .
Case 1 (numerical simulation of course keeping under weak disturbance). The purpose of this numerical simulation is to verify the rapidity of FNTSM controller.
When , course keeping simulation results are shown in Figures 12–14.
Figure 12 shows comparison results of course keeping performance among the control laws of LSM, NTSM, and FNTSM. It is observed that the proposed FNTSM control law has the fastest convergence rate than LSM and NTSM.
Figure 13 shows the control inputs of FNTSM, LSM, and NTSM. It is observed that in order to offset disturbance, the propulsion angle of all the control laws has certain chattering, but it can be clearly seen that the chattering of FNTSM is the smallest.
Figure 14 shows the estimated value of disturbance. It is observed that the error of the two curves is very small, and this can be proved that disturbance observer works well.
Case 2 (numerical simulation of course keeping under strong disturbance). The purpose of this numerical simulation is to verify the robustness of FNTSM controller.
In the case of all control parameters being not changed and , course keeping simulation results are shown in Figures 15–17.
It can be seen from Figures 15–17 that, under the strong disturbance, FNTSM still has a good control effect, and it can keep course stability at target value, but LSM and NTSM have shown overshoot and oscillation. The propulsion angle is still in a reasonable range and the disturbance observer still has a good performance.
Case 3 (numerical simulation of course tracking under strong disturbance). In the case of all control parameters being not changed and , course tracking simulation results are shown in Figures 18–20.
It can be seen from Figures 18–20 that, under the strong disturbance, FNTSM can make the course closely track the target value and not overshoot, while NTSM and LSM are obviously out of control. Meanwhile, the propulsion angle fluctuation range of FNTSM is the smallest and the disturbance observer can estimate the disturbance value very well.
According to MMG separation model theory, the response model of podded propulsion USV is proved to be still in compliance with the Norrbin model, and then the parameters of response model are obtained by the method of system identification. Through the model validation we found that the error between simulation result and field experiment is very small, which proves the correctness of modeling and identification. In view of the characteristic of USV with high speed, based on the multimodel control theory, FNTSM controller is proposed. Meanwhile, disturbance observer, RBF neural network, and fuzzy weighting are used to weaken the chattering of the system. Finally, the rapidity and robustness of FNTSM controller are demonstrated through numerical simulations. Obviously, the results of this paper can be extended for more general ship. In the next step, the FNTSM control law will be applied to the real ship experiment for verification.
Conflicts of Interest
The authors declare that they have no conflicts of interest.
This work was supported by the China Nature Science Foundation (no. 51609033), the Natural Science Foundation of Liaoning Province of China (no. 2015020022), and the Fundamental Research Funds for the Central Universities of China (nos. 3132014321 and 3132017133).
- V. Bertram, Unmanned Surface Vehicles—A Survey, Skibsteknisk Selskab, Copenhagen, Denmark, 2008.
- R. Skjetne, Ø. Smogeli, and T. I. Fossen, “Modeling, identification, and adaptive maneuvering of CyberShip II: a complete design with experiments,” in Proceedings of the IFAC Conference on Control Applications in Marine Systems, July 2004.
- S. Sakuma and T. Naruse, “On the Steering Quality Indices of Some Pod-Driven Ships,” Journal of the Japan Society of Naval Architects and Ocean Engineers, vol. 23, pp. 27–32, 2016.
- C. R. Sonnenburg and C. A. Woolsey, “Modeling, identification, and control of an unmanned surface vehicle,” Journal of Field Robotics, vol. 30, no. 3, pp. 371–398, 2013.
- T. Haraguchi and T. Nimura, “A study on maneuvrability standards for a ship with a POD propeller,” in Proceedings of the International Conference on Marine Simulation and Ship Maneuverability (MARSIM '03), vol. 3, 2003.
- H. Huang, J. Chu, H. Wei, and D. Gao, “Model for equivalent rudder effect of a rotatable twin-propeller ship,” Journal of Harbin Engineering University, vol. 37, no. 2, pp. 168–173, 2016.
- Z. Hui, Research on Hydrodynamic Performances of Podded Propulsors, Dalian Maritime University, Dalian, China, 2009.
- X. Zhang, Y. Yi, X. Sun et al., “Podded propulsion ship motion mathematical model and its application in the navigation simulator,” Journal of Dalian Maritime University, vol. 39, no. 2, pp. 9–12, 2013.
- Z. Piao and C. Guo, “Maneuvering mathematical model and course control of POD-driven ship,” in Proceedings of the 6th International Conference on Information Science and Technology (ICIST '16), pp. 301–305, IEEE, Dalian, China, May 2016.
- M. Caccia, G. Bruzzone, and R. Bono, “A practical approach to modeling and identification of small autonomous surface craft,” IEEE Journal of Oceanic Engineering, vol. 33, no. 2, pp. 133–145, 2008.
- M.-C. Fang and J.-H. Luo, “On the track keeping and roll reduction of the ship in random waves using different sliding mode controllers,” Ocean Engineering, vol. 34, no. 3-4, pp. 479–488, 2007.
- J. Gao and G. Y. Chen, “Fuzzy sliding mode control and simulation for ship's course steering,” Journal of Jiangsu University of Science and Technology: Natural Science Edition, vol. 24, no. 4, pp. 372–376, 2010.
- R. Li, T. Li, R. Bu, Q. Zheng, and C. L. P. Chen, “Active disturbance rejection with sliding mode control based course and path following for underactuated ships,” Mathematical Problems in Engineering, vol. 2013, Article ID 743716, 9 pages, 2013.
- L. Yuan and H.-S. Wu, “Terminal sliding mode fuzzy control based on multiple sliding surfaces for nonlinear ship autopilot systems,” Journal of Marine Science and Application, vol. 9, no. 4, pp. 425–430, 2010.
- J. Du, C. Guo, and C. Yang, “Adaptive tracking controller design for ship course nonlinear system,” Journal of Applied Science, vol. 24, no. 1, pp. 83–88, 2006.
- D. Wang and J. Huang, “Neural network-based adaptive dynamic surface control for a class of uncertain nonlinear systems in strict-feedback form,” IEEE Transactions on Neural Networks, vol. 16, no. 1, pp. 195–202, 2005.
- J. Li, T. Li, and Y. Li, “NN-based adaptive dynamic surface control for a class of nonlinear systems with input saturation,” in Proceedings of the 7th IEEE Conference on Industrial Electronics and Applications (ICIEA '12), pp. 570–575, IEEE, Singapore, July 2012.
- X. Jia and Y. Yang, The Mathematical Model of Ship Motion Mechanism Modeling and Identification Modeling, Dalian Maritime University Press, Dalian, China, 1999.
- N. Saku, “Ship maneuverability and control and its application in ship design,” 1982.
- V. I. Utkin, Sliding Modes and Their Application in Variable Structure Systems, MIR Publishers, Moscow, Russia, 1978.
- A. Šabanovic, “Variable structure systems with sliding modes in motion control—a survey,” IEEE Transactions on Industrial Informatics, vol. 7, no. 2, pp. 212–223, 2011.
- J. Liu, “MATLAB simulation of sliding mode variable structure control,” 2005.
- M. Zhihong, A. P. Paplinski, and H. R. Wu, “A robust MIMO terminal sliding mode control scheme for rigid robotic manipulators,” IEEE Transactions on Automatic Control, vol. 39, no. 12, pp. 2464–2469, 1994.
- Y. Feng, X. Yu, and Z. Man, “Non-singular terminal sliding mode control of rigid manipulators,” Automatica, vol. 38, no. 12, pp. 2159–2167, 2002.
- S. Yu, X. Yu, B. Shirinzadeh, and Z. Man, “Continuous finite-time control for robotic manipulators with terminal sliding mode,” Automatica, vol. 41, no. 11, pp. 1957–1964, 2005.
- C. X. Mu, X. H. Yu, and C. Y. Sun, “Phase trajectory and transient analysis for nonsingular terminal sliding mode control systems,” Acta Automatica Sinica, vol. 39, no. 6, pp. 902–908, 2013.
- S. Li, K. Li, J. Wang et al., “Non singular fast terminal sliding mode control method and its application to vehicle control,” Control Theory and Application, vol. 27, no. 5, pp. 543–550, 2010.
- X. Zhao, Y. Jiang, Y. Wu et al., “Fast nonsingular terminal sliding mode control based on multi slide mode,” Journal of Beihang University, vol. 37, no. 1, pp. 110–113, 2011.
- M. Breivik and T. I. Fossen, “Path following for marine surface vessels,” in Proceedings of the IEEE Oceans, vol. 4, pp. 2282–2289, 2004.
- L. Yuan, F. Xiao, J.-Q. Shen, M.-L. Chen, and Q.-M. Shi, “Nonsingular terminal sliding mode control with disturbance observer for uncertain nonlinear systems,” Control and Decision, no. 2, pp. 353–357, 2014.
- M. Chen, S. S. Ge, and B. V. E. How, “Robust adaptive neural network control for a class of uncertain MIMO nonlinear systems with input nonlinearities,” IEEE Transactions on Neural Networks, vol. 21, no. 5, pp. 796–812, 2010.
Copyright © 2017 Dongdong Mu et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.