Академический Документы
Профессиональный Документы
Культура Документы
the
F-18[5] and the F-16 [6]. The control performance of Dynamic Inversion (DI) meth
od
is very sensitive to outer loop and inner loop gains . In this paper we used fuz
zy logic
optimal control (OFLC) to tune the outer loop gain in an intelligent way to obta
in a
better control performance. FLCs are developed to utilize human expert knowledge
in
controlling various systems. It is well known that while fuzzy rules are relativ
ely easy
to derive from human experts, the fuzzy MFs are difficult to obtain. Tuning of M
Fs is
a time consuming and often frustrating exercise. To overcome these difficulties
various
techniques have been reported to automate the tuning process of MFs. An adaptive
network based fuzzy inference system (ANFIS) was introduced [7], where an adapti
ve
neural network was used to learn the mapping between the inputs and outputs and
a
Sugeno-type of fuzzy system could be generated based on the neural network. A
quantum neural network was also used to learn the data space of a Tagaki-Sugeno
FLC
[8]. Genetic algorithm has been used in the automatic design of FLCs [9,10] in t
he
areas of mobile robotics. In the current work, we introduce a fuzzy control law
with
rules obtained based upon the human experienced. Then, the MFs parameters of the
introduced design will be optimized using PSO technique. In fact, PSO is a popul
ation
based stochastic optimization technique developed by Eberhart and Kennedy [11,12
].
Based on their description, particle swarm optimization imitates human (or insec
ts)
social behavior. Individuals interact with one another while learning from their
own
experience, and gradually the population members move into better regions of the
problem space. The swarm of PSO can be envisioned as multiple birds (particles)
that
search for the best food source (optimum) by using their inertia, their knowledg
e, and
the knowledge of the swarm.
Single particles behave similarly because traditionally they share the same
configuration. While searching for food, the birds are either scattered or go to
gether
before they locate the place where they can find the food. While the birds are s
earching
for food from one place to another, there is always a bird that can smell the fo
od very
well and having the better food resource information, that is the bird is percep
tible of
the place where the food can be found, in Figure 1 you can see a flock of swarms
using
PSO.
Optimal Fuzzy Logic Tuning of Dynamic Inversion Flight Controller 9
Figure 1: The flock swarms using PSO.
Since they are transmitting the information, especially the good information at
any
time while searching the food from one place to another, conducted by the good
information, the birds will eventually flock to the place where food can be foun
d. Due
to its simplicity in implementation, PSO has gained popularities in engineering
applications, such as in image processing [13] and in system modeling [14]. A nu
mber
of publications have also been reported in using PSO to automatically tune the F
LC
parameters [15,16,17,18]. These publications are focused on tuning the parameter
s
involved in the TS-type fuzzy controllers. In general, the PSO is used to perfor
m the
learning tasks that are usually associated with the NN in the TS FLCs. Although
there
are research results in the area of automatic fuzzy MFs optimizing, most of them
are in
the area of TS type of fuzzy controllers. To the best of our knowledge, there is
no
report on using PSO for the Mamdani-type of fuzzy controller MFs tuning.
In this paper, we use PSO to automatically tune MFs of the proposed control law.
The OFLCDI then is compared with classic DI .The paper is organized as follows:
in section II we proceed with a brief overview of mathematical model of aircraft
,
whereas dynamic inversion method explained in section III, and combination of fu
zzy
and pso explained in section IV. Then in section V we proceed with the numerical
simulation of classic DI and OFLCDI, while the conclusions are provided in secti
on
VI.
2. Mathematical model of aircraft
In this paper we design a flight controller for a phantom fighter jet (known as
F_4), the
Aerodynamic coefficient obtained from [19]. In table 1 you see the specification
of the
airplane that we used. The inputs are delta aileron, delta elevator and delta ru
dder
[ ] , , a e r
.task of the controller is to track the commands of , and when
aerodynamic model uncertainties exist. The body-fixed axes, nonlinear equations
of
motion for an aircraft over a flat Earth are given by [19].
2 2
2
2
( )
[ ( ) ]
xz x y z
z aero xz aero
x z xz x z xz
z y z xz
x z xz
I I I I pq
I l I n
p r
I I I I I I
I I I I I qr
I I I
+
+
= +
&
(1)
2 2
1
[ ( ) ( )]
aero z x xz
y
q m pr I I I r p
I
= + + &
(2)
AlirezaAbaspour et al 10
2
2 2
2
( ) ( )
x y z xz x x y xz
x z xz x z xz
xz aero xx aero
x z xz
I I I I I I I I
r r p q
I I I I I I
I l I n
I I I
+ +
= + +
+
&
(3)
1
sin cos [ . sin sin ]
.
1
[ cos sin cos ]
.
p r m g
mv
Y T
mv
= + +
&
(4)
( cos sin )tan
1 1
[ cos cos ] [ sin ]
. cos . cos
q p r
L Mg T
mv mv
= + +
+ +
&
(5)
1
( cos sin )
cos
sin
tan cos cos [tan sin tan ]
.
tan cos cos
.
p r
g L T
v mv
Y
mv
= +
+
+ +
+
&
(6)
1
[ cos cos sin cos ]
.
[sin sin cos cos sin ]
.
L mg Y
mv
T
mv
= +
+
&
(7)
1
[ sin sin
cos cos ]
V D Y mg
m
T
= +
+
&
(8)
In above equations: F is aerodynamic force about the body-fixed frame, I is
moment of inertia, L , M ,N are aerodynamic rolling, pitching, yawing moment, ,
, p q r
are roll, pitch, yaw rate about the body-fixed frame, q is dynamic pressure, T
is thrust
,V is velocity, , , is angle of attack, sideslip angle, bank angle, and is flig
ht path
angle.It is assumed that the aerodynamic forces and moments are expressed as
functions of angle of attack, sideslip angle, bank angle, angular rates, and con
trol
surface deflection.
3. Dynamic Inversion
In this section, we present a feedback linearization technique known as Dynamic
Inversion. Dynamic inversion is a control design methodology that uses a feedbac
k
signal to cancel inherent dynamics and simultaneously achieve a specified desire
d
dynamic response [20].
Consider a general time-invariant nonlinear system modeled by the ordinary
differential equations.
( , , )
( , )
x f x u t
y H x u
=
=
&
(9)
Optimal Fuzzy Logic Tuning of Dynamic Inversion Flight Controller 11
There are two separate differential equations: a set of slow dynamics
x&
and a set of
fast dynamics y & .
( ) ( )
( , ) ( , )
x f x g x y
y h x y k x y u
= +
= +
&
&
(10)
Figure 2: Two-timescale inversion of slow dynamics.
TABLE 1: Phantom specification and aerodynamic coefficient in cruise flight[9]
Symbol unit Value
Measurement
B Ft 38.7 Wing Span
S ft 2 530 Wing Area
c ft 1.6 Chord Length
X cg ft 0.29 Xcg
m lbs 39000 Weight
I xx lbs. ft 2 25000 X axis Inertia moment
I yy lbs. ft 2 122200 Y axis Inertia moment
I zz lbs. ft 2 139800 Z axis Inertia moment
I xz lbs. ft 2 2200 XZ palneinenrtia moment
If the system is affine in the controls, then solving explicitly for the control
vector
yields.
1
( ) [ ( )] y g x x f x
= & (11)
Replacement of the inherent dynamics with the desired dynamics results in the
control that will produce the desired dynamics.
1
( ) [ ( )]
d
y g x x f x
= &
(12)
AlirezaAbaspour et al 12
Substituting for the linear aircraft dynamics represented as x Ax Bu = + & yiel
ds a set
of slow dynamic equations for the rotational variables(
1
[ , , ] x = ) and a set of fast
dynamic equations for the rotational rate variables(
2
[ , , ] x p q r = ).The rate variables
now form the input for the slow dynamics, while the actual control surface comma
nds
form the inputs for the rate dynamics. Inverting the slow and fast differential
equations
yields the two dynamic-inversion control laws for the outer dynamic inversion lo
op
and inner dynamic inversion loop, whose block diagram is shown in Figure 2.
The structure of the two-timescale controller is shown in Figure 3. In each
feedback loop, control laws
2
d
x and u are designed separately.
FIGURE 3: Structure of the two-timescale controller
3.1 Inner loop control for the fast variables
When designing a flight control system with the two-timescale assumption, the in
nerloop controller is designed to control the fast states
2
x using the control input u, where
the desired values of the fast states
2
d
x are given by the outer loop. Now for using
dynamic inversion based on (1-8), for the fast differential equation we have:
( )
( ) ( )
( )
p a
q e
r r
p f x
q f x g x
r f x
= +
&
&
&
(13)
With considering (13) the controller of inner loop yields:
1
( )
( ) ( )
( )
a d p
e d q
r d r
p f x
u g x q f x
r f x
= =
&
&
&
(14)
While the desire angular rates defined with following equation:
0 0
0 0
0 0
d p c
d q c
d r c
p p p
q q q
r r r
=
&
&
&
(15)
Optimal Fuzzy Logic Tuning of Dynamic Inversion Flight Controller 13
Where ,
p q
and
r
= + +
&
&
&
(16)
Computing the relation between
, ,
c c c
p q r
and main control surfaces is difficult, so
we neglect the small term of
2 1
( )
s s
g x
. With considering (16) the controller of outer loop
yields.
1 1
( )
( ) ( )
( )
s s
f x p
f x g x q
f x r
+
&
&
&
(17)
While the desire angular variables defined with following equation.
0 0
0 0
0 0
d c
d c
c d
&
&
&
(18)
Where ,
and
=
&
&
&
(19)
AlirezaAbaspour et al 14
4. Fuzzy PSO control
Each FLC has the structure as shown in the following:
Figure 4: The structure of FLC.
The important components of a FLC are the Fuzzifier, the Inference engine, the
Fuzzy Knowledge base, and the Defuzzifier. According to Figure 4, the Fuzzifier
converts the crisp input to a linguistic variable using the MFs stored in the fu
zzy
knowledge base. By using If-Then type fuzzy rules the Inference engine converts
the
fuzzy input to a fuzzy output. The Defuzzifier converts the fuzzy output of the
inference engine to crisp one. In our design the centre of area (CoA) method, wh
ich
supplies defuzzified output with better continuity is used for defuzzification.
In
general, CoA method with the output is calculated as:
*
( )
( )
o
o
um u du
u
m u du
=
(20)
Where u is the output variable, o is the output fuzzy set and
0
m is the MFs of the
output fuzzy set. Minimum Mamdani (AND method), the most popular inference
engine, is chosen to obtain the best possible conclusion. This type of inference
engine
allows easy and effective computation and it is appropriate for the real time co
ntrol
application [21].
The starting point of a fuzzy controller design is to choose the number and the
shape of the MFs for input and output variables. Our fuzzy controller is similar
to PD
controller. It has two inputs ( , e e & ) and single output (o). So that, three
groups of MFs
are chosen for the three corresponding variables and. Each group has 7 triangula
r MFs
as shown in Figure 5. It has been found that using complex forms of MFs cannot b
ring
any advantage over the triangular ones, where this kind of MFs gives faster resp
onse
[22].
In fact, appropriate number and shapes of membership functions are usually resul
t
of different compromises among contradicting factors, such as accuracy, hardware
and
computation complexities. The ones, we are mostly concerned in this work, are re
lative
accuracy, computation time, and complexity.
Optimal Fuzzy Logic Tuning of Dynamic Inversion Flight Controller 15
Figure 5: Typical set of MFs.
Before defining the rules we normalize the input and output data of the controll
er,
the normalization procedures are required to transform performance ratings with
different data measurement units into a decision matrix with compatible unit. So
that,
the variables, , e e & and C are quantized and normalized within [-1, 1], accord
ing to the
following Equation:
max
norm
X
X
X
=
(21)
Where, the variable has to be normalized to its maximum value. The maximum
values of the controllers variables can be obtained from the engineering experien
ce of
designer and simulation results. As the absolute maximum value of e and
e&
are always
between 0 and 1(radian), there is no need to normalize and denormalize them, but
for
C we use scaling factor of 20 to denormalize it. Each normalized variable then i
s
replaced by a set of linguistic values as shown in Table 2.
TABLE2: Term sets adopted.
e ,
e&
& u LN MN SN ZE SP MP BP
Where, the linguistic values {LN, MN LP} are abbreviations of {Large
Negative, Medium Negative Large Positive} respectively as shown in Figure 3.
Now, we can obtain the rules based upon this paper conception.
4.1 Defining the rule
While model is running, we have two parameter to control, the error of controlle
r
which showed by e and its variation ratio showed by
e&
. As you can see in table3,
because our controller is similar to PD controller, the relation between e and
e&
defined
by a sum assumption.
AlirezaAbaspour et al 16
TABLE3: The entire Rules of FLCDI.
PB
PM
PS
ZE
NS
NM
NB
e
e&
ZE NS NS NM NM NB NB NB
PS ZE NS NS NM NM NB NM
PS PS ZE NS NS NM NM NS
PM PS PS ZE NS NS NM ZE
PM PM PS PS ZE NS NS PS
PB PM PM PS PS ZE NS PM
PB PB PM PM PS PS ZE PB
4.2 PSO
The PSO is a population based stochastic optimization technique, consists of a s
warm
of particles flying through the search space. Every individual in the swarm cont
ains
parameters for position and velocity. The position of each particle represents a
potential solution to the optimization problem. The dynamic of the swarm is gove
rned
by a set of rules that modify the velocity of each particle according to the exp
erience of
the particle and its neighbors depending on the social network structure within
the
swarm. By adding a velocity to the current position, the position of each partic
le is
modified. As the particles move around the space, different fitness values are g
iven to
the particles at different locations according to how the current positions of p
articles
satisfy the objective. At the iteration each particle keeps track of its persona
l best
position. Depending on the social network structure of the swarm, the global bes
t
position, and/or the local best position, is used to influence the swarm dynamic
. After a
number of iterations, the particles will eventually cluster around the area wher
e fittest
solutions are. The swarm behavior is influenced by the number of particles, the
neighborhood size, the inertia weight, the maximum velocity, and the acceleratio
n
calculation that modifies the velocity. The larger the number of particles in th
e swarm,
the more likely the swarm will converge on the global optimum, because the socia
l
information exchange is increased. The influence of the current velocity on the
new
velocity can be controlled by the inertia weight. The influence of the particles
experience and that of its neighbor is governed by the acceleration calculation.
The
acceleration limits the trajectory of the particle oscillation. The new velocity
is limited
by the given maximum velocity to prevent particles from moving too fast in the s
pace.
In particular, the velocity associated with each particle in PSO is calculated a
s:
1 1
2 2
( 1) . ( ) . ( )( ( ))
. ( )( ( ))
i i g i
p
i i
v k wv k c r k x x k
c r k x x k
+ = +
+
(22)
Where w is the momentum or inertia weight of the particle, ( )
i
v k is the velocity of
the particle i at time step k ,
g
x is the global best performing particle up to time step k
Optimal Fuzzy Logic Tuning of Dynamic Inversion Flight Controller 17
in the entire population,
p
i
x is the best experience particle has had up to time step k ,
k
i
x is the current location of particle i ,and
1 2
, c c are constants usually equal each to
other,
1 2
, r r are random numbers within [0, 1] those represent random fiction[23]. To
(24)
The corresponding parameters have to satisfy the inequality Since there are 14 M
Fs
in the inputs and 7 MFs in the output, in addition, each MF has its three own
parameters. In total we have 63 parameters for optimization, so that, a vector o
f
dimension particles is adopted in the optimization process. The population is se
t P=50
as vectors, while the total searching iterations is set to be I=30. With the hel
p of [23],
the inertia weight w was set to be 0.9 decreased linearly to 0.4 and the weight
ing
factors
1 2
, c c were set to be 0.5 for both, while
1 2
, r r are randomized within [0,
1].Therefore, it is possible to use PSO as a global optimization search method t
o find a
set of such parameters that will produce the best control performance of the FLC
.
Throughout the optimization process we try to minimize the the miss distance , t
he
object function is defined as:
T
J x Qxdt =
(25)
In (25) x is a vector which contain the parameter that should be optimized and
Q
is a diagonal matrix which denotes the limitation and importance of errors.
[ ]
10
1 / 40 1 / ( 400 [6 ])
T
beta alpha mu
t
x E E E
Q diag
=
=
(26)
Q is a parameters which chosen by designer according to systems dynamics and
the desired control behavior. For the optimization process, we assumed the follo
wing
data:
One of the important factors in the simulation process is usually the integratio
n
time-step. This is normally chosen based on nature of the problem or experience.
Here,
we use a time step equal to 0.01 second, mainly because a typical airplane-gyro
gyrates
around 100 cycles per second.
5. Numerical Simulation
In this paper we used the combination of dynamic inversion control and fuzzy log
ic
control and PSO as we described. To find the advantages and disadvantages of thi
s
Opt
new
inve
the
com
of V
the
outp
n
=
unc
cent
outp
timal Fuzzy
w method w
ersion to a c
performanc
mmand valu
V=0.9 Mach
To make th
edges, you
put of filter
=2 , =1 to
For a better
ertainties w
ter of gravi
put were tun
a. e al
d. e alph
g. C a
Logic Tuni
we should co
certain comm
ce of control
es of , a
h, h=1000ft:
Com
d
he step inpu
can see the
depends on
make the in
FI
r compariso
which is usu
ity(c.g) is f
ned by PSO
lpha
ha dot
alpha
FIG
ing of Dyna
ompare the r
mand. Sinc
ller, we sele
and are a
:
TABLE
Time
mmand(degr
ut similar as
e filter stru
n two param
nput like rea
IGURE 7: C
on between
ually happen
fixed in ma
O algorithm a
GURE 8: Tu
mic Inversi
result of thi
e step input
ected step in
applied to th
E 4. Input co
e(s)
ree)
0 0 t <
0
0
0
real inputs
cture in fig
meter which
al pilot comm
Command f
OFLDI and
ns because o
ass uncertain
and shown i
b. e beta
e. e beta_dot
h. C beta
uned membe
ion Flight C
is new meth
t is a comm
nput for our
he aircraft in
ommands.
0.5 0.5 5 t <
10
0
50
, we used a
gure 7. As y
selected by
mands.
filter structu
d DI method
of fuel cons
nties. The M
in Figure 8
ership funct
Controller
hod with cla
mon input an
r analysis an
n a steady s
5 t
0
0
0
a command
you can see
y designer, a
ure.
d we consid
sumption. It
MFs of the
.
c
f.
i
tions.
assical dyna
nd clearly sh
nd the follow
state level f
filter to sm
e in figure 7
and we sele
dered 30 per
t is assumed
e inputs and
c. e mu
e mu_dot
i. C mu
19
amic
hows
wing
flight
mooth
7 the
ected
rcent
d the
d the
AlirezaAbaspour et al 20
In Figure 9 you can see the comparison of tracking command of , and
between OFLDI and classic dynamic inversion in presence of mass uncertainties an
d
without it, this figure denote that there is no clear difference in command trac
king
between these methods, But when we calculate the tracking cost (
2 .
e dt
) in Figure 12,
its clearly showed that OFLDI has quite less tracking cost in presence of mass
uncertainties.
FIGURE 9: Comparison of command tracking with uncertainties and without it.
Control effort is important factor in designing controller, which is in direct r
elation
with control deflection (
2 .
u dt
[9] Pratihar D.K., Deb K., Ghosh A. A genetic-fuzzy approach for mobile robot
navigation among moving obstacles. International Journal of Approximate
Reasoning, Vol 20, No. 2, pp. 145172. 1999.
[10] Mucientes M., Moreno D.L., Bugarin A., and Barro S., Design of a fuzzy
controller in mobile robotics using genetic algorithms. Applied Soft Computing.
7, pp. 540-546. 2007.
[11] Kennedy, J. and Eberhart, R. Swarm Intelligence, San Francisco, CA: Morgan
Kaufmann Publishers, Inc. 2001.
[12] Clerc, M. and Kennedy, J. The particle swarm - explosion, stability, and
convergence in a multidimensional complex space. IEEE Transactions on
Evolutionary Computation, Vol 6, No. 1, pp. 58-73. 2002 .
[13] Kwok, N.M., Ha, Q.P., Liu, D.K. and Fang, G. Intensity-preserving contrast
enhancement for gray-level images using multi-objective particle swarm
optimization. IEEE Conf. on Automation Science and Engineering, Shanghai, P.
R. China, pp. 19-24. 2006 .
[14] Kwok, N.M., Ha, Q.P., Nguyen, T.H., Li, J. and Samali, B. A novel hysteretic
model for magneto rheological fluid dampers and parameter identification using
particle swarm optimization. Sensors & Actuators: A. Physical, Vol 132, No 2,
pp. 441-451. 2006.
[15] Karakuzu C. Fuzzy controller training using particle swarm optimisation for
nonlinear system control. ISA Transactions. Vol. 47, pp. 229 239. 2008.
[16] Niu B., Zhu Y., He X., and Shen H., A multi-swarm optimizer based fuzzy
modeling approach for dynamic systems processing. Neuro-computing.Vol 71.
pp. 1436-1448. 2008.
[17] Mukherjee V., Ghoshal S.P. Intelligent particle swarm optimized fuzzy PID
controller for AVR system. Electric Power Systems Research, Vol. 77, pp. 16891698. 2007.
[18] Lin C., Hong S. The design of neuro-fuzzy networks using particle swarm
optimisation and recursive singular value decomposition. Neuro-computing, Vol
71, pp. 271-310. 2007.
AlirezaAbaspour et al 24
[19] Jan Roskam Airplane aerodynamics and performance 1997.
[20] Reiner, J., Balas, G. J., and Garrard, W .L., Robust Dynamic Inversion for
Control of Highly Maneuverable Aircraft, Journal of Guidance, Control and
Dynamics, V ol. 18, No. 1, 1995, pp. 1824
[21] Werner Van Leekwijck and Etienne E. Kerre, Defuzzification: criteria and
classification. Fuzzy Sets and Systems, vol. 108, pp. 159-178. 1999.
[22] Chun Liang Lin, Hao Zhen Hung, Yung Yue Chen, and Bor Sen Chen,
Development of an Integrated Fuzzy-logic based missile guidance law against
high speed target. IEEE, Transaction on Fuzzy System, vol. 12, no. 2, 2004.
[23] Qinghai Bai, Analysis of Particle Swarm Optimization Algorithm. CCSE,
computer and information science, vol. 3, no. 1, 2010.