Simple Adaptive Control for MIMO Nonlinear Continuous
by user
Comments
Transcript
Simple Adaptive Control for MIMO Nonlinear Continuous
Simple Adaptive Control for MIMO Nonlinear Continuous-Time Systems Using Neural Networks ニューラルネットワークを利用した多入出力 非線形連続時間システムの簡易型適応制御 Muhammad Yasser, Jiunshian Phuah, Jianming Lu and Takashi Yahagi Muhammad Yasser, 潘 俊賢, 呂 建明, 谷萩 隆嗣 Graduate School of Science and Technology, Chiba University, Chiba 263-8522, Japan 千葉大学大学院自然科学研究科 [email protected] Abstract This paper presents a method of continuous-time simple adaptive control (SAC) for multi-input multi-output (MIMO) nonlinear systems using neural networks. The control input is given by the sum of the output of the simple adaptive controller and the output of the neural network. The neural network is used to compensate the nonlinearity of plant dynamics that is not taken into consideration in the usual SAC. The role of the neural network is to construct a linearized model by minimizing the output error caused by nonlinearities in the control systems. あらまし 本稿では, ニューラルネットワークを利用して多入出力 非線形連続時間システムの簡易型適応制御を行う一方 法を提案する. 本方法では, 制御対象への制御入力は, 簡 易型適応制御の制御器の出力とニューラルネットワーク の出力との和によるものである. ニューラルネットワー クは簡易型適応制御器に関与せず, 制御対象の非線形性 によって生じる制御誤差を補償する. ニューラルネット ワークの役割は, 非線形制御システムによる出力誤差を 最小にするように, 非線形システムと組み合わせ, 線形 システム構造にすることである. 1 Introduction Adaptive control methods were developed as an attempt to overcome difficulties connected with the ignorance of systems structure and critical parameter values as well as changing control regimes [1]. Most self-tuning and adaptive control algorithms usually use reference models, controllers, or identifiers of almost the same order as the controlled plant. Since the dimension of the plants in the real world may be very large or unknown, implementation of adaptive control procedures may be very difficult or impossible. To overcome this problem, SAC procedure was developed by Sobel et al.[2] as an attempt to simplify the adaptive controllers, since no observers or identifiers are needed in the feedback loop [3]. Furthermore, the reference model is allowed to be of very low order compared with the controlled plant. For linear plants with unknown structures, SAC is an important class of adaptive control scheme [3],[4]. However, for nonlinear plants with unknown structures, it may not be possible to ensure perfect plant output that follows the output of a reference model by using SAC [5]. For nonlinear plants, many methods for the control using neural network are proposed. It has been proved that these control methods show excellent performance for nonlinearity [6],[7]. The combination of SAC and neural network for a single-input single-output nonlinear discrete-time systems has been proposed and proven to give a perfect result in the reference [5]. This paper presents a combination of SAC and neural network for continuous-time multi-input multi-output nonlinear systems. The control input is given by the sum of the output of a simple adaptive controller and the output of neural network. The role of neural network is to compensate for constructing a linearized model so as to minimize the output error caused by nonlinearities in the control system. The role of simple adaptive controller is to perform the model matching for the linear system with unknown structures to a given linear reference model. In this paper, we propose a design method using backpropagation training algorithm of simple feedforward neural network, in order to design the SAC. Finally, the computer simulations are executed and the effectiveness of this control system is confirmed. 2 Linear SAC In this section, we briefly describe a MIMO linear continuous-time SAC, where the controller is designed to realize a plant output converges to reference model output. Let us consider the following controllable and observable but unknown parameter plant model of order np with multi-input and multi-output ẋp (t) = Ap xp (t) + Bp up (t) (1) y p (t) = Cp xp (t) (2) where up (t) ∈ Rm×1 is the system input vector, y p (t) ∈ Rm×1 is the system output vector, and, Ap , Bp , Cp are matrices with the appropriate dimensions. The plant is required to follow the input-output behaviour of a reference model of the form ẋm (t) = Am xm (t) + Bm um (t) y m (t) = Cm xm (t) Dp (s)up (t) y p (t) + y s (t) y m (t) − y a (t) Dp Dp (s) = 1 + ρs " # " " " ! " Figure 1: Schematic representation of the conventional SAC % & (8) across the controlled plant in order to guarantee robust stability [3],[4],[8]. In this case the necessary feedforward Dp may be very small [3], so that y a (t) = y p (t) + y s (t) ∼ = y p (t) " (5) (6) (7) where Dp (s) is simple parallel feedforward configuration " (3) (4) where xm (t) is the nm th-order reference model state vector, um (t) ∈ Rm×1 is the model input, y m (t) ∈ Rm×1 is the model output, and, Am , Bm , Cm are matrices with the appropriate dimensions. The reference model can be independent of the controlled plant, and it is permissible to assume nm ¿ np . Now the supplementary values are defined as y s (t) = y a (t) = ey (t) = . . . . . ' . (*) / & 98: ;=><? & . & 01 ADE< >=A@? B 2#43 576 C? D>? !"$# ' ',+ . . ,' - (9) The control objective is to achieve the following relation Figure 2: Structure of MIMO nonlinear continuous-time SAC system with neural network lim ey (t) = 0 t→∞ Use the values that can be measured, namely ey (t), xm (t) and um (t), to get the low-order adaptive controller up (t) = Ke (t)ey (t) + Kx (t)xm (t) + Ku (t)um (t) = K(t)r(t) (10) where K(t) = r T (t) = [Ke (t) Kx (t) Ku (t)] [eTy (t) xTm (t) uTm (t)] (11) (12) and the adaptive gains are obtained as a combination of ’proportional’ and ’integral’ terms as follows K(t) Kp (t) K̇y (t) = Kp (t) + Ky (t) (13) = ey (t)r T (t)Tp (14) T = ey (t)r (t)Ti (Tp = TpT > 0, Ti = (15) TiT > 0) The MIMO linear continuous-time SAC is represented in Fig. 1. 3 Nonlinear SAC When the input-output characteristic of the controlled object is nonlinear, it is not possible to express like Eq. (1) and Eq. (2). Then, let the unknown system be expressed by a multi-input multi-output nonlinear system as ẋp (t) = f (xp (t)) + G(xp (t))u(t) y p (t) = h(xp (t)) (16) (17) where xp (t) ∈ Rnp ×1 is the plant state vector, u(t) = [u1 (t), u2 (t), · · · , um (t)]T ∈ Rm×1 is the control input vector, and y p (t) = [yp1 (t), yp2 (t), · · · , ypm (t)]T ∈ Rm×1 is the output vector. f (·) and h(·) are unknown nonlinear function vectors, and G(·) is unknown nonlinear function matrix. In this case, when the input in Eq. (10) is used to control the nonlinear system in Eq. (16) and Eq. (17), the problem of output error will arise[5]. To keep the plant output y(t) converge to the reference model output y m (t), the control input can be synthesized as follows u(t) = up (t) + ūp (t) (18) where, up (t) = [up1 (t), · · · , upm (t)]T is multi-output of the simple adaptive controller, as mentioned in Eq. (10). And ūp (t)(= [ūp1 (t), · · · , ūpm (t)]T is multi-output of the neural network. The structure of MIMO nonlinear continuous-time simple adaptive control system with neural network is shown in Fig. 2. In Fig. 2, a sampler is implemented in front of the neural network with appropriate sampling period to obtain discrete-time multi-input of the neural network, and a zero-order hold is implemented to change the discrete-time output ūp (k) of the neural network back to continuous-time output ūp (t) as shown in Eq. (18). Consequently, it is possible to show ūp (k) as follows ūp (k) = ĥ(up (k − 1), y m (k − 1), y a (k − 1), · · · , y a (k − n), u(k − 1), · · · , u(k − m)) output error caused by nonlinearities in the control systems. Refer to Eq. (19), the input x(k) of the neural network is given as x(k) = [uTp (k − 1), y Tm (k − 1), y Ta (k − 1), · · · , y Ta (k − n), uT (k − 1), · · · , uT (k − m)]T (20) Therefore, nonlinear function of a multi-input multioutput system can be approximated by neural network. 5 Learning of the neural network From Fig. 3, it can be obtained X hq (k) = xi (k)miq (k) (21) i yj (k) X = S1 (hq (k))mqj (k) (22) q (19) where ĥ is unknown nonlinear function, n and m are the number of sampled outputs and inputs of the plant. 4 Composition of the neural network Figure 3 shows system configuration of input-output relation of the system with neural network. The neural network consists of three layers: an input layer, an output layer and a hidden layer. Let xi (k) be the input to the i-th neuron in the input layer, hq (k) be the input to the q-th neuron in the hidden layer, yj (k) be the input to the j-th neuron in the output layer. Furthermore, let miq be the weight between the input layer and the hidden layer, mqj be the weight between the hidden layer and the output layer. ūpj (k) = S2 (yj (k)) (23) where S1 (·) is a tangent sigmoid function, S2 (·) is a pure linear function, and j = 1, 2, · · · , m. The tangent sigmoid function is chosen as 2 −1 1 + exp(−µX) S1 (X) = (24) where µ > 0, and the pure linear function is chosen as S2 (X) = X (25) Consider the case when S1 (X) = a. Then the derivative of the tangent sigmoid function S1 (·) and the pure linear function S2 (·) are as follows S10 (X) S20 (X) = = 1 − a2 1 The objective of training is to minimize the error function Ej (k) by taking the error gradient with respect to the parameters or weight vector m(k), that is to be adapted. The error function is defined as Ej (k) = 1 [ymj (k) − ypj (k)]2 2 (26) where j = 1, 2, · · · , m, and the weights are then adapted by using ∆mqj (k) = ∆miq (k) = Figure 3: System configuration with neural network In Fig. 3, the control input is given by the sum of the output of simple adaptive controller and the output of neural network. The neural network is used to compensate the nonlinearity of the plant dynamics that is not taken into consideration in the usual SAC. The role of the neural network is to construct a linearized model by minimizing the ∂Ej (k) ∂mqj (k) ∂Ej (k) −c · ∂miq (k) −c · (27) (28) where c > 0 is the learning parameter. For the learning process, Eq. (27) will be expanded as follows ∆mqj (k) = = ∂Ej (k) ∂ypj (k) ∂ ūpj (k) · · ∂ypj (k) ∂ ūpj (k) ∂mqj (k) c · [ymj (k) − ypj (k)] · Jplant ∂ ūpj (k) · (29) ∂mqj (k) −c · where Jplant = SGN(∂ypj (k)/∂ ūpj (k)), as mentioned in the reference [7]. For Eq. (28), it will be expanded as follows m X ∂y (k) ∂ ū (k) ∂E (k) pj pj j ∆miq (k) = −c · · · ∂y (k) ∂ ū (k) ∂S (h p p 1 q (k)) j j j ∂S1 (hq (k)) · ∂miq (k) m X = c · [ymj (k) − ypj (k)] · Jplant · j · ∂ ūpj (k) ∂S1 (hq (k)) ∂S1 (hq (k)) ∂miq (k) where the number of neurons in input layer was 8, in the hidden layer was 5, and in the output layer was 2. The input x(k) of the neural network is given as x(k) = [uTp (k − 1), y Tm (k − 1), y Ta (k − 1), uT (k − 1)]T Furthermore, a sampling period 0.01 is selected to get the values of x(k), from [uTp (t), y Tm (t), y Ta (t), uT (t)] to [uTp (k), y Tm (k), y Ta (k), uT (k)]. It can be seen that error of the system has been reduced, and the plant output y p (t) can follow very closely the desired output y m (t). (30) 6 Computer simulation As the nonlinear systems, two cases of two-input twooutput are considered. In all cases, parameters Dp1 = Dp1 = 0.002 (Eq.(8)), ρ1 = ρ2 = 0.1 (Eq.(8)), Tp = diag(105 , 105 , 105 , 105 , 105 , 105 ) (Eq.(14)), Ti = diag(106 , 106 , 106 , 106 , 106 , 106 ) (Eq.(15)), µ = 2 (Eq.(24)), c = 0.01 (Eqs.(27), (28)) Figure 4: y m (t) and y p (t) using only SAC are fixed. Furthermore, we assume first-order reference models with parameters Am1 = 10, Am2 = 10, Bm1 = 10, Bm2 = 10, Cm1 = 1, C m2 = 1 The selection of first-order models here is to emphasize the fact that low-order models do not affect the ability of the adaptive control system. Example 1 : Let us consider the two-input nonlinear system described by ẋ1 x2 + x22 ẋ2 x3 − x1 x4 + x4 x5 ẋ3 = x2 x4 + x1 x5 − x25 ẋ4 x5 ẋ5 x22 1 1 0 0 cos(x − x ) 1 + 1 5 0 0 −1 sin(6x1 − 6x5 ) · ¸ · ¸ yp1 x1 − x5 = yp2 x4 two-output Figure 5: y m (t) and y p (t) using SAC and neural network simultaneously · ¸ · u1 u2 Figure 4 shows the desired output y m (t) and plant output y p (t) using only SAC. The result of Fig. 4 shows that the error between y p (t) and y m (t) is large. Figure 5 shows the desired output y m (t) and plant output y p (t) using SAC and neural network simultaneously, Example 2 : Let us consider the two-input two-output nonlinear system described by ẋ1 x4 − x1 ẋ2 x2 − x1 x3 ẋ3 = x21 − x2 − x3 ẋ4 x3 0 0 · ¸ 1 + 2x3 1 u1 + · 2x3 1 u2 0 0 · ¸ · ¸ yp1 x2 − x3 = yp2 x4 Figure 6 shows the desired output y m (t) and MIMO plant output y p (t) using only SAC. The result of Fig. 6 shows that the error between y p (t) and y m (t) is large. Figure 7 shows the desired output y m (t) and plant output y p (t) using SAC and neural network simultaneously, where the number of neurons in input layer was 8, in the hidden layer was 5, and in the output layer was 2. The input x(k) of the neural network is given as x(k) = [uTp (k − 1), y Tm (k − 1), y Ta (k − 1), uT (k − 1)]T Furthermore, a sampling period 0.01 is selected to get the values of x(k), from [uTp (t), y Tm (t), y Ta (t), uT (t)] to [uTp (k), y Tm (k), y Ta (k), uT (k)]. It can be seen that error of the system has been reduced, and the plant output y p (t) can follow very closely the desired output y m (t). control. From simulation results, it has been shown that the plant output y p (t) can converge to the desired output y m (t) after learning by neural network. References [1] K. J. Åström and B. Wittenmark: ”Adaptive Control”, Addison-Wesley, 1989. [2] K. Sobel, H. Kaufman and L. Mabius: ”Implicit adaptive control for a class of MIMO systems”, IEEE Aerospace Electron Syst., Vol. AES-18, No. 5, pp.576-590, 1982. [3] I. Bar-Kana and H. Kaufman: ”Global stability and performance of a simplified adaptive algorithm”, Int. J. Control, Vol. 42, No. 6, pp.1491-1505, 1985. [4] Z. Iwai and I. Mizumoto: ”Robust and simple adaptive control systems”, Int. J. Control, Vol. 55, No. 6, pp.1453-1470, 1992. [5] J. Lu, J. Phuah and T. Yahagi: ”SAC for nonlinear systems using Elman recurrent neural networks”, IEICE Trans. Fundamentals, Vol. E85-A, No. 8, pp.1831-1840, 2002. [6] J. Lu, J. Phuah and T. Yahagi: ”A method of model reference adaptive control for MIMO nonlinear systems using neural networks”, IEICE Trans. Fundamentals, Vol. E84-A, No. 8, pp.1933-1941, 2001. Figure 6: y m (t) and y p (t) using only SAC [7] G. Lightbody, Q.H. Wu and G.W. Irwin: ”Control applications for feedforward networks”, Neural Network for Control and Systems, IEE Control Engineering series 46, pp.51-71, 1992. [8] I. Bar-Kana and H. Kaufman: ”Simple adaptive control of uncertain systems”, Int. J. Adaptive Control and Signal Processing, Vol. 2, pp.133-143, 1988. Figure 7: y m (t) and y p (t) using SAC and neural network simultaneously 7 Conclusions We have proposed a method of simple adaptive control for multi-input multi-output nonlinear continuous-time systems using neural networks. The neural network is used to compensate the nonlinearity of plant dynamics that is not taken into consideration in the usual simple adaptive