A new method for identification and control of nonlinear dynamic systems

A new method for identification and control of nonlinear dynamic systems

Engng Applic. Artif. lntell. Vol. 9, No. 3, pp. 231-243, 1996 Pergamon Copyright ~ 1996 Elsevier Science Ltd Printed in Great Britain. All rights re...

830KB Sizes 2 Downloads 33 Views

Engng Applic. Artif. lntell. Vol. 9, No. 3, pp. 231-243, 1996

Pergamon

Copyright ~ 1996 Elsevier Science Ltd Printed in Great Britain. All rights reserved 0952-1976/96 $15.00+0.00

$0952-1976(96)00015-2

Contributed Paper A New Method for Identification and Control of Nonlinear Dynamic Systems XIANFENG NI * Beijing University of Aeronautics and Astronautics, E R. China MICHEL VERHAEGEN Delft University of Technology,The Netherlands A R D J A N J. K R I J G S M A N Delft University of Technology,The Netherlands H E N K B. V E R B R U G G E N Delft University of Technology,The Netherlands (Received November 1995)

This paper presents a new model for nonlinear systems which consists of two parts: a linear part and a static nonlinear output part. The linear part is a linear combination of the model's outputs, where the static nonlinear function maps the output of the linear part to the model's output. This model can be applied to represent a relatively large class of nonlinear dynamic systems with fading memory. Based on this model, one can directly introduce the corresponding output feedback control law. The identification and control method is applied to two simulation examples of a discrete-time system and the dynamics of a complicated missile to demonstrate the performance and efficiency of the proposed method. Copyright (~ 1996 Elsevier Science Ltd Keywords: Wiener model, nonlinear identification, nonlinear control, recurrent neural networks.

1. INTRODUCTION In order to control nonlinear dynamic systems, appropriate models should be developed. It is well known from system theory that most physical systems can be described by the nonlinear state dynamic equations: x(k) = f ( x ( k -

1 ) , u ( k - 1))

(1)

y(k) = g(x(k),u(k)) where x(k) is the state vector at current step k, u(k) is the input vector, y(k) is the output of the system, and f ( . , . ) and g(., •) are nonlinear functions. However, there is currently no general, efficient control method to deal with this class of model. Only to Correspondence should be sent to: Professor H. B. Verbruggen, Department of Electrical Engineering, Delft University of Technology, P.O. Box 5031, 2600 GA Delft, The Netherlands. * Supported by the Research Fellowship Committee of Delft University of Technology, The Netherlands.

affme nonlinear dynamic systems can input-output feedback linearization be applied to design a nonlinear output feedback control if the zero dynamics has an asymptotically stable equilibrium at the origin, in other words, if the system is minimum-phase.t But even if the nonlinear system is an affine system, it is difficult to guarantee its minimum-phase property. This paper presents a novel method to design output feedback control of a nonlinear system with fading memory which is based on a new approximated Wiener-type model. It is difficult to look for a general model to describe nonlinear dynamics. However, there are several methods of modelling some classes of nonlinear dynamic systems, for example, Wiener models or Laguerre models use the following description: x(k) = A x ( k - 1) + B u ( k - 1) y(k) p(x(k))

I

(2)

where A is an exponentially stable matrix, p(- ) is a nonlinear readout map, and x(k) is the hyperstate which is 231

232

X I A N F E N G N1 et al.: NONLINEAR DYNAMIC SYSTEMS

different from the state x ( k ) in (1). It consists of a linear dynamic system and a static nonlinear function. It is known that under an extremely weak condition, namely with fading memory, all nonlinear dynamic systems can be approximated by this type of model. 2-4 Wigren presented a recursive prediction error identification using a nonlinear Wiener model. 5 In his paper the linear dynamic block is modelled as a SISO transfer function operator, and the static nonlinearity is approximated by a piecewise linear function. In Ref. 6, Pajunen treated the problem of adaptive control of a Wiener type of nonlinear process. The memoryless nonlinearity is approximated by a piecewise linear function with known breakpoints. There are, however, two reasons to not deal with this type of model. Firstly, if it is desirable to estimate the parameters directly, there are some major difficulties in identifying this recurrent dynamic model. For example, given the input-output data from the actual system, it is difficult to estimate model (2) if the real model is not a Wiener model. Secondly, because the hyperstate x ( k ) of a linear dynamic system is not normally available, it is not easy to design a suitable control law for a Wiener model. This paper discusses the identification and control of nonlinear systems with fading memory by presenting a new type of Wiener model. The following assumptions are made about this type of system: (A1) The nonlinear dynamic system has fading memory; that is, given any initial state of the system Vx0 6 X, where X is the maximal region of operation, if there is no input to the system u = 0, then the output of the system will tend to zero, or limt_~o yp(t) = 0. (A2) The nonlinear system can be tested by any signal u 6 U so that one can get enough information about the system to identify it. This assumption is important, because from identification theory it is known that in order to get an exact model, the system must be persistently excited. Section 2 introduces a new type of Wiener model for modelling multi-input and multi-output nonlinear dynamic systems with fading memory. In Section 3, a discussion of the identification problem is undertaken. A three-layer neural network is used to express this new model. Corresponding training algorithms (static backpropagation and recurrent backpropagation) are applied to identify the weights and bias parameters. The control problem of the model is studied in Section 4. Simulation results of identification and control of a discrete time nonlinear system and a complicated model of missile dynamics are presented in Section 5. These examples serve to illustrate the applicability of the methods in the identification and control of nonlinear dynamic systems with fading memory.

with fading memory. Normally, a discrete-time nonlinear dynamic system can be described by a NARX (Nonlinear Auto-Regressive with eXogenous input) model: 7,s y ( k + 1) = f ( y ( k ) . . . . . y ( k - ny), u(k) . . . . . u ( k - nu)) (3)

where f : R mx(ny+nu) ~-, R m indicates a continuous nonlinear function. If the nonlinear function f ( ) is invertible to the input u(k), then a controller may be constructed by training an inverse neural network. Unfortunately, most of these nonlinear functions are not invertible, so the application of this approach is limited. Based on the principle of a Wiener model, the following model can be used to describe a nonlinear dynamic process with fading memory: /~V

]'/tl

x ( k ) = ~. A i y ( k - i) + ~. Biu(k - i) + bo i= 1

i= 1

(4)

y(k) = p(x(k) )

where u(k) ~ R r and y ( k ) ~ R m are the input vector to the plant and the output vector at instance k, respectively. x ( k ) E R m is the mid-output vector from the linear part, A i E R re×m, B i E R m×r are coefficient matrices of the linear part, and b0 6 R " is a bias vector, p(. ) : R " ~ R m is a static nonlinear function. The block diagram of the new model is shown in Fig. 1. Remark 1. The construction of this model looks like a

Wiener model, but it is not a Wiener model. Outputs of the model y ( k ) are used instead of the hyperstate x ( k ) in the Wiener model (2). If the static function y ( k ) = p ( x ( k ) ) is a linear map, then the model is a linear ARX model. The construction of this new model is completely different from the NARX model in (3). In the former, the input dimension of nonlinear function p(.) is R m, but in the latter the input dimension o f f ( ) is R m×(~,'+''). So the new model of equations (4) is simpler than the NARX model (3). The approximation of static nonlinear function y ( k ) = p ( x ( k ) ) can be implemented by means of feedforward neural networks. Remark 2. The linear part of equation (4), which repre-

sents a linear combination of the past data, can be viewed as a data compression or feature extraction which reduces dimensionality. 3. FORMULATION OF THE IDENTIFICATION PROBLEM

The linear part of model (4) can be expressed as: x ( k ) = Wocp(k) + bo

2. A N E W M O D E L

where: This section will present a new discrete-time model of a multi-input and multi-output nonlinear dynamic system

W0 = [AI . . . . .

An,., Bl . . . . . Bn,,]

(5)

XIANFENG NI e t al.: NONLINEAR DYNAMIC SYSTEMS

u(k) *

x(k)

I

"

=

j

233

y(k)

Fig. 1. Block diagram of the new model.

qo(k) = [yr(k - 1) . . . . . y r ( k - ny), u r ( k - 1) . . . . . u r ( k - n.)] r.

So 14/0 ~ R "x('~m.'+rn"), qo(k) ~ R'nn ,'+r~'. If a two-layer feedforward neural network is used to approximate the static nonlinear function y ( k ) = p ( x ( k ) ) , then: y(k) = W 2 t a n h ( W i x ( k ) + hi) + b2

(6)

where 14,qand W2 are weight matrices (Wi ~ 7ZN×", W2 :R"×~), bl and b2 are bias matrices (bl e :RN, b2 e Rm). N is the number of neurons in the hidden layer. Combining (5) with (6), it is easy to see that this is a three-layer neural network ffl~f'(mnv+rn,,),m,N, m with input qg(k) and output y(k). The activation functions are linear at the input, hyperbolic tangent sigmoid in the hidden layer, and linear at the output layer (see Fig. 2). There are two available methods of estimating the parameter weights W/and bias bi: static backpropagation and backpropagation through time. s- l0 3.1. Identification as a predictor The first method of identifying the model (4), or (5) and (6), is by using the input-output data directly from the plant u(k) and yp(k). That is, using yp(k) instead of y ( k ) in (4): y(k) = p

AiYp(k - i) + ~'. Biu(k - i) + bo

i=l

(7)

1) . . . . . y ~ ( k - ny), u r ( k - 1) . . . . . u r ( k - n,)] r.

3.2. Identification as a recurrent model

Because the model output y(k) is used for autoregression instead of the plant output y?(k), the model combined with (5) and (6) is in fact a recurrent model. It is crucial to note that the map p(.) in (4) depends on the past values of its own output y(k). Although static backpropagation can be used to learn the weights and bias mentioned above, some potential problems could exist. Hence, standard static backpropagation cannot always be used for learning. There are several methods of training recurrent networks, for example dynamic backpropagation or backpropagation through time, 9,10 and the extended Kalman filter algorithm.12 In this case, a dynamic backpropagation algorithm is used to train the weight and bias. Rewrite equations (5) and (6) in the form of a threelayer neural network:

l

ny

nn

x(k) = i~ A i y ( k - i) + i=1 ~" Biu(k - i) + bo

h(k) = t a n h ( W l x ( k ) + bl)

(9)

I. y(k) = W2h(k) + b2

where yp (k) indicates the output of the real plant. This model is referred to as the "prediction" or "seriesparallel" or "equation error" model s or the model "with teacher forcing". It Because it gives the predictive output of the plant, based on its past data yp(k) and u(k), it will be referred to in this paper as a predictor. Therefore, the input vector to neural network qo (k) will become: cp(k) = [ y ~ ( k -

properties of neural networks makes them very well suited to learn this mapping. Also, since the target output )1, (k) is available, standard backpropagation can be used for learning.

(8)

Even though the overall system is dynamic, the nonlinear map p(.) in (7) is static. Various methods can be used to approximate this mapping. The general approximation

where h(k) is the output vector of the hidden layer. In order to make the explanation clear, MATLAB notation is used in the following formulae: Im indicates an identity matrix with dimension m; W(:, j) denotes the jth column of matrix W; operator • indicates elementwise array multiplication, if z = x * y, then zi = xiyi; h' (k) is the vector derivative of the output vector of the hidden layer with respect to its input: h'(k) = d h ( k ) / d x ( k ) ; and let r(k) = W2(h'(k) • Wl). At instance k, the sensitivity of the output y(k) can be calculated with respect to the weights and bias: ~y(k) =/,. +F(k)"'~A~OY~b~i)

~b2

/ffil

234

X I A N F E N G N1

etal.:N O N L I N E A R

D Y N A M I C SYSTEMS

h(k) ~

qo(k)

y(k)

Pure linear

Tanh sigmoid

Pure linear

Wij,ho

WI, h~

W2,h2

Fig. 2. Three-layer neural network with input qo(k) and output

""

I

Oy(k - i)

Oy(k) - I,.hj (k) + r(k) ~ A; OW2(:,j)'

aW2 (:, j)

y(k).

PIv

u(k) = B~ 1 x ( k + l ) - ~ A i y ( k - i +

i=l

l)

i=1

where j = 1. . . . . (tony + rnu) - ~'Biu(k-

A.ay(k_- i) Oy(k)3bl - W2diag(h'(k)) + F(k) ~..-t 8bl i=1

nv

Oy(k) - W2diag(h' (k))x/(k) + r(k) ~ Ai Oy(k - i)

- -

aWj (:, j)



i=l

OWl C, j)'

where j -- 1. . . . . m Oy(k) = l'(k) ~bo

t I,, + i=J~"nvAi Oy(k~-bo- i) /

~y(k) _ r(k) I..cp/(k) + ~"" A @(k-i)) ~ ) 5 OWo where j = 1. . . . . N then the Jacobi matrix J(k) can be calculated by [ ~y(k) ~y(k) ~y(k) J ( k ) = [SW--~.','I)'"" "' OWo(:,N)' 8bo ' ay(k) ay(k) ay(k) 0Wj(:,l)"'"0Wl(:,m)' ~bl ' ay(k) ay(k) ay(k) ] 8W2(:, 1)'" " "' OW2(:, tony + r n u ) ' - - ~ - 2 J " Based on this Jacobi matrix J(k), the different training algorithms can be built. In this research, the batch Levenberg-Marquardt learning rule, which is much better than a general backpropagation learning rule, is used. More details about the training of recurrent neural networks can be found in Refs 9, 10 and 13.

4. CONTROL PROBLEM In the previous sections, a new model for the identification of nonlinear dynamic systems with fading memory is presented. This section discusses the control problem of this new model (4) using an inverse control method, which is based on the inverse model of the plant. In order to control a M I M O plant, consider the control problem where the dimension of the input is equal to that of the output, that is, r = m. From equation (4), because m = r, and under the assumption that square matrix B1 is invertible:

i + l) - b o

.

(lO)

i~2

Therefore, at instance k, the control u(k) can be obtained, if the target of x(k) at the next step xr(k + 1) is known. In order to get x ( k + 1), it is necessary to get the inverse function of the static nonlinear function y(k) = p ( x ( k ) ) , which can be implemented through training a two layer-neural network: x(k) = p - i ( y ( k ) )

(ll)

= V2tanh(Vly(k) +Cl) +c2

where VI, cl, V2, c2 are weight and bias matrices of this inverse neural network. Of course, one cannot guarantee that any nonlinear function y(k) = p ( x ( k ) ) will be invertible, but it is certain that in a certain region, its inverse function does exist. Using equations (10) and (I 1), the inverse control of model (4) is now derived as follows, and this inverse control scheme is shown in Fig. 3:

t

nv

u(k) = I~B( I xr(k + 1) - ~ A i y ( k -

i + 1)

i=1

nn

- ~. Biu(k - i + 1) - bo

t

(12)

i=2

xr(k) = V2tanh(Vly,.(k) + Cl) + c2.

(13)

In equation (12) there is a gain/~ which is not shown in (10), generally, 0.9 _
XIANFENG NI yr(k)

et al.:

xt(k)

~[ p-' (') ~ I I

NONLINEAR DYNAMIC SYSTEMS

~ ~ _ ~ I Linear Feedback [ContinUer

235

Nonlinear Dynamic Plant

l Fig. 3. Scheme of inverse control. R e m a r k 5. In the above controller design, there are

some problems which could make the closed-loop system unstable. For example, in a SISO system, the static map y ( k ) = p ( u ( k ) ) is considered as a linear map, then inverse control is only possible under the assumption that the plant is minimum phase. That is, polynomial B l q -l + • • • + Bnuq -n,, is stable, or its roots are located within the unit circle in the complex plane.

5. SIMULATION RESULTS

neglected. The missile will move with a deviation y from the straight flight path in some inertial frame and in equilibrium it will be oriented in the direction of motion. If the missile is perturbed from the equilibrium it will be displaced and a slideslip angle ot will be generated. The yaw angle and the rudder deflection are denoted by/~ and 6 respectively. If the state variables xl =- ot and x2 -- ~, and the input u = 5, are introduced, and some realistic parameters are choosen, the dynamic equations of motion can be obtained:

E x a m p l e I." A B I B O nonlinear plant 9

xl = x2 - 0 . 1 c o s x l ( 5 x l - 4 x ~ +x~) - 0.5cosxtu

In this case the plant with fading memory is described by the difference equation:

22 = -65xl + 50x~ - 15x~ - x2 - 100u.

y(k) y ( k + I) = 1 +y2(k-----~+ u3(k)

In order to identify this plant using the new model shown in Fig. 1, the input u(k) is assumed to be a random signal, uniformly distributed in the interval [-2, 2]. In this example, ny = 1, n u = 1, and N = 10, so the neural network in Fig. 2 belongs to :7~c2,1A0.t.After training using the Levenberg-Marquardt method provided in the MATLAB toolbox, t4 the parameters of the neural network, and bi, were obtained. In Fig. 4, the outputs of the plant as well as the identification model for the input u(k) = sin(2rrk/25) + sin(2rrk/10), are shown and are seen to be close. The nonlinearity of y ( k ) = p ( x ( k ) ) is shown in Fig. 5. The model structure is simpler than the series-parallel identification model which was discussed by Narendra and Parthasarathy. 9 Now consider the same control problem as in Ref. 9, choosing the reference model as: y m ( k + 1) = 0.6ym(k) + r(k).

First an inverse neural network is trained to approximate the inverse function of a static nonlinearity y ( k ) = p ( x ( k ) ) . Then one can construct the inverse controller according to (10) and (11). The response of the closed-loop with a reference input r(k) = sin(2rrk/25) + sin(2rrk/10) is shown in Fig. 6. The response in Fig. 6 is close to that of the reference model. E x a m p l e 2: Missile dynamics 15

Consider the case of a missile moving with constant velocity v in the horizontal plane. Assume that the missile is roll stabilized and that the change of mass can be

(14) It can be seen that this is a nonlinear dynamic system with fading memory. The missile dynamics are simulated using 4th and 5th order Runge-Kutta formulae provided by MATLAB, taking a sampling time t, = 0.05 see, and in the following simulation, tf = 30 sec. In order to get all the properties of the dynamics in the whole range, the input signal is generated as random data in the range [-0.5, 0.5]. It should be noted that if the amplitude of the test signal is too large, the system will become unstable. On the other hand, only the slideslip angles, a, are of interest here, where [al -< rr/2 radians. 5.1. Single-input/single-output First, consider a SISO situation of model (14), assuming that only the slideslip angle ~ is available for measurement, with additive output noise: yp(k) = x l ( k ) + e(k)

05)

where e(k) is white noise with variance 0.02. In this situation, ny = 2, nu = 2 and N = 10, so the structure of the neural network in Fig. 2 is 5V4,l.10,1. 5.1.1. Identification as a prediction model

First, static backpropagation is used to identify the prediction model (7). The training algorithm for the neural networks is implemented using the LevenbergMarquardt provided in the MATLAB toolbox, i4 After finishing the training, giving a new random signal input u(k), the responses of the predictor are obtained as shown in Fig. 7, from which it can be seen that two outputs are almost indistinguishable.

236

X I A N F E N G NI et al.: N O N L I N E A R D Y N A M I C SYSTEMS

Y, outputs of the plant and new model

:t

t

o

'

0

10

20

I t i'~

i, ~¸ '

30

40 50 60 time (samples)

70

,i,."

80

90

100

Fig. 4. Outputs of the plant and the identified model with input u(k) = sin(2rrk/25) + sin(2rrk/10). The solid line corresponds to the real model and the dashed fines correspond to the new identification model.

10

4 c

2

/ /

0

/

./ o

/ -6

/

/

/

/

J

J

i

/

j

/

j

f

/ J

/

/

-8

-lO -4

I

I

-3

-2

t,,

I

I

i

-1 0 1 2 x(k), output of the linear part

Fig. 5. Static nonlinear map y(k) = p ( x ( k ) ) .

, 3

i 4

XIANFENG NI et al.: NONLINEAR DYNAM1C SYSTEMS

4

-

2

!

....

i ......

i ......

i.....

i

.

~ 1 " !'~" •~" :i ::! , J:":' -~ 0

i

0

20

.

I

.

i!

ii

!......

~1:: Ir~.~

10

.

:.:

-.! .i.~ . . . .

mo|

.

I

237

~,li ,,,

30

40 50 60 time (samples)

;0

80

90

1O0

Fig. 6. Inverse control response with referenc¢ input r(k) = sin(2zrk/25) + sin(2rrk/10). The solid line denotes the output of the closed-loop and the dashed lines correspond to the output of reference model ym(k + l) = 0.6ym(k) + r(k).

Y, outputs of the plant and prediction model

2.5[ 2

..............

i

'

i ..............

i

o. I ............

--0°I

.

' .

.

.

.

.

.

.

.

.

.

.

.

.

.

.............................

.

: ..........

.

.

.

.

.

i

,

.

.........

...............

.

-115

_i0

5

10

15

time (seconds)

20

25

30

Fig. 7. Prediction performance of output y(k), compared with the real plant output y/,(k). The solid line corresponds to the real model and the dashed lines correspond to the prediction model.

238

XIANFENG NI et al.: NONLINEAR DYNAMIC SYSTEMS

5.1.2. Identification as a recurrent model In order to verify the new model (4) in which the parameters are estimated by the static back propagation algorithm, the output of the identificatied model shown in Fig. 8 is obtained with the same input. It can be seen that the identification performance is not good. In order to improve the identification performance, dynamic backpropagation is used to estimate the parameters. The identification performance is shown in Fig. 9, which is a little bit better than that shown in Fig. 8. The nonlinear map ofy(k) = p(x(k)) can also be seen in Fig. 10, and is invertible over the region. So an inverse neural network can be trained to approximate the inverse function x(k) = p-I (y(k) ) using equation (11). 5.1.3. Control results Suppose that the slideslip angle a is required to follow a desired trajectory ar (t). Suppose also that the reference model is: pr(t) + 4.2)),.(t) + 9yr(t) = 9a,.(t). Applying the inverse control law in (12) and (13) with /~ = 0.8, the response of y(k) is obtained as shown in Fig. 1 I. From the response it can be seen that the control performance is not very good, due to the existence of measurement noise. However, if these control data are used to train the network again, the improved control response shown in Fig. 12 will be obtained. At this time, one can check the nonlinear map shown in Fig. 13, which is a little different from Fig. 10. It should be mentioned that the data from a closed-loop control system was used to estimate the parameters, ignoring the potential danger due to closed-loop identification.

5.2. Single-input/two-outputs Now consider the identification of a single-input/twooutput situation, where the outputs are the slideslip angle a and the yaw angle rate ~ with additive output noise: yp(k) =

[xl(k) x2(k)

[ El (k) + [ E2(k) ]

(16)

where both Ej(k) and E2(k) are white noise with variance 0.05. Take ny = 2, nu = 2, and the number of neurons in the hidden layer N = 10, so the structure of the neural network is Y~c6.2.~0.2.The sample data is taken from t = 0 to tf = 50 sec. All initial values are set to zero. First, the neural network is trained as a predictor by static backpropagation with Levenberg-Marquardt provided in the MATLAB toolbox. After training, the identification performance is obtained with a new series of test signals, shown in Fig. 14. From the figure, it can be seen that there is little difference between the outputs of the plant and the new model. Next, the dynamic backpropagation mentioned above is used to continue to train the network. Then the identification performance shown in Fig. 15 is obtained. From the simulation results, it can be seen that

the performance is much better than is the case in singleinput/single-output, because two outputs (both slideslip angle a and yaw angle rate ~) are used in the new model. Remark 6. It should be pointed out that during the above simulation procedure, a larger sampling time (t, = 0.05 see) is used. This means that the output of the system can be predicted in 0.05 see. If a smaller sampling time, for example, t, = 0.01 see were used, then the results would improve.

6. CONCLUSIONS This paper has presented a new model to identify nonlinear dynamic systems with fading memory. Based on this new model, an inverse control method is presented. This new model consists of two parts: a linear and a nonlinear. This new model can be expressed by a three-layer neural network if the nonlinear map is approximated by a two-layer neural network. Because in the new model there is no hyperstate, a static backpropagation algorithm or teaching force training method can be employed to train the network. However, in some situations the identification performance is not good, even if the performance as a prediction model is perfect. In order to solve this problem a dynamic backpropagation algorithm is introduced to train the recurrent model. Here it should be mentioned that the convergence is good in dynamic backpropagation training, but the computational burden is too large because of the calculation of the sensitivity model. In the paper, only a batch training method is used, but it would not be difficult to apply a recursive or on-line algorithm. In the paper, results of two simulations show that in a particular operating region the static nonlinear map is invertible, and can thus be implemented by training a neural network. Then the control law can be solved on the basis of this new model. This method has the following advantages: (1) The output feedback controller can be obtained directly because the model is based on the past input-output data, whereas in the Wiener model the hyperstates are not normally available. (2) The structure of the new model and controller is relatively simpler than a NARX model. (3) Compared with a general NARX model, the number of parameters to be estimated is much smaller. (4) With a three-layer neural-network structure, static backpropagation and dynamic backpropagation can easily be employed to train the parameters. In the control problem, only the case in which the number of inputs is equal to that of the outputs is considered, i.e. r = m. If r ~ m, other control methods (for instance predictive control) can be used to design the control law. Although no mathematical proof can be given to show that this model is correct in approximating some class of nonlinear dynamic systems, the method can be viewed as

XIANFENG NI et al.: NONLINEAR DYNAMIC SYSTEMS

239

Y, outputs of the plant and identification model

2

. . . . . . . . . . . . .

~.5 1

• .

. . . . . .

I i:

...........

~

.

.

.

.

.

.

.

.

,,. ........

.

.

.

.

.

.

.

.

.

+:!

.

.

.

.

.

.

.

.

. . . . . . . ,i

:. ..........

.

.

.

.

.

.

.

.

.

.i"

"

.

.

.

.

.

.

.

.

.

.

.

!:~ ~ • .........

. . . . . . . . . . . . . . . . . . . . . . . . . .

i 0.5

.....

0

.

i. . . . . . .

.

.

.

.

.

• i ............. .

i!

'

i

.

...............

-

. . . . . . . . .

-1.5

0

5

10

15 time (seconds)

20

25

30

Fig. 8. Identification performance of output y(k), compared with the real plant output yp(k). The solid line corresponds to the real model and the dashed lines correspond to the identification model in which the parameters are estimated using static backpropagation.

Y, outputs of the plant and identification model 2.5 '

I

'

1.5 1

. . . . . . . . .

" .

.



.

.

i

.



.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

,.

~

0,5 0 -0.5 -1 -1.5 -2

-2.5

0

5

10

15 time (seconds)

20

25

30

Fig. 9. Identification performance of output y(k), compared with the real plant output yp(k). The solid line corresponds to the real model and the dashed lines correspond to the identified model in which the parameters are estimated using dynamic backpropagation.

240

X1ANFENG NI et al.: NONLINEAR DYNAMIC SYSTEMS

1.5

-

1 9

--4

.

5

I

i

i

-3

-2

-1

~ i

I

I

I

0

1

2

3

x(k), output of the linear part

Fig. 10. The property of static nonlinear function y(k) = p ( x ( k ) ) .

Y, control response of the plant 2

i

i

F

1.5 1 0.5

0

/

-0.5 .li.Ll,Lk~t|.

!l~r'vvplrv-ylt ' -1 .,~ -2

I

5

1Lo

lj5 time (seconds)

20

25

30

Fig. 11. Control response; slideslip angle o~(t) tbllows the track c~,.(t), where the controller is based on the openloop identification.

X I A N F E N G NI et al.: N O N L I N E A R DYNAMIC SYSTEMS

241

Y, control response of the plant F

l

ri

0.5

0

-0.5

.

--1

.

.

.

.

.

...........

-1.5

-2

.

.

.

.

I

0

10

5

15 time (seconds)

20

25

30

Fig. 12. Control response: slideslip angle or(t) follows the track ot,(t), where the controller is based on the closed-loop identification results.

2

i

i

1.5

1:::

1

............

~

1

~

*-t

0.5

.~

0

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

.........................

: .....

~. . . . . . . . . .

"8

"-

,u-_n.=~ . . . . . . . . .

;

.

.

.

.

.

.

.

.

.

.

.

.

0

4-

\

\ %

-1.5 ........

-2_

.

.

.

.

.

.

.

.

.

.

.



i

i

I

I

-4

-3

.

.

I

,

i

-2 -1 0 1 x(k), output of the linear part

2

3

I

I

Fig. 13. Nonlinear map alter training based on the control data.

4

242

X1ANFENG NI et aL: NONLINEAR DYNAMIC SYSTEMS

Y1, outputs of the plant and identification model 2

1 0 -1 -2 r

-30

;

t'0

1;

20

2~

3o

time (seconds) 20

.

10

i

Y2, outputs of the plant and identification model . . . ~ :

-

0

-10 -20

I ............................................. 0

5

10

15 time (seconds)

V............... 20

25

30

Fig. 14. Training as a static network: the solid line corresponds to the real model and the dashed lines correspond to the predictor model.

Y1, outputs of the plant and identification model 2 1 0 -1 -2 -5

r

i

5

10

115 time (seconds)

2=0

215

30

2~5

30

Y2, outputs of the plant and identification model 20 10 0 -10 -20

5

1=0

1L5 time (seconds)

20

Fig. 15. Training as a recurrent network: the solid line corresponds to the real model and the dashed lines correspond to the predictor model.

XIANFENG NI et al.: NONLINEAR DYNAMIC SYSTEMS

a kind o f feature extraction o r d a t a compression, which reduces the dimensionality o f the nonlinear function. This m e t h o d is d e m o n s t r a t e d by experimental results Future w o r k will need to be d o n e o n cases where the nonlinear m a p is n o t invertible. I n that ease, a piecewise nonlinear m a p could be applied to approximate this nonlinearity, a n d the corresponding controller can be

obtained. Aclmowledgemmts--The authors would like to acknowledge the suggestions of G. Schram and H.A.B. te Braake.

REFERENCF~ I. Isidori A., Nonlinear Control Systems, 2nd edn. Springer, New York (1989). 2. Boyd S. and Chua L. O. Fading memory and the problem of approximating nonlinear operators with Volterra series. IEEE Trans. Circuits and Systems CAS-32, 1150-1161 (1985). 3. Wahlberg B. System identification using Laguerre models. IEEE Trans. Automatic Control 36, 551-562 (1991). 4. Schram G., Verhaegen M. and Krijgsman A. J. System identification with orthogonal basis functions and neural networks. 13th World Congress IFAC'96, San Francisco, CA (1996).

243

5. Wigren T. Recursive prediction error identification using the nonlinear Wiener model. Automatica 29, 1011-1025 (1993). 6. Pajanen G. Adaptive control of Wiener type nonlinear systems Automatlca 18, 781-785 (1992). 7. Chen S. and Billings S. A. Represenations of non-linear systems:

the NARXX model. Int. J. Control 49, 1013-1032 (1982). 8. Srinivasan B., Prasad U. R. and Rao N. J. Back propagation through adjoints for the identification of nonlinear dynamic systems using recurrent neural models IEEE Tran~ Neural Networks 5, 213-228 (1994). 9. Narendra K. S. and Parthasarathy K. Identification and control of dynamical systems using neural networks IEEE Tran,t Neural Networks 1, 4-27 (1990). 10. Narendra K. S. and Parthasarathy K. Gradient methods for the optimization of dynamical systems containing neural networks. IEEE Trans. Neural Networks 2, 252-262 (1991). 11. Williams R. J. and Zipser D. A learning algorithm for continually running fully recurrent neural networks Neural Computation !, 270-280 (1989). 12. Puskorius G. V. and Feldkamp L. A. Neuroeontrol of nonlinear dynamical systems with Kalman filter trained recurrent networks. IEEE Trans. Neural Networks 5, 279-297 (1994). 13. Baldi R Gradient descent learning algorithm overview: a general dynamical systems perspective. IEEE Trans. Neural Networks 6, 182-195 (1995). 14. Demuth H. and Beale M. Neural Network TOOLBOX for Use with MATLAB. The Math Works Inc. (1994). 15. Svensson T. Mathematical tools and software for analysis and design of nonlinear control systems Dissertations, Linkfping University, pp. 129-131 (1992).

AUTHORS' BIOGRAPHIES Xianfeng Ni was born in 1963 in Sichuan, China. He received a B.Eng. degree in Control Engineering from Chengdu University of Science and Technology in 1983. From Harbin Institute of Technology he obtained his M.Eng. and Ph.D. degrees in 1986 and 1989, respectively. In 1990 he joined the faculty of the Beijing University of Aeronautics and Astronautics, where he is now an associate professor of the Department of Control Engineering. In 1995 he spent a year working in the Faculty of Electrical Engineering, Delft University of Technology, as a research fellow. At present he is a research fellow in the Department of Chemical and Biochemical Engineering, University College, London. His research interests range through system identification, neural networks, process control, and tomography analysis. Ard|an Kri|gsman received an M.Sc. degree in 1987 in electrical engineering at the Delft University of Technology, The Netherlands. In 1993 he received a Ph.D. degree from the Delft University of Technology for his research on the application of AI techniques in real-time control. Currently he is assistant professor at the control laboratory of the Electrical Engineering Department. He is a member of the TC on AI in Real-Time Control of IFAC, and a member of the IPC organizing workshops in this field. His main research interests lie in the fields of digital control, adaptive and learning systems and (black-box) system identification using neural networks. Henk B. Verbruggen has a chair in Control Engineering at the Delft University of Technology. He is active in the fields of AI in control and predictive control. He is currently chairman of the IFAC TC on AI in Real-Time Control. He is the (co)author of about 200 publications. He organized the first IFAC Symposium on AI in Real-Time Control in 1992, and is the IPC Chairman of the forthcoming Symposium in 1997. He is currently vice-dean of the Faculty of Electrical Engineering. Michel Vedmegen received an M.Se. degree in aeronautics from the TU Delft, The Netherlands, in 1982, and a Ph.D. degree in applied sciences from the KU Leuven, Belgium, in 1985. From 1985 to 1987 he was a US NRC research fellow at the NASA Ames Research Center in California. In 1988 he joined the Delft University of Technology, where he was an assistant professor until 1989, a research fellow of the Dutch Academy of Sciences until 1994, and since then an Associate Professor. His main research interest is in the interdisciplinary domain of numerical linear algebra and system theory. His research interest lies in the modeling, identification and optimization of dynamic systems.