Abstract

We present a design method for iterative learning control system by using an output recurrent neural network (ORNN). Two ORNNs are employed to design the learning control structure. The first ORNN, which is called the output recurrent neural controller (ORNC), is used as an iterative learning controller to achieve the learning control objective. To guarantee the convergence of learning error, some information of plant sensitivity is required to design a suitable adaptive law for the ORNC. Hence, a second ORNN, which is called the output recurrent neural identifier (ORNI), is used as an identifier to provide the required information. All the weights of ORNC and ORNI will be tuned during the control iteration and identification process, respectively, in order to achieve a desired learning performance. The adaptive laws for the weights of ORNC and ORNI and the analysis of learning performances are determined via a Lyapunov like analysis. It is shown that the identification error will asymptotically converge to zero and repetitive output tracking error will asymptotically converge to zero except the initial resetting error.

1. Introduction

Iterative learning control (ILC) system has become one of the most effective control strategies in dealing with repeated tracking control of nonlinear plants. The ILC system improves the control performance by a self-tuning process in the traditional PID-type ILC algorithms for linear plants or affine nonlinear plants with nonlinearities satisfying global Lipschitz continuous condition [13]. Recently, the ILC strategies combined with other control methodologies such as observer-based iterative learning control [4], adaptive iterative learning control [5], robust iterative learning control [6], or adaptive robust iterative learning control [7], have been widely studied in order to extend the applications to more general class of nonlinear systems. However, more and more restrictions are required in theory to develop these learning controllers. Among these ILC algorithms, PID-type ILC algorithms are still attractive to engineers since they are simple and effective for real implementations and industry applications. A main problem of the PID-type ILC algorithms is that a sufficient condition required to guarantee learning stability and convergence will depend on plant’s input/output coupling function (matrix). In general, it is hard to design the learning gain if the nonlinear dynamic plant is highly nonlinear and unknown. In order to get the input/output coupling function (matrix), the ILC using a neural or fuzzy system to solve the learning gain implementation problem can be found in [8, 9]. A neural network or a fuzzy system was used to approximate the inverse of plant’s input/output coupling function (matrix). The inverse function (matrix) is claimed to be an optimal choice of the learning gain from a convergent condition point of view. As the nonlinear system is assumed to be unknown, some offline adaptive mechanisms are applied to update the network parameters in order to approximate the ideal optimal learning gain.

Actually, for control of unknown nonlinear systems, neural-network-based controller has become an important strategy in the past two decades. Multilayer neural networks, recurrent neural networks and dynamic neural network [1016] were used for the design of adaptive controllers. On the other hand, fuzzy logic system, fuzzy neural network, recurrent fuzzy neural networks and dynamic fuzzy neural network were also a popular tool for the design of adaptive controllers [1722]. These concepts have also been applied to the design of adaptive iterative learning control of nonlinear plants [2325]. However, few ILC works were developed for general unknown nonlinear plants, especially nonaffine nonlinear plants. As the authors can understand, a real-time recurrent network (RTRN) was developed in [26] for real-time learning control of general unknown nonlinear plants. But unfortunately, their learning algorithm depends on the generalized inverse of weight matrix in the RTRN. If the generalized inverse of weight matrix does not exist, the learning control scheme is not implementable.

In this paper, we consider the design of an iterative learning controller for a class of unknown nonlinear dynamic plants. Motivated by our previous work in [27], an improved version of an identifier-based iterative learning controller is proposed by using an output recurrent neural network (ORNN). Two ORNNs are used to design an ORNN-based iterative learning control system. The proposed ORNN-based ILC system includes an ORNN controller (ORNC) and an ORNN identifier (ORNI). The ORNC is used as an iterative learning controller to achieve the repetitive tracking control objective. The weights of ORNC are tuned via adaptive laws determined by a Lyapunov-like analysis. In order to realize the adaptive laws and guarantee the convergence of learning error, some information of the unknown plant sensitivity is required for the design of adaptive laws. Hence, the ORNI is then applied as an identifier to provide the required information from plant sensitivity. In a similar way, the weights of ORNI are tuned via some adaptive laws determined by a Lyapunov-like analysis. Both of the proposed ORNC and ORNI update their network weights along the control iteration and identification process, respectively. This ORNN-based ILC system can be used to execute a repetitive control task of a general nonlinear plant. It is shown that the identification error will asymptotically converge to zero and repetitive output tracking error will asymptotically converge to zero except the initial resetting error.

This paper is organized as follows. The structure of ORNN is introduced in Section 2. In Section 3, we present the design of ORNC and ORNI for the ORNN-based ILC system. The adaptation laws are derived and the learning performance is guaranteed based on a Lyapunov-like analysis. To illustrate the effectiveness of the proposed ILC system, a numerical example is used in Section 4 for computer simulation. Finally a conclusion is made in Section 5.

In the subsequent discussions, the following notations will be used in all the sections.(i)|𝑧| denotes the absolute value of a function 𝑧.(ii)𝑣=(𝑣𝑣) denotes the usual Euclidean norm of a vector 𝑣=[𝑣1,,𝑣𝑛]𝑛.(iii)𝐴=max1𝑖𝑛{𝑚𝑗=1|𝑎𝑖𝑗|} denotes the norm of a matrix 𝐴={𝑎𝑖𝑗}𝑛×𝑚.

2. The Output Recurrent Neural Network

In this paper, two ORNNs are used to design an iterative learning control system. The structure of the ORNN is shown in Figure 1, which comprises an input layer, a hidden layer, and an output layer.

(i)Layer 1 (Input Layer): Each node in this layer represents an input variable, which only transmits input value to the next layer directly. For the 𝑖th input node, 𝑖=1,,𝑛+1, net𝑖(1)=𝑥𝑖𝐃𝑂,𝑖=1,,𝑛(3)𝑂,𝑖=𝑛+1𝑖(1)=𝑓𝑖(1)net𝑖(1)=net𝑖(1),(1) where 𝑥𝑖, 𝑖=1,,𝑛 represents the 𝑖th external input signal to the 𝑖th node of layer 1, and 𝐃[𝑂(3)] denotes the delay of ORNN output 𝑂(3) whcih can be further defined as 𝑥𝑛+1=𝐃[𝑂(3)].(ii)Layer 2 (Hidden Layer): Each node in this layer performs an activation function whose inputs come from input layer. For the th hidden node, a sigmoid function is adopted here such that the th node, =1,,𝑀 will be represented as net(2)=𝑛+1𝑖=1𝑉𝑖𝑥𝑖(2),𝑂(2)=𝑓(2)net(2)=11+expnet(2),(2) where 𝑥𝑖(2)=𝑂𝑖(1), 𝑉𝑖 is the connective weight between the input layer and the hidden layer, 𝑀 is the number of neuron in the hidden layer.(iii)Layer 3 (Output Layer): Each node in this layer represents an output node, which computes the overall output as the summation of all input signals from hidden layer. For the output node, net(3)=𝑀=1𝑤𝑥(3),𝑂(3)=𝑓(3)net(3)=net(3),(3) where 𝑥(3)=𝑂(2) and 𝑤 is the connective weight between the hidden layer and the output layer.

Let 𝑛 denotes the dimension of input vector 𝑋=[𝑥1,,𝑥𝑛]𝑛×1 of nonlinear function 𝑓(𝑋) and 𝑀 denotes the number of neurons in the hidden layer, the ORNN which performs as an approximator of the nonlinear function 𝑓(𝑋) is now described in a matrix form as follows: 𝑂(3)𝐃𝑂(3),𝑋,𝑊,𝑉=𝑊𝑂(2)𝑉𝑋𝑎,(4) where 𝑊𝑀×1 and 𝑉(𝑛+1)×𝑀 are output-hidden wight matrix and hidden-input weight matrix, respectively, 𝑋𝑛×1 is the external input vector, 𝑋𝑎[𝑋,𝐃[𝑂(3)]](𝑛+1)×1 is the augmented neural input vector, and 𝐃[𝑂(3)] denotes the delay of ORNN output 𝑂(3). The activation function vector is defined as 𝑂(2)(𝑉𝑋𝑎)[𝑂1(2)(𝑉1𝑋𝑎),,𝑂𝑀(2)(𝑉𝑀𝑋𝑎)]𝑀×1 where 𝑉=[𝑉1,𝑉2,,𝑉𝑀] with 𝑉(𝑛+1)×1 being the th column vector, and 𝑂(2)(𝑉𝑋𝑎)1/(1+exp(𝑉𝑋𝑎)), =1,,𝑀 is a sigmoid function.

3. Design of Output-Recurrent-Neural-Network-Based Iterative Learning Control System

In this paper, we consider an unknown nonlinear dynamic plant which can perform a given task repeatedly over a finite time sequence 𝑡={0,,𝑁} as follows:𝑦𝑗𝑦(𝑡+1)=𝑓𝑗(𝑡),,𝑦𝑗(𝑡𝑛+1),𝑢𝑗(𝑡),(5) where 𝑗𝒵+ denotes the index of control iteration number and 𝑡={0,,𝑁} denotes the time index. The signals 𝑦𝑗(𝑡) and 𝑢𝑗(𝑡) are the system output and input, respectively. 𝑓𝑛+1 is the unknown continuous function, 𝑛 represents the respective output delay order. Given a specified desired trajectory 𝑦𝑑(𝑡), 𝑡{0,,𝑁}, the control objective is to design an output-recurrent-neural-network-based iterative learning control system such that when control iteration number 𝑗 is large enough, |𝑦𝑑(𝑡)𝑦𝑗(𝑡)| will converge to some small positive error tolerance bounds for all 𝑡{0,,𝑁} even if there exists an initial resetting error. Here the initial resetting error means that 𝑦𝑑(0)𝑦𝑗(0) for all 𝑗1. To achieve the control objective, an iterative learning control system based on ORNN design is proposed in Figure 2. In this figure, 𝐷 denotes the delay in time domain and 𝑀 denotes the memory in control iteration domain.

Before we state the design steps of the proposed control structure, some assumptions on the unknown nonlinear system and desired trajectories are given as follows.(A1) The nonlinear dynamic plant is a relaxed system whose input 𝑢𝑗(𝑡) and output 𝑦𝑗(𝑡) are related by 𝑦𝑗(𝑡)=0 for all 𝑡{,,1}.(A2) There exists a bounded unknown upper bounding function 𝑦𝑢,max(𝑡)=max𝑗|𝑦𝑗𝑢(𝑡)| such that 0<|𝑦𝑗𝑢(𝑡)|𝑦𝑢,max(𝑡), where the factor 𝑦𝑗𝑢(𝑡)=𝜕𝑦𝑗(𝑡+1)/𝜕𝑢𝑗(𝑡) represents the sensitivity of the plant with respect to its input.(A3) The reference model is designed to generate the bounded desired trajectory 𝑦𝑑(𝑡+1)=𝑓𝑑(𝑦𝑑(𝑡),,𝑦𝑑(𝑡𝑛+1),𝑟(𝑡)), which is based on a specified bounded reference input 𝑟(𝑡) with 𝑓𝑑𝑛+1 being a continuous function.

The design of the ORNN-based iterative learning control system is divided into two parts.

3.1. Part 1: Design of ORNC and Corresponding Adaptive Laws

Based on the assumptions on the nonlinear plant (5), we define a tracking error 𝑒𝑗𝑐(𝑡) at 𝑗th control iteration as follows:𝑒𝑗𝑐(𝑡)=𝑦𝑑(𝑡)𝑦𝑗(𝑡).(6) It is noted that there exist bounded constants 𝜀𝑗𝑐,𝑗𝑍+ such that the initial value of 𝑒𝑗𝑐(𝑡) will satisfy||𝑒𝑗𝑐||(0)=𝜀𝑗𝑐.(7) The difference of 𝑒𝑗𝑐(𝑡) between two successive iterations can be computed as [28]Δ𝑒𝑗𝑐(𝑡+1)=𝑒𝑐𝑗+1(𝑡+1)𝑒𝑗𝑐𝑦(𝑡+1)=𝑗+1(𝑡+1)𝑦𝑗(𝑡+1)𝜕𝑦𝑗(𝑡+1)𝜕𝑢𝑗𝑢(𝑡)𝑗+1(𝑡)𝑢𝑗(𝑡)𝑦𝑗𝑢𝑢(𝑡)𝑗+1(𝑡)𝑢𝑗.(𝑡)(8) The ORNN is used to design an ORNC in order to achieve the iterative learning control objective. Let 𝑛𝑐 be the dimension of the external input vector 𝑋𝑗𝑐(𝑡)=[𝑟(𝑡),𝑦𝑗(𝑡),𝑢𝑗1(𝑡),]𝑛𝑐×1 and 𝑀𝑐 denote the number of neurons in hidden layer of the ORNC. The ORNC which performs as an iterative learning controller is described in a matrix form as follows:𝑢𝑗(𝑡)=𝑂𝑐(3)𝐃𝑂𝑐𝑗(3)(𝑡),𝑋𝑗𝑐(𝑡),𝑊𝑗𝑐(𝑡),𝑉𝑗𝑐(𝑡)=𝑊𝑗𝑐(𝑡)𝑂𝑐(2)𝑉𝑗𝑐(𝑡)𝑋𝑗𝑐𝑎(,𝑡)(9) where 𝑊𝑗𝑐(𝑡)𝑀𝑐×1 and 𝑉𝑗𝑐(𝑡)(𝑛𝑐+1)×𝑀𝑐 are output-hidden wight matrix and hidden-input weight matrix to be tuned via some suitable adaptive laws, respectively, and 𝑋𝑗𝑐𝑎(𝑡)[𝑋𝑗𝑐(𝑡),𝐃[𝑂𝑐(3)𝑗(𝑡)]](𝑛𝑐+1)×1 is the augmented neural input vector. For the sake of convenience, we define 𝑂𝑐(2)(𝑉𝑗𝑐(𝑡)𝑋𝑗𝑐𝑎(𝑡))𝑂𝑐𝑗(2)(𝑡). Now substituting (9) into (8), we will haveΔ𝑒𝑗𝑐(𝑡+1)=𝑦𝑗𝑢𝑊(𝑡)𝑐𝑗+1(𝑡)𝑂𝑐(2)𝑗+1(𝑡)𝑊𝑗𝑐(𝑡)𝑂𝑐𝑗(2)(𝑡).(10) For simplicity, we define Δ𝑋𝑗𝑐𝑎(𝑡)=𝑋𝑗+1𝑐𝑎(𝑡)𝑋𝑗𝑐𝑎(𝑡), Δ𝑊𝑗𝑐(𝑡)=𝑊𝑐𝑗+1(𝑡)𝑊𝑗𝑐(𝑡), Δ𝑉𝑗𝑐(𝑡)=𝑉𝑐𝑗+1(𝑡)𝑉𝑗𝑐(𝑡). After adding and subtracting 𝑊𝑗𝑐(𝑡)𝑂𝑐(2)𝑗+1(𝑡) to (10), we can find thatΔ𝑒𝑗𝑐(𝑡+1)=𝑦𝑗𝑢(𝑡)Δ𝑊𝑗𝑐(𝑡)𝑂𝑐(2)𝑗+1(𝑡)𝑦𝑗𝑢(𝑡)𝑊𝑗𝑐(𝑡)𝑂𝑐(2)𝑗+1(𝑡)𝑂𝑐𝑗(2).(𝑡)(11) Investigating the second term in the right hand side of (11) by using the mean-value theorem, we have𝑂𝑐(2)𝑗+1(𝑡)𝑂𝑐𝑗(2)(𝑡)=𝑂𝑐(2)𝑗𝑉(𝑡)𝑐𝑗+1(𝑡)𝑋𝑗+1𝑐𝑎(𝑡)𝑉𝑗𝑐(𝑡)𝑋𝑗𝑐𝑎(𝑡)=𝑂𝑐(2)𝑗𝑉(𝑡)𝑐𝑗+1(𝑡)𝑋𝑗+1𝑐𝑎(𝑡)𝑉𝑗𝑐(𝑡)𝑋𝑗+1𝑐𝑎(𝑡)+𝑉𝑗𝑐(𝑡)𝑋𝑗+1𝑐𝑎(𝑡)𝑉𝑗𝑐(𝑡)𝑋𝑗𝑐𝑎(𝑡)=𝑂𝑐(2)𝑗(𝑡)Δ𝑉𝑗𝑐(𝑡)𝑋𝑗+1𝑐𝑎(𝑡)+𝑉𝑗𝑐(𝑡)Δ𝑋𝑗𝑐𝑎,(𝑡)(12) where 𝑂𝑐(2)𝑗(𝑡) = diag[𝑂(2)𝑐,1𝑗(𝑡),,𝑂(2)𝑗𝑐,𝑀𝑐(𝑡)]𝑀𝑐×𝑀𝑐 with 𝑂(2)𝑐,𝑙𝑗(𝑡)𝑑𝑂𝑗(2)𝑐,(𝑍𝑐,(𝑡))/𝑑𝑍𝑐,(𝑡)|𝑍𝑐,(𝑡), 𝑍𝑐,(𝑡) has a value between 𝑉𝑗+1𝑐,(𝑡)𝑋𝑗+1𝑐𝑎(𝑡) and 𝑉𝑗𝑐,(𝑡)𝑋𝑗𝑐𝑎(𝑡), =1,,𝑀𝑐.

Now if we substitute (12) into (11), we will haveΔ𝑒𝑗𝑐(𝑡+1)=𝑦𝑗𝑢(𝑡)Δ𝑊𝑗𝑐(𝑡)𝑂𝑐(2)𝑗+1(𝑡)𝑦𝑗𝑢(𝑡)𝑊𝑗𝑐(𝑡)𝑂𝑐(2)𝑗×(𝑡)Δ𝑉𝑗𝑐(𝑡)𝑋𝑗+1𝑐𝑎(𝑡)+𝑉𝑗𝑐(𝑡)Δ𝑋𝑗𝑐𝑎.(𝑡)(13) The adaptation algorithms for weights 𝑊𝑐𝑗+1(𝑡) and 𝑉𝑐𝑗+1(𝑡) of ORNC at (next) 𝑗+1th control iteration to guarantee the error convergence are given as follows:𝑊𝑐𝑗+1(𝑡)=𝑊𝑗𝑐𝑦(𝑡)+sgn𝑗𝑢(𝑒𝑡)𝑗𝑐(𝑡+1)𝑂𝑐(2)𝑗+1(𝑡)𝑦𝑢,max(𝑡)𝑀𝑐,(14)𝑉𝑐𝑗+1(𝑡)=𝑉𝑗𝑐𝑋(𝑡)𝑗+1𝑐𝑎(𝑡)Δ𝑋𝑗𝑐𝑎(𝑡)𝑉𝑗𝑐(𝑡)𝑋𝑗+1𝑐𝑎(𝑡)2,(15) where 𝑦𝑢,max(𝑡) is defined in assumption (A2). If we substitute adaptation laws (14) and (15) into (13), we can find that𝑒𝑐𝑗+1(𝑡+1)=𝑒𝑗𝑐(𝑡+1)𝑒𝑗𝑐×||𝑦(𝑡+1)𝑗𝑢||𝑂(𝑡)𝑐(2)𝑗+1(𝑡)𝑂𝑐(2)𝑗+1(𝑡)𝑦𝑢,max(𝑡)𝑀𝑐.(16)

Theorem 1. Consider the nonlinear plant (5) which satisfies assumptions (A1)–(A3). The proposed ORNC (9) and adaptation laws (14) and (15) will ensure the asymptotic convergence of tracking error as control iteration approaches infinity.

Proof. Let us choose a discrete-type Lyapunov function as 𝐸𝑗𝑐1(𝑡+1)=2𝑒𝑗𝑐(𝑡+1)2,(17) then the change of Lyapunov function is Δ𝐸𝑗𝑐(𝑡+1)=𝐸𝑐𝑗+1(𝑡+1)𝐸𝑗𝑐=1(𝑡+1)2𝑒𝑐𝑗+1(𝑡+1)2𝑒𝑗𝑐(𝑡+1)2.(18) Taking norms on (16), it yields ||𝑒𝑐𝑗+1(||=||||||𝑒𝑡+1)𝑗𝑐(||𝑦𝑡+1)1𝑗𝑢||𝑂(𝑡)𝑐(2)𝑗+1(𝑡)2𝑦𝑢,max(𝑡)𝑀𝑐||||||<||𝑒𝑗𝑐||(𝑡+1)(19) for iteration 𝑗1. This further implies that 𝐸𝑗𝑐(𝑡+1)>0, Δ𝐸𝑗𝑐(𝑡+1)<0, for all 𝑡{0,,𝑁} for 𝑗1. Using Lyapunov stability of 𝐸𝑗𝑐(𝑡+1)>0, Δ𝐸𝑗𝑐(𝑡+1)<0 and (7), the tracking error 𝑒𝑗𝑐(𝑡) will satisfy lim𝑗||𝑒𝑗𝑐||=𝜀(𝑡)𝑐,𝑡=00,𝑡0.(20) This proves Theorem 1.

Remark 2. If the plant sensitivity 𝑦𝑗𝑢(𝑡) is completely known so that sgn(𝑦𝑗𝑢(𝑡)) and 𝑦𝑢,max(𝑡) are available, then the control objective can be achieved by using the adaptation algorithms (14) and (15). However, the plant sensitivity 𝑦𝑗𝑢(𝑡) is in general unknown or only partially known. In part 2, we will design an ORNN-based identifier (ORNI) to estimate the unknown plant sensitivity 𝑦𝑗𝑢(𝑡) and then provide the sign function and upper bounding function of 𝑦𝑗𝑢(𝑡) for adaptation algorithms of ORNC.

3.2. Part 2: Design of ORNI and Corresponding Adaptive Laws

After each control iteration, the ORNI subsequently begins to perform identification process. The trained ORNI will then provide the approximated plant sensitivity to the ORNC to start the next control iteration. We would like to emphasize that the ORNI only identifies the nonlinear plant after each control iteration. This concept is quite different from traditional control tasks [29] and very important to the proposed ORNN-based ILC structure.

The structure of ORNN is further applied to design an ORNI to identify the nonlinear plant after the 𝑗th control iteration. The identification process is stated as follows. After each trial of controlling the nonlinear system, we collect the input output data 𝑢𝑗(𝑡) and 𝑦𝑗(𝑡), 𝑡=0,1,,𝑁+1 as the training data for the identifier. When discussing the identification, we omit the control iteration index 𝑗 and introduce a new identification iteration index 𝑘𝑍+ to represent the number of identification process. That is, the notation for the training data 𝑢𝑗(𝑡),𝑦𝑗(𝑡) and the ORNI output ̂𝑦𝑗,𝑘(𝑡) are simplified as 𝑢(𝑡),𝑦(𝑡), and ̂𝑦𝑘(𝑡), respectively. For the ORNI, let 𝑛𝐼 be the dimension of external input vector 𝑋𝐼(𝑡)=[𝑢(𝑡),𝑦(𝑡)]𝑛𝐼×1 and 𝑀𝐼 denote the number of neurons in hidden layer of the ORNI. The ORNI which performs as an iterative learning identifier for nonlinear plant (5) is now described in a matrix form as follows:̂𝑦𝑘(𝑡+1)=𝑂𝐼(3)𝐃𝑂𝐼𝑘(3)(𝑡),𝑋𝑘𝐼𝑎(𝑡),𝑊𝑘𝐼(𝑡),𝑉𝑘𝐼(𝑡)=𝑊𝑘𝐼(𝑡)𝑂𝐼(2)𝑉𝑘𝐼(𝑡)𝑋𝑘𝐼𝑎(,𝑡)(21) where 𝑊𝑘𝐼(𝑡)𝑀𝐼×1 and 𝑉𝑘𝐼(𝑡)(𝑛𝐼+1)×𝑀𝐼 are output-hidden wight matrix and hidden-input weight matrix to be tuned via some suitable adaptive laws, respectively, and 𝑋𝑘𝐼𝑎(𝑡)[𝑋𝐼(𝑡),𝐃[𝑂𝐼(3)𝑘(𝑡)]](𝑛𝐼+1)×1 is the augmented neural input vector. For the sake of convenience, we define 𝑂𝐼(2)(𝑉𝑘𝐼(𝑡)𝑋𝑘𝐼𝑎(𝑡))𝑂𝐼𝑘(2)(𝑡).

Based on the assumptions on the nonlinear plant (5), we define an identification error 𝑒𝑘𝐼(𝑡) at 𝑘th identification process as follows:𝑒𝑘𝐼(𝑡)=𝑦(𝑡)̂𝑦𝑘(𝑡).(22) The difference of 𝑒𝑘𝐼(𝑡) between two successive identification process can be computed asΔ𝑒𝑘𝐼(𝑡+1)=𝑒𝐼𝑘+1(𝑡+1)𝑒𝑘𝐼(𝑡+1)=̂𝑦𝑘+1(𝑡+1)̂𝑦𝑘.(𝑡+1)(23) Now substituting (21) into (23), we will haveΔ𝑒𝑘𝐼𝑊(𝑡+1)=𝐼𝑘+1(𝑡)𝑂𝐼(2)𝑘+1(𝑡)𝑊𝑘𝐼(𝑡)𝑂𝐼𝑘(2)(𝑡).(24) For simplicity, we define Δ𝑋𝑘𝐼𝑎(𝑡)=𝑋𝑘+1𝐼𝑎(𝑡)𝑋𝑘𝐼𝑎(𝑡), Δ𝑊𝑘𝐼(𝑡)=𝑊𝐼𝑘+1(𝑡)𝑊𝑘𝐼(𝑡), Δ𝑉𝑘𝐼(𝑡)=𝑉𝐼𝑘+1(𝑡)𝑉𝑘𝐼(𝑡). After adding and subtracting 𝑊𝑘𝐼(𝑡)𝑂𝐼(2)𝑘+1(𝑡) to (24), we can findΔ𝑒𝑘𝐼(𝑡+1)=Δ𝑊𝑘𝐼(𝑡)𝑂𝐼(2)𝑘+1(𝑡)𝑊𝑘𝐼(𝑡)𝑂𝐼(2)𝑘+1(𝑡)𝑂𝐼𝑘(2).(𝑡)(25) Investigating the second term in the right hand side of (25) by using the mean-value theorem, we can derive𝑂𝐼(2)𝑘+1(𝑡)𝑂𝐼𝑘(2)(𝑡)=𝑂𝐼(2)𝑘𝑉(𝑡)𝐼𝑘+1(𝑡)𝑋𝑘+1𝐼𝑎(𝑡)𝑉𝑘𝐼(𝑡)𝑋𝑘𝐼𝑎(𝑡)=𝑂𝐼(2)𝑘𝑉(𝑡)𝐼𝑘+1(𝑡)𝑋𝑘+1𝐼𝑎(𝑡)𝑉𝑘𝐼(𝑡)𝑋𝑘+1𝐼𝑎(𝑡)+𝑉𝑘𝐼(𝑡)𝑋𝑘+1𝐼𝑎(𝑡)𝑉𝑘𝐼(𝑡)𝑋𝑘𝐼𝑎(𝑡)=𝑂𝐼(2)𝑘(𝑡)Δ𝑉𝑘𝐼(𝑡)𝑋𝑘+1𝐼𝑎(𝑡)+𝑉𝑘𝐼(𝑡)Δ𝑋𝑘𝐼𝑎,(𝑡)(26) where 𝑂𝐼(2)𝑘(𝑡) = diag[𝑂(2)𝐼,1𝑘(𝑡),,𝑂(3)𝑘𝐼,𝑀𝐼(𝑡)]𝑀𝐼×𝑀𝐼 with 𝑂(2)𝐼,𝑘(𝑡)𝑑𝑂𝑘(2)𝐼,(𝑍𝐼,(𝑡))/𝑑𝑍𝐼,(𝑡)|𝑍𝐼,(𝑡), 𝑍𝐼,(𝑡) has a value between 𝑉𝑘+1𝐼,(𝑡)𝑋𝑘+1𝐼𝑎(𝑡) and 𝑉𝑗𝐼,(𝑡)𝑋𝑘𝐼𝑎(𝑡), =1,,𝑀𝐼.

Now if we substitute (26) into (25), we will haveΔ𝑒𝑘𝐼(𝑡+1)=Δ𝑊𝑘𝐼(𝑡)𝑂𝐼(2)𝑘+1(𝑡)𝑊𝑘𝐼(𝑡)𝑂𝐼(2)𝑘×(𝑡)Δ𝑉𝑘𝐼(𝑡)𝑋𝑘+1𝐼𝑎(𝑡)+𝑉𝑘𝐼(𝑡)Δ𝑋𝑘𝐼𝑎.(𝑡)(27)

The adaptation algorithms for weights 𝑊𝐼𝑘+1(𝑡) and 𝑉𝐼𝑘+1(𝑡) of ORNI at (next) 𝑘+1th identification process are given as follows:𝑊𝐼𝑘+1(𝑡)=𝑊𝑘𝐼𝑒(𝑡)+𝑘𝐼(𝑡+1)𝑂𝐼(2)𝑘+1(𝑡)𝑀𝐼𝑉𝐼𝑘+1(𝑡)=𝑉𝑘𝐼𝑋(𝑡)𝑘+1𝐼𝑎(𝑡)Δ𝑋𝑘𝐼𝑎(𝑡)𝑉𝑘𝐼(𝑡)𝑋𝑘+1𝐼𝑎(𝑡)2.(28) If we substitute adaptation laws (28) into (27), we have𝑒𝐼𝑘+1(𝑡+1)=𝑒𝑘𝐼(𝑡+1)𝑒𝑘𝐼𝑂(𝑡+1)𝐼(2)𝑘+1(𝑡)𝑂𝐼(2)𝑘+1(𝑡)𝑀𝐼.(29)

Theorem 3. Consider the nonlinear dynamic plant (5) which satisfies assumptions (A1)–(A3). The proposed ORNI (21) and adaptation laws (28) will ensure that the asymptotic convergence of identification error is guaranteed as the numbers of identification approach infinity.

Proof. Let us choose a discrete-type Lyapunov function as 𝐸𝑘𝐼1(𝑡+1)=2𝑒𝑘𝐼(𝑡+1)2,𝑡{0,,𝑁},(30) then we can derive the change of Lyapunov function as Δ𝐸𝑘𝐼(𝑡+1)=𝐸𝐼𝑘+1(𝑡+1)𝐸𝑘𝐼=1(𝑡+1)2𝑒𝐼𝑘+1(𝑡+1)2𝑒𝑘𝐼(𝑡+1)2.(31) Taking norms on (29), we have ||𝑒𝐼𝑘+1(||=||𝑒𝑡+1)𝑘𝐼(||||||||𝑂𝑡+1)1𝐼(2)𝑘+1(𝑡)2𝑀𝐼||||||<||𝑒𝑘𝐼||(𝑡+1)(32) for iteration 𝑘1. This implies that 𝐸𝑘𝐼(𝑡+1)>0, Δ𝐸𝑘𝐼(𝑡+1)<0, for all 𝑡{0,,𝑁} for 𝑘1, and hence the identification error 𝑒𝑘𝐼(𝑡) will satisfy lim𝑘|𝑒𝑘𝐼(𝑡)|=0, for all 𝑡{0,1,,𝑁}. This proves Theorem 3.

Remark 4. The ORNN is a promising tool for identification because it can approximate any “well-behaved” nonlinear function to any desired accuracy. This good function approximation is applied to estimate the unknown plant sensitivity in this paper. The plant sensitivity 𝑦𝑗𝑢(𝑡) in (8) can be approximated as follows: 𝑦𝑗𝑢(𝑡)𝜕𝑦𝑗(𝑡+1)𝜕𝑢𝑗(𝑡)𝜕̂𝑦𝑗(𝑡+1)𝜕𝑢𝑗(𝑡).(33) Note that the index 𝑘 in the identifier output ̂𝑦𝑘(𝑡) is removed once the identification process stops. Applying the chain rule to (21), it yields 𝜕̂𝑦𝑗(𝑡+1)𝜕𝑢𝑗=(𝑡)𝜕𝑂𝐼𝑗(3)(𝑡)𝜕𝑢𝑗=(𝑡)𝑀𝐼=1𝜕̂𝑦𝑗(𝑡+1)𝜕𝑂𝑗(2)𝐼,(𝑡)𝜕𝑂𝑗(2)𝐼,(𝑡)𝜕𝑢𝑗=(𝑡)𝑀𝐼=1𝑤𝑗𝐼,(𝑡)𝜕𝑂𝑗(2)𝐼,(𝑡)𝜕𝑢𝑗.(𝑡)(34) Also from (21), we have 𝜕𝑂𝑗(2)𝐼,(𝑡)𝜕𝑢𝑗(𝑡)=𝑓(2)𝐼,net𝑗(2)𝐼,(𝑡)𝜕net𝑗(2)𝐼,(𝑡)𝜕𝑢𝑗.(𝑡)(35) Since the inputs to ORNI are 𝑢𝑗(𝑡), 𝑦𝑗(𝑡) and 𝐃[𝑂𝐼𝑗(3)(𝑡)], we further have net𝑗(2)𝐼,(𝑡)=𝑉𝑗𝐼,1(𝑡)𝑢𝑗(𝑡)+𝑉𝑗𝐼,2(𝑡)𝑦𝑗(𝑡)+𝑉𝑗𝐼,3𝑂(𝑡)𝐃𝐼𝑗(3).(𝑡)(36) Thus, 𝜕net𝑗(2)𝐼,(𝑡)𝜕𝑢𝑗(𝑡)=𝑉𝑗𝐼,1(𝑡).(37) From (34), (35) and (37), we obtain ̂𝑦𝑗𝑢(𝑡)=𝜕̂𝑦𝑗(𝑡+1)𝜕𝑢𝑗=(𝑡)𝑀𝐼=1𝑤𝑗𝐼,(𝑡)𝑓(2)𝐼,net𝑗(2)𝐼,𝑉(𝑡)𝑗𝐼,1(𝑡),(38) where 0<𝑓(2)𝐼,(net𝑗(2)𝐼,(𝑡))<0.5. If we define 𝑤𝑗𝐼(𝑡)max|𝑤𝑗𝐼,(𝑡)|, and 𝑉𝑗𝐼,1(𝑡)max|𝑉𝑗𝐼,1(𝑡)|, then ||̂𝑦𝑗𝑢||(𝑡)𝑀𝐼𝑤𝑗𝐼𝑓(𝑡)(2)𝐼,net𝑗(2)𝐼,𝑉(𝑡)𝑗𝐼,1𝑀(𝑡)𝐼2𝑤𝑗𝐼𝑉(𝑡)𝑗𝐼,1(𝑡)̂𝑦𝑗𝑢,max(𝑡).(39) The sign function and upper bounding function of plant sensitivity after finishing the identification process at 𝑗th control iteration can be obtained as follows: 𝑦sgn𝑗𝑢(𝑡)=sgn̂𝑦𝑗𝑢𝑦(𝑡)𝑢,max(𝑡)=max̂𝑦𝑗𝑢,max(𝑡),̂𝑦𝑗1𝑢,max.(𝑡)(40) It is noted that we do not need the exact plant sensitivity 𝑦𝑗𝑢(𝑡) for the design of adaptive law (14). Even though there may exist certain approximation error between 𝑦𝑗𝑢(𝑡) and ̂𝑦𝑗𝑢(𝑡), we can still guarantee the convergence of learning error since only a upper bounding function is required. Also note that the value of sgn(𝑦𝑗𝑢(𝑡)) (+1 or −1) can be easily determined from the identification result.

4. Simulation Example

In this section, we use the proposed ORNN-based ILC to iteratively control an unknown non-BIBO nonlinear dynamic plant [26, 29]. The difference equation of the nonlinear dynamic plant is given as𝑦𝑗𝑦(𝑡+1)=0.2𝑗(𝑡)2+0.2𝑦𝑗𝑦(𝑡1)+0.4sin0.5𝑗(𝑡1)+𝑦𝑗𝑦(𝑡)×cos0.5𝑗(𝑡1)+𝑦𝑗(𝑡)+1.2𝑢𝑗(𝑡),(41) where 𝑦𝑗(𝑡) is the system output, 𝑢𝑗(𝑡) is the control input. The reference model is chosen as𝑦𝑑(𝑡+1)=0.6𝑦𝑑(𝑡)+𝑟(𝑡),𝑦𝑑(0)=0,(42) where 𝑟(𝑡)=sin(2𝜋𝑡/25)+sin(2𝜋𝑡/10) is a bounded reference input. The control objective is to force 𝑦𝑗(𝑡) to track the desired trajectory 𝑦𝑑(𝑡) as close as possible over a finite time interval 𝑡{1,,200} except the initial point. The network weight adaptation for the ORNI and ORNC is designed according to (14), (15), and (28), respectively. In the ORNC, we set 𝑊𝑗𝑐(𝑡)2×1 and 𝑉𝑗c(𝑡)4×2, that is, only two hidden nodes in layer 2 are used to construct the ORNC. In a similar way, we let 𝑊𝑘𝐼(𝑡)2×1 and 𝑉𝑘𝐼(𝑡)3×2, that is, only two hidden nodes in layer 2 are used to set up the ORNI. For simplicity, all the initial conditions of ORNC parameters are set to be 0 at the first control iteration. In addition, the initial ORNI parameters are set to be 0 at the first identification process which begins after the first control iteration. We assume that the plant initial condition satisfies 𝑦𝑗(0)=2+randn where randn is a generator of random number with normal distribution, mean =0 and variance =1. To study the effects of learning performances, we first show the maximum value of tracking error |𝑒𝑗𝑐(𝑡)|,𝑡{1,,200} with respect to control iteration 𝑗 in Figure 3(a). It is noted that |𝑒𝑗𝑐(0)| is omitted in calculating the maximum value of tracking error since it is not controllable. The identification error at 10th control iteration |𝑒𝐼10,𝑘(𝑡)| with respect to identification process 𝑘 is shown in Figure 3(b). According to the simulation results, it is clear that the asymptotic convergence proved in Theorems 1 and 3 is achieved. Since a reasonable tracking performance is almost observed at the 10th control iteration, the trajectories between the desired output 𝑦𝑑(𝑡) and plant output 𝑦10(𝑡) at the 10th control iteration are shown to demonstrate the control performance in Figure 3(c). Figure 3(d) shows the comparison between the identification result of ̂𝑦10(𝑡) and the plant output 𝑦10(𝑡). The nice identification result enables the ORNI to provide the required information for the design of ORNC. Finally, the bounded control input 𝑢10(𝑡) is plotted in Figure 3(e).

5. Conclusion

For controlling a repeatable nonaffine nonlinear dynamic plant, we propose an output-recurrent-neural-network-based iterative learning control system in this paper. The control structure consists of an ORNC used as an iterative learning controller and an ORNI used as an identifier. The ORNC is the main controller utilized to achieve the repetitive control task. The ORNI is an auxiliary component utilized to provide some useful information from plant sensitivity for the design of ORNC’s adaptive laws. All the network weights of ORNC and ORNI will be tuned during the control iteration and identification process so that no prior plant knowledge is required. The adaptive laws for the weights of ORNC and ORNI and the analysis of learning performances are determined via a Lyapunov-like analysis. We show that if the ORNI can provide the knowledge of plant sensitivity for ORNC, then output tracking error will asymptotically converge to zero except an initial resetting error. We also show that the objective of identification can be achieved by the ORNI if the number of identifications is large enough.

Acknowledgment

This work is supported by National Science Council, R.O.C., under Grant NSC99-2221-E-211-011-MY2.