You are on page 1of 10

Available

Available online
online at
at www.sciencedirect.com
www.sciencedirect.com

ScienceDirect
Available online at www.sciencedirect.com
Procedia
Procedia Computer
Computer Science
Science 00
00 (2019)
(2019) 000–000
000–000
www.elsevier.com/locate/procedia
www.elsevier.com/locate/procedia
ScienceDirect
Procedia Computer Science 180 (2021) 903–912

International Conference on Industry 4.0 and Smart Manufacturing

Drift Detection Analytics for IoT Sensors


Sathyan Munirathinamaa
aSolution
Solution Architect, ASML Holding,
Holding, San
San Diego,
Diego, California,
California, USA
USA
a
Architect, ASML

Abstract
Abstract

The
The Industrial
Industrial Internet
Internet of
of Things
Things (IoT)
(IoT) has
has an
an unique
unique opportunity
opportunity to to have
have aa greater
greater impact
impact on on the
the manufacturing
manufacturing sector.
sector. Monitoring
Monitoring
the
the health
health of
of the
the expensive
expensive equipments
equipments in in the
the factory
factory is
is critical
critical forfor the
the business
business and and the
the opportunities
opportunities where
where IoT IoT can
can bebe truly
truly
transformational.
transformational. MostMost often
often the
the industries
industries operates
operates on on aa primitive
primitive way way ofof monitoring
monitoring thesethese equipments
equipments on on aa Statistical
Statistical Process
Process
Control
Control (SPC)
(SPC) Limits.
Limits. The
The major
major flaw
flaw inin this
this monitoring
monitoring system
system is is unable
unable toto detect
detect drifts
drifts within
within the
the static
static limit
limit and
and upon
upon triggering
triggering
of
of the limits, it is usually too late for the team in the manufacturing floor to take preventive actions before the system goes
the limits, it is usually too late for the team in the manufacturing floor to take preventive actions before the system goes down.
down.
In this
In this paper,
paper, we
we developed
developed aa generic
generic model
model forfor detecting
detecting drifts
drifts and
and identifying
identifying potential
potential outliers.
outliers. The
The model
model uses
uses aa double
double linear
linear
regression
regression method
method to to identify
identify both
both aggressive
aggressive and and progressive
progressive drift,
drift, asas well
well as as adjusted
adjusted boxplot
boxplot method
method to to detect
detect outliers
outliers in in both
both
symmetric
symmetric andand skewed
skewed distributions.
distributions. Unlike
Unlike conventional
conventional drift
drift detection
detection approaches,
approaches, this this model
model hashas low
low computational
computational complexity
complexity
and can be
and can be applied
applied toto both
both batch
batch and
and stream
stream data.
data. This
This paper
paper will
will also
also introduce
introduce the the infrastructure
infrastructure andand architecture
architecture on on enabling
enabling nearnear
real-time analytics
real-time analytics using
using the
the IoT
IoT platform
platform andand streaming
streaming cluster,
cluster, which
which reduces
reduces the the data
data latency
latency available
available for
for analysis
analysis toto 10
10 minutes.
minutes.
Enabling real-time
Enabling real-time monitoring
monitoring allows
allows thethe end
end users
users to
to react
react to
to the
the alarms
alarms inin aa timely
timely manner.
manner. ThisThis system
system hashas proven
proven that
that it
it is
is able
able
to provide
to provide early
early detection
detection before
before the
the impact
impact was
was observed
observed asas compared
compared to to the
the existing
existing system.
system. Manufacturing
Manufacturing operation
operation teamteam could
could
establish
establish aa new
new business
business process
process to to respond
respond to to the
the early
early drift
drift alarms
alarms by by using
using quality
quality shift
shift left
left approach.
approach.
©
© 2021
2021 The
The Authors.
Authors. Published
Published by by ELSEVIER
ELSEVIER B.V. B.V.
© 2021an
This The Authors. Published by Elsevier B.V.
This is
is an open
open access
access article
article under
under thethe CCCC BY-NC-ND
BY-NC-ND licenselicense (https://creativecommons.org/licenses/by-nc-nd/4.0)
(https://creativecommons.org/licenses/by-nc-nd/4.0)
This is an open
Peer-review underaccess article under
responsibility of the scientific
the CC BY-NC-ND license
committee of (https://creativecommons.org/licenses/by-nc-nd/4.0)
the International Conference on
Peer-review under responsibility of the scientific committee of the
Peer-review under responsibility of the scientific committee of the International International Conference
Conference on Industry
Industry
on Industry
4.0 and
4.0 4.0
and and
Smart
Smart
Smart
Manufacturing
Manufacturing
Manufacturing
Keywords: IoT,
Keywords: IoT, Drift,
Drift, Analytics,
Analytics, Big
Big Data,
Data, Statistical
Statistical Control
Control Limits,
Limits, Sensor,
Sensor, Machine
Machine Learning,
Learning, Concept
Concept Drift
Drift

1. Introduction
1. Introduction

The
The downtime
downtime of of tools,
tools, equipments,
equipments, pump
pump failures,
failures, or
or any
any other
other machines
machines inin the
the manufacturing
manufacturing can
can have
have an an bigger
bigger
impact
impact to
to production
production line
line aa direct loss of
direct loss of revenue.
revenue. Timely
Timely prediction
prediction of
of such
such failures
failures using
using sensor
sensor data
data can
can prevent
prevent or
or
reduce
reduce the
the downtime.
downtime. With
With the
the introduction
introduction ofof development
development of of Internet
Internet of
of Things
Things (IoT)
(IoT) technologies,
technologies, it
it is
is possible
possible to
to
collect
collect the
the huge
huge volume
volume of of sensor
sensor data
data in
in real-time from various
real-time from various machines.
machines. Data
Data and
and Mathematical
Mathematical driven
driven models
models can
can
then
then be
be used
used to
to predict
predict the
the component
component andand equipment
equipment failures,
failures, given
given enough
enough historical
historical data.
data. Detecting
Detecting concept
concept drift
drift
and identification of the causes of the processes out of control present one of the most interesting
and identification of the causes of the processes out of control present one of the most interesting theme in theme in industry,
industry,

1877-0509
1877-0509 © © 2021
2021 The
The Authors.
Authors. Published
Published by
by ELSEVIER
ELSEVIER B.V.
B.V.
This
This is
is an
an open
open access
access article
article under
under the
the CC
CC BY-NC-ND
BY-NC-ND license
license (https://creativecommons.org/licenses/by-nc-nd/4.0)
(https://creativecommons.org/licenses/by-nc-nd/4.0)
Peer-review
Peer-review under
under responsibility
responsibility of
of the
the scientific
scientific committee
committee of
of the
the International
International Conference
Conference on
on Industry
Industry 4.0
4.0 and
and Smart
Smart Manufacturing
Manufacturing

1877-0509 © 2021 The Authors. Published by Elsevier B.V.


This is an open access article under the CC BY-NC-ND license (https://creativecommons.org/licenses/by-nc-nd/4.0)
Peer-review under responsibility of the scientific committee of the International Conference on Industry 4.0 and Smart Manufacturing
10.1016/j.procs.2021.01.341
904 Sathyan Munirathinam / Procedia Computer Science 180 (2021) 903–912
2 Sathyan Munirathinam / Procedia Computer Science 00 (2019) 000–000

manufacturing and services.


This study aims to address the concept drift, which is a major challenge in the processing of voluminous data
streams. In a highly complicated and sophisticated manufacturing industry, thousands of industrial Internet of Things
(IIoT) devices or sensors are installed in production machines to collect big data on machine conditions and transmit
it to a cyber-physical systems (CPS). Condition-based maintenance (CBM) methods uses SPC control (limit based)
method to monitor the facility sensor data. CBM suffers from problems of concept drifts (i.e., the distribution of fault
patterns may change over time). It is unable to detect drifts (upwards and downwards) within the limit settings. Hence
the limitation of the CBM system is unable to detect drifts within the static limit and upon triggering of the limits, it
is usually too late for the manufacturing technicians to take preventive actions before the system goes down. Normally,
equipment engineers will look at the historical trend of the sensor data to make an assessment on whether the sensor
data is undergoing drifting from the baseline, because the sensor data should remain stable within pre-defined spec
limit. The problem is how to estimate the trend for hundreds of thousands of sensor data and issue out early warnings
to facility team member if the trend is continuing towards one direction. Most of time series deriving from complex
systems in real life is non-stationary, where the data distribution would be influenced by various internal/external
factors such that the contexts are persistently changing. Therefore, the concept drift detection of time series has
practical significance. In this paper, we developed a generic model for detecting drifts and identifying potential
outliers. The model uses a double linear regression method to identify both aggressive and progressive drift, as well
as adjusted boxplot method to detect outliers in both symmetric and skewed distributions.

2. Drift Detection Algorithm

While SPC (Statistical Process Control) method has been effective and widely deployed, it does create two
fundamental challenges for the equipment engineers/technicians:
1. Normally, equipment technicians in the factory analyse the historical trend of the sensor data to make an
assessment on whether the sensor data is undergoing drifting from the baseline, because the sensor data
should remain stable within pre-defined spec limit. The trend will be the critical aspect that facilities team
members focus on. Even for the sensor data fluctuates within a short timeframe, however, people are looking
at the overall trend instead of small variation within a short timeframe.
2. The problem is how to estimate the trend for hundreds of thousands of sensor data and issue out early
warnings to facility team member if the trend is continuing towards one direction. To avoid confusion, current
methodology for drift detection falls into descriptive analytics instead of diagnostic analytics or predictive
analytics, although it might be our vision for facilities data.
The sensors that are installed in the backend facilities that have influence in the process monitoring in the frontend
facilities. This research work is done in the “Semiconductor Manufacturing” facilities on how to monitor the sensors
in the backend facilities. The challenge is that there are 1000+ sensors installed in the facilities. The idea is to link
these sensors to the front-end facilities and understand the critical sensors to monitors and run the drift detection
algorithm. Below is the diagram that shows the linkage from sensors to front-end manufacturing.
With the given challenges, the goal is to design a new drift algorithm and implement a generic and online drift
detection algorithm to detect sensor data drift in time The work also includes to collect sensor data from manufacturing
facilities and store into a manufacturing data lake to analyse and provide early warning/predictive alert of potential
quality and excursion type events in the manufacturing facility sensors. This end result of this effort provides a
monitoring dashboard which allows facilities operations team members to pinpoint and flag potential problems
affected by facility interruption events more quickly and to better study the cause and effect of events. The objective
of the newly developed drift detection algorithm is to complement with SCADA to give early warnings on system
failures. The algorithm offers the following comprehensive objectives:
• Algorithm able to detect early drift events and to flag them immediately
• Algorithm that able to handle sensors with cyclical nature
• Algorithm that able to detect outliers
Sathyan Munirathinam / Procedia Computer Science 180 (2021) 903–912 905
Sathyan Munirathinam / Procedia Computer Science 00 (2019) 000–000 3

Fig 1: Linkage from Sensors (Back-End) Manufacturing to Front-End manufacturing

2.1 Approach

SCADA (Supervisory Control AND Data Acquisition) is the central sensor database that stores and controls sensor
operations at large. This communicates with the PLC, which is how the system functions and communicates within
the operational environment. The sensors that are deployed in the back-end manufacturing facilities have an impact
in the front-end manufacturing. Based on that understanding, the facility sensors are classified into two categories
based on the impact to front-end manufacturing:
1. Critical (Direct Impact to Front-End Manufacturing)
2. Non-critical (Indirect Impact to Front-End Manufacturing)

Table 1 – List of Sensors.


# Sensor Categorization Description

1 Critical Sensors (Direct Impact) Sensors controlling the system parameters such as pressure,
flow, temperature. E.g., Exhaust, PCW, UPW, Chemical
2 Non-critical Sensor (Indirect Changes in equipment parameter that may give an early
Impact) indication of a potential failure. E.g., VFD, Chiller

These sensors are connected to SCADA system through PLC environment. The data that are collected through PTC
are streamed to Sensor Data Lake platform. Newly development drift detection algorithm should be able to identify
the drifts in all these kinds of data patterns. In this paper, we explored the three drift detection techniques that
identifies drift, notifies the early warnings of the drift and helps the manufacturing to act proactively to fix the
issues.
1. Drift Detection (Progressive and Aggressive)
2. Outlier Detection
3. Severity Score Algorithm

2.2 Double Linear Regression (DLR) Prediction Model

Linear regression is a linear approach to model the relationship between two variables. Linear regression is easy to
interpret and low computational complexity. There are two main drift classifications: Aggressive Drift, drift that
happens in short-term, and Progressive Drift, drift that happens in long-term. Aggressive Drift or Sudden Shift is
906 Sathyan Munirathinam / Procedia Computer Science 180 (2021) 903–912
4 Sathyan Munirathinam / Procedia Computer Science 00 (2019) 000–000

when abrupt change occurs at a time point and distribution changes either in the upward direction and in downward
direction. Progressive Drift or Gradual Drift is characterized by a transition time interval where the prior process
behaviour fades-out whereas the posterior one fades-in. The distribution gradually shifts either upwards and
downwards. It’s very important to detect the shifts in the variation before it reaches the threshold limits. Earlier
prediction of these shifts helps the equipment engineers to work on the issue and gets ample time to fix the issue.

Fig 2. (a) Two different Aggressive and Progressive drifts; (b) HCL(High Control Limits) and LCL (Low Control Limits)

Below pictures shows both aggressive drift and progressive drift. To predict these two drifts, two linear regression
for long-term and short-term are implemented. Hence, the devised algorithm is named as Double Linear Regression
(DLR). At the manufacturing facility sites, manufacturers deploy SCADA systems to monitor manufacturing
operations that require real-time data acquisition and high-level supervisory control. SCADA systems encompasses
hundreds of sensors that measures the process parameters. Each sensor is characterized to monitor specific variations
in the system.

Fig 3. (a) Left to Right (a) time trend for Pressure sensor; (b) Autocorrelation plot

A control system keeps the technological process within the established limits and does not report any problems. The
control systems keeps each of the sensor within the specification limits. One of the challenges for drift detection is to
develop a generic algorithm to apply for more than hundreds of thousands of sensor data. The other challenge is to
ensure model with low computational complexity and with feasibility to run in streaming manner. In time series data,
autocorrelation is defined as the delayed correlation of a given series. Autocorrelation is a delayed correlation by
itself and is delayed by some specific number of time units. Based on the study by sampling sensor data from the
population, ~95% of data is not auto-correlated (an example is shown in above Fig. 4.b).
We had attempted to separate the sensors into auto-correlated and non-autocorrelated and apply the different
models, respectively. We had applied the autoregression models for our cases and tried to find out the lagged period
for each sensor based on historical data. However, the lagged period for the sensor will be changing from time to time
due to planned activity. For planned activity, additional data is required to be ingested for analysis, which is not
available yet. The project scope is to detect the drift based on individual sensor data, which is univariant analysis.
Multi-variant analysis will be pursued and explored when the required dataset is available. When we are examining
the relationship between a quantitative outcome and a single quantitative explanatory variable, simple linear regression
is the most commonly considered analysis method. We postulate a linear relationship between the population mean
Sathyan Munirathinam / Procedia Computer Science 180 (2021) 903–912 907
Sathyan Munirathinam / Procedia Computer Science 00 (2019) 000–000 5

of the outcome and the value of the explanatory variable. If we let Y be some outcome, and x be some explanatory
variable, then we can express the structural model using (1):
𝐸𝐸(𝑌𝑌|𝑥𝑥) = 𝛽𝛽0 + 𝛽𝛽1 𝑥𝑥 ………….(1)

where E(), which is read “expected value of”, indicates a population mean; Y |x, which is read “Y given x”, indicates
that we are looking at the possible values of Y when x is restricted to some single value; 𝛽𝛽0 is the intercept parameter;
and 𝛽𝛽1 is the slope parameter. A common term for any parameter or parameter estimates used in an equation for
predicting Y from x is coefficient [2]. The first step in the proposed training algorithm is to determine the
magnitude of drift present in the data. In this approach the drift is approximated applying a linear regression
The slope m of the linear regression is obtained by applying the least squares fitting algorithm on data indexed
with k as follows in equation (2)
𝑛𝑛⋅∑𝑛𝑛 𝑘𝑘⋅𝜃𝜃𝑘𝑘 ⋅∑𝑛𝑛 𝜃𝜃𝑘𝑘
𝑚𝑚 = 𝑘𝑘=1 𝑘𝑘=1
…………(2)
𝑛𝑛⋅∑𝑛𝑛
𝑘𝑘=1 𝑘𝑘 2 −(∑𝑛𝑛
𝑘𝑘=1 𝑘𝑘)2

in which n is the amount of available data points. The determined slope is then put into relation to the absolute
values of the measurement readings. To get the fitted line as a simulation of the trend, we could use the ordinary
least squares (OLS) method, which is to minimize the sum of squared residuals (differences between actual and
predicted values of the dependent variable). As in (2) and (3), we can use calculus to find the values of 𝛽𝛽0 and 𝛽𝛽1 for
the best-line-of-fit [2].
∑𝑛𝑛 ̅)
𝑖𝑖=1(𝑥𝑥𝑖𝑖 −𝑥𝑥̅ )(𝑦𝑦𝑖𝑖 −𝑦𝑦
𝛽𝛽1 = …………..…(3)
(𝑥𝑥𝑖𝑖 −𝑥𝑥̅ )2

𝛽𝛽0 = 𝑦𝑦̅ − 𝛽𝛽1 𝑥𝑥̅ …………..……….. (Ͷሻ 

To apply the simple linear regression to the sensor data, we transform x to epoch timestamp, which is a numerical
value. Both Y (sensor value) and x (epoch timestamp) will be scaled within the range of 0 to 1, after Y (sensor value)
filtered with extreme outlier value. By having an estimate of the drift slope and the intercept

^ 1
𝜎𝜎𝑎𝑎 = √ ∑𝑛𝑛𝑡𝑡=1 (𝑧𝑧𝑡𝑡 − 𝛽𝛽1 𝑡𝑡 − 𝛽𝛽0 )2 …….(5)
𝑛𝑛−2

^
and hence the standard deviation (𝜎𝜎𝑏𝑏1 ) of the estimated slope:

^
^ ^ 𝑏𝑏1
^ ∑𝑛𝑛 (𝑧𝑧𝑡𝑡 −𝑧𝑧𝑡𝑡 )2 𝜎𝜎𝑎𝑎 𝑡𝑡1 = ………………(7)
𝜎𝜎𝑏𝑏1 =√ 𝑡𝑡=1
= …………….(6) ^
𝑛𝑛−2 ∑𝑛𝑛 (𝑡𝑡−𝑡𝑡)2 𝜎𝜎𝑏𝑏1
𝑡𝑡=1 √∑𝑛𝑛
𝑡𝑡=1 (𝑡𝑡−𝑡𝑡)2

A two-tailed t-test on b^1, using the t-value from equation (7), is applied to test whether the slope is significantly
different from zero, indicating non-stationary behaviour. Most applied time series are non-stationary, or exhibit some
kind of non-stationarity for at least parts of the time series. For time series analyses or mathematical modelling
purposes, the non-stationarities can be difficult to handle. Therefore, identification of stationary and non-stationary
behaviour is of great practical interest in time series analysis. In this study a robust and computationally efficient
method to identify steady state parts of time series data is presented. The method is based on the class of deterministic
trend models using a sliding window, and is focused towards being easy to implement, efficient and practical in use
and to preserve data completeness. The method is shown to be reliable and practical for identifying steady state parts
of time series data, and can serve as a practical pre-processing tool for time series data analysis.
908 Sathyan Munirathinam / Procedia Computer Science 180 (2021) 903–912
6 Sathyan Munirathinam / Procedia Computer Science 00 (2019) 000–000

Fig 4 (a) Time Trend for Pressure sensor ; (b) Autocorrelation Plot

For drifts, there are two types: one is short term drift (or called aggressive drift) and the other one is the long-term
drift (or called progressive drift). Drifts are more likely to be happening within longer timeframe such as days rather
than within seconds, minutes or hours, which should be more appropriately grouped into outliers. To monitor both
short-term and long-term trend of sensor data, we apply simple linear regression for historical data of both short-term
(three days) and long-term time frame (seven days) during model training. This is the reason we name our model as
“double linear regression”. The number of days chosen for the short-term and long-term drift is by empirical study
on past facilities event cases as well as sampled facility sensor data. The choice of window length n must therefore be
related to the effects we want to remove from the data. Using a long window, unsteady behaviour with short duration
is hard to detect. On the other hand, a long window is well suited for detecting a typical sensor drift causing the sensor
value to accumulate with time. A short window is more likely to let such a sensor drift pass the steady state detection,
but will on the other hand be well suited for detecting unsteady behaviour with short duration.

Fig 5: Double Linear Regression Technique (7 days and 3 days)

Vibration Sensor data along x-axis is collected and plotted above for a specific timeframe. We monitor the slope
parameter (𝛽𝛽1 ), which could be translated into angle for that time range. If it exceeds the threshold, which is set by
empirical study on past facilities event cases, it will be flagged out as either downdrift or updrift. Long-term drift slope
limit (absolute value) is set at 0.2867 (16 degree) and short-term drift slope limit (absolute value) is set at 0.7813 (38
degree). For the incoming data, we compare the new data with the fitted line to decide whether the drift is continuing,
or it starts to recover. For example, if the downdrift occurs, if new data are below the fitted line, it indicates the drift
is continuing. If new data are above the fitted line, it might indicate the recovery, but we will mark the end of the
downdrift till the model retrained result shows the slope is below the threshold. The model will be re-retrained by
taking into past data every hour, which is a moving window along with time. One of the motivations to use the linear
regression and monitor the slope or angle is because it is self-explainable and transparent to equipment technicians.
Double Linear Regression is modelled based on short term (3 days of data) and long term (7 days of data) to detect
the drift in the data. We will explore on how short-term drift work with long-term drift in the double linear regression
Sathyan Munirathinam / Procedia Computer Science 180 (2021) 903–912 909
Sathyan Munirathinam / Procedia Computer Science 00 (2019) 000–000 7

model. Long-term drift has higher priority than short-term drift. In other words, when the trend is fulfilled both long-
term drift threshold and short-term drift threshold, it will be flagged as long-term drift. For examples, long-term drift
slope is at 0.4 (larger than the positive threshold @ 0.2867), and short-term drift slope is at -0.8 (lower than the
negative threshold @-0.7813), it will be still flagged out as progressive updrift, although it starts to recover with recent
downward trend. When will the trend be flagged out as short-term drift? It is when the short-term drift slope exceeds
the threshold and the long-term drift slope has same sign (positive or negative) with short-term drift slope and absolute
slope value exceeds 0.1 (by empirical study) but not yet reach the threshold. For example, long-term drift slope is at
0.15 (lower than the positive threshold @ 0.2867) and short-term drift slope is at 1.0 (larger than the positive threshold
@ 0.7813). It will be flagged out as aggressive updrift.

2.3 Adjusted Boxplot

Let 𝑋𝑋𝑛𝑛 = {𝑥𝑥1 , 𝑥𝑥2 , … , 𝑥𝑥𝑛𝑛 } be a finite time series data, 𝑥𝑥𝑛𝑛+1 is the next point in the time series data and 𝑆𝑆𝑛𝑛 =
{𝑠𝑠1 , 𝑠𝑠2 , … , 𝑠𝑠𝑛𝑛 } is the sorted dataset of 𝑋𝑋𝑛𝑛 such that 𝑠𝑠1 ≤ 𝑠𝑠2 ≤ ⋯ ≤ 𝑠𝑠𝑛𝑛 . The main objective of this section is to
determine whether the next point is an outlier or not. The main challenges in this section is most of the time 𝑋𝑋𝑛𝑛 data
is not normally distributed, and it is also a well-recognized problem that on skewed distribution, the outliers from
vanilla boxplot are not necessarily “real” outliers. Therefore, as in (8), we construct a boxplot interval which has its
whiskers been adjusted with medcouple, a robust statistic to measure skewness.

[𝑄𝑄1 − ℎ𝑙𝑙 (𝑀𝑀𝑀𝑀) 𝐼𝐼𝐼𝐼𝐼𝐼; 𝑄𝑄3 + ℎ𝑢𝑢 (𝑀𝑀𝑀𝑀) 𝐼𝐼𝐼𝐼𝐼𝐼] ………..(8)


where,
• 𝑄𝑄1, 𝑄𝑄3 are first quartile and third quartile of 𝑋𝑋𝑛𝑛
• 𝐼𝐼𝐼𝐼𝐼𝐼 = 𝑄𝑄3 − 𝑄𝑄1, the interquartile range or the length of the box in a boxplot.
• ℎ𝑙𝑙 (𝑀𝑀𝑀𝑀) and ℎ𝑢𝑢 (𝑀𝑀𝑀𝑀) are functions of medcouple (MC), a robust statistic which measures skewness of
univariate data.

Then, following the recommendations in Hubert et al. (2008) [5], we choose to apply the exponential model of
adjusted boxplot as in (9) and (10) where,
ℎ𝑙𝑙 (𝑀𝑀𝑀𝑀) = 1.5𝑒𝑒 𝑎𝑎𝑎𝑎𝑎𝑎 ………… (9)
ℎ𝑢𝑢 (𝑀𝑀𝑀𝑀) = 1.5𝑒𝑒 𝑏𝑏𝑏𝑏𝑏𝑏 ……………..(10)
with 𝑎𝑎, 𝑏𝑏 ∈ ℝ.
Also, the medcouple (𝑀𝑀𝑀𝑀) of 𝑋𝑋𝑛𝑛 is defined as in (11)
med ℎ(𝑠𝑠𝑖𝑖 ,𝑠𝑠𝑗𝑗 ) …………….. (11)
𝑀𝑀𝑀𝑀 = 𝑥𝑥 ≤𝑚𝑚
𝑖𝑖≤𝑥𝑥 𝑛𝑛 𝑗𝑗

With 𝑄𝑄2 the dataset and where for all 𝑠𝑠𝑖𝑖 ≠ 𝑠𝑠𝑗𝑗 the kernel function h is defined as in (12)
(𝑠𝑠𝑗𝑗 −𝑄𝑄2 )−(𝑄𝑄2 −𝑠𝑠𝑖𝑖 )
ℎ(𝑠𝑠𝑖𝑖 , 𝑠𝑠𝑗𝑗 ) = ………….(12)
𝑠𝑠𝑗𝑗 −𝑠𝑠𝑖𝑖
Finally, 𝑥𝑥𝑛𝑛+1 is an outlier if and only if it is outside the constructed interval.

2.4 Severity Score Algorithm

A severity score is a metric to measure the severity score of the detected drift and outliers. One general kind of
approach for creating a severity score algorithm is based on supervised learning. A regression function is estimated
that maps features (algorithms such as sensor data variability, complexity and summarized frequency information)
derived from the sensor data collected during the pump activities into a continuous or discrete-valued score. Having
gone through all the severity score algorithms, we ended up in devising a novel severity score algorithm based on
Injury Severity Score (ISS) algorithm. Currently, the severity score is computed differently for outlier and drift cases.
Severity score, it consists of two main components:

Severity Score = Magnitude Change + Drift Duration


8 Sathyan Munirathinam / Procedia Computer Science 00 (2019) 000–000
910 Sathyan Munirathinam / Procedia Computer Science 180 (2021) 903–912

We modelled based on novel idea Injury Severity Score (ISS)

Fig 6. (a) Shows the severity score; (b): Magnitude changes with drift duration

Let 𝑋𝑋𝑛𝑛 = {𝑥𝑥1 , 𝑥𝑥2 , … , 𝑥𝑥𝑛𝑛 } and 𝑌𝑌𝑛𝑛 = {𝑦𝑦1 , 𝑦𝑦2 , … , 𝑦𝑦𝑛𝑛 } be a finite time series dataset that has been normalized to [0, 1].
The data must be normalized to have a meaningful result as the value of the sensors may in a different scale.
Suppose 𝑥𝑥𝑛𝑛 is a drift and 𝑦𝑦𝑛𝑛 is an outlier, then sample 𝑋𝑋 ̂ = {𝑥𝑥𝑛𝑛, 𝑥𝑥𝑛𝑛−1 , … } and 𝑌𝑌̂ = {𝑦𝑦𝑛𝑛, 𝑦𝑦𝑛𝑛−1 , … } from 𝑋𝑋𝑛𝑛 and 𝑌𝑌𝑛𝑛
̂ and 𝑌𝑌̂ are consecutive drifts or outliers. To measure the information value of 𝑥𝑥𝑛𝑛 , we apply the following
where 𝑋𝑋
equation as in (13):
𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑦𝑦𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑 = 𝑒𝑒 𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚 + 𝑒𝑒 𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑 …………. (13)
where,
𝑢𝑢𝑢𝑢𝑢𝑢𝑢𝑢𝑢𝑢−𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑 𝑙𝑙𝑙𝑙𝑙𝑙𝑙𝑙𝑙𝑙−𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑
• 𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚 = min ( , )
𝑢𝑢𝑢𝑢𝑢𝑢𝑢𝑢𝑢𝑢 𝑙𝑙𝑙𝑙𝑙𝑙𝑙𝑙𝑙𝑙
• 𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑 = 𝐻𝐻𝐻𝐻(𝑋𝑋̂)
• 𝑢𝑢𝑢𝑢𝑢𝑢𝑢𝑢𝑢𝑢 = 𝐻𝐻𝐻𝐻(𝑋𝑋𝑛𝑛 ) + 𝑆𝑆𝑆𝑆𝑆𝑆𝑆𝑆𝑆𝑆(𝑋𝑋𝑛𝑛 )
• 𝑙𝑙𝑙𝑙𝑙𝑙𝑙𝑙𝑙𝑙 = 𝐻𝐻𝐻𝐻(𝑋𝑋𝑛𝑛 ) − 𝑆𝑆𝑆𝑆𝑆𝑆𝑆𝑆𝑆𝑆(𝑋𝑋𝑛𝑛 )
𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑 𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑
• 𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑 =
𝑐𝑐

with, 𝐻𝐻𝐻𝐻 is harmonic mean, 𝑆𝑆𝑆𝑆𝑆𝑆𝑆𝑆𝑆𝑆 is standard deviation and 𝑐𝑐 ∈ ℝ. The value of 𝑐𝑐 depends on the interval of each
point. For example, if each point is 1 hour, then 𝑐𝑐 = 24. Similarly, to measure the information value of 𝑦𝑦𝑛𝑛 , we
apply the following equation as in (14):

𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑦𝑦𝑜𝑜𝑜𝑜𝑜𝑜𝑜𝑜𝑜𝑜𝑜𝑜𝑜𝑜 = 𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚 ………….(14)


where,
𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏−𝑜𝑜𝑜𝑜𝑜𝑜𝑜𝑜𝑜𝑜𝑜𝑜𝑜𝑜
• 𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚𝑚 =
𝑖𝑖𝑖𝑖𝑖𝑖
• 𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏𝑏 = 𝑚𝑚𝑚𝑚𝑚𝑚(𝑌𝑌𝑛𝑛 )
max(𝑌𝑌̂) 𝑖𝑖𝑖𝑖 upper outlier
• 𝑜𝑜𝑜𝑜𝑜𝑜𝑜𝑜𝑜𝑜𝑜𝑜𝑜𝑜 = {
min(𝑌𝑌̂) 𝑖𝑖𝑖𝑖 lower outlier
• 𝑖𝑖𝑖𝑖𝑖𝑖 = 𝑄𝑄3 𝑛𝑛 ) − 𝑄𝑄1 (𝑌𝑌𝑛𝑛 )
(𝑌𝑌

The baseline value of drift and outliers are computed differently. The baseline value of drift and outliers are computed
differently. The drift's baseline is computed with harmonic mean which provides the truest average in rates and ratio
data. However, the harmonic mean of a list of number tends to mitigate the impact of large outliers and aggravate the
impact of smaller ones. Thus, it is not suitable for computing data with many outliers. Therefore, the outlier's baseline
is computed with the median, which is robust toward outliers and skewed data. To tolerate on the distribution variance,
the drift's baseline is added or minus with its standard deviation. Severity score of outlier includes magnitude only.
Outliers usually occur in very short duration; thus, we focus on the magnitude component and use consecutive rules
to filter out sporadic points.
Sathyan Munirathinam / Procedia Computer Science 180 (2021) 903–912 911
Sathyan Munirathinam / Procedia Computer Science 00 (2019) 000–000 9

3. Experimentation

Dry Compressors are critical equipments in semiconductor industrial facilities. For experimentation, we installed
multiple sensors like Leak Sensor, Pressure Sensor, Temperature Sensor to monitor the activity and health of the dry
compressor.

Fig 7. (a) Dry Compressors with installed sensors ; (b) Installed sensors time series values

Before the facility drift detection application was developed, there was an progressive drift case, which eventually
escalated into system failure. The event case happened in F10N on Feb 16, 2018, which a chiller pressure sensor hit
low limit alarm at SCADA. After investigation, it was found that the condenser tube of the condenser section was
leaking.

Fig 8 (a) Implemented Streaming Drift Detection; (b) Graph with Aggressive and Progressive Drifts

For streaming drift detection, data are streaming into HBase table in a real-time manner. The data will be aggregated
minutely by average. Latest seven days’ data will be used for online model training every hour, which is similar for
batch drift detection. The new data will be used for model scoring, for which each point will be tested and assigned
the status consisting of “normal”, “outlier”, “downdrift”, “updrift” or “recover”. It is not realistic to send out all the
alarms for each data point, which requires to group the alarms if it belongs to the same event. The strategy adopted is
to group ‘outlier’ or ‘downdrift’ or ‘updrift’ together if there are no normal points in-between with ‘recover’ points
excluded. The grouped alarms will be computed with the severity score. If the severity score exceeds the pre-set
threshold, the alarm information will be sent to dashboard for display. At the same time, the alarms will be relayed
back to SCADA as the central platform to alert facility operation teams for fast reaction and response. This leakage
912 Sathyan Munirathinam / Procedia Computer Science 180 (2021) 903–912
10 Sathyan Munirathinam / Procedia Computer Science 00 (2019) 000–000

was due to a break in the tube, which was caused by one foreign metal left over among the tubes. A total of 7 tubes
out of 1750 was found to have a minor leak, which was unplugged from the system and replaced with good ones.
After the event happened, we plot out the trend chart of the pressure sensor (Fig. 8) and we can observe the gradual
downdrift was happening about two weeks with initially flat but started to accelerate around Feb 10 and eventually
hit SCADA low limit on Feb 16. After applying with the double linear regression model on the dataset, it detects two
events. The first event is flagged out as aggressive updrift, which happened from Jan 25 to Jan 31. The event is a
planned activity. The second event is flagged out as progressive downdrift, which started on Feb 10. It shows the
double linear regression model works for both aggressive drift and progressive drift.

4. Future Work

There are drift and outlier alarms triggered due to planned activity, such as planned maintenance, system rotation on
service or system internal control. However, there is no uniform format or platform across different sites to log down
the data and ingest into database. The future effort will be standardizing on the data logging and ingestion, which will
be then used to further enhance on drift detection accuracy. For the case of system rotation on service, there are
multiple units to supply the materials to manufacturing tools, of which the sensors will monitor each unit. The unit
will be in servicing mode and standby mode by rotation, which will cause the large variations on the sensor value.
One of the approaches to be considered is to create virtual parameters by summing up the sensor value from multiple
units to monitor the overall output to manufacturing tools, which is supposed to be relative stable across time.

5. Conclusion

Double Linear Regression (DLR) model is an effective early detection strategy and to compliment with current
SCADA system for un-planned facility events reduction. For future enhancement, we would expand the current drift
detection from univariant scope to multi-variant, which will filter out alarms due to planned activity. Additionally, the
project team wishes to explore on the time series correlation to link together the related drifts for causal event
detection, which would greatly help facility team member on the investigation and troubleshooting. Compared to a
simple arithmetic average of the evaluated state of each sample, the new method is practical in both implementation
and interpretation.

REFERENCES
[1] SCADA. (n.d.). In Wikipedia. Retrieved June 25, 2019, from https://en.wikipedia.org/wiki/SCADA
[2] Seltman, H. J. (2018, July 11). Experimental Design and Analysis [Book]. Available: https://www.stat.cmu.edu/~hseltman/309/Book/chapter9.pdf
[3] Hoaglin, D.C., Mosteller, F., Tukey, J.W., 1983. Understanding Robust and Exploratory Data Analysis. Wiley, New York, 58 – 77.
[4] Brys, G., Hubert, M., Struyf, A., 2004. A Robust Measure of Skewness. Journal of Computational and Graphical Statistics, Vol 13, 996 – 1017.
[5] Hubert, M. and Vandervieren, E., 2008. An adjusted boxplot for skewed distributions. Computational statistics & data analysis, 52(12), pp.5186-
5201.
[6] S. Munirathinam and B. Ramadoss, "Big data predictive analtyics for proactive semiconductor equipment maintenance," 2014 IEEE International
Conference on Big Data (Big Data), Washington, DC, 2014, pp. 893-902, doi: 10.1109/BigData.2014.7004320.
[7] G. S. Smrithy, S. Munirathinam and R. Balakrishnan, "Online anomaly detection using non-parametric technique for big data streams in cloud
collaborative environment," 2016 IEEE International Conference on Big Data (Big Data), Washington, DC, 2016, pp. 1950-1955, doi:
10.1109/BigData.2016.7840816.
[8] S. Munirathinam, S. Sun, J. Rosin, H. Sirigibathina and A. Chinthakindi, "Design and Implementation of Manufacturing Data Lake in Hadoop," 2019 IEEE
International Conference on Smart Manufacturing, Industrial & Logistics Engineering (SMILE), Hangzhou, China, 2019, pp. 19-23, doi:
10.1109/SMILE45626.2019.8965302.
[9] Munirathinam, Sathyan and Balakrishnan Ramadoss. “Predictive Models for Equipment Fault Detection in the Semiconductor Manufacturing
Process.” International journal of engineering and technology 8 (2016): 273-285.
[10] P. Lindstrom, B. Mac Namee and S. J. Delany, "Drift Detection Using Uncertainty Distribution Divergence," 2011 IEEE 11th International Conference
on Data Mining Workshops, Vancouver, BC, 2011, pp. 604-608, doi: 10.1109/ICDMW.2011.70..
[11] Raj P, Evangeline P 2020 The Digital Twin Paradigm for Smarter Systems and Environments: the Industry Use Cases (London: Academic Press)
pp 74-5
[12] S. Munirathinam, "Industry 4.0: Industrial Internet of Things (IIOT)", Advances in Computers, 2019.
[13] “Detecting Irregular Patterns in IoT Streaming Data for Fall Detection”, https://arxiv.org/ftp/arxiv/papers/1811/1811.06672.pdf
[15] “Concept Drift Detection Through Resampling”, http://proceedings.mlr.press/v32/harel14.pdf
S. Munirathinam and B. Ramadoss, "Big data predictive analtyics for proactive semiconductor equipment maintenance," 2014 IEEE International
Conference on Big Data (Big Data), Washington, DC, 2014, pp. 893-902, doi: 10.1109/BigData.2014.7004320.
[16] C. Lin, D. Deng, C. Kuo and L. Chen, "Concept Drift Detection and Adaption in Big Imbalance Industrial IoT Data Using an Ensemble Learning
Method of Offline Classifiers," in IEEE Access, vol. 7, pp. 56198-56207, 2019, doi: 10.1109/ACCESS.2019.2912631.

You might also like