Adaptive Fuzzy Control to Compensate Process Nonlinearities
Descrição do Produto
Adaptive Fuzzy Control to Compensate Process Nonlinearities János Abonyi, Lajos Nagy, Ferenc Szeifert University of Veszprém, Dept. of Chem. Eng. Cybernetics, Veszprém, POB. 158, H8201 Hungary (abonyij, nagyl, szeifert)@kib.vein.hu
Abstract. This paper proposes inverse fuzzymodelbased feedforward fuzzy controllers to compensate nonlinear terms that affect the system dynamics. The gradientdescent algorithm can be used online to form adaptive fuzzy controllers. This ability allows these controllers to be used in applications were the knowledge to control the process does not exist or the process is subject to changes in its dynamic characteristics. To demonstrate the feasibility of the method one simulation example is presented. The proposed adaptive fuzzy controllers are applied to the adaptive control of a nonlinear plant and are shown to be capable of providing good overall system performance.
1
Introduction
The past few years have witnessed a rapid growth in the use of fuzzy logic controllers for the control of processes, which are complex and badly defined. Most fuzzy controllers developed till now have been of the rulebased type [1], where the rules in the controller attempt to model the operator’s response to particular process situation. An alternative approach uses fuzzy or inverse fuzzy model in process control [28]. Learning systems can be employed to achieve intelligent control via knowledge acquisition. Some learning control systems have been addressed using neural networks and fuzzy models in an inverse model compensation perspective [9]. In this paper, we investigate the perspective of using Sugeno fuzzy models and gradientdescent based learning method to design an inverse model compensation control scheme. The paper is organised as follows: The description of the fuzzy controller and the applied gradientdescent method is in section 2. In section 3 the adaptive control structures are considered. The simulation experiments and the results are presented in section 4 and 5.
2 2.1
Description of the control system Fuzzy control system description
The fuzzy controller to be tuned is a feedforward controller (Figure 1.). Given the required setpoint, it calculates the required process input using an inverse fuzzy process model. If the process input it calculates is wrong, errors will result, and a PI – like controller (it can be a standard PID or PItype fuzzy controller) will come into play to drive the process to setpoint. From another viewpoint this method is a supervised PI controller where the fuzzy model updates the bias of the PI controller to compensate process nonlinearities. The inverse model based approach, called feedbackassisted iterative learning control (FBALC) [10] to update PID bias have been used in batch reactor temperature control, where an approximate firstorder lag model was considered. uFF(k)
r(k+1)
Feedforward Controller
+ e(k) 
y(k+1) +
plant
+ Feedback Controller
uFB(k)
Figure 1. The feedforward / feedback controller The proposed adaptive fuzzy controller was applied in a predictorcorrector control (PCC) scheme [11], which means that in every sampling time a predictive and a corrective action takes place. The prediction step: Suppose at discrete time k the value of the controlled variable y(k) (as a result of the control signal u(k1) ) and the value of the set point r(k+1) are given. The value of the control signal u(k) is calculated based on the inverse fuzzy process model in which the controlled variable has to be equal to the setpoint at the time equal to the prediction horizon (p=1). The correction step: As a result of u(k) control action y(k+1) can be observed at time k+1. The difference between e = r(k+1)  y(k+1) and the previous y(k) and u(k1) can be used for improve the accuracy of the inverse process model. The proposed two correction algorithms are considered in the 3rd session.
2.2
The Feedforward fuzzy controller description
We consider the following nonlinear plant: y (k + 1) = F {y (k ),..., y (k − n + 1), u (k ),..., u (k − m + 1)} (1) where y(k) is the plant output at instance k, F(.) is a nonlinear function, and u(k) is a control signal. The constant n and m define the order of the plant. Without loss of generality in this study we deal with first order systems (n, m= 1) The Sugeno’s type [1] inverse fuzzy model of the process can be formulated as the following form:
IF y (k ) is A1i and y (k + 1) is A2j THEN
Li , j :
u (k ) = b i , j (2)
where Li , j denotes the i,jth implication, the symbols Akl are membership functions and bi,j are the rule consequent parameters (fuzzy singletons). This type of fuzzy model can be used for onestep ahead control (Figure 2.):
IF y (k ) is A1i and r (k + 1) is A2j THEN
Li , j :
u (k ) = b i , j (3)
where r (k + 1) is the setpoint at the k+1th discrete time step. u(k)
y(k) FF Fuzzy controller
r(k+1)
y(k+1) plant
Figure 2. Inverse fuzzy model based FF controller Using fuzzy inference based on upon productsumgravity (Tpnorm) at given input
(r (k + 1), y(k )) , the final output of the fuzzy controller u(k) is inferred by taking the weighted average of the bi,j ‘s: Nl
u (k + 1) =
Ni
∑∑ w(k )
i, j
b i, j
i =1 j =1 Ni Nj
∑∑ w(k )
(4) i, j
i =1 j =1
where the weights, w(k)i,j>0, implies the overall truth value of the i,j –th implication for input calculated as:
w(k ) i , j = A1i ( y (k ) ) × A2j (r (k + 1) )
(5)
2.3
Gradientdescent adaptation method
For the adaptation of the proposed feedforward controller we used gradientdescent method which have several authors applied to fuzzy systems [1219]. What those methods have in common is that they minimise a similar objective function E:
E (k ) =
1 (u (k ) − u ’(k ))2 2
(6)
where u’ is the reference for the system output u. The fuzzy controller is parameterised by the following parameters: Z=[z1,…,zp] where p = N i ⋅ N j + N i + N j . The iterative algorithm seeks to decrease value of the objective function. If zi(k) is the value of the ith parameter at iteration t, the steepest descent algorithm seeks to decrease the value of the objective function by modifying the parameters via ∂E (k ) z i (k + 1) = z i (k ) − K , i = 1,..., p (7) ∂z i (k ) where K is a constant which controls how much the parameters are altered at each iteration. We use an adaptation method maintaining the partitions on the input universes [18]. To achieve this, triangularshaped fuzzy sets are used and, hence the support of a set is determined by the centres of the adjacent fuzzy sets (Figure 3.) This ensures that the fuzzy sets on a universe of discourse always form a fuzzy partition, keeping the sum of the membership functions equal to 1.
1
A q l1
Aq l
A ql+1
aq,l
a q,l+1
µA
0 aq,l1
x,q
Figure 3. Membership function used by gradientdescent adaptation In Figure 2 q denotes the input variable, x, q = {1,2} (x1=y(k), x2=r(k+1)) and ak,l denotes the characteristic point of the Aql membership function. The learning rules:
N Aq ,l −1 ⎧ ⎡ ⎪ K a (u (k ) − u ’(k )) ⎢ µ Aql ( xq ) wk ’(k ) ⋅ ⋅ ⎪ ⎢ ⎪ aq,l − aq,l −1 ⎢ µ Aql −1 ( xq ) k ’=1 ⎪ ⎣ ⎪ if aq,l −1 < xq < aq,l ⎪⎪ ∆aq,l (k ) = ⎨ ⎡ µ ( x ) N Aq ,l +1 l ⎪ K a (u (k ) − u ’(k )) ⎢ Aq q wk ’(k ) ⋅ ⋅ ⎢ ⎪ a −a µ l +1 ( x q ) + q , l q , l 1 ⎢ A ⎪ q k ’=1 ⎣ ⎪ ⎪ if aq,l < xq < aq,l +1 ⎪ ⎪⎩ 0 otherwise
(
(
)
)
N Ak ,l
∑
(b
k’
∑
(b
k’
) ∑w
− u (k ) −
k ’=1
N Aq ,l
) ∑w
− u (k ) −
k ’=1
⎤ ⎥ (k ) ⋅ bk ’ − u (k ) ⎥ ⎥ ⎦
k’
(
)
⎤ ⎥ (k ) ⋅ b k ’ − u (k ) ⎥ ⎥ ⎦
k’
(
)
(8)
∆b i , j = K b w i , j (u (k ) − u ’(k )) (9) i,j where Ka and Kb are adaptation (learning) factors for ak,l and b and u’(k) is the reference for the controller output u(k). Note that k’ refer to all rules, which have Aql in their premises.
3 3.1
The control architectures Indirect learning method to compensate nonlinearities
In this architecture the inverse model and the feedforward controller are identical in structure and parameter. Without feedback controller it is similar to the Single Net Indirect Learning Architecture, proposed by Andersen et al. to neural network and fuzzy systems [17].
Inverse model
u (k) uFF(k)
r(k+1) y(k)
+ e(k+1) 
Feedforward Controller
+ u’ (k)
eu(k) plant
+ Feedback Controller
z1
y(k+1)
uFB(k)
Figure 4. Indirect learning architecture The online gradientdescent method is used to learn the inverse model of the plant by fitting data pairs: ( y (k + 1), y (k ), u ’(k ) ) . The procedure for designing and implementing the controller can be described in three steps: Initialisation – design a feedback controller which stabilises the given plant. For the fuzzy controller does not need of control knowledge, so all the consequent
singletons set to zero and initial centre of each antecedent membership function distributed over the universe. Control – Based on the plant output, y(k), and given the reference signal r(k+1) the feedforward fuzzy controller produces the control command uFF(k) which is the bias of the feedback PI controller to compensate process noninearities, so the process input is the sum of the uFF(k) and uFB(k). Adaptation – using the next process input y(k+1) and y(k) the inverse model calculates u(k) which is used to calculate the controller output error eu = u (k ) − u ’(k ) used in to minimize cost function (6). The prediction (control) and correction (adaptation) take place in every sampling time. 3.2
Learning based on the feedback control signal
In the previous chapter we effected the adaptation of the inverse model by means of appropriate inputoutput data pairs collected. Whereas the algorithm to be shown now can be regarded as an indirect method in which the error of the inverse model can be calculated from the control signal of the PItype controller.
uFF(k)
r(k+1) x (k)
Feedforward Controller +
+

plant
+ Feedback Controller
e(k+1)
x(k+1)
u (k)
uFB(k)
Figure 5. Learning scheme based on feedback control signal The PI controller corrections can be used as the error data, u(k)u(k)’, 1 E (k ) = (u FF (k ) − u ’(k ) )2 2 u ’(k ) = u FF (k ) + u FB (k ) where
(10) (11)
for the gradient descent tuning algorithm, to tune the feedforward controller’s membership functions. In this way the feedforward controller will learn the process input for a particular setpoint. Glorennec has applied this scheme to a simulation of a mixer tap [16]. Glorennec chooses to only tune the rule consequence fuzzy singletons (partial learning) with a basic gradientdescent method. In this study we used full parameter updating based on equation (8).
4
Simulation results
In this application study, the controller was configured to carry out liquid level control on simple simulation identical to that used by Graham and Newel [34] and Posthlethwaite [57] and Linkens et al. [8], to allow comparative assessment of different versions of fuzzy controllers. The simulation is of the level of liquid in a tank with manipulated inflow, and outflow, which is dependent on the square root of the level in the tank. The simulation model is just a single, strongly nonlinear, differential equation: dh A = F −α ⋅ h (12) dt 2 where A (10 cm ) is the crosssectional area in the tank, h (0100 cm) is the liquid level in the tank, F is the inlet flowrate (015 cm3/s), α is a flow coefficient (equal to 1). The problem is investigated is a setpoint changes over two ranges: the first between 10 and 15 cm, and the second between 90 and 95 cm. Since the system can be modelled approximately as a firstorder system, the following Sugeno fuzzy controller structure was assumed:
Li , j :
IF h(k ) is A1i and r (k + 1) is A2j THEN
u (k ) = b i, j
(13)
For a good model performance we used 10 antecedent fuzzy sets on each input universe. The initial parameters of the fuzzy controller were set to zero. The adaptation factors Ka and Kb were set 0.05 respectively. The feedback PI controller parameter were K = 0.93 TI = 1/76 based on [34]. In order to compare the control algorithm developed with previous works the integral of the absolute error (IAE) performance index was used (calculated over 1000 seconds). Table 1 compares the controller’s performance with that achieved in previous and recent work. Table 1. A comparison of IAE values for the level control problem PI controller [34] Posthlethwaite, RSK model [56] Linkens, TakagiSugeno Model [8] Postlethwaite, Leastsquares identified model [7] Indirect learning to compensate nonlinearities Learning based on feedback control signal
IAE between 10 and 15 cm 426 524 194 132
IAE between 90 and 95 cm 300 349 194 99
125
104
101
80
Figure 6 and 7 shows the effect of the learning at the bottom of the tank. 20
20
15
15
h(cm)
h(cm)
10
10 Bias (uFF)
uFB +uFF
F
0
Bias (uFF)
cm3/s
5
uFB +uFF
F cm3/s
5
0
200
400 600 800 Time (second)
0
1000
0
200
400 600 800 Time (second)
1000
Tracking performance after 1 run Tracking performance after 10 run Figure 6. Learning results based on indirect learning method
20
20
15
15
h(cm)
h(cm)
10
10 Bias (uFF)
uFB +uFF
Bias (uFF)
cm3/s
uFB +uFF
F cm3/s
5
5
0
F
0
200
400 600 800 Time (second)
1000
0
0
200
400 600 800 Time (second)
1000
Tracking performance after 1 run Tracking performance after 10 run Figure 7. Learning results based on feedback control signal With the indirect and feedback control based learning we achieved performance value of 125 and 104, and 101 and 80 respectively witch is better than PI [34] and TakagiSugeno fuzzy model based predictive control developed by Linkens and Kandiah [8] and RSK model based control [56]. The result is slightly better than the off line identified relational model based algorithm [7]. This relational fuzzy model was applied in IMC architecture. Since the relational fuzzy model could not have been inverted the authors solved the inverse problem by Fibonacci search, which demands more calculation then the using adaptation method shown here. The control algorithm was capable to handle effects of the change in process dynamics. Figure 8 shows the process dynamics when the flow coefficient changes.
20 α=1.5
15 h(cm)
10 Bias (uFF)
uFB +uFF
F cm3/s
5
0 0
200
400 600 800 Time (second)
1000
Figure 8. Learning results when process dynamics changes (based on indirect learning method)
5
Conclusions
This paper presented the capabilities of a learning fuzzy feedforward controller to compensate process nonlinearities. The adaptation algorithm based on the gradientdescent method, in compensate changes in process dynamics. As the table 1 shows that we have achieved good improvement of the performance index characterising the operation of the control system. This type of application can be a proper tool where the already existing linear control algorithm is to be replaced by a better, more efficient nonlinear adaptive control system. In our future work, we will apply this approach in a fuzzy logic control of a laboratory scale liquid level rig.
References 1. Driankov, D., Helerndoorn, H., 1993, An Introduction to Fuzzy Control, SpringerVerlag Berlin. 2. Babuska, R., Sousa, J., Verbruggen, H.B., 1995, ModelBased Design of Fuzzy Control Systems, Proceedings of the EUFIT’95, 837841 3. Graham, P., Newel, R. B., 1988, Fuzzy Identification and Control of a Liquid Level Rig, Fuzzy Sets and Systems,26, 255273 4. Graham, P., Newel, R. B., 1989, Fuzzy Adaptive Control of a First Order Process, Fuzzy Sets and Systems, 31, 4765
5. Posthlethwaite, B., 1994, A Modelbased Fuzzy Controller, Trans IChemE, 72(A1), 3846 6. Posthlethwaite, B., 1997, Buliding a ModelBasied Fuzzy Controller, Fuzzy Sets and Systems, 79, 313 7. Posthlethwaite, B., Brown, M., Sing, C. H., 1997, A New Identification Algorithm for Fuzzy Relational Models and its Applications in Modelbased Control, Trans IChemE, 75(A1), 453458 8. Linkens, D.A., Kandiah, S., 1996, LongRange Predictive ontrol Using Fuzzy Process Models, Trans IChemE, 74(A1), 7788 9. Branco, C., Dente, A., 1996, Learning From Examples to Compensate Nonlinearities in Electro Mechanical Drivers: a Fuzzy Logic Approach, The 1st Online Workshop on Soft Computing, http://www.bioele.nuee.nagoyau.ac.jp/wsc1/ 10. Lee, K. S., Bang, S. H., Yi S., Son J., S., Yoon, C. S. , 1996, Iterative Learning Control of Heatup Phase for a Batch Polymerisation Reactor J. Proc. Control, 6(4), 255262 11. Szeifert, F., Chovan, T., Nagy, L., 1992, Adaptive Optimising Control Algorithm for a CSTR, Comp. Chem. Eng., 16/S, 197204 12. Nomura, H., Hayashi, I., Wakami, N. A, 1991, SelfTuning Method of Fuzzy Control by Descent Method, Proceedings of the IFSA’91, 155158 13. Guely, F., Siarry, P.,1993, Gradient Descent Method for Optimising Various Fuzzy Rule Bases, Proceedings of the IEEEFuz93, 12411246 14. Jang, R.R., Sun, C.T., 1995, NeuroFuzzy Modeling and Control, Proceedings of the IEEE, March 1995 15. Renders, J.M., Saerens, M., Hugues, B., 1997, Fuzzy Adaptive control of a Certain Class of SISO Discretetime Processes, Fuzzy Sets and Systems, 85, 4961 16. Glorennec, P.Y., Adaptive Fuzzy Control., 1991, Proceedings of the IFSA’91, 3336 17. Andersen, H.C., Lofti, A., Tsoi, A.C., 1997, A New Approach to Adaptive Fuzzy Control: The Controller Output Error Method, IEEE Trans. on Systems, Man, and Cybernetics, 27B(4) 18. Jager R. R., Fuzzy Logic in Control, Ph.D. Thesis, Delft Universitry of Technology, 1995 19. Renders, J.M., Saerens, M., Hugues, B., 1997, Fuzzy Adaptive control of a Certain Class of SISO Discretetime Processes, Fuzzy Sets and Systems, 85, 4961
Lihat lebih banyak...
Comentários