Improved Adaptive Sliding Mode Control for a Class of Uncertain Nonlinear Systems Subjected to Input Nonlinearity via Fuzzy Neural Networks

The paper presents an improved adaptive sliding mode control method based on fuzzy neural networks for a class of nonlinear systems subjected to input nonlinearity with unknown model dynamics. The control scheme consists of the modified adaptive and the compensation controllers. The modified adaptive controller online approximates the unknown model dynamics and input nonlinearity and then constructs the sliding mode control law, while the compensation controller takes into account the approximation errors and keeps the system robust. Based on Lyapunov stability theorem, the proposed method can guarantee the asymptotic convergence to zero of the tracking error and provide the robust stability for the closed-loop system. In addition, due to the modification in controller design, the singularity problem that usually appears in indirect adaptive control techniques based on fuzzy/neural approximations is completely eliminated. Finally, the simulation results performed on an inverted pendulum system demonstrate the advanced functions and feasibility of the proposed adaptive control approach.


Introduction
Due to the wide existence of nonlinear systems in many fields of engineering, the controller design for nonlinear systems still received much attention from many researchers.The early control techniques were developed for nonlinear systems and presented their good performances [1][2][3][4][5][6].The fundamental ideas of these control techniques are to transform a nonlinear dynamic system into a linear one through state feedback mechanism and then apply the existing methods developed for linear systems.Although good performances can be obtained with these control techniques, the major deficiency remains.The controller design largely relies on the exact cancellation of nonlinear terms or restricts to conditions in that the unknown parameters of nonlinear systems are assumed to appear linearly.This leads to awful performances of the controllers when the existing uncertainties or nonlinear terms of the nonlinear systems are completely unknown.In addition, all control methods above are carried out with an ideal assumption of linear input.Nevertheless, in practical conditions, there exist nonlinearities in the control input because of physical limitations.The existence of the nonlinear input may lead to degradation or even make the system unstable [7].
Nowadays, fuzzy logic and neural networks are found to be powerful tools for modeling and controlling highly uncertain, nonlinear, and complex systems due to their abilities of universal approximation [8][9][10][11][12][13][14][15].Although fuzzy logic and neural networks have universal approximation abilities, some differences exist between them.The fuzzy logic has characteristics of linguistic information and logic control, while neural networks possess characteristics of learning, parallelism, and fault-tolerance.The combination of fuzzy logic and neural networks, known as fuzzy neural networks, which incorporate the advantages of fuzzy inference and neurolearning, was developed and has presented advanced functions in modeling and controlling nonlinear systems [15][16][17][18][19][20][21][22].Based on universal approximation theorem, fuzzy 2 Mathematical Problems in Engineering logic and neural networks have been developed and incorporated into adaptive control techniques.In such techniques, Lyapunov approach is used to analyze the system stability and obtain the adaptive laws as well.Conceptually, there are two distinct approaches to design the adaptive controllers: direct and indirect adaptive control methods.In the direct control method, a fuzzy logic system or neural networks are employed to simulate the action of the ideal controller and the parameters are directly adjusted to meet the control objective [15,19,[23][24][25][26][27][28][29][30][31].In contrast, the indirect control method uses a fuzzy logic system or neural networks to approximate the unknown nonlinear terms of model dynamics and then synthesizes control laws based on these approximations [15,20,21,[32][33][34][35][36][37][38][39][40].In the indirect control method [15,21,[32][33][34][35][36][37][38][39][40], the authors considered the single-input single-output (SISO) nonlinear systems in the form,  () = (x) + (x), where x ∈ R  is the overall state vector,  ∈ R is the control input, and  ∈ R is the system output.(x) ∈ R and (x) ∈ R are unknown nonlinear functions.In order to meet the control objectives, they developed the indirect adaptive controllers which are in the form  = (1/ ĝ(x,   ))(V() − f(x,   )), where V() ∈ R is a new input transforming the nonlinear system into the linear one.ĝ(x,   ) ∈ R and f(x,   ) ∈ R represent the parameterized approximations of the actual nonlinear functions, (x) ∈ R and (x) ∈ R, respectively.The weighting vectors,   () and   (), which vary according to adaptive laws, are adjusted parameters of the approximations.Since the approximations ĝ(x,   ) and f(x,   ) are calculated by a fuzzy logic system or neural networks, it is well known that these approximations cannot be guaranteed to be bounded away from zero for all time .In other words, ĝ(x,   ) may tend to zero or may be close to zero in some points in time.Such situations lead to very large control signals which may cause the controlled systems to lose their controllability or even damage the whole systems.This problem was known as a singularity problem which usually appears in indirect adaptive control method based on fuzzy/neural approximations.
Since the input nonlinearity and the singularity problem may cause negative effects on controlled systems, it is necessary to develop a new indirect adaptive control method which can bypass the singularity problem even with the existence of input nonlinearity.Therefore, by incorporating both advantages of fuzzy neural networks and sliding mode control technique, we developed a new indirect adaptive control method for a class of uncertain nonlinear systems with input nonlinearity.The proposed controller uses fuzzy neural networks to approximate the unknown nonlinear terms of model dynamics and then synthesizes the sliding mode controller.Due to the novel modifications in design of the proposed controller especially, the denominator in the adaptive control law is guaranteed to be away from zero, and, therefore, the singularity problem is completely avoided.Moreover, in order to treat the undesired effects of approximation errors, a robust compensation is added to the controller to ensure the stability of the controlled system and force the tracking errors to converge to zero as well.In contrast, many previous works dealing with indirect adaptive fuzzy control [15,21,[32][33][34][35][36][37][38][39][40] still have a weakness in that the controllers may face to the singularity problem for some cases.When the controlled systems fall into the singularity problem, these controllers may produce very large control signals.These situations may lead the systems to lose their controllability or cause the serious damage to the whole systems.Moreover, these control methods are only proper when the inputs are assumed to be linear ideally.This problem induces the controllers to the restriction of applications because the control inputs may appear nonlinearly due to the physical limitations of some components in many physical systems.For this condition, the linear input may not be suitable to use or show the awful performance.Therefore, in comparison with previous methods, the proposed control method shows the improvements in controller design in that the singularity problem is completely solved.In addition, the proposed controller can show the advanced tracking performance even the controlled system is under the influence of the input nonlinearity.With the proposed controller, the output of the system is forced to follow the desired trajectory successfully and the tracking error converges to zero asymptotically.Finally, the simulations are carried out to illustrate the effectiveness and robustness of the proposed controller.
The rest of this paper is organized as follows.The conventional sliding mode control and problem statement are presented in Section 2. The design of fuzzy neural networks is addressed in Section 3, and the design of the adaptive controller is described in Section 4. In Section 5, simulation results are given to confirm the validity of the proposed method.Finally, the conclusion is given in Section 6.

Problem Statement and Sliding Mode Control Design
Considering the th order SISO nonlinear system and assuming that the control input is nonlinearly perturbed due to physical limitations, the dynamic equations can be expressed in normal form as follows: where ∈ R  is the overall state vector of the nonlinear system which is assumed to be available for measurement and (x) ∈ R, (x) ∈ R are completely unknown smooth functions.() ∈ R is the scalar control input, while () ∈ R is the scalar system output.(()) is a continuous nonlinear function and inside the sector [ 1  2 ]; that is, where  1 and  2 are positive constants and (0) = 0.The scalar nonlinear function (()) is illustrated in Figure 1.
Obviously according to (2), there always exists a function The objective of this paper is to design the control law () such that the output () can successfully track a given desired trajectory   () ∈ R, which is a known smooth function.Before designing the controller to meet the control objective, we first rewrite the dynamic equations in (1) as follows: where (x, ()) = (x)  (()).Now we define the tracking error () ∈ R and the sliding surface () ∈ R, which describes the tracking error dynamics as follows: where  is a positive designed constant.The surface () = 0 corresponds to a linear differential equation of which the solution denotes that the tracking error () converges to zero with time ( − 1)/ [6].Taking the time derivative of (), we can get where  −1 , . . .,  1 represent coefficients in the Hurwitz polynomial which expanded from (5).Here the notation (⋅) ()  denotes the derivative   (⋅)/  .From (3) and ( 4), and noticing that  () () =  () 1 () = ẋ  , we can rewrite (6) as We define a new input variable as Then Ṡ () in ( 7) can be expressed in the compact form as If (x) and (x, ()) in ( 9) are known, in order to meet the control objective, the control law based on ideal sliding mode control can be used as where  is a positive designed constant, (x, ()) ̸ = 0 must be satisfied to make the control law in (10) proper and ensure the controllability of the system.However, in this paper, we consider that (x) and (x, ()) are completely unknown, so this controllability condition is modified for stability analysis in the next sections as the following assumption.Assumption 1. (x, ()) is bounded from below and above by some known positive constants  and ; that is, The equation in (11) implies that () converges to zero exponentially fast; therefore, the tracking error () converges to zero exponentially fast.
However, in fact, (x) and (x, ()) are unknown, the ideal control law in (10) can no longer be used.In order to overcome this problem, we use a fuzzy neural network to approximate both (x) and (x, ()).

Design of Fuzzy Neural Networks
The basic configuration of a fuzzy logic system comprises four principal components: fuzzification, rule base, fuzzy inference, and defuzzification.In the fuzzification process, the inputs,  state variables  1 ,  2 , . . .,   ∈ R, are mapped to membership values in the input universes of discourse.The rule base holds a set of antecedent-consequent linguistic rules (IF-THEN rules) that quantify the knowledge that human experts have amassed about solving particular problems.Let  be the number of IF-THEN rules.Then the th rule is described in the form of where   1 , where  = 1, 2, . . .,  correspond with  rules and  = 1, 2, . . .,  correspond with  state variables.   and  are the parameters of Gaussian functions.The fuzzy inference engine, which uses the product inference for mapping, performs as a process of mapping membership values from the input windows through the fuzzy rule base to the output window.The engine makes successive decisions about which rules are most relevant to the current situation and applies the actions indicated by these rules.The output defuzzification is the procedure of mapping from a set of inferred fuzzy signals contained within a fuzzy output window to a crisp numeric values as control actions.Using the center-average defuzzification techniques, the outputs of the fuzzy logic system can be calculated as where ] are weighting vectors that are online tuned according to the adaptive laws described in the next section to meet the control objective.The fuzzy singletons     and     reach their maximum values at points   and   with  = 1, 2, . . ., , respectively; that is,     (  ) =     (  ) = 1.The fuzzy basic vector ] has the element   (x),  = 1, 2, . . ., , defined by A fuzzy logic system, which can reason with imprecise information through the fuzzy inference, is good at explaining its actions but it cannot automatically acquire the rules it uses to make those actions.On the other hand, a neural network is good at recognizing patterns but it is not good at explaining how it reaches its decisions.These limitations have been a central driving force behind the creation of hybrid systems called fuzzy neural networks [9,12,13].A fuzzy neural network can combine the human-like reasoning style of a fuzzy system with the learning and connectionist structure of a neural network.In this manner, the parameters in a fuzzy logic system can be found by a neural network through learning processes.Figure 2 shows the structure of the fuzzy neural network with four layers: input layer, membership layer, rule layer, and output layer.Nodes in the input layer are input nodes that represent input linguistic variables.In this context, the inputs are  state variables and their values are directly transmitted to the membership layer.The membership layer has  ×  nodes of which each unit performs a membership function to an input and uses a Gaussian function to calculate the membership value.The rule layer has  nodes of which each node stands for an element   (x) of the fuzzy basis vector (x) and performs a fuzzy rule.Thus, all nodes of rule layer form the fuzzy rule set.The links between the rule layer and the output layer express the weighting factors,  1 ,  2 , . . .,   and  1 ,  2 , . . .,   , which are the elements of the weighting vectors,   and   , respectively.These factors are the parameters and are adjusted by designed adaptive laws explained in the next section.In the output layer, nodes represent the output linguistics variables.Two nodes in the output layer, as depicted in Figure 2, act for the values of f(x, ) and Ĝ(x, ).
Therefore, the fuzzy neural network has four layers with  inputs and  fuzzy rules.The inputs correspond to the state variables of the system, so the number of inputs is chosen so that it equals the order (number of state variables) of the system.The parameters of the membership functions and the number of fuzzy rules are significantly relevant to the approximation accuracy of the network.These parameters must be defined so that they can appropriately cover all possible working area of state variables.For the number of fuzzy rules, in general, the more rules the network has, the more accuracy the approximation can get.However, a great number of rules lead to the complication of the designed system and the increase of the system cost.Thus, the arrangements of parameters of membership functions and the number of fuzzy rules depend on the technical experts who have much knowledge about specific systems.
Input layer Membership layer Rule layer Output layer Figure 2: The structure of a fuzzy neural network.

Design of Adaptive Controller
Since (x) and (x, ()) are completely unknown, the ideal sliding mode control law in (10) cannot be determined.This problem leads to the uselessness of the ideal control law in (10).In order to take care of this problem, a fuzzy neural network, as shown in Figure 2, is used to approximate (x) and (x, ()) online.Then incorporating the certainty equivalent approach, the adaptive controller  ac () inspired from the ideal sliding mode control law, can be obtained as where f(x, ) and Ĝ(x, ) are the online approximations of (x) and (x, ()), respectively.The values of f(x, ) and Ĝ(x, ) are calculated by a fuzzy neural network as described in (14).However, Ĝ(x, ) may tend to be zero or be close to zero in some point in time during the operation time, especially in initial phase.This leads to very large control signal values, which may damage the whole system.This situation is known as a singularity problem.In order to avoid the singularity problem, we modify the control law in that Ĝ(x, ) is replaced with Ĝ (x, ), and the fundamental idea for operation of Ĝ (x, ) is described as follows.First we consider the value of Ĝ(x, ) during the operation time.With any initial value of Ĝ(x, ) satisfying Ĝ(x, 0) ≥ , we consider whether Ĝ(x, ) reaches the lower bound .If so, Ĝ(x, ) may have a tendency in that its value is close to zero, and the control signal will be very large, leading to lose the controllability.Thus, when the Ĝ(x, ) reaches the lower bound  we stop the update law for Ĝ(x, ) and forcedly assign  to Ĝ (x, ).In contrast, we assign Ĝ(x, ) to Ĝ (x, ) elsewhere.By this way, the singularity problem can be surely avoided.Therefore, the adaptive controller  ac () in ( 16) is replaced with the modified adaptive controller   ac () as where f(x, ) and Ĝ (x, ) are calculated via the fuzzy neural network as follows: When the controller works, the values of the weighting vectors,   () and   (), are adjusted so that f(x, ) and Ĝ(x, ) reach (x, ) and (x, ()), respectively.The adaptive laws for   () and   () are chosen as where W  ∈ R × and W  ∈ R × are positivedefined weighting matrices.These matrices govern the speed of adaptation.Now we use the notation ‖ ⋅ ‖ to express the  2 -norm of a vector.If ‖W  ‖ and ‖W  ‖ are large, ‖W −1  ‖ and ‖W −1  ‖ are small, leading to low speed of adaptation.On the contrary, the small values of ‖W  ‖ and ‖W  ‖ imply that ‖W −1  ‖ and ‖W −1  ‖ are large, leading to high speed of adaptation.Nevertheless, the high adaptive speed has a drawback in that the controlled system is very sensitive to external uncertainties.This may cause the system to lose its controllability.
In the adaptive mechanism, f(x, ) and Ĝ(x, ) are adjusted so that they converge to (x) and (x, ()), respectively.In this situation,   () and   () achieve their optimal values, where Θ  ⊂ R  and Θ  ⊂ R  are sets of the acceptable values of weighting vector,   () and   (), respectively.Ω ⊂ R  is a compact set of the state variables  1 ,  2 , . . .,   .In this paper, we assume that the compact set Ω is large enough so that the state variables  1 ,  2 , . . .,   remain within Ω under closed-loop control and the designed fuzzy neural network does not violate the universal approximation property on Ω.
In the ideal case of approximation, when f(x, ) and Ĝ(x, ) reach (x) and (x, ()), respectively,   () and   () reach  *  and  *  , respectively.However, the designed fuzzy neural network which has a finite number of units in the hidden layer is utilized to approximate (x) and (x, ()), so the approximation errors appear and affect the controlled system.Due to these errors, f(x, ) and Ĝ(x, ) cannot converge to (x) and (x, ()) exactly even though   () and   () completely converge to  *  and  *  , respectively.Let   (x) and   (x) be the approximation errors, then the exact models of (x) and (x, ()) can be expressed as follows: Now the different quantities between the approximation models and exact models can be calculated as where θ () =   () −  *  and θ () =   () −  *  are parameter errors.
Because the approximation errors exist and affect the controlled system, the modified adaptive controller   ac () may be difficult to ensure the stability of the closed-loop controlled system alone.In order to suppress the undesirable effects of the approximation errors, a compensation controller  cc () is developed and added to the controlled system.This controller is able to compensate the approximation error effects and keep the close-loop system robust.The compensation controller  cc () is designed according to the following equation: where the switching function ( Ĝ(x, )) is defined as Therefore, there are two controllers working together to force the controlled system to match the control objective: the modified adaptive controller   ac () and the compensation controller  cc ().The overall scheme of the controlled system Modified sliding mode adaptive controller x,

Unknown nonlinear system
Sliding surface

Fuzzy neural network
Online tuning New input variable is illustrated in Figure 3.The total controller () is the sum of these two controllers and its formula is given as Theorem 3. Consider the unknown nonlinear system in (1) and suppose that Assumptions 1 and 2 are satisfied.Then the controller (27) with the designed adaptive laws ( 19) and ( 20) can guarantee that the system output tracks the desired trajectory successfully and the tracking error converges to zero asymptotically fast.

Illustrative Example
This section presents the simulation results of the proposed control method for a class of unknown nonlinear dynamical system to illustrate the stability and effectiveness of the control algorithm.Let us consider the inverted pendulum system with input nonlinearity as shown in Figure 4.If  1 is the angle of the pendulum with respect to the vertical line and  2 denotes the angular velocity, the dynamic equations governing the inverted pendulum system are given as [33] where is the state vector, while  =  1 is the output of the system. is the mass of cart,  is the mass of rod,  is the half length of the rod,   is the gravitational acceleration, and (()) =   (())() is the nonlinear control input.In this example, it is assumed that   (()) = 1 + 0.5 sin(()),  = 1 kg,  = 0.1 kg,  = 0.5 m, and   = 9.81 m/s 2 .Let (x, ()) =   (())(x); the system in (37) can be rewritten as follows: With the given model parameters, it is easy to find that (x, ()) > 0 when | 1 | < /2.Let   () = (/30) sin() be the desired trajectory; then the control objective is to design a controller () such that the output  =  1 follows the desired trajectory   () = (/30) sin() as close as possible.
Since the inverted pendulum is the second order system, a fuzzy neural network with 2 inputs,  1 and  2 , and 2 outputs, f(x, ) and Ĝ(x, ), is designed.Nine fuzzy rules are used to construct the fuzzy inference of the network.When the inputs are normalized in a range [−1 1], the membership functions with  = 1, 2 are chosen as follows: On the other hand, the designed parameters for modified adaptive controller are chosen as  = 50,  = 60, W  = W  = 20, where  is a 9-by-9 unit matrix.The designed parameters for compensation controller are arranged as   = 0.05,   = 0.05,  = 1.5, and  = 2.In the numerical simulations, the fourth-order Runge-Kutta is used to solve the problem with time step size of 0.001 second.The initial condition x(0) = [0.20.2] is chosen for the simulation.Also, the initial values of adjusted parameters of the neural network are selected to be   (0) = 1,   (0) = 2,  = 1, 2, . . ., 9. Figure 5 shows the tracking performance in that the output,  =  1 , follows the desired trajectory,   () = (/30) sin(), successfully.In Figure 6, the tracking error which asymptotically converges to zero under the effect of the proposed controller is depicted.Also, the value of the sliding surface which tends to zero is displayed in Figure 7. Figure 8 especially illustrates that the value of function Ĝ (x, ) is always more than or equal to  = 1.5 during the period of simulation.This demonstrates that the singularity problem can be completely avoided with the proposed method.The control input () and nonlinear control input (()) during the simulation period are shown in Figures 9 and 10, respectively.Furthermore, the proposed control method is compared with the observer-based adaptive fuzzy control (OAFC) developed in [33] to demonstrate the advantage of our control approach.The designed parameters for the controller and the observer are maintained as provided in [33].These parameters are given as follows:    Both simulations of the proposed method and OAFC are performed in the case of input nonlinearity.The tracking performances of the proposed method and OAFC are depicted together in Figure 11.The proposed method, denoted by a solid line, shows better tracking performance than OAFC.The proposed method especially demonstrates the absolute advantage in the settling time.In Figure 12, both tracking errors of these methods are displayed.The tracking error of the proposed control method significantly converges to zero faster than OAFC.Also, the tracking error value of the proposed method is less than OAFC even in the steady state.

Conclusion
In this paper, we have proposed the advanced adaptive control approach for a class of SISO nonlinear systems subjected to nonlinear inputs.The proposed control scheme has two parts where the adaptive fuzzy controller simulates the ideal feedback control law, while the compensation controller reduces the effects of the approximation errors and keeps the system robust.With the improvement in the controller design, the proposed controller not only meets the control objective even with nonlinear inputs but also surely avoids the singularity problem that may be a serious drawback in the indirect adaptive control techniques based on fuzzy/neural networks approximations.Finally, numerical simulations were executed to verify the validity of the proposed method.

Figure 3 :
Figure 3: Overall control scheme for an unknown nonlinear system.

Figure 4 :
Figure 4: The inverted pendulum system with input nonlinearity.

Figure 9 :
Figure 9: The trajectory of the control input ().
2 , . . .,    ,    and    are fuzzy sets that correspond to the membership functions    1 ,    2 , . . .,     ,     and     , respectively.f(x, ) ∈ R and Ĝ(x, ) ∈ R, which stand for the approximations of (x) and (x, ()), respectively, are the outputs of the fuzzy logic system.    and     are fuzzy singletons, while    1 ,    2 , . . .,     use Gaussian functions to calculate the membership values according to the following equation: *  and  *  , are artificial constant quantities which are introduced only for analytical purpose, and they are not used in implementation.The optimal values,  *  ∈ R  and  *  ∈ R  , are then defined by *  and  *  , respectively.Notice that these optimal values,

)
Assumption 2. The approximation errors are bounded by some known constants   > 0 and   > 0 over the compact set Ω ⊂ R  as follows: