Optimization of automatic steering control on a vehicle ... · As one of the automotive technology...

17
Turk J Elec Eng & Comp Sci (2016) 24: 541 – 557 c T ¨ UB ˙ ITAK doi:10.3906/elk-1305-43 Turkish Journal of Electrical Engineering & Computer Sciences http://journals.tubitak.gov.tr/elektrik/ Research Article Optimization of automatic steering control on a vehicle with a steer-by-wire system using particle swarm optimization Fachrudin HUNAINI 1, * , Imam ROBANDI 2 , Nyoman SUTANTRA 3 1 Electrical Engineering Department, Widyagama University, Malang, Indonesia 2 Electrical Engineering Department, ITS, Surabaya, Indonesia 3 Mechanical Engineering Department, ITS, Surabaya, Indonesia Received: 05.05.2013 Accepted/Published Online: 18.12.2013 Final Version: 05.02.2016 Abstract: This paper presents a simulation of the automatic steering control system on a vehicle model using particle swarm optimization (PSO) to optimize the parameters of the control system. The control system involves fuzzy logic control (FLC) and proportional-integral-derivative (PID) control working in a cascade; the main control (FLC) is used to control lateral motion, and the secondary control (PID) is an enhancement to control the yaw motion in vehicle models representing 10 degrees of freedom of the vehicle dynamics system. Optimization by PSO is carried out simultaneously on both control systems. On FLC it is done by setting the width and the center point of the membership function (MF) in the input and output FLC so that the optimal composition of the MF parameter is obtained. The optimization process also determines the constants of optimal gain in the PID control. Testing is done through software in the loop simulation. Based on the test results it can be stated that FLC and PID control tuned by PSO can steer the vehicle rate well in accordance with desired trajectory and the vehicle motion can always be maintained at the specified path. Key words: Automatic steering control, fuzzy logic, PID, PSO 1. Introduction As one of the automotive technology developments of the future, a steer-by-wire system is expected to have a reliable performance. It is an automatic steering control that uses electric motors instead of a mechanical connection to determine the direction of a vehicle’s front wheels [1]. Steer-by-wire systems can be semiautomatic or fully automatic. The semiautomatic steering control system is used in a vehicle that still uses the steering wheel as a plant input, while using an electric motor as the plant output to drive the front wheels’ direction of the vehicle [2]. The fully automatic system uses a programmed trajectory instead of a steering wheel as an input, and an electric motor as an output plant [3]. A lot of research has been conducted on the fully automatic steer-by-wire system. Cai et al. [4] developed an automatic vehicle steering control system for small-scale vehicles. The control system was built using fuzzy logic control (FLC) optimized by the genetic algorithm (GA) method. The performance of this genetic-fuzzy system was superior to that of the proportional-derivative (PD) control because the genetic-fuzzy is a nonlinear controller very suitable for the nonlinear system. The GA method was also used by Karbala et al. [5] and Kodagoda et al. [6], but without the use of optimization methods. Ping et al. [7] stated that small-scale vehicles do not represent actual vehicle dynamics and used a vehicle model with 9 degrees of freedom (DOF) * Correspondence: [email protected] 541

Transcript of Optimization of automatic steering control on a vehicle ... · As one of the automotive technology...

Page 1: Optimization of automatic steering control on a vehicle ... · As one of the automotive technology developments of the future, a steer-by-wire system is expected to have a reliable

Turk J Elec Eng & Comp Sci

(2016) 24: 541 – 557

c⃝ TUBITAK

doi:10.3906/elk-1305-43

Turkish Journal of Electrical Engineering & Computer Sciences

http :// journa l s . tub i tak .gov . t r/e lektr ik/

Research Article

Optimization of automatic steering control on a vehicle with a steer-by-wire

system using particle swarm optimization

Fachrudin HUNAINI1,∗, Imam ROBANDI2, Nyoman SUTANTRA3

1Electrical Engineering Department, Widyagama University, Malang, Indonesia2Electrical Engineering Department, ITS, Surabaya, Indonesia

3Mechanical Engineering Department, ITS, Surabaya, Indonesia

Received: 05.05.2013 • Accepted/Published Online: 18.12.2013 • Final Version: 05.02.2016

Abstract: This paper presents a simulation of the automatic steering control system on a vehicle model using particle

swarm optimization (PSO) to optimize the parameters of the control system. The control system involves fuzzy logic

control (FLC) and proportional-integral-derivative (PID) control working in a cascade; the main control (FLC) is used to

control lateral motion, and the secondary control (PID) is an enhancement to control the yaw motion in vehicle models

representing 10 degrees of freedom of the vehicle dynamics system. Optimization by PSO is carried out simultaneously

on both control systems. On FLC it is done by setting the width and the center point of the membership function

(MF) in the input and output FLC so that the optimal composition of the MF parameter is obtained. The optimization

process also determines the constants of optimal gain in the PID control. Testing is done through software in the loop

simulation. Based on the test results it can be stated that FLC and PID control tuned by PSO can steer the vehicle

rate well in accordance with desired trajectory and the vehicle motion can always be maintained at the specified path.

Key words: Automatic steering control, fuzzy logic, PID, PSO

1. Introduction

As one of the automotive technology developments of the future, a steer-by-wire system is expected to have

a reliable performance. It is an automatic steering control that uses electric motors instead of a mechanical

connection to determine the direction of a vehicle’s front wheels [1]. Steer-by-wire systems can be semiautomatic

or fully automatic. The semiautomatic steering control system is used in a vehicle that still uses the steering

wheel as a plant input, while using an electric motor as the plant output to drive the front wheels’ direction

of the vehicle [2]. The fully automatic system uses a programmed trajectory instead of a steering wheel as an

input, and an electric motor as an output plant [3].

A lot of research has been conducted on the fully automatic steer-by-wire system. Cai et al. [4] developed

an automatic vehicle steering control system for small-scale vehicles. The control system was built using fuzzy

logic control (FLC) optimized by the genetic algorithm (GA) method. The performance of this genetic-fuzzy

system was superior to that of the proportional-derivative (PD) control because the genetic-fuzzy is a nonlinear

controller very suitable for the nonlinear system. The GA method was also used by Karbala et al. [5] and

Kodagoda et al. [6], but without the use of optimization methods. Ping et al. [7] stated that small-scale

vehicles do not represent actual vehicle dynamics and used a vehicle model with 9 degrees of freedom (DOF)

∗Correspondence: [email protected]

541

Page 2: Optimization of automatic steering control on a vehicle ... · As one of the automotive technology developments of the future, a steer-by-wire system is expected to have a reliable

HUNAINI et al./Turk J Elec Eng & Comp Sci

of vehicle dynamics. Testing was conducted using the software and hardware in the loop simulations because

it could be done repeatedly without risk of accidents, at lower costs, and the data obtained was real. The

GA optimization could not be done in the online system and so it was developed using neural network-back

propagation; the control system adjusted the lane keeping well and was acceptable to the transient response.

Adriansyah et al. [8] determined that the GA optimization method required a lot of computation steps and

simplified it using particle swarm optimization (PSO). PSO has the ability to achieve fast convergence because

this method only works depending on the position and velocity functions. The PSO-fuzzy algorithm design was

able to make the robot move as directed and could coordinate those movements effectively according to the

conditions faced.

In the current paper we present a model of a fully automatic steer-by-wire system using simulation of

automatic steering control of a vehicle model with 10 DOF, consisting of 7-DOF of the vehicle ride model and

3-DOF of the vehicle handling model [9,10]. The structure of the developed control system consists of two stages

in a cascade architecture. They are the lateral motion control (to eliminate unwanted lateral movement and be

used as the setting point of the second control) and the yaw motion control as a complement steering control

system. The control system involves the PSO to tune the parameters of FLC (in the control of lateral motion)

and of the proportional-integral-derivative (PID) controller (to control the yaw motion). The expected results

of the simulation automatic steering control using the FLC and PID control tuned by the PSO can improve the

vehicle dynamic performance.

2. Vehicle dynamic model

Based on the concept of vehicle dynamics, the vehicle model was built as a plant of the automatic steering

control system consisting of the vehicle ride model and the vehicle handling model.

2.1. Vehicle ride model

The vehicle ride model is represented as a 7-DOF system expressed in mathematical equations consisting of

seven equations in the car body with a freedom of movement to heave or bounce, pitch, roll, and move in vertical

direction for each wheel [9,10] as shown in Figure 1.

mufr

Ksfr Csfr

Zufr

ZrfrKtfr

Zsrr

Zsrl

Zsfr

Zsfl

mufl

Ksfl Csfl

Zufl

ZrflKtfl

mufr

Ksrr Csrr

Zurr

ZrrrKtrr

murl

Ksrl Csrl

Zurl

ZrrlKtrl

z

x

y

ϕ

z

θ

Figure 1. Vehicle ride model.

542

Page 3: Optimization of automatic steering control on a vehicle ... · As one of the automotive technology developments of the future, a steer-by-wire system is expected to have a reliable

HUNAINI et al./Turk J Elec Eng & Comp Sci

Bouncing of the car body (Zs) is represented as:

msZs = −2 (Ks,f +Ks,r)Zs − 2 (Cs,f + Cs,r) Zs + 2 (aKs,f − bCs,r) θ + 2 (aCs,f − bCs,r) θ

+KsfZu,fl + Cs,f Zu,fl +KsfZu,fr + Cs,f Zu,frKsrZu,rl + Cs,rZu,rl +KsrZu,rr

+Cs,rZu,rr + Fpfl + Fpfr + Fprl + Fprr, (1)

where pitching of the car body (θ) is as follows:

Iyy θ = 2 (aKs,f − bKs,r)Zs + 2 (aCs,f + bCs,r) Zs − 2(a2Ks,f − b2Ks,r

−2(a2Cs,f − b2Cs,r

)θ − aKsfZu,fl − aCs,f Zu,fl − aKsfZu,fr − aCs,f Zu,fr

+bKsrZu,rl + bCs,rZu,rl + bKsrZu,rr + bCs,rZu,fr − (Fpfl + Fpfr) lf

+(Fprl + Fprr) lr (2)

Rolling of the car body (ϕ) is expressed as:

Ixxφ = −0.5w2 (Ks,f +Ks,r)φ− 0.5w2 (Cs,f + Cs,r) φ+ 0.5wKs,fZu,fl + 0.5wCs,f Zu,fl

−0.5wKs,fZu,fr − 0.5wCs,f Zu,fr + 0.5wKs,rZu,rl + 0.5wCs,rZu,rl − 0.5wKs,rZu,rr

−0.5wCs,rZu,rr + (Fpfl + Fprl)w

2− (Fpfr + Fprr)

w

2(3)

Vertical direction movement for each wheel is:

muZu,fl = Ks,fZs + Cs,f Zs − aKs,fθ − aCs,f θ + 0.5wKs,fφ+ 0.5wCs,f φ

− (Ks,f +Kt)Zu,fl−Cs,f Zu,fl +KtZr,fl − Fpfl (4)

muZu,fr = Ks,fZs + Cs,f Zs − aKs,fθ − aCs,f θ − 0.5wKs,fφ− 0.5wCs,f φ

− (Ks,f +Kt)Zu,fr−Cs,f Zu,fr +KtZr,fr − Fpfr (5)

muZu,rl = Ks,rZs + Cs,rZs + bKs,rθ + bCs,r θ + 0.5wKs,rφ+ 0.5wCs,rφ

− (Ks,r +Kt)Zu,rl−Cs,rZu,rl +KtZr,rl − Fprl (6)

muZu,rr = Ks,rZs + Cs,rZs + bKs,rθ + bCs,r θ − 0.5wKs,rφ− 0.5wCs,rφ

− (Ks,r +Kt)Zu,rr−Cs,rZu,rr +KtZr,rr − Fprr (7)

2.2. Vehicle handling model

The vehicle handling model is represented as a 3-DOF system, meaning that it has three mathematical equations

consisting of the equations of the movements of the car body: lateral, longitudinal, and yaw motions [11,12],

as shown in Figure 2. The lateral and longitudinal motions are represented along the x and y axes, expressed

as lateral acceleration (ay) and longitudinal acceleration (ax), so that the lateral and longitudinal motions can

be obtained by a double integration of the lateral and longitudinal accelerations.

543

Page 4: Optimization of automatic steering control on a vehicle ... · As one of the automotive technology developments of the future, a steer-by-wire system is expected to have a reliable

HUNAINI et al./Turk J Elec Eng & Comp Sci

MzrlFxrl

Fxrl

MzrlFxrl

Fxrl

Mzrl

FxrlFxrl

Mzrl

FxrlFxrl

δ

vy

vx

�r

CG

lr lf

w

Figure 2. Vehicle handling model.

Lateral and longitudinal accelerations are expressed as follows:

ay = (Fyfl cos δ − Fxfl sin δ + Fyfr cos δ − Fxfr sin δ + Fyrl + Fyrr) /mt (8)

ax = (Fxfl cos δ − Fyfl sin δ + Fxfr cos δ − Fyfr sin δ + Fxrl + Fxrr) /mt (9)

An angular movement of the vehicle, which is based on the vertical axis, is called a yaw motion (r) [13] and

can be obtained by the integration of r and r :

r =1

Jz

[w2Fxfl cos δ −

w

2Fxfr cos δ +

w

2Fxrl −

w

2Fxrr +

w

2Fyfl sin δ −

w

2Fyfr sin δ

−lrFyrl − lrFyrr+lfFyfl cos δ+lfFyfr cos δ−lfFxfl sin δ−lfFxfr sin δ

+Mzfl +Mzfr +Mzrl + Mzrr] (10)

Definitions of variables are shown in Table 1.

Based on the above equations (Eqs. (1)–(10)), a full vehicle model was established as the plant of the

automatic steering control systems using MATLAB-SIMULINK software. The structure of the vehicle model

that was built (consisting of a 7 DOF ride model and a 3 DOF handling model) was connected using Calspan

tire models. This means that the vehicle model is a combination of the behavior of the tire vertical (as a

representation of a linear spring without damping) with the lateral and longitudinal behaviors using a Calspan

tire model [7,9,10], by taking δ as the steering input to the plant (Eqs. (8)–(10)), and the plant output is

expressed in three movements of the vehicle: the longitudinal motion (x) in Eq. (8), lateral motion (y) in Eq.

(9), and the yaw motion (r) in Eq. (10). Yaw motion will affect the moment of inertia around the z axis (Js),

which will lead to changes in pitch and roll angles at the body center of gravity (θ and φ) [10], and so it will

be more influenced by the entire force in the direction of the z axis (bouncing, pitching, rolling, and all vertical

direction movements for each wheel, Eqs. (1)–(7)).

544

Page 5: Optimization of automatic steering control on a vehicle ... · As one of the automotive technology developments of the future, a steer-by-wire system is expected to have a reliable

HUNAINI et al./Turk J Elec Eng & Comp Sci

Table 1. Definitions of variables.

Variables DefinitionsZs sprung mass displacement at body center of gravity

Zs sprung mass velocity at body center of gravity

Zs sprung mass acceleration at body center of gravity

Zu,ij unsprung masses displacement

Zu,ij unsprung masses velocityZr,ij unsprung masses accelerationZr,ij road profiles at each tireKs,ij suspension spring stiffness at each tireCs,ij suspension damping at each tireIxx roll axis moment of inertiaIyy pitch axis moment of inertiaw wheel base of sprung massFij suspension force at each cornerms sprung mass weightmt total vehicle massMzij self-aligning momentsFpij pneumatic actuator forces at each cornerFxij tire forces in longitudinal directionFyij tire forces in lateral direction

i indicating front or rear

j indicating left or rightJz moment of inertia around the z-axisδ steering anglea distance between front of vehicle and center of gravity.b distance between rear of vehicle and center of gravity.θ pitch angle at body center of gravity

θ pitch rate at body center of gravity

θ roll acceleration at body center of gravityφ roll angle at body center of gravityφ roll rate at body center of gravityφ roll acceleration at body center of gravity

3. The proposed control and optimization system

An automatic steering control system of the vehicle model was built into the simulation using two cascaded

controllers: the FLC and the PID control [14]. The control system is needed to set the direction of the front

wheels of the vehicle to match the required trajectory (look up table x–y trajectory) in the form of a double

line change.

The plant output is expressed in the yaw, the lateral, and the longitudinal motions, so the functions of

the control system are as follows: FLC is used to suppress the error among lateral motions (y) associated with

the longitudinal motion (x) of the required trajectory, while the PID control is used to accelerate the rise time,

minimize errors, and reduce the overshoot/undershoot among yaw motions of the setting point, which is the

output from the FLC. The ideal condition on the output FLC is that if an error has been minimized, the vehicle

has no lateral motion (y), meaning that the vehicle also does not have the yaw motion, so that the output of

the FLC is used as the setting point on the yaw motion controls. Getting the optimal control depends on the

545

Page 6: Optimization of automatic steering control on a vehicle ... · As one of the automotive technology developments of the future, a steer-by-wire system is expected to have a reliable

HUNAINI et al./Turk J Elec Eng & Comp Sci

design of the composition of each parameter control system, and in this paper the determination of parameter

values in both FLC and PID controls is done by tuning the values of these parameters to achieve the optimal

value by using the PSO. A block diagram of the control structure that was developed in the automatic steering

control simulation is shown in Figure 3.

ΔER, ΔDE, ΔOT

Particle Swarm Optimization

The best value of ΔER, ΔDE, ΔOT, ΔKp, ΔKi, ΔKd

PID+ -

+ -

du/dt

x

Steering Input y (δ)

yaw

x y

yaw

Look up table

x – y Trajectory

Error y

Error yaw

ITAE Criteria

FLC Control

PID Control

initialization:

Random of Particle Position

(DER, DDE, DOT, Kp, Ki, Kd)

ΔKp, ΔKi, ΔKd

Vehicle Model

With 10-DOF

1

2

3

4

5

6 7

Figure 3. The control and optimization structure for automatic steering on a vehicle model.

3.1. The main control using FLC with tunable MF

FLC is the main control on the developed control structure that is used to minimize error among the input and

output of the plant, i.e. the desired trajectory towards lateral motion. The main structure of the FLC includes

[15]:

-Fuzzification crisp variables: the error E(n) and the delta error DE(n) = E(n) – (En – 1) are converted

into fuzzy variables using the technique membership functions. Membership function (MF) is a function to

express the degree of fuzzy membership. The forms of MF used in this paper are triangular and trapezoidal

shapes. Each MF on the input (error and error delta) and the output consists of seven triangular MFs. The

following terms refer to MFs: negative small (NS), zero (Z), and positive small (PS).

In this paper, the shape of each MF can be changed based on the width and the location of the midpoint,

which depend on the multiplier of the variable domain as shown in Figure 4 for the triangular shape and Figure

5 for the trapezoidal shape. ∆ is a multiplier factor function proposed in this paper as a factor to determine

the shape of a MF. This means that all parameters of each MF are a function of ∆.

WLn-1 Cn-1 WRn-1 WLn Cn WRn

Wn-1 Wn

Degree ofmembership

(µx)

1

0 Domain (x)

Figure 4. Parameter of triangular membership function.

546

Page 7: Optimization of automatic steering control on a vehicle ... · As one of the automotive technology developments of the future, a steer-by-wire system is expected to have a reliable

HUNAINI et al./Turk J Elec Eng & Comp Sci

Degree ofmembership

(µx)

1

0 Domain (x)

Cn-1

Cn-1

Wn-1

Wn-1

Cn

Cn

Wn

Wn

Figure 5. Parameter of trapezoidal membership function.

Determination of the width and the midpoint on each MF is expressed as the following equation:

Changes of the trapezoidal and triangular midpoint are:

Cnew = Cinitial ×∆ (11)

Trapezoidal and triangular width changes are:

Wnew = Winitial ×∆(for trapezoidal MF) (12)

Wnew = WRnew −WLnew(for triangular MF) (12a)

WRnew = WRinitial ×∆ (13)

WLnew = WLinitial ×∆ (14)

where C, WR, and WL are the midpoint, wide right, and wide left of the midpoint respectively. The subscript

”initial” means the initial value, and the ”new” is the new value following the change of the value of ∆.

Therefore, when the ∆ value changes, the parameters of each MF will change, including changes to the midpoint

and the width of the shape (W ) of the MF. The picture changes of ∆ are shown in Figure 6.

The value ∆i (∆ER , ∆DE , ∆OT ) consists of: ∆ER as multiplicative factors to MF parameters of error

input, ∆DE as multiplicative factors to MF parameters of delta error input, and ∆OT as multiplicative factors

to MF parameters of output FLC.

The values of multiplier factors ∆ER , ∆DE , and ∆OT can be determined by trial and error, but in this

paper the values of multiplier factors were obtained through a learning process repeated until the optimal values

were reached by using the PSO.

- A set of fuzzy rules consisting of several fuzzy rules grouped into base rules that are the basis of decision

making (inference process) to activate the control signal output from a condition input. Thus, the total

required rule base is 9 rules. The rule base of the built FLC is presented in Table 2.

- Defuzzification is the process of changing a fuzzy output variable back into a crisp variable.

547

Page 8: Optimization of automatic steering control on a vehicle ... · As one of the automotive technology developments of the future, a steer-by-wire system is expected to have a reliable

HUNAINI et al./Turk J Elec Eng & Comp Sci

–2.5 –2 –1.5 –1 –0.5 0 0.5 1 1.5 2 2.5

–1 –0.5 0 0.5 1

–4 –3.5 –3 –2.5 –2 –1.5 –1 –0.5 0 0.5 1 1.5 2 2.5 3 3.5 4

–5 –4.5 –4 –3.5 –3 –2.5 –2 –1.5 –1 –0.5 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5

Degree ofmembership

(µx )

Domain (x)

Domain (x)

Domain (x)

Domain (x)

NS Z PS

NS Z PS

NS Z PS

NS Z PS

Δ = 2

Δ = 1.5

Δ = 1

Δ = 0.5

Figure 6. Change in the width and center of the membership function.

Table 2. Rule base of fuzzy logic controller.

Delta Errorerror NS Z PSNS NS NS ZZ NK Z PSPS Z PS PS

The defuzzification method used in this paper is the Centroid defuzzification, which is a method of looking

for the center of gravity (CoG) of the aggregate set, as shown in the following equation:

CoG =x∫µ (x) dx∫µ (x) dx

(15)

3.2. The second control using PID control with tunable gain constants

In the proposed control structure, there is a second control serving to refine the control system. PID control is

a simple control on duty to suppress movement outside the lateral motion. PID will work to control the yaw

motion towards the setting point generated from the output of FLC.

548

Page 9: Optimization of automatic steering control on a vehicle ... · As one of the automotive technology developments of the future, a steer-by-wire system is expected to have a reliable

HUNAINI et al./Turk J Elec Eng & Comp Sci

PID control is known as a system with superior control measures [16], including proportional control (P)

to speed up the system response rate (rise time), integral control (I) to minimize or eliminate the steady-state

error of the system, and derivative control (D) to reduce the overshoot/undershoot. Performance control of P,

I, and D is dependent on the determination of the constants Kp, Ki, and Kd. In this paper the values of these

constants are determined by means of learning on the control system or of tuning parameters to achieve the

optimal composition of a constant value by using the PSO. The three constants are referred to as Kp = ∆Kp ,

Ki = ∆Ki , and Kd = ∆Kd . This is necessary because if ∆Kp is too large, it will lead to instability of

overshoot and even of the system. On the other hand, if the value of ∆Kp is too small, it will reduce the

precision adjustment and place the system in a static state with a loss of dynamic characteristics. At constant

values of ∆Ki , if it is too big, it will cause the response to overshoot, and if ∆Ki is too small, it will be difficult

to eliminate any steady-state error in the system, which will affect the accuracy of the system. If ∆Kd is too

large, it will slow down the response and the capability of the system will be reduced, as shown in Figure 7.

Figure 7. PID control.

3.3. Optimization of the control system parameters using PSO

The optimization method based on swarm intelligence algorithm is behaviorally inspired as an alternative to

genetic algorithms, which are often called evolution-based procedures [17]. This model is simulated in space with

a certain dimension with a number of iterations, so that at each iteration the particle’s position will increasingly

lead to the intended target.

PSO is an optimization technique constructed by Dr Eberhart and Dr Kennedy in 1995, and inspired by

the social behavior of a flock of birds or fish [18]. Suppose that there is a flock of fish randomly looking for food

in an area and there is only one source of food there. The fish do not know where precisely the food is, but

they know how far they are from it in each iteration. Therefore, the most effective strategy is to follow the fish

closest to the food.

PSO is initialized with a population from random solutions and searches for the most optimal solution

to update members of the population. Each random solution is called a particle. Each particle moves in the

problem space and has the best value that has been achieved; this value is called pbest. The best other value

is the best value achieved by any particle in the population; this value is called gbest. PSO has a velocity that

would change the position of the particle at each iteration. At each iteration, the values of velocity and position

are updated.

The PSO algorithm consists of velocity and position [18]. The basic equation for velocity is:

vij (k + 1) = w × vij (k) + L1ij ×R1ij × (pij −∆ij (k)) + L2ij ×R2ij × (G−∆ij (k)) (16)

549

Page 10: Optimization of automatic steering control on a vehicle ... · As one of the automotive technology developments of the future, a steer-by-wire system is expected to have a reliable

HUNAINI et al./Turk J Elec Eng & Comp Sci

The basic equation for position is:

∆ij (k + 1) = ∆ij (k) + vij (k + 1) (17)

where i = index variable, j = index particle, k = iteration, v = velocity of the particle, ∆ = position of

the particle, p = the best position of the particle (pbest), G = the best position of the swarm (gbest, best of

all particle), L1,2 = learning rates (social and cognitive constant), R1,2 = random intervals [0 – 1], and W =

inertia.

In this paper, PSO is used to optimize the parameters of the control system by first determining the

initial population of random particles, which are then evaluated on the model of the vehicle. The population

of particles, hereafter referred to as swarm, represents the 6 parameters of the control system that will be

optimized: three parameters of control in FLC needed to determine the midpoint and width of MF (i.e. ∆ER ,

∆DE , ∆OT ) and three PID control parameters (constants to determine the gain of Kp, Ki, and Kd, i.e. ∆Kp ,

∆Ki , ∆Kd). Furthermore, particles will be updated by using Eqs. (16) and (17), and will be reevaluated

on the automatic steering control of the vehicle models. Evaluation results are compared with the previous

evaluation to choose the smallest error and the position of the best particle. Updating and evaluation processes

are repeated until the maximum iteration. During the iteration process a selection of the smallest error will

provide a change in the constant error, meaning the selection process of the error has reached convergence. In

other words, the position of the particle has reached the best position so that the six parameters have reached

optimal values or the control system can work optimally.

The optimization steps are as follows:

Step 1. Initialization parameters of PSO

The optimization parameters of the control system using the PSO are as follows: the number of particles

is determined to be 30, the maximum iteration is set to 30, the social and cognitive constant is set to 1, the

inertia value is determined to be 0.5, and the number of variables is ∆i = (∆ER ; ∆DE ; ∆OT ; ∆Kp ; ∆Ki ;

∆Kd). The vehicle parameters are shown in Table 3.

Step 2. Initialization swarm

Initialization swarm consists of particles and velocities initialization, to initialize a population (array) of

particles with random positions and velocities of iand jdimension moves in the problem space. The particles

positions and velocities are expressed in the following equations:

∆ij = ∆min + (∆max −∆min)× randij (18)

Vij = Vmin + (Vmax − Vmin)× randij ; (i = 6andj = 30) (19)

At this step we obtained:

The best local position (i , :) = particles position (i , :).

Step 3. Evaluation of population initialization

Each particle was evaluated on the control system to get the fitness of each particle. A measure of fitness

of the particles is completed using the minimizing integral of time-weighted absolute error (ITAE) criterion [19].

Performance on the ITAE index is mathematically expressed as follows:

550

Page 11: Optimization of automatic steering control on a vehicle ... · As one of the automotive technology developments of the future, a steer-by-wire system is expected to have a reliable

HUNAINI et al./Turk J Elec Eng & Comp Sci

Table 3. Vehicle model simulation parameters.

No. Parameter Value1 Vehicle mass 1700 kg2 Vehicle sprung mass 1520 kg3 Coefficient of friction 0.854 Front track width 1.5 m5 Rear track width 1.5 m6 Tire rolling radius 0.285 m7 Wheelbase 2.7 m8 Distance from front axle to center of gravity 1.11 m9 Distance from rear axle to center of gravity 1.59 m10 Pitch stiffness constant 4000 Nm−1

11 Roll stiffness constant 2400 Nm−1

12 Center of gravity height 0.55 m13 Pitch moment of inertia 425 kg m2

14 Roll moment of inertia 425 kg m2

15 Yaw moment of inertia 3125 kg m2

16 Wheel moment of inertia 1.1 kg m2

17 Pitch damping constant 170,000 Nm−1 s−1

18 Roll damping constant 900,00 Nm−1 s−1

ITAE =

∫ ∞

0

t |e (t)| dt (20)

where t is the time and e(t) is the error of the difference between reference and controlled variable.

In this step, we will obtain:

The best local fitness (i , :) = fitness of particles (i , :);

[The best global fitness, index] = min (The best local fitness (i , :));

The best global position (i) = The best local position (i , index);

Furthermore, the best global position is acquired and is updated using Eqs. (16) and (17).

Step 4. Evaluation of new particles

At this stage, any new particles will be reevaluated in the control system up to the maximum number of

iterations. In each iteration the particle positions are evaluated using the ITAE to obtain the fitness of particles,

then:

If fitness of particles < The best local fitness;

then The best local fitness = fitness of particles;

and the best local position = particles position;

The best global fitness for each iteration kth is obtained by:

[The best global fitness particles (k), index] = min (The best local fitness);

If The best global fitness particles (k) < The best global fitness;

then The best global fitness = The best global fitness particles (k);

and The best global position (i) = The best local position (i , index);

In the next iteration the best global position is updated again (using Eqs. (16) and (17)) until the

maximum number of iterations. During the whole process it is shown that The best global fitness has reached

551

Page 12: Optimization of automatic steering control on a vehicle ... · As one of the automotive technology developments of the future, a steer-by-wire system is expected to have a reliable

HUNAINI et al./Turk J Elec Eng & Comp Sci

convergence at iteration 6, as shown in Figure 8. This means that the particle position corresponding to the

index of the best global fitness is an optimal particle position (∆i).

0 5 10 15 20 25 300

1

2

3

4

5

6

7

8 x 10–51 Convergence of PSO Algorithm Graphic

Iteration

Fit

nes

s F

un

ctio

n

Convergence onthe 6th iteration

Figure 8. Convergence of PSO algorithm graphic.

Here are the six optimal values acquired:

∆ER = 1.4932 ∆Kp = 521.5325

∆DE = 67.4870 ∆Ki = 10.1314

∆OT = 0.7617 ∆Kd = 6.6600

The obtained ∆ER,∆DE , and ∆OT are parameters of the multiplying factors to determine the positions

of the width and the midpoint of each MF of the input and output FLC. The shape of the optimal MF can be

seen in Figure 9 and the values of the width and midpoint of the MF, which are optimal in FLC, are shown in

Table 4. The obtained ∆Kp , ∆Ki , and ∆Kd are parameter expressions for proportional, integral, and derivative

controls.

�e Membership Function of FLC: 2 inputs, 1 outputs, 9 rules

–4 –2 0 2 4

0

0.2

0.4

0.6

0.8

1

Error of FLC Input

–100 –50 0 50 100

0

0.2

0.4

0.6

0.8

1

Delta Error of FLC Input

–3 –2 –1 0 1 2 3

0

0.2

0.4

0.6

0.8

1

Output of FLC

Fuzzy Logic Control

(Mamdani)

9 rules

Figure 9. The results of the MF that are optimal in FLC.

552

Page 13: Optimization of automatic steering control on a vehicle ... · As one of the automotive technology developments of the future, a steer-by-wire system is expected to have a reliable

HUNAINI et al./Turk J Elec Eng & Comp Sci

Table 4. The results of the values of width and midpoint of the MF that are optimal in FLC.

ERROR INPUT∆ER = 1.4932 Width Left Midpoint Width RightNS –0.7466 –0.7466 0Z –0.7466 0 0.7466PS 0 0.7466 0.7466DELTA ERROR INPUT∆DE = 67.4870 Width Left Midpoint Width RightNS –33.7435 –33.7435 0Z –33.7435 0 33.7435PS 0 33.7435 33.7435OUTPUT∆OT = 0.7617 Width Left Midpoint Width RightNS –0.38085 –0.38085 0Z –0.38085 0 0.38085PS 0 0.38085 0.38085

4. Simulation results and discussion

PSO performed optimization until the maximum of 30 iterations on the control structure of a model of an

automatic steering vehicle with a plant input look up table (x− y trajectory) at a constant speed of 13.88 m/s.

This means that the control system has made the learning process with random parameters, and at the end

it was able to get the values of the optimal parameters such that the value of lateral motion has the smallest

error. The measure of error used in the optimization process was ITAE, which reached convergence at the fifth

iteration, where the ITAE value was 2.3829 e−42 . This value corresponds to the value of continuous root mean

square error (C-RMS error) of 0.003819.

Furthermore, the six parameters obtained from the optimization process are defined as parameters of

the system control (called FLC-PID tuned PSO) of the model automatic steering control. The simulation of

the vehicle steering control system is done with input look up table x − y trajectory (double lane change and

sine wave trajectory, where the amplitude and frequency of the sine wave are 2 m and 0.04 Hz, respectively)

with speeds varying from 10 to 70 km/h. The performance of the simulation is compared against the model of

automatic steering control of a vehicle control system without optimization (called PID-PID and FLC-PID) as

shown in Table 5.

Tests were conducted through software-in-the-loop simulation (SILS). Based on the test results it can

be stated that the use of FLC on lateral motion and PID control on yaw motion, tuned by PSO (FLC-PID

tuned by PSO), allows the movement of the vehicle to be always maintained in accordance with the desired

trajectory with a smaller error and a higher speed as compared with manually tuned by PSO FLC and PID

(FLC-PID) and PID-PID control systems. Since the performance of the main control system is the performance

of the lateral motion that is affected by 9 out of 10-DOF, this paper displays plant input (double lane change

trajectory) against plant output (lateral motion), as shown in Figure 10. Figure 11 shows the first maneuver

of the double lane change trajectory and Figure 12 is the second maneuver. The characteristic of the control

system is shown in Figure 13.

553

Page 14: Optimization of automatic steering control on a vehicle ... · As one of the automotive technology developments of the future, a steer-by-wire system is expected to have a reliable

HUNAINI et al./Turk J Elec Eng & Comp Sci

Table 5. Benchmark of the control system.

No.Velocity

C-RMS ErrorDouble Lane Change

km/h m/s PID – PID FLC – PID FLC – PID tuned PSO1 10 2.77 0.30970 0.056450 0.0532802 20 5.55 0.64640 0.015240 0.0104503 30 8.33 0.02211 0.008329 0.0064194 40 11.11 0.01743 0.005529 0.0045505 50 13.89 0.01096 0.004480 0.0038196 60 16.67 0.01008 0.003849 0.0033617 70 19.45 time out time out time out

No.Velocity

C-RMS ErrorSINE WAVE(amplitude and freq.: 2 m and 0.04 Hz)

km/h m/s PID – PID FLC – PID FLC – PID tuned PSO1 10 2.77 divergent 0.016810 0.01339002 20 5.55 0.010640 0.006029 0.00542303 30 8.33 0.005704 0.003673 0.00342804 40 11.11 0.004244 0.002668 0.00252305 50 13.89 0.003741 0.002115 0.00203006 60 16.67 0.003444 0.001784 0.00171707 70 19.45 0.003128 0.001589 0.00171408 80 22.22 time out time out time out

600 700 800 900 1000 1100 1200

–3

–2.5

–2

–1.5

–1

–0.5

0

Time (s)

mo

tio

n (

s)

Input and output of lateral motion

Desired Trajectory of DLC

Output of PID–PID manually tunedOutput of FLC–PID manually tuned

Output of FLC–PID tuned by PSO

700 720 740 760 780 800 820–0.5

–0.45

–0.4

–0.35

–0.3

–0.25

–0.2

–0.15

–0.1

–0.05

0

Input and output of lateral motion

of Double Lane Change (DLC) on the first maneuver

Time (s)

Lat

eral

Mo

tio

n (

m)

Desired Trajectory of DLCOutput of PID–PID manually tunedOutput of FLC–PID manually tunedOutput of FLC–PID tuned by PSO

Figure 10. Input double lane change trajectory and out-

put lateral motion.

Figure 11. The first maneuver of double lane change.

A simulation that has been done above shows that the control system can be replaced with the desired

control system to compare the error and speed that can be achieved. It should be noted that the simulation

554

Page 15: Optimization of automatic steering control on a vehicle ... · As one of the automotive technology developments of the future, a steer-by-wire system is expected to have a reliable

HUNAINI et al./Turk J Elec Eng & Comp Sci

of the model of the automatic steering control system is not using LPF because “no noise” conditions are

assumed. The simulation described in this paper invites further research in the form of testing hardware in

the loop simulations (HILS). Before HILS, however, one issue of note is the need for a more real trajectory

modification. For example, when the output of the control system in Figure 13 is connected to the actuator, the

response of the actuator cannot be observed because the output voltage is very brief. The double lane change

trajectory used has extreme maneuvers (necessary only for software testing), and so the form of trajectory

maneuvers should be changed to become more real with a given radius. A series of additional equipment that

is designed for HILS testing, as in the prototype image steer-by-wire system, is shown in Figure 14.

980 1000 1020 1040 1060 1080 1100 1120 1140 1160–3.1

–3

–2.9

–2.8

–2.7

–2.6

–2.5

Time (s)

Lat

eral

Mo

tio

n (

m)

Input and output of lateral moton of Double Lane Change (DLC) on the second maneuver

Desired Trajectory of DLCOutput of PID–PID manually tunedOutput of FLC–PID manualyl tunedOutput of FLC–PID tuned by PSO

0 500 1000 1500 2000 2500 3000–0.5

0

0.5

Time (s)

Mot

ion

(s)

0 500 1000 1500 2000 2500 3000–0.05

0

0.05

0 500 1000 1500 2000 2500 3000–4

–2

0

2Characteristics of "e Control System

0 500 1000 1500 2000 2500 3000–4

–2

0

2

1– Desired Trajectory of DLC

2– Lateral Motion Output

3– Lateral Motion Error

4– FLC Output (Setting point of Yaw Motion)

0 500 1000 1500 2000 2500 3000–2

0

2x 104

Time (s)

Mo

tio

n (

m)

0 500 1000 1500 2000 2500 3000–0.5

0

0.5

0 500 1000 1500 2000 2500 3000–0.1

0

0.15– Yaw Motion Output

6– Yaw Motion Error

7– PID Output (Control System Output)

Figure 12. The second maneuver of double lane change. Figure 13. Characteristic of the control system.

5. Conclusion

The simulation results of the optimization of the control system on the vehicle steering system using PSO

indicate that the input and output parameters of the FLC (which include the values of the location and width

of each MF) and the PID control parameters (which include the values of the gain-constants) may be obtained

optimally, quickly, and easily so that lateral motion error and yaw motion error can be reduced to lower

values as compared with the fuzzy-PID control system (FLC-PID) and the PID-PID control system that are

tuned manually. Thus, vehicle movement can be maintained in accordance with the desired trajectory and the

performance of the vehicle dynamics is better.

555

Page 16: Optimization of automatic steering control on a vehicle ... · As one of the automotive technology developments of the future, a steer-by-wire system is expected to have a reliable

HUNAINI et al./Turk J Elec Eng & Comp Sci

Figure 14. The prototype of a steer-by-wire system proposed for HILS.

References

[1] Bertoluzzo M, Buja G, Menis R, Sulligoi G. Approach to steer-by-wire system design. In: IEEE International

Conference on Industrial Technology ICIT 2005; 14–17 December 2005; Hong Kong: IEEE. pp. 443–447.

[2] Park Y, Jung I. Semi-active steering wheel for steer-by-wire system. Technical paper SAE International, Warrendale,

PA 2001; 01: 3306.

[3] Hingwe P, Tan HS, Packard AK, Tomizuka M. Linear parameter varying controller for automated lane guidance,

experimental study on tractor-trailers. IEEE Contr Syst T 2002; 10: 793–806.

[4] Cai L, Rad AB, Chan WL. A genetic fuzzy controller for vehicle automatic steering control. IEEE T Veh Technol

2007; 56: 529–543.

[5] Karbalaei R, Ghaffari A, Kazemi R. Tabatabaei SH. A new intelligent strategy to integrated control of AFS/DYC

based on fuzzy logic. International Journal of Mathematical, Physical and Engineering Sciences 2007; 1: 47–52.

[6] Kodagoda KRS, Wijesoma WS, Teoh EK. Fuzzy speed and steering control of an AGV. IEEE Contr Syst T 2002;

10: 112–120.

[7] Ping EP, Hudha K, Jamaluddin H. Hardware-in-the-loop simulation of automatic steering control for lanekeeping

manoeuvre, outer-loop, and inner-loop control design. International Journal of Vehicle Safety 2010; 5: 35–59.

[8] Adriansyah A, Amin SHM. Learning of fuzzy-behaviours using Particle Swarm Optimisation in behaviour-based

mobile robot. Int J Intell Syst Technol Appl 2008; 5: 49–67.

[9] Hudha K, Kadir ZA, Said MR, Jamaluddin H. Modelling, validation, and roll moment rejection control of pneu-

matically actuated active roll control for improving vehicle lateral dynamics performance. International Journal of

Engineering Systems Modelling and Simulation 2009; 1: 122.

[10] Ahmad F, Hudha K, Jamaluddin H. Gain scheduling PID control with pitch moment rejection for reducing vehicle

dive and squat. International Journal of Vehicle Safety 2009; 4: 1–30.

[11] Falcone P, Borrelli F, Asgari J, Tseng HE, Hrovat D. Predictive active steering control for autonomous vehicle

systems. IEEE Contr Syst T 2007; 15: 566–580.

[12] Stone MR, Demetriou MA. Modeling and simulation of vehicle ride and handling performance. Presented at the

proceedings of: The 2000 IEEE International Symposium on Intelligent Control; 19–19 July 2000; Rio Patras:

IEEE. pp. 85–90.

556

Page 17: Optimization of automatic steering control on a vehicle ... · As one of the automotive technology developments of the future, a steer-by-wire system is expected to have a reliable

HUNAINI et al./Turk J Elec Eng & Comp Sci

[13] Wang J, Hsieh MF. Vehicle yaw inertia and mass independent adaptive control for stability and trajectory tracking

enhancements. In: American Control Conference, ACC ’09; 10–12 June 2009; St. Louis, MO: IEEE. pp. 689–694.

[14] Hunaini F, Robandi I, Sutantra N. Model and simulation of vehicle lateral stability control. Presented at: The 2nd

APTECS 2010, International Seminar on Applied Technology, Science, and Arts; 21–22 December 2010; Surabaya,

Indonesia: p. 26.

[15] Obaid ZA, Sulaiman N, Marhaban MH, Hamidon MN. Analysis and performance evaluation of PD-like fuzzy logic

controller design based on matlab and FPGA. IAENG International Journal of Computer Science 2010; 37: 146–156.

[16] Xiuwei F, Li F, Feng K. Research of automotive steer-by-wire control based on integral partition PID control.

Presented at: 3rd International Conference on Genetic and Evolutionary Computing, WGEC ’09; 14–17 October

2009; China: IEEE. pp. 561–564.

[17] Amin SHM, Adriansyah A. Particle Swarm Fuzzy Controller for Behavior-based Mobile Robot. Presented at: the

9th International Conference on Control, Automation, Robotics and Vision, ICARCV ’06; Dec. 2006; Singapore,

2006, pp. 1–6.

[18] Kennedy J, Eberhart R. Particle swarm optimization. Presented at: The IEEE International Conference on Neural

Networks, Proceedings; 27 Nov–1 Dec 1995; University of Western Australia, Perth, Western Australia: IEEE. pp.

1942–1948.

[19] Martins FG. Tuning PID controllers using the ITAE criterion. The International Journal of Engineering Education

2005; 21: 867–873.

557