## Iterative Learning and Fractional Order Control for Complex Systems

View this Special IssueResearch Article | Open Access

# Adaptive Inverse Control Based on Kriging Algorithm and Lyapunov Theory of Crawler Electromechanical System

**Academic Editor:**Viet-Thanh Pham

#### Abstract

The electromechanical system of a crawler is a multi-input, multioutput strongly coupled nonlinear system. In this study, an adaptive inverse control method based on kriging algorithm and Lyapunov theory is proposed to improve control accuracy during adaptive driving. The electromechanical coupling model of the electromechanical system is established on the basis of the dynamic analysis of the crawler. In accordance with the kriging algorithm, the inverse model of the electromechanical system of the crawler is established by offline data. The adaptive travel control law of the crawler is obtained on the basis of Lyapunov theory. Combined with the kriging algorithm, the adaptive driving reverse control method is designed, and the online system is used to update and perfect the inverse system model in real time. Finally, the virtual prototype model of the crawler is established, and the control effect of the adaptive inverse control method is verified by theoretical analysis and virtual prototype simulation.

#### 1. Introduction

As the most common construction machinery traveling device used in engineering applications, the crawler mechanism incurs increasing requirements on the driving force due to the trend of large-scale construction vehicles. Therefore, increasing crawler-type construction vehicles use a motor as their driving mode. On the basis of the characteristics of the motor itself, the electromechanical system of a crawler has become a typical multi-input, multioutput (MIMO) strong coupling and nonlinear dynamic model. Hence, with the development of intelligent control technology, intelligent modeling technologies have been applied extensively to the inverse system control for this complex MIMO system, which provides the possibility of precise control of the adaptive travel process of a crawler. Among these technologies, inverse system control is a control strategy based on feedback linearization method. The basic idea is as follows. First, the inverse system model of the controlled object is established, and the inverse system model and the controlled object are connected in series to form the pseudolinear compound method, thereby realizing the approximate linearization and basic decoupling of the controlled object. Additional controllers are then designed for each subsystem after linearization and decoupling using various mature controller design methods to control the multivariable nonlinear system effectively [1–3].

In the existing inverse control research, neural network algorithm is the most commonly used method in inverse modeling [4, 5]. Alexandridis, Stogiannos, and Kyriou presented a novel control scheme based on the approximation of the inverse process dynamics with a radial basis function (RBF) neural network model trained with the fuzzy means algorithm [6]. Imtiaz, Assadzadeh, and Jamuar investigated the approximation capability of a neural network model. Inverse neural networks (INNs) were used to control the temperature of a biochemical reactor and its effect on ethanol production. An INN trained using the backpropagation learning algorithm from data sets of a fundamental model provided an artificial neural network application of the recognition and control of nonlinear systems [7]. Alanis, Ornelas-Tellez, and Sanchez presented a robust inverse optimal neural control approach to stabilize a discrete-time uncertain nonlinear system while simultaneously minimizing a meaningful cost function, thereby improving the adaptability of a neural network by introducing an optimization algorithm [8]. Singh, Vinoth, and Kiran addressed the inverse dynamics of a three-degrees-of-freedom U-shaped planar parallel manipulator with three legs consisting of prismatic–prismatic–revolute joint arrangement, in which each leg has one active prismatic joint; they also proposed a proportional–derivative-like adaptive sliding mode control combined with a disturbance observer for the motion control of the proposed manipulator [9, 10]. Bilello proposed the recursive neural network theory to establish positive and inverse models simultaneously with a recurrent neural network, in which the nonlinear object can show good adaptivity under a control system [11]. J. Li, S. Li, and Chen developed an adaptive control strategy that combined a neural network inverse controller with an RBF network disturbance observer for a MIMO system with non-minimum phase and internal and external disturbances [12]. In electronic systems, Aravind and Alexander explored the inverse control effect of a neural network on an H-bridge inverter [13]. The aforementioned studies reveal that inverse control systems with a neural network have a good effect in many industrial fields. However, realizing real-time tracking control is difficult because of low training efficiency.

In addition, foreign scholars have worked on other algorithms with considerable experimentation and research to improve the performance of inverse control systems. In the optimal control aspect, Ornelas-Tellez, Sanchez, and Loukianov presented an inverse optimal control approach to prevent solving the associated Hamilton–Jacobi–Bellman equation and minimize the cost function in stabilizing discrete-time nonlinear systems [14]. El-Hussieny, Abouelsoud, and Assal used particle swarm optimization to retrieve the unknown cost in their proposed ILQR problem; they proposed an evolving ILQR algorithm in refining the learned cost once new unseen demonstrations exist to overcome the overfitting problem [15]. In the fuzzy control aspect, Boukezzoula et al. applied the Takagi–Sugeno fuzzy model and the fuzzy mathematical model to identify the inverse model of nonlinear systems [16]. Chen, Zhang, and Zhao et al. proposed an independent adaptive fuzzy control system of nominal dynamics and uncertain parts to control an underactuated underwater vehicle with uncertainties based on a computed torque controller [17]. In the aspect of adaptive control, Rahideh, Bajodah, and Shaheed investigated the development and experimental implementation of an adaptive dynamic nonlinear model inversion control law for a twin rotor MIMO system using artificial neural networks; they used a highly nonlinear aerodynamic test rig with complex cross-coupled dynamics to represent the control challenges of modern air vehicles [18]. Wang, Chen, and Jian et al. proposed a new adaptive inverse control method based on a recently developed maximum correntropy criterion algorithm to improve the robustness of the adaptive inverse control against impulsive noises [19]. To some extent, the aforementioned algorithms improve the effectiveness of the inverse control. However, in a complex environment, the inverse modeling accuracy of the algorithms is extremely low. Thus, the present study focuses on improving the inverse modeling precision and efficiency.

In this study, a kriging algorithm is used for the inverse modeling of complicated nonlinear MIMO systems to realize accurate online control. In comparison with other traditional function-modeling technologies, the kriging algorithm presents two advantages. First, instead of using all information, a kriging model uses only some data near the estimated point based on the known information of dynamic construction to simulate the unknown. Second, this model has local and global statistical features, which allow the analysis of the known trend and information dynamics [20].

In this study, it is assumed that the crawler can be unmanned in a complex environment. Because the electromechanical coupling model of crawler is a nonlinear system with multiple parameters and strong coupling, the problem of control precision is more difficult. In order to improve control accuracy during adaptive driving, a Lyapunov adaptive control algorithm, a kriging algorithm modeling, an adaptive inverse control design, and an inverse control in the application of the crawler, we analyze the control performance of adaptive inverse control algorithm through theoretical calculation and virtual prototype simulation. The control method provides a theoretical basis for the practical application of the crawler in the unmanned driving situation.

#### 2. Modeling of the Crawler

##### 2.1. Kinematics Analysis of the Crawler

As shown in Figure 1, a global coordinate system* XOY* and a moving coordinate system* X*_{R}*O*_{R}*Y*_{R} are established, where is the geometric center of the crawler;* O*_{R}*X*_{R} points to the track;* O*_{R}*Y*_{R} points to the track side and is perpendicular to* O*_{R}*X*_{R}; and are located on both sides of the crawler forward speed and direction, respectively; and* O*_{R}*X*_{R} is consistent. is the included angle between the global and moving coordinate systems; it is positive when deflected counterclockwise and negative when clockwise.* D* denotes the body width. In the course of driving, the crawler mainly relies on both sides of the track to achieve the speed difference. In the steering movement, the inner and outer crawlers undergo some side slip. The sliding movement of the crawler belts on both sides is consistent, and the wheel displacement and tracks of the track internal mechanism will not occur because the crawler frame is an entirely rigid structure.

Figure 1 shows the crawler movement to at the moment. The state equation of motion can be expressed aswhere is the current travel position and attitude equation of the crawler. According to the structural characteristics and geometric center of the track , linear velocity and angular velocity determine the current left track speed and the right track speed . Substituting (2) into (1) yieldswhere* H*_{1} is the velocity state matrix of the crawler in the global coordinate system. On the basis of =* R· ω* and (2), the crawler radius during steering can be calculated as follows:When

*=*, both sides of the crawler speed are equal to the straight crawler line; that is,

*R*=

*∞*; when ≠ and ≠ −, the crawler is in the course of steering.

##### 2.2. Kinetic Analysis of the Crawler

Figure 2 shows the process of driving the crawler to overcome the operational, wind, and steering resistance.

Figure 3 shows the crawler used for speed analysis. is the distance from the longitudinal axis of the track to the steering center, is the steering angular velocity of the vehicle, is the geometric center of the track ground plane, is the intersection of the steering center with the vertical line and longitudinal axis of the track, is the instantaneous center of the track speed, denotes the track width, and represents the distance from to .

The speed analysis indicates that, for the driving side of the crawler, the instantaneous center of the speed is away from the steering center position. For the brake side of the crawler, the instantaneous speed is in the center of the steering center position. The magnitude of the force acting on the track by the ground is related to the vertical load, and the direction is opposite to the absolute speed. Therefore, the speed of the crawler surface can be subjected to stress analysis after the evaluation.

The crawler ground is used for d*x*d*y* force analysis, as shown in Figure 4. A right-angle scale is constructed by taking the crawler center as the origin, the longitudinal axis of the track as the -axis, and the straight line that crosses the center and perpendicular to the -axis as the -axis. To withstand the role of trace friction d*F*_{i}, the direction and the absolute speed of the opposite for each d*x*d*y* crawler surface are expressed as follows: where* p*(*x*,* y*) is the ground pressure ratio function and* μ* is the steering resistance coefficient, the value of which is correlated to the turning radius.

The component of d*F*_{i} in the direction of the - and -axes is

When the crawler ground pressure is uniform, the available ground facing the track resistance torque (crawler ground geometric center ) is as follows:where ,* i* = 1, 2, and is the vertical offset of the instantaneous center.

After the integration obtains the single crawler on the longitudinal friction, lateral force and steering resistance torque occur. Figure 5 shows the crawler walking device balance analysis of stress. The overall force of the vehicle can be listed in a balance equation.

Steering or braking force is required to obtain the solution equilibrium equation. Thus, we can list the crawler travel device steering dynamic equation as

##### 2.3. Electromechanical Coupling Modeling of the Crawler

The symmetrical three-phase asynchronous motor electric current oscillations in its windings are described by the six circuit voltage equations transformed next into the system of four Park’s equations in the so-called “*αβ*–dq” reference system. We obtain the state equation of the induction motor, as shown as follows:where and are the stator voltages; and are the stator and rotor winding resistance, respectively; and are the stator currents;* Ψ*_{rd} and* Ψ*_{rq} are the rotor fluxes; and are the self-inductance of the equivalent two-phase winding of the stator and the rotor, respectively; is the mutual inductance between the equivalent windings when the stator and rotor are coaxial; is the number of pole pairs;* J* is the motor’s moment of inertia; is the load torque;* ω*_{n} is the rotating magnetic field speed;* ω* is the rotor speed;

*= 1 −*

*σ**L*

_{m}

^{2}/(

*·*) is the flux leakage factor of the motor; and = / is the rotor’s electromagnetic time constant

*.*

The torque and motion are expressed as

Substituting (10) into (13) yields

According to the kinematic characteristics of the crawler, the dynamic equation of motion is expressed by combining (11) and (14), as shown as follows:

#### 3. Controller Design

##### 3.1. Approximate Inversion Modeling Based on Kriging

As a semiparametric interpolation method, the kriging model contains polynomials and random parts [20], as shown as follows:where* f*(*x*) = [*f*_{1}(*x*), …, (*x*)]^{T} and *β*_{k} =[*β*_{k1}, …, *β*_{km}]^{T}, in which is the number of basis functions of the regression model.* Y*(*x*) is the response to be measured; and* f*(*x*) is a polynomial for* x*, which provides a simulated global approximation. Normally,* f*(*x*) can take a constant value without affecting the accuracy of the simulation, and it does not play a decisive role in the accuracy of the simulation. *β*_{k} is a vector of regression coefficients, and (*x*) is a random error function whose mean is zero but the variance is not zero.

(*x*) is not independent and identically distributed to provide a simulated local error approximation. Specifically, the covariance is not zero, and its covariance matrix iswhere is the known sample point, is the sample point,* R*(…) is the correlation equation, and* σ*^{2} is the process variance.

In the kriging model, the random error function is dependent, and the associated correlation function* R(*, ) plays a decisive role in the accuracy of the simulation.where is a relative coefficient and is the th component of .

##### 3.2. Adaptive Control Law Design

On the basis of Lyapunov theory, we construct a scalar function that can satisfy its stability condition as follows:

The differential equation (see (19)) combined with the system error formula is expressed as follows:

We obtain the control law* U* = [*v*,* ω*] as

Substituting (21) into (20) yieldswhere , , , , and are constants greater than zero. When *α*_{c}* + β*

_{c}

*=*1, (22) must be negatively definite.

Therefore, on the basis of Lyapunov theory, the crawler walking device can achieve the effect of stable tracking control under the control of the law* U* = [*v*,* ω*].

##### 3.3. Inverse Controller Design with Kriging Model

As shown in Figure 6, on the basis of the characteristics of the electromechanical system of the crawler, the input parameters include the supply voltage of the drive motor on both sides of the crawler , , drive motor supply frequencies , , and the crawler load torque on both sides* TL*_{L},* TL*_{R}. The output parameters include both sides of the crawler driving speed , . The function mapping relationship between the input and output parameters of the electromechanical system of the crawler is approximated by the kriging algorithm to establish the black box model.

In this system, the control and output signals are* U* = [, , , ,* TL*_{L},* TL*_{R}] and* Y* = [, ], respectively. The corresponding output signal is obtained by inputting the control signal into the system of the identification object. The input and output signals are taken as samples, and the kriging algorithm is used for modeling and training. The inverse model parameters established by the kriging algorithm are adjusted using the deviation signal between the output signals of the identification object and the inverse model to improve the modeling accuracy of the inverse system.

Figure 7 shows the complete block diagram of the developed adaptive nonlinear model using the inverse control approach based on the kriging model. The concrete realization process is as follows.

(1)* t* = 0. The online learning kriging inverse system is initialized, and the modeling coefficient of the offline training kriging inverse system is taken as the initial value of the adaptive inverse control of online learning.

(2) In the adaptive control process, the error* e*(*t*) between the ideal output signal and the output of the controlled system is calculated at time . The deviation is taken as the controller input to calculate the theoretical control signal. The theoretical control signal is disturbed by external disturbances. The signal is inputted as an inverse system model.

(3) The inverse system model outputs input to the original system and the inverse system correction model. The parameters of the kriging inverse system and the model are corrected on the basis of the error* e*, inverse system output , and original system output* Y*.

(4) The parameters obtained in the modified model are inputted to the kriging inverse system. Moreover, the inverse system is modified to improve its control accuracy.

#### 4. Simulation Analysis and Discussions

The test crawler design dimensions are used to establish the dynamic simulation model shown in Figure 8, and the road surface is a hard pavement.

**(a)**

**(b)**

The input and output parameters of the range are shown in

Figure 9 shows the designed trajectory. After traveling at a linear velocity of 0.3 m/s at a centroid of 0.3 m/s, the trajectory turns to the right at an angular velocity of 0.1 rad/s, turns to the left, and then stops for a while after traveling in a straight line.

The preset travel path indicates that this study uses neural network, fuzzy, and kriging algorithms to establish the inverse control system of the tracked mobile device and simulates the crawler walking device. The simulation results are as mentioned in Figures 10, 11, and 12.

**(a) Deviation of X-axis**

**(b) Deviation of Y-axis**

**(c) Deviation of θ**

**(a) Left crawler**

**(b) Right crawler**

Figure 10 indicates that the inverse control system based on kriging, neural network, and fuzzy algorithms shows a good control effect. However, the adaptive inverse control system based on the kriging algorithm indicates the best control effect. The robustness based on the kriging algorithm is the strongest during the two steering operations and can follow the reference path better. The same course angle deviation is set during the start of the crawler travel. In the first straight-line phase (Figure 11), the control system based on the kriging algorithm allows the crawler to track the upper reference path considerably faster. The deviation of the* X*- and* Y*-axes and heading angle* θ* is maintained at 0 m and 0 rad, respectively. Fuzzy control and neural network control effects are relatively close. From the analysis of the results of the crawler walking speed on both sides in Figure 12, the outputs of the kriging and neural network algorithms are closer to a given ideal traveling speed under the three inverse control systems. Among them, the fuzzy inverse control system presents a relatively large deviation, especially in the steering of the moment. A larger deviation gain will occur when the maximum error is up to 50%. Therefore, the results suggest that, on the basis of the same training samples, the kriging algorithm indicates better training efficiency and training effect and shows the best control effect in the classical inverse control algorithm.

The inverse control system is based on the kriging algorithm in the control of the driving process of the crawler walking device. The electromechanical coupling performance analysis results are as mentioned in Figures 13, 14, and 15.

**(a) Output torque of motors**

**(b) Load torque of the crawlers**

**(a) Left**

**(b) Right**

**(a) Left**

**(b) Right**

In the course of traveling, the crawler initially runs through a straight line and then goes through two turns, such that it travels straight to the final point. Therefore, the load on the crawler drive motor is nearly the same as that of the crawler on both sides while traveling straight (Figure 13(b)). The effective value fluctuates at approximately 30 N·m. During the driving process, the crawler walking device receives the ground and the load of the machine itself and will also be turned to the driving torque. Therefore, the load on the inner track decreases, and that on the outer track increases. Finally, a straight-line driving process is resumed.

On the basis of the above variation of load torque, the input voltage of the driving motor on both sides of the crawler is consistently kept at 380 V, and the change of the driving power of the motor directly influences the load torque (Figures 14 and 15). Therefore, during the entire driving process, the change of the output current of the driving motor is consistent with the load torque, and the output power of the driving motor is approximately 750 W when traveling in a straight line. When steering, the output power values of the outer and inner track drive motors are approximately 1 kW and 550 W, respectively.

#### 5. Conclusion

An adaptive inverse control algorithm based on kriging algorithm is proposed in this study, and the control algorithm is applied to the adaptive control of the crawler. First, an inverse modeling system based on the kriging algorithm and an online adaptive inverse control system are established. Second, taking the crawler as an example, the electromechanical coupling model of the crawler is established. Moreover, the inverse model of the electromechanical system is developed by the kriging algorithm. Finally, the virtual prototyping cosimulation is used to set a specific driving path. Furthermore, the control effects of the classical inverse modeling method neural network and fuzzy and kriging algorithms are compared. The simulation results show that the adaptive inverse control method based on the kriging algorithm has better control accuracy and robustness. The robustness based on kriging algorithm is the strongest during the two steering operations and can better follow the reference path, compared with neural network and fuzzy algorithm, thereby establishing a foundation for the adaptive walking function of a crawler in driverless situations.

#### Data Availability

The process details of how experimental data was achieved need to be kept confidential, because this manuscript got the support from a confidential project.

#### Conflicts of Interest

The authors declare that they have no conflicts of interest.

#### Acknowledgments

This work is supported by National Natural Science Foundation of China (Project Nos. 51705187, 61871199), the Postdoctoral Science Foundation of China (Grant No. 2017M621202), and the National Key R&D Program of China (No. 2016YFC0303902).

#### References

- K. M. Vu, “A model predictive controller for inverse response control systems,”
*IFAC-PapersOnLine*, vol. 28, no. 8, pp. 562–567, 2015. View at: Publisher Site | Google Scholar - Y. Su and C. Zheng, “Global finite-time inverse tracking control of robot manipulators,”
*Robotics and Computer-Integrated Manufacturing*, vol. 27, no. 3, pp. 550–557, 2011. View at: Publisher Site | Google Scholar - M. Galicki, “Inverse-free control of a robotic manipulator in a task space,”
*Robotics and Autonomous Systems*, vol. 62, no. 2, pp. 131–141, 2014. View at: Publisher Site | Google Scholar - H.-G. Han and J.-F. Qiao, “Adaptive dissolved oxygen control based on dynamic structure neural network,”
*Applied Soft Computing*, vol. 11, no. 4, pp. 3812–3820, 2011. View at: Publisher Site | Google Scholar - H.-G. Han, J.-F. Qiao, and Q.-L. Chen, “Model predictive control of dissolved oxygen concentration based on a self-organizing RBF neural network,”
*Control Engineering Practice*, vol. 20, no. 4, pp. 465–476, 2012. View at: Publisher Site | Google Scholar - A. Alexandridis, M. Stogiannos, A. Kyriou, and H. Sarimveis, “An offset-free neural controller based on a non-extrapolating scheme for approximating the inverse process dynamics,”
*Journal of Process Control*, vol. 23, no. 7, pp. 968–979, 2013. View at: Publisher Site | Google Scholar - U. Imtiaz, A. Assadzadeh, S. S. Jamuar, and J. N. Sahu, “Bioreactor temperature profile controller using inverse neural network (INN) for production of ethanol,”
*Journal of Process Control*, vol. 23, no. 5, pp. 731–742, 2013. View at: Publisher Site | Google Scholar - A. Y. Alanis, F. Ornelas-Tellez, and E. N. Sanchez, “Discrete-time inverse optimal neural control for synchronous generators,”
*Engineering Applications of Artificial Intelligence*, vol. 26, no. 2, pp. 697–705, 2013. View at: Publisher Site | Google Scholar - Y. Singh, V. Vinoth, Y. R. Kiran, J. K. Mohanta, and S. Mohan, “Inverse dynamics and control of a 3-DOF planar parallel (U-shaped 3-PPR) manipulator,”
*Robotics and Computer-Integrated Manufacturing*, vol. 34, pp. 164–179, 2015. View at: Publisher Site | Google Scholar - Y. Singh and M. Santhakumar, “Inverse dynamics and robust sliding mode control of a planar parallel (2-PRP and 1-PPR) robot augmented with a nonlinear disturbance observer,”
*Mechanism and Machine Theory*, vol. 92, pp. 29–50, 2015. View at: Publisher Site | Google Scholar - Y. Kim, Y. Choi, and J. Lee, “Speed-sensorless vector control for permanent-magnet synchronous motors based on instantaneous reactive power in the wide-speed region,”
*IEE Proceedings - Electric Power Applications*, vol. 152, no. 5, p. 1343, 2005. View at: Publisher Site | Google Scholar - J. Li, S. Li, X. Chen, and J. Yang, “RBFNDOB-based neural network inverse control for non-minimum phase MIMO system with disturbances,”
*ISA Transactions®*, vol. 53, no. 4, pp. 983–993, 2014. View at: Publisher Site | Google Scholar - P. Shanmuga Aravind and S. Albert Alexander, “Harmonic minimization of a solar fed cascaded H Bridge inverter using Artificial Neural Network,” in
*Proceedings of the 2013 International Conference on Energy Efficient Technologies for Sustainability, ICEETS 2013*, pp. 163–167, India, April 2013. View at: Google Scholar - F. Ornelas-Tellez, E. N. Sanchez, A. G. Loukianov, and J. J. Rico, “Robust inverse optimal control for discrete-time nonlinear system stabilization,”
*European Journal of Control*, vol. 20, no. 1, pp. 38–44, 2014. View at: Publisher Site | Google Scholar | MathSciNet - H. El-Hussieny, A. A. Abouelsoud, S. F. M. Assal, and S. M. Megahed, “Adaptive learning of human motor behaviors: An evolving inverse optimal control approach,”
*Engineering Applications of Artificial Intelligence*, vol. 50, pp. 115–124, 2016. View at: Publisher Site | Google Scholar - R. Boukezzoula, S. Galichet, and L. Foulloy, “Nonlinear internal model control: application of inverse model based fuzzy control,”
*IEEE Transactions on Fuzzy Systems*, vol. 11, no. 6, pp. 814–829, 2003. View at: Publisher Site | Google Scholar - Y. Chen, R. Zhang, X. Zhao, and J. Gao, “Adaptive fuzzy inverse trajectory tracking control of underactuated underwater vehicle with uncertainties,”
*Ocean Engineering*, vol. 121, pp. 123–133, 2016. View at: Publisher Site | Google Scholar - A. Rahideh, A. H. Bajodah, and M. H. Shaheed, “Real time adaptive nonlinear model inversion control of a twin rotor MIMO system using neural networks,”
*Engineering Applications of Artificial Intelligence*, vol. 25, no. 6, pp. 1289–1297, 2012. View at: Publisher Site | Google Scholar - R. Wang, X. Chen, T. Jian, and B. Chen, “Robust Adaptive Inverse Control Based on Maximum Correntropy Criterion,”
*IFAC-PapersOnLine*, vol. 48, no. 28, pp. 285–290, 2015. View at: Publisher Site | Google Scholar - G. Zhang, G. Wang, X. Li, and Y. Ren, “Global optimization of reliability design for large ball mill gear transmission based on the Kriging model and genetic algorithm,”
*Mechanism and Machine Theory*, vol. 69, pp. 321–336, 2013. View at: Publisher Site | Google Scholar

#### Copyright

Copyright © 2018 Guanyu Zhang 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.