# Multivariate Statistical Process Control Using Enhanced Bottleneck Neural Network
## 3 Case Study : Wastewater Treatment Plant (WWTP) Monitoring
### Results and Discussion  
This section presents a simulation study with some comments about the obtained results to examine the effectiveness of the proposed strategy for on-line process monitoring applied to simulated wastewater treatment process BSM1 and to real data. In order to illustrate the advantages of the AUCL based on EBNN compared to two base-line multivariate statistical monitoring methods (namely the nonlinear PCA (NLPCA) and ICA), simulation tests were carried out on BSM1 and on actual data. Figures 7 and 8 show the SPE during normal conditions using ICA of BSM1 data and real data, respectively. The upper control limit (UCL) was made constant. Figures 9 and 10 present the SPE using the traditional NLPCA based on AANN with a constant UCL of the BSM1 data and real data, respectively. The high number of false alarms can be seen. In the following part of this section, the results of the proposed method using UACL based on EBNN show the effectiveness in overcoming this drawback. Before the construction of EBNN, a normalization of the monitored variables is necessary. Each variable of the training and testing data matrices are centred and scaled by subtracting and  
Figure 8: SPE during normal operating state (no fault) using ICA for real data. Figure 7: Squared prediction error (SPE) during normal operating state (no fault) using independent component analysis (ICA) for the BSM1 data. Figure 11: Evolution of \(S_{O},S_{NO},\) and \(S_{ND}\) after normalization and their estimations of BSM1 data. Figure 12: Evolution of \(S_{O},S_{NO},\) and \(S_{ND}\) after normalization and their estimations of real data. Figure 13: Probability rates of various operating modes of BSM1 data. It can be clearly seen that the monitored variables have been reconstructed and the probability rates are successfully estimated. Figure 15 for BSM1 data and Figure 16 for real data represent the evolutions of the filtered SPE for BSM1 and real data, respectively, with an AUCL using KDE at a confidence level of 95% under normal operating conditions. To reduce the false alarms, an exponentially weighted moving average (EWMA) is used to filter the effect of outliers and noise, as shown in figures of the filtered SPE. Figure 14: Probability rates of various operating modes of real data. Figure 15: Filtered SPE during normal operating state (no fault) with an adaptive upper control limit (AUCL) based on kernel density estimation (KDE) of BSM1 data. The formulation of the process monitoring strategy of this work focuses on the problem of faulty sensors precisely in WWTP, which may exhibit partial failures such as precision degradation due to significant noise, bias, or drift due to sludge clogging [42; 43], which can be defined below:  
**a- Precision degradation** : The precision degradation model is defined as a Gaussian random process with zero mean and unknown covariance matrix. **b- Bias** : The bias error evolution can be characterized by positive or negative value. **c- Drift** : This error follows an increasing deviation, such as polynomial change. Figures 17 and 18 show the results from a precision degradation fault tested on both cases of data, where the filtered SPE moves up and down many times above its AUCL. The last simulation test concerns the drift fault, which can also be detected by filtered SPE, as indicated in Figures 21 and 22 for BSM1 data and real data, respectively. It is worth noting that the selected abnormal events correspond, respectively, to precision degradation, bias, and drift malfunctions related to the sensors of dissolved oxygen, nitrate, and nitrite nitrogen, which are the most important sensors in WWTP. However, \(S_{O}\) represents a high correlation with the other variables. It can be seen that the SPE indicator exceeds its adaptive upper control limit in the case of bias and drift faults; however, in the precision degradation case, it can be seen that this malfunction type is translated by discontinuous alarms despite the use of AUCL.