Fuzzy Path Tracking Control For Automatic Steering of Vehicles
Fuzzy Path Tracking Control For Automatic Steering of Vehicles
Fuzzy Path Tracking Control For Automatic Steering of Vehicles
, S. Bentalba
Centre de Recherche de Robotique, dElectrotechnique et dAutomatique, 7, Rue du Moulin Neuf, 80000 Amiens, France
Received 22 January 2001; received in revised form 14 October 2002
Communicated by F.C.A. Groen
Abstract
In this paper, the path tracking (PT) control for automatic steering of vehicles is studied. The TakagiSugeno (TS) fuzzy
model of vehicle obtained from a nonlinear model is considered and a fuzzy controller is designed. The stability analysis
is discussed using Lyapunovs approach combined with the linear matrix inequalities (LMI) approach. Finally, simulation
results are given to demonstrate the controllers effectiveness.
2003 Elsevier Science B.V. All rights reserved.
Keywords: Path tracking; Fuzzy logic controller; TakagiSugeno fuzzy model; Vehicle dynamics
1. Introduction
Recently, fuzzy control has become a popular research in control engineering. The fuzzy logic controller has made
itself available not only in the laboratory work but also in industrial applications [111]. In recent years, theoretical
developments of fuzzy control have been proposed, and the constructions and the use of fuzzy controllers have been
explored [1218,20,22]. These works are essentially based on a fuzzy model of the process [19] and on Lyapunov
stability to design the fuzzy control law.
One important application of fuzzy control is in vehicles: maritime, space and ground vehicles. In [1], Waneck
proposed a fuzzy controller for an autonomous boat without initially having to develop a nonlinear dynamics model
of a vehicle. Sugeno et al. [2,3] has designed a fuzzy controller based on fuzzy modeling of a human operators
control actions to navigate and to park a car. Larkin [4] has proposed a fuzzy controller for aircraft ight control
where the fuzzy rules are generated by interrogating an experienced pilot and asking him a number of highly
structured questions. In [5], the authors have designed an autopilot for ships by translating the steering behavior
of a human controller into a fuzzy mathematical model. In [6], a fuzzy control that uses rules on a skilled human
operators experience is applied to automatic train operations. Nguyen and Widow [7] have developed a neural
network controller for the truck backer upper to a loading dock problem from an arbitrary initial position by
manipulating the steering. Kong and Kosko [8] have proposed a fuzzy control strategy for the same problem. In [9],
b
2
C
r
a
2
C
f
I
z
r
u
+
aC
f
I
z
+
a
I
z
T,
= r,
(1)
where (x, y) are the longitudinal and lateral displacement, respectively, in the xed frame R(0,
i,
i,
MM
r
= x
e
i +y
e
j. (2)
Differentiating (2) with respect to time yields
d
MM
r
dt
= x
e
i + y
e
j +x
e
j y
e
i = u
e
i +v
e
i, (3)
i.e.,
x
e
= u
e
y
e
r, y
e
= v
e
x
e
r.
Furthermore, we have
d
MM
r
dt
=
d(
OM
r
)
dt
d(
OM)
dt
, (4)
where
d
OM
r
dt
= u
r
cos(
e
)
i u
r
sin(
e
)
i +v
r
sin(
e
)
i +v
r
cos(
e
)
j, (5)
d
OM
dt
= u
i +v
j. (6)
Substituting (3), (5) and (6) into (4), one obtains
x
e
= u
r
cos(
e
) +v
r
sin(
e
) u +y
e
,
y
e
= u
r
sin(
e
) +v
r
cos(
e
) v x
e
,
(7)
206 A. El Hajjaji, S. Bentalba / Robotics and Autonomous Systems 43 (2003) 203213
i.e.,
u = u
r
cos(
e
) +v
r
sin(
e
) u
e
, v = u
r
sin(
e
) +v
r
cos(
e
) v
e
.
Furthermore, from Fig. 1, one has
e
=
r
= r
e
= r r
r
. (8)
Finally, the state representation for the path tracking problem can be written as follows:
u = vr fg +
fk
1
k
2
M
u
2
+
C
f
M
_
v
u
+
ar
u
_
+
1
M
T,
v = ur
C
f
+C
r
M
v
u
+
bC
r
aC
f
M
r
u
+
C
f
M
+
1
M
T,
r =
fMh
I
z
ur +
bC
r
aC
f
T
z
v
u
b
2
C
r
+a
2
C
f
I
z
r
u
+
aC
f
I
z
+
a
I
z
T,
x
e
= u
r
cos(
e
) +v
r
sin(
e
) u +y
e
,
y
e
= u
r
sin(
e
) +v
r
cos(
e
) v x
e
e
=
r
.
(9)
Our control objective is to make the vehicle follow a desired trajectory, that is
u u
r
, v v
r
, x
e
0, y
e
0,
e
0.
3. Analysis and design of fuzzy control system
3.1. TS fuzzy model of vehicle
As in [28], we propose to use TS fuzzy control for the nonlinear system trajectory tracking problem described
by Eq. (9).
Using this technique, the TS fuzzy model of a vehicle is easily obtained by linearization near different operation
points (X
ei
, U
ei
).
The nonlinear model given in (9) has the following form:
X = A
i
X+B
i
U,
A. El Hajjaji, S. Bentalba / Robotics and Autonomous Systems 43 (2003) 203213 207
where
A
i
=
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
2u
ei
f(k
1
k
2
)
M
C
f
(v
ei
+ar
ei
)
ei
Mu
2
ei
r
ei
+
C
f
ei
Mu
ei
v
ei
+
aC
f
ei
Mu
ei
0 0 0
C
f
+C
r
Mu
2
ei
v
ei
bC
r
aC
f
Mu
2
ei
r
ei
r
ei
C
f
+C
r
Mu
ei
bC
r
aC
f
Mu
ei
u
ei
0 0 0
fMh
I
z
r
ei
+
b
2
C
r
+a
2
C
f
I
z
u
2
ei
bC
r
aC
r
I
z
u
2
ei
bC
r
aC
r
I
z
u
ei
fMh
I
z
u
ei
b
2
C
r
+a
2
C
f
I
z
u
ei
0 0 0
1 0 0 0 r
ei
v
ei
0 1 0 r
ei
0 u
ei
0 0 1 0 0 0
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
,
B
i
=
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
1
M
C
f
(v
ei
+ar
ei
)
Mu
ei
ei
M
T
ei
+C
f
M
a
ei
I
z
a
T
ei
+C
f
I
z
0 0
0 0
0 0
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
.
The fuzzy rule L
i
represents the ith linearized system about the operating point (X
ei
, U
ei
), where
X = XX
ei
,
U = U U
ei
, A
i
=
F
X
(X
ei
,U
ei
)
, B
i
=
F
U
(X
ei
,U
ei
)
,
L
i
(i = 1, . . . , n) denotes the ith implication. (A
i
, B
i
) is the ith local model of the fuzzy system. Let W
i
be the
membership function of the inferred fuzzy set corresponding to the operating regime (X
ei
, U
ei
). The nal state of
the system is inferred by taking the weighted average of all local models:
X =
n
i=1
W
i
(A
i
X+B
i
U)
n
i=1
W
i
. (11)
3.2. Fuzzy controller design
At this stage, we present the used TS fuzzy controller scheme for nonlinear system trajectory tracking. We
consider a nite number of operating regime (X
ei
, U
ei
). In each one, the system is characterized by local linear
models. We suppose that all states in the vector X = [u, v, r, x
e
, y
e
,
e
] are measured. For each local model (A
i
, B
i
),
we design a local state feedback controllers having the following structure:
U = K
f
i
(XX
r
), (12)
where X
r
is the reference model state and K
f
i
is any matrix such that (A
i
B
i
K
f
i
) is Hurwitz. The global controller is
inferred by calculating the weighted average of all local controllers. The membership functions are used as smooth
interpolations.
208 A. El Hajjaji, S. Bentalba / Robotics and Autonomous Systems 43 (2003) 203213
The structure of the fuzzy controller is
R
i
: if Xis (X
ei
, U
ei
), then
U = K
f
i
X.
The nal output of fuzzy control is given as
U =
n
i=1
W
i
K
f
i
X
n
i=1
W
i
. (13)
3.3. Stability analysis
It is well known that even if the local controllers stabilize the corresponding local models, the global stability of
the closed loop system is not guaranteed.
Next, we will nd a sufcient condition with guaranteeing a global stability. Now the global closed loop fuzzy
system is obtained:
X =
n
i=1
n
j=1
W
i
W
j
[A
i
B
i
K
f
i
]X
n
j=1
n
i=1
W
j
W
i
. (14)
The sufcient conditions for exponential stability of (14) are well known [1315].
Theorem 1. The equilibrium of fuzzy system (14) is asymptotically stable if there exists a common positive denite
matrix P such that
(A
i
B
i
K
f
i
)
T
P +P(A
i
B
i
K
f
i
) < 0 for i = 1, . . . , n, (15)
G
T
ij
P +PG
ij
< 0 for i < j < n, (16)
where
G
ij
=
1
2
([A
i
B
i
K
f
j
] +[A
j
B
j
K
f
i
]).
This theorem reduces to the Lyapunov stability theorem for continuous time linear systems when n = 1. The
control design problem is to select K
f
i
(i = 1, . . . , n) such that conditions (15) and (16) in Theorem 1 are satised.
To check the stability of the fuzzy control system, it has long been considered difcult to nd a common positive
denite matrix P satisfying conditions (15) and (16). In [13], a procedure to construct a common P is given for
second order fuzzy systems. We pointed out in [14] that the problem of nding a common matrix P can be solved
numerically by convex programming algorithms involving LMIs [21,27]. To do this, a very important observation
is that the stability condition of Theorem 1 is expressed in LMIs [15]. To check the stability, we need to nd P
satisfying the LMI conditions
(A
i
B
i
K
f
i
)
T
P +P(A
i
B
i
K
f
i
) < 0 for i = 1, 2, . . . , n, G
T
ij
P +PG
ij
< 0 for i < j < n.
4. Simulation results
For the path tracking maneuver, we choose the operating points which check the following equations:
T
e
+Mv
e
r
e
Mfg +C
f
e
v
e
+ar
e
u
e
+u
2
e
(fk
1
k
2
) = 0,
T
e
e
Mu
e
r
e
+C
f
e
(C
f
+C
r
)
v
e
u
e
+(C
r
aC
f
)
r
e
u
e
= 0,
aT
e
e
Mfhu
e
r
e
+aC
f
e
(aC
e
bC
r
)
v
e
u
e
(b
2
C
r
+a
2
C
f
)
r
e
u
e
= 0.
(17)
A. El Hajjaji, S. Bentalba / Robotics and Autonomous Systems 43 (2003) 203213 209
Three operating points are chosen:
(u
e1
, v
e1
, r
e1
, T
e1
,
e1
) = (20 m/s, 0 m/s, 0 rad/s, 454.33 N, 0
),
(u
e2
, v
e2
, r
e2
, T
e2
,
e2
) = (30 m/s, 3.2 m/s, 0.8 rad/s, 5438.3 N, 5
),
(u
e3
, v
e3
, r
e3
, T
e3
,
e3
) = (40 m/s, 8 m/s, 1 rad/s, 15 975 N, 5
).
We consider the following gains:
K
f
1
=
_
2.8466 10
4
9.5333 10
3
5.9163 10
4
2.4935 10
5
3.2292 10
5
1.0677 10
5
3.0888 10
3
0.13649 0.087483 0.087662 0.88671 6.8637
_
,
K
f
2
=
_
3.6311 10
4
3.0077 10
4
5.8368 10
5
3.1659 10
5
2.9973 10
2
3.2963 10
6
1.9610 10
2
1.3031 10
1
2.0189 10
1
4.4963 10
2
8.6899 10
1
5.3208
_
,
K
f
3
=
_
3.1642 10
4
2.2318 10
5
2.4846 10
5
1.9236 10
5
1.5170 10
6
8.6682 10
6
1.3971 10
2
2.8546 10
1
1.5647 10
2
1.6701 10
1
1.8193 1.2974 10
1
_
.
Fig. 2 gives the membership functions of the longitudinal velocity corresponding to regime (X
ei
, U
ei
).
The fuzzy model of the vehicle designed from three rules is stable if
S
11
= G
T
11
P +PG
11
< 0, (18)
S
22
= G
T
22
P +PG
22
< 0, (19)
S
33
= G
T
33
P +PG
33
< 0, (20)
S
12
= G
T
12
P +PG
12
< 0, (21)
S
13
= G
T
13
P +PG
13
< 0, (22)
Fig. 2. Membership functions.
210 A. El Hajjaji, S. Bentalba / Robotics and Autonomous Systems 43 (2003) 203213
Fig. 3. Motion vehicle to the desired trajectory.
Fig. 4. State variable evolution.
A. El Hajjaji, S. Bentalba / Robotics and Autonomous Systems 43 (2003) 203213 211
S
23
= G
T
23
P +PG
23
< 0 (23)
for a common positive matrix P.
Using the LMI approach, we obtain
P =
_
_
_
_
_
_
_
_
_
_
2.4559 10
6
9.4152 10
7
1.8604 10
8
2.6138 10
7
1.1279 10
7
3.3387 10
1
9.4152 10
7
5.4117 10
7
3.4499 10
9
1.1973 10
7
6.1704 10
8
8.5123 10
10
1.8604 10
8
3.4499 10
9
2.0344 10
9
2.0723 10
9
3.0940 10
10
1.5350 10
1
2.6138 10
7
1.1973 10
7
2.0723 10
9
3.5686 10
8
1.5424 10
8
2.6756 10
10
1.1279 10
7
6.1704 10
8
3.0940 10
10
1.5424 10
8
7.8649 10
9
5.0227 10
11
3.3387 10
10
8.5123 10
10
1.5350 10
10
2.6756 10
10
5.0227 10
11
3.2539 10
11
_
_
> 0.
It can be easily shown that the stability conditions (18)(23) are satised.
To highlight the effectiveness of the proposed control algorithm, we present the simulation results for a path
tracking problem of the vehicle. One arbitrarily chosen initial state [u
0
, v
0
, r
0
, x
0
, y
0
,
0
] =[25 m/s, 0.8 m/s,
0.2 rad/s, 10 m, 5 m, 0.1 rad] and the desired trajectory is dened by (u
r
= 18.5 m/s, v
r
= 0.34 m/s, r
r
=
0.78 rad/s). Fig. 3 shows that the vehicle starting frominitial state follows the desired trajectory rapidly. Fig. 4 shows
the convergence of the lateral velocity, longitudinal velocity, yawrate variables towards their desired velocity and the
tracking errors of longitudinal displacement, lateral displacement and the orientation between two vehicles. We see
that this fuzzy controller successfully drives the vehicle to the desired trajectory starting froman arbitrary initial state.
5. Conclusion
In this paper, we have presented a TS fuzzy scheme for trajectory tracking of vehicle dynamics. A nonlinear
behavior of vehicle has been presented by a TS fuzzy model. Based on this TS fuzzy model, a fuzzy controller
has been developed. The stability of the closed loop nonlinear systems has been analyzed using Lyapunovs method
combined with an LMI approach. A simulation result is given to illustrate the designed procedure and tracking
performance of the proposed algorithm.
Appendix A
Symbol Name Value
a (mm) Distance, c.g. to front axle 1050
b (mm) Distance, c.g. to rear axle 1630
h (mm) c.g. height 530
M (kg) Total mass 1480
f Nominal friction coefcient 0.02
I
z
(kg m
2
) Moment of inertia 2350
g (m/s
2
) Acceleration due to gravity 8.81
C
f
(N/rad) Front roll stiffness 135000
C
r
(N/rad) Rear roll stiffness 95000
k
1
(N/s m) Portance parameter 0.005
k
2
(N/s m) Drag parameter 0.41
f
b
Distribution coefcient, front/rear 0.6
212 A. El Hajjaji, S. Bentalba / Robotics and Autonomous Systems 43 (2003) 203213
References
[1] T.W. Waneck, Fuzzy guidance controller for an autonomous boat, in: Proceedings of the IEEE Control and Systems, vol. 17, No. 2, 1997.
[2] M. Sugeno, M. Nishida, Fuzzy control of model car, Fuzzy Sets and Systems 86 (1986).
[3] M. Sugeno, M. Murakami, An experimental study and fuzzy parking control using a model car, in: Proceedings of the Industrial Applications
of Fuzzy Control, North-Holland, Amsterdam, 1985, pp. 125128.
[4] L.I. Larkin, Afuzzy logic controller for aircraft ight control, in: Proceedings of the Industrial Applications of Fuzzy Control, North-Holland,
Amsterdam, 1985, pp. 87107.
[5] J. van Amerongen, An autopilot for ships designed with fuzzy sets, IFAC, 1977, pp. 479487.
[6] S. Yasunobu, S. Miyamoto, H. Ihara, Fuzzy control for automatic train operation systems, in: Proceedings of the IFAC Control in
Transportation Systems, 1983, pp. 3339.
[7] D. Nguyen, B. Widow, The truck backer upper an example of self learning in neural network, IEEE Control System Magazine 10 (3) (1990)
1823.
[8] S.K. Kong, B. Kosko, Comparison of fuzzy and neural track backer-upper control systems, in: Proceedings of the IJC NN-90(3).
[9] L. Wang, J. Mendel, Generating fuzzy rules by learning from examples, IEEE Transactions on Systems, Man and Cybernetics 22 (6) (1992)
1992.
[10] O. Yagishita, O. Itoch, M. Sugeno, Applications of fuzzy reasoning to the water purication process, in: Proceedings of the Industrial
Applications of Fuzzy Control, North-Holland, Amsterdam, 1985, pp. 1940.
[11] S. Yasumobu, S.S. Miyamoto, Automatic train operation by predictive fuzzy control, in: Proceedings of the Industrial Applications of
Fuzzy Control, North-Holland, Amsterdam, 1985, pp. 118.
[12] K. Tanaka, M. Sugeno, Stability analysis and design of fuzzy control systems, Fuzzy Sets and Systems 45 (2) (1992) 135156.
[13] K. Tanaka, M. Sano, 3A robust stabilisation problem of fuzzy control systems and its applications to backing up control of truck-trailer,
IEEE Transactions on Fuzzy Systems 2 (2) (1994).
[14] K. Tanaka, M. Sugeno, Stability analysis of fuzzy systems using Lyapunovs direct method, in: Proceedings of the NAFIPS, 1990,
pp. 133136.
[15] H. Wang, K. Tanaka, M. Grifn, Parallel distributed compensation of fuzzy systems via TS Fuzzy model, in: Proceedings of the Fourth
IEEE International Conference on Fuzzy Systems, vol. 2, 1995, pp. 531538.
[16] H. Wang, K. Taznaka, M. Grifn, An approach to fuzzy control of nonlinear systems, stability and design issues, IEEE Transactions on
Fuzzy Systems 4 (1) (1996).
[17] S. Bentalba, A. El Hajjaji, A. Rachid, Controller design and analysis stability of fuzzy systems, application to a mobile robot, in: Proceedings
of the IFAC IMACS Conference on Control of Industrial Systems, Belfort, France, 1997, pp. 716721.
[18] S. Bentalba, A. El Hajjaji, A. Rachid, Fuzzy parking and point stabilization control: test on car dynamics model, in: Proceedings of the
Fifth IEEE Mediterranean CCS, vol. 79, Paphos, Cyprs, July 2123, 1997.
[19] T. Takagi, M. Sugeno, Fuzzy identication of systems and its applications to modeling and control, IEEE Transactions on Systems, Man
and Cybernetics 15 (1985) 116132.
[20] D. Kawamoto, et al., Fuzzy type Lyapunov function, in: Proceedings of the Second IEEE International Conference on Fuzzy Systems,
1993.
[21] S. Boyd, et al., Linear Matrix Inequality in Systems and Control Theory, SIAM, Philadelphia, PA, 1994.
[22] K.J. Hunt, T.A. Johansen, Design and analysis of gain-scheduled control using local controller networks, International Journal of Control
66 (5) (1997) 619651.
[23] M. Bartels, et al., ADAMS: a universal program for the analysis of large displacement dynamics, Ingnieurs Automobile (September 1985)
5964.
[24] A. Alloum, et al., Prolab1: an assistance driving system, in: Proceedings of the Fifth Promotheus Workshop, Munich, Germany, 1991,
pp. 5175.
[25] J.K. Kim, et al., A vehicle dynamic analysis program using Euler angles in xyz convention, in: Proceedings of the First International
Colloquium on Tyre Models for Vehicle Dynamics Analysis, vol. 9, 1991, pp. 515529.
[26] S. Bentalba, A. El Hajjaji, A. Rachid, Design fuzzy controller for vehicle dynamics, in: Proceedings of the International Conference on
Advances in Vehicle Control and Safety (IEEE AVCS98), Amiens, France, July 1998, pp. 333337.
[27] K. Ogata, Modern Control Engineering, Prentice-Hall, Englewood Cliffs, NJ, 1997.
[28] S. Bentalba, A. El Hajjaji, Parking controller design for vehicle dynamics using fuzzy logic, Journal of Automatic Control (a) 40 (2) (1999)
2629.
Ahmed El Hajjaji was born in 1967 in Morocco. He received the Ph.D. and Habilitation degrees in Automatic
Control from the University of Picardie Jules Verne Amiens (France) in 1993 and 2000, respectively. Since 1994, he
has been an Associate Professor in the Institut Universitaire Professionnalis in Amiens (France). His current research
interests include fuzzy control, stability analysis of nonlinear systems, vehicle dynamics, maglev systems and industrial
applications.
A. El Hajjaji, S. Bentalba / Robotics and Autonomous Systems 43 (2003) 203213 213
Said Bentalba was born in 1972 in Casablanca (Morocco). He received a B.S. in electrical engineering from the
University of Picardie Jules Verne in 1994, the M.S. degree in control engineering from the University of Lille (France)
and a Ph.D. degree in Automatic Control from the University of Picardie Jules Verne Amiens (France) in 1999. His
research interests include analysis and design of fuzzy control systems and nonlinear control systems.