NEURAL NETWORK APPROXIMATION OF PIECEWISE CONTINUOUS FUNCTIONS: APPLICATION TO FRICTION COMPENSATION Rastko R. Šelmiæ and Frank L. Lewis Automation and Robotics Research Institute The University of Texas at Arlington 7300 Jack Newell Blvd. South Fort Worth, Texas 76118-7115 Tel. 817-272-5957, fax. 817-272-5989 Email: [email protected] [email protected] Soft Computing and Intelligent Systems: Theory and Applications, Chapter 20 Editors N. K. Sinha and M. M. Gupta Academic Press, London, 2000. 2 ABSTRACT One of the most important properties of neural nets (NN) for control purposes is the universal approximation property. Unfortunately, this property is generally proven for continuous functions. In most real industrial control systems there are nonsmooth functions (e.g. piecewise continuous) for which approximation results in the literature are sparse. Examples include friction, deadzones, backlash, and so on. It is found that attempts to approximate piecewise continuous functions using smooth activation functions require many NN nodes and many training iterations, and still do not yield very good results. Therefore, a novel neural network structure is given for approximation of piecewise continuous functions of the sort that appear in friction, deadzone, backlash and other motion control actuator nonlinearities. The novel NN consists of neurons having standard sigmoid activation functions, plus some additional neurons having a special class of non-smooth activation functions termed 'jump approximation basis functions'. Two types of non-smooth jump approximation basis functions are determined- a polynomial-like basis and a sigmoid-like basis. This modified NN with additional neurons having 'jump approximation' activation functions can approximate any piecewise continuous function with discontinuities at a finite number of known points. Applications of the new NN structure are made to rigid-link robotic systems with friction nonlinearities. Friction is a nonlinear effect that can limit the performance of industrial control systems; it occurs in all mechanical systems and therefore is unavoidable in control systems. It can cause tracking errors, limit cycles, and other undesirable effects. Often, inexact friction compensation is used with standard adaptive techniques that require models that are linear in the unknown parameters. It is shown here how a certain class of augmented NN, capable of approximating piecewise continuous functions, can be used for friction compensation. A very general friction model is used. In contrast to standard adaptive control approaches, it is not required using this approach for the model to be linear in the unknown parameters. 3 1 INTRODUCTION NN have been used extensively in feedback control systems. When stability proofs are provided, they rely almost invariably on the universal approximation property for NN [8], [19], [20], [30], [32], [33], [34]. However, in most real industrial control systems there are nonsmooth functions (piecewise continuous) for which approximation results in the literature are sparse [28], [29]. Examples include friction, deadzones, backlash, and so on. It is found (see subsequent example), that attempts to approximate piecewise continuous functions using smooth activation functions require many NN nodes and many training iterations, and still do not yield very good results. Sontag has shown [38] that nonlinear control systems can be stabilized using two-hidden-layer NN, but not in general using one-layer NN, due to the requirement for inverting discontinuous mappings in the control law. Our main result is an approximation theorem for piecewise continuous functions or functions with jumps. It is found that to approximate such functions suitably, it is necessary to augment the standard NN that uses smooth activation functions with extra nodes containing a certain jump function approximation basis set of nonsmooth activation functions. Applications of this augmented NN are given in friction compensation of industrial motion devices. Friction is a nonlinear effect that can limit the performance of industrial control systems; it occurs in all mechanical systems and therefore is unavoidable in control systems. It can cause tracking errors, limit cycles, and other undesirable effects. In order to design accurate control systems it is necessary to analyze the model of friction and techniques for its compensation. Friction modeling has been studied by many researchers. Models of Coulomb friction have been widely used, and there are various techniques for their compensation [5], [13], [22]. On the other hand, more general friction models given in [1], [2], [5], [6] are more accurate, but it is much harder to design compensators for them. Often, inexact friction compensation is used with standard adaptive techniques that require models that are linear in the unknown parameters [5]. A dynamic friction model is 4 presented in [6]. Observer-based friction compensation for a dynamical friction model is given in [7], [27]. Robust adaptive friction compensation of the static friction model is given in [16], and using reinforcement adaptive learning neural networks in [15]. Identification and compensation of the static friction model using neural networks is given in [11], [39], but without any closed-loop stability proof or guarantee of bounded weights. In is shown here how a certain class of augmented NN, capable of approximating piecewise continuous functions, can be used for friction compensation. The general friction model given in [2], [5] is used. It is not required for the model to be linear in the unknown parameters. We show how to design the friction compensator, and provide a rigorous closed-loop system stability proof that guarantees small tracking error and bounded NN weights. 2 BACKGROUND Let S be a compact simply connected set of ℜ n . With map f: S→ ℜ m , define C(S) as the space such that f is continuous. The space of functions whose r-th derivative is continuous is denoted by Cr (S), and the space of smooth functions is C∞(S). By is denoted any suitable vector norm. When it is required to be specific we denote the p-norm by p . The supremum norm of f(x), over S, is defined as [4] sup f ( x ) , f: S→ ℜ m . (2.1) x∈S Given A=[aij], B∈ ℜ mxn the Frobenius norm is defined by A 2 F = tr (A T A) = ∑ a ij2 , (2.2) i, j with tr( ) the trace. The associated inner product is <A,B>F=tr(ATB). The Frobenius norm is compatible with the 2-norm so that Ax 2 ≤ A 5 F x 2. When x(t)∈ ℜ n is a function of time we use the standard Lp norms. It is said that x(t) is bounded if its L∞ norm is bounded. Matrix A(t)∈ ℜ mxn is bounded if its induced matrix ∞-norm is bounded. 2.1 Stability Consider the nonlinear system x& = g(x, u, t) , y = h(x, t) (2.3) with state x(t)∈ ℜ n . The equilibrium point xe is said to be uniformly ultimately bounded (UUB) if there exists a compact set S⊂ ℜ n , so that for all x0∈S there exists an ε>0, and a number T(ε,x0) such that x ( t ) − x e ≤ ε for all t≥t0+T. That is, after a transition period T, the state x(t) remains within the ball of radius ε around xe . 2.2 Robot Arm Dynamics The dynamics of an n-link robot manipulator may be expressed in the Lagrange form [17], [35] M(q& )&q& + Vm(q, q& )q& + G(q) + F(q& ) + τ d = τ (2.4) with q(t)∈ ℜ n the joint variable vector, M(q) the inertia matrix, Vm(q, q& ) the & the friction. Bounded coriolis/centripetal matrix, G(q) the gravity vector, and F(q) unknown disturbances (including unstructured, unmodeled dynamics) are denoted by τd and the control input torque is τ(t). Given a desired arm trajectory qd(t)∈ ℜ n , the tracking error is e(t) = q d (t) - q(t) (2.5) r = e& + Λe (2.6) and the filtered tracking error is where Λ=ΛT >0 is a design parameter matrix. Differentiating r(t) the arm dynamics may be written in terms of the filtered tracking error as 6 Mr& = − Vm r − τ + f + τ d (2.7) where the nonlinear robot function is f(x) = M(q& )&q& d + Vm (q, q& )(q& d + Λe) + G(q) + F(q& ) , (2.8) where [ ] T x ≡ q T q& T q Td q& Td &q& Td . (2.9) Function f(x) is generally unknown or incompletely known. Define a control input torque as τ o = fˆ+ K v r , (2.10) with gain matrix Kv=KvT >0 and f$ (x) an estimate of f(x). The closed-loop dynamics is given by ~ Mr& = -(K v + Vm ) r + f + τ d , (2.11) where the functional estimation error is ~ f = f − fˆ. (2.12) e e& −1 −1 = (sI + Λ ) , = s(sI + Λ ) , r r (2.13) Note that, according to (2.6), one has e ≤ (sI + Λ ) −1 −1 r , e& ≤ s(sI + Λ ) r . (2.14) Using operator gain properties, it follows that e ≤ r σ min ( Λ ) , e& ≤ r , (2.15) with σ min ( Λ ) the minimum singular value of Λ [17]. There are several properties of the robot arm dynamics [17] important in control: Property 1: M(q) is a positive definite symmetric matrix bounded by m1I≤M(q)≤m2I , where m1, m2 are known positive constants. Property 2: Vm (q,q& ) is bounded by Vm (q, q& ) ≤ v b (q ) q& , with vb(q): S→ ℜ1 a known bound. & - 2Vm is skew-symmetric. Property 3: The matrix M 7 Property 4: The unknown disturbance satisfies τ d < b d , where bd is a known positive constant. 3 FRICTION Friction is a nonlinear effect that can limit the performance of industrial control systems; it occurs in all mechanical systems and therefore is unavoidable in control systems. It can cause tracking errors, limit cycles, and other undesirable effects. In order to design accurate control systems it is necessary to study models of friction and techniques for its compensation. Many researchers have studied friction modeling. Models of Coulomb friction have been widely used, and there are various techniques for its compensation [5], [13], [22]. On the other hand, more general friction models [1], [2], [5], [6] are more accurate, but it is much harder to design compensators for them. Often, inexact friction compensation is used with standard adaptive techniques that require a model linear in the unknown parameters [5]. This linearity in the parameters (LIP) requirement is a severe restriction for practical systems. Dynamic friction model is recently introduced [6] and it models static and dynamic behavior of the friction effect. Observer-based adaptive friction compensation for a dynamical friction model is given in [7]. The observer-based controller for dynamical friction compensation is given in [27]. Robust adaptive friction compensation of the static friction model is given in [16], and using reinforcement adaptive learning neural networks in [15]. Identification and compensation of the static friction model using neural networks is given in [11], [39], but without any closed-loop stability proof or guarantee of bounded weights. We consider here the static complex friction model introduced in [5], [23]. We do not need LIP condition. In Section 6 we show how to design the friction compensator, with rigorous closed-loop system stability proofs. 8 3.1 Friction Model There are several ways to model friction effects [2]. Static friction models are studied in [2]. Starting from the simplest case to more general cases one has following models: Coulomb friction (Figure 3.1a), Coulomb and viscous friction (Figure 3.1b), static and Coulomb and viscous friction (Figure 3.1c). F F F velocity velocity velocity (a) (b) (c) Figure 3.1 Friction models (a): Coulomb friction model; (b): Coulomb and viscous friction model; (c): static, Coulomb and viscous friction model. A detailed friction model suitable for industrial controller design is given in [5] as [ ] F(q& ) = α 0 + α 1e − β1 q + α 2 (1 − e − β2 q ) sgn(q& ) , & & (3.1) where Coulomb friction is given by α0 [Nm], static friction is (α0 + α1) [Nm], and α2 [Nmsec/rad] represents the viscous friction model. The Stribeck effect is modeled with an exponential second term in the model (3.1). Figure 3.2 shows the dependence of the friction force on velocity. 9 F velocity Figure 3.2 Stribeck effect, static, Coulomb and viscous friction model. The model given by (3.1) includes Coulomb friction, viscous friction, static friction, and negative viscous friction. Justification for using (3.1) is provided by Armstrong’s experimental results [1]. A static model similar to (3.1) is given in [23] where dynamic effects are included as well. One can see that model (3.1) is highly nonlinear and discontinuous at zero. This makes accurate friction compensation a difficult problem. Note specially that (3.1) is not linear in the parameters, so that standard adaptive robot control approach cannot be used. In the given friction model, friction depends only on velocity. Friction can also depend on position, but this dependence is negligible [1], and is neglected here. & is a function: S→Rn. In the n-link robot manipulator dynamics, friction term F(q) & is uncoupled among the joints, so Since friction is a local effect, it is assumed that F(q) that F(q& ) = [ f1 (q& 1 ) .... f n (q& n )] , T with functions fi, which represent friction terms for each joint given by (3.1). 10 (3.2) 4 NEURAL NETWORK APPROXIMATION OF PIECEWISE CONTINUOUS FUNCTIONS NN have been used extensively in feedback control systems. Most applications are ad hoc with no demonstrations of stability. The stability proofs that do exist rely almost invariably on the universal approximation property for NN [8], [19], [20], [30], [32], [33], [34]. However, in most real industrial control systems there are nonsmooth functions with jumps for which approximation results in the literature are sparse [28], [29]. Examples include friction, deadzone, backlash, and so on. Though there do exists some results for piecewise continuous functions, it is found (see subsequent example) that attempts to approximate jump functions using smooth activation functions require many NN nodes and many training iterations, and still do not yield very good results. Therefore, in this section we present our main result: an approximation theorem for piecewise continuous functions. It is found that to approximate such functions suitably, it is necessary to augment the standard NN that uses smooth activation functions with extra nodes containing a certain jump function approximation basis set of nonsmooth activation functions. 4.1 Background on Neural Networks The two-layer NN in Figure 4.1 consists of two layers of tunable weights and has a hidden layer and an output layer. The hidden layer has L neurons, and the output layer has m neurons. The multilayer NN is a nonlinear mapping from input space ℜ n into output space ℜ m . 11 1 1 σ σ . .. . x1 x2 σ 1 2 L . .. y1 ym WT VT xn Figure 4.1 Two-layer NN. The NN output y is a vector with m components that are determined in terms of the n components of the input vector x by the equation L n y i = ρ ∑ w il σ ∑ v lj x j + v l 0 + w i 0 ; i=1, 2, ..., m. l =1 j=1 (4.1) where σ(⋅) are the hidden layer activation functions, ρ(⋅) are the output layer activation functions and L is the number of hidden-layer neurons. The first-layer interconnection weights are denoted v j and the second-layer interconnection weights by wi . The threshold offsets are denoted by v 0, wi0. By collecting all the NN weights v j, wi into matrices VT, WT, the NN equation with linear output activation function ρ(⋅), may be written in terms of vectors as y = W T σ(V T x ) . (4.2) The thresholds are included as the first column of the weight matrices WT, VT; to accommodate this, the vector x and σ(⋅) need to be augmented by placing a ‘1’ as their first element (e.g. x=[1 x1 x2 ... xn]T). In this equation, to represent (4.1) one has sufficient generality if σ(⋅) is taken as a diagonal function from ℜ L to ℜ L , that is σ(z)=diag{σ(z )} for a vector z=[z1 z2 ... zL]T∈ ℜ L . 12 There are many different ways to choose the activation functions σ(⋅), including sigmoid, hyperbolic tangent, etc. Figure 4.2 shows the sigmoid activation function, σ(x) = 1 , 1 + e - βx (4.3) for different parameters β. 1 0.9 β=0.5 0.8 0.7 0.6 0.5 0.4 0.3 β=3 0.2 0. 1 0 10 β=1 -5 0 5 1 0 Figure 4.2 Sigmoid function for β=0.5, 1, 3. 4.2 NN Approximation of Continuous Functions Many well-known results say that any sufficiently smooth function can be approximated arbitrarily closely on a compact set using a two-layer NN with appropriate weights [10], [12], [14]. For instance, Cybenko’s result [10] for continuous function approximation says that given any function f∈C(S), with S compact subset of ℜ n , and any ε > 0, there exists a sum G(x) of the form L G ( x ) = ∑ α k σ(m Tk x + n k ) , k =0 (4.4) for some mk∈ ℜ n , nk∈ ℜ , αk∈ ℜ , such that G ( x ) − f ( x) < ε (4.5) for all x∈S. Function σ(⋅) could be any continuous sigmoidal function [10]. This result shows that any continuous function can be approximated arbitrarily well using a linear combination of sigmoidal functions. This is known as the NN universal approximation property. 13 4.3 NN Approximation of Jump Functions There are few results for approximation of nonsmooth functions [28], [29]. Here are presented our main results for approximation of piecewise continuous functions or functions with jumps. It is found that to approximate such functions suitably, it is necessary to augment the set of functions σ(⋅) used for approximation. In addition to continuous sigmoidal functions, one requires a set of discontinuous basis functions. We propose two suitable sets- the “polynomial jump approximation functions”, and the “sigmoidal jump approximation functions”. Theorem 1 (Approximation of Piecewise Continuous Functions) Let there be given any bounded function f: S→ ℜ which is continuous and analytic on a compact set S⊂ ℜ , except at x=c where the function f has a finite jump and is continuous from the right. Then, given any ε>0, there exists a sum F of the form N F( x) = g( x) + ∑ a k f k ( x − c) , (4.6) F( x ) − f ( x ) < ε (4.7) k=0 such that for every x in S, where g is a function in C∞(S), and the polynomial jump approximation basis functions fk are defined as 0 , for x < 0 f k (x) = x k k ! , for x ≥ 0 . (4.8) Proof: Let f be a smooth bounded function on S, except at x=c, where the function has a finite discontinuity. Let g be an analytic function in C∞(S), such that f(x)=g(x) for all x<c as shown in Figure 4.3. 14 f(x) f(x) g(x) c x Figure 4.3 Functions f and g. Then for a≥c and x≥c, expand f and g into Taylor series as f ' (a ) f '' (a ) f ( N ) (a ) 2 f ( x ) = f (a ) + (x − a) + ( x − a ) + ... + ( x − a ) N + R fN ( x , a ) , (4.9) 1! 2! n! g ' (a ) g '' (a ) g ( N ) (a ) 2 g ( x ) = g (a ) + (x − a) + ( x − a ) + ... + ( x − a ) N + R gN ( x , a ). (4.10) 1! 2! n! Combining these two equations yields f ' (a ) − g ' ( a ) f '' (a ) − g '' (a ) f ( x) = g( x) + f (a ) − g(a ) + (x − a ) + (x − a ) 2 +... 1! 2! .... + f ( N ) (a ) − g ( N ) (a ) ( x − a ) N + R fN ( x , a ) − R gN ( x , a ). N! (4.11) Letting a→c, and knowing that the first N derivatives of g are continuous and that f is continuous from the right, results in f ( x) = g( x) + f (c) − g(c) + .... + f ' ( c) − g ' ( c) f '' (c) − g '' (c) ( x − c) + ( x − c) 2 +... 1! 2! f ( N ) (c) − g ( N ) (c ) ( x − c) N + R fN ( x , c) − R gN ( x , c) , N! (4.12) for x≥c. Therefore one has f ( x ) = g ( x ) + a 0 f 0 ( x − c) + a 1f 1 ( x − c) + ... + a N f N ( x − c) + R fN ( x , c) − R gN ( x , c) .(4.13) Since R fN ( x, c) and R gN ( x , c) go to zero as N approaches infinity, the proof is complete. 15 Remark: We use the terminology ‘basis set’ for (4.8) somewhat loosely. Note that fk(x-c) is a basis set for approximation of functions with discontinuities at a specified value x=c. The next results follow directly from the foregoing proof. Corollary 1 Given the hypotheses of Theorem 1, define the jump approximation error as E = F(x ) − f ( x) . Then, f ( N +1) (d ) g ( N +1) (d ) N +1 E = R ( x , c) − R ( x , c) = ( x − c) − ( x − c) N +1 , ( N + 1)! ( N + 1)! N f N g (4.14) where d is between c and x. Therefore, the error is bounded by E≤ ( x − c) ( N +1) sup f ( N +1) (d ) − g ( N +1) (d ) , ( N + 1)! d (4.15) where d is between c and x. Corollary 2 If the function f is continuous from the left, then fk is defined as 0 , for x ≤ 0 f k (x) = x k k ! , for x > 0 . (4.16) It is desired now to replace the polynomial jump approximation basis functions fk by another set of basis functions that are bounded. This yields a result more useful for closed-loop feedback control purposes. To accomplish this, some technical lemmas are needed. Lemma 1 m m i k ( −1) ( − i ) = 0 ∑ i i=0 16 (4.17) m for every m > k, where is defined as usual i m m! = . i i!(m − i)! Proof: We will prove this expression using regressive mathematical induction. a) For k=1 (4.17) is simplified into m m − 1 m i (−1) i (−i) ( 1 ) ( i ) m − − = ∑ ∑ i i i=0 i =1 m m − 1 (−1) i = − m∑ i =1 i − 1 m (4.18) m −1 m − 1 (−1) j = m∑ j j= 0 m −1 = m(1 − 1) = 0 where j=i-1. Therefore for k=1 expression (4.17) is true. b) Assume expression (4.17) is true for some k=p, k=p-1, k=p-2, ..., k=1. One needs to show it is true for k=p+1. For k=p+1, m (−1) i ( − i) p +1 i=0 m m(m − 1)...(m − i + 1) (−1) i ( − i) p (−i) =∑ i ! i =0 m ∑ i m = −∑ i=0 (4.19) m(m − 1)...(m − i + 1) (−1) i ( − i) p (i − 1)! Putting j=i-1 and knowing that the term for i=0 is equal to zero, using binomial formula one can transform a (4.19) into 17 m −1 − m∑ j= 0 (m − 1)...(m − j) (−1) j−1 ( − j + 1) p j! p m −1 m − 1 p (−1) j ∑ ( − j) k = m ∑ j= 0 j k =0 k p p m −1 m − 1 (−1) j ( − j) k = 0 = m ∑ ∑ k = 0 k j= 0 j (4.20) Expression (4.20) is equal to zero for every m-1>k, k=0, 1, ..., p because of the induction assumption. Therefore, (4.17) is true for k=p+1. Lemma 2 Any linear combination of polynomial jump approximation functions fk, N ∑a k=0 f ( x) , can be represented as k k N N k=0 k=0 ∑ a k f k ( x) = z( x) + ∑ b k ϕ k ( x) , (4.21) where the ϕk (sigmoid jump approximation functions) are defined as 0 , for x < 0 ϕ k ( x) = −x k (1 − e ) , for x ≥ 0 , (4.22) and where z(x) is a function which belongs to CN(S). Proof: It is enough to prove that there exist coefficients bk, such that first N derivatives of the expression N ∑a k=0 N k f k ( x) − ∑ b k ϕ k ( x) (4.23) k=0 are continuous. For x<0, expression (4.23) has the constant value 0. Therefore one must show that there exist coefficients bi, such that for x>0, first N derivatives of the expression (4.23) are equal to zero. 18 For x>0 one has N N k =0 k =0 ∑ a k f k ( x) − ∑ b k ϕ k ( x) (4.24) N xk = ∑ak − ∑ b k (1 − e − x ) k . k ! k =0 k =0 (4.25) N Using the binomial formula one can expand expression (4.25) into N ∑ak k =0 N k k xk − ∑ b k ∑ ( − e − x ) i k ! k =0 i=0 i N k k xk = ∑ak − ∑ b k ∑ ( −1) i (e − ix ) k ! k =0 i=0 i k =0 (4.26) N N ∞ k k ( − ix) j xk − ∑ b k ∑ ( −1) i ∑ k ! k =0 i=0 i j! j= 0 (4.28) j ∞ k i j x ( −1) ∑ ( − i) j! i j= 0 (4.29) N k ∞ k xk xj − ∑ ∑ ∑ b k ( −1) i ( − i) j k ! k = 0 i = 0 j= 0 j! i (4.30) ∞ N k k xk xj − ∑ ∑ ∑ b k ( −1) i ( − i) j k ! j= 0 k = 0 i = 0 j! i (4.31) ∞ N m m xk xk . − ∑ ∑ ∑ b m ( −1) i ( − i) k k ! k = 0 m= 0 i = 0 k! i (4.32) N = ∑ak k =0 N k xk = ∑ak − ∑ ∑ bk k ! k =0 i=0 k =0 N N = ∑ak k =0 N = ∑ak k =0 N = ∑ak k =0 (4.27) In order that first n derivatives of expression (4.23) be zero, the coefficients of (4.32) of xk for k=0, 1, ...N should be zero. Therefore, one requires N m m a k − ∑ ∑ b m ( −1) i ( − i) k = 0 , i m= 0 i = 0 (4.33) N m m a k − ∑ b m ∑ ( −1) i ( − i) k = 0 . m= 0 i=0 i (4.34) 19 m Using Lemma 1 which says that m i k ( −1) ( − i ) = 0 for every m>k, one ∑ i i=0 obtains k m m a k − ∑ b m ∑ ( −1) i ( − i ) k = 0 m=0 i=0 i (4.35) k k −1 m k m a k − b k ∑ ( −1) i ( − i ) k − ∑ b m ∑ ( −1) i ( − i ) k = 0 i=0 i m =0 i=0 i (4.36) for k=1, 2, ..., N, or for k=1,2,...,N. Therefore, one obtains the recurrent relation for coefficients bk , k −1 m m a k − ∑ b m ∑ ( −1) i ( − i) k i=0 i m =0 bk = k k i k ( −1) ( − i ) ∑ i=0 i (4.37) for k=1, 2, ..., N, and with b0=a0. The next main result provides a set of bounded jump approximation basis functions that is extremely useful for feedback control purposes. Theorem 2 (Approximation Using Sigmoid Basis Functions) Let there be given any bounded function f: S→ ℜ which is continuous and analytic on a compact set S, except at x=c where function f has a finite jump and is continuous from the right. Then, given any ε>0, there exists a sum F of the form N F( x) = g( x) + ∑ a k ϕ k ( x − c) , (4.38) F( x ) − f ( x ) < ε (4.39) k=0 such that for every x in S, where g is a function in CN(S), and the sigmoid jump approximation basis functions ϕk are defined as 20 0 , for x < 0 ϕ k ( x) = −x k (1 − e ) , for x ≥ 0 . (4.40) Proof: According to Theorem 1 there exists a sum F of the form N F( x) = g( x) + ∑ a k f k ( x − c) , (4.41) F(x ) − f (x ) < ε . (4.42) k=0 such that Using Lemma 2 N N k=0 k =0 ∑ a k f k ( x) = z( x) + ∑ b k ϕ k ( x) , (4.43) one obtains the result. Theorem 2 says that any bounded function with a finite jump can be approximated arbitrary well by a sum of a function with continuous first N derivatives, and a linear combination of jump basis functions ϕk. Functions ϕk for k=0, 1, 2, 3 are shown in Figure 4.4. 21 1 1 0.8 0.8 0.6 0.6 0.4 0.4 0.2 0.2 0 -3 -2 -1 0 1 2 3 4 0 -3 5 -2 -1 0 ϕ0(x) 1 0.8 0.8 0.6 0.6 0.4 0.4 0.2 0.2 -2 -1 0 1 2 3 2 3 4 5 ϕ1(x) 1 0 -3 1 4 0 -3 5 -2 -1 0 ϕ2(x) 1 2 3 4 5 ϕ3(x) Figure 4.4 Sigmoid jump approximation functions. Using the known result of Cybenko for continuous function approximation, one can formulate the following result for approximation of functions with a finite jump. Theorem 3 (General Approximation Result) Let there be given bounded function f: S→ ℜ which is continuous and analytic on a compact set S, except at x=c where function f has a finite jump and is continuous from the right. Given any ε > 0, there exists a sum F of the form L N k =0 k =0 F( x ) = ∑ α k σ(m k x + n k ) + ∑ a k ϕ k ( x − c) , (4.44) F( x ) − f ( x ) < ε (4.45) such that for every x in S, where σ(x) is a sigmoid function, e.g. (4.3), and the sigmoidal jump approximation functions ϕk are defined as (4.40). 22 Proof: Using Theorem 2 and applying Cybenko’s result to function g∈CN(S) one obtains expression (4.44). Similarly as in the Theorem 2 it can be shown that instead of the sigmoidal jump approximation functions, one can use either 0 , for x < 0 ϕ k ( x) = 1 − e − x k , 1 + e − x , for x ≥ 0 (4.46) or jump basis functions based on the hyperbolic tangent 0 , for x < 0 ϕ k ( x) = e x − e − x k e x + e − x , for x ≥ 0 . (4.47) 5 AUGMENTED MULTILAYER NN FOR JUMP FUNCTION APPROXIMATION Here are presented the structure and training algorithms for an augmented multilayer NN that is capable of approximating functions with jumps, provided that the points of discontinuity are known. Since the points of discontinuity are known in many nonlinear characteristics in industrial motion systems (e.g. the friction model is discontinuous at zero, the deadzone inverse is discontinuous at zero, etc.), this augmented NN is a useful tool for compensation of parasitic effects and actuator nonlinearities in industrial control systems. 23 5.1 Structure of Augmented Multilayer NN The augmented multilayer NN shown in Figure 5.1 is capable of approximating any piecewise continuous function f: S⊂ ℜ → ℜ , provided that the points of discontinuity are known. 1 1 σ V 1T σ .. .. x σ 2 W 1T y L ϕ1 V 2T ϕ2 .. . ϕN c c 1 1 c W 2T Figure 5.1 Augmented multilayer NN. Comparing with the standard NN given in Figure 4.1, one can see that the augmented NN has two sets of hidden activation functions, σ and ϕi; two sets of weights for the first layer, V1T and V2T; and two set of weights for the second layer, W1T and W2T. With this structure of NN, one has L ( ) N ( ) y = ∑ w11l σ v1l1x1 + v1l 0 + ∑ w12l ϕl vl21x1 + v l20 + w10 l =1 l =1 (5.1) If the hidden layer activation functions σ are defined as the sigmoids (4.3), and one takes the jump basis functions ϕi in (4.40), then using Theorem 3 for approximation of jump functions one can see that the augmented NN is capable of approximating any continuous function with a finite jump, provided that the jump location is known. 24 The standard NN tuning algorithms must be modified since the structure of the NN is changed. The set of second-layer weights, W1T and W2T are trained as in usual multilayer NN. Both of them are treated the same way, including threshold weights. The first-layer weights V1T are updated as in usual NN (e.g. by a backpropagation approach). Weights V2T and the threshold c are fixed, and correspond to the known point of discontinuity. 5.2 Augmented NN for Friction Compensation In order to apply the augmented NN for friction compensation, it is necessary to estimate functions like (3.2), which is a map from ℜ n to ℜ n . Since the friction terms in most industrial motion systems are uncoupled among the joints and can be presented as (3.2), the augmented multilayer NN in Figure 5.2 can be used for friction compensation in multivariable systems. This augmented NN is capable of approximating vector functions like (2.8). 25 1 1 σ V 1T σ .. .. x1 x2 . . . xn σ 1W T 1 2 .. . y1 ym L ϕ1 V 2T c1 1 c1 c1 ϕ2 .. . ϕN .. . W 2T 1 ϕ1 1 cM ϕ2 .. . ϕN M Figure 5.2 Augmented multilayer NN used for friction compensation. The upper part of the NN in Figure 5.2 is the standard NN for approximating continuous vector functions. In addition, there are M additional sets of nodes for jump approximation. The number M depends on the number of points where the function has jumps and the number of inputs n. In fact, n M = ∑ νi , i =1 (5.2) where n is the number of inputs, and νi is the number of discontinuities in the i-th input (coordinate). For instance, for the two-link robot arm one has M=2 because of friction discontinuities at zero velocities in each of the two links. The fixed values of the bias 26 weights ci are the locations of the jump points. Similarly as in the standard NN case, the output of the NN is given in a matrix form as T T T y = W1T σ ( V1 x) + W2 ϕ ( V2 x) , where [ ] W1T = w 1il , [ ] W2T = w i2l , [ ] V1T = v1lj , (5.3) [ ] V2T = v l2j . In order to include thresholds in the matrix form, matrices W1T, W2T, V1T, V2T are augmented in the same manner as in section 4.1, so that vector activation functions are defined as σ(ω)=[1 σ(ω1) σ(ω2) ... σ(ωL)]T, ϕ(ω)=[1 ϕ1(ω1) ϕ2(ω2) ... ϕΝ(ωN) ϕ1(ωN+1) ϕ2(ωN+2) ... ϕΝ(ω2N) ... ϕΝ(ωNM)]T. For friction compensation, for instance in a robot arm with two joints, a function (2.8) which includes the friction term (3.2) needs to be approximated. Function f maps a simply connected set of R10 to R10, and depends on q 1 , q& 1 , q 2 , q& 2 , q1d , q 2 d , q& 1d , q& 2 d , && q 1d , && q 2 d , and is discontinuous at q& 1 =0 and at q& 2 =0. Therefore, in Figure 5.2 one has M=2, and values of weights V2T should be selected such that the weights between q& 1 input and the first N activation functions ϕ1(ω1) ϕ2(ω2) ... ϕΝ(ωN), be set to one. The same is with weights V2T between q& 2 input and next N activation functions ϕ1(ωN+1) ϕ2(ωN+2) ... ϕΝ(ω2N). All other weights in V2T are set to zero. Threshold weights in V2T are set to zero, since discontinuity occurs in zero. 5.3 Simulation of the Augmented Multilayer NN Here are presented some simulation results that compare the approximation capabilities of the standard NN in Figure 4.1, and our augmented NN in Figure 5.1. Both NN have L=20 hidden nodes, both are trained for the same number of iterations, and the augmented NN has two additional jump approximation nodes. Two samples of jump functions are chosen. Both NN are first trained to approximate the discontinuous function defined as y=sin(x) for x<-1, else y=1+sin(x). The results are shown in Figure 5.3 (a) and (b). Next, the function defined as y=x for x<0, else y=0.5x+1, was approximated. The results are shown in Figure 5.4 (a) and (b). 27 2 2 1.5 1.5 1 1 0.5 0.5 0 0 -0.5 -0.5 -1 -3 -2 -1 0 1 2 -1 -3 3 -2 -1 (a) 0 1 2 3 (b) Figure 5.3 Approximation of jump functions using standard NN (a), and using augmented NN (b); NN function (full), desired function (dash). 2 3 1.5 2 1 1 0.5 0 -0.5 0 -1 -1 -1.5 -2 -2 -1 0 1 -2 -2 2 (a) -1 0 1 2 (b) Figure 5.4 Approximation of jump functions using standard NN (a), and using augmented NN (b); NN function (full), desired function (dash). From this simulation it is obvious that the NN augmented by jump approximation functions has significantly better performance in approximating discontinuous functions, and that it should be a very powerful tool for friction compensation. In this simulation, the modified NN has only two jump nodes. Two or three jump nodes are usually enough in practical industrial applications. 28 6 NN CONTROLLER There are numerous papers employing NN in robot control, but for the most part stability proofs are omitted and they rely on ad hoc design and simulation studies. Several researchers have studied NN control and managed to prove stability [8], [19], [26], [30], [31], [32], [33]. Here is presented a NN robot controller based on a filtered-error approach and employing a NN to approximate the unknown nonlinear functions (2.8) in the robot arm dynamics. A serious problem in using adaptive controllers in robotics, the requirement for linearity in the unknown system parameters, is overcome here using the universal approximation property of NN [3], [10], [12], [13]. In Section 4 and 5 it has been shown how augmented NN can be used for approximation of piecewise continuous functions. The main result of this Section is the controller presented in Figure 6.1 based on the results of Lewis and Yesildirek [17], [18], [19], [20], but modified for friction compensation. Instead of requiring knowledge of the system structure, as in adaptive control, a NN is used to approximate the unmodeled dynamics. The use of the augmented NN in Figure 5.2 gives the controller much better performance if there is significant unknown friction, since friction is discontinuous at zero. In order to prove stability of the overall system, some mild assumptions are required. Assumption 1 (Bounded Reference Trajectory). The desired trajectory is bounded so that q d ( t) q& d ( t ) ≤ q B , && q d ( t) (6.1) with a qB a known scalar bound. Lemma 3 (Bound on NN Input x). For each time t, x(t) is bounded by x ≤ c1 + c 2 r ≤ 2q B + c 0 r (0) + c 2 r , 29 (6.2) for computable positive constants c0, c1, c2. Proof: The solution of LTI system (2.6) with the initial value vector q(t0) is t e( t ) = e 0 ε − Λ ( t − t 0 ) + ∫ ε − Λ ( t − τ ) r ( τ)dτ , ∀t ≥ t 0 (6.3) t0 where e0=qd(t0)- q(t0). Thus, e ≤ e0 + r σ min (Λ ) , (6.4) with σmin(Λ) the minimum singular value of Λ. The NN input can be written as q & q x = q d = q& d q&& d − e q d & − r + Λe q d qd + 0 . q& d 0 0 q&& d (6.5) Then a bound can be given as x ≤ (1 + σ max (Λ )) e + 2q B + r σ (Λ ) 1 ≤ {[1 + σ max (Λ )] e 0 + 2q B } + 1 + + max r σ min (Λ) σ min (Λ ) = c1 + c 2 r (6.6) with c1 = [1 + σ max (Λ)] e 0 + 2q B c2 = 1 + σ (Λ) 1 + max . σ min (Λ ) σ min (Λ ) (6.7) (6.8) Now from (2.6) one has e < r / σ min ( Λ ) for all t, whence one obtains that c0 = 1 + σ max ( Λ ) . σ min ( Λ ) 30 (6.9) 6.1 NN Approximation and the Nonlinearity in the Parameters Problem Nonlinear robot function (2.8) is a discontinuous function due to friction. Using the universal approximation property of NN, and our Theorem 3 for approximation of jump functions, there is a two-layer NN such that T T T f ( x) = W1T σ ( V1 x) + W2 ϕ( V2 x) + ε , with the approximation error bounded on a compact set by (6.10) ε < ε N , with ε N a known bound. W1, W2, V1, V2 are ideal target weights that give good approximation to f(x); they are unknown. All that is required here is that they exist; it is not even required for them to be unique. $ , W $ , V $ , V $ as estimates of the ideal NN weights, which are given by Define W 1 2 1 2 the NN tuning algorithms. Since the weights V2T are given by the designer depending on ˆT . Define estimation error as the location of the jumps, then V2T = V 2 ~ ~ ~ $ , W $ $ W1 = W1 − W 1 2 = W2 − W2 , V1 = V1 − V1 , (6.11) and the approximation of nonlinear function (2.8) as $ T σ( V $ T x) + W $ T ϕ ( V T x) . f$ ( x) = W 1 1 2 2 (6.12) Let Z be the matrix of all the NN weights W1 0 0 Z ≡ 0 W2 0 . 0 0 V1 (6.13) Note that weights V2 are not included in 6.13, since they are known. Assumption 2 (Bounded Ideal Target NN Weights) . On any compact subset of ℜ n , the ideal NN weights are bounded so that Z F ≤ ZB , (6.14) with ZB known. Proceeding as in [20], one can define the hidden-layer output error for a given x as 31 ~ = σ ( V T x) − σ ( V $ T x) . σ 1 1 (6.15) ~T ~T 2 ˆT x ) + σ′(V ˆT x )V σ(V1T x ) = σ(V 1 1 1 x + O( V1 x ) , (6.16) Using a Taylor series one has ~ where σ ′ denotes the first derivative, and O(V1T x ) 2 represents higher order terms. The ~ ~ which is nonlinear in V importance of this equation is that it replaces σ 1 , by an ~ $ T x ) is easily expression linear in V1 plus higher order terms. The Jacobian σ ′(V 1 $ . computable in terms of measured signals x(t) and the current weights V 1 It can be shown (see [20]) that the higher-order terms in (6.16) are bounded by ~ ~ ~ O(V1T x ) 2 ≤ c 3 + c 4 q B V1 + c 5 V1 r , (6.17) F F for some constants c3, c4, c5. 6.2 Controller Structure and Error System Dynamics The structure of the NN controller is shown in Figure 6.1. Using (6.14) control input is $ T σ( V $ x) + W $ ϕ ( V x) + K r − v , τ = τ0 − v = W 1 1 2 2 v T T T (6.18) where v is robustifying term, and τ0 is defined by (2.10). The closed loop error dynamics is given by T T T Mr& = −(K v + Vm )r + W1T σ(V1 x ) + W2 ϕ(V2 x ) ˆT x ) − Ŵ T ϕ(V T x ) + ε + τ + v. − Ŵ T σ(V 1 1 2 32 2 d (6.19) &q&d e = e & e q d qd = q& d [Λ Ι] r fˆ(x) Kv Robot - Robust Term q q= q& v(t) Figure 6.1 NN Controller. Using (6.13) one has ~ ~T ~+W Mr& = − ( K v + Vm ) r + W1T σ + W1T σ 2 ϕ + ε + τd + v . (6.20) ~ one can obtain the expression for closed Applying Taylor series approximation for σ loop error dynamics [20] ~ ~T $ T x) + W $ T σ$ ′V $ Tx + W Mr& = − ( K v + Vm ) r + W1T (σ$ − σ$ ′V 1 1 1 2 ϕ +w +v , with disturbance term given by ~ ~T 2 $ T x + W T O( V w = W1T σ$ ′V 1 1 1 x) + ε + τ d . It is shown in [19], [20] that the disturbance term is bounded by ~ ~ w( t ) ≤ C 0 + C1 Z + C 2 Z r , F F (6.21) (6.22) (6.23) with Ci known positive constants. 6.3 Weight Tuning and Stability Proof Here are presented NN weight tuning laws, derived from Lyapunov theory, that guarantee stable tracking with internal stability. It is shown that the tracking error is suitably small, the NN weights are bounded, and the control τ(t) is bounded. The NN weights are adjusted on-line in real-time with no preliminary off-line learning required. 33 Initial Tracking Error Requirement. The next assumption specifies the region of convergence of the 2-layer NN controller. Assumption 3 (Initial Condition Requirement) Suppose the desired trajectory qd, q& d , && q d is bounded by qB as in Assumption 1. Define known constants c0, c2 by Lemma 3. Let the NN approximation property (6.12) hold for the function f(x) given in { } (2.8) with a given accuracy ε N for all x in the compact set S x = x x < b x with bx>qB. { Define S r = r } r <( b x − q B ) / ( c 0 + c 2 ) . Let r(0) ∈S r . The set Sr specifies the set of allowed initial tracking errors r(0). Note that the approximation accuracy of the NN determines the allowed magnitude of the initial tracking error r(0). For a larger NN (i.e. more hidden-layer units), ε N is small for a larger radius bx; thus, the allowed initial condition set Sr is larger. The key role of the Initial Condition Requirement is in showing the dependence of the allowed initial condition set Sr on design parameters. The constants qB, c0, c2, bx need not be explicitly determined. A key feature of the Initial Condition Requirement is its independence of the NN initial weights. This is in stark contrast to other techniques in the literature where the proofs of stability depend on selecting some initial stabilizing NN weights, which is very difficult to do. Theorem 4 (Augmented Backprop Weight Tuning) Let the desired trajectory be bounded by qB as in Assumption 1, and the initial tracking error r(0) satisfy Initial Condition Assumption 3. Let the ideal target weights be bounded as in Assumption 2. Take the control input for the robot dynamics (6.20) with gain satisfying K V min > (C 0 + kC 23 / 4)( c 0 + c 2 ) , bx − qB 34 (6.24) where C3 is defined in the proof and C0 and C2 are defined in (6.23). Let the robustifying term be ( v( t ) = − K z Z$ + Z B r F ) , (6.25) with gain Kz > C2 . (6.26) Let the NN weight tuning be provided by &$ $ $ T $ $T T W 1 = Sσr − Sσ ′V1 xr − kS r W1 (6.27) &$ T $ T $ $ V 1 = Txr W1 σ ′ − kT r V1 (6.28) &$ T $ W 2 = Eϕr − kE r W2 (6.29) with any constant matrices S=ST>0, T=TT>0, E=ET>0, and k>0 a small scalar design $ , W $ , W $ are parameter. Then the filtered tracking error r(t) and NN weight estimates V 1 1 2 UUB, with bounds given by (6.34) and (6.35). Moreover, the tracking error may be kept as small as desired by increasing the gains Kv in (6.20) Proof: Let select Lyapunov function as L= 1 ~ 1 ~ 1 ~ 1 T ~ ~ ~ r Mr + tr (W1T S −1W1 ) + tr ( V1T T −1 V1 ) + tr (W2T E −1 W2 ) . 2 2 2 2 (6.30) One has derivative ~ T −1 ~& ~ T −1 ~& ~ T −1 ~& & = r T Mr& + 1 r T Mr & + tr (W L 1 S W1 ) + tr ( V1 T V1 ) + tr ( W2 E W2 ) . 2 (6.31) Assuming that the initial tracking error satisfy Initial Condition Assumption 3, including the system error dynamics (6.21), one has ~ ~T T T $ T x) + r T W $ T σ$ ′V $ Tx + rTW L& = − r T ( K v + Vm )r + r T W1T (σ$ − σ$ ′V 1 1 1 2 ϕ+r w+r v + 1 T& ~ ~& ~ ~& ~ ~& r Mr + tr ( W1T S −1 W1 ) + tr( V1T T −1 V1 ) + tr( W2T E −1 W2 ) . 2 Using Property 3, and tuning rules yields 35 (6.32) { } { } ~T ~ ~T ~ & = − r T K v r + k r tr W L 1 ( W1 − W1 ) + k r tr V1 ( V1 − V1 ) ~ ~ + k r tr W2T (W2 − W2 ) + r T (w + v) ~ ~ = − r T K v r + k r tr Z T ( Z − Z) + r T (w + v) . { { } (6.33) } & is negative as long as either Proceeding as in [20], one obtains that L C 0 + kC 23 / 4 r > ≡ br , K v min (6.34) or C3 (6.35) + C 0 / k + C 23 / 4 ≡ b Z . 2 ~ & is negative outside a compact set, and r and Z Therefore, L are UUB as long as the ~ Z F > F control remains valid within this set. However, the PD gain (6.24) shows that the compact set defined by r ≤ b r is contained in Sr so that the approximation property holds throughout. The following remarks are relevant. Weight Initialization and On-Line Training. No preliminary off-line learning phase is required. The hidden-layer weights V1 are initialized randomly, like in [15]. The output-layer weights W1 and W2 are initialized at zero. In that way, stability of the system is not affected. Weight training occurs on-line in real time. Unsupervised Backpropagation Through Time With Extra Terms. The first terms of (6.27), (6.28), (6.29) are modified versions of the standard backpropagation algorithm. The last terms correspond to the e-modification [22], to guarantee bounded parameter estimates. Bounds on the Tracking Error and NN Weight Estimation Errors. The righthand side of (6.34) can be taken as a practical bound on the tracking error in the sense 36 that r(t) will never stray far above it. It is important to note from this equation that the tracking error increases with the NN reconstruction error ε N and robot disturbances bd (both appear in C0), yet arbitrarily small tracking errors may be achieved by selecting large gains KV. On the other hand the NN weight errors are fundamentally bounded by ZB. The tuning parameter k offers a design tradeoff between the relative eventual ~ magnitudes of r and Z . F Design Tradeoff of NN Size Versus Tracking Accuracy. Note that there is design freedom in the degree of complexity (e.g. size) of the NN. For a more complex NN (e.g. more hidden units), the NN estimation ε N error decreases, so the bounding constant C0 will decrease, resulting in smaller tracking errors. On the other hand, a simplified NN with fewer hidden units will result in larger error bounds; this degradation can be compensated for by selecting a larger value for the PD gain Kv. 7 SIMULATION OF NN CONTROLLER To illustrate the performance of the augmented NN controller used for friction compensation, the two link robot arm (Figure 7.1) is used. The model of the system shown on Figure 7.1 is given by [17] [ [ ] [ ] ] τ1 = (m1 + m 2 )a 12 + m 2 a 22 + 2m 2 a 1 a 2 cos θ 2 &θ&1 + m 2 a 22 + m 2 a 1a 2 cos θ 2 &θ& 2 − m 2 a 1 a 2 2θ& 1θ& 2 + θ& 22 sin θ 2 ( + (m 1 + m 2 )ga 1 cos θ1 + m 2 ga 2 cos(θ1 + θ 2 ) ) τ 2 = m 2 a 22 + m 2 a 1a 2 cos θ 2 &θ&1 + m 2 a 22 &θ& 2 + m 2 a 1 a 2 θ& 12 sin θ 2 + m 2 ga 2 cos(θ1 + θ 2 ) (7.1) (7.2) The system parameters are chosen as a1=1.1, a2=1, m1=3, m2=2.3. The nonlinear, discontinuous at zero friction model is included for both joints. The friction model parameters for the first joint are α0=35, α1=1.1, α2=0.9, β1=50, β2=65, and for the second joint are α0=38, α1=1, α2=0.95, β1=55, β2=60. It is assumed that the model of the robot arm as well as friction model is unknown. Note that the friction is discontinuous at zero. 37 m2 a2 θ2 a1 m1 θ1 Figure 7.1 Two-link robot arm. The NN weight tuning parameters are chosen as S=diag{10, 10}, T=diag{10, 10}, E=diag{35, 35}, k=0.01. The NN controller parameters are chosen as Λ=diag{5, 5}, Kv={20, 20}. The input to the NN is given by (2.9). The NN has L=10 hidden-layer units with sigmoidal activation functions, and 4 additional nodes with jump approximation activation functions (three for each joint). According to the notation shown in Figure 5.2, N=2, M=2. We compared the PD controller, the standard NN controller, and augmented NN controller. Figure 7.2 shows the position error for the first joint, Figure 7.3 shows position error for the second joint. The step input is applied to the system. Notice that there is the steady-state error when PD is used because of the presence of unknown dynamics as well as unknown friction. The standard NN controller reduces the steady-state error but it is still noticeable. The augmented NN controller shows the superior performance. The NN controller does not require preliminary off-line training. 38 Position error for the 1. joint 1.5 1 PD 0.5 augm. NN 0 stand. NN -0.5 -1 0 2 4 6 8 10 Figure 7.2 Position error for 1. joint: PD controller, standard NN, and augmented NN. Position error for the 2. joint 1 0.8 0.6 0.4 PD 0.2 augm. NN 0 stand. NN -0.2 -0.4 0 2 4 6 8 10 Figure 7.3 Position error for 2. joint: PD controller, standard NN and augmented NN. 39 Phase-plane error plots 1 0.8 PD 0.6 0.4 0.2 stand. NN 0 augm. NN -0.2 -0.4 -1 -0.5 0 0.5 1 1.5 Figure 7.4 Phase-plane error plots e2(t) versus e1(t) for PD controller, standard NN and augmented NN. 8 CONCLUSION A new NN structure is presented for approximating piecewise continuous functions. A standard NN with continuous activation functions is augmented with an additional set of nodes with piecewise continuous activation functions. It is proved that such a NN can approximate arbitrarily well any piecewise continuous function provided that the points of discontinuity are known. Since this is the case in many nonlinearities in industrial motion systems (friction, deadzone inverse, etc.) such a NN is a powerful tool for compensation of systems with such nonlinearities. A NN controller with friction compensation is designed based on the new augmented NN. Based on the feedback linearization method, the NN controller approximates unmodeled dynamics including the unknown friction. A general complicated friction model can be approximated, based on the new NN. It is not required for the friction model to be linear in unknown parameters. The NN controller does not require preliminary off-line training. A stability proof is given without any need for selecting some initial stabilizing NN weights. 40 ACKNOWLEDGMENTS This research is supported by NSF Grant ECS-9521673, Texas ATP Grant 003656-027, and ARO Grant 39657-MA. 41 REFERENCES [1] B. Armstrong, “Friction: Experimental determination, modeling and compensation,” IEEE International Conference on Robotics and Automation, Philadelphia 1988, pp. 1422-1427. [2] B. Armstrong-Hélouvry, P. Dupont, and C. Canudas de Wit, “ A survey of models, analysis tools and compensation methods for the control of machines with friction,” Automatica, vol. 30, no. 7, pp. 1083-1138, 1994 [3] R. Barron, “Universal approximation bounds for superpositions of a sigmoidal function,” IEEE Trans. Info. Theory, vol. 39, no. 3, pp. 930-945, May 1993. [4] R. G. Bartle, The Elements of Real Analysis, Wiley, New York, 1964. [5] C. Canudas de Wit, P. Noël, A. Aubin, B. Brogliato, “Adaptive friction compensation in robot manipulators: Low velocities,” Int. J. Robot. Res., vol. 10, no. 3, June 1991. [6] C. Canudas de Wit, H. Olsson, K. J. Åström, and P. Lischinsky, “A new model for control of systems with friction,” IEEE Trans. Automat. Contr., vol. 40, no. 3, pp. 419-425, March 1995. [7] C. Canudas de Wit and S. S. Ge, “Adaptive friction compensation for systems with generalized velocity/position friction dependency,” Proc. 36th IEEE Conf. Decis. and Contr., San Diego, CA, Dec. 1997. [8] F. C. Chen and H. K. Khalil, “Adaptive control of nonlinear systems using neural networks,” Int. J. Contr., vol. 55, no. 6, pp. 1299-1317, 1992. [9] S. Commuri and F. L. Lewis, “CMAC neural networks for control of nonlinear dynamical systems: structure, stability and passivity,” Proc. IEEE Int. Symp. Intell. Contr., Monterey, Aug. 1995, pp. 123-129. [10] G. Cybenko, “Approximation by superpositions of a sigmoidal function,” Math. Control, Signals, Syst., vol. 2, no. 4, pp. 303-314, 1989. [11] H. Du, S. S. Nair, “Low velocity friction compensation,” IEEE Control Systems Magazine, vol. 18, no. 2, pp. 61-69, April 1998. 42 [12] K. Funahashi, “On the approximate realization of continuous mappings by neural networks,” Neural Networks, vol. 2, pp. 183-192, 1989. [13] J. W. Gilbart and G. C. Winston, “Adaptive compensation for an optical tracking telescope,“ Automatica, vol. 10, pp. 125-131, 1974. [14] K. Hornik, M. Stinchombe, and H. White, “Multilayer feedforward networks are universal approximators,” Neural Networks, vol. 2, pp. 359-366, 1989. [15] Y. H. Kim and F. L. Lewis, “Reinforcement adaptive learning neural network based friction compensation for high speed and precision”, Proc. 37th IEEE Conf. Decis. and Contr., Tampa, Florida, 1998. [16] S.-W. Lee, J.-H. Kim, “Robust adaptive stick-slip friction compensation,” IEEE Trans. Ind. Electron., vol. 42, no.5, pp. 474-479, October 1995. [17] F. L. Lewis, C. T. Abdallah, and D. M. Dawson, Control of Robot Manipulators, Macmillan, New York, 1993. [18] F. L. Lewis, K. Liu, and S. Commuri, “Neural networks and fuzzy logic systems for robot control,” Fuzzy Logic and Neural Network Applications, ed. F. Wang, Intelligent Control and Automation Series, World Scientific Publishing. [19] F. L. Lewis, K. Liu, and A. Yesilidrek, Neural Network Control of Robot Manipulators and Nonlinear Systems, Taylor and Francis, Philadelphia, PA, 1999. [20] F. L. Lewis, A. Yesilidrek, and K. Liu, “Multilayer neural net robot controller: structure and stability proofs,” IEEE Trans. Neural Networks, vol. 7, no. 2, pp. 388399, Mar. 1996. [21] F. L. Lewis, “Neural network control of robot manipulators", IEEE Expert special track on Intelligent Control, ed. K. Passino and Ü. Özgüner, pp. 64-75, Jun. 1996. [22] W. Li and X. Cheng, “Adaptive High-Precision Control of Positioning TablesTheory and Experiments,” IEEE Trans. Contr. Sys. Tech., vol. 2, no. 3, Sep. 1994. [23] P. Lischinsky, C. Canudas de Wit and G. Morel, “Friction compensation for an industrial hydraulic robot,” IEEE Control Systems Magazine, vol. 19, no. 1, pp. 2532, Feb. 1999. 43 [24] K. S. Narendra, “Adaptive control using neural networks,” Neural Networks for Control, pp. 115-142. ed. W. T. Miller, R. S. Sutton, P. J. Werbos, Cambridge: MIT Press, 1991. [25] K. S. Narendra and A. M. Annaswamy, “A new adaptive law for robust adaptation without persistent excitation,” IEEE Trans. Automat. Contr., vol. AC-32, no. 2, pp. 134-145, Feb. 1987. [26] K. S. Narendra and K. Parthasarathy, “Identification and control of dynamical systems using neural networks,” IEEE Trans. Neural Networks, vol. 1, pp. 4-27, Mar. 1990. [27] H. Olsson and K. J. Åström, “Observer-based friction compensation,” Proc. 35th IEEE Conf. Decis. and Contr., Kobe, Japan, Dec. 1996, pp. 4345-4350. [28] J. Park and I. W. Sandberg, “Criteria for the approximation of nonlinear systems,” IEEE Trans. Circuits Syst.-1, vol. 39, no. 8, pp. 673-676, Aug. 1992. [29] J. Park and I. W. Sandberg, “Nonlinear approximations using elliptic basis function networks,” Circuits, Systems, and Signal Processing, vol. 13, no. 1, pp. 99-113, 1993. [30] M. M. Polycarpou, “Stable adaptive neural control scheme for nonlinear systems,” IEEE Trans. Automat. Contr., vol. 41, no. 3, pp. 447-451, March 1996. [31] M. M. Polycarpou and P. A. Ioannou, “Modeling, identification and stable adaptive control of continuous-time nonlinear dynamical systems using neural networks,” Proc. Amer. Contr. Conf., 1992, vol. 1, pp. 36-40. [32] G. A. Rovithakis and M. A. Christodoulou, “Adaptive control of unknown plants using dynamical neural networks,” IEEE Trans. Syst. Man Cybernet., vol. 24, no. 3, pp. 400-412, 1994. [33] N. Sadegh, “A perceptron network for functional identification and control of nonlinear systems,” IEEE Trans. Neural Networks, vol. 4, no. 6, pp. 982-988, Nov. 1993. [34] R. M. Sanner and J.-J. E. Slotine, “Stable adaptive control and recursive identification using radial gaussian networks,” Proc. IEEE Conf. Decis. and Contr., Brighton, 1991. 44 [35] J. R. Schilling, Fundamentals of Robotics Analysis and Control, Prentice Hall, New Jersey, 1990. [36] J. -J. E. Slotine and W. Li, Applied Nonlinear Control, Prentice-Hall, New Jersey, 1991. [37] E. D. Sontag, “Neural networks for control,” in Essays on Control: Perspectives in the Theory and its Applications (H.L. Trentelman and J.C. Willems, eds.), Birkhauser, Boston, 1993, pp. 339-380. [38] E. D. Sontag, “Feedback stabilization using two-hidden-layer nets,“ IEEE Trans. Neural Networks, 3, pp. 981-990, 1992. [39] A. Tzes, P.-Y. Peng and C.-C. Houng, “Neural network control for DC motor micromaneuvering,” IEEE Trans. Ind. Electron., vol. 42, no.5, pp. 516-523, October 1995. 45
© Copyright 2026 Paperzz