Agent Based Fault Detection System for Chemical Processes using Negative Selection Algorithm

Artificial Immune Systems—which are imitative mechanisms of vital actions of discrimination between self and nonself—have been proposed since 1990s. And a lot of methods have been proposed using various parts of artificial immune systems, for example, pattern recognition by B-cells for fault detection in gas lift oil well by Aguilar [2, 3], Natural Killer (NK) immune cells mechanisms by Laurentys [4], clonal selection algorithm for maintenance scheduling of power generators by El-sharkh [5], dendritic cell for failure detection of aircraft by Azzawi [6]. Also lots of applications have been proposed— Wada et al. [7] proposed an fault mode detection method for automotive exhaust gas treatment system, Inomo et al. [8] proposed an failure diagnosis method for water supply network by using immune system. *Corresponding Author, nkimura@chem-eng.kyushu-u.ac.jp www.astesj.com 90 https://dx.doi.org/10.25046/aj030211 N. Kimura et al. / Advances in Science, Technology and Engineering Systems Journal Vol. 3, No. 2, 90-98 (2018)


Introduction
This paper is an extension of work originally presented in 2017 6th International Symposium on Advanced Control of Industrial Processes (AdCONIP) [1].
Recently, it has been increasing the accidents of chemical plants. Figure 1 shows the annual numbers of the industrial accidents in Japan (the data is based on the summary of accidents in specified business facilities inside petrochemical complex in Japan, published by Fire and Disaster Management Agency, Ministry of Internal Affairs and Communications, Japan, posted on their official web site on May 2017, article in Japanese). The numbers of the industrial accidents in Japan-except accidents caused by earthquakes or tsunami-has been increasing from 45 in 1993 to over 250 in 2016. It is said that the remote causes of the rise of accidents in Japan are mass retirements of skilled engineers, insufficient technical tradition, labor-savings in production lines or plant operations, aged deterioration of productive facilities, or maintenance cost reduction in assertive ways. Therefore, effective fault detection system for chemical plants is required. In the general chemical plant operations, plant alarm system has been used to notify the process deviance to operators via warning lights or buzzers in the operation rooms, where the upper and lower thresholds of the measured values or the thresholds of their amounts of changes have been set to the sen-sors in the chemical plants. However, it is so difficult to determine the adequate values of thresholds (that is 'alarm setpoint') that if the alarm setpoints are too small, the alarm floods will be caused, if the setpoints are too large, missed detection of deviation will be caused. And also it is difficult to detect if the plant has normal and regular load fluctuations under both the normal and the abnormal situations. Therefore, a method is required that observes the relationship among several variables to detect faults in a complicated system. We focus on the Artificial Immune System.
Artificial Immune Systems-which are imitative mechanisms of vital actions of discrimination between self and nonself-have been proposed since 1990s. And a lot of methods have been proposed using various parts of artificial immune systems, for example, pattern recognition by B-cells for fault detection in gas lift oil well by Aguilar [2,3], Natural Killer (NK) immune cells mechanisms by Laurentys [4], clonal selection algorithm for maintenance scheduling of power generators by El-sharkh [5], dendritic cell for failure detection of aircraft by Azzawi [6]. Also lots of applications have been proposed-Wada et al. [7] proposed an fault mode detection method for automotive exhaust gas treatment system, Inomo et al. [8] proposed an failure diagnosis method for water supply network by using immune system. In this study, we adopt a negative selection algorithm to detect faults in a chemical plant. Negative selection algorithm is an imitative method of mechanisms of differentiation and maturation, and discrimination of normal/abnormal. The algorithm was proposed by Forrest in 1994 [13] for the detection of computer virus. The negative selection algorithm has been applied to various domains-Dasgupta et al. [9] applied to aircraft fault detection, Gao et .al [10] applied to motor fault detection, Xiong et al. [11] and Prasad et al. [12] applied to fault detection in the Tennessee Eastman process.
In this study, we introduce detectors to detect faults based on the negative selection algorithm. The adopted method of the negative selection algorithm is mentioned in section 2. In order to utilize negative selection algorithm, we designed and implemented an agent based framework of fault detection system, mentioned in section 3. The target chemical process, the simulation conditions and the results are mentioned in section 4. And the conclusion in section 5.

Negative Selection Algorithm
Negative selection algorithm is one of the methods of the artificial immune systems inspired by the vital immune systems. Negative selection algorithm borrowed from the mechanism of T-cell generation in thymus. On T-cell generation in vital system, immature T-cells are randomly generated with various immunological types. And then some of T-cells are eliminated if they have high affinity with self-antigen to avoid response to "self". T-cells which are not selfaffinitive can be matured to react with foreign antigen to protect itself.
In our system, detectors-correspond to mature T-cells in vital-can detect faults by recognizing the normal operational data of chemical processes which are assumed as self and the abnormal operational data which are assumed as nonself. In Figure 2(a)-(c), the steps of the generation phase of detectors are illus-trated. Figure 2(a) illustrates that there are self regions in a 2-dimensional process variables space. And the rest area of the variables space are nonself regions. Figure 2(b) illustrates that detector candidates which indicated by plus(+) signs are generated with various position, where the radius is set as the minimum distance to the self region. In this study, we implement two steps of candidate generation. The first step is a grid-based generation. Place the detector candidates at every 0.1 of each axis-axis is normalized between [0.0, 1.0]-, therefore 121 (each axis divided into eleven) grid-based candidates are generated. The second step is a semi-randomly generation. Place a detector candidate at random position. Then check whether the new candidate is overlapped on the previously generated candidates. If it overlapped, the new candidate is eliminated in this step, if not, the new candidate is added to the candidates. And then, check the coverage of the detectors. If the coverage is over 90%, candidate generation will be terminated. From Figure 2(b) to (c), the elimination of some candidates which have affinity with "self" is carried out. Figure 2(c) illustrates that seven valid detectors are remained. Then the generation phase is finished.  In the detection phase, a sample consists of the values of the current process variables-which are to be examined-is plotted into the variable space indicated by a 'star'. If the plotted sample is inside the detection area of at least one detectors, the sample is recognized as "abnormal" (Figure 3(a) ). And if the sample is out of any detection area, the sample is recognized as "normal" (Figure 3(b) ).
(a) A sample which recognized as "abnormal" :plotted sample (b) A sample which recognized as "normal" "Normal" sample "Abnormal" sample Activated detector www.astesj.com

Fault Detection System
A multiagent framework is adopted to implement a fault detection system using negative selection algorithm. In our system, there are Detector Manager, Detector Leader(s) and Database Agent illustrated in Figure 4. Detector Manager is an interface between human operator and the system. Detector Leader(s) have their own variable spaces to detect faults. These variable spaces represent relationships between two certain process variables. And there are a lot of detectors under the dominion of a Detector Leader. In order to avoid missing detection, some Detector Leaders with variety of combinations of the process variables are required. Database Agent have a database which stores operational database of the target process. All these agents can communicate with other agents via TCP/IP network connection. In this study, nine variables were selected from among 120 measured variables in the boiler plant. The selected nine variables are listed in Table 1 and also illustrated in Fig.5. The operational data was obtained by using dynamic plant simulator "Visual Modeler" (Omega Simulation Co., LTD).

Normal Operational Data
Data of a normal operation-in which the steam demands were stepwise changed without any malfunction-were obtained using the dynamic simulator. The data contain 7200 samples of the above-mentioned nine process variables and its sampling interval is one second. The trend graphs of PI1422 and TI1422 were indicated in Figure 6. These data were normal operational data which should be recognized as self in the artificial immune system even though the steam demands had increased at time 600 second.

Abnormal Operational Data
Abnormal operational data with three kinds of assumed malfunctions were obtained using the dynamic simulator. Table 2 shows the list of three assumed malfunctions. And Figures 8-10 illustrate the trend graphs of PI1422 and TI1422 when the one of malfunctions was occurred at time 600 second, but without any steam demand change during these 7200 seconds. Pressure of the outlet of the forced draft fan TI1310 Temperature of the exhaust gas at the gas air heater outlet TI1308 Temperature of the combustion air at the gas air heater outlet

Generation of Detectors
Detectors were generated by using normal operational data for each of 36 combinations of 2dimensional variable spaces-all the 2-dimensional variable spaces consists of two different process variables from the nine variables. Figure 7   the unpainted parts in Figure 7, and not exist the normal operational data-which correspond "nonself" region-at the painted sky blue parts. The sets of detectors were generated for the rest of variable spaces in the same way. The numbers of the detectors in each variable space were from 121 to 316 including both the grid detectors and randomized detectors. The bold dashed lines in the trend graphs are the maximum and minimum values under the normal operation ( Figure 6). We can find that it is impossible to detect fault using upper/lower thresholds of variable PI1422 and/or TI1422 when the malfunction BFO or GAH occurred, because the values of PI1422 and TI1422 have not exceeded the ranges under the normal operation. On the other hand, it may possible to detect at time 671 second by lower threshold of TI1422 when the malfunction FDFclose occured at time 600 second. TI1422 also exceeds upper threshold after time 1340 second, shown in Figure 10.

Fault Detection using Detectors
Fault detections for the abnormal operational data were carried out. Figure 11 shows an outline of the fault detection in a 2-dimensional variable space consisting of TI1422 and PI1422 when malfunction BFO occurred. The axes and the detectors-indicated by sky blue circles-are the same as Figure 7. The sampling data were plotted by green dots on the 2dimensional variable space after the normalization for every second serially. The blue dots are the normal operational data and the green dots are the sampling data to be examined by the detectors. These dots are moving in the variable space as time proceeds. If the green dots were placed on the unpainted region, they are recognized as "self"-where the values are similar to the normal operational data. If the green dots were placed over the sky blue region, they are recognized as "nonself"-in other words, a fault was detected in this variable space by detector(s).
In Figure 11, the painted orange circles indicate activated detectors-which have detected fault. Figure 12 shows the detection status through time. If the value is '1', at least one detector in this variable space detects fault, and if the value is '0', no detector detects fault at that time. The figure shows that the first detection was at time 630 second-which is 30 second after malfunction occurred-, and there are missing between time 897 and 904 second in this variable space. The detections using the sets of detectors in the rest of variable spaces were simultaneously carried out in the same way. Figure 13 shows the number of variable spaces whose detection status is '1'. The figure shows that there are 15 variable spaces detected at time 601 second, 30 variable spaces-which corresponds to 80% of 36 variable spaces-detected at time 604 second, and the number does not fall below the 80% after that time. Therefore it can be said that this system can detect malfunction BFO successfully. Figure 14 shows the outline of the fault detection, Figure 12 shows the detection status through time when malfunction GAH occurred. The figures show that the fault was detected at time 666 second by the detectors. On the other hand, it have not been detected after time 1047 second in this variable space TI1422 vs. PI1422. However 16 shows that 21 variable spaces-which corresponds to 58% of 36 variable spaces-detected at time 602 second, and the number does not fall below 58% after that time. It can be said that this system can detect malfunction GAH successfully, although the variable space TI1422 vs. PI1422 could not detect after time 1047 second.

Conclusion
We built up a fault detection system using negative selection algorithms which can focus on the relationships between process variables.