^{*}

This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution license (http://creativecommons.org/licenses/by/3.0/).

Many applications of metal oxide gas sensors can benefit from reliable algorithms to detect significant changes in the sensor response. Significant changes indicate a change in the emission modality of a distant gas source and occur due to a sudden change of concentration or exposure to a different compound. As a consequence of turbulent gas transport and the relatively slow response and recovery times of metal oxide sensors, their response in open sampling configuration exhibits strong fluctuations that interfere with the changes of interest. In this paper we introduce TREFEX, a novel change point detection algorithm, especially designed for metal oxide gas sensors in an open sampling system. TREFEX models the response of MOX sensors as a piecewise exponential signal and considers the junctions between consecutive exponentials as change points. We formulate non-linear trend filtering and change point detection as a parameter-free convex optimization problem for single sensors and sensor arrays. We evaluate the performance of the TREFEX algorithm experimentally for different metal oxide sensors and several gas emission profiles. A comparison with the previously proposed GLR method shows a clearly superior performance of the TREFEX algorithm both in detection performance and in estimating the change time.

Detecting significant changes in the response of metal oxide (MOX) gas sensors is important for many applications such as gas leak detection in coal mines [

In this paper, we address the problem of detecting change points from the response of a MOX sensor or sensor array in OSS configuration. This problem is challenging because the sensor response deviates strongly from the “clean” signal that can be obtained in a controlled setting. The gas transport mechanisms in natural environments are dominated by turbulence and advection. This causes the sensor response to fluctuate continuously [

The method introduced in this paper allows to interpret the response of MOX sensors in OSS configuration and to detect change points. This is important for a range of applications. Many locations of interest for monitoring of dangerous gases suffer from difficulties in wireless communication, e.g., in coal mines the radio signal is often unstable and of poor quality [

In this paper we propose a change point detection algorithm explicitly designed for metal oxide (MOX) gas sensors. The aim of the proposed algorithm is to identify events such as the sudden exposure of the sensors to a gas, a sudden change of concentration of a gas or the change of gas to which the sensors are exposed. The detected change points can then be used as inputs by higher level estimation algorithm or decision systems. MOX gas sensors are the most common sensing technology for use in OSS because of their high sensitivity to a multitude of compounds, their simple operation and electronic interface, and their low price. MOX sensors are characterized by a slow response dynamics, and even slower recovery. Therefore, sudden changes in the exposure of a MOX sensor manifest as an exponential function in the sensor response. In this respect, a MOX sensor can be considered as a nonlinear asymmetric low pass filter, with different dynamics in the response and recovery phase. The TREnd Filtering with EXponentials (TREFEX) algorithm takes into account explicitly this characteristic behaviour of MOX sensors and tries to model the underlying trend of a sensor response as a piecewise exponential function. The proposed algorithm is very efficient from a computational viewpoint since it is formulated as a convex optimization problem. The TREFEX algorithm has one regularization parameter to be set by the user. In this article we also propose a method for setting the regularization parameter automatically, which requires few iterations of the algorithm. Finally, since MOX sensors are often deployed in arrays to achieve a level of selectivity that cannot be attained with a single sensor, we extend the proposed algorithm to be able to deal with a sensor array.

The rest of this paper is organized as follows. Section 2 presents related works in gas sensing with an OSS, change point detection in time series and trend filtering. The experimental setup with which the algorithms have been tested is described in Section 3, after which the proposed change point detection algorithm, the parameter selection strategy, and the extension to the sensor array configuration are explained in Section 4. Results are then presented in Section 5, first for the case of single sensor change point detection and then considering change point detection using multiple sensors. Finally, Section 6 concludes the paper and presents future work.

Change detection in the activity of a gas source based on the response of an array of MOX gas sensors is related to the study of change point detection in the domain of the time series analysis. It has been studied for a wide range of applications such as quality control [

The first type of change detection solution is detecting deviations from normal behaviour based on a simple distance measure, e.g., for quality control applications [

In the following, we will discuss the characteristics of the sensors that we consider in this paper and present the setup of experiments used to obtain the data.

Metal oxide (MOX) gas sensors are, by far, the most widely used in electronic nose and mobile robotics olfaction applications. MOX gas sensors are conductometric sensors, where a change in the conductance of the oxide is measured when a gas interacts with the sensing surface. The change in conductance is approximately linearly proportional to the logarithm of the concentration of the gas over a range of concentrations [

One of the main drawbacks of MOX sensors for open sampling applications is the slow response time and the even slower recovery time.

Experiments were carried out with static sensors in a 5 × 5 × 2 ^{3} closed room in which an artificial airflow of approximately 0.05 m/s was induced, see

The two compounds selected for these experiments are ethanol and 2-propanol. Both ethanol (molecular weight 46 g/mol) and 2-propanol (molecular weight 60 g/mol) are heavier than air (average molecular weight 29 g/mol), and therefore will tend to create a plume at the ground level. The two substances have a similar saturated vapour pressure, namely 5.8 kPa for ethanol and 4.2 kPa for 2-propanol, which means that they have a similar tendency to evaporate. Moreover, the MOX gas sensors have a comparable sensitivity to the two substances. This is important in order to obtain similar sensor responses for both analytes, thus avoiding having to address a trivial instance of the change detection problem.

In order to create a database that allows studying the dynamic behaviour of the sensors when consecutively exposed to different analytes, seven different odour emitting profiles have been applied. For all these profiles the gas source emits clean air for two minutes and the signal of sensors during this period is assumed as a baseline. Also, at the end of all the experiments the source emits clean air for 2 min.

The control signal of the odour blender is used as ground truth for the change point time and provides the time at which the source changes the emission modality. However, in order to know the change point time at the sensors' location, we need to estimate the time it takes the gas to travel from the gas source to the sensor location. Since the sensors are placed 0.5 m away from the location of the source outlet and a steady air flow of 0.05 m/s is induced, the delay time between change times at source and sensor location is estimated to be 10 s. The estimation of the delay has been validated with a cross correlation analysis between the control signal of the odour blender and the signal of the MOX sensors in the Steps experiments (see

The key idea behind the proposed change detection approach is that a change in the emission modality of a gas source appears as an exponential trend in the response of MOX sensors. MOX sensors, due to their long response and recovery times, can be modelled as a first order system whose step response is indeed an exponential [_{1}-norm regularization. This asymmetric exponential trend filtering problem is formulated as a convex optimization problem, which is particularly advantageous from the computational point of view. Section 4.1 presents an introductory discussion on piecewise linear trend filtering based on [

In this Section we introduce the main ideas behind piecewise linear trend filtering proposed in [

_{1}_{1}-norm in the regularization term is the main difference between the trend filtering method proposed in [_{2}-norm regularizer. The _{1}-norm is used to induce sparsity in the smoothness term, _{2}-norm regularizer that intuitively never “bends too much” but is also not a perfect line (the _{2}-norm does not induce sparsity). _{1}-norm preserves the piecewise linear shape, with clear kink points between the lines, while the _{2}-norm trend is a smoothed-out version of the original trend where the break points between the line pieces are not clear. This is reflected in the residuals ║_{1}-norm regularization, while for the _{2}-norm regularization they are always very small but rarely exactly equal to zero. This makes _{1}-norm regularization more suited to detect change points, as the change points can be detected by the non-zero elements in the kinks vector.

In this paper we propose to model, instead of a piecewise linear trend, a piecewise exponential trend for capturing the sensor response induced by abrupt changes in the emission of the gas source. This is motivated by the response characteristics of MOX sensors, outlined in Section 3.1. Exponential functions are characterized by the following relationship:

The regularization term now encodes the tendency to fit an exponential by rewarding trends that comply with _{+} and _{−}, for the response and recovery phase. These constants have to be known or determined experimentally for each sensor. The optimization problem can be then modified in the following way:
_{+} and _{−} are the time constants of the response and decay phase respectively. The variables _{+} and _{−} and the corresponding linear inequality constraints were introduced to model the derivative of the trend for response and decay phases. Exploiting the equality constraint _{+} + _{−} = _{−} can be eliminated, and therefore the problem can be written in the following, more compact, form:

The vector of kinks _{1}-norms in

Change points are declared when _{1}-norm is an approximation of the _{0}-norm (the number of non-zero elements in a vector) that would make the values of

The optimization problem (6) is a convex optimization problem that can be easily reformulated as a Quadratic Program (QP). This problem can be solved with standard convex optimization methods that are implemented by optimization packages available on-line such as CVX [

The regularization parameter

Analogous to [_{MAX} at which the estimated trend becomes a single exponential. For values of _{MAX} we rewrite problem (6) as an equivalent QP and then make use of the KKT optimality conditions [

Given that we now know an interval [0, _{MAX}] that contains the optimal value of lambda _{∗}, we can use a standard bracket baseline search method like bisection or golden search [

In this work we choose the golden search method since it has the best worst case performance. This constitutes an efficient method for automatically selecting the only parameter of the algorithm, which implies the solution of few convex optimization problems. The proposed algorithm is then parameter free, which is a great advantage from the user point of view.

Given their comparatively poor selectivity, MOX sensors are rarely deployed individually, but often they are included in a sensor array that can provide the desired selectivity as a whole. The proposed algorithm can be extended to be able to work on the response of a sensor array in the following way:
_{+} is an _{t} is the vector of _{t} ∈ ℝ^{M}, _{t} is the vector of the estimated trend for each sensor at measurement _{t} ∈ ℝ^{M}, _{p}-norms, where _{p}-norm induces a different way to aggregate the response of different sensors. In particular, in this work we select three different _{p}-norms:

_{1}_{1}-norm induces sparsity, which in this case means basing the change point decision on the least number of sensors. It is worth noticing that with this norm the trend components of the individual sensors can be estimated separately.

_{2}_{1}-norm aggregation, this formulation couples the regularization residuals obtained for each sensor at the same time index. Therefore the detected trend shows simultaneous changes in all the sensors at common kink points.

_{∞}

Finally it is important to notice that the summations over time indices are equivalent to the calculation of an _{1}-norm along the time dimension (the arguments of the sum are norms, and hence positive), preserving the sparsity of the kinks.

Before the TREFEX algorithm can be applied, the time constants (_{+} and _{−}) for each sensor need to be estimated. For this purpose, a series of 6 Step experiments (see

Due to the differences in the sensing surface, different models of MOX sensors exhibit a different dynamic range. This means that some of the sensors, when responding, change their resistance value only a few Ohms while others vary hundreds or even thousands of Ohms. Thus, before running change point detection algorithms, we normalize the dynamic ranges of the sensor responses to the interval [0,1] using linear scaling.

To exemplify the proposed algorithm,

In the following sections, we perform a numerical evaluation of the TREFEX algorithm and compare it with the GLR method presented in [

The proposed change detection method returns a list of change points, which we will call alarms. Additionally, for our experiments the ground truth dataset that contains the time of the actual change points is available.

A maximum precision value is achieved when all the alarms are true change points. A maximum recall value means that no true change point was missed by the algorithm. The perfect algorithm maximizes both values,

A value of the regularization parameter

The

Another evaluation criterion is based on how close (in time) the true alarms are to the change points. To this respect we define the Average Distance (AD) performance measure as sum of the distance between the true alarms and the corresponding change points divided by the number of true alarms.

The Generalized Likelihood Ratio (GLR) approach is summarized here since it is compared with the TREFEX algorithm below. We compare against GLR, because, to our best knowledge, it is the only change point detection algorithm that was specifically applied to MOX sensors.

GLR calculates the likelihood ratio between the hypotheses of having a change point at sample

The likelihoods are based on a parametric probability distribution function, which is governed by a set of parameters _{0} denotes the mean/variance estimated using all samples in the time interval. _{1} denotes the mean/variance estimated using only the samples collected after a hypothetical change point _{k} is above a preselected threshold

In

Additionally, the ranking of the sensors with respect to the

Moreover,

Directly selecting the ^{−4}, 2^{−3},…, 2^{8}]). As can be seen in

In general, the combination of multiple sensors aims at increasing the robustness and reliability of the overall change point detection. Here we present numerical results on how the different norms proposed in Section 4.4 perform for aggregating the response of sensors deployed in a sensor array. _{1}-norm, _{2}-norm and _{∞}-norm.

The best combination result for the sensor array was achieved using _{2}-norm. The sensor array aggregation using the l2-norm achieves a higher

In _{2}-norm and _{∞}-norm clearly outperform the single sensor.

Combining the sensors using _{1}-norm, which corresponds to the sum of the individually calculated kink vectors, does not perform well in general, because it aggregates all the false alarms. This leads to lower precision values, as shown in

The evaluation of the parameter selection for the sensor array case has been done in a similar way for the single sensor parameter selection. ^{−4}, 2^{−3}, …, 2^{8}]). Again, the Pearson correlation coefficients show highly negative values, confirming the usefulness of the heuristic for the sensor array as well.

In this paper we introduced TREFEX, a novel change point detection algorithm, especially designed for MOX gas sensors in an open sampling system. TREFEX models the response of a MOX sensor as a piecewise exponential signal, and considers the junctions between consecutive exponentials as change points. TREFEX can be used for single MOX sensors or for arrays of MOX sensors. Moreover, since TREFEX is designed to detect exponential trends, it can be applied to any kind of first order sensor. Along with the proposed algorithm, a parameter selection method for choosing the regularization parameter is suggested. The performance of the algorithm is evaluated experimentally for different sensors and scenarios and compared with the previously proposed GLR method.

Our results show that solving the change detection problem for MOX gas sensors with the TREFEX algorithm is advantageous compared with the GLR method in several ways.

First, and most importantly, TREFEX outperforms the GLR method. The maximum F-measure is higher for all considered sensors and experiments. Second, the algorithm does not involve a tuning parameter that has to be set arbitrarily by the user. Instead, an automatic parameter selection step is provided with the algorithm. Third, the computational requirements for TREFEX are lower. While GLR scales quadratically with the length of the considered signal, TREFEX scales linearly. Last but not least, the estimate that TREFEX provides about the position of the change points in time is much more accurate. GLR requires accumulating enough evidence before it declares a change, while TREFEX, due to considering the whole signal, is able to detect the position of the change points more accurately.

One of the major improvement to the presented TREFEX algorithm will be its extension to an on-line version based on the work in the area of continuous-time trend filtering [

The authors declare no conflict of interest.

_{1}trend filtering

Response of a Figaro TGS2600 to a pulse of 250 ppm of ethylene obtained in a closed sampling system.

Schematics of the experimental room.

Gas source emission strategies. Strategies (

Toy example that illustrates the difference between _{1}-norm and _{2}-norm trend filtering. Sub-figure (_{1}-norm and _{2}-norm regularization (the regularization parameter is set to _{2}-norm and _{1}-norm. Notice that the scale of the ordinate axis is different for the plots in sub-figures (c) and (d). (a) Signal and underlying piecewise linear trend; (b) Trend and estimated _{1}-norm and _{2}-norm trends; (c) l_{2}-norm residuals _{1}-norm residuals

Trade-off curve for an experiment with the Random Stairway strategy, considering the response of the MiCS 2610 sensor for ^{−6},2^{12}]. The selected value, ^{2}, is highlighted with a red square.

Result of the execution of the proposed algorithm for an experiment where the gas source was changing the emitted concentration using the Descending Stairway strategy (0%, 100%, 80%, 60%, 40%, 20% and 0% of gas source strength). The regularization parameter is set to

Estimated trends for the response of the MiCS 2610 for an experiment where the gas source was changing the emitted concentration. Corresponding regularization parameters for the illustrated trends are

Comparison of

Time constants calculated of the rise and decay phase of each sensor. The sensors were used without any modifications to improve response and decay characteristics.

MiCS 2610 | 4.96 | 14.92 |

MiCS 2710 | 17.18 | 23.69 |

MiCS 5521(1) | 2.43 | 5.54 |

MiCS 5121 | 5.97 | 10.72 |

MiCS 5135 | 5.37 | 14.65 |

MiCS 5521(2) | 3.13 | 5.20 |

TGS 2600(1) | 5.22 | 19.31 |

TGS 2611 | 3.52 | 7.36 |

TGS 2620 | 3.29 | 15.58 |

TGS 2600(2) | 5.19 | 19.74 |

TGS 2602 | 4.84 | 36.25 |

Comparison between the TREFEX and the GLR algorithm. TREFEX outperforms GLR both in terms of the maximum

| ||||||||
---|---|---|---|---|---|---|---|---|

MiCS 2610 | 8 | 3.72 | 90 | 7.85 | ||||

MiCS 2710 | 16 | 4.78 | 120 | 11.12 | ||||

MiCS 5521(1) | 11 | 0.77 | 8 | 5.59 | 10 | 0.70 | 88 | 11.52 |

MiCS 5121 | 4 | 0.88 | 16 | 5.19 | 4 | 0.82 | 91 | 9.82 |

MiCS 5135 | 8 | 4.17 | 0.87 | 93 | 8.60 | |||

MiCS 5521(2) | 8 | 0.81 | 16 | 5.05 | 6 | 0.77 | 82 | 11.61 |

TGS 2600(1) | 6 | 0.83 | 4 | 6.05 | 7 | 0.72 | 107 | 11.14 |

TGS 2611 | 5 | 0.84 | 16 | 5.51 | 5 | 0.79 | 93 | 11.52 |

TGS 2620 | 9 | 0.80 | 4 | 5.89 | 8 | 0.72 | 93 | 12.26 |

TGS 2600(2) | 7 | 0.83 | 4 | 6.40 | 9 | 0.72 | 93 | 11.63 |

TGS 2602 | 10 | 0.78 | 0 | 6.57 | 11 | 0.56 | 65 | 13.42 |

Pearson correlation coefficient between the Euclidean distance

| ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|

−0.88 | −0.81 | −0.69 | −0.79 | −0.81 | −0.50 | −0.84 | −0.73 | −0.88 | −0.86 | −0.73 |

Comparison of different norms used to combine the answers of the sensor array.

| ||||
---|---|---|---|---|

Multivariate - _{1}-norm |
3 | 0.83 | 32 | 4.20 |

Multivariate - _{2}-norm |
1 | 0.89 | 32 | 3.98 |

Multivariate -_{∞}-norm |
2 | 0.88 | 64 | 3.92 |

Pearson correlation between Euclidean distances

| |||
---|---|---|---|

_{1}- |
_{2}- |
_{∞}- | |

−0.72 | −0.67 | −0.66 |

Maximum _{2}-norm and Multivariate GLR for selected subset of the array. The corresponding hyper-parameters and detection intervals of maximum

| ||||||
---|---|---|---|---|---|---|

MiCS 2710-MiCS 5521(2) | 0.91 | 16 | 4.23 | 0.87 | 232 | 9.13 |

MiCS 2710-TGS 2602 | 0.92 | 16 | 4.37 | 0.84 | 205 | 12.41 |

MiCS 2710-TGS 2602-MiCS 5521(2) | 0.90 | 16 | 4.11 | 0.86 | 209 | 8.68 |

MiCS 5521(2)-TGS 2602-MiCS 2610 | 0.86 | 32 | 3.43 | 0.84 | 182 | 8.08 |

MiCS 2610-TGS 2611-TGS 2602 | 0.88 | 16 | 3.81 | 0.85 | 220 | 8.16 |