Accepted Manuscript
Adaptive fuzzy PI controller with shifted control singletons Ioan Filip , Iosif Szeidert PII: DOI: Reference:
S0957-4174(16)00059-2 10.1016/j.eswa.2016.01.036 ESWA 10494
To appear in:
Expert Systems With Applications
Received date: Revised date: Accepted date:
9 December 2014 19 January 2016 20 January 2016
Please cite this article as: Ioan Filip , Iosif Szeidert , Adaptive fuzzy PI controller with shifted control singletons, Expert Systems With Applications (2016), doi: 10.1016/j.eswa.2016.01.036
This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customers we are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, and review of the resulting proof before it is published in its final form. Please note that during the production process errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.
ACCEPTED MANUSCRIPT
AC
CE
PT
ED
M
AN US
CR IP T
Highlights We have designed and validated a new expert fuzzy control strategy. An intelligent tuning algorithm based on hysteresis logic is proposed. The tuning algorithm adjusts only one of the control singletons. he proposed solution ensures an accurate control without increasing the number of fuzzy linguistic terms.
1
ACCEPTED MANUSCRIPT
Adaptive fuzzy PI controller with shifted control singletons Ioan Filip*, Iosif Szeidert* *Department of Automation and Applied Informatics, University Politehnica Timisoara, Faculty of Automation and Computer Sciences, Bd. V. Parvan, No.2, Timisoara, Romania Phone: 040256403237
[email protected],
[email protected]
CE
PT
ED
M
AN US
CR IP T
Abstract It is well known the fact that the design of a fuzzy control system is based on the human expert experience and control engineer knowledge regarding the controlled plant behavior. As a direct consequence, a fuzzy control system can be considered as belonging to the class of intelligent expert systems. The tuning procedure of a fuzzy controller represents a quite difficult and meticulous task, being based on prior data regarding good knowledge of the controlled plant. The complexity of the tuning procedure increases with the number of the fuzzy linguistic variables and, consequently, of the fuzzy inference rules and thus, the tuning process becomes more difficult. The paper presents a new design strategy for such expert fuzzy system, which improves their performance without increasing the number of fuzzy linguistic variables. The novelty consists in extending the classic structure of the fuzzy inference core with an intelligent module, which tunes one of the control singletons, providing a significant simplification of the design and implementation procedure. The proposed strategy implements a logical, not physical, supplementation of the linguistic terms associated to the controller output. Therefore, a fuzzy rules set with a reduced number of linguistic terms is used to implement the expert control system. This logical supplementation is based on an intelligent algorithm which performs a shifting of only one of the control singletons (the singleton associated to the SMALL_ linguistic variable), its value becoming variable, a fact that allows an accurate control and a better performance for the expert control system. The logic of this intelligent algorithm is to initially provide a high controller output, followed by a slowdown of the control signal near to the operating set point. The main advantage of the proposed expert control strategy is its simplicity: a reduced number of linguistic terms, combined with an intelligent tuning of a single parameter, can provide results as accurate as other more complex available solutions involving tuning of several parameters (well described by the technical literature). Also, a simplification of the preliminary off-line tuning procedure is performed by using a reduced set of fuzzy rules. The generality of the proposed expert control strategy allows its use for any other controlled process. Keywords: expert fuzzy controller; intelligent tuning algorithm; control singleton; fuzzy inferences; induction generator.
AC
1. Introduction The fuzzy controllers represent an efficient solution for many control problems, being based on several rules conceived on the basis of plant handling experience. They are most suitable for the control of high non-linear plants or those for which an analytic model is unavailable (Zadeh, 2015; Nahlovsky, 2015; Lilly, 2010; Chahkoutahi et al., 2015). Such a parameterized analytical model (especially linear) would allow the design of a classic control law (such as PI, PID, minimum variance, etc). In contrast with a control system based on conventional techniques, the fuzzy control involves prior data (qualitative and quantitative) regarding the controlled plant (which have a nonlinear characteristic and is unidentifiable through an analytical model). The basic data used for the design of a fuzzy controller has as a starting point the experience of a human expert regarding the manual operation of the considered plant. Starting from input/output measurements, the following steps are required in a first stage, aiming the data fuzzification, (Zadeh, 2015; Lilly, 2010):
2
ACCEPTED MANUSCRIPT
AC
CE
PT
ED
M
AN US
CR IP T
- The selection of input/output variables of the expert controller and, accordingly, the type of fuzzy controller (fuzzy PI, PID, etc); - The setting of the number of the linguistic terms, completely covering the variation ranges of the previously chosen input/output variables; - The sizing of these linguistic terms, by setting appropriate values in accordance to their variation ranges. In the present paper, a PI type fuzzy controller (with integration on output) is chosen for analysis, the input variables being the system output error, respectively the error derivative. For each of those, five linguistic variables are considered, their corresponding membership functions being of triangular shape, respectively of trapezoidal shape for the extreme variation ranges. For the controller output, singleton type membership functions are considered (see Fig. 1). Also in the case of the controller output, 5 linguistic variables are considered related to the 5 variation ranges of the chosen variables (big_negative, small_negative, zero, small_positive, big_positive). The set-up of those variables (as a last step of the data fuzzification procedure) represents in fact the tuning of the fuzzy controller, an operation that is one of the main subjects of the present paper. Based on the human expert experience and control engineer knowledge regarding the qualitative and especially the quantitative plant behavior, the tuning procedure of a fuzzy control system is quite a laborious task (Gomez-Ramirez, 2007; Pandey, 1997; Gomez-Ramirez et al., 2011; Mudi, & Mitra, 2012). The performance of a fuzzy control system depends on the number of fuzzy linguistic terms and range of the membership function. The technical literature presents many complex techniques for on-line tuning a fuzzy controller (based on gradient method, genetics algorithms, neural networks, neuro-fuzzy, even fuzzy logic again, etc), involving many adjustable parameters (Ding, et al., 2015; Hoang, 2016; Krzysztof, 2016; Manentia. et al., 2015; Mester, 2014; Nasser, et al., 2015; Uddin, et al., 2015; Zadeh, 2015). Other previous researches of the authors were also focused on developing and tuning expert fuzzy system designed to control plants from diverse domains, including power plants (Filip, et al., 2014; Filip, et al., 2006; Tirian, et al., 2013; Tirian, et al., 2014; Budisan, et al., 2007). One of the main goals of these researches was to improve and simplify the tuning strategy of such expert control system (especially with application to the power systems). A preliminary empirical off-line tuning (based on a priori data) is supposed to be performed, aiming the achievement of good results, in accordance with the imposed qualitative requirements. The question that arises is the following: Is there a possibility to perform a more precise tuning that would ensure even better control performances? In other words, can this “final” tuning to provide maximum performances (by a proper adjustment of the linguistic terms)? When can the tuning procedure be considered finished? Obviously, related to the last question, a possible response would be: the tuning is finished when the controlled output performances are satisfying in relation to imposed criteria. But, are these performances best achievable, reported to the classic control quality indicators? This incertitude will persist even in the moment when the finalization of the off-line tuning procedure is decided. This is the kind of questions that the present paper will try to answer to, overcoming the preconceived idea that good knowledge regarding the operating features of a controlled process could be sufficient to make a facile and fast tuning of a fuzzy controller. Furthermore, although the data fuzzification represents the first step in order to implement a fuzzy controller and it is accomplished off-line, after testing the fuzzy controller, this operation is resumed again (of course, with other values associated to the linguistic terms), until the required quality indicators of the expert control system are achieved. Practically, the tuning procedure of a fuzzy controller is made through iterative attempts, until a retuning of its parameters does not lead to significant improvements of its control performances (Mendes, Araujo, & Souza, 2013). For some inputs/outputs of the controller or of the controlled plant, their evolution is easy to be understood and interpreted by the control system designer. But for others, their interpretation is quite difficult. For example, if the controlled plant output presents a too long settling time, logically the values of the singletons associated to the controller output must be increased. If an overshoot occurs, the values of these singletons must be decreased. However, taking into account a variable such as the error’s derivative (supposing that the controller inputs are the system output error and 3
ACCEPTED MANUSCRIPT
AN US
CR IP T
the error derivative), it is quite difficult to talk about a human expert's knowledge regarding its evolution. Maybe the error represents a concept easily interpretable by the control system designer, but such a thing cannot be stated about the derivative of error. There naturally arises the question whether it is possible to establish some general rules or recommendations, or even an algorithm that would assist the tuning operation of a fuzzy controller. The present paper proposes such useful rules applicable to a PI fuzzy controller, having the output error and error derivative as input variables, respectively the singleton linguistic term associated to the controller output variable. Although tested on a particularized fuzzy control system, with application to control of induction generator terminal voltage, this fact does not limit the generality of the proposed rules in the context of any controlled plant. Furthermore, the complexity of the tuning procedure of a fuzzy controller increases when increasing the number of linguistic variables. For this reason, a simpler controller structure was chosen, with only 5 linguistic terms (simplifying the tuning procedure), even if its control precision is inferior to the one with 7 or more linguistic variables. Therefore, a PI fuzzy controller with only two input variables was chosen (unlike a PID fuzzy controller requiring three input variables, but also having better performances) (Santos, Domido, et al., 1996). The paper proposes, as it will be presented in the following chapters, a logical mechanism that allows (after a preliminary off-line tuning process of the controller) an online adaptation of a parameter, so that the controller behaves as if the number of linguistic terms associated to the controller output were increased from 5 to 7. In the context of disturbances rejection, such an approach provides better performances for the control system.
AC
CE
PT
ED
M
2. Off-line tuning scenario Several study cases have been analyzed for the following set of 5 linguistic variables associated to the input variables (error and error derivative), respectively to the controller output variables: (big_negative), (small_negative), (zero), (small_pozitive), (big_pozitive). As already stated, the triangular shape was chosen for membership functions associated to input variables (except for its extremities for which trapezoidal shapes were chosen), respectively singleton shape for the controller output (Fig.1). To reduce the number of parameters related to the linguistic variables of those values should be tuned, the following relationships between the linguistic variables have been defined: (big_pozitive)= 2 x (small_pozitive) (big_negative)= 2 x (small_negative) It should be noted that this simplifying assumption doesn’t influence significantly the generality of the problem, respectively of the proposed solution, as will be shown in the following case studies.
Fig. 1 Fuzzy membership functions The objective of the expert control system is to maintain a constant terminal voltage of an induction generator connected to a power system (see Fig.2), through the excitation control. It is mentioned that all the study cases (corresponding to a tuning scenario of a PI fuzzy controller with integration on output) are considering a control system designed only to reject the perturbations that can disturb the induction generator terminal voltage. In this order of idea, it is considered a certain operating point of generator, under the action of some external perturbations. The following types of external perturbations were considered: positive/negative variations of the mechanical torque, respectively positive/negative variations of the terminal’s load through coupling/decoupling of 4
ACCEPTED MANUSCRIPT
CR IP T
resistive loads (see Fig 3.a.). All case studies presented below will consider these types of perturbations. Some areas of the controlled output (terminal voltage) or of the controller’s output (excitation voltage) are highlighted through a zoom.
Fig.2 Expert fuzzy control system
AC
CE
PT
ED
M
AN US
As already was mentioned, the controlled plant is represented by an induction generator connected to a power system. A nonlinear plant model of 7th order was considered for the performed simulation studies (Filip, et al., 2014; Zou et al., 2010; Abad, et al., 2011; Aller, et al., 2013). The usage of fuzzy logic for design and implementation of expert control system for highly non linear plants can be considered as an efficient alternative solution to classical control systems, which usually require a linear model of the controlled plants. The tuning of the fuzzy controller requires some a priori data regarding the variation range of process inputs / outputs. Therefore, in Fig. 3.a is presented the time evolution of the system’s output error (subsequently considered as input into the controller), the plant operating in open-loop. The quantitative variation of output error allows an approximate scaling of linguistic variables related to them. Of course, if some data regarding the derivative of error (error’s variation speed) are available, it would be perfect. However, this information can be only obtained afterwards the control loop is closed, under the action of control system, which will influence considerably the derivative of error. This aspect will be discussed again in one of the further case study regarding the tuning of fuzzy controller (see Fig. 8.b). In this preliminary tuning stage of the controller, in which are gathered data (quantitative information) regarding the plant evolution, the plant is operating unconstrained (in open-loop), under the action of external perturbations. In Fig. 3.b. there can be noticed that the considered plant – induction generator connected to a power system – presents, even in steady-state regime, small oscillations. Their value isn’t significant, but considering an electric process with a fast time constant, one of the control objective is to eliminate or at least to reduce as much as possible those oscillations. The steady-state oscillations indicate that the plant is at the limit of stability (fact that is often found at electric machines connected to a power system) (Lopez et al., 2008; Arumugam, 2013; Moharana, & Varma, 2011; Abdel-Khalik et al., 2010). In this case, the control system has also the task to perform a stabilization of the plant. The subsequent simulations (performed in Simulink) won’t refer certain numerical values (particularized for the considered case). As an alternative, some generic notation are considered ( , , ), analyzing the successive qualitative adjustment on the basis of the obtained feedback through the interpretation of the results regarding the controlled output quality.
5
ACCEPTED MANUSCRIPT
Fig.3.a System output error (open loop variation of the perturbed terminal voltage)
CR IP T
Fig.3.b Small oscillations of terminal voltage in steady-state regime
AC
CE
PT
ED
M
AN US
The tuning of a fuzzy controller is a difficult process, meant to find the suitable values of the linguistic variables associated to the inputs and output of the controller, to achieve quality indicators required for the controlled output (fast rejection of disturbance, rejection or reduction of oscillations, small overshoot time, etc). The simplifying hypothesis, regarding the relation between the linguistic variables (small_ and big_), reduces the number of tunable parameters from six to three. It will be proved that the linguistic variables from the (small_) class act the main role in the tuning scenario, any others having only a secondary role. Study case 1: The first study case considers the following initial values for the controller tuning procedure (see Fig. 1): - Fuzzy linguistic terms value of error membership functions: a1 , a2 2 ; - Fuzzy linguistic terms value for derivative of error membership functions: b1 , b2 2 ; - Fuzzy linguistic terms value of control membership functions (singleton): c1 , c2 2 . The effective values of parameters , , , afferent to the linguistic terms, were chosen on the basis of the data regarding the open-loop operation of the plant (see Fig. 3.a, b), respectively based on the manual operation of the plant. Initially, smaller values were chosen to provide more precise control around the zero error point (the steady state regime being oscillating). Analyzing the controlled output described in Fig. 4.a, b, c, one can be notice that the disturbance rejection time is low enough, but there also occurs a significant increase of the terminal voltage oscillations in the steady state regime. The process is continuously oscillating, therefore the control system is practically unstable (see comparatively Fig. 4.c. and Fig. 3.b). The plant being already on the stability limit (Fig.3.b), the fuzzy controller amplifies this instability (the oscillations amplitude increases – see Fig.4.d). This increased instability is due to a too high controller output generated for the area of (small_) linguistic variable. Therefore: - For a small positive error, the controller compensates through a too high negative increment of control, the plant output overflows the zero error point and a negative error occurs. - The controller will react to this negative error, generating again a too high positive increment of control, the plant output overflows the zero error point and so the system will continuously oscillate. The control performance is not satisfactory, especially for the case of an electrical process operating at the stability limit (Abdel-Khalik et al., 2010; Kimbark, 1995; Toumi, & Kamoun, 1998), the conclusion being that the controller increases the system instability due to a too strong control action.
6
ACCEPTED MANUSCRIPT
AN US
CR IP T
Fig. 4.a Terminal voltage (controlled output) Fig. 4.b Terminal voltage –zoom 1
Fig. 4.d Excitation voltage (controller output) -zoom
M
Fig. 4.c Terminal voltage –zoom 2 (higher oscillations)
AC
CE
PT
ED
Study case 2: Starting from the previously stated conclusion, the first action that can be initiated is to generate a “weaker” control (decreasing its increment), leading to a stabilization of the system. In this order of idea, the value of the singletons associated to the controller output is decreased: - Fuzzy linguistic terms value for control membership functions (singleton): c1 , c2 2( )
Fig. 5.a Terminal voltage (controlled output).
Fig. 5.b Terminal voltage –zoom 1.
7
Fig. 5.c Terminal voltage –zoom 2.
CR IP T
ACCEPTED MANUSCRIPT
AC
CE
PT
ED
M
AN US
Therefore, considering a smaller increment of the control, the results obtained are described in Fig.5.a,b,c. Based on this, the following remarks can be made: - The disturbance rejection time is longer (due to the smaller control increment generated over the entire control range) – see comparatively Fig.5.c and Fig.4.c.; - The oscillations of the process output (operating in the steady-state regime) have been significantly reduced, but not entirely eliminated– see comparatively Fig. 5.b and Fig. 4.b Analyzing the results of the two performed study cases, we can conclude that: - Low values of singletons (associated to the controller output) active in the range of big errors ((big_) linguistic variable), will lead to an increase of the disturbance rejection time (so they have a negative effect); - On the other hand, by decreasing the value of the singleton afferent only to the (small_) linguistic variable (for small errors), a reduction of oscillations is obtained, allowing a better stabilization of the system (so a positive effect). In order to achieve a compromise between the two situations, a variable value for the singletons (associated to the controller output) will be considered, depending on the error range: - In the high error range – big value for the active singleton, associated to the (big_) linguistic variable (of controller output); - In the low error range – small value for singleton associated to the (small_) linguistic variable. On might think that a simple setup of distinct values -small values for (small_) singletons and big values for (big_) singletons- could easily solve the problem. However, one must not neglect the fact that the fuzzy kernel generates only an increment of the control variable (taking into account a fuzzy PI controller with integration on output). In this way, maintaining a big value for the singletons associated to the (big_) linguistic variables, the increments generated by the fuzzy kernel and added to the control variable can lead to a substantial increase of the controller output. As a result of a decreasing error, it is possible that, a switching on a singleton associated to the (small_) linguistic variable could be performed too late, the control being already too big (leading to the system instability). On the other hand, if the switching on the (small_) singletons was performed more quickly, the control would increase too slowly and, consequently, the settling time of the plant output may also increase substantially. It seems that no matter how we proceed, a compromise between the two main objectives has to be reached: short settling time / stability of the control system. What would happen if we consider a supplementary logic level (very_small_) for linguistic variable associated to the control variable? This would mean an increased number of linguistic variables (for each of the input/output of the controller), and consequently an increased complexity of the tuning procedure of the fuzzy controller (this becoming more difficult). But maybe there is another solution: Without a real increase of the number of linguistic variables, a logical increase of their number can be simply done by an intelligent algorithm for on-line shifting of the singletons associated to the controller
8
ACCEPTED MANUSCRIPT output (see Fig.6). Such a logical mechanism will be presented in the following chapter, together with the afferent validation tests.
CR IP T
3. On-line tuning mechanism of the controller output singletons The main goal of the proposed intelligent tuning algorithm is to decrease –only in the range of small errors - the value of active singletons associated to the controller output, in order to reduce or even remove the steady-state oscillations (practically without affecting the value of the active singletons in a big error range). Therefore, an adaptation of the control singletons according to the following intelligent algorithm is proposed (see Fig. 6 and Fig. 7): - In the initial phase of the disturbance occurrence, when the error is big ( | error | ) and it decreases, big values ( c1 ) are maintained for the singletons (in order to reduce the settling time) - In the second phase, when the error keeps decreasing ( | error | ) and tends to zero,
AN US
the values of the singletons used for the control’s variable computation ( c1' ) are reduced, in order to prevent the oscillations of the controlled output (due to a too “strong” control). Therefore, considering the case of a disturbance rejection, the fuzzy linguistic term values for the control membership functions (singletons) are tuned according to the following rules (see Fig. 6): - c1' - for | error | (practically a shifting of the c1 singleton, and as a result, there
ED
M
occurs a new c1' singleton as a substitute for the c1 singleton); - c1 - for a decreasing error | error | (partially corresponding to the error linguistic term a1 ); - c2 2 (corresponding to the error linguistic term a2 2 ) On closer analysis of the intelligent tuning algorithm (see Fig.6), one can notice a shifting of the existing singletons associated to the control variable (with the values and 2 ) towards smaller values (( and 2( ) ), a fact that from a logical point of view is equivalent with
PT
the occurrence of supplementary singletons. Furthermore, the singleton with absolute value is always active in the steady-state regime (as it will be proved in the next section) due to the process instability, thus forcing a non-zero permanent increment for the controller output. Also, due to the fact that the tuning mechanism (based on relay logic with hysteresis - see Fig.6) is in ON state only in the small error range | error | (considering a decreasing sense of the error’s absolute
CE
value), only the new “very-small” singleton c1' becomes active, the other new singleton
AC
( 2( ) ) never being activated. This inactivation is specific to the disturbance rejection system, for which the effect of the disturbance plant produces a maximum output error in the first moments of action (immediately after, the error decreases under the controller action). In fact, the number of useful and active linguistic variables associated to the controller output increases from 5 to 7. In the following study cases some tests will be performed in order to validate the proposed algorithm.
9
ACCEPTED MANUSCRIPT
Fig. 6 Intelligent on-line tuning algorithm of control singletons (based on hysteresis logic)
CR IP T
Fig. 7 Intelligent expert fuzzy controller
AC
CE
PT
ED
M
AN US
Study case 1: Based on the above mentioned aspects, the test results presented in Fig. 8.a…d, lead to the following conclusions: - The disturbance rejection time is decreased, due to a strong control variable at the beginning of the disturbing action, when the error is maximal (see, for example, Fig 8.d comparatively with Fig. 5.c). - A slight overshoot occurs (Fig.8.d). - Small steady-state output oscillations are maintained in the range of small errors (Fig. 8.d), despite a lower controller output, adjusted through an adequate tuning of the control singleton. It is possible that the decrease of the control variable could be done too late, so that the already reduced control increment becomes insignificant relative to the control variable to which it’s added.
Fig. 8.a Terminal voltage (controlled output)
Fig. 8.b Derivative of error
10
ACCEPTED MANUSCRIPT
Fig. 8.d Terminal voltage –zoom 2
CR IP T
Fig. 8.c Terminal voltage –zoom 1
AC
CE
PT
ED
M
AN US
So, only the decrease of the singleton value from the zero error range seems to be insufficient! It appears that this decrease is made too late and, as a consequence, the control is too big, leading to the system instability (and oscillations). In the following study cases, this hypothesis will be evaluated. As a possible remedy, the values of the fuzzy linguistic variables associated to error, respectively to derivative of error, are increased, extending their active range from the vicinity of zero error (see Fig. 9, 10). Thus, for a large error, a faster switching of control variable to a smaller value singleton is done. As a result, an excessive increase of the control variable (which could lead to the system instability and increased oscillations) is avoided. So, a new study case results, with another set of controller tuning parameters Study case 2: As in the previous case, the control singletons are adjusted on-line by the proposed intelligent tuning algorithm (Fig. 6) in order to reduce the steady state oscillations. In addition, we test the case of increased values for the linguistic variables associated to error and errors derivative (extending the range of linguistic variables). A special interest presents the increase of the (small_) linguistic variable value associated to the error and error derivative, thus extending their active (zero) range around zero- error and zero error derivative (see Fig. 9 and Fig. 10). As a consequence of the previously mentioned: - Fuzzy linguistic terms of error membership functions: a1 , a2 2( ) ; Fuzzy linguistic terms for derivative of error membership functions: b1 , b2 2( , ) ; - Fuzzy linguistic terms for membership functions of control (singleton): c1' , c1 , c2 2 (on-line tuning of control singletons, like in the previous case).
Fig. 10 Adjusted values of fuzzy linguistic terms (extended ranges) associated to error and derivative of error
Fig. 9 Extended ranges of fuzzy linguistic terms associated to output error variable 11
ACCEPTED MANUSCRIPT
Fig. 11.b Terminal voltage –zoom 1 -with control singleton adaptation-
AC
CE
PT
ED
M
Fig. 11.a Terminal voltage (controlled output) -with control singleton adaptation-
AN US
CR IP T
Fig. 9 reveals the fact that an extending of the linguistic variables ranges associated to error (and also to error derivative) leads to a slower increase of the controller output nearby zero-error point, as a result of a smaller control increment generated by the fuzzy controller (in the vicinity of steady-state points). Analyzing the results presented in Fig.11.a, b, c, d, one can notice very good performances: disturbance rejection time slightly lower than in the previous case and especially a good stability of the control system, the steady state oscillation of the controlled output being almost removed (see comparatively Fig. 11.b and Fig. 8.d). The system being slightly unstable, in the steady state regime the controller output also has an oscillating shape (see Fig. 11.e). For each sampling time of the control system (5 ms), it practically generated a supplementary control increment, alternatively positive or negative. The Fig.11.b (comparatively with Fig.8.d) shows a decrease of the overshoot (which is almost removed). One can also notice that the initial oscillations amplitude of the controlled output (0.2 units – see Fig.4.c), is substantially reduced (dropping bellow 0.001 – see Fig. 11.d), thus improving the control system stability.
Fig. 11.c Terminal voltage –zoom 2 -with control singleton adaptation-
Fig. 11.d Terminal voltage –zoom 3 -with control singleton adaptation(0.005 sec -sample time)
12
ACCEPTED MANUSCRIPT
CR IP T
By analyzing Fig.11.d, respectively Fig.11.e, one can notice that, in the vicinity of the zero-error point, the fuzzy controller successively generates, at each sampling time, a positive increment followed by a negative one, and so on. In other words, trying to nullify the output error, the controller acts (around zero-error point) as a two-state relay with hysteresis (forced by the steady state oscillations of the controlled process). Practically this is the best obtainable controller behavior, ensuring the Fig. 11.e Controller output –zoom (0.005 sec - required performances (including a sample time) significant reduction of the system output oscillations).
CE
PT
ED
M
AN US
An important issue is to check whether these good results are not only the effect of the offline extension of the activation ranges of the linguistic variables (associated to the output error and the derivative of error), but also the effect of the algorithm for the on-line shifting of the singletons associated to the controller output. Thus, in the following two tests, the proposed tuning mechanism of the control singletons is no longer used (based on two ranges: very_small_error / small_error), in order to perform a comparative analysis with the case of a fuzzy controller with constant parameters. Study case 3: Without a tuning mechanism and considering the high value ( ) afferent to the control variable singletons: c1 , c1 2 .
Fig. 12.b Terminal voltage –zoom 1 (high constant singleton value)
AC
Fig. 12.a Terminal voltage –zoom for high constant singleton value-
By analyzing the results presented in Fig.12.a, one can notice that the disturbance rejection time remains low. So, from this point of view, there are no relevant changes of control performance. Instead, there occurs an undesirable increase of the steady state oscillations of the controlled output (see Fig. 12.b and Fig.12.c, in comparison with Fig.11.c and Fig.11.d), as a result of a too strong control near to steady state. Fig. 12.c Terminal voltage –zoom 2 (high . constant singleton value) 13
ACCEPTED MANUSCRIPT Study case 4: Without a tuning mechanism and considering the small value ( ) afferent to the control variable singletons: c1 , c2 2( ) . One can notice (see Fig.13), that the disturbance rejection time significantly increases (a fact that was expected, considering a “weaker” control).
CR IP T
Fig. 13 Terminal voltage –zoom for small constant singleton value-
ED
M
AN US
In conclusion (through a simple comparison of the results presented in the figure sets 11, 12 and 13, there results that the on-line tuning solution (through a differentiated setup of the singleton values), which operates according to a newly defined error range (very_small_error range) additional to the two existing ranges (small_error range, big_error range), obviously offers better performances: reduced disturbance rejection time, simultaneously with a significant reduction of the steady state output oscillations, which ensures a good stability of the control system. It is obvious that the classical solution based on a fuzzy controller with constant parameters must reach a compromise between two requirements: the reducing of the disturbance rejection time (requiring a high increment of control), and respectively the reducing of the steady state output oscillations (requiring a small increment of control) By using the proposed on-line tuning algorithm of the singletons associated to the control variable, both problems can be easily solved, without complicating the controller structure, respectively the tuning procedure. Finally, the controller tuning procedure, describing the tuning and setting of the linguistic variables afferent to the inputs, respectively the output of the fuzzy controller, can be briefly synthesized by the following relations (see also Fig. 6 and Fig. 10): a1 , a2 2( ) (1) b1 , b2 2( ) (2)
AC
CE
PT
c1' , c1 , c2 2 (3) The relation (3) basically denotes a logical supplementation with a new linguistic term associated to the control singletons (very_small_), without extending the rules set implemented by the fuzzy inference core. Analyzing the results from which we started (Fig. 4.a…d), respectively the final results reached (Fig.11.a …e), the proposed tuning procedure (including the online self-tuning algorithm) clearly proves its validity and effectiveness. It must be added that many other supplementary tests were performed, but in this paper we chose to present only the most relevant in terms of results or conclusions. For example, to demonstrate the importance of a proper setting of linguistic variable associated to the derivative of the output error, in the context of using the proposed intelligent adaptation mechanism, the values of its linguistic terms were decreased: b1 , b2 2( ) . The error derivative variable (the error variation speed) is obviously influenced by the control variable. But also the values of the linguistic terms afferent to the error derivative considerably influence the control variable. Based on the previous assumptions, the result shown in Fig.14.b (comparatively with Fig.11.d.) denotes a reduced amplitude of the steady state output oscillations. However, in the context of a decreased value of linguistic terms associated to the error derivative, comparing the results from Fig 14.a and Fig. 11.b, one clearly notices that the performance goes down (a significantly increasing of the disturbance rejection time can be observed in Fig. 14.a). The 14
ACCEPTED MANUSCRIPT
Fig. 14.a Terminal voltage (increase value for fuzzy terms of the derivative of error)
CR IP T
explanation consists in the fact that, for the range of a small derivative of error, the control variable is too “weak”. Thus, in the proximity of the output zero-error, when the disturbance is significantly rejected, the control increments are too small, so the control is too weak, a fact that leads to a longer settling time.
Fig. 14.b Terminal voltage (increase value for fuzzy terms of the derivative of error) -zoom
CE
PT
ED
M
AN US
A few rules and recommendations can be extracted from the performed tuning scenario, aiming to solve two issues specific to an expert control system designed for disturbance rejection. First issue: too long disturbance rejection time. Cause: too “weak” control. Recommendation: - The increasing of the singletons associated to the control variable. Further, this increase would better be performed only for the singletons afferent to the control variable corresponding to big error linguistic ranges, maintaining smaller values nearby zero-error point – with the recommended presence of an on-line self-tuning mechanism of the control variable singletons values (thus avoiding other issues, see the second issue) Second issue: the presence of steady state output oscillations. Causes: plant at the limit of stability, too “strong” control, the amplifying of the oscillations (the fuzzy controller operates as a relay – without hysteresis). Recommendations: - The increasing of the limits of the range afferent to the (small_) linguistic variable, for both controller input variables (error and error derivative), providing a larger area to get a smooth control near to the zero-error point. - The decreasing of the singletons associated to the control variable, only for the area of (small_) linguistic variables, using the proposed tuning mechanism for these singletons. Obviously, these rules and guidelines can be combined in order to ensure an improved efficiency.
AC
4. Conclusions The main contribution presented in the paper is a new design strategy for an expert control system based on fuzzy logic. The theoretical novelty consists in an intelligent tuning algorithm, extending the fuzzy inference core, which shifts one of the control singletons (the singleton associated to the SMALL_ linguistic variable of the controller output), while maintaining fixed all the other singletons. Thus, its value becomes variable, fact that allows an accurate control near to the zero-error point and a better performance for the expert control system. The basic idea of the intelligent algorithm (that uses logic based on hysteresis) is to initially provide a high controller output, followed by a slowdown of the control signal near to the operating set point. Therefore, near to the zero-error point, the proposed intelligent algorithm provides a smaller control increment, thereby avoiding an increase of the process output oscillations and, consequently, avoiding an increase of the instability of the expert control system. This task is performed by a logical (not physical) supplementation of the linguistic terms associated to the controller output. Therefore, a 15
ACCEPTED MANUSCRIPT
ED
M
AN US
CR IP T
fuzzy rules set with a reduced number of linguistic terms is used to implement the expert control. The paper also provides some useful rules for the difficult and meticulous procedure regarding the preliminary off-line tuning of an expert fuzzy controller. The practical advantage of the proposed expert control strategy is its simplicity: a reduced number of linguistic terms, combined with an intelligent tuning of a single parameter, can provide results as accurate as other more complex available solutions involving tuning of several parameters, well described by the technical literature. Also, as an advantage, by using a reduced set of fuzzy rules, a simplification of the preliminary off-line tuning procedure is obtained. As a contribution, technically speaking from the control system theory point of view, the proposed expert control system uses an intelligent algorithm to achieve two objectives: decreasing the disturbance rejection time (requiring a high control) respectively, decreasing the steady state oscillations (requiring a small control). And last but not least, although tested on a particular process, the theoretical generality of the proposed expert control strategy allows its use to control any other plant. The only relative weakness of the proposed intelligent expert control system is the simplifying assumption regarding the relationship between (big_) and (small_) fuzzy linguistic variables ((big_term)= 2 x (small_term)), made also to reduce the number of adjustable parameters (this being one of the assumed objectives). However, this assumption does not limit the applicability domain of the proposed control strategy. The proposed algorithm is validated for the case of a process at the limit of stability (slightly oscillating), this being the processes class for which the proposed expert control system is most appropriate. If these oscillations are small enough to be accepted, so accurate control is not required. However, if the oscillations must be reduced to improve the system stability, the proposed expert control system can simply solve the problem, without a major complication of the structure. A set-point control system perturbed by disturbances was considered in the paper, in order to validate the proposed expert control system. As a future research, other class of plants should be tested for general validation of the proposed strategy. Thus, the control systems class which tracks a time-varying reference must be also taken into account. Other fuzzy inference methods (such Takagi-Sugeno) or other type of fuzzy controllers (such PID) can be subjects of future research in relation with the proposed expert control strategy. The applicability of the expert systems to control nonlinear process always remains an open direction for future researches.
PT
Acknowledgments: This paper was developed through the Partnerships in Priority Areas - PN II, with the support of ANCS, CNDI - UEFISCDI, Project no. 36/2012.
AC
CE
References Abad, G., Lopez, J. M., Rodriguez, Marroyo, L., & Iwanski, G. (2011). Doubly Fed Induction Machine: Modeling and Control for Wind Energy Generation, Wiley-IEEE Press, New-Jersey, USA. Abdel-Khalik, A.S., Masoud, M.I., Williams, B.W., Mohamadein, A.L., & Ahmed, M.M. (2010). Steady-State Performance and Stability Analysis of Mixed Pole Machines With Electromechanical Torque and Rotor Electric Power to a Shaft-Mounted Electrical Load, IEEE Transactions on Industrial Electronics, (57), 1, 22-34. Aller, J.M., Delgado, D., Bueno, A., & Viola, J.C. (2013). Model of the induction machine including saturation, In Proceedings of the 15th European Conference on Power Electronics and Applications (EPE), Lille, France,1-8. Arumugam, S. (2013). Real And Reactive Power Control Of Doubly Fed Induction Generator During Voltage Sag, International Journal of Engineering Research & Technology (IJERT), (2), 3, 1-5. Budisan, N., Prostean, O., Robu N., & Filip, I. (2007). Revival by automation of induction generator for distributed power systems, in Romanian academic research, Renewable Energy, 32(9), 1484–1496. 16
ACCEPTED MANUSCRIPT
AC
CE
PT
ED
M
AN US
CR IP T
Chahkoutahi, A., MoradiPour, M.R., Gholami, M., Ashja, S., & Rahimi, M.H. (2015). Design High Precision Intelligent Nonlinear-Based Controller, International Journal of u- and e- Service, Science and Technology, 8(1), 201-210. Ding, Z., Liwei, A., Jinghao, L., & Qingling, Z. (2015). Adaptive fuzzy fault-tolerant control with guaranteed tracking performance for nonlinear strict-feedback systems, Fuzzy Sets and Systems, Available online 19 October 2015. Filip, I., Prostean, O., Szeidert I., Balas, V.E., & Prostean, G. (2006). Adaptive Fuzzy Controller and Adaptive Self-Tuning Controller: Comparative Analysis for the Excitation Control of a Synchronous Generator, In Proceedings of the 7th WSEAS International Conference on Automation & Information, Cavtat, Croatia, 89-94. Filip, I., Szeidert, I., & Prostean, O. (2014). Mathematical modelling and numerical simulation of the dual winded induction generator's operating regimes, Soft Computing Applications, Advances in Intelligent Systems and Computing, 357(2), 1161-1170. Gomez-Ramirez, E. (2007). Simple Tuning of Fuzzy Controllers, Hybrid Intelligent Systems, Studies in Fuzziness and Soft Computing, 208, 115-133. Gomez-Ramirez, E., Melin, P., & Castillo, O. (2011). Simple Tuning of Type-2 Fuzzy Controllers, Soft Computing for Intelligent Control and Mobile Robotics, Studies in Computational Intelligence, 318, 103-123. Hoang, N. (2016). A novel similarity/dissimilarity measure for intuitionistic fuzzy sets and its application in pattern recognition, Expert Systems with Applications, 45, 97-107. Kimbark, E. W. (1995). Power System Stability, IEEE Press, Power System Engineering Series, In John Wiley & Sons, Inc (Ed.). Krzysztof, S. (2016). Ridders algorithm in approximate inversion of fuzzy model with parametrized consequences, Expert Systems with Applications, Available online 7 January 2016 Lilly, J. H. (2010). Fuzzy Control and Identification, In John Wiley & Sons, Inc (Ed.). Lopez, J., Sanchis, P., Gubia, R., Ursua, A., Marroyo, L., & Roboam, X. (2008). Control of Doubly Fed Induction Generator under symmetrical voltage dips, In IEEE International Symposium on Industrial Electronics, Cambridge, 2456 – 2462. Manentia, F., Rossia, F., Goryunovb, A.G., Dyadikb, V. F., Kozinb, K.A., Nadezhdinb, I.S., & Mikhalevichb S.S. (2015). Fuzzy adaptive control system of a non-stationary plant with closed-loop passive identifier, Resource-Efficient Technologies, 1(1), 10–18. Mendes, J., Araujo, R., & Souza, F. (2013). Adaptive fuzzy identification and predictive control for industrial processes, Expert Systems with Applications, 40 (17), 6964-6975. Mester, G. (2014). Design of the Fuzzy Control Systems based on Genetic Algorithm for Intelligent Robots, Interdisciplinary Description of Complex Systems, 12(3), 245-254. Moharana, A., & Varma, R. K. (2011). Instability in Induction Generator based Wind Farms Connected to Series Compensated Transmission Lines, In Proceedings of the International Conference on Energy, Automation, and Signal (ICEAS), Bhubaneswar, Odisha, 1-8. Mudi, R. K., & Mitra, P. (2012). A self-tuning fuzzy PID controller with real-time implementation on a position control system. In Proceedings of Third International Conference on Emerging Applications of Information Technology (EAIT), 32 – 35. Nahlovsky, T. (2015). Optimization of Fuzzy Controller Parameters for the Temperature Control of Superheated Steam, Procedia Engineering, 100, 1547–1555. Nasser G.A., Sharkawy (2015) A.B., Soliman, M.E.S. (2015). An Auto-Tuning Method for the Scaling Factors of Fuzzy Logic Controllers with Application to SISO Mechanical System, International Journal of Materials, Mechanics and Manufacturing, 3(1), 49-55. Pandey, S. K. (1997). A self tuning fuzzy controller, Computational Intelligence Theory and Applications, Lecture Notes in Computer Science, 1226, 343-362. Santos, M., Domido, S., & Cruz, J. M. (1996). Fuzzy-PID controllers vs. fuzzy-PI controllers, In Proceedings of the Fifth IEEE International Conference on Fuzzy Systems, New Orleans, USA, 598 – 1604.
17
ACCEPTED MANUSCRIPT
AC
CE
PT
ED
M
AN US
CR IP T
Tirian, G.O., Filip, I., & Prostean, G. (2013). The control of a CNC metal plate cutting machine using a fuzzy algorithm, In Proceedings of the IEEE 9th International Conference on Computational Cybernetics (ICCC), 2013, Tihany, Hungary, 247 – 250. Tirian, G.O., Filip, I., & Prostean, G. (2014). Adaptive control system for continuous steel casting based on neural networks and fuzzy logic, Neurocomputing, 125, 236–245. Toumi, A., & Kamoun, M.B.A. (1998). On the order reduction and stability analysis of large electric machines, European Transactions On Electrical Power, (8), 2, 125-131. Uddin, M.N., & Patel, B. (2015). Adaptive neuro-fuzzy and loss minimization based high performance control of IPMSM, In Proceedings of IEEE Energy Conversion Congress and Exposition (ECCE), Montreal, Canada, 358 – 365. Zou, Y., Elbuluk, M., & Sozer, Y. (2010). A Complete Modeling and Simulation of Induction Generator Wind Power Systems, In IEEE Industry Applications Society Annual Meeting, 1-8. Zadeh, L. A. (2015). Fuzzy logic - a personal perspective, Fuzzy Sets and Systems, 281, 4–20.
18