In this study, a Neural Fuzzy Inference Network (NFIN) for controlling the temperature of the system has been proposed. The NFIN is inherently a modified fuzzy rule based model possessing neural networks learning ability using hybrid learning algorithm which combines gradient descent and least mean square algorithm. In contrast to the general adaptive neural fuzzy networks where the rules should be decided in advance before parameter learning is performed, there are no rules initially in the NFIN. The rules in the NFIN are created and adapted as on-line learning proceeds via simultaneous structure and parameter identification. The NFIN has been applied to a practical water bath temperature control system, designed and developed around Atmels 89C51 microcontroller. In the above system, four experiments were conducted on water bath each for 250 and 500 mL min-1 flow of water for different volume of water and power of heater. The performance of NFIN has been compared with Fuzzy Logic Controller (FLC) and conventional Proportional Integral Derivative (PID) controller. The three control schemes are compared through experimental studies with respect to set point regulation. It is found that the proposed NFIN control scheme has the best control performance of the three control schemes.
PDF Abstract XML References Citation
How to cite this article
The Proportional-Integral-Derivative (PID) controller (Yazdizadeh et al., 2009) has been commonly used in process industries, since it has many advantages such as simple designing technique, easy application and parameter design methods and so on. It is well known that appropriate values of PID parameter are the most important aspect which influences the PID controller performance and is hard to get especially for large time-delay or time-variation uncertain system. Some kinds of self-tuning PID controller have been presented to solve these problems (Wu et al., 2005; Wen and Liu, 2004; Huapeng and Handroos, 2004; Astrom et al., 1993; Astrom and Hagglund, 1995; Chu and Teng, 1999; Ho and Xu, 1998). In this study, we use the neurofuzzy based tuning formula of PID controller for developing Neural Fuzzy Inference Network (NFIN) system.
The concepts of fuzzy logic and artificial neural network for control problem have been developed into a popular research topic in recent years (Hsu, 2007; Fakhrazari and Boroushaki, 2008; Lin and Xu, 2006). The reason is that the classical control theory usually requires a mathematical model. The inaccuracy of mathematical modeling of the plants usually degrades the performance of the controller, especially for nonlinear and complex control problems (Astrom and Wittenmark, 1989). On the contrary, the advent of the Fuzzy Logic Controllers (FLCs) (Driancov et al., 1996; Harris et al., 1993; Sugeno, 1985; Tareghian and Kashefipour, 2007) and the neural network controllers (Miller et al., 1990; Yabuta and Yamada, 1991) based on multilayered Back Propagation Neural Networks (BPNNs) has inspired new resources for the possible realization of better and more efficient control (Kosko, 1992; Lin et al., 1996; Hourfar and Salahshoor, 2009) over traditional adaptive control systems (Narendra et al., 1991). That is, they do not require mathematical models of the plants. The traditional neural networks can learn from data and feedback but the meaning associated with each neuron and each weight in the network is not easily understood. For a BPNN, its nonlinear mapping and self-learning abilities have been the motivating factors for its use in developing intelligent control systems (Yabuta and Yamada, 1991). However, slow convergence is the major disadvantage of the BPNN. Alternatively, the fuzzy logic systems are easy to appreciate because it uses linguistic terms and the structure of if-then rules (Miller et al., 1990). The simplicity of designing these fuzzy logic systems has been the main advantage of their successful implementation in a lot of industrial process (Islam et al., 2007). There has a lot of fuzzy PI, fuzzy PD and fuzzy PID control schemes were proposed in literature (Visioli, 2001; Haiguo and Zhixin, 2007; Juang and Lin, 1998). Despite the advantages of the conventional FLC over traditional approaches, there remain a number of drawbacks in the design stages. Even though rules can be developed for many control applications, they need to be set up through expert observation of the process. The complexity in developing these rules increases with the complexity of the process. FLCs also consist of a number of parameters that are needed to be selected and configured in prior, such as selection of scaling factors, configuration of the center and width of the membership functions and selection of the appropriate fuzzy control rules. In contrast to the pure neural network or fuzzy system, the neural fuzzy network (Nurnberger et al., 1999; Azeem et al., 2003; Chopra et al., 2005; Kasabov, 1996; Caswara and Unbehauen, 2002; Munasinghe et al., 2005; Ouyang et al., 2005; Arbaoui et al., 2006) representations have emerged as a powerful approach to the solution of many problems (Lin et al., 2001).
In this study, a Neural Fuzzy Inference Network (NFIN) is proposed to combine the advantages of fuzzy logic and neural networks. The NFIN is a fuzzy rule-based network possessing neural network's learning ability. A major characteristic of the network is that no pre-assignment and design of the rules are required. The rules are constructed automatically during the on-line operation. Two learning phases, the structure identification as well as the parameter learning phases (Lin and Lin, 1996), are adopted on-line for the construction task. The structure identification determine the proper number of rules needed i.e., finding how many rules are necessary and sufficient to properly model the available data and the number of membership functions for input and output variables. Parameter learning phase is used to tune the coefficients of each rule (like the shape and positions of membership functions). In this study, a Neural Fuzzy Inference Network (NFIN) is proposed to overcome the disadvantages of the BPNN and FLC.
Temperature control is an important factor in many process control systems (Khalid et al., 1993; Khalid and Omatu, 1992; Tsai et al., 2008). If the temperature is too high or too low, the final product is seriously affected. Therefore, it is necessary to reach some desired temperature points quickly and avoid large overshoot.
Since the process-control systems are often nonlinear and tend to change in an unpredictable way, they are not easy to control accurately.
In the present study we conducted four sets of experiments, each for 250 and 500 mL min-1 continuous flow of water with different volume of water and power of heater. In these experiments, the tracking performance of the three controllers i.e., NFIN controller, FLC controller and conventional PID controller in respect of controlling a set point temperature of 50°C are studied under the same training process via a simulation of above water bath temperature control systems. This study shows that the NFIN has good control performance of the three temperature-control system and is able to cope with the disadvantages of the BPNN.
NEURAL FUZZY INFERENCE NETWORK (NFIN)
NFIN learning: The learning scheme is mainly composed of two steps. In the first step, the number of rules nodes (hence the structure of the network) and initial rule parameters (weights) are determined using structure identification; in the latter all parameters are adjusted using parameter identification as shown in Fig. 1.
To start the structure tuning, a training set composed of input-output data which contains n inputs and one output must be provided. The data points have been assumed to be normalized in each dimension and they consider as a possible cluster center which define a measure of the potential of data point (Chiu, 1994). To extract the set of initial fuzzy rules, firstly data is separated into groups according to their respective classes. Subtractive clustering is then applied to the input space of each group of data individually for identifying each class of data. Each cluster center may be translated into a fuzzy rule for identifying the class.
A fuzzy rule of the following form is adopted in our system:
|•||Rule 1: If X1 is Ai1 and X2 is Ai2 and... then class is c1|
where, Xi is the ith input variable and A is the membership function (Gaussian type).
|Fig. 1:||Steps of learning scheme for NFIN|
|Fig. 2:||Structure of Neuro-fuzzy control|
For each rule, the first antecedent corresponds to the first input, the second antecedent corresponds to the second input etc. and for output we use centroid defuzzification method.
The parameters of the initial fuzzy rules are tuned by using neural network techniques through parameter identification. A neural network with four layers is designed based on the fuzzy rules obtained in first phase. To realize the described fuzzy inference mechanism, the operation of a neural network is shown in Fig. 2 and structure of NFIN described below.
Structure of the NFIN: The NFIN consists of nodes, each of which has some finite fan-in of connections represented by weight values from other nodes and fan-out of connections to other nodes as shown in Fig. 3. Associated with the fan-in of a unit is an integration function f which serves to combine information, activation or evidence from other nodes. This function provides the net input for this node:
where, u1(k), u2(k), ..... up(k) are inputs to this node and w1(k), w2(k), ..... wp(k) are the associated link weights.
|Fig. 3:||Basic structure of a node in a neural network|
The superscript (k) indicates the layer number. A second action of each node is to produce an activation value as a function of its net-input:
where, a (.) denotes the activation function. In a standard form:
Now the functions of the nodes in each of the layers are described below (Farivar et al., 2009).
Layer 1: No computation is done in this layer. Each node in this layer which corresponds to only one input variable, transmits input values to the next layer directly. That is:
In the above equation, the link weight (wi) in layer one is unity.
Layer 2: Units in this layer receives the input value (X1, X2 Xn) and acts as the fuzzy sets representing the corresponding input variable. Nodes in this layer are arranged into j groups; each group representing the IF-part of a fuzzy rule. Node (i, j) of this layer produces its output H(2)ij, by computing the corresponding Gaussian membership function:
where, mij is center (or mean) and σij is width (or variance) of the membership function.
Layer 3: The number of nodes in this layer is equal to the number of fuzzy rules. A node in this layer represents a fuzzy rule; for each node, there are n fixed links from the input term nodes representing the IF-part of the fuzzy rule. Node Hij(3) of this performs the AND operation by product of all its inputs from layer 2. For instance:
Layer 4: This layer contains only one node whose output O(4) represents the result of centroid defuzzification, i.e.,:
Where, cj is the class of data as discussed above and it is also called the fuzzy singletons defined on output variables. Apparently, mij, σij and cj are the parameters that can be tuned to improve the performance of the system. The above parameters have been tuned by using parameter learning. After that a hybrid learning algorithm which combines the gradient descent method and the Least Square Estimator (LSE) method is used to refine these parameters. Since gradient descent method is generally slow and likely to become trapped in local minima when it can be apply to identify the parameters in an adaptive network.
The following parameter learning is performed on the whole network after structure learning. The idea of backpropagation (Rumelhart and McClelland, 1986) is used for this supervised learning. The goal is to minimize the error function:
where, yd (t) is the desired output and y (t) is the current output. For each training data set, starting at the input nodes, a forward pass is used to compute the activity levels of all the nodes in the network. Then starting at the output nodes, a backward pass is used to compute ∂E/∂y for all the hidden nodes. Assuming that adjustable parameter w is mij and σij in a node, the general learning rule used is:
where, η is the learning rate and:
To show the learning rule, we shall show the computations of ∂E/∂w, layer by layer, starting at the output nodes and we will use the membership functions with centers mis and widths σis as the adjustable parameters for these computations. These adjustable parameters are updated by the backpropagation algorithm. Using the chain rule, we have:
And mij(2) is updated by:
Similarly, we have:
And σ(2)ij is updated by:
EXPERIMENTAL AND SIMULATION STUDIES
Problem statement: The continuous-time temperature control of a water bath system (Tanomaru and Omatu, 1992) is described as:
where, y (t) is system output temperature in °C, u (t) is heating flowing inward the system, Yo is room temperature, R and C are the equivalent thermal resistance and capacity between the system borders and surroundings respectively. We assume both quantities to be constant; now rewrite the above Eq. 22 into discrete time form as:
Equation 23 models a real water bath temperature-control system, where α and β are some constant values describing R and C. The system parameters used in this example are α = 1.00151e-4; β = 8.67973e-3, γ = 40.0 and yo =25.0°C which were obtained from a real water bath. The plant input u (k) is limited between 0 volt and 5volt. The sampling period is Ts = 30 sec. The system configuration is shown in Fig. 4, where yd is the desired temperature of the controlled plant.
Experimental setup: To see whether the proposed NFIN can achieve good performance and overcome the disadvantages of the BPNN, we compare it with the BPNN under the same aforementioned training procedure on a simulated water bath temperature-control system. The schematic diagram of the experimental setup of the water bath temperature controller is shown in Fig. 5. The hardware for controlling the temperature of the bath has been designed and fabricated around the Atmel microcontroller 89C51. The temperature of the bath is acquired with the help of PRT. When the PRT is excited with a constant current source of 1mA current, it gives the output in voltage form. The voltage is so amplified that the value of the amplified voltage is equal to the temperature. This voltage is then fed to the 4½ digit ADC. This digitized voltage is then sent to the PC by microcontroller through RS232C interface. The program in PC does the calculations using the NFIN algorithm. After doing all the calculations it generates the firing angle to control the energy in the water bath and sends the same to the microcontroller.
|Fig. 4:||Block diagram of NFIN controller|
|Fig. 5:||Schematic diagram of the experimental setup|
|Fig. 6:||Block diagram of FLC|
Thereafter, microcontroller triggers the triac accordingly. The NFIN program in PC continuously monitors the temperature and accordingly controls the same in the bath. In case it senses any change in the temperature, it automatically modifies the parameters of the temperature controller. The NFIN program in PC has been written in Visual BASIC-5.0 language. The program stores the data in the user defined file as well as plots the online data in the form of graph on the screen. A specially designed varying environment is created by continuous flow of fresh water in such a way that the level of the water inside the bath remains constant even if the hot water is removed at random outflow rates. Uniform heat distribution is maintained using the circulator and the isolated system is used to minimize external disturbance. The cooling is achieved at a constant rate using the refrigeration system of the bath.
Experimental results: In this study, we compare the NFIN controller to the FLC and PID controller. Each of the three controllers is applied to the water bath temperature control system. The comparison performance measures include set-points regulation and parameter variation as change in volume of water and change in power of heater in the system.
The discrete form of PID controller can be described by well known expression (Lin et al., 2006; Anderson, 1987). In this control system Kp and Ki are set as 2.5 and 100, respectively and Kd is kept at constant value of 10.
For the Fuzzy Logic Controller (FLC) as shown in Fig. 6, the input variables are chosen as e(t) and ce(t), where e (t) is the performance error indicating the error between the desired water temperature and the actual measured temperature and ce(t) is the rate of change in the performance error e(t).
|Fig. 7:||Membership functions for e (t), ce (t) and u (t)|
|Fig. 8:||Temperature response of a water bath having 5 L volume at 0.5 KW for 250 mL min-1 flow using NFIN, FLC and PID controller|
The output or the controlled linguistic variable is the voltage signal u (k) to the heater. Seven fuzzy terms are defined for each linguistic variable. These fuzzy terms consist of Negative Large (NL), Negative Medium (NM), Negative Small (NS), Zero (ZE), Positive Small (PS), Positive Medium (PM) and Positive Large (PL). Each fuzzy term is specified by a Gaussian membership function as shown in Fig. 7. According to common sense and engineering judgment, 49 fuzzy rules are specified in Table 1. Like other controllers, a fuzzy controller has some scaling parameters to be specified. They are GE, GCE and GU, corresponding to the process error, the change in error and the controllers output, respectively.
In the water bath, four sets of experiments were conducted, each for 250 and 500 mL min-1 continuous flow of water. In these experiments, the tracking performance of the three controllers i.e., NFIN controller, FLC controller and conventional PID controller in respect of controlling a setpoint temperature of 50°C are studied. The four systems of these two flows of water are categorized in terms of volume of water and power of heater as shown in Table 2.
|Fig. 9:||Temperature response of a water bath having 10 L volume at 1.0 KW for 250 mL min-1 flow using NFIN, FLC and PID controller|
|Table 1:||Fuzzy rule base|
|Table 2:||Different values of system parameters|
These are: (1) 5 L with 0.5 KW, (2) 10 L with 1.0 KW, (3) 10 L with 1.5 KW and (4) 15 L with 1.5 KW. In this way overall eight experiments were conducted in the water bath.
The simulation results for 250 mL min-1 continuous flow rate of water for 5 L with 0.5 KW, 10 L with 1.0 KW, 10 L with 1.5 KW and 15 L with 1.5 KW are shown in Fig. 8-11, respectively. In these graphs the temperature response of three controllers are shown simultaneously for comparison. It is clear from these figures that there is always large overshoot and settling time for conventional PID controller and also for all the systems. The temperature control performance of FLC controller is also not satisfactory as it takes large settling time. These problems with both the controllers happen because on implementing the FLC, the numbers of rules and membership functions have to be decided and tuned by hand and PID controller needs proper tuning of Kp, Ki and Kd parameters.
|Fig. 10:||Temperature response of a water bath having 10 L volume at 1.5 KW for 250 mL min-1 flow using NFIN, FLC and PID controller|
|Fig. 11:||Temperature response of a water bath having 15 L volume at 1.5 KW for 250 mL min-1 flow using NFIN, FLC and PID controller|
Altogether we say that both controllers require a long time in design for achieving good performance. On the other hand NFIN controller takes much less settling time and overshoot as compare to FLC and PID controller, to achieve desired temperature of 50°C. This occurs because on implementing the NFIN controller, no controller parameters have to be decided in advance. We only need to choose proper training patterns and the input vector of the NFIN controller. When we compare the results of Fig. 9 with 10 having same volume of water as 10 L but different power of heater than it is observed that 10 L with 1.0 KW system gives best result for controlling desired temperature.
|Fig. 12:||Temperature response of a water bath having 5 L volume at 0.5 KW for 500 mL min-1 flow using NFIN, FLC and PID controller|
|Fig. 13:||Temperature response of a water bath having 10 L volume at 1.0 KW for 500 mL min-1 flow using NFIN, FLC and PID controller|
It means, for good tracking control of the system using NFIN, the volume of water should be increased through proportion of 0.5 L with 0.5 KW power of heater.
The same trend of results, as discussed in above section, is obtained for the remaining four systems with 500 mL min-1 flow rate of water as shown in Fig. 12-15, respectively. It is also noticeable that systems of 250 mL min-1 flow rate of water gives better result with less settling time and overshoot as compare to systems of 500 mL min-1 flow rate of water with same configuration.
One can say that in our temperature controller the NFIN tracked well the set point temperature of 50°C by the optimal design of PID parameters using neural network in combination with fuzzy inference rules.
|Fig. 14:||Temperature response of a water bath having 10 L volume at 1.5 KW for 500 mL min-1 flow using NFIN, FLC and PID controller|
|Fig. 15:||Temperature response of a water bath having 15 L volume at 1.5 KW for 500 mL min-1 flow using NFIN, FLC and PID controller.|
It means among the three controllers, NFIN controller has the shortest rise-time and the best regulation-control performance with smallest errors in the tracking path.
In conclusion, in this study, a temperature controller based on Neural Fuzzy Inference Network (NFIN) has been proposed to control precisely the desired temperature of water bath. The NFIN is a fuzzy rule-based network possessing neural network's learning ability. The four experiments were conducted, each for 250 and 500 mL min-1 flow of water for different volume of water and power of heater. The experimental results of NFIN controller has been compared with FLC and conventional PID controllers, through implement on above systems. These results show that NFIN controller has better control performance in terms of less settling time with minimum overshoot and error than the other two controllers.
- Wu, W., J. Yuan and L. Cheng, 2005. Self-tuning sub-optimal control of time-invariant systems with bounded disturbance. Proc. Am. Control Conf., 2: 876-882.
- Wen, S.H. and X.H. Liu, 2004. Application of temperature fuzzy self-tuning PID controller in a resistance furnace. Proc. Int. Conf. Mach. Learning Cybernetics, 2: 817-821.
- Huapeng, W. and H. Handroos, 2004. Hybrid fuzzy self-tuning PID controller for a parallel manipulator. Fifth World Congr. Intell. Control Automation, 3: 2545-2549.
- Chu, S.Y. and C.C. Teng, 1999. Tuning of PID controllers based on gain and phase margin specifications using fuzzy neural network. Fuzzy Sets Syst., 101: 21-30.
- Ho, W.K. and W. Xu, 1998. PID tuning for unstable processes based on gain and phase-margin specifications. IEE Proc. Control Theory Appl., 145: 392-396.
- Hsu, C.F., 2007. Self-organizing adaptive fuzzy neural control for a class of nonlinear systems. IEEE Trans. Neural Networks, 18: 1232-1241.
- Fakhrazari, A. and M. Boroushaki, 2008. Adaptive critic-based neurofuzzy controller for the steam generator water level. IEEE Trans. Nuclear Sci., 55: 1678-1685.
- Lin, C.J. and Y.J. Xu, 2006. A hybrid evolutionary learning algorithm for TSK-type fuzzy model design. Math. Comput. Modell., 43: 563-581.
- Tanomaru, J. and S. Omatu, 1992. Process control by on-line trained neural controllers. IEEE Trans. Ind. Electron., 39: 511-521.
- Sugeno, M., 1985. An introductory survey of fuzzy control. Inform. Sci., 36: 59-83.
- Yabuta, T. and T. Yamada, 1991. Learning control using neural networks. Proceedings of the 1991 IEEE International Conference Robotics and Automation, April 9-11, Sacramento, CA., USA., pp: 740-745.
- Islam, S., N. Amin, M.S. Bhuyan, M. Zaman, B. Madon and M. Othman, 2007. FPGA realization of fuzzy temperature controller for industrial application. WSEAS Trans. Syst. Control, 2: 484-490.
- Visioli, A., 2001. Tuning of PID controllers with fuzzy logic. IEE Proc. Control Theor. Appl., 148: 1-8.
- Haiguo, P. and W. Zhixin, 2007. Simulation research of fuzzy-PID synthesis yaw vector control system of wind turbine. WSEAS Trans. Syst. Control, 2: 469-476.
- Juang, C.F. and C.T. Lin, 1998. An on-line self-constructing neural fuzzy inference network and its applications. IEEE Trans. Fuzzy Syst., 6: 12-32.
- Azeem, M.F., M. Hanmandlu and N. Ahmed, 2003. Structure identification of generalized adaptive neuro-fuzzy inference systems. IEEE Trans. Fuzzy Syst., 11: 666-681.
- Kasabov, N.K., 1996. Learning fuzzy rules and approximate reasoning in fuzzy neural networks and hybrid systems. Fuzzy Sets Syst., 82: 135-149.
- Caswara, F.M. and H. Unbehauen, 2002. A neurofuzzy approach to the control of a flexible-link manipulator. IEEE Trans. Robotics Automation, 18: 932-944.
- Munasinghe, S.R., M.S. Kim and J.J. Lee, 2005. Adaptive neurofuzzy controller to regulate UTSG water level in nuclear power plants. IEEE Trans. Nuclear Sci., 52: 421-429.
- Ouyang, C.S., W.J. Lee and S.J. Lee, 2005. A TSK-type neurofuzzy network approach to system modeling problems. IEEE Trans. Syst. Man Cybern. Part B: Cybern., 35: 751-767.
- Lin, F.J., C.H. Lin and P.H. Shen, 2001. Self-constructing fuzzy neural network speed controller for permanent-magnet synchronous motor drive. IEEE Trans. Fuzzy Syst., 9: 751-759.
- Lin, C.J. and C.T. Lin, 1996. Reinforcement learning for an ART-based fuzzy adaptive learning control networks. IEEE Trans. Neural Networks, 7: 709-731.
- Khalid, M., S. Omatu and R. Yusof, 1993. MIMO furnace control with neural networks. IEEE Trans. Control Syst. Technol., 1: 238-245.
- Khalid, M. and S. Omatu, 1992. A neural network controller for a temperature control system. IEEE Control Syst. Mag., 12: 58-64.
- Chiu, S., 1994. Fuzzy model identification based on cluster estimation. J. Intell. Fuzzy Syst., 2: 267-278.
- Lin, C.J., C.H. Chen and C.Y. Lee, 2006. A TSK-type quantum neural fuzzy network for temperature control. Int. Math. Forum, 1: 853-866.