t .a. .. . .2... 5:: it. :r z. :7} Ix 1.2?! f 532...... .2 1mm .4: 4 33.1.3.0! . . \; .‘15:7I0. I. 9|»..le t ‘A‘IVo n. t It??? (til {.l‘tcl ‘03: I 71...; .i , , ‘ ‘ , . ., . 1 .. a ‘ wangéfis...LVwwwnnminnfiomg... Mm.w..m..,...uwn..t . . , . .. fl . , . . mm?! , . fiawmanwfi.gm%. 4mm THEStS Li S iiiiiiiiiiii This is to certify that the thesis entitled INDIRECT ADAPTIVE OUTPUT FEEDBACK CONTROL presented by Sridhar Seshagiri has been accepted towards fulfillment of the requirements for W Major profe Date Z//0,/7j 0-7639 MS U is an Affirmative Action/Equal Opportunity Institution f LI'BRAFNW Michigan State J University PLACE IN REI‘URN Box to remove this checkout from your record. TO AVOID FINES return on or before date due. MTE DUE MTE DUE MTE DUE 1/98 cJClRC/DatoDuopfiS—p.“ INDIRECT ADAPTIVE OUTPUT FEEDBACK CONTROL By Sm'dhar S eshagim’ A THESIS Submitted to Michigan State University in partial fulfillment of the requirements for the degree of MASTER OF SCIENCE Electrical Engineering 1998 ABSTRACT INDIRECT ADAPTIVE OUTPUT FEEDBACK CONTROL By Sridhar Seshagz'rz' An adaptive output feedback control scheme for the output tracking of a class of continuous-time nonlinear plants is studied. The method uses parameter projection, control saturation, and a high-gain observer to achieve semi-global uniform ultimate boundedness. First, an application to the longitudinal control of a platoon of non- identical vehicles is discussed. A nonlinear model is used to represent the vehicle dynamics of each vehicle within the platoon. The model depends linearly on unknown parameters which belong to a known compact set. In contrast to previous work, the number of measured quantities is kept to a minimum. The efficacy of the proposed method is demonstrated through simulations. Next, an application to the control of unknown nonlinear systems using an RBF neural network is discussed. The RBF network is used to adaptively compensate for the plant nonlinearities. The network’s weights are adjusted using a Lyapunov-based scheme. It is shown that by using adaptive control in conjunction with robust control, it is possible to tolerate larger approximation errors resulting from the use of lower-order networks. To my family iii ACKNOWLEDGMENTS I would like to express my deepest appreciation to the following people for having made the completion of this thesis possible : To my advisor Dr. Hassan K. Khalil, for his insight, guidance and invaluable assistance, without which this thesis would not have been possible. His dedication to the subject and personal integrity have served as an example and an inspiration to me. To all my other instructors at MSU, for their skillful instruction in the classroom, but more importantly, for their constant encouragement and friendship. To my friends, for having made my stay here the memorable experience that it has been. And to my family, for years of support, patience and understanding. iv TABLE OF CONTENTS LIST OF FIGURES vii 1 Introduction 1 1 . 1 Background .................................. 1 1.2 Organization ................................. 3 2 Robust Adaptive Tracking Control 5 2.1 Problem Statement .............................. 5 2.2 Control Design ................................ 7 2.2.1 State Feedback ............................... 8 2.2.2 High-gain Observer ............................. 12 2.3 Tracking Error Convergence ......................... 14 2.4 A Robustness Property ............................ 19 2.5 Robust Output Tracking ........................... 2O 3 Longitudinal Control of a Platoon of Vehicles 24 3.1 Introduction .................................. 24 3.2 Longitudinal Vehicle Model ......................... 26 3.3 Control Objective and Design ........................ 27 3.4 Simulations .................................. 31 3.4.1 Simulation 1 ................................ 31 3.4.2 Simulation 2 ................................ 32 4 Indirect Adaptive Contol Using RBF Neural Networks 42 4.1 Introduction .................................. 42 4.2 Problem Statement .............................. 43 4.3 Function Approximation Using Gaussian Radial Basis Functions ..... 44 4.4 Control Design ................................ 45 4.4.1 Small Reconstruction Error ........................ 47 4.4.2 Reconstruction Error With a Known Bound ............... 53 4.5 Simulations .................................. 54 4.5.1 Simulation 1 ................................ 54 4.5.2 Simulation 2 ................................ 55 4.5.3 Simulation 3 ................................ 57 5 Conclusions 66 APPENDICES 68 A Matlab programs for simulations in Chapter 3 68 A.1 run.m ..................................... 68 A2 runn.m ..................................... 69 A3 projm ..................................... 76 B Matlab programs for simulations in Chapter 4 77 B.1 trainf.m .................................... 77 B.2 nno.m ..................................... 78 B.3 slotsimom ................................... 79 vi 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 4.1 4.2 4.3 4.4 4.5 4.6 LIST OF FIGURES A platoon of N+1 vehicles ......................... Velocity, acceleration and jerk profiles for the leader. ........... Perfect knowledge of vehicle parameters, D,(t) = 0. ............ Vehicle parameters unknown, control based on nominal values, D,(t) = 0. Vehicle parameters unknown but adapted for, D,(t) = 0. ......... (a) d11(t), (b) d12(t), (c) d13(t), (d) d14 (t); d2i(t) = 0. ......... D,(t) 75 0, robustifying component not included. ............. D,(t) 34$ 0, robustifying component included, /\ = 0.9. ........... D,(t) 7e 0, robustifying component included, A = 0.2. ........... The reference signal and its derivatives .................... (a)State feedback [1 = 0.5 (b) Output feedback, 6 = 10-3, p = 0.5 (c) Output feedback 6 = 10““, n = 0.5 (d) Output feedback 6 = 10“, p = 0.1 ..................................... (a)State feedback [I = 0.5 (b) Output feedback, 6 2 10"“, p = 0.5 (c) Output feedback 6 = 10‘4, u = 0.5 ((1) Output feedback 6 = 10“, p = 0.1 ..................................... (a) F(y,3'/) (b) F(y, y) — 01Tf(y,y). .................... (a) No adaptation for weights, no robust control (b) Only adaptation for weights (c) Only robust control (d) Adaptation for weights and robust control. .................................. Effect of network size on the controller’s performance. . .g ........ vii Chapter 1 Introduction 1 . 1 Background Adaptive control of nonlinear systems has matured as an exciting area of research over the last few years. Early efforts in the design of adaptive controllers for nonlinear systems focused on the state-feedback problem and resulted in a systematic design procedure called adaptive backstepping [16]. An extension to the more challenging output feedback problem for the case when the system nonlinearities depended only on the output was next made. This problem was first solved under restrictive struc- tural and growth conditions on the nonlinearities [14, 15]. Subsequently, the growth restrictions were removed [17], but the structural restriction remained: the output nonlinearities were not allowed to precede the control input. The removal of this structural restriction by Marino and Tomei in [31] was a breakthrough in adaptive nonlinear output feedback control. Their work addressed the problem of design- ing a global adaptive output feedback tracking control for single-input single-output 1 2 (SISO) nonlinear systems that are linear with respect to the input and an unknown constant parameter vector. This was achieved by merging the filtered transforma— tions of [29] and [30] with the adaptive backstepping scheme of [16] and using a novel compensation of the estimation error efl'ects. The scheme however suffered from the drawbacks of overparametrization inherited from the original adaptive backstepping procedure and restriction to the unnormalized gradient update law. These drawbacks were addressed in the work of Krstic and Kokotovic [27], which pr0posed three new adaptive schemes to achieve minimal parametrization and to remove the restriction of unnormalized gradient update. Indirect adaptive control design for systems representable by input-output mod- els was done by Khorasani in [26]. The starting point in [26] was a class of SISO nonlinear systems represented in state-Space form. Under the assumption of certain rank conditions, the technique of output prolongation [12] was used to convert the model to an equivalent input-output representation. The scheme however required the derivatives of the output to be available for feedback. In the work of Khalil [24] this requirement was relaxed by the use of a high-gain observer to estimate the derivatives of the output. The system under consideration in [24] was SISO, input- output linearizable, minimum-phase, and modeled by an input-output model of the form of an nth-order differential equation. By combining results from [9, 40, 41] with Lyapunov-based adaptive design [18, 32], he designed a semiglobal controller that achieved asymptotic output tracking for reference signals which were bounded and had bounded derivatives up to the nth order. The design was simpler than traditional ones since it did not use filtering or error augmentation ideas. It was simply a state 3 feedback controller with a linear observer. A similar control design was also presented in [23]. An important drawback of the result of [24] was the requirement of persistence of excitation (PE) not only for parameter convergence but even for tracking error convergence. This is unusual in adaptive control results where tracking error conver- gence is shown without PE. This drawback was addressed in [2]. This improvement over the result of [24] was made possible by changing the analysis approach. In [24], convergence was proved by showing that, under state feedback and the PE condition, the set of zero tracking error and zero parameter error is an exponentially stable invariant set. Then, singular perturbation analysis was used to Show that this same property is recovered under output feedback for sufficiently small 6. This idea does not work in the lack of PE because the set of zero tracking error and zero param- eter (or partial parameter) error is not exponentially stable. In [2], the closed-loop system under output feedback is analayzed directly and various Lyapunov functions are combined to form a composite Lyapunov function that shows tracking error and partial parameter convergence. 1 .2 Organization The rest of this thesis is organized as follows. Chapter 2 is a brief overview of the technique of [2]. In Chapter 3, an application to the longitudinal control of automated vehicles is presented. The controlled vehicle is assumed to be capable of measuring (or estimating) necessary dynamical information from the vehicle immediately in front of 4 it by its onboard sensors. The computer in the vehicle processes the measured data and generates proper throttling and braking actions to follow the vehicle in front at a safe distance. The property that the spacing error for a controlled vehicle can be regulated is referred to as local stability [38]. An important control objective in the longitudinal control problem is that of asymptotic stability of a platoon or string of cars following one another. A platoon is said to be asymptotically stable if there are no slinky-type effects [37] within the platoon, i.e, there are no amplifications in the deviations of vehicle spacings from their steady state values from the front to the end of the platoon. It is well-known that for the case where the vehicle following is not cooperative,i.e, information is not exchanged with other vehicles, velocity dependent spacing rules can guarantee asymptotic platoon stability. In our work, we use the “constant time headway” spacing rule [8, 39]. Simulations are presented for the case of a platoon of four cars following a leader. Good references on the longitudinal vehicle control problem can be found in [1], [6],[20] and [36]. In Chapter 4, we study the application of the technique of [2] to the adaptive control of unknown nonlinear systems using RBF networks. The design is developed for systems represented by input-output models and RBF networks are used to approximate the system’s nonlinearities. The weights of the networks are adapted using a Lyapunov- based scheme. Simulations are presented to demonstrate the need for adaptation, the role of the robustifying component and the effect of the network’s size (number of Gaussian nodes) on the tracking performance. Discussions and a summary are presented in Chapter 5. Chapter 2 Robust Adaptive Tracking Control 2.1 Problem Statement Consider a single-input—single-output nonlinear system represented globally by the nth-order differential equation if") = f0(°) + Zfzi f.(-)0.- + [900 + Zf=1 gi(')0i]u(m) (2'1) where u is the control input, y is the measured output, y“) denotes the ith derivative of y, and m < n. The functions f,- and g,- are known smooth nonlinearities which may depend on y, y“), ..., y("‘1), u, um, ..., rim—1); i.e., fi() : fi(yay(l)1 ' ' .,y(n—l),u,u(1),. ' - ,u(m—l)), 0 S 2 S P and 93(.) : 93(y7y(1), ' ' ’ 3 y(n_l), 2“) “(1), ' ‘ ' 7u(m-l)), O S i S p 5 6 The constant parameters 01 to 0,, are unknown, but the vector 6 = [61,...,6,,]T belongs to Q, a known compact convex subset of B”. By augmenting a series of m integrators at the input side of the system, the extended system can be represented by a state space model. The states of these integrators are 2.1 = u, 22 = u(1),up to 2m 2 um”) and v = aim) is the control input of the extended system. Taking $1 = y, 2:2 = y“), up to 113,, = y("‘1) yields the extended system model it = $141, ISiSn—l in = fo(a:,z)+6Tf(:r,z) + [90(23, 2) + 0Tg(:r:, z)]v (2.2) it = Zi-l-la lszsm_l 2... = v y = 931 J where x : [$1,...,In]T, z:[zl,...,2m]T f : [f1,...,fp]T, g=[91a---,9plT Assumption 1 lgo(a:, z) + 0Tg(:r, z)| 2 k > 0 V :1: E R", z E R'" and 0 E 91, where 521 is a compact set that contains 9 in its interior. Assumption 1 ensures that (2.2) is input-output linearizable by full state feedback for every 0 E Q. Using the results of [5], it can be shown that there exists a global 7 diffeomorphism, possibly dependent on 9, fl: IL" = dé‘ Ta, 2) C T1659 Z) with T1(0, 0) = 0, which transforms the last m state equations of (2.2) into C=F(C.$,9) This, together with the first n state equations of (2.2), defines a global normal form. The objective is to design an adaptive output feedback controller which guarantees boundedness of all state variables and tracking of a given reference signal y,, where y, is bounded, has bounded derivatives up to the nth-order, and yin) is piecewise continuous. 2.2 Control Design The controller design is done in two steps. First a state feedback controller that en- sures boundedness of all signals and yields zero steady-state tracking error is designed. This same controller is used in the output feedback case with the states replaced by estimates provided by a high-gain observer (HGO). The control is saturated outside a compact region of interest to protect the system from peaking induced by the HGO. 2.2.1 State Feedback We design an adaptive state feedback controller so that the output y tracks the given reference signal yr. Define 6.- = y“‘”-y§“”, 132572 e = [81, e2, ..., 6an Mt) = [y(t). y“)(t). y‘"‘”(t)lT yr“) = [yr(t), iii—”(75), ..., yin-”(Dir 3230) = [yr(t), 319W), y§""”(t), yf")(t)lT and let Y and YR be any given compact subsets of R" and Rn“, respectively, such that 37(0) 6 Y and y3(t) 6 YR V t 2 0. We rewrite (2.2) as e = Ame +b{Ke + fo(e +yr,z) +0Tf(e+yr,z) + [go(e + yr, 2) + 6Tg(e + 3)., z)]v — 31W} . (2.3) 2' 2 A22 +b2u where (A, b) and (A2, b2) are controllable canonical pairs that represent chains of n and m integrators, respectively, and K is chosen such that Am = A — bK is Hurwitz. Assumption 2 The system C = F (C ,y,,0) has a unique steady-state solution C. Moreover, with C =: C — (— the system 5: F(C + cle + 32., a) — new) “‘3 ac”, at. C, a) (2.4) has a continuously difierentiable function V1(t, 6), possibly dependent on 9, that sat- isfies 1 villi“2 S V1(t, 5) S n2||5||2 61/1 3V1 ~ - ” 2 “ — —‘T < — (it + 8C F2((,e,y,.,C,9) _ n3||C|| +n4llCl|||ell where 771, 772, 773 > 0, and 774 2 0 are independent of y. and 0. The steady-state response of a nonlinear system is introduced in [19, Section 8.1]. Basically, it is a particular solution towards which any other solution of the system converges, as time increases. The inequalities satisfied by V1 imply that such conver- gence is exponential. They also imply that (2.4), with e as input, is input-to—state stable. Consequently, the zero dynamics of (2.2) are exponentially stable and (2.2) is minimum phase. Let P = PT > 0 be the solution of the Lyapunov equation PAm + AgP = —Q where Q = QT > 0, and consider the Lyapunov function candidate v = eTPe + lz-éTr-lé (2.5) 1Unless specified otherwise, I] . M denotes the Euclidean norm. 10 where F = FT > 0, d = d — 6, and d is an estimate of 0 to be determined by the parameter adaptation law. The derivative of V along the trajectories of the system is given by V = -eTQe + (WP-16.7 + 2eTPb{fo(e + yr, 2:) + 0Tf(e + yr, 2) + Ke -— yin) + [go(e + yr, z) + 0Tg(e + yr, 2)]u} Taking ”U _ —Ke+yi-n) —f0(€+yraz) _éTf(e+yraz) go(e + yr, 2) + éTg(e + yr, 2) gt. w(eazryR9é) (26) we can rewrite the expression for V as V = —eTQe + dTI‘ '1[d — I‘d] where <25 = 2eTlDblfle + yr, 2) + 9(6 + yr, (2)1146, 2, 3712, 9)] = 05(6, z, ya, 9) The parameter adaptation law is chosen as in [24], i.e., 5: Proj(é, <15) where Proj(d, ab) = I‘d) for d E Q and is modified outside (2 to ensure that éTr-1[é — rqs] g 0 (2.7) 11 and 6(t) belongs to a compact set 96 for all t Z 0, where (21 D 06 D $2. This can be achieved by standard adaptation laws with smoothed parameter projection to ensure that Proj(0, (25) is locally Lipschitz. As an example, consider the case when S2 is the convex hypercubeQ={6 | a,- 30, sh}, 1323p}. Let 95={0|ai—630,Sb,+6},1323p} where 6 > 0 is chosen such that {26 C 521, and choose F to be a positive diagonal A matrix. In this case the projection Proj(6l, d) is taken as f 711452, if ai S at S be 01‘ iré.>b.and¢.300r ifé, b,' and (bi > 0 t 7“ [1+(éi- 00/6] ¢n if d, < a.- and (b,- < 0 Inequality (2.7) ensures that V S 0. Therefore, e(t) and d are bounded for all t Z 0. Since )7, is bounded, we conclude that z(t) is bounded, which implies, in view of Assumption 2, that z(t) is bounded. With all signals bounded, we conclude that e(t) —)Oast-—)oo. 12 2.2.2 High-gain Observer To implement the state feedback adaptive controller using output feedback, we need to estimate 6; there is no need for estimating 2 as it is already available (the state of the integrators at the input side). With the goal of recovering the performance achieved under state feedback, we use the same high-gain observer used in [24], namely, 61' = éi+1+ai(el-é1)/e‘, ISZSTI—l (2.9) 8,; = an(el—é1)/e" where e is a small positive parameter to be specified. The positive constants a,- are chosen such that the roots of s"+als"—1+- - -+cr,,_ls+01n = 0 have negative real parts. To implement the control using output feedback the state e in w’ and 45 is replaced by its estimate e. We assume that all initial conditions are in a given compact set; in particular, 6(0) 6 Q, e(0) E E0, and 2(0) 6 Z0, where E0 and 20 are compact sets. The sets E0 and Z0 can be chosen large enough to cover any given bounded initial conditions, but once they are chosen we cannot] allow initial conditions outside them. Let c1 = maxeeg0 eTPe, C2 = maxoenflem %(d — 6)TF‘1(9— 0) and c3 > c1 + C2. Then e(t) E E (if {eTPe 3 03} for all t 2 0. Let Z be a compact subset of R” such that Z0 is in the interior of Z and 2 2(0)€Zo and e(t)€EVtZ 0 => z(t)€ZVtZO. (2.10) 2The set Z can be determined using the Lyapunov function V; of Assumption 2. The basic idea is to choose cz large enough that the set {V1 3 ex} is positively invariant, and then determine the corresponding set in the z-coordinates. 13 Let S 2 max |w(e, z, 323, 9)] where the maximization is taken over all e E E1 déf eTPe 3 c4}, 2 E Z, 373 E Ymd E {2.5, where c4 > c3. Define the saturated function it” by 10(8) 27 yRa 9) S $309, ZayR,é) = S sat< where sat(-) is the saturation function. By taking {,- = (e,- — é,)/e"“, 1 g i S n and 6 = [(1, . . . ,én]T, the closed-loop system is represented by the standard singularly perturbed form é = Ame + b{Ke + M) + 6770) + (go(-) + 9Tg(-))¢3(-) - 21$")} 2 = A22 + 52W” (2.11) 0 : Pr0j(éa ¢()) eé = (A — HC)€ + eb{fo(-) + 6Tf(-) + (900 + 6Tg(-))W(-) - W} I where C = [1,0,...,0], H : [a1,...,an]T, (A — HC) is Hurwitz, and é = e - DE where D is a diagonal matrix with 6"“ as the ith diagonal element. 14 2.3 Tracking Error Convergence Tracking error convergence is proved in [2]. For the sake of completeness we outline the proof. The first step in showing tracking error convergence is to confirm that for any initial conditions in the given compact set, all signals of the closed-loop system (under output feedback) are bounded. First it is shown that there exist constants c5, as > 0 such that the set 3 R. = {{v 3 03} n {(5 e Qg}}X{V1$ 05} x {vé 3 cats?) is positively invariant for sufficiently small 6, where V): = {T156 and P = PT > 0 is the solution of the Lyapunov equation 15(A — HC) + (A — HC)TP = —I. Then, using the difference in speeds between the slow and fast variables and the fact that V): S —(1/2e)||§||2 outside {V5 3 c6} it is shown that the trajectory enters the set R, during the time interval [0,T(c)] and remains thereafter, where T (e) —-) 0 as e —+ 0. From that time on, the control saturation is not effective and the closed-loop system is given by e = Ame—béTau) +A(-) 0 = 1“,,(0, a) [ (2.12) C : 172(6789327‘7696) .5 = (A — HC){ — came) + Ke] + eA(-) J 3Note that the set {V1 3 as} could be time-dependent. See [25, Section 3.4] for the use of time-dependent sets in the analysis of nonautonomous systems. 15 where macs) -—- Proj(é,¢(é,z,ya,é)) e(t) = ft)+9(-)w(é(t).z(t).yR(t),é(t)) At) = b{K(e—é)+(fo—fo) +9T(f-f)+(go-éo)v+9T(g-§)v} f(-) = f(é+y.,z) if) = 9(é+3’r,2) Define w, by w,(t) déf f(yr,2) + g(y,,z)u(0, 2,323,150 where Z is the steady state solution of the zero dynamics, determined uniquely from (- = T1(y,., Z). Assumption 3 There exists a constant nonsingular matrix S, possibly dependent on 0, such that Sw,(t) = [w,1(t) 0]T where w” is persistently exciting. The possibility that wr is persistently exciting or that w, = 0 is not excluded. Using the transformation 5"1 to transform 6 into VS” 2 [61319;] , the equation for e and 0 can be rewritten as ('3 = Ame — béTs—lszu. + béT(w. — 110+ A(-), 91 PIP 62 P2P 16 Define f() : f(yra 2), §() : 9(yr12)1 gO() : 90(yra 2) 12%) : W0, ‘5ny) 6), £4) 2 VJ“), Z,yR,é), ¢() : 1/J(é, ZayRaé) It can be shown that e and 61 satisfy e A... —bgw,?1 e A.(-) . = + (2.13) él 2111911)”pr O a] Ae(°) where 1‘1 F2 - _ . - . S‘Tr‘s-l = , As(') = A(-) + b9T[(f — f) + (W - 5110)] F3 F4 Aef') = [Flp — 2l‘1gw,1bTPe] and K91 > 9f) = (90 + 9T§)/(§o + 5T9) > K92 for some positive constants Kgl and K92 independent of 6. Since f, go, 9 and 1b are Lipschitz functions in their arguments, we have llAs(')ll S 61||e|| + 52||€H + 53||C~||, llAe(-)ll S 54||e|| (2-14) for some 6,- 2 0, i = 1, .., 4. Consider the system é Am ‘bngi e . (2.15) 61 2F19wrleP 0 01 17 Using well known results from adaptive control theory (see for example [25, Section 134]) and the fact that wrl is persistently exciting and Q() is bounded from below, it can be shown that (2.14) has an exponentially stable equilibrium point at the origin. Then, from the converse Lyapunov theorem, there exists a Lyapunov function V2(t, e, 91) whose derivative along (2.13) satisfies V2 S —<5.5ll€ll2 — 66ll0~lll2 + 57|l€|lll5|l + 58ll9~1|lll§ll (2.16) + égllell2 + 610l|6||||51l|+ 6n||€l|l|€|l + 612||é1||||5|| for some positive constants 65 and 66 and some non-negative constants 6,- ,7 g i S 12. The derivative of Vg with respect to 65' = (A — HC)g — ebglewrl — eKe + 5A, (2.17) satisfies . 1 .. - V: S glléll2 + 73ll91||||€l| + 74||6||||€|| + 75|lC||||€|| + nlléll2 (2-18) for some non-negative constants *7,- ,3 S i g 6. Construct the Lyapunov. function candidate W=aV+flV1+V2+Vg (2.19) where a > 0 and 6 > 0 will be chosen later. Using the inequality V s —lclllell2 + k2||6||l|€|| 18 together with Assumption 2, (2.16), and (2.18), it can be Shown that the derivative of W with respect to (2.12) satisfies - . . Hell Ilell . ”a” “an W s — M (2.20) urn urn L Iléll J . Hall J where M is given by akl + (55 — 59 —510/2 (-/3714 — 510/2 (—ak2 - 57 — ”Ml/2 —510/2 56 —<512/2 (“58 — Val/2 M = (‘3774 — (511V? ‘512/2 5773 —75/2 L (‘Ok2 — 57 — 70/2 (—68 — 73)/2 ‘75/2 “/0“ ’76 By choosing a and 6 large enough and 6 small enough, M can be made positive definite. Hence, by [25, Theorem 4.4], we conclude that [“6” llfhll Hill llflllT -+ 0, as t —+ co 19 2.4 A Robustness Property In this section we recall from [2] robustness of the adaptive controller to unknown bounded disturbance. Consider a perturbation of (2.1): P 3100 = fof') + : f.-(-)0.- + [900 + Zgi(')0ilu(m) + d(‘) (2-21) i=1 where d() is a disturbance term of the form d(t, x, z, u, 9) = df(t, x, z, 9) + dg(x, z, 9)v The error equation (2.3) becomes «2 = Ame + We + M) + 6TH.) + (90(‘) + 0Tg(-))v + d(t, e + 32., 2,1), 9) — yiw} Suppose the disturbance d satisfies “d(t, e+y., 2, 7,12%), 9)“ 3 d1 Vt 2 0, e E E, y. E Y, z E Z, and E E R". Suppose further that for sufficiently small d1 Assumptions 1 and 2 hold uniformly in d and the set Z has the pr0perty (2.10) for all d. Using the same controller of the previous section, it can be shown that, for all (e, 9, 6,6) 6 R,, the derivative of V satisfies V g —eTQe + klc + kddl (2.22) 20 for some kd > 0. For every 6 < 6“ = k(c3 — c2)/k1 and d1 < 191(6‘ — e)/kd, V < 0 on V 2 (:3. Hence, as in the previous case, it can be shown that there is d} = dI(c) such that for all all < d}, all variables are bounded and (2.22) is satisfied for all t Z T(e), where T(e) —> 0 as e —+ 0. Therefore, the mean-square tracking error is of order 0(6 + d1). If Assumption 3 is satisfied in the ideal case d = 0, then it can be shown that, in the presence of d, the derivative of W with respect to the closed-loop system satisfies . 5 5 - w 5 fine“? - 361101112 + add. (2.23) for some ed > 0. Since all signals are bounded, the mean-square tracking error and the mean-square error of 91 are of order 0(d1). From [2], if it), is persistently exciting, then W satisfies Wg—mW+Qw an) for some kw > 0, which shows that all variables, including the parameter error 9, converge to a ball centered at the origin, whose size is of the order of 0 (fl) . 2.5 Robust Output Tracking We introduce an additional robustifying control component to make the mean-square tracking error arbitrarily small, irrespective of the bound on the disturbance d, pro- vided this bound is known. Once again, we consider the perturbed system (2.19) and assume that Assumptions 1 and 2 are satisfied uniformly in d(). Moreover, we 21 assume that the set Z has the property (2.10) in the presence of d. Let _ (fl)_ _”T u: Ke+yr f0(e+yr,z) 9f(e+yr,z)+u1 (2.25) go(e + 32., z) + éTg(e + yr, 2) We will choose the robustifying component 221 using the Lyapunov redesign technique, e.g., [25, Section 13.1]. Assume that ||d(t,x,z,u,9)|| g p(e,z) + kvllulll, 0 3 kn <1 where p and kv are known. Take 77(e, z) 2 p(e, z) and define s = 2eTPb, - (135.) ' £7 for n(e,2)|8| Z M ¢.(e, z) = (2.26) (”l-kw) ~fi for n(e,z)|s| < u and 4 —KC + y?!) — f0(€ + yr, 2). — éTf(e + yr) 2) + Alb-(9,2) . (2.27) go(e + yr, 2:) + 9Tg(e + yr, z) 19(6) 2, yR: é) = The adaptive controller is taken as u = ibs(é, 2, ya, 9). Using Lyapunov redesign ideas and the same adaptation law as before, it can be Shown that V g —eTQe + free + § (2.28) “This definition of ti) replaces (2.6) for the current case. Quantities defined in terms of 11), like (11, S, if), and w, are now defined in terms of the new 111. Notice, however, that w, remains the same because 1b, vanishes at e = 0. 22 for all (e, 9, C, 6) E R3, for some he 2 0. Repeating the argument described in Section 2.3, it can be shown that there exist 6" > 0 and u“ > 0 such that for all 0 < e < 6* and 0 < u < u“, all state variables are bounded and there is time T(e), with T(c) —) 0 as e —> 0, such that (e, 9, 6,5) 6 R3 for all t 2 T(e). Consequently, (2.28) is satisfied for all t Z T(e). Therefore, the mean-square tracking error is of order 0(u + e) where the design parameters u and 6 can be made arbitrarily small. If Assumption 3 is satisfied in the ideal case d = 0, inequalities similar to (2.23) and (2.24) can be shown in the current case. The right-hand side of such inequalities will have a term proportional to the disturbance upper bound despite the presence of the robustifying control component. Thus, such analysis does not reveal an advantage for the robustifying control. The only advantage we can Show is the fact that the mean square tracking error can be made of the order 0(u + 6). Finally, in the ideal case d = 0, the controller with the robustifying component recovers the tracking-error convergence property of Section 2.3, provided Assumption 2.3 is satisfied. This can be seen by noting that in the ideal case W satisfies an inequality similar to (2.28) with M replaced by M1, where M1 equals M except for the constants '74, 76, 65, 66 and 67. The argument of Section 2.3 can be repeated to Show that M1 is positive definite. The robustness results of this section and the preceding one have potential ap- plication to adaptive control of nonlinear systems using neural networks or other nonlinear function approximators. Consider a system whose input-output model is of the form y(") = F () + G(-)u(m). Using neural networks, the nonlinear functions F () and G'() can be approximated to any desired tolerance. In the special case of linear- 23 in-the-weights neural networks, as in radial basis function networks, the functions F and G can be represented by F(-) = f;1h,-(-)Vi + 61(-) , G() = :21 h,(-)W.- + 62(-) for some weights V, and W,. It follows that the system can be represented in the form (2.21) with d = 61 + rig-um). The discussion of adaptive control using RBF networks is taken up in Chapter 4. Chapter 3 Longitudinal Control of a Platoon of Vehicles 3.1 Introduction The subject of design and analysis of various longitudinal control laws for automated highway systems (AHS) has been studied extensively since the late 1960’s. The goal is to significantly increase the traffic capacity of existing highways through vehicle and roadway automation. Furthermore, since many of today’s automobile accidents are caused by human error, automating the driving process may actually increase highway safety. In such a system, vehicles will be driven automatically with onboard lateral and longitudinal controllers. The lateral controller will be used to steer the vehicle around corners, make lane changes, and perform additional steering tasks. The longitudinal controller will be used to maintain a steady velocity if the vehicle is traveling alone (conventional cruise control) or follow a lead vehicle at a safe distance 24 25 (vehicle following). In this chapter, we discuss the application of the adaptive con- trol technique of Chapter 2 to the vehicle following problem. A Simplified nonlinear longitudinal powertrain model is used for designing the controller. The vehicle pa- rameters are partially known or completely unknown and are adapted for. We assume that the following measurements are available to the vehicle’s sensors (i) the relative distance 1 between the controlled car and the car in front of it and (ii) the forward velocity of the controlled car. The other quantities of interest, namely the relative velocity, relative acceleration and the acceleration/ deceleration of the controlled car, are estimated from the measured quantities. The idea of replacing measured quanti- ties by their estimates has also been used in earlier works. For example [37] mentions the possibility of “direct computation” of relative velocity and acceleration using the measured value for the relative distance. However, in [37] (i) the control objective is different from the one we consider here, (ii) the model used is a simplified one where all parameters are assumed exactly known and there are no disturbances and (iii) no analysis is presented for the case where estimates are used in feedback. Similarly, [1] uses an estimate of the leading vehicle’s acceleration in the control. However, the mea- sured quantities still include (in addition to the relative distance and the controlled vehicle’s velocity) the relative velocity between the controlled and leading vehicles, and the acceleration / deceleration and propulsion force of the controlled vehicle. 1Referred to as the intervehicle spacing in the next section. 26 3.2 Longitudinal Vehicle Model A widely proposed stategy for effectively increasing traffic throughput on existing highways through automation is to group the controlled vehicles into tightly spaced vehicle group formations called platoons [43]. A configuration of a platoon of N+1 vehicles is shown in Fig 3.1. The lead vehicle is numbered 0 and the ith follower (henceforth referred to as the ith vehicle) is numbered i. L,- denotes the length of the ith vehicle and x. its position. Let 6,- : xi-) — x,- - L,- for i = 1,2, , N. 6,- is the intervehicle spacing between the (i — 1)th and ith vehicles. In developing a model . Xi , xi-l 7—,. I—’. | I 1 Vi I Vi-i L———> |-——> N 1 H 0 Li <——> Figure 3.1: A platoon of N+l vehicles for the system, we assume that the road surface is horizontal and that all vehicles travel in the same direction at all times. From Newton’s Second Law, the relationship between the acceleration of the ith vehicle, its prOpulsion force, and the drag forces acting on it can be derived as mix}- : f,‘ — kdifli‘iz — d + d1i(t) (3.1) 27 where m, is the mass of the vehicle, 2'.- its acceleration, f,- the propulsion force, [£0,515,-2 the aerodynamic drag force, d a nominal constant mechanical drag and d1i(t) the resultant of the external disturbances (such as wind gust,...etc.) The propulsion system which represents the engine dynamics of the vehicle can be modelled as a first order system [1] f.- = -17(-f. + u.) + can) (32) T: where 7',- denotes the vehicle’s engine time-constant, u,- is the throttle/brake input and d2i(t) is a disturbance term (possibly due to engine transmission variations, etc.) This model differs from the one in [1] in that both the engine time-constant and the mechanical drag term are independent of the vehicle’s velocity. However, we note that the effects of neglecting this dependence can be incorporated into the disturbance terms d1i(t) and (12:. (t) The constants kdi, m,- and r.- are unknown but belong to known compact subsets of R1. 3.3 Control Objective and Design The dynamics of the ith vehicle maybe described by the state vector [6,-, ’05, f,]T, where u, = x,- is the ith vehicles’s velocity. With this choice of state variables, (3.1) and (3.2) maybe rewritten as 5r = vi—i - ’01, a. = (f.- — aim? — d + 2711(2)) /m,- (3.3) ft = (—f:' +ui)/Ti +d2ift) 28 for l g i ;<_ N. The control objective is to design u,- in such a way that the intervehicle Spacing 6,- tracks a desired reference. It is well known (see for example [36, 38]) that for the case where the desired intervehicle spacing is constant, asymptotic platoon stability can be guaranteed only if the lead vehicle is transmiting its velocity and acceleration to all other vehicles in the platoon. This approach yields stable platoons with small intervehicle spacings at the cost of introducing and maintaining continuous intervehicle communication with high reliability and small delays. In [8], it is shown that platoon stability can be recovered in a non-cooperative or autonomous operation if a speed dependent spacing policy is adopted, which incorporates a constant time headway in addition to the constant distance. This takes the form 641' 2 Av,- + A0, where 642. is the desired intervehicle spacing and A and A0 are suitably chosen positive constants. The introduce more spacing between the ith and (i — 1)th vehicles as the velocity of the ith vehicle increases, which intuitively makes sense. Following [39], we set A0 to zero, which basically allows for the minimum desired distance between two adjacent vehicles to be zero provided the vehicle that is following has zero velocity. With this choice, we‘define the plant output as gm 2 6, — Am. The control objective is thus to regulate yp'. to zero. Differentiating the output twice and making use of (3.3), the following error equation is obtained zip,- = 5}- + 0.T[F.-(v.-, 23,-) + Gm] + D.(t) (3.4) where 9,- : [kdi/mi,1/r,,kdi/(m,-r,-),1/(m,~r,-)]T, F,() = [2Auiui,)\u,-,Avi2,x\d]T, G = [0,0, 0, —/\]T and D,(t) = —/\(d11./’r.-+d.1i+d2i)/m,-. From the knowledge of the intervals 29 in which kdi, m, and T,- lie, it is possible to calculate the compact subset of R4 to which 9,- belongs. In particular, suppose that ka, 6 [ML/€327], m,- 6 [mf",mf"], and 7‘,- 6 [7,“, 71M ] Then m M 1 1 m M 1 kd k. mX] dtmlelMM’mmm m mm m,- r,’" m ”rim def 06 9: mM’ XT[T”—-"—’]X [an-M’ ]CR4 17"! By defining Ypi = [ypv (MP, it is possible to rewrite (3.4) as Yl’i = AmYpi + b{KYPi + 6i + 0iT[E(’Ui, ’01) + Gui] + Di(t)}, where (A, b) is a controllable canonical pair that represents a chain of two integrators and K is chosen such that Am 2 A — bK is Hurwitz. To estimate 5,, (i,- and u}, we use two high-gain observers, driven by 6,- and 2),- respectively. Denote the estimates by 6:, i5:- and ii, respectively. The high-gain observers are described by the following equations 191'. 2 W21. + ,61(9i — wli)/e 2'11. = zgi + a1(v,- — 21,-)/6 192,- = 103,- + 5292' — w1,-)/£2 ] and 22:. = 02(1). — zli)/62 793,- = 33(51 — “(Uni/63 A A C 6i = “121-, 6i : vi = 22,- where e > 0 and the 0’s and 9’s are chosen such that the roots of 32+013+a2 = 0 and A 53 + [6132 + 52.5- + 93 = 0 have negative real parts. Let y“: 6— AUhY p,- "it/pi, 9p,-lT and assume that an upper bound on the term D,(t) is known. Then the control u.- is 30 designed as .1 ~T . .. —6i_9i17iia.i_KY-+r- u,- = (“f ) ”I ”1 (3.5) 9,- G A where 9,- is an estimate of 9,- and um. is a robustifying component designed using the Lyapunov redesign technique,e.g., [25, Section 13.1]. The control u,- is saturated outside a compact set of interest to prevent the peaking induced by the high-gain observers [9]. 2 The parameter adaptation law is chosen as in Chapter 2. Proceeding along the lines of Chapter 2, it is possible to show ultimate bounded- ness of the spacing deviation error. We use the Lyapunov function candidate T ~T - ~ v, = YpiPYpi + to, r 19,-, where P 2 PT > 0 is the solution of the Lyapunov equation PAm + AgP = —I, 9,- = 9,- —9,- the parameter estimation error and P 2 FT > 0 the “adaptation gain”. Though the proof in Chapter 2 was done for the single-output case, an extension to the multi- output case is not very difficult, and has been addressed, for example, in [28]. It is worth mentioning that the proof in Chapter 2 guarantees only the boundedness of ypi and ypi. To argue boundedness of 6,, (ii, if], u,- and 2),, we first assume that there exist achievable bounds on the leading vehicle’s velocity uo [39] and acceleration no [8]. Noting that All] +111 2 U0 — 9P1 and that gym is bounded and A > 0, we see that ul is bounded. Extending this 2For the purpose of simulations, the control is saturated at a value slightly higher than the observed value under state feedback. 31 argument inductively Shows that u,- is bounded for all i. Since 9p.- = 6,- — Am, bound- edness of 6, follows. Furthermore, since each u, is bounded, so is 5,- : 12,--1 — 21,-. From 9,, = d,- — Aui, each u,- is bounded. And finally, since 6,- : 6,-1 — 25,-, each (i,- is bounded. 3.4 Simulations In this section, we present two sets of Simulations for a platoon of five cars. In all simulations, we assume that all vehicles are initially travelling at a velocity of 15 m/s. The lead vehicle’s velocity, acceleration and jerk profiles are shown in Fig 3.2. We assume that m, E [1100, 1550]kg, T, E [0.15,0.25]s, kdr E [0.1,0.5]N32/m2 and d = 100N. These values arechosen to be the same as or close to the ones in [1, 39]. For the first set of simulations, we use a value of A = 0.9 and for the second A = 0.2. The particular values for A are explained in some detail below. 3.4.1 Simulation 1 The value of A = 0.9 is based on the California rule of thumb, [8, 39], which suggests an intervehicle spacing of one vehicle length for every 10 mph. Assuming an average vehicle length of 4 m, this translates to a value of A = 0.9 In all simulations, we assume the following values for the vehicle parameters, m1 = 1300, T1 = 0.16, 117,11 2 0.3, m2 = 1400, 1'2 = 0.22, [€42 = 0.35, m3 = 1200, 7'3 2 0.18, (€43 = 0.2, m4 1350, r4 = 0.24 and [€44 = 0.45. For the first simulation, we assume perfect knowledge of the vehicle parameters and that d1, (t) and d2, (t) are identically zero. Fig 3.3 shows the velocity and acceleration profiles for the following vehicles, the spacing deviation 32 errors and their relative positions relative to the leader . 3 Though not clear from the figure, the spacing deviation error does not exceed 1.5 cm in magnitude. 4 Fig 3.4 is for the case where the vehicle parameters are unknown and nominal values are used in the control. The disturbance terms are still identically zero. In Fig 3.5, the vehicle parameters are unknown but are adapted for. Compared to the previous case, the spacing deviation errors Show a marked decrease. Fig 3.7 is for the case where d2, is still identically zero, but d1, /m,- is as shown in Fig 3.6. The disturbance profiles are similar to, though not identical to the ones in [1]. In particular, they are “smooth” functions of time. No robustifying control is used in this case. Fig 3.8 is for the case where a robustifying control is used. The spacing deviation error shows a marked decrease in this case. The spacing deviations do not exceed 1.6 cm in magnitude. The above results compare favourably with the results of [39, 1]. It is worth mentioning however, that the spacing policy in [1] is different from the one we adopt here. The spacing deviation errors reported above are also of the same order of magnitude as in [36, 20], where the spacing deviation errors are between 1 and 10 cm. However, as with [1], the results are not directly comparable owing to differences in the vehicle model and / or the spacing policy adapted. 3.4.2 Simulation 2 The California rule of thumb takes into account human reaction times and delays [8]. In automatic vehicle following, human delays are eliminated and we can afford to 3This is assumed to be the distance from the front of the car to the rear of the leader. We assume that L1 = 3.9, L2 = 4 and L3 = 3, all values being in meters. 4We assumed a non-zero initial value for the estimation error 6,- — 6,. 33 have a smaller time headway without affecting safety. In [8], based on a worst case stopping scenario, where the lead vehicle is assumed to be at full deceleration and the following vehicle is at full acceleration at the instant the stop maneuver commences, a value of A in the range of 0.1 to 0.2 is obtained. For this simulation, we assume A = 0.2. For brevity, we present simulation results only for the case corresponding to Fig 3.8 of the previous set of simulations, i.e, d1i(t) is not zero and a robustifying component is used. Fig 3.9 Shows the results for this case, and the decrease in the relative distances from the leader as we move down the platoon is clear. 34 50 I I r I I T 45— ' ' - gw- . — v35- ..... ‘ .?-:‘ : 830.. ..... .................... :25- ............. . ........................... ,H,H-.2.----H72HH.HMH_-H,H_ 20- .1 ...... _. 15 l L 41 1 l I 0 20 40 60 80 100 120 Acceleration (m/sz) 0.05 _r I r r r r I l i l ..,A i Z ' i f E : : ; i V o- [-—_J .. ........ {- ‘ : ‘ . o . . . . . 7 L ' L . _005 I l l l I I l l I l 0 1O 20 3O 4O 50 60 70 80 90 100 110 t r 0.5.. ’ ............................................ .4 on" f m 0.. ............................................................................................. .. E E_0.5_ ............... .., .., _1._ ............ A. ............................ _. l l 110 115 120 125 Figure 3.2: Velocity, acceleration and jerk profiles for the leader. 35 Vehicle velocity (in/s) Vehicle acceleration (hi/$2) .I . . ,l 35 . . .. . . ..... . f . [ 25.. . .. ,. ......... ....... _ i _1.5 ................. 20.... .. ...... .( ' ' _2 ......... 15 * —2.5 - 0 50 100 0 50 100 10 x “3'4 Separation error (m) Position relative to platoon leader (m) ’ I 160 l. .. ................. ...... d _, _ gar; 5 3 — Car1 f y I ( ' ar : f ----Car2: : I ( ---Car3 ; : 140" ""CBI‘3TWH " “2;!‘1 --Car4 g 3 --Car45 /'. ] Figure 3.3: Perfect knowledge of vehicle parameters, D,(t) = 0. 36 Vehicle velocity (m/s) Vehicle acceleration (we?) 45 1 . i 2 35* . d~ -. .1 5“, 30. _ ‘, _ ...... J I —L o 01 f . Y~3"7.3Vv‘4vvivgi‘v.v&v'Ivv ; ‘ ’* l. j 1 20» ----- 15 ’ ‘ -2.5 ‘ ‘ O 50 100 0 50 100 Separation error (m) Position relative to platoon leader (m) '. . ] 160"" ‘ ............... .., ...... I‘J 1""— CEIIW " ' I — Car1; i Car2i ‘ . Car27 ' ,1 0'8....._ Cara ............... ...... H 140.. __. Cara ............... _"'/." -- Car4g ; l -- Cent} ’3 l 0.6" ....... l4 I // I ‘ ‘ . 120 ................ ................. :......‘.‘—l 0.4 ................ .. --< - l‘ . . l . . 02-... ........ i: ............ ...... i 100r~~~r~~~~ 0.. 805 ..... K ............ .’.. . ..... 3:.) 60 ...... .,.--.'.'.-.-.' ‘L 4 -o.4 -O.6 -0.8 _1 A 1 1 I 0 50 100 0 50 100 Figure 3.4: Vehicle parameters unknown, control based on nominal values, D,(t) = 0. 37 Vehicle velocity (m/s) Vehicle acceleration (111/52) 45 . T 2 . . 20).. .. _. ......... ...... E 15 i ‘ —2.5 i i o 50 100 o 50 100 Separation error (m) Position relative to platoon leader (m) I I T I . ...... . ..... ....... 4 H _Car1l ’\ _ .. .. .. -~--Car2 ..... § ......... .,'--Cr . " ml "'Car3 3 ’4°' --C:r3§ ’5’ i 120 ......... . ....... .......... /. ...... ...... :4 1m], ...... ..,-I.'..... —0.01 —0.02[. .............. ................. ....... H ,‘ 4103] ~ .......... _______ i _004.l . ............... ....... ., -o.05 '1 L 0 so 100 Figure 3.5: Vehicle parameters unknown but adapted for, D,(t) = 0. 38 39 Vehicle velocity (m/s) Vehicle acceleration (tn/$2) 45 .' T 2 r r 40...... ..... ;. f 1 35 ............... : .............. I. l 30-~ * 25. ............... ...... ........ . 20 ....... :.. ....... a 15 . 1. O 50 100 Separation error (m) Position relative to platoon leader (m) 0.2 . . . r ’ : 160" ....... a — Car1 , — Car1 ; 1 [Fl ._. Cars; 140”.-. Car3.i ............... ;'-""'f i I [ Figure 3.7: D,(t) 76 0, robustifying component not included. Vehicle velocity (in/s) 45 i . 4O - a ' i 35 - . _ l 30 > . r 25 _ ............... _, 20 - j ...... « 15 * ‘ 0 50 100 Separation error (m) 0.015 .' r — Car 1 0.01 . ._ . Car 3 ....... .. 0.005 I. -0.01 r -0.015 0 40 160 ................................. [a _ Car1 I“ 140»... _ Cars ............ ’ ’- - 'J - - Car4 / l 120 ......................... /./ ............ ‘1 Vehicle acceleration (m/s?) 50 100 Position relative to platoon leader (m) Figure 3.8: D,(t) 75 0, robustifying component included, A = 0.9. 41 Vehicle velocity (m/s) Vehicle acceleration (in/52) 45 . r 40).. ......... 1] 35~- . ’ 3o). .......... _05 ................. ................ i ...... .. 25.. ...... . . ......... ..,.- [ 15 A r _3 i L 0 Separation error (m) Position relative to platoon leader (in) 0.01 i r 50 r . — Car1 : 45.... Wcarz ...... ..... ’\,.( --- Cars : , l 40..... --Car4 ............... -'-_-'- .._,...\2 0.008 ‘- 0.004 0.002 -0.002 —0.004 -0.006 -0.008 -0.01 0 Figure 3.9: D,(t) 5f 0, robustifying component included, A = 0.2. Chapter 4 Indirect Adaptive Contol Using RBF Neural Networks 4.1 Introduction In recent years, the analytical study of adaptive nonlinear control systems using uni- versal function approximators has received much attention (See [33] for references). Typically, these methods use neural networks as approximation models for the un- known system nonlinearities [3, 7, 10, 21, 22, 33, 34, 35, 42]. In section 5 of chapter 2, a mention was made of the potential application to adaptive control using neural networks. In this chapter, we investigate the use of a radial basis function (RBF) network for the purpose. From a mathematical per- spective, RBF networks represent just one family in the class of linear in the weight approximators. This class includes, among others, splines, wavelets, certain fuzzy sys- tems and CMAC (Cerebellar Model Articulation Controller) networks (See [10, 11] 42 43 for references). 4.2 Problem Statement We consider a Single-input—single—output nonlinear system represented globally by the nth-order differential equation y(") = F () + G(-)u(’") where u is the control input, y is the measured output, (-)(‘) denotes the ith derivative of (), and m < n. The functions F and G' are smooth functions of y, y“), ..., y("“1), u, u“), ..., u‘m‘l). In particular, F() = Pit/.31"), - - -,y("“”,u, a“), - - -,u(’"”’), G() = C(y1 31(1),. - ' i Elm—1),“, 11(1), ' ' ' l ”(m-1)) We augment a series of m integrators at the input side of the system and represent the extended system by a state space model. The states of these integrators are 21 = u, 22 = u“), up to 2m : u(""1) and we set 12 = u("‘) as the control input of the extended system. Taking x1 = y, x2 = y“), up to x7, = y("‘1) yields the extended system model ‘ 531‘ = $i+1, ISiSn—l 2,, = F(x,z)+G(x,z)u 2i = 2121.1, IS 2 S m — 1 l (4'1) im = u 9 = $1 wherexz [2:1, ..., xn]T, z: [z], ...,zm]T. 44 Assumption 4 [C(x, z)| 2 k, > 0 V x E R" and z E R’". Assumption 4 ensures that (4.1) is input-output linearizable by full state feedback. As before, it can be shown that there exists a global diffeomorphism, x x = déf T(x, z) C T1032) with T1(0,0) = 0, which transforms the last m state equations of (4.1) into C = H (C, x). This, together with the first n state equations of (4.1), defines a global normal form. The objective is to design an output feedback controller which guarantees that the output y and its derivatives up to order n-l track a given reference signal y, and its corresponding derivatives, while keeping all the states bounded. The reference y, and its derivatives up to order n are assumed to be bounded and yin) is assumed to be piecewise continuous. 4.3 Function Approximation Using Gaussian Ra- dial Basis Functions The control design presented in this chapter employs an RBF neural network to approximate the functions F() and G() over a compact region of the state space. RBF networks are of the general form F (-) 2 9T f (-), where 9 E R” is a vector of adjustable weights and f () a vector of Gaussian basis functions. Their ability to uniformly approximate smooth functions over compact sets is well documented in 45 the literature (see [35] for references). In particular, it has been shown that given a smooth function F : f2 l——> R, where Q is a compact subset of Rm” and c > 0, there exist a Gaussian basis function vector f : Rm” l——> RP and a weight vector 9* 6 RD such that [F(x) — 9’Tf(x)| _<_ e V x E Q. The quantity F(x) — 9"Tf(x) déf d(x) is called the network reconstruction error. The optimal weight vector 9* defined above is a quantity required only for ana- lytical purposes. Typically 9* is chosen as the value of 9 that minimises d(x) over (2, that is, 9* = arg gggfigg IF (:6) - 0Tf(x)|} (4-2) The choice of the Gaussian network parameters used in our control design is motivated by the discussion in [35, Section III]. The basis functions are located on a regular grid that contains the subset of interest of the state space. The update law for the weight vector 9 is derived in the next section. 4.4 Control Design In this section, we first design an adaptive output feedback controller under the assumption that the network reconstruction errors are “small”. Next, the condition of small reconstruction errors is relaxed by adding a robustifying control component to make the mean-square tracking error arbitrarily small. The design of the output feedback controller is done in two steps: first, a state feedback controller is designed; then, the states are replaced by their estimates provided by a high-gain observer. We start with the following representation for the functions F (-) and G(-), valid for all 46 x E Y and z E Z, where Y and Z are compact sets defined later in the chapter. F(x, 2) :2 9;Tf(x, z) + dp(x, z), C(x, z) = 9;Tg(x, z) + dG(x, z) (4.3) Assumption 5 The vectors 9} and 9; belong to known compact subsets Q, C R”1 and 99 C R“. Typically, some off-line training is done to obtain values 9m and 990 that result in “good” approximations of the functions F and C over Y x Z. This can be ac- complished, for example, by the standard gradient descent technique 1 [13]. The sets S2, and {29 are then chosen judiciously as compact sets that contain 9,0 and 990. If we denote the “optimal” reconstruction errors that result from the use of the vectors 9} and 9; by d};(-) and d3(-) respectively, then, in view of the off-line training, it is reasonable to expect that our choice of the sets Q; and fig will result in reconstruction errors dp(-) and dG(-) that are comparable to d};() and da() respectively. Notice also that it is simply possible to choose the sets 0, and fig arbitrarily large. However, this would be undesirable from the viewpoint of using parameter projection. The fixed optimal weights 9} and 9; in (4.3) are replaced by their time varying estimates 9; and 99, that are adapted during learning. The network approximations associated with these weights are denoted by F and C respectively. Assumption 6 |G(-)| 2 k2 > 0 V x E Y, z E Z and 99 6 {29, where 529 is a compact set that contains $29 in its interior. 1For our purposes, a variant of Matlab’s solverb function was used, see Appendix B 47 4.4.1 Small Reconstruction Error Under the assumption of small reconstruction errors, we design an adaptive contoller so that the output y tracks the given reference signal y... Let e, y(t), y,(t) and yR(t) be defined as in Section 2.2.1 of Chapter 2 and Y0 and YR be any given compact subsets of R" and R“1 respectively, such that y(0) 6 Y0 and yR(t) 6 YR V t Z 0. We rewrite (4.1) as A e = Ame + b{Ke + 9}Tf(e + yr, 2) + 93Tg(e + yr, z)u +d(e+yr,2,9f,9g) _ 9191)} l (4'4) Z 2 A22 +02?) where 2 d(e+yr, 2, 9f, 99) = dp(-)+dG(-)u, (A, b) and (A2, b2) are controllable canon- ical pairs that represent chains of n and m integrators, respectively, and K is chosen such that Am = A -— bK is Hurwitz. Assumption 7 The system C = H (C, 37,) has a unique steady-state solution C. More- over, with C = C — C the system C : H(C—+§ie+yr) _ H(C-iyr) (4.5) d-i‘f H(€7 8, yr) 5) 2The dependence on 9 f and 99 comes through 0. See (4.7). 48 has a continuously diflerentiable function V1(t,C~) that satisfies 3 mlléll2 S 139.5) S n2||§||2 av. av, - ~ _ - 2 - — '—.:' < - a, + at H(C,e,y.,<) _ nsllcll +174||C|H|e|| where 771,1)2, 713 > O, and 774 2 0 are independent of 37,. Assumption 7 implies that (4.5), with e as input, is input-to-state stable. Conse- quently, the zero dynamics of (4.1) are exponentially stable and (4.1) is minimum phase. State Feedback Let P : PT > 0 be the solution of the Lyapunov equation PAm + AgP = -Q where Q = QT > 0, and consider the Lyapunov function candidate V = 31%: + @1716, + $3316, (4.6) where9,=9f—9;, 99:99—95”; and F;=Ff>0and Fg=FZ>0aregainstobe specified later. Using (4.4) the derivative of V along the trajectories of the system is given by V = —eTQe + 97F;19f + 9TI‘;199 + 2eTPb{ 9;Tf(e + yr, z) 9 + 9;Tg(e + yr, Z)U + d(e + yrs 2, éfa 69) + K6 — yin)} 3Unless otherwise specified, || - M denotes the Euclidean norm. 49 Taking —Ke+ Inl—Fe+y.,z,é e « - “U 2 El ( A f) (i=r1/J(C,Z,y3,0f,09) (4.7) G(e+y,.,z,9g) we can rewrite the expression for V as V = —eTQe + b"; 1719‘, — r,¢,] +é§r;1[ég — r9459] + 2eTPb d() (4.8) where if = 2eTbe(e + 32., z), at = ZeTPb9(e + 32., zit/’0 Let Of be a compact subset of R”1 that contains (if in its interior. Define r = diag[I‘,,I’9], n = n, x n, and {2 = 0, x 0, The parameter adaptation law is chosen as in Chapter 2. By our design of the RBF network, we seek to impose a bound on d(-) over a compact subset of RM“. With that goal, we first assume that e(O) and 2(0) belong to known compact subsets E0 C R" and Z0 C Rm and let c1 = maerE0 eTPe. Choose c4 > c1 and define E d-—e-f {eTPe g c4} and Y déf {e + yrle E E, y, 6 YR}. Let Z be a compact subset of 50 Rm such that Z0 is in the interior of Z and z(0)€Zoande(t)€EVtZ 0 => z(t)€ZVtZO. The RBF networks are used to approximate F () and G () over the compact set Y x Z. Let (25 be as in Chapter 2. Define Q6; and {259 by (25 = 95!. x 959 and let 02 = max %(9; — 9})TI’;1(9f — 9;), o;en,,é,en,, (é, — 9;)Trg-1(ég — 9;). c3 = max % agengflgemg The adaptation gains I’, and F9 are chosen large enough to ensure that c4 —c1 > c2+c3. This is different from Chapter 2 where the adaptation gain is not required to be large. This is because, in Chapter 2, the parameter vector 9 has some physical meaning and the compact set 0 to which it belongs is known apriori. In particular, the definition of the set E implicitly involves the set Q. In the present case however, the compact sets f2] and {29 to which the optimal weights 9; and 9; of the neural network belong themselves depend on the set E, because the approximation of F and G is done over the set E x Z. Hence the set E has to be defined prior to, and consequently, independent of the sets Q, and fly. This requires making the adaptation gains large. Let d1 = max||d(e + y... Z, 9,, 99)“, where the maximization is done over all e e E, y. e Y,z e Z, 6, e 05, and (i, e 059. From (4.8) and (2.7), we have V g —eTQe + kddl Ve E E, where kd = mglx2]]e]] ]]P b]] (4.9) 51 If d1 < d” = k(c4 — c3 — c2)/kd , where k 2 M then V < 0 on {V = c4} (1 95. Amuzr:(P) ’ Thus the set {V S c4} (1 Q; is positively invariant for all d1 < d‘. Inside this set, 8 E E. As long as e E E, 2 will remain in Z. Thus the trajectory (e, z, 9) is trapped inside the set R, = {e E E} x {z E Z} x {9 E (25}. Hence all the states are bounded and from (4.9), the mean-square tracking error is of the order 0(d1). Output Feedback To implement the controller deveIOped in the previous section using output feed- back, we replace the states 6 by their estimates é provided by a high gain observer (HGO). The control is saturated outside a compact region of interest to prevent the peaking induced by the HGO. We assume that 91(0) 6 Q; and 99(0) 6 99. Let S 2 max]w(e,z,y3,9f,9g)] where the maximization is taken over all e E E1 (Li-f {eTPe S c5}, 2: E Z, 32,, 6 YR, 9, E 95f, 99 E 5259 where 05 > c4. Define the saturated function W by We, 2.3% éfiég)) ¢8(€,Z,y12,9f,9g) = S sat ( S where sat(-) is the saturation function. The output feedback controller is taken as u = ib’(é, z, 323, 9,, 99). The HGO used to estimate the states is the same one used in Chapter 2, i.e, 6,‘ '2 éi+1+%(€1—él), 1$i_<_n—1 (4.10) 6n = %rli'(el_él) 52 where c > 0 is a design parameter that will be specified shortly. The positive constants a, are chosen such that the roots of s” + ms"—1 + - - - + an_ls + an 2 0 have negative real parts. Let C,- = (e,—é,-)/e"", 1 S i S n, f = [51, . . . ,Cn]T and V5 2 {TI-DC, where R 2 FT > 0 is the solution of the Lyapunov equation F(A—HC)+(A—HC)TF = —I. Boundedness of all signals of the closed-loop system can be proved by an argument similar to the one in the state feedback case. First, it is not difficult to show that for all (e, 9) E {V S c4}fl (25, there exist constants c6, c7 > 0 such that the sets {V1 S as} and {V5 S 676.2} are positively invariant. Next, using the results of Section 2.4, for all (e,9, C, E) belonging to the set R = {{V S 04} (1 {25} x {VI S c6} x {Vg S C762}, the derivative of V satisfies V S —eTQe + kg: + kddl, where k, > 0. (4.11) Hence for all k(C4—63—C2) ande 0 as e —) 0. Hence, as in the previous case, for sufficiently small d and c, all the states are bounded and (4.11) is satisfied for all t 2 T(e). Hence the mean-square tracking error is of the order 0(6 + d1). 53 4.4.2 Reconstruction Error With a Known Bound As in Section 2.5, we design an additional robustifying control component to make the mean-square tracking error arbitrarily small, irrespective of the bound on the disturbance d(-), provided this bound is known. Let _ —Ke+y£") -F(€ +yriZ,éf) +111 e(e+y.,z,é,) Assume that ||d(')l| 5 1003.4?) + kvllvilli 0 S k, <1 where p and k, are known. Take n(e, z) 2 p(e, z) and define s = 2eTPb, f ’ 44635.10 for nlczilsi 2 .1 Wm) =< 2 e,z ‘ l ‘ 23—4.) 7‘: for nlcziisl < h and . . —Ke+ (n)_fie+y,.,z,é + rm 40,212.20»: 9 - ( all M > G(6+yr.z,0g) The adaptive controller is taken as u = w’(é, 2,32,10,69). As in Chapter 2, it can be shown that El 6* > 0 and u‘ > 0 such that V 0 < c < 6‘ and 0 < u < u‘, all signals are bounded and the mean-square tracking error is of the order 0(6 + u), where the design parameters 6 and u can be made arbitrarily small. 54 4.5 Simulations In this section, three simulations are presented to illustrate the points made in the earlier sections. The programs for the simulations are written in Matlab, using the Neural Network toolbox. In the first simulation, we Show the effect of changing various design parameters on the tracking error. In the second, we attempt to justify the need to adapt for the network’s weights. Lastly, we demonstrate the effect of the network’s size on the controller’s performance. The plant used in all these simulations is the same one used in [35, 42], namely 9 = F(y,y) + G(y)u, where . , , 2 szn(47ry) (sin(7ry)) and 4ny «y C(y) = 2 + sin(37r(y — 0.5)) F(y.z'/) = 16 4.5.1 Simulation 1 The plant output is required to track a reference signal y, that is the output of a low -pass filter with transfer function (1 + s/10)‘3, driven by a unity amplitude square wave input with frequency 0.4 Hz and a time average of 0.5. The reference and its derivatives are shown in Fig 4.1. As can be seen, the set 313 can be taken as [0, 1] x [—3, 3] x [—25, 25]. Since m = 0, there is no need to augment integrators at the ~ def system’s input. Let Y z [—1, 1] x [—3, 3]. We use 2 RBF networks to approximate the functions F (y, y) and G(y) over Y. The networks have 48 Gaussian nodes with 55 variance 4 o2 = 47r spread over a regular grid that covers Y. Off-line training is done to obtain weights 9 f0 and 990 that result in “optimal” approximations of the functions F and G. However, the reconstruction errors are still quite large in this case, at some points being comparable to the value of the function. Based on the values of 9h, and 990, the sets Q; and 99 in Assumption 4 are taken as [9fo — 01,910 + 0.1] and [990 - 0.1, 990 + 0.1], where the addition and subtraction are done componentwise. The adaptation gains I’; and F9 are taken for simplicity as 1031. The values of the various design parameters are 6 = 0.001, n = 40 and k, = 0.7. The initial condition x(0) is taken as (-0.5,2.0). Fig 4.2(a) shows the tracking error for the state feedback case with p = 0.5, Fig 4.2(b) is the output feedback case with c = 10‘3, Fig 4.2(c) with 6 reduced to 10”, and Fig 4.2(d) with u reduced to 0.1. Fig 4.3 shows the corresponding control inputs. The simulation illustrates several points : (a) by using a robustifying component, it is possible to obtain reasonable performance even with networks that give large reconstruction errors; (b) as c is decreased, we recover the performance obtained under state feedback; and (c) an n-fold decrease in it results in approximately an n-fold decrease in the tracking error. Thus, by decreasing u, we can meet more stringent requirements on the tracking error. 4.5.2 Simulation 2 The initial weights obtained by off-line training may not be close to their optimal values. This might, for example, be the case when the off-line training is done (based) 4See [35] for a definition of this term in relation to RBF networks 56 on a nominal model that differs considerably from the actual one. For definiteness, suppose the function F (y, y) is any one of the functions my ,1) Z ,1 sin-(440 — 42)) (more — k3)))2 49(9 — k2) 7r(9 — k3) where k, 6 [15,17], kg 6 [——0.5,0.5] and kg 6 [—1, 1] and that a nominal model is the one used before, that is, sin(47ry) (Sin(7ry))2 Fnom 1. = 1 . (y y) 6 47w 7ry For simplicity, we take C (y) = 1. Further, the reference signal is taken as yr 2 0.4. This time, we use an RBF network with 192 Guassian nodes to “construct” the function F (), with the parameters of the network chosen as before. Based on the nominal model, we do off-line training to obtain initial estimates 9b and 990. The choice of the set Q, is crucial. It is chosen in a way which gaurantees that any of the functions F(-) mentioned above can be reasonably approximated 5 by some 0f in (2,. By this, we mean that, forevery possible choice of k1, 1:2 and k3, there exists 0” E Q; such that ]F(-) — 9fo(-)] ~ IFnom(-) — 9fon(-)] V 31,3) 6 Y. For the purpose of simulation, the values of k1, kg and k3 are taken to be 17, 0.4 and 0 respectively. This choice ensures that with the “nominal” weights 9 fo, the reconstruction error is quite large in the region of the state space where the reference lies. Fig 4.4 shows the function F (y, y) and the error F () — 9foT f () that results from using the nominal 5This might require making Q, larger than what it would have been if we had assumed that the actual and the nominal models are identical. 57 weights. The values of the parameters used in the design are I} = 1031, 6 = 0.001, e 2 10‘4, 77 = 20, k, = 0 and ,u = 0.2. The initial condition 22(0) is taken as (0.9, —2.75). Fig 4.5(a) Shows the tracking error for the case when there is no adaptation for the weights, that is, F, = 0 and no robust control component, Fig 4.5(b) for the case when the weights are adapted but there is no robust component, Fig 4.5(c) for the case when the weights are not adapted but there is a robust component, and Fig 4.5(d) for the case when the weights are adapted and a robust component is used. The following points are noteworthy. In the first case the tracking error is quite large because we simply do a crude cancellation of the network nonlinearity based on a nominal model. When we start adapting for the weights, the difference between the function F and its estimate F provided by the network decreases and hence the tracking error also decreases. However, even with the network providing its “best” approximation, there is a residual error. In the case where we simply use robust control, the performance shows an improvement over the first case and is almost comparable to the error in the second case. Finally, in the case where we do both adaptation and robust control, the network reconstruction error decreases and the robust component handles this smaller error better. Thus the tracking error is the smallest in this case. 4.5.3 Simulation 3 In Section 4.4.2 we saw that decreasing p results in a decrease in the mean-square tracking error. While theoretically u can be made as small as we want, it is not 58 always possible in practice to do so. This is because, in many practical applications, the system contains high-frequency unmodelled dynamics. Decreasing it implies a “high-gain like” feedback inside the layer [s] < ’5’ which might result in the excitation of the unmodelled dynamics. In this section, we assume that ,u cannot be made smaller than 0.1, fix it at this value and examine the controller’s performance as the network size is varied. To be able to do this, we first need to define a “suitable” measure of the network’s performance. For a given network, let e1,e2, - - - , en denote ultimate 6 corresponding to initial conditions x01,x02, - - -,x0,,. bounds on the tracking error We take the mean-square error ([2? to be a measure of the network’s performance. We use the same plant used in the previous simulation, with initial estimates for the weights based on the nominal model. The reference y, is chosen as 0.4+0.lsin(t). We compare the performance of three networks, having 64, 100 and 144 Gaussian nodes respectively. The networks are used to construct F on Y = [—1, 1] x [—1, 1]. For each network, four sets of initial conditions for the state x are used, (-0.9,—0.9), (-0.9,0.9), (09,-0.9) and (09,09) and the mean-square error is evaluated. Fig 4.6 summarizes the results of the simulation. The dashed 'line shows the mean-suare error for the case when only robust control is used, the dotted line for the case when only adaptation is used and the solid line for the case when both adaptation and robust control are used. As can be seen, the error is almost constant in the first case. Thus, by using only robust control, we cannot hope to decrease the error beyond a certain point. In the second case, the mean-square error decreases as the network size increases. This is not surprising because increasing the network’s size increases its approximation 6As observed by simulation 59 capabilities. Since the error is of the order 0(6 + d), it decreases as the size of the network increases. This suggests that as requirements on the tracking error become more stringent, it becomes necessary to increase the size of the network. Lastly, the performance in the last case is the best of the three cases. 60 4.5 .5 3 2.5 I I 1.5 T i 0.5 -20*""""" _ w _chm 3:283. ozaméoo Em 0232.3 200.3 30 20 0 0 Figure 4.1: The reference signal and its derivatives. 61 Tracking errors o i i E i i l 1 i i 10 11 12 13 14 15 16 17 18 19 20 --(d)-- Figure 4.2: (a)State feedback p = 0.5 (b) Output feedback, 6 = 10‘3, u = 0.5 (c) Output feedback 6 = 10'4, u = 0.5 (d) Output feedback 6 = 10‘4, u = 0.1 62 Control inputs __(a)__ _(c)... Figure 4.3: (a)State feedback u = 0.5 (b) Output feedback, 6 = 10‘3, u = 0.5 (c) Output feedback 6 = 10““, u = 0.5 (d) Output feedback 6 = 10‘4, u = 0.1 63 F() Function \\ ’1 \\ . the F()-0‘ f() Error (3) F041) 0)) F (31, 3'1) - 9rTf(y, 9)- Figure 4.4 64 Tracking Errors for 4 Different Cases . . y g 0.5 . f . . 0.4... - 0.45“ . 1,, . lllllll VVVVVVV ‘ _ . I g ,4. ........ .f ...... g ________ . 02 ..... . ..... ‘E"'““ 0 : . E ' ' I 035 , .. ..... ........ 0.3 ........ ' ...... ........ ....... 1 025 ........ I ..... . 0.15 I ' V l 0.1 > 0.05 " 0-5 T T f f 0'5 ' r T ._ 0.45 ........ ........ ...... ....... ...... . O.'”45“'”"" “ o4. ....... ., 0'4 0.35 0.35 0.3 0.3» 0.25. 0.25- 3 3 E E 0.2 0.15 0.15 0.1 0.1 ' 0'05 0.05 -lci— —(d)- Figure 4.5: (a) No adaptation for weights, no robust control (b) Only adaptation for weights (c) Only robust control (d) Adaptation for weights and robust control. 65 Effect of Network Size on Controller's Performance 0-2 I I f I I I I I ’3 (640.1928) 2 E i i ------- adaptive 2 , : : : : -— robust . g —— robust&adaptive 0.18”"'" Q ....... .... (N,e) : N - Number of nodes, 9 '- Mean—square tracking error 0.16_ ......... ' ........ _. 0.14_.. ............................................ ... §0.12— -‘ G} O) .E x O .5? 2 01.. . .............................. _. (B 3 U ‘1’ C (U 0 2008- ....................................................................................... .. 0.06._\. .......................................... — -.3 (10000405) Q04_W .................. x ...... ......... .1 (64.0.0273) (14490274) ...—.3-—__:__—_3____s..___2_———2—————3"4”—---.+..-._§ : : : (109.0-0271) : : : (14400252) 0.02.— ......... .......... ......... .......... : .......... ......... ... (64.0.0097) f : 3 _ ' (10.0.0.0035) g ; (14409022) 0 i l i T 1 L i ifi“ 60 70 80 90 100 110 120 130 140 150 Number of Gaussian Nodes Figure 4.6: Effect of network size on the controller’s performance. Chapter 5 Conclusions We have studied the application of an adaptive control technique to two different problems, (a) the longitudinal control of a platoon of vehicles and (b) output feedback control of nonlinear systems using RBF neural networks. For the platoon problem, good performance has been achieved in the presence of parameter uncertainities and unknown time-varying disturbances. The main contri- bution of the method is the use of high-gain observers to reduce the number of sensor measurements. In particular, we do not require direct measurement of the relative velocity or acceleration between the controlled and leading vehicles or the controlled vehicle’s acceleration. A drawback in the present work is the use of the same model for the controller design and in the simulation, i.e, we do not consider imperfections in the plant such as time delays involved in actuators and sensors etc. This drawback, while present in the work of [8],[39], has been addressed in [20]. Phture work on this problem must therefore include these imperfections. Another possible area of work is the study of robustness of the proposed method with respect to a large class of 66 67 commanded maneuvers (such as when a vehicle exits the lane or when two platoons merge to form a single platoon) in the multi—platoon scenario. The second problem we have studied is adaptive output feedback control of non- linear systems represented by input-output models. The objective of the design is to achieve good tracking performance in the absence of known system dynamics. RBF networks are used to approximately construct the system nonlinearities. The recon- struction errors of the networks are not required to be small, thus allowing for the use of lower-order networks. Simulations are done which illustrate the effect of changing various design parameters and of the network size on the controller’s performance. Possible future work involves investigating the effect of unmodelled dynamics on the controler’s performance and the use of nonlinear-in-the-weights networks. The latter especially holds promise because it is known that nonlinear networks have inherently “better” approximating capabilities in comparison to linear-in-the—weight networks [4]. In particular, for sigmoidal networks, it is shown that with the basis functions “tunable”, the integrated square error can be made of the order 0(1/n), n being the number of basis functions (or hidden layer weights), whereas, for the case where the basis functions are fixed, the approximation error is typically of the order 0(1/n1/d), d being the dimension of the input space. Thus nonlinear networks can achieve more compact representations of nonlinear functions compared to linear networks, espe- cially when the dimension of the network input is high. APPENDICES Appendix A Matlab programs for simulations in Chapter 3 A.1 run.m ZZZXZZZZZZZZZZ%XXZZZZZZZZZZZZZZZZX%%%%%%%%%%%%%%%%%%%%Z%%% Z This is the main program, it uses the model simrun.md1 % 7. which in turn calls the H-file runn.m - 7. ZZZZZZZZZXZXZZZZXZZZ2ZZXXZ2Z1ZZZZZZZZZZZZZXZZZZZZZZZZXZXZZ clear all; tf=125; [t,x]=sim(’simrun’,tf); subplot(2,2,1) plot(t,out(:,1).’-’,t,out(:,4).’:’,t,out(:,7),’-.’,t,out(:,10),’--’); grid; axis([0 125 15 45]); title(’Vehic1e velocity (m/s)’) subplot(2,2,2) plot(t,out(:,2),’-’,t,out(:,5),’:’,t,out(:.8),’-.’,t,out(:,11),’--’); 68 69 grid; axis([0 125 -3 2]); title(’Vehicle acceleration (m/s“2)’) subplot(2,2,3) plot(t,out(:,3),’-’,t,out(:,6),’:’,t,out(:,9),’-.’,t,out(:,12),’--’); grid; axis([0 125 -0.001 0.002]); title(’Separation error (m)’) subplot(2,2,4) L1=-out(:,3)+0.2*out(:,1); L2=L1+3.9-out(:,6)+O.2*out(:,4); L3=L2+4.0-out(:,9)+O.2*out(:,7); L4=L3+3.8-out(:,12)+O.2*out(:,10); plot(t,L1,’-’,t,L2,’:’,t,L3,’-.’,t,L4,’--’); grid; axis([0 125 O 50]); title(’Position relative to platoon leader (m)’) 1egend(’Car 1’, ’Car 2’,’Car 3’, ’Car 4’) A.2 runn.m function [sys,xo,str,ts]=runn(t,x,u,flag) ZZZZZZZZZXX7%Z%%%%Z2%ZZZZZZZZZZXXXZXZZZXZXZKZXZZZZZZZZZZZZZXZXXXZZZZZZZZXZ % This file is used in calculating by the simrun.mdl file and specifies Z Z all the relevant equations.The assumed definition of delta differs (in Z 2 sign) from that in Chapter 3. As a result, some signs differ from the Z % ones mentioned in Ch 3,for eg, =delta+1ambdatv and not delta-lambdatv Z ZZXZXZZZZZXXZZZZXZZZZZZXZZZXZXXZXZZZZXXZXZXZZZZZZZZZXZXZZZZXXZXZZZZZXZXZZZ if f1ag==0, Z x=[delta v f delta“ deltadot“ deltaddot‘ v“ vdot‘ thetas] Z x01=[-3 15 167.50 -2 0 0 15 0 -0.0001 -4.5 -0.0005 0.0030] ; xo2=[-3 15 178.75 -2 0 0 15 0 -0.0003 -5.0 -0.0008 0.0040] ; 70 x03=[-3 15 145.00 -2 0 0 15 0 -0.0002 -4.2 -0.0010 0.0050] ; xo4=[-3 15 201.25 -2 0 0 15 0 —0.0004 —5.5 -0.0004 0.0045] ; xo=[xol x02 103 104]; sys=[12*4,0,3*4,0,0,0,0]; else X ----- define constants and ’reference’ ----- % lambda=0.2; epsilon=le-3; Gamma=1e-4; de1=1e-3; eta=4.5; kv=0; mu=0.1; d=100; K=[3 4]; P=[1.1167 0.1667;0.1667 0.1167]; bb=[0 1J’; a=[-0.00046;-20/3;-0.003;0.0026]; b=[-0.000064;-4;-0.00025;0.0061]; if t<=30, wddot=-1/90; wdot=(30-t)/90; w=15+t/3-t‘2/180; elseif t<=40, wddot=0; wdot=0; w=20; elseif t<=70, wddot81/60; wdot=(t-40)/60; w=20+(t-40)‘2/120; elseif t<=100, ‘wddota-1/60; wdot=0.5+(70-t)/60; w=15+5*t/3-(t‘2/120)-(190/3); elseif t<=110, wddot-O; wdotIO; w=35; elseif t<-115, wddot=0.4; wdot=0.4*(t-110); w=35+(t-110)‘2/5; elseif t<=120, wddot=-1; wdot=117-t; w=-6802.5+117*t-t‘2/2; else 71 wddot=0.6; vdot=-3+O.6*(t-120); w=397.5-3*t+0.3*(t-120)“2; end Z ---- define states, exogenous inputs and derivatives ---- Z m1=1300; A_ph01=0.30; tau1=0.16; m2=1400; A_pho2=0.35; tau2=0.22; m3=1200; A_ph03=0.20; tau3=0.18; m4=1350; A_pho4=0.45; tau4=0.24; thlnomls-A_ph01/m1; th1nom2=-A_pho2/m2; th1nom3=-A_pho3/m3; th1nom4=-A_pho4/m4; th2nom18-1/tau1; th2nom2=-1/tau2; th2nom3=-1/tau3; th2nom4=~1ltau4; th3nom1=-A_phol/(mittaul); th3nom2=-A_pho2/(m2*tau2); th3nom3--A_pho3/(m3ttau3); th3nom4=-A_pho4/(m4*tau4); th4nom181/(mlttau1); th4nom2=1/(m2*tau2); th4nom3=1/(m3*tau3); th4nom4=1/(m4*tau4); thnom1=[th1nom1;th2nom1;th3nom1;th4nom1]; thnom2=[th1n0m2;th2nom2;th3nom2;th4nom2]; thnom3-[th1n0m3;th2nom3;th3nom3;th4nom3]; thnom4=[th1nom4;th2nom4;th3nom4;th4nom4]; deltal-x(1); v1=x(2); f1=x(3); delta2=x(13); v2=x(14); f2=x(15); delta3-x(25); v3=x(26); f3-x(27); delta4=x(37); v4=x(38); f4=x(39); y1=delta1+lambdatv1; y2=delta2+lambda¢v2; % y3=delta3+lambdatv3; y4=de1ta4+1ambdatv4; delta_hat1=x(4); v-hat1=x(7); delta_hat2=x(16); v_hat2=x(19); delta_hat3=x(28); v_hat1=x(31); delta_hat4=x(40); v_hat2=x(43); th1=[x(9);x(10);x(11);x(12)]; th2=[x(21);x(22);x(23);x(24)]; th3=[x(33);x(34);x(35);x(36)]; th4=[x(45);x(46);x(47);x(48)]; 72 x4dot1=x(5)+6*(deltal-x(4))/epsilon; x4dot2=x(17)+6*(delta2-x(16))/epsilon; x4dot3=x(29)+6*(delta3-x(28))/epsilon; x4dot4=x(41)+6*(delta4-x(40))/epsilon; x5dot1=x(6)+11*(deltal-x(4))/(epsilon“2); x5dot2=x(18)+11*(delta2-x(16))/(epsilon‘2)3 x5dot3=x(30)+11*(delta3-x(28))/(epsilon“2); deot4=x(42)+11*(delta4-x(40))/(epsilon“2); 16d0t1=6*(de1ta1-x(4))/(epsilon‘3); x6dot2=6*(delta2-x(16))/(epsilon“3); 16d0t3=6*(delta3-x(28))/(epsilon“3); 16d0t4=6*(de1ta4-x(40))/(epsilon‘3); x7dot1=x(8)+4*(v1-x(7))/epsilon; x7dot2=x(20)+4*(v2-x(19))/epsilon; x7dot3=x(32)+4*(v3-x(31))/ep8ilon; x7dot4=x(44)+4*(v4-x(43))/epsilon; 18d0t1=3*(v1-x(7))/(epsilon‘2); x8dot2=3*(v2-x(19))/(epsilon‘2); 18d0t3=3*(v3-x(31))/(ep8110n“2)3 x800t4-3*(v4—x(43))/(epsilon“2); if t<=30, d1130; d12=0; d13=0; d14=0; elseif t<=45 d11-0.45*(1-exp(-1.2*(t-30))); d12=0.44t(1-exp(-1.2*(t-30))); d13=0. elseif d11=0 d12=0 d13=0 d14=0 elseif d11=0 d12=0. d13=0. d14=0. elseif d11=0 d12=0 d13=0 d14=0. else 73 40*(1-exp(-1.2*(t-30))); d14=0.35*(1-exp(-1.2*(t-30))); t<=55 t<=85 .45*(1-exp(-30))-0. 44*(1-exp(-30))-0. 40*(1-exp(-30))-0. 35*(1-exp(-30))-0. t<=100 .45*(1-exp(-30))-0. .44*(1-exp(-30))-0. .40*(1-exp(-30))-0. 35*(1-exp(-30))-0. 45*(1-exp(-10)); 44*(1-exp(-10)); 40*(1-exp(-10)); 35*(1-exp(-10)); 45#(1-exp(-10))-0. 44*(1-exp(-10))-0. 40*(1-exp(-10))-0. 35*(1-exp(-10))-0. d11=0.45*(1-exp(-30))-0.45*(1-exp(-10))+0. d11=d11-0.40*(1-exp(-1.1*(t-85)))3 d12=0.44*(1-exp(-30))-0.44*(1-exp(-10))+0. d12=d12-0.35*(1-exp(-1.1*(t-85)))3 d13=0.40*(1-exp(-30))-0.40*(1-exp(-10))+O. d13=d13-0.30*(1-exp(-1.1*(t-85))); d14=0.35*(1-exp(-30))-0.35*(1-exp(-10))+0. .45*(1-exp(-1.2*(t-30)))-O.45*(1-exp(45-t)); .44*(1-exp(-1.2*(t-30)))-0.44*(1-exp(45-t)); .40*(1-exp(-1.2*(t-30)))-0.40*(1-exp(45-t)); .35*(1-exp(-1.2*(t-30)))-0.35*(1-exp(45-t)); 40*(1-exp(-1. 35*(1-exp(-1. 30*(1-exp(-1. 28*(1-exp(-1. 40*(1-exp(-0. 35*(1-exp(-0. 30*(1-exp(-0. 28*(1-exp(-0. 1*(t-85))); 1*(t-85))); 1*(t-85))); 1*(t-85))); 8*(t-100))); 8*(t-100))); 8*(t-100))); 8*(t-100)))3 74 d14=d14-0.28*(1-exp(-1.1*(t-85))); end vdot1=(-A_ph01*v1“2-d+f1)/m1+d11; vdot2=(-A_pho2*v2“2-d+f2)/m2+d12; vdot3=(-A-pho3*v3‘2-d+f3)/m3+d13; vdot4=(-A_pho4*v4‘2-d+f4)/m4+d14; deltadot1=v1-w; deltadot2=v2~v1; deltadot3=v3-v2; deltadot4=v4-v3; deltadhat1=x(5); deltadhat2=x(17); deltadhat3=x(29); deltadhat4=x(41); deltaddhat1=x(6); deltaddhat2=x(18); deltaddhat3=xf30); deltaddhat4=x(42); i vdothat1=x(8); vdothat2=x(20); vdothat3-x(32); vdothat4=x(44); ydothat1=de1tadhat1+1ambdatvdothat1; ydothat2=deltadhat2+lambdatvdothat2; ydothat3=deltadhat3+lambdatvdothatB; ydothat4=deltadhat4+lambdatvdothat4; Yhat1=[y1;ydothat1]; Yhat2=[y2;ydothat2]; Yhat3=[y3;ydothat3]; Yhat4=[y4;ydothat4]; $1=2*Yhat1’*P*bb; 8282*Yhat2’*P*bb; 83=2*Yhat3’*P*bb; s4=2*Yhat4’*P*bb; f1hat1=2*lambda*v1*vdothat1; flhat2=2tlambda*v2*vdothat2; f1hat3=2¢lambdatvStvdothat3; f1hat4=2*lambdatv4tvdothat4; f2hat1=1ambda¢vdothat1; f2hat2=lambdatvdothat2; f2hat3=lambdatvd0that3; f2hat4-lambdatvdothat4; f31=lambdatv1‘2; f32-1ambda*v2“2; f33=1ambda*v3“2; f34=1ambda*v4‘2; f4common=-lambda*d; G=[0;0;0;1ambda]; Fhat1=[f1hat1;f2hat1;f31;f4common]; Fhat2=[f1hat2;f2hat2;f32;f4common]; Fhat3=[f1hat3;f2hat3;f33;f4common]; Fhat4=[f1hat4;f2hat4;f34;f4common]; if etatabs(sl)>=mu, vr1=-(eta*81)/((l-kv)*abs(81)); else vr1=-((eta‘2)*sI)/((1-kv)*mu); end if etatabs(82)>=mu, vr2=-(eta*s2)/((1-kv)*ab8(82)); 75 else vr2=-((eta‘2)*s2)/((1-kv)*mu); end if etatabs(83)>=mu, vr3=-(eta*s3)/((l-kv)¢abs(83)); else vr3=-((eta‘2)*s3)/((1-kv)*mu); end if eta*abs(s4)>=mu, vr4=-(eta*s4)/((l-kv)*abs(84)); else vr4=-((eta‘2)*s4)/((1-kv)*mu); end u1=(-deltaddhat1-th1’*Fhat1-K*Yhat1)/(th1’tG); u2=(-deltaddhat2-th2’*Fhat2-KtYhat2)/(th2’*G); u3=(-de1taddhat3-th3’*Fhat3-KtYhat3)/(th3’*6); u4= ('deltaddhat4-th4 ’ *Fhat4-K'0'Yhat4) / (1:114 ’ *G) 3 if abs(u1)>5000, u1=sign(u1)*5000; end if abs(u2)>5000, u2=sign(u2)*5000; end if abs(u3)>5000, u3=sign(u3)*5000; end if abs (u4) >5000 , u4=sign(u4) *5000; end fdot1=(-f1+u1)/tau1; fdot2=(-f2+u2)/tau2; fdot3=(-f3+u3)/tau3; fdot4=(-f4+u4)/tau4; Psi1=si*(Fhat1+G*u1); Psi2=s2*(Fhat2+G*u2); Psi3=s3*(Fhat3+G*u3); Psi4=s4*(Fhat4+G*u4); if abs(f1ag)== , sysll=[de1tadot1 vdotl fdotl]; sys12=[deltadot2 vdot2 fdot2]; sysi3=[deltadot3 vdot3 fdot3]; sysl4=[deltadot4 vdot4 fdot4]; sys21=[x4dot1 x5dot1 x6dot1 x7dot1 x8dot1]; sys22=[x4dot2 deot2 x6dot2 x7dot2 18d0t2]; sys23=[x4d0t3 x5dot3 deot3 x7dot3 deot3]; sys24=[x4dot4 x5dot4 x6dot4 x7dot4 x8dot4]; 76 for i=1:4, sy331(i)=proj(th1(i),Psil(i),a(i),b(i),Gamma,del); sy832(i)=proj(th2(i),Psi2(i),a(i),b(i),Gamma,de1); sys33(i)=proj(th3(i),Psi3(i),a(i),b(i),Gamma,del); sys34(i)=proj(th4(i),Psi4(i),a(i),b(i),Gamma,del); end sysl=[sy311 sys21 sysBl]; sys2=[sy312 sys22 sy832]; sys3=[sy813 sys23 sys33]; sys4-[sysl4 sys24 sys34]; sys=[sysl sys2 sysB sys4]; elseif abs(f1ag) == . sys=[v1;vdot1;y1;v2;vdot2;y2;v3;vdot3;y3;v4;vdot4;y4]; end end A.3 proj.m function Sdot=proj(Theta,Phi,a,b,Gamma,de1ta) 11=Theta>=a; 12=Theta<=b; 133(11)&(12); 14=Theta>b3 15=Phi<=0; 16=(14)&(15); 17=Theta=0; 19=<17)&(18); if (13)|(16)I(19) Sdot=Gamma*Phi; elseif (“l2)&("1c5) Sdot=Gamma*(1+(b-Theta)/delta)*Phi; elseif (”11)&("18) Sdot=Gamma*(1+(Theta-a)/de1ta)*Phi; end Appendix B Matlab programs for simulations in Chapter 4 B.1 trainf.m ZZZZXZZZZZZZZZZZZZZZXZZZZZZZZZZZZZZXXZZZZZZZZZZZZZZZZZXZXXZZZZZZZX % This program is to obtain initial estimates for the weights of Z Z a network with 48 Gaussian nodes.The program for G is similar. % %%%%%%%%%%%%%%%%1ZZZZ%%%%%%%%%%%%Z%%%%%%Z%%%%ZZZZZXZZZXXZZZZZZXZZZ for i=1:48, a(i)=-(3/4)+0.5*mod(i-1,4); end for i=1:48, b(i)=-(11/4)+0.5*f100r((i-1)/4); end W1f=[a;b]; Blf=2tpi.*ones(1,1ength(H1f)); Po=[]; y=[]; yd=[]; To=[]; k1=16; k2=0; k3=0; for i=1z48, y(i)=-(3/4)+0.5*mod(i-1,4); yd(i)=-(11/4)+0.5*floor((i-1)/4); 77 78 if y(i)==k2, f1=1; else f1=[sin(4*pi*(y(i)-k2))]/[4*pi*(y(i)-k2)]; end if yd(i)==k3, f2=1; else f2=[sin(pi*(yd(i)-k3))]/[pi*(yd(i)-k3)]; end To=[To,k1*f1*(f2‘2)]; end Tp=[100 0.0048]; Po=[Y3Yd]; [W2f,B2f] = mysolverb(Po,To,H1f’,2*pi,Tp); Z mysolverb.m is similar to matlab’s solverb.m with minor modifications. Z While in solverb.m the RBF’s ’Gaussian wts’ are chosen by the program Z depending on the training samples, in mysolverb.m, we use apriori Z fixed basis wts and determine only the linear-weights (ie, mainly Z use only the solvelin part of solverb.) save weightsfs.mat Hlf Blf w2f 82f; B.2 nno.m ZZZZZZZ%%X%%%%%%%%%%%%ZZ%%ZZZZZZX%%%%%%%%%%%%ZZXXZZZZ%%%Z%Z% Z This is the main program,it uses the model simsloto.mdl, % X which in turn calls the matlab M-file slotsimo.m % 722%Z%XZZXZ1%X7%ZX2%XZZZXXZZXZZZXZXXXZZZZXZXZZZZXZZZZZXZZXZZ clear; clc; load weightsfs; load weightsg; ar=w2r-0.1; br=w2r+0.1; ag-H2g-0.1; bg=H2g+0.1; xo=[0 O 0 -0.5 2 0 0 H2f H2gJ’; tf=[0 20]; deltasle-S; Gamma-1e3; 79 [t,x]=sim(’simsloto’,tf); e=simout(:,1); v=simout(:,2); subplot(2,1,1); plot(t,simout(:,1)); grid; xlabe1(’ Time in seconds’) tit1e(’Tracking error e’) subplot(2,1,2); hold on; plot(t,simout(:,2)); grid; x1abe1(’ Time in seconds’); title(’Control input v’) B.3 slotsimo.m Z This program contains all relevant equations Z ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ function [sys,xi,str,ts]=slotsimo(t,x,u,f1ag,xo,H1f,W2f,Blf, B2f,af,bf,ng,W2g,Blg,B2g,ag,bg,Gamma,delta) if f1ag== , xi=xo; sys=[7+length(H2f)+1ength(w2g),0,2,0,0,0,0]; else P=[1.1167 0.0833;0.0833 0.1167]; bb=[0 1]’; K=[3 2]; eta=40; kv=0.7; mu=0.5; epsilon=0.001; vmax=60; yr=x(1); yrd=x(2); yrdd=x(3); y=x(4); yd=x(5); H2f=x(8:(7+1ength(W2f)))3 H2g=x(8+1ength(w2f):7+1ength(W2f)+length(V23)); e1=y-yr; e2=yd-yrd; e1hat=x(6); e2hat=x(7)/epsilon; e=[e1 e2]; s=2*e*P*bb; U=[y e2+yrd]’; [Phif,Fhat]=simurb(U,H1f’,B1f’,H2f’,B2f); 80 [Phig,Ghat]=simurb(U,H1g’,Blg’,w2g’,BZg); if eta*abs(s)>=mu, vr=-(eta*s)/((1-kv)*abs(s)); else vr=-((eta‘2)*s)/((1-kv)*mu); end if y==0, f1=1; else f1=[sin(4*pi*y)]/[4*pi*y]; end if yd==0, f2=1; else f2=[sin(pi*yd)]/[pi*yd]; end F=16*f1*(f2“2); G=2+sin((3*pit(y-0.5))); v=-K*e’-Fhat+yrdd+vr/Ghat; if abs(v)>vmax v=sign(v)*vmax; end ydd=F+v*G; Psif=s*Phif; Psig=s*Phig*v; x6dot=(x(7)+1*(e1-e1hat))/epsilon; x7dot-6*(e1-e1hat)/epsilon; if abs(flag)== , for i=1:length(W2f). W2fdot(i)=proj(W2f(i),Psif(i).af(i),bf(i),Gamma,de1ta); end for i=1:length(U2g). H2gdot(i)=proj(fl2g(i),PsigCi),ag(i),bg(i),Gamma,de1ta); end u=0.5*sign(sin(0.8*pi*t))+0.5; sys=[x(2);x(3);-1000*x(1)-300*x(2)-30*x(3)+1000*u;yd;ydd; x6dot;x7dot;w2fdot’;H2gdot’]; elseif abs(flag) == , sys=[e1,v]; end end Bibliography [1] C. C. Chien A. Stotsky and P. Ioannou. Robust platoon-stable controller design for autonomous intelligent vehicles. In Proc. 1994 Conf. on Decision and Contr., pages 2431—2436, December 1994. [2] B. Aloliwi and H. K. Khalil. Robust adaptive output feedback control of non- linear systems without persistence of excitation. Automatica, 33(11):2025—2032, November 1997. [3] George A.Rovithakis and Manolis A. Christodoulou. A robust neural adaptive control scheme. In Proc. 1995 Conf. on Decision and Contra, pages 1831—1832, December 1995. [4] A. R. Barron. Universal approximation bounds for superpositions of a sigmoidal function. IEEE Trans. Inform. Theory, 39(3):930-945, May 1993. [5] C. I. Byrnes and A. Isidori. Asmptotic stabilization of minimum phase nonlinear systems. IEEE Trans. Automat. Contr., 36(10):1122—1137, October 1991. 81 l6] l7] [8] [9] [10] [11] [12] [13] 82 R. J. Caudill and W. L. Garrard. Vehicle-follower longitudinal control for auto— mated transit vehicles. ASME J. Dyn. Sys, Meas and Contr., pages 241—248, 1977. F. C. Chen and H. K. Khalil. Adaptive control of a class of nonlinear discrete-time systems using neural networks. IEEE Trans. Automat. Contr., 40(5):791—801, May 1995. C. C. Chien and P. Ioannou. Automatic vehicle following. In Proc. 19.92 Amer. Contr. Conf., June 1992. F. Esfandiari and H. K. Khalil. Output feedback stabilization of fully linearizable systems. Int. J. Contr., 56:1007—1037, 1992. S. Fabri and V. Kadirkamanathan. Dynamic structure neural networks for stable adaptive control of nonlinear systems. IEEE Trans. Neural Networks, 7 (5):1151-— 1166, September 1996. J. A. Farrell. Persistence of excitation conditions in passive learning control. Automatica, 33(4):699—703, 1997. M. Fliess. Generalized controller canonical forms for linear and nonlinear dy- namics. IEEE Trans. Automat. Contr., 35(9):994~1001, 1990. Simon S. Haykin. Neural Networks : A Comprehensive Foundation. Macmillan, New York, 1994. [14] [15] [15] [17] [18] [19] [20] [21] 83 P. V. Kokotovic I. Kanellakapoulos and R. H. Middleton. Indirect adaptive output feedback control of a class of nonlinear systems. In Proc. 1990 Conf. on Decision and Contr., pages 2714—2719, 1990. P. V. Kokotovic I. Kanellakapoulos and R. H. Middleton. Observer based adap- tive control of nonlinear systems under matching condition. In Proc. 1990 Amer. Contr. Conf., pages 549—555, 1990. P. V. Kokotovic I. Kanellakapoulos and A. S. Morse. Systematic design of adap- tive controllers for feedback linearizable systems. IEEE Trans. Automat. Contr., 36:1241-1253, 1991. P. V. Kokotovic I. Kanellakapoulos and A. S. Morse. Adaptive output feedback control of systems with output nonlnearities. IEEE Trans. Automat. Contr., 37:1266—1282, 1992. P. A. Ioannou and J. Sun. Robust Adaptive Control. Prentice Hall, Upper Saddle River, New Jersey, 1995. A. Isidori. Nonlinear Control Systems. Springer-Verlag, New York, 1995. V. K. Narendran J. K. Hedrick, D. H. McMahon and D. Swaroop. Longitudinal vehicle controller design for ivhs systems. In Proc. 1991 Amer. Contr. Conf., pages 3107—3112, 1991. R. Ordonez J. T. Spooner and K. M. Passino. Stable direct adaptive control of a class of discrete-time nonlinear systems. In Proc. 13th World Congress of [FA C, pages 343—348, July 1996. 84 [22] S. J agannathan and F. L. Lewis. Discrete-time neural net controller with guaran- teed performance. IEEE Trans. Automat. Contr., 41(11):1693—1699, November 1996. [23] M. J ankovic. Adaptive output feedback control of nonlinear feedback linearizable systems. Int. J. Adaptive Contr. Signal Proc., 10:1-18, 1996. [24] H. K. Khalil. Adaptive output feedback control of nonlinear systems represented by input-output models. IEEE Trans. Automat. Contr., 41(2):177—188, February 1996. [25] H. K. Khalil. Nonlinear Systems. Prentice Hall, Upper Saddle River, New Jersey, 1996. [26] K. Khorasani. Indirect adaptive control design for a class of nonlinear systems. In Proc. 1993 Conf. on Decision and Contr., pages 2629—2634, 1993. [27] M. Krstic and P. V. Kokotovic. Adaptive nonlinear output feedback schemes with marino—tomei controller. IEEE Trans. Automat. Contr., 41:274—280, 1996. [28] K. W. Lee and H. K. Khalil. Adaptive output feedback control of robot manip- ulators using high-gain observers. Int. J. Contr., 67:869—886, 1997. [29] R. Marino and P. Tomei. Dynamic output feedback linearization and global stabilization. Syst. Contr. Lett., 37(3), 1991. [30] R. Marino and P. Tomei. Global adaptive observers for nonlinear systems via filtered transformations. IEEE Trans. Automat. Contr., 37:1239—1245, 1992. 85 [31] R. Marino and P. Tomei. Global adaptive output feedback control of nonlinear systems, part i: Linear parametrization. IEEE Trans. Automat. Contr., 38:17— 32, 1993. [32] K. S. Narendra and A. M. Annaswamy. Stable Adaptive Systems. Prentice-Hall, Eaglewood Cliffs, New Jersey, 1989. [33] M. Polycarpou. Stable adaptive neural control scheme for nonlinear systems. IEEE Trans. Automat. Contr., 41(3):447—451, March 1996. [34] M. Polycarpou and P. Ioannou. Modelling, identification and stable adaptive control of continuous-time nonlinear dynamical systems using neural networks. In Proc. 1992 Amer. Contr. Conf., pages 36—40, June 1992. [35] R. M. Sanner and J .-J. E. Slotine. Gaussian networks for direct adaptive control. IEEE Trans. Neural Networks, 3(6):837—-863, November 1992. [36] S. Sheikholeslam and C. A. Desoer. Longitudinal control of a platoon of vehicles. In Proc. 1990 Amer. Contr. Conf., pages 291—297, 1990. - [37] S. Sheikholeslam and C. A. Desoer. A system level study of the longitudinal control of a platoon of vehicles. ASME J. Dyn. Sys., Meas and Contr., 1991. [38] S. E. Shladover. Operation of automated guideway transit vehicles in dynamically reconfigured trains and platoons. UM TA-MA-06—0085- 79, 1979. [39] J. T. Spooner and K. M. Passino. Stable adaptive control scheme fuzzy systems and neural network. IEEE Trans. Fuzzy Systems, 4(3):339—359, August 1996. 86 [40] A. Teel and L. Praly. Global stabilizability and observability imply semi-global stabilizability by output feedback. Syst. Contr. Lett., 22:313—325, 1994. [41] A. Tornambe. Output feedback stabilization of a class of non-minimum phase nonlinear systems. Syst. Contr. Lett., 19:193—204, 1992. [42] E. Tzirkel-Hancock and F. Fallside. Stable control of nonlinear systems using neural networks. Int. J. Robust Nonlinear Contr., 2(1):63—86, April 1992. [43] P. Varaiya. Smart cars on smart roads: problems of control. IEEE Trans. Automat. Contr., 38:195-207, 1993.