Tuning of PID Controllers With Fuzzy Logic: Abstract
Tuning of PID Controllers With Fuzzy Logic: Abstract
Tuning of PID Controllers With Fuzzy Logic: Abstract
A.Visioli
Abstract: The paper presents a comparison between different methods, based on fuzzy logic, for
the tuning of PID controllers. Specifically considered are different control structures in which a
fuzzy mechanism is adopted to improve the performances given by Ziegler-Nichols parameters.
To verify the full capabilities of each controller, genetic algorithms are used to tune the parameters
of the fuzzy inference systems (scaling coefficients, shape of the membership functions, etc.).
Furthermore, a discussion about the practical implementation issue of the controllers is provided,
and comparisons made with a typical PID-like fuzzy controller and a standard and a nonlinear PID
controller. The results show the superiority of the fuzzy set-point weighting methodology over the
other methods.
e . fuzzy
-
.
PI-like
e controller
o u.
- fuzzy
-
.
PD-like
controller
Fig. 2 Basic rules table of the fuzzy inference system for the FSW
scheme Fig. 4 Control scheme with PID-like fuzzy controller
IEE Proc.-Control Theory Appl., Vol. 148, No. 1, Janualy 2001 3
[14]. This can be seen as an improved version of the PD- with respect to the pure Ziegler-Nichols method. Hence, in
like control, in which the full control capabilities are this case, also the rules of the fuzzy mechanism have been
retained despite the simplified design (the number of optimally selected by means of the genetic algorithm.
rules is reduced) [ 141.
4 Simulation results
2.7 Nonlinear PID controller
Finally nonlinear PID controller, in which fuzzy logic is The performances of the different controllers have been
not adopted, has been considered. The implemented evaluated on a wide range of plants. Here, the following
control law is [ 151 transfer functions, with different values of the parameters,
are considered:
4 = 1; = 0.2,0.8; (12)
G1(s) = s2 + 2w5s + CO: ; W,
(1 + sT)’ *
’
PID gains and the scalar constant L.
1
3 Optimal tuning of the fuzzy modules by ) -.
G ~ ( s=
(1 +s)3 ’
means of genetic algorithms
e-sL
To test the full capabilities of the examined control
schemes, for each case and for each considered process G,(s) = (1 +s)(l +0.5s)(l +0.25s)(l +0.125s)’
under control (cf. Section 4), the free parameters have been
determined using a genetic algorithm [ 161, which guaran- L = 0,O.l; (16)
tees in a stochastic sense that a global optimum is
achieved. The selected objective function to minimise is (1 - 0.5s)
the integrated absolute error, defined as G6(S) =
(1 +s)3 .
First, to verify the full potentialities of the investigated
methodologies, it will be assumed that no saturation levels
which somehow takes into account at the same time the are present for the control variable. After the tuning phase,
rise time, the overshoot and the settling time. Note that accomplished using the genetic algorithm, the unit step
when triangular membership functions are employed, the responses have been simulated with Matlab and Simulink.
genetic algorithm also searches for the optimal shapes of The resulting values of the IAE for the different processes
the membership functions. In particular, the optimal posi- and different controllers are reported in Table 2. To
tion of the peaks of all the membership functions is compare the control laws, tuned by a genetic algorithm
searched, except for the central ones and those at the with classical industrial methodologies, it also shows a PID
limits of the variable range, both for the inputs and the tuned with the Ziegler-Nichols method, both without
outputs. For the sake of simplicity, a symmetric shifting of (‘Z-N’) and with (‘Z-N b’) a fixed set-point weight. In
the involved membership functions for each variable has the latter case, the value of b has been optimally selected
been considered. The bases of the other membership again to minimise the IAE parameter) by a simple iterative
functions are updated accordingly to preserve the fuzzy procedure. For example, the step responses of system (eqn.
partition property (i.e. the sum of the membership degrees 15) with the different controllers are plotted in Figs. 6 and
for each value of the variable is always equal to one). This 7. Note that the ‘fixed b’ and ‘SSP’ cases are missing, as
procedure is shown in Fig. 5. they are equal to the ‘PID’ and ‘Z-N’ cases, respectively.
The only exception to this optimisation procedure has To provide a more detailed insight of the results, Tables
been applied to the SSP method, since it has been seen that 3 and 4 shows the values of overshoot and the rise time,
searching for the constant parameters and the shape of the respectively, for the different cases.
membership functions does not lead to any improvement Although the investigated methodologies have been
devised for the control of pure linear systems, a saturation
level U, = f 5 on the control variable has been considered
t
for each case to test the controllers’ capabilities in the
presence of a typical process nonlinearity. For each
scheme, with the exception of the fuzzy PID-like control-
ler, an anti-windup system (Reference 1, page 83) has been
used, where the tracking time constant T, has been tuned by
the rule of thumb Tt = l/(TiTd), where Ti and Td are the
-1 0 1
c
base integral and derivative time constants of the control-
e, e ler. The controller parameters have been retuned, again by
Fig. 5 Tuning o f p e a b of membership functions means of genetic algorithms. Results are reported in Tables
A symmetric shifting of the intermediate membership functions is permitted 5, 6 and 7.
4 IEE Proc.-Control Theory Appl., Vol. 148, No. I , January 2001
Table 2. Value of IAE achieved by the examined controllers tuned by the genetic algorithm (compared also with the
Ziegler-Nichols response) when no saturation is present
Process PID fixed b IFE SSP FGS FSW fuzzy nonlinear Z-N Z-N b
GI( s ) , 5 = 0.2 0.90 0.90 0.83 1.16 0.94 0.60 0.99 1.32 3.34 2.23
G~(s), (~0.8 0.70 0.70 0.83 0.95 1.27 0.56 0.99 0.83 1.27 0.97
G2 ( S ) 0.85 0.79 1.01 2.09 1.56 0.66 1.55 1.06 2.09 1.44
G,(s),T = l , L=0.1 0.72 0.72 0.95 1.05 1.40 0.75 0.86 0.73 1.40 0.99
G,(s),T = l , L=0.4 1.31 1.31 1.48 1.48 1.34 1.38 1.57 1.30 1.79 1.50
G,(s), T = l , L=0.8 2.00 1.99 2.22 1.96 2.81 2.10 3.25 2.08 2.22 2.13
G,(s), T=10, L=0.1 0.85 0.82 2.21 4.91 1.91 0.81 3.92 1.59 4.91 2.50
G,(s),T=10, L=0.4 1.39 1.39 3.69 7.62 3.65 1.66 3.26 3.13 7.62 4.05
G,(s),T=10, L=0.8 2.24 2.24 4.20 9.38 5.17 2.60 3.87 3.70 9.38 5.14
G~(s) 1.13 1.13 1.13 2.34 1.34 0.98 1.49 1.72 2.34 1.89
G,(s),L=O 0.99 0.98 1.01 1.55 1.44 1.22 1.27 1.09 1.83 1.36
G~(s),
L=0.1 1.25 1.25 1.22 1.29 1.31 1.30 1.37 1.31 1.59 1.41
G6(S) 2.12 2.11 2.60 2.86 2.87 2.43 5.28 2.86 2.86 2.53
Table 3. Value of the overshoot (%) achieved by the examined controllers tuned by the genetic algorithm (compared
also with the Ziegler-Nichols response) when no saturation is present
Process PID fixed b IFE SSP FGS FSW fuzzy nonlinear 2-N Z-N b
GI ( s ) , 5 = 0.2 17 16 0 16 0 18 1 22 46 18
GI ( s ) , 5 10.8 31 12 21 20 41 22 2 13 41 6
G,(s) 21 0 1 31 20 15 0 8 31 9
G~(s),
T= 1, L=0.1 13 13 41 19 57 1 0 3 57 3
G~(s),T= 1, L=0.4 8 10 33 4 18 6 11 12 37 4
G~(s),
T= 1, Lz0.8 5 6 23 7 22 10 0 10 23 8
G~(s),
T=10, L=0.1 1 0 30 66 13 2 3 6 66 9
G~(S),
T=10, L r 0 . 4 10 10 11 62 13 3 2 3 62 6
G~(s),T=10, L=0.8 9 12 6 59 13 1 0 3 59 5
G~(s) 14 14 3 49 15 4 2 26 49 5
G~(S),
L=O 24 23 17 15 15 8 5 8 52 6
G~(s),
Lz0.1 7 7 15 6 10 6 14 15 34 6
G~(S) 14 9 22 34 15 21 17 18 34 17
Table 4. Rise times Is)achieved by the examined controllers tuned by the genetic algorithm (compared also with the
Ziegler-Nichols response) when no saturation is present
Process PID fixed b IFE SSP FGS FSW fuzzy nonlinear Z-N Z-N b
GI (s),5 = 0.2 0.38 0.39 0.50 0.93 0.77 0.11 0.66 0.46 0.46 0.72
GI ( s ) ,5 = 0.8 0.11 0.13 0.34 0.45 0.32 0.07 0.78 0.35 0.32 0.46
G2 (s) 0.31 0.59 0.46 0.96 0.58 0.20 1.21 0.84 0.96 1.24
G,(s), T=l, L=0.1 0.17 0.17 0.22 0.44 0.28 0.24 0.37 0.23 0.28 0.48
G,(s), T = l , L=0.4 0.52 0.58 0.44 0.90 0.46 0.68 0.38 0.52 0.60 0.84
G,(s),T=l, L=0.8 0.98 1.00 0.86 1.00 0.82 0.98 3.06 1.oo 0.88 1.02
G,(s),T= IO, L=0.1 0.42 0.42 1.00 0.88 1.22 0.30 5.32 1.20 0.88 1.58
G3(s),T= IO, L=0.4 0.66 0.66 2.14 1.78 2.38 1.16 3.26 3.58 1.78 3.02
G,(s), T= I O , L=0.8 1.24 1.20 2.02 2.50 2.82 1.78 3.82 3.52 2.50 4.26
G4(s) 0.65 0.65 0.73 0.63 0.82 0.54 1.14 0.70 0.68 1.48
G~(s),
L=O 0.34 0.35 0.38 0.74 0.40 0.58 0.72 0.58 0.56 0.88
G~(s),L=0.1 0.56 0.56 0.46 0.60 0.56 0.70 0.46 0.54 0.60 0.80
G6(S) 0.84 1.02 0.90 0.80 0.88 0.92 0.90 1.oo 0.80 1.02
time, s time, s
Fig. 6 Step responses of G4(s) with the different controllers without Fig. 7 Step responses of G4(s) with the different fizzy logic based
fuzzy logic controllers
Table 5. IAE achieved by the examined controllers tuned by the genetic algorithm (compared also with the Ziegler-
Nichols response) when saturation of the control variable is present
Process PID fixed b IFE SSP FGS FSW fuzzy nonlinear 2-N Z-N b
GI (s),c = 0.2 1.74 1.09 0.98 1.56 1.41 0.96 1.06 1.36 3.33 2.66
GI ( s ) , { = 0.8 1.05 1.00 1.01 1.17 1.28 1.01 1.08 1.07 1.44 1.41
G~(s) 2.53 1.19 1.14 2.35 2.12 0.97 1.12 2.06 3.49 3.01
G~(s),T = l , L=0.1 1.12 1.10 1.11 1.14 1.26 1.10 1.22 1.11 1.41 1.33
G,(S), T = l , LzO.4 1.65 1.59 1.46 2.00 1.64 1.53 1.46 1.52 2.00 1.95
G~(s),T = l , L=0.8 2.46 2.34 2.40 2.32 2.50 2.35 2.94 2.27 2.55 2.54
G,(s), T=10, L=0.1 6.03 5.73 5.70 5.82 5.90 5.70 6.70 5.78 6.20 6.20
G~(s),T=10, L=0.4 6.51 6.01 6.07 6.57 6.98 6.03 7.57 6.17 7.53 7.53
G,(s), T=10, L=0.8 7.28 6.44 6.55 7.29 7.12 6.50 7.69 6.64 9.11 9.11
G~(s) 1.75 1.68 1.65 1.91 2.09 1.68 2.23 1.70 2.73 2.33
G~(s),L = O 1.34 1.28 1.26 1.44 1.45 1.25 1.32 1.25 1.65 1.59
G~(s),Lx0.1 1.55 1.52 1.35 1.50 1.63 1.43 1.78 1.39 1.78 1.75
Gtj(S) 2.98 2.74 2.60 2.81 2.82 2.68 2.85 2.57 3.37 3.11
Table 6. Overshoot (%) achieved by the examined controllers tuned by the genetic algorithm (compared also with the
Ziegler-Nichols response) when saturation of the control variable is present
Process PID fixed b IFE SSP FGS FSW fuzzy nonlinear Z-N 2-N b
GI (s), 5=0.2 0 13 4 22 3 10 2 28 45 17
GI (s), {=0.8 0 1 7 20 15 4 0 8 22 25
G2 (s) 0 7 11 38 32 6 2 38 19 27
G~(s),T=l, L=0.1 2 2 3 5 3 2 0 1 28 19
G3(s), T= 1, L = 0.4 12 5 4 30 10 4 9 13 30 10
G~(s), T=l, L=0.8 28 5 29 10 24 7 2 20 15 11
G,(S), T=10, L=0.1 3 3 0 4 4 0 1 1 8 8
G~(s), T= I O , L=0.4 0 0 1 3 8 0 1 2 11 11
G ~ ( S )T=
, I O , L=0.8 0 0 2 8 2 1 2 1 14 14
G4 (s) 8 7 6 13 23 1 0 9 4 12
G~(s),L=O 8 5 4 16 25 3 4 13 32 12
G~(s),L=0.1 12 8 2 6 11 5 17 15 26 17
G6 (S) 20 4 20 6 10 8 4 14 35 11
G ~ ( s )5, ~ 0 . 2 2.60 0.56 0.54 0.82 0.86 0.46 0.58 0.56 0.68 0.98
GI (s), 5 = 0.8 0.61 0.60 0.54 0.54 0.60 0.60 0.68 0.62 0.66 0.60
G~(s) 4.74 0.84 0.70 0.96 0.88 0.50 0.70 0.90 2.34 1.84
G ~ ( s ) T=
, 1, L=0.1 0.56 0.58 0.58 0.64 0.74 0.62 0.84 0.62 0.56 0.58
G ~ ( s ) T=
, 1, L z 0 . 4 0.70 0.76 0.68 0.78 0.76 0.70 0.64 0.60 0.78 1.10
G ~ ( s ) T=
, 1, L=0.8 0.98 1.20 0.74 1.20 1.20 1.12 2.18 0.86 1.22 1.30
G ~ ( s ) T=
, IO, L=0.1 5.58 5.58 5.64 5.58 5.88 5.70 5.96 5.80 5.56 5.56
G3(s), T= IO, L=0.4 5.68 5.68 5.64 5.70 5.74 5.80 10.3 5.96 5.56 5.56
G ~ ( s )T=
, IO, L=0.8 5.72 5.72 5.70 5.70 5.86 6.00 6.20 6.28 5.98 5.98
G4 ( S ) 0.96 1.oo 1.02 1.06 0.94 1.24 2.56 1.08 1.88 1.48
G ~ ( s )L, = O 0.58 0.64 0.70 0.70 0.54 0.68 0.80 0.58 0.68 0.88
G ~ ( s )L=0.1
, 0.72 0.76 0.78 0.90 0.74 0.74 0.76 0.60 0.76 0.86
G~(S) 0.96 1.24 0.80 1.56 1.16 1.18 1.66 1.02 1.22 1.66
Table 8. Value of the IAE on a load disturbance response achieved by the examined controllers turned by the genetic
algorithm (compared also with the Ziegler-Nichols response) when no saturation is present. The lack of a number
means that the system has become unstable
Process PID fixed b IFE SSP FGS FSW fuzzy nonlinear Z-N