Mechatronics 10 (2000) 897±920
Fuzzy control for active suspensions
Fernando J. D'Amato*, Daniel E. Viassolo
School of Aeronautics and Astronautics, Purdue University, West Lafayette, IN, 47907-1282, USA
Received 27 May 1998; received in revised form 26 August 1999; accepted 13 September 1999
Abstract
A methodology for the design of active car suspension systems is presented. The goal is
to minimize vertical car body acceleration, for passenger comfort, and to avoid hitting
suspension limits, for component lifetime preservation. A controller consisting of two
control loops is proposed to attain this goal. The inner loop controls a nonlinear hydraulic
actuator to achieve tracking of a desired actuation force. The outer loop implements a
fuzzy logic controller which interpolates linear locally optimal controllers to provide the
desired actuation force. Final controller parameters are computed via genetic algorithmbased optimization. A numerical example illustrates the design methodology. 7 2000
Elsevier Science Ltd. All rights reserved.
1. Introduction
The basic idea in active control of suspensions is to use an active element (the
actuator, e.g., a hydraulic cylinder) to apply a desired force between the car body
and the wheel axle. This desired force is computed by the car's control unit to
achieve certain performance objectives under external disturbances (e.g., passenger
comfort under road imperfections). Although passive suspension systems can
eectively handle some control objectives, active suspension systems are currently
replacing (or being combined with) them. This happens mainly because active
systems oer more design ¯exibility, and thus the range of achievable objectives
increases.
* Corresponding author. Fax: +1-765-494-0307.
E-mail address: fdamato@ecn.purdue.edu (F.J. D'Amato).
0957-4158/00/$ - see front matter 7 2000 Elsevier Science Ltd. All rights reserved.
PII: S 0 9 5 7 - 4 1 5 8 ( 9 9 ) 0 0 0 7 9 - 3
898
F.J. D'Amato, D.E. Viassolo / Mechatronics 10 (2000) 897±920
Active suspension systems reduce car body accelerations by allowing the
suspension to `absorb' wheel accelerations. This is achieved at the expense of
using more suspension travel, and thus increasing the probability of hitting the
suspension rattle-space limits. Hitting the rattle-space limits translates into both
passenger discomfort and wear of vehicle components [1]. These considerations
motivate us to investigate the ride/rattle-space trade-o for active suspensions,
which seems to have been overlooked until the work in [1].
This paper focuses on the (loosely stated) problem:
Design an active suspension system to avoid hitting the rattle-space limits for
`large' suspension travels, and to minimize the car body acceleration for `small'
suspension travels.
We present an approach for solving the problem stated above. Our approach
uses both an inner control loop and an outer control loop. The inner loop
controls the hydraulic actuator to track a desired actuation force. The outer loop
implements a fuzzy logic controller, with parameters computed by a genetic
algorithm (GA)-based optimization. Our major contribution is a detailed design
methodology to solve this particular class of problems. The approach combines
dierent control design techniques to achieve performance dependent of the
perturbation size. The methodology is applied to a quarter-car suspension system.
The remaining part of this paper is organized as follows. Section 2 contains a
description of the model for the suspension system. The control problem is set up
in Section 3. In Section 4 we present a design methodology for active suspension
systems, and the speci®c details on each step are given in Section 5. The resulting
controller designs are given in Section 6, and the conclusions in Section 7.
2. Mathematical model
The mathematical model for the suspension dynamics is taken from [2,3] and is
brie¯y described as follows. Consider the quarter-car passive/active suspension
system shown in Fig. 1. The wheel and the (massless) axle are connected to the
car body through the spring±damper±actuator combination. The tire is modeled
as a simple spring.
The dynamics for the suspension system, excluding the actuator and when the
suspension travel is below its physical limit, is described by the linear equation
3
3
2
2
3
2
0
1
0
0
0
0
2 3 6
72 z 3 6 ÿKt 7
6 1 7
Kt
z_1
7 1
7
6 ÿKa ÿCa
6
7
6
0
7
7
6
7
6
6
7
6 z_2 7 6
M
M
M
M
z
M
w
w
7
7
6
6
7
6
2
76
6 76
1
76
7F
7r 6
4
5
4 z_3 5 6 0
7 z3
60
7
60 7
0
0
1
7
7
6
6
7
6
z_4
5 z4
4 Ka
4 Kt 5
4 ÿ1 5
Ca
ÿKt
0
Mw
Mw
Mw
Mw
Mw
F.J. D'Amato, D.E. Viassolo / Mechatronics 10 (2000) 897±920
899
or, in compact form,
z_l Azl B1 r B2 F,
where z1 : x b ÿ x w is the suspension travel (body displacement xb relative to
wheel displacement xw), z2 : z_1 , z3 : x w , and z4 : z_3 : The inputs are the road
disturbance (displacement) r and the actuator force F. The suspension travel is
physically constrained according to
j z1 t j Rz1 , 8tr0:
2
The parameters of this model are: the body mass Mb, the wheel mass Mw, the
damping coecient Ca, the spring coecient Ka, the tire spring coecient Kt and
the hard limit for the suspension travel z1 ; the parameter M is de®ned by 1=M
1=Mw 1=Mb :
The dynamics of the hydraulic actuator is given by
F_ ÿbF ÿ aL 2 z2 gLN F, uu,
3
where
r
F
F
j Ps ÿ sgn u j,
N F, u: sgn Ps ÿ sgn u
L
L
L is the piston area, Ps is the supply pressure, a, b, g are constant coecients, and
Fig. 1. Quarter-car model with hydraulic actuator and spring/damper.
900
F.J. D'Amato, D.E. Viassolo / Mechatronics 10 (2000) 897±920
u is the input voltage for the servo-valve. The servo-valve dynamics is considered
fast enough so that it can be modeled as a constant. (For a more detailed
description of the hydraulic actuator see [2,3].)
Numerical values for the model parameters are taken from [2,3], and are given
below
M
Mw
Ka
Ca
Kt
z1
a
b
g
Ps
L
49 kg
59 kg
16,812 N/m
1000 Ns/m
190,000 N/m
8 cm
4.515 1013 N/m5
1 sÿ1
5
1
1.545 109 N= m 2 kg 2
10,342,500 Pa
3.35 10ÿ4 m2
3. Control problem
The control objective is to maximize the passenger comfort, while preserving the
lifetime of suspension components, under road disturbances. The comfort is
determined by the level of vertical car body acceleration xÈb experienced by the
passenger. The lifetime of components is preserved by avoiding hitting the rattlespace limits (i.e., avoiding j z1 j z1 ). Hence, the controller objectives can be
stated as (a) increase, with respect to open-loop, the range of `typical' road
disturbances for which the suspension travel limits are not reached, and (b)
minimize the peaks of the body accelerations under road disturbances.
Consider the system de®ned by Eqs. (1)±(3), and let the set of typical road
disturbances be of the form
a 1 ÿ cos 8pt=2 if 0:50RtR0:75
4
r t
0
otherwise,
where a denotes the `bump' amplitude (see Fig. 2). This is the type of disturbance
considered, for example, in [1]. The control problem is precisely de®ned as follows:
Design a control law u t C z t, with z: z1 z2 z3 z4 F T , for the system in
Eqs. (1)±(3) such that the closed-loop response to inputs of the form (4), with
z(0)=0, satis®es:
the suspension travel vz1v does not reach the limit z-1 for bumps of amplitudes a
R 11 cm, and
F.J. D'Amato, D.E. Viassolo / Mechatronics 10 (2000) 897±920
901
Fig. 2. Typical road disturbance Ð bump with amplitude 11 cm.
the peak of the body acceleration max t j x b t j is minimized for bumps of
amplitudes a R 5 cm.1
4. Design methodology
To solve the control problem stated in the previous section we propose the
following two-step procedure:
1. design an inner loop controller for tracking actuator commands, and
2. design an outer loop controller to satisfy performance requirements.
The inner loop controller produces the actuator input u which makes the actuator
force F track the force command Fcmd. This controller attempts to cancel the
actuator nonlinearities. The outer loop controller produces the force command
Fcmd to achieve performance. This controller has performance requirements that
1
The numerical bounds of 11 cm and 5 cm for a are suggested from results in [1] and from the
authors' preliminary designs [4].
902
F.J. D'Amato, D.E. Viassolo / Mechatronics 10 (2000) 897±920
depend on the size of the perturbations. Namely, we have one performance
objective when the perturbations are relatively small, and another performance
objective when the perturbations are large. For this outer loop controller we
propose a fuzzy architecture, to schedule the control action according to the
perturbation size.
A representation of this con®guration is shown in Fig. 3 and the following
section gives details on each step of the design methodology.
5. Methodology speci®cs
5.1. Inner loop controller
Given a command signal Fcmd for the actuator force F, the proposed inner loop
controller has the form shown in Fig. 3, and is described by
u
n
r
satF1 F
gL Ps ÿ sgn n
L
where n is de®ned by
z_c ÿlc zc ÿ kc lc F ÿ satF1 F
n aL 2 z2 b ÿ lt satF1 F lt Fcmd zc F_cmd z_c
5
6
and satF1() is the standard saturation function with saturation level F1, and F1 is a
force amplitude slightly less than PsL.
Fig. 3. Schematic of interconnection.
F.J. D'Amato, D.E. Viassolo / Mechatronics 10 (2000) 897±920
903
The rationale for choosing this inner loop controller is given as follows. If the
force F generated by the actuator never exceeds the value F1, the controller Eq.
(5) constitutes a feedback linearization controller (see, for example [5,6]) that
renders linear the input±output dynamics from the actuator command Fcmd to the
measurements zl. More explicitly, replacing (5) in (3) when j F j< F1 we obtain the
following dynamics for the tracking error e: F ÿ Fcmd :
e_ ÿlt e, i:e:, F_ ÿlt F ÿ Fcmd F_cmd :
7
Then, the u in Eq. (5) cancels the dynamics in Eq. (3) and assigns the tracking
error dynamics, given by lt. On the other hand, if the actuator force magnitude
exceeds the value F1, the state zc in (6) becomes excited and attempts to restore F
back to the `linearization interval' [ÿF1,F1]. To obtain dynamics for the tracking
error e and the controller state zc that are faster than the dynamics in (1), we
choose
lt 1260, lc 2000, kc 10:
8
Similar techniques for the design of tracking controllers for nonlinear hydraulic
actuators can be found in [2,3].
5.2. Outer loop controller
The proposed outer loop controller is a so called parallel distributed
compensator (PDC) based on a Takagi±Sugeno (TS) representation of the input/
output description of the dynamics from the inputs [r Fcmd]T to the performance
output e (to be de®ned later). This TS representation can be interpreted as an
interpolation of a set of linear systems (see [7]). The proposed PDC consists in an
interpolation of optimal controllers designed for each of the rules of the TS
model. In the next subsections, we describe each of the steps to design the outer
loop controller.
5.2.1. Takagi±Sugeno fuzzy system
With the inner loop controller described in Section 5.1 in place, the input/
output dynamics from r, Fcmd to zl (see Fig. 3) is approximately linear and
equivalent to (1) with F replaced by Fcmd, i.e.,
z_l Azl B1 r B2 Fcmd :
9
In the following, the fuzzy Takagi±Sugeno (TS) description is used to
accommodate the nonlinear (operating region-dependent) performance
requirements for the linear dynamics (9). According to Section 3, for small
disturbances the performance is measured in terms of body acceleration, while for
large disturbances the performance is measured in terms of suspension travel. The
suitability of the TS description is justi®ed as follows. FIRST, it allows the
904
F.J. D'Amato, D.E. Viassolo / Mechatronics 10 (2000) 897±920
speci®cation of dierent performance outputs2 for dierent disturbance
amplitudes. Second, it provides the structure to schedule a set of optimal
controllers for the local performance objectives. A key observation is that the
scheduling in terms of the perturbation size a in (4) can be reformulated in terms
of the suspension travel amplitude vz1v.
Our TS description is based on the linguistic variable (see [8]) suspension travel
amplitude h, de®ned by the set
1
m
fh, U, fT 1h , . . . , T m
h g, fmh , . . . , mh gg
where U 0, z1 is the universe of discourse of h, T ih are the term sets of h, and
mih are the corresponding membership functions (to be discussed shortly). In what
follows, we will denote with Xi the region of the state-space zl associated with the
term set T ih of the linguistic variable de®ned above.
For each region Xi we choose a corresponding linear nondimensional local
performance output e i following the guidelines:
If h is small, then e i has large contribution of xÈb and small contribution of vz1v.
If h is large, then e i has small contribution of xÈb and large contribution of vz1v.
This local performance output is de®ned by
2
ei
6 e1i
i
e 4 2
eiFcmd
2
x b
3 6 li 10 m=s 2
6
6
z1
7 6
5 6 1 ÿ li
6
8 cm
6
4 Fcmd
13,000 N
3
7
7
7
7 i 1, . . . , m
7,
7 li 2 0, 1, l1 1, lm 0,
7
5
10
where li provides relative weight between suspension travel and body acceleration.
Clearly, for the region of small suspension travel li 1 1, while for the region of
large suspension travel li 1 0.
The m rules of the TS description de®ning the linear dynamics and the local
performance output e i have the form:
Rule i: IF h is T ih , THEN
z_l Azl B1 r B2 Fcmd
ei Ci zi Di Fcmd ,
11
2
The vector of performance outputs contains all the signals we want to be `small', e.g., the body
acceleration.
F.J. D'Amato, D.E. Viassolo / Mechatronics 10 (2000) 897±920
905
for i = 1, . . .,m, where A, B1 and B2 are de®ned in (1), and Ci and Di are de®ned
by Eqs. (1) and (10).
5.2.1.1. Membership functions. The individual membership functions considered
are piecewise combinations of 7th order polynomials. Each membership function
is parameterized in terms of the transition abscissas, as described next.
The membership function for the ®rst term set T 1h is given by
8
if 0RhRc1
<1
12
m1h h 1 ÿ pc1 , d1 h if c1 RhRd1
:
0
if d1 Rh,
where pq, s h is a 7th order polynomial parameterized by q and s such that
pq, s q 0
pq,0 s q pq,00 s q pq,000 s q 0
pq, s s 1 pq,0 s s pq,00 s s pq,000 s s 0
For the term sets T ih , i 2,
8
0
>
>
>
>
< pai , bi h
mih h 1
>
>
> 1 ÿ pci , di h
>
:
0
. . ., m ÿ 1, mih is given by
if
if
if
if
if
0RhRai
ai RhRbi
bi RhRci
ci RhRdi
di RhRz1 ,
13
m
and for the last term set T m
h , mh is given by
8
if 0RhRam
<0
p
h
if
am RhRbm
h
mm
h
: am , bm
1
if br RhRz1 :
14
We impose the following constraints for the transition abscissas
ai ciÿ1 , bi diÿ1 , for i 2, 3, . . . , m:
A sketch of these membership functions is shown in Fig. 4.
The set of membership functions for the TS model is parameterized by the
abscissas ai , bi , ci , di , which are collected in the membership function parameter
vector
pm : a2 am
b2 bm
c1 cmÿ1
d1 dmÿ1 :
15
5.2.1.2. TS representation. Finally, the TS representation that accommodates the
nonlinear performance requirements is given by the linear dynamics (9) and the
following `fuzzy blending' of the performance output:
906
F.J. D'Amato, D.E. Viassolo / Mechatronics 10 (2000) 897±920
e t C tzl t D tFcmd t,
16
with
C t:
m
X
Zi tCi
i1
D t:
m
X
Zi tDi ,
17
i1
where
Zi t:
mih
m
X
h t
j
mh
, i 1, 2, . . . , m:
18
h t
j1
(Notice, from Eq. (18) we have Zi tr0, 8i, and Sm
i1 Zi t 1, 8tr0:)
Fig. 4. Membership functions m 1, m 2, m 3 in a hypothetical universe of discourse U=[0,15]. Vertical
lines indicates the transition abscissas.
F.J. D'Amato, D.E. Viassolo / Mechatronics 10 (2000) 897±920
907
The performance output e is parameterized in terms of li and ri, for i =
1,2, . . . ,m, which are collected in the performance parameter vector
pp : l1 lm
r1 rm :
19
In this manner we obtain a TS representation parameterized both by pm in Eq.
(15) and by pp in Eq. (19).
5.2.2. Parallel distributed compensator
To control the TS model introduced in Section 5.2.1 we use a parallel
distributed compensator (PDC) [9,10]. This PDC is obtained by (a) designing a
static state-feedback controller Ki for each rule i = 1,2, . . . ,m, (as detailed later)
and by (b) fuzzy blending these Kis. A key point is that for the blending we utilize
the same fuzzy sets as for the TS model. To be more precise, the actuator force
command becomes
!
m
X
Zi tKi zl t
20
Fcmd t K tzl t
i1
where the Zi,i = 1, . . .,m are de®ned in (18).
Since the local performance output is parameterized in terms of pp and the
membership functions are parameterized in terms of pm, the PDC inherits the
same parameterization of the TS representation in terms of both pm and pp.
5.2.2.1. Optimal controllers. The state-feedback controller Ki for the i-th rule, is
chosen to solve the following optimization problem
o
n
min Ki stabilizing max kTei1 r k22 , kTei2 r k22
subject to kTeiF
cmd
2
r k2
< ri ,
21
where the nondimensional constant ri is a bound on the control eort, Tei1 r , Tei2 r
and TeiF r are the transfer functions from r to ei1 , ei2 and eiFcmd , respectively, and
cmd
kTk2 indicates
the standard H2-norm of the transfer function T de®ned by
s
1 1
T joT jo do :
kTk2 : trace
2p ÿ1
The optimization problem (21) is a particular case of the generalized H2 (GH2)
control problem [11]. The idea behind the choice of this class of controllers is
given as follows. Although the overall performance is to be optimized for inputs
of a ®xed form (the bumps in Eq. (4)), we want to have a suspension system that,
when the inputs are not exactly as in Eq. (4), it has some guaranteed desirable
property. The class of controllers proposed, in addition to achieve good bump re-
908
F.J. D'Amato, D.E. Viassolo / Mechatronics 10 (2000) 897±920
sponses, has the following property. If the suspension travel j z1 j Rc1 (c1 de®ned
in Eq. (12)), the active suspension system minimizes
max
t
j x b t j
krk
over all perturbations r of bounded energy krk, subject to
max j Fcmd t j Rkrkr1 13,000 N:
t
This roughly means that, if the perturbations are such that the suspension travel is
`small', we minimize the worst-case car body acceleration peak for inputs with
bounded energy. For details on the GH2 methodology see [11±13]. Stochastic interpretations of the solution to Eq. (21) can be found, for example, in [14].
Controllers solving Eq. (21) can be computed eciently by reducing the
optimization problem to a linear matrix inequality (LMI) problem (see [11] and
Appendix A).
5.2.3. GA-based parameter selection
As stated before, the PDC is parameterized by pm and pp. Based on our
knowledge of the control system, it is not dicult to select parameter vectors pm
and pp that achieve a fairly good performance (our previous experience indicates
this). However, to achieve an even better performance this intuitive approach is
not good enough. In this section, we propose to use a GA [15] for selecting the
®nal pm and pp.
The GA used for choosing pm and pp includes the standard processes for
population initialization, reproduction, crossover, and mutation [15], and
maximizes a ®tness function that captures the performance objectives. This ®tness
function is given by
J p m , pp
1
,
J1 J2 J3
22
with
J1
8
>
5
< 1500X
J2
8
>
<0
b
>
5 4
: 1500 3X
b
5 <
if X
b
1
3
5 r 1
if X
b
3
11 R 3
if X
b
2
>
11 r 3
11 ÿ 1 if X
: 100 2 X
b
3 b
2
23
24
909
F.J. D'Amato, D.E. Viassolo / Mechatronics 10 (2000) 897±920
Fig. 5. Fuzzy membership functions for the controllers C2fs, C3fs and C4fs (abscissas [m]).
J3
106
0
if z1 ÿ Z1 < 10 ÿ4 z1
if z1 ÿ Z1 > 10 ÿ4 z1 ,
25
11 is the ratio between the closed and open loop maximum peak of
5 X
where X
b
b
the body acceleration xÈb response to 5 cm bumps (11 cm bumps), and Z1 is the
maximum peak of the suspension travel z1 for the closed loop response to 11 cm
bumps.
The rationale for selecting this ®tness function is as follows. The passenger
comfort costs J1 and J2 penalize body accelerations for 5 cm bumps and for 11 cm
Table 1
Controller C2fs Ð parameters pm (in cm) de®ning the membership functions
a1
b1
c1
d1
±
±
4.4539
7.5609
a2
b2
c2
d2
4.4539
7.5609
±
±
910
F.J. D'Amato, D.E. Viassolo / Mechatronics 10 (2000) 897±920
Table 2
Controller C2fs Ð parameters pp de®ning the performance outputs
l1
l2
1
0
r1
r2
34.7462
37.3661
Fig. 6. Time traces for C2fs and 11 cm bump Ð solid line, closed loop; dashed line, open loop.
911
F.J. D'Amato, D.E. Viassolo / Mechatronics 10 (2000) 897±920
Table 3
Controller C3fs Ð parameters pm (in cm) de®ning the membership functions
a1
b1
c1
d1
±
±
0.3983
2.3165
a2
b2
c2
d2
0.3983
2.3165
5.3997
6.8183
a3
b3
c3
d3
5.3997
6.8183
±
±
Table 4
Controller C3fs Ð parameters pp de®ning the performance outputs
l1
l2
l3
1
0.9236
0
r1
r2
r3
39.5487
95.7383
28.2616
Table 5
Controller C4fs Ð parameters pm (in cm) de®ning the membership functions
a1
b1
c1
d1
±
±
1.4864
3.0646
a2
b2
c2
d2
1.4864
3.0646
5.0585
6.5626
a3
b3
c3
d3
5.0585
6.5626
7.3383
7.6669
a4
b4
c4
d4
7.3383
7.6669
±
±
912
F.J. D'Amato, D.E. Viassolo / Mechatronics 10 (2000) 897±920
Table 6
Controller C4fs Ð parameters pp de®ning the performance outputs
l1
l2
1
0.4108
l3
0.9264
l4
0
r1
r2
r3
r4
43.5843
43.5843
61.5425
40.6836
Fig. 7. Time traces for C2fs and 5 cm bump Ð solid line, closed loop; dashed line, open loop.
F.J. D'Amato, D.E. Viassolo / Mechatronics 10 (2000) 897±920
913
bumps, respectively. The suspension lifetime cost J3 is used to discard controllers
that hit the suspension travel limits with an 11 cm bump.
The controller evaluation is performed via time-domain simulations. These
simulations include the rattle-space saturation in Eq. (2), the linearizing controller
in Eq. (5), and the actuator nonlinear dynamics in Eq. (3).
6. Results
Using the proposed design methodology, we obtained three controllers: C2fs,
C3fs and C4fs, which make use of 2, 3 and 4 fuzzy sets, respectively. The
parameters de®ning these controllers are given in Tables 1±6, and the
corresponding membership functions are plotted in Fig. 5.
Fig. 8. Time traces for C3fs and 11 cm bump Ð solid line, closed loop; dashed line, open loop.
914
F.J. D'Amato, D.E. Viassolo / Mechatronics 10 (2000) 897±920
Fig. 9. Time traces for C3fs and 5 cm bump Ð solid line, closed loop; dashed line, open loop.
Figs. 6±11 show time traces of three representative variables for controller
evaluation: (a) body acceleration xÈb, (b) suspension travel z1, and (c) actuator
force F. All variables are given for 5 cm and 11 cm bumps. We observe that there
is a substantial reduction in the acceleration peaks for 5 cm bumps, with respect
to the open-loop response. At the same time, none of our designs hits the rattlespace limits with 11 cm bumps.
The performance is measured using the following indices:
a-: the maximum bump amplitude for which the suspension travel does not hit
the rattle-space limits, and
0, 5 : the maximum ratio between closed/open-loop body acceleration peaks,
X
b
for bumps with amplitude a R 5 cm.
F.J. D'Amato, D.E. Viassolo / Mechatronics 10 (2000) 897±920
915
Fig. 10. Time traces for C4fs and 11 cm bump Ð solid line, closed loop; dashed line, open loop.
We perform time simulations, for a ®ne grid of bump amplitudes, to determine a 0, 5 : In Fig. 12 we plot acceleration ampli®cation as a function of the bump
and X
b
amplitude a. From these plots it is evident the advantage of the fuzzy controller
over linear controllers. Clearly, linear controllers cannot achieve variable
performance depending on the disturbance amplitude.
0, 5 were 0.426,
The resulting values of the acceleration ampli®cation X
b
0.520 and 0.397 for controllers C2fs, C3fs and C4fs, respectively. The value of awas increased from 9.3 cm (for open-loop response) to 11 cm for all three
controllers.
As a result of the previous analysis performed on the three controllers C2fs, C3fs
and C4fs, it is concluded that the controllers C2fs and C4fs, performed
916
F.J. D'Amato, D.E. Viassolo / Mechatronics 10 (2000) 897±920
Fig. 11. Time traces for C4fs and 5 cm bump Ð solid line, closed loop; dashed line, open loop.
approximately the same, and better than controller C3fs.3 Then, a good candidate
for implementation is C2fs, since it has the least associated complexity. The
achieved performance for this controller can be summarized by:
With respect to open-loop, the passenger comfort was improved by 58% for small/
medium road disturbances, while the maximum bump amplitude for which the
suspension limits are not hit was increased by 18%.
3
As the GA does not have guarantees to ®nd the global maximum of the ®tness function, it can not
be claimed that the resulting controllers corresponding to a larger number of fuzzy sets will perform
better. Then, performance has to be checked for all candidate controllers after running the GA optimization to select the best one.
F.J. D'Amato, D.E. Viassolo / Mechatronics 10 (2000) 897±920
917
Fig. 12. Evaluation criteria Ð Acceleration ampli®cation vs bump amplitude. Solid line: C2fs; dashed
line: C3fs; dotted line: C4fs.
7. Conclusions
An approach is presented for active suspension design which uses both inner
and outer control loops. The inner loop controls the nonlinear hydraulic actuator
in order to track the desired actuation force. The outer loop implements a fuzzy
logic controller with parameters computed by GA-based optimization.
The major contribution is a detailed design methodology to solve this particular
class of problems. The approach combines dierent control design techniques to
achieve performance dependent on the perturbation size. The method consists in
producing a class of controllers parameterized in terms of a small number of
918
F.J. D'Amato, D.E. Viassolo / Mechatronics 10 (2000) 897±920
parameters, which are selected with the aid of a GA algorithm to obtain desired
performance levels. Incorporation of other design objectives can be done in a
straightforward manner.
The methodology proved eective when applied to a quarter-car model of a
suspension system. Further work is needed to address the robustness of the
resulting controllers, and to extend the methodology to full-car models.
Acknowledgements
This work was supported in part by the National Science Foundation under
Young Investigator Award ECS-9358288, and in part by Boeing Corporation,
through the Control Systems Laboratory at Purdue University under the direction
of Prof. Rotea.
The authors would like to thank the reviewers for helpful suggestions.
Appendix A. Solution to the optimization problem (21)
Let the linear system
z_l Az B1 r B2 Fcmd
ei1 C1i z D1i Fcmd
ei2 C2i z D2i Fcmd
eiFcmd DFcmd i Fcmd ,
26
be valid for the state-space region Xi , i 1, . . . , m; and consider controllers of the
form
Fcmdi Ki z:
27
Then, the closed-loop becomes
z_l A B2 Ki z B1 r
ei1 C1i D1i Ki zl
ei2 C2i D2i Ki zl
eiu DFcmd i Ki zl :
28
F.J. D'Amato, D.E. Viassolo / Mechatronics 10 (2000) 897±920
919
The objective is to ®nd a stabilizing Ki that solves
min Ki
subject to
d
kTei1 r k22 < d
29
kTei2 r k22 < d
kTeiF
cmd
2
r k2
< ri ,
where pi > 0 is a given constant. (This problem is equivalent to the problem in
Eq. (21).) Using Eq. (28) and results in [16], the problem in (29) can be written as
min Q,
Wi d
subject to
AQ QAT B2 Wi W Ti B T2 B1 B T1 < 0
dI
C1i Q D1i Wi T
C1i Q D1i Wi
Q
>0
dI
C2i Q D2i Wi T
C2i Q D2i Wi
Q
>0
ri I
DFcmd i Wi T
DFcmd i Wi
Q
> 0,
30
where Wi : Ki Q: This optimization problem is a linear matrix inequality (LMI)
convex problem, which can be solved eciently [17,18].
References
[1] Lin J-S, Kanellakopoulos I. Nonlinear design of active suspensions. IEEE Control System
Magazine 1997;17:45±59.
[2] Alleyne A, Hedrick JK. Nonlinear adaptive control of active suspensions. IEEE Trans Control
Syst Technology 1995;3:94±101.
[3] Alleyne A, Neuhaus PD, Hedrick JK. Application of nonlinear control theory to electronically
controlled suspensions. Vehicle System Dynamics 1992;22:309±20.
[4] D'Amato FJ, Viassolo DE. Fuzzy control for active suspensions. Technical report, Purdue
University, Indiana, May 1998.
[5] Isidori A. Nonlinear control systems. 3rd ed. New York: Springer-Verlag, 1995.
[6] Slotine J-J, Li W. Applied nonlinear control. Englewood Clis, NJ: Prentice Hall, 1991.
[7] Passino KM, Yurkovich S. Fuzzy control. California: Addison Wesley Longman, Inc, 1998.
[8] Zadeh LA. Outline of a new approach to the analysis of complex systems and decision processes.
IEEE Transactions on Systems, Man and Cybernetics 1973;3(1):28±44.
[9] Tanaka K, Sano M. A robust stabilization problem on fuzzy control systems and its application
to backing up control of a truck-trailer. IEEE Transactions on Fuzzy Systems 1994;2:119±34.
920
F.J. D'Amato, D.E. Viassolo / Mechatronics 10 (2000) 897±920
[10] Wang HO, Tanaka K, Grin MF. An approach to fuzzy control of nonlinear systems: stability
and design issues. IEEE Transactions on Fuzzy Systems 1996;4:14±23.
[11] Rotea MA. The generalized H2 control problem. Automatica 1993;29(2):373±86.
[12] Wilson DA. Convolution and Hankel operator norms for linear systems. IEEE Transaction on
Automatic Control 1989;34(1):94±7.
[13] D'Amato FJ, Rotea MA. Limits of achievable performance and controller design for the
structural control benchmark problem. Earthquake Engineering and Structural Dynamics
November 1998;27(11):1203±24.
[14] Skelton RE, Iwasaki T, Grigoriadis KM. A uni®ed algebraic approach to linear control design.
London: Taylor & Francis, 1999.
[15] Goldberg DE. Genetic algorithms in search optimization, and machine learning. Reading, MA:
Addison-Wesley, 1989.
[16] Boyd S, Feron E, El Ghaoui L, Balakrishnan V. Linear matrix inequalities in system and control
theory. Philadelphia: Society for Industrial and Applied Mathematics, 1994.
[17] Gahinet P, Nemirovski A, Laub AJ, Chilali M. The LMI control toolbox user's guide. Natick,
MA: The Math Works, Inc, 1995.
[18] Nesterov Y, Nemirovski A. Interior-point polynomial algorithms in convex programming. In:
Studies in applied mathematics, vol. 13. Philadelphia: SIAM, 1994.