Download as pdf or txt
Download as pdf or txt
You are on page 1of 13

Journal of Process Control 17 (2007) 143–155

www.elsevier.com/locate/jprocont

Detection and diagnosis of plant-wide oscillations from industrial


data using the spectral envelope method q
Hailei Jiang a, M.A.A. Shoukat Choudhury b, Sirish L. Shah a,*

a
Department of Chemical and Materials Engineering, University of Alberta, Edmonton, AB, Canada T6G 2G6
b
Matrikon Inc., Edmonton, AB, Canada T5J 3N4

Received 12 March 2006; received in revised form 12 September 2006; accepted 13 September 2006

Abstract

Plant-wide oscillations are common in many processes. Their effects propagate to many units and may impact the overall process per-
formance. It is important to detect and diagnose the cause of such oscillations in order to rectify the situation. This paper proposes a new
procedure to detect and diagnose plant-wide oscillations using routine operating data. A technique called spectral envelope is used to
detect oscillations. The variables that have common oscillations are identified and categorized accurately by a statistical hypothesis test.
A new index called the oscillation contribution index (OCI) is proposed to isolate the key variables as the potential root cause candidates
of the common oscillation(s). Two industrial case studies are presented to demonstrate the utility and practicality of the proposed
procedure.
 2006 Elsevier Ltd. All rights reserved.

Keywords: Oscillation detection; Diagnosis; Spectral envelope; Principal component; Hypothesis test; Valve stiction; Control loop

1. Introduction Thornhill and Hägglund [21] used zero-crossings of the


control error signal to calculate integral absolute error
Detection and diagnosis of plant-wide disturbances is an (IAE) in order to detect oscillation in a control loop. This
important issue in many process industries [14,8]. Oscilla- method has poor performance in the cases of noisy error
tions are a common type of plant-wide disturbance and signals. [13] suggested a method based on the auto-correla-
the root causes can be poorly tuned controllers, process tion function to detect excessively oscillatory feedback
or actuator non-linearities, oscillatory disturbance, etc. loop. The auto-covariance function (ACF) of a signal
The oscillation effects can propagate to many units and was utilized in [22] to detect oscillation(s) present in a sig-
thus may impact the overall process performance. The nal. This method needs a minimum of five cycles in the
presence of oscillations in a plant increases the variability auto-covariance function to detect oscillation, which is
of the process variables and thus may cause poor control often hard to obtain, particularly in the case of a long oscil-
performance, inferior quality products and larger rejection lations (e.g., an oscillation with a period of 400 samples).
rates. Increasing emphasis on plant safety and plant profit- Although the data set can be downsampled in such cases,
ability strongly motivates the search for techniques to downsampling may introduce aliasing in the data. More
detect and diagnose plant-wide oscillations. recently [25] proposed spectral principal component analy-
sis (SPCA) to detect oscillations and categorize the vari-
q
ables having similar oscillations. This method does not
A condensed version of this paper has been accepted for presentation
at IFAC-ADCHEM 2006, Gramado, Brazil, April 2–6, 2006.
provide any diagnosis of the root cause of the oscillation
*
Corresponding author. Tel.: +1 780 492 5162; fax: +1 780 492 2881. which is generally the main objective of the exercise. In this
E-mail address: sirish.shah@ualberta.ca (S.L. Shah). paper, a new procedure based on the spectral envelope

0959-1524/$ - see front matter  2006 Elsevier Ltd. All rights reserved.
doi:10.1016/j.jprocont.2006.09.006
144 H. Jiang et al. / Journal of Process Control 17 (2007) 143–155

method for detection and diagnosis of plant-wide oscilla- Let g(t, b) = b*x(t) be a scaled series from Rm to R,
tions is proposed. where b is a m · 1 column vector which may be real or
The spectral envelope method is a frequency domain complex. The * represents conjugate transpose of the vari-
technique that was first introduced by [18] to explore the able. Actually, g(t, b) is a linear combination of the rows of
periodic nature of categorical time series. The idea is to x(t). The variance of g(t, b) can be expressed as Vg(b) = b*
assign numerical values to each of the categories followed VXb, and the power spectral density of g(t, b) can be
by a spectral analysis of the resulting discrete-valued time expressed as Pg(x, b) = b*PX(x)b.
series. In 1997, [12] extended the concept of spectral enve- The spectral envelope of X is defined as
lope to real-valued series. In exploring the periodic nature     
P g ðx; bÞ b PX ðxÞb
of a real-valued series, one can not only do spectral analysis kðxÞ, sup ¼ sup ð1Þ
of the original series, but also of the transformed series. b6¼0 V g ðbÞ b6¼0 b VX b
The key idea in [12] is to select optimal transformations where 1/2 < x 6 1/2. It is worthwhile to note that
of a real-valued series that emphasize any periodic nature Pg(x, b) = Pg(x, b), and the relationship between Pg(x, b)
in the frequency domain. This paper extends the idea of and Vg(b) is
spectral envelope to towards the analysis of process data. Z 1=2 Z 1=2
The main contributions of this paper are: (1) The concept
V g ðbÞ ¼ P g ðx; bÞ dx ¼ 2 P g ðx; bÞ dx ð2Þ
of spectral envelope is simplified and formulated for use 1=2 0
with process data. (2) A statistical hypothesis test is formu-
lated to categorize the variables that have common oscilla- The quantity k(x) represents the largest portion of power
tions. (3) Based on the spectral envelope method, a new (or variance) that can be obtained at the frequency x for
oscillation contribution index (OCI) is proposed to diag- any scaled series. The scaling vector that results in the value
nose the root causes of the oscillations. (4) A novel proce- k(x) is called the optimal scaling vector at frequency x,
dure to detect and diagnose plant-wide oscillations is which is denoted as b(x). Accordingly, the elements of
proposed and illustrated by application on two industrial the optimal scaling vector are called the optimal scalings.
case studies. (5) The major advantage of the method pro- The optimal scaling vector b(x) is not the same for all x.
posed here is that it can be automated easily. We prefer to limit b to the constraint that b*VXb = 1.
Therefore the scaled series g(t, b) is unit variance. This will
2. Oscillation detection using the spectral envelope method make the calculated spectral envelope more interpretable
and make the magnitude of the elements of b(x) easily
In this section, the concept of spectral envelope is intro- comparable. Accordingly, the quantity k(x) represents
duced. A simulation example is presented to demonstrate the largest power(variance) that can be obtained at the
its ability to detect multiple oscillations. The performance frequency x for any scaled series with unit variance.
comparison with the SPCA method is also included. With the optimal scaling vector b(x), Eq. (1) can be
Throughout this paper, we use (1) bold capital letters to rewritten as
represent matrices; (2) bold lower case letters to represent kðxÞVX bðxÞ ¼ PX ðxÞbðxÞ ð3Þ
vectors; and (3) regular letters to represent scalars.
It follows that k(x) is the largest eigenvalue associated with
2.1. Definition of the spectral envelope the determinant equation:
jPX ðxÞ  kðxÞVX j ¼ 0 ð4Þ
Here we provide a simple interpretation of the concept
of spectral envelope. b(x) is the corresponding eigenvector satisfying Eq. (3).
Let The viability of the spectral envelope for detecting com-
2 3 mon oscillation(s) comes from the following simple example
x1 ðtÞ
6 x2 ðtÞ 7 [17]. If the univariate time series xi(t), 1 6 i 6 m, 1 <
6 7 t < 1, is in form of ‘common signal plus independent white
xðtÞ ¼ 6 7
6 .. 7 t ¼ 0; 1; 2; . . .
4 . 5 noise’, say xi(t) = s(t) + ei(t), then in terms of power spectra,
P xi ðxÞ ¼ P s ðxÞ þ r2e , where var(ei) =Pre2. A simple linear
xm ðtÞ combination of xi(t), say xðtÞ ¼ m1 mi¼1 xi ðtÞ, will have as
be a multivariate, vector-valued time series on Rm . Denote its power spectrum, P x ðxÞ ¼ P s ðxÞ þ m1 r2e . The signal to
matrix X as noise ratio of xðtÞ has increased by a factor of m over the
individual xi(t). Therefore, this indicates that the right linear
X ¼ ½xðt  1ÞxðtÞxðt þ 1Þ   
combination of the original time series will enhance the sig-
Further, we denote the covariance matrix of X as VX and nal and attenuate the noise. The spectral envelope method
the power spectral density (PSD) matrix of X as PX(x). actually selects the optimal linear combination that can
Here, x represents frequency and is measured in cycles enhance the signal spectra and dampen the noise spectra
per unit time, for 1/2 < x 6 1/2. The definition of PSD at each frequency x for 1/2 < x 6 1/2. This feature
matrix can be found in [11]. makes the spectral envelope particularly suitable for
H. Jiang et al. / Journal of Process Control 17 (2007) 143–155 145

analyzing noise corrupted data (see simulation example in The main drawbacks of using the periodogram directly is
Section 2.4). that it is not a consistent estimate of the PSD matrix.
The confidence interval of the estimation is usually large
2.2. Simplified definition of the spectral envelope [16]. To overcome this problem, a smoothed periodogram
estimate or a consistent spectral window estimate for
Denote V = diag(VX). The diagonal elements of V and PX(x) can be used. The theory for estimating the PSD ma-
VX are the same, but the off-diagonal elements of V are trix of a vector process is well established [1,9] and we dis-
zero. We can use V instead of VX in Eq. (1) and have a cuss this briefly. One technique for smoothing is to take a
new expression for k(x) [17] symmetric moving average of the periodogram, that is
   Xr
b PX ðxÞb ^ X ðxk Þ ¼
P hjbI n ðxkþj Þ ð8Þ
kðxÞ ¼ sup ð5Þ
b6¼0 b Vb j¼r

The resulting k(x) and b(x) are slightly different than those where {hj} are symmetric (hj = hj) positive weights and
P r
in Eq. (1). Under the condition that the rows of X are j¼r hj ¼ 1. The number r is chosen to obtain a desired

mutually independent, V is equal to VX and Eq. (5) is the degree of smoothness. Larger values of r leads to smoother
same as Eq. (1). estimates. However, one should be careful not to smooth
away significant peaks. For P ^ X ðxk Þ to be a consistent esti-
We also prefer to limit b to the constraint such that P 2
b*Vb = 1. As mentioned in Section 2.1, the idea in using mate, the weights must satisfy hj ! 0 as r ! 1, but
Eq. (5) is that the right linear combination of the original r/n ! 0 as n ! 1.
time series will enhance the signal and dampen the noise. Remark 1. The optimal design of r and hj is beyond
the scope of this paper. For more detail, readers can
2.3. Estimation of the spectral envelope refer to [19]. Throughout this paper, hj is chosen as
hj = (r  jjj + 1)/(r + 1)2, for jjj = 1, 2, . . . , r. In the illustra-
In practice, we can only have finite number of samples. tive example and the industrial case studies to follow, r was
So here we assume X ¼ ½xð0Þ; xð1Þ; . . . ; xðn  1Þ 2 Rmn is selected as an integer as 1 or 2.
a m · n observed data matrix of m variables and n samples
for each variable. Instead of applying spectral envelope
2.3.1. Estimation of k(x) using bf VX
method to the original data set, we prefer to work with b X ðxk Þ and V
^ X ¼ CovðXÞ, we can
Using the estimated P
the normalized data set which means that each variable is
rewrite Eq. (1) as
zero-mean with unit variance. The reasons for using nor- ( )
malized data are: (1) simplify the calculation; (2) make b
^kðxk Þ ¼ sup b P X ðxk Þb ð9Þ
the calculated spectral envelope more interpretable; (3) b Xb
b6¼0 b V
make the calculated spectral envelope from different data
sets comparable; (4) make the magnitude of the elements ^
We denote the estimated bðxÞ at the Fourier frequencies
of b(x) more meaningful and comparable. Here we assume ^ ^
as bðxk Þ, and limit bðxk Þ to the constraint that
X is already an m · n normalized data matrix. bðx b X bðx
^ k Þ V ^ k Þ ¼ 1.
With the normalized observed data X, we can calculate For simplicity and without loss of generality, ^kðxk Þ is
its periodogram as b k Þ where
defined to be the largest eigenvalue of Hðx
" #" #
1 X
n1 X
n1
b kÞ ¼ V b 2 P
1
b 2
b X ðxk Þ V
1
bI n ðxÞ ¼ xðtÞ expð2pitxÞ xðtÞ expð2pitxÞ ; Hðx X X ð10Þ
n t¼0 b k Þ associated
^0 ðxk Þ as the eigenvector of Hðx
t¼0 If we denote b
 1=2 < x 6 1=2 ð6Þ ^ ^ k Þ is defined
with kðxk Þ, then the optimal scaling vector bðx
12
^ b ^
by bðxk Þ ¼ V X b0 ðxk Þ.
The periodgram (Eq. (6)) provides a simple estimate of
PX(x). But, the bI n ðxÞ expression in Eq. (6) is still a contin-
uous function of x which is not feasible. In practice, if n is 2.3.2. Estimation of k(x) using V
a large integer, the fast Fourier transformation provides for Using the estimated P b X ðxk Þ and V
b ¼ diagð V
b X Þ 2 Rmm ,
fast calculation of bI n ðk=nÞ, for k = 1, . . . , [n/2], where [n/2] we can rewrite Eq. (5) as
is the greatest integer less than or equal to n/2. The fre- ( )
b
quencies xk = k/n, for k = 1, . . . , [n/2], are called the Fou- ^kðxk Þ ¼ sup b P X ðxk Þb ð11Þ
rier frequencies. Then the bI n ðxk Þ at these frequencies can b6¼0 b
b Vb
be estimated as Since the data has been normalized, we have V b ¼ diagf1;
" #" # mm ^ b^
1 X
n1 X
n1 1; . . . ; 1g 2 R . Thus the constraint bðxk Þ V bðxk Þ ¼ 1
bI n ðxk Þ ¼ xðtÞ expð2pitxk Þ xðtÞ expð2pitxk Þ ^ k Þ bðx
can be simplified as bðx ^ k Þ ¼ 1. Then ^kðxk Þ is the
n t¼0 t¼0 b ^ k Þ is the correspond-
largest eigenvalue of P X ðxk Þ, and bðx
ð7Þ ing eigenvector.
146 H. Jiang et al. / Journal of Process Control 17 (2007) 143–155

2.4. Simulation example Time Trends Power Spectra

The following simulation example demonstrates the 12 12


superiority of the performance of the spectral envelope 11 11
method over the power spectrum and the SPCA method 10 10
in detecting oscillation(s) and variable categorization.
9 9
8 8
2.4.1. Time series generation
This example consists of 12 time series generated with 7 7
various sinusoid oscillations. In these time series, e(t) is a 6 6
white noise sequence with unit variance and t = 1, . . . , 512. 5 5
The first four time series are corrupted by moving aver- 4 4
age type colored noise and have base oscillation at fre- 3 3
quency x1 = 0.1 Hz
2 2
x1 ðtÞ ¼ 0:8 cosð2px1 tÞ þ eðtÞ þ 0:5eðt  1Þ 1 1
x2 ðtÞ ¼ 0:6 cos½2px1 ðt  5Þ þ eðtÞ þ 0:5eðt  1Þ
1 512 0.01 0.1 0.5
x3 ðtÞ ¼ 0:4 cos½2px1 ðt  15Þ þ eðtÞ þ 0:5eðt  1Þ Samples Frequency (cycles/sample)
x4 ðtÞ ¼ 0:2 cos½2px1 ðt  2Þ þ eðtÞ þ 0:5eðt  1Þ
Fig. 1. Time trends and power spectral of the 12 time series.
The next four time series are also corrupted by colored
noise and have base oscillation at frequency x2 = 0.3 Hz
0.5
x5 ðtÞ ¼ 0:9 cosð2px2 tÞ þ eðtÞ  0:5eðt  1Þ
x6 ðtÞ ¼ 0:7 cos½2px2 ðt  7Þ þ eðtÞ  0:5eðt  1Þ
BV–1

0
x7 ðtÞ ¼ 0:5 cos½2px2 ðt  10Þ þ eðtÞ  0:5eðt  1Þ
x8 ðtÞ ¼ 0:3 cos½2px2 ðt  20Þ þ eðtÞ  0:5eðt  1Þ –0.5

The next two time series have oscillations at both frequen-


1
cies x1 = 0.1 Hz and x2 = 0.3 Hz
x9 ðtÞ ¼ 0:4 cos½2px1 ðt  6Þ þ 0:5 cos½2px2 ðt  8Þ 0.5
BV–2

þ eðtÞ þ 0:5eðt  1Þ 0
x10 ðtÞ ¼ 0:8 cos½2px1 ðt  16Þ þ 0:6 cos½2px2 ðt  4Þ
–0.5
þ eðtÞ  0:5eðt  1Þ
–1
–2 –1
The last two time series are moving average noise 10 10
Frequency (cycles/time)
sequences:
Fig. 2. SPCA BVs plot of the 12 time series.
x11 ðtÞ ¼ eðtÞ þ 0:5eðt  1Þ
x12 ðtÞ ¼ eðtÞ  0:5eðt  1Þ
two BVs also indicate misleading peaks at frequencies
Before doing further analysis, all the time series are nor- 0.12 Hz and 0.4 Hz, which actually are not oscillation fre-
malized to be zero-mean and unit variance. Fig. 1 shows quencies in this example. As can be noticed in Fig. 2, part
the time trends and the corresponding power spectra of of BV2 contains a negative spectrum, which is not causal
these signals. The power spectra of the time series provide since no signal has negative power. The same problem also
some information about the oscillations: For example, time occurs in the industrial case studies analyzed in Sections 6
series 1, 2 and 10 have peaks at frequency x1 = 0.1 Hz, and and 7. Thus the physical interpretation of SPCA analysis is
time series 5, 6 and 7 have peaks at frequency x1 = 0.3 Hz. difficult in such cases. A modified extension of SPCA based
However, for other time series, the power spectra do not on non-negative matrix factorization that conforms to the
provide clear indication of the underlying oscillations. causality of positive power spectral is under development
by [20]. Fig. 3 shows the two-dimensional scores plot from
2.4.2. SPCA analysis SPCA analysis of the 12 time series. Each tag maps to a
Fig. 2 shows the plot of the first two basis vectors (BVs) point in the two-dimensional space. There is no obvious
of the spectral analysis of the signals. The two correspond- cluster. From examination of Figs. 2 and 3 one could
ing principal components (PCs) explain over 83% of the say: time series 1, 2 and 3 have positive PC1 value and neg-
variability of the spectra. These two BVs give indication ative PC2 value, thus they probably have oscillation at 0.1
of the base oscillations at 0.1 Hz or 0.3 Hz. However, these Hz; time series 5, 6, 7 and 8 have both positive PC1 value
H. Jiang et al. / Journal of Process Control 17 (2007) 143–155 147

0.2
SPCA, the spectral envelope method is frequency sensitive
and thus is better in detection of multiple oscillations; also
0.15
5
this method can attenuate the noise spectra and thus is bet-
6 ter in analyzing noise corrupted data. Variable categoriza-
0.1
7 tion for this simulation example is discussed in next section.
8
0.05
12 Remark 2. Another oscillation detection technique is the
PC–2

0 auto-covariance functions (ACF) based method [22]. It


9 10
uses the zero crossings of filtered auto-covariance functions
11
–0.05 4 to detect and categorize oscillations. Compared with the
3

–0.1 2 spectral envelope method, this method has some limita-


1 tions in application:
–0.15
• This method is prone to false detections because the
–0.2
algorithm uses ideal band pass filters. If it is a narrow
–0.15 –0.1 –0.05 0 0.05 0.1 0.15
band pass filter, the filtered data may be oscillatory
PC–1
and the algorithm may provide misleading results. This
Fig. 3. SPCA scores plot of the 12 time series. difficulty can be partly overcome by using other
advanced filtering technique, but this will increase the
and PC2 value, then they probably have oscillation at complexity of the algorithm.
0.3 Hz. But for the rest time series, it is hard to analyze • The presence of noise and multiple oscillations may
their oscillation frequencies: the multiple oscillations in destroy the regularity of the zero crossings of the
time series 9 and 10 are not detected; time series 11 and ACF. In this case, this method may detect none or only
12 can not be identified as not having oscillation. one oscillation, though the spectrum may show multiple
distinct peaks.
2.4.3. Oscillation detection via the spectral envelope method • This method needs a minimum of five cycles in the auto-
Fig. 4 shows the spectral envelope calculated using Eq. covariance function to detect oscillation, which is often
(9). In this analysis, we have n = 512, m = 12 with weights hard to obtain, particularly in the case of a long
{h0 = 3/9, h±1 = 2/9, h±2 = 1/9}. There are two significant oscillation.
peaks at frequencies: 51/512  0.1 Hz and 154/512 
0.3 Hz, which means that the scaled series could have
significantly more power at these two frequencies than at 3. Variable categorization
any other frequencies. It further implies that some of (or
all of) the 12 time series may have significant power at After detecting the oscillation(s), the next task is to
0.1 Hz and/or 0.3 Hz. There are no misleading peaks at group the variables that oscillate at a common frequency.
other frequencies. Therefore, it can be concluded that the The ACF based method can be used to categorize similar
spectral envelope method can clearly detect the multiple oscillations, but this method has some limitations in appli-
oscillations present in the time series. Compared with cation as mentioned earlier. The SPCA can also categorize
variables using the scores plot. However, there are some
160
limitations of applying scores plot as well

140 • If the selected BVs can not detect the oscillation fre-
quencies, then the scores plot may not always deliver
120 any useful information.
• In practice, due to noisy data, the clustering in the scores
100
plot is not very obvious (see the two industrial case stud-
ies in Sections 6 and 7).
λ(ω)

80
• One variable can belong to one cluster only in the scores
60 plot. Thus the variables that have multiple oscillations
are usually hard to analyze using the scores plot. The
40
scores plot may only capture one main oscillation and
20
lose information at the other frequencies. Therefore it
is particular difficult to categorize all variables that have
0 common multiple oscillations.
0.01 0.1 0.5
• The visualization of the scores plot is limited by the
frequency ω (cycles/sample)
number of PCs. A scores plot in more than 3-D is hard
Fig. 4. Spectral envelope of the 12 time series. to analyze.
148 H. Jiang et al. / Journal of Process Control 17 (2007) 143–155

To overcome the disadvantages of ACF and SPCA Table 1


^ k Þ to cat- Variables categorization for simulation example
methods, we utilize the optimal scaling vector bðx
egorize the variables having common oscillation(s). The At 0.1 Hz At 0.3 Hz
magnitude of the optimal scalings (elements of the optimal Series Test statistic Series Test statistic
^ k Þ) is a measure of the contribution of
scaling vector bðx 1 144 1 5
each time series to the spectral envelope ^kðxk Þ at frequency 2 187 2 5
xk. Once a certain oscillation frequency is identified, then 3 71 3 5
4 16 4 5
one can investigate the magnitude of the optimal scalings 5 0 5 1289
at that frequency. The time series having large optimal scal- 6 0 6 3920
ing magnitude are the ones that contribute the most to the 7 0 7 1008
spectral envelope, and thus are the ones having oscillation 8 0 8 214
at that frequency. Furthermore, statistical hypothesis test 9 66 9 130
10 1392 10 263
can be performed to check whether or not a particular ele- 11 0 11 5
^ k Þ is zero. This will greatly help us to identify
ment of bðx 12 0 12 6
the variables that have oscillations.
In this section, we only use the optimal scaling vector
^ k Þ calculated by Eq. (11). The reason why Eq. (11) is
bðx
at that frequency. If 2jb^1;j ðxÞj2 =rj ðxÞ < v2 ðaÞ, then the null
preferred to Eq. (9) is that Eq. (11) leads to simple calcula- 2
tion and one can avoid 1calculating Eq. (10) which involves hypothesis ‘b1,j(x) = 0’ is accepted, the corresponding time
the computation of V b 2 . series can be treated as not having oscillation in the statisti-
X
cal sense. This statistical procedure is particularly useful in
^ automating the task of finding common oscillations in a
3.1. Statistical hypothesis test on bðxÞ
data set.
Table 1 presents the optimal scalings and appropriate
Details on distribution of the sample spectral envelope
test statistics (based on Eq. (13)) at the oscillation frequen-
and the optimal scalings can be found in [18] and [12]. Here
cies for each time series of the example in Section 2.4. The
we briefly summarize the main result: if P^X ðxÞ is a consis-
smoothing weights used are the same {h0 = 3/9, h±1 =
tent estimator and if k(x) is a distinct eigenvalue, then
^ 2/9, h±2 = 1/9}. If we choose v22 ð0:001Þ ¼ 13:82, then the
mn ½bðxÞ  bðxÞ converges (n ! 1) to a complex multivar-
conclusion reached from the hypothesis test is that the test
iate normal distribution. The term mn depends on the type
has successfully identified the correct oscillation variables
of estimator being used. For example, if a weighted average
1=2 at both 0.1 Hz and 0.3 Hz with a 99.9% confidence, i.e.
as in Eq. (8) is used, mn ¼ ðRrj¼r h2j Þ . The asymptotic
variables 1–4, 9 and 10 oscillate at 0.1 Hz frequency and
(n, r ! 1) covariance matrix of the sample optimal scaling
^ variables 5–10 oscillate at 0.3 Hz frequency. From the
vector bðxÞ, say Vb(x), is given by
intersection of these two sets, it is clear that variables 9
2
 and 10 have oscillations at frequencies of 0.1 Hz and
Vb ðxÞ ¼ m2 m
n k1 ðxÞRl¼2 kl ðxÞ½k1 ðxÞ  kl ðxÞ bl ðxÞbl ðxÞ 0.3 Hz.
ð12Þ
4. Root cause diagnosis
where {k1(x) = k(x), k2(x), . . . , km(x)} are the eigenvalues
of PX(x) arranged in decreasing order, and {b1(x) = b(x),
Root cause diagnosis is a challenging problem in the
b2(x), . . . , bm(x)} are the corresponding eigenvectors.
area of detection and diagnosis of plant-wide oscillations.
In addition, the distribution of
Due to the complexity of large-scale plants and the diffi-
culty of determining cause-effect relationship, it is difficult
^1;j ðxÞ  b ðxÞj2
2jb 1;j
ð13Þ to conclude whether a certain variable is the root cause just
rj ðxÞ simply from the analysis of plant data. Process knowledge
and plant test are indispensable in determining the real root
is approximately a Chi-square distribution with 2 degrees of cause. The contribution of current data based root cause
freedom, where b ^1;j ðxÞ, j = 1, . . . , m is the jth element of the diagnosis techniques [24,23] is to isolate the few key vari-
optimal scaling vector, and rj(x) is the jth diagonal element ables as the root cause candidates, or at least identify those
of Vb b ðxÞ, the estimate of Vb(x). One could use Eqs. (12) variables that are ‘physically’ close to the root cause. This
and (13) to form confidence regions for each b ^1;j ðxÞ. Also, will reduce the workload and cost of further plant tests to
^
one can check whether or not b1;j ðxÞ is zero by comparing determine the real root cause. The idea in [24] or [23] is
2jb^1;j ðxÞj2 =rj ðxÞ with v2 ðaÞ, the a upper tail cutoff of the to use distortion factor or non-linearity index as signatures
2
Chi-square distribution. If 2jb ^1;j ðxÞj2 =rj ðxÞ > v2 ðaÞ, then to isolate the key oscillation variables as the root cause can-
2
the null hypothesis ‘b1,j(x) = 0’ is rejected with (1  a) con- didates. In this section, we propose a new index called the
fidence. Then one can conclude that, with (1  a) confi- oscillation contribution index (OCI) to serve the same
dence, the corresponding time series does have oscillation purpose.
H. Jiang et al. / Journal of Process Control 17 (2007) 143–155 149

The main idea of OCI is to utilize the optimal scalings of 6. Industrial case study 1
the oscillation variables that are identified by the statistical
hypothesis test in last section. The root cause(s) is most An industrial data set was provided by the Advanced
likely to be within these variables that have oscillations. Controls Technology group of Eastman Chemical Com-
If xj(t) is one of the oscillation variables, then its OCI is pany. Fig. 5 shows the process schematic of the plant,
defined to be which contains three distillation columns, two decanters
^1;j ðxÞ and several recycle streams. There are 15 control loops
b
OCIj ðxÞ ¼ ð14Þ and 15 indicators on the schematic. The Advanced Con-
2rb^ ðxÞ trols Technology group had identified a need for diagnosis
where rb^ ðxÞ is the standard deviation of the optimal sca- of a common disturbance with an oscillation period of
lings of all the identified variables that have oscillations. about 2 h. In this section, the proposed procedure is
The OCI is an indicator of the contribution of each oscilla- applied to this data set to demonstrate its efficacy in detec-
tion variables to the spectral envelope peak at the oscilla- tion and diagnosis of the root cause of this oscillation.
tion frequency. We use the OCI to isolate the key
variables as the root cause candidates. A general criteria 6.1. Data description
is that the variables having OCI(x) > 1 are the likely root
cause variables at frequency x because they contribute The provided data set contains 48 variables: 14 process
most to the spectral envelope at the oscillation frequency. variables (pv’s), 14 controller outputs (op’s), 15 indicator
The test can be more stringent and discriminating if a variables and 5 cascade loop setpoints (sp’s). The whole
three-sigma test is used. The industrial case studies in later data set contains 96 h of data with a sampling time of
sections will demonstrate the efficacy of using the OCI to 20 s. [23] used the second 48 h data window to analyze
isolate the key variables. the oscillations. Here, we use the first 48 h data window
where each variable has 8640 observations. In this case
Remark 3. If there is no root cause, as is the case in the study (also for the case study in Section 7), AC, FC, LC,
previous generated time series example, or the root cause PC and TC represent composition, flow, level, pressure
variable is not included in the original data set, then of and temperature tags, respectively, that are controlled.
course the OCI would not be able to find it. The calculated Similarly, FI, LI, PI, TI and SI represent the flow, level,
OCI in this situation can be used to rank the variables pressure, temperature and rotor speed tags, respectively,
according to their contribution to the spectral envelope at that are indicators only. We denote the set point, process
the oscillation frequency and find out the variables that value and the controller output as sp, pv and op,
have significant oscillations. In such cases the OCI for each respectively.
variable can simply be interpreted as the signal strength by Fig. 6 shows the time trends and power spectra of the 14
that variable towards the frequency of interest. In general pv variables. The power spectra indicate the presence of
the purpose of the OCI is to provide a ranked list of oscillation at the frequency of 0.003 cycles/sample (or
variables that are the likely root cause variables or lie about 333 samples/cycle, nearly a period of 2 h). This oscil-
physically close to the root cause. This ranked list lation had propagated through out the adjacent units and
combined with process flowsheet, loop configuration and affected many variables in the process.
other pertinent information can lead to the correct diag-
nosis of root causes. 6.2. SPCA analysis

5. Summary of the procedure to detect and diagnose Fig. 7 shows the first two BVs. The two corresponding
plant-wide oscillations PCs explain 86.26% variability of the spectra. BV2 has a
peak near the frequency of 0.003 cycles/sample which indi-
Based on the result in previous sections, the following cates the oscillation of interest. However, the negative spec-
procedure to detect and diagnose plant-wide oscillations trum in BV2 is not causal from a physical point of view. As
is proposed: for the categorization, the two-dimensional scores plot
(Fig. 8) has no meaningful clustering. It is hard to analyze
(1) Normalize the data matrix so that each variable has the frequency features of each variable using SPCA. Other
zero-mean and unit variance. PCs do not help the analysis either.
(2) Calculate the spectral envelope using Eq. (1) or (5) to
find out the main oscillation frequencies. 6.3. Analysis steps in the detection and diagnosis of
(3) Do statistical hypothesis test to identify the variables oscillations
that have oscillations at those oscillation frequencies
found in step (2). 6.3.1. Oscillation detection
(4) Use the OCI to isolate a few key variables as the root Fig. 9 shows the spectral envelope (from Eq. (11)) of the
cause candidates. Examine these variables to confirm 48 variables. This spectral envelope is estimated using tri-
the cause of oscillations. angular smoothing with r = 1 and weights {h0 = 1/2,
150 H. Jiang et al. / Journal of Process Control 17 (2007) 143–155

TI3

Condenser

Condenser

Condenser Condenser
FI4

FI3
TC2
FC5
LC2 Decanter
Decanter
FI1 TI8

Column 3
FI2

PI 2 FC7
TI 2
FC4 TI5
TI7
PC2
Steam

TI4
Separator
Column 1

Column 2
PC1 TI 1 TC1

PI1 TI 6
FC3
LC1 LC3

FC6
Steam
Condenser
Reboiler

Steam
Cond.
FI5
Reboiler

Cond.

pv affected by oscillation of 320 samples/cycle Product

FC1

op affected by oscillation of 320 samples/cycle


Feed
sp affected by oscillation of 320 samples/cycle FC8

Fig. 5. Process schematic. The oscillation variables are marked by circle symbols.

0.5
BV–1

–0.5

–1

0.5
BV–2

–0.5

–1
–3 –2 –1
10 10 10
Frequency (cycles/sample)

Fig. 6. Time trend and power spectra of 14 pv’s. Fig. 7. SPCA BVs plot of the 48 variables.
H. Jiang et al. / Journal of Process Control 17 (2007) 143–155 151

Table 2
0.5
Variables categorization for industrial case study (1)
0.4
Tag no. Test statistic Tag no. Test statistic Tag no. Test statistic
0.3 LC1.op 44 PC2.pv 54 FC8.op 789
0.2 FI1.pv 39 PC2.op 52 FI4.pv 143
FC1.sp 44 FC5.sp 395 TC2.pv 254
0.1 FC1.pv 46 FC5.pv 428 TC2.op 423
PC–2

0
FC1.op 35 FC5.op 165 TI8.pv 188
TI5.pv 78 FI5.pv 56 TI7.pv 25
–0.1 TI4.pv 1156 LC2.pv 526 PI2.pv 26
TC1.pv 1285 LC2.op 583 FI3.pv 364
–0.2
TC1.op 397 FC8.sp 418
–0.3 TI6.pv 91 FC8.pv 419
–0.4

–0.5 fidence that these are the variables that have oscillations.
–0.8 –0.6 –0.4 –0.2 0 0.2 0.4 0.6 0.8 These oscillation variables are also marked by dark circle
PC–1 symbols in Fig. 5.
Fig. 8. SPCA scores plot of the 48 variables.
6.3.3. Oscillation diagnosis
Table 3 shows the variables that have OCI bigger than 1
5
x 104 at the oscillation frequency. They are treated as the root
cause candidates. Among all the variables, the pv and op
of the level control loop LC2 have the largest OCI at the
4 oscillation frequency. This result indicates that the LC2
loop contributes most to the spectral envelope at the oscil-
lation frequency and we should take this loop as the first
3 root cause candidate.
To confirm and isolate the root cause, the pv and op data
λ (ω)

for this loop was analyzed further. Higher order statistical


2 Peak corresponding to
oscillation frequency of method described in [5,4] and [2] are used to investigate this
interest at 0.0031 cycles/sample problem.
In [5], two indices – the Non-Gaussianity Index (NGI)
1
and the Non-Linearity Index (NLI) – have been defined
based on bicoherence of a time series signal. When both
0
NGI and NLI are greater than zero, the signal is described
0.001 0.01 0.1 0.5 as non-Gaussian and non-linear and it is inferred that the
frequency ω (cycles/sample) loop in question exhibits significant non-linearity. For a
Fig. 9. Spectral envelope of the 48 variables. control loop, this test is applied to the error signal (sp–
pv) as the error signal is often more stationary than pv or
op signals. Assuming that the process is linear and no
h±1 = 1/4}. In the spectral envelope, there are clear low fre- non-linear disturbances enter the loop, the nonlinearity
quency features. This is probably because the data is from can be attributed to the control valve. Once a non-linearity
a long term operation and there exists extremely long per- is detected using higher order statistical method-based NGI
iod influences such as diurnal weather effects that impact and NLI indices, the pv–op plot is used to diagnose and iso-
the process. This low frequency feature is quite common late its cause. It is well known [10,15,3,2] that the presence
in industrial routine operating data and it is also present of stiction in control valve in a control loop produces limit
in the industrial case study (2) in Section 7. In addition cycles in the controlled variable (pv) and the controller out-
to this low frequency feature, there is a clear peak at a fre- put (op). For such a case, the pv–op plot shows elliptical
quency of 27/8640  0.0031 cycles/sample, indicating an
oscillation with a period of 320 samples/cycle. This is Table 3
exactly the oscillation that the Advanced Controls Tech- Ranked list of variables having OCI bigger than 1 at the oscillation
nology group of Eastman Chemical Company wanted to frequency
detect and diagnose. Tag no. OCI Tag no. OCI
LC2.pv 2.09 FC8.pv 1.17
6.3.2. Variable categorization LC2.op 1.88 TC2.op 1.11
Table 2 shows the variables that have the test statistic TI4.pv 1.51 FC8.sp 1.11
value bigger than v22 ð0:001Þ ¼ 13:82 at the oscillation TC1.pv 1.48 TI5.pv 1.10
TC2.pv 1.44 TI8.pv 1.07
frequency. In other words, we can confirm with 99.9% con-
152 H. Jiang et al. / Journal of Process Control 17 (2007) 143–155

cyclic patterns, which are taken as a signature of valve stic- Therefore, these cases do not pass the non-linearity test.
tion. If no such patterns are observed, it is concluded that The pv–op plot is investigated only after a successful non-
there may be valve problems other than stiction. Note that linearity detection in the loop. That is why the pv–op plot
for the cases of tightly tuned controller or a process with should not be used alone to detect stiction. This must be
time delay, the pv–op plot may also exhibit elliptical pat- used in conjunction with the non-linearity test. For a
terns. But they do not add non-linearity in a control loop. detailed discussion on these issues, refer to [5,6].

0.5 44
squared bicoherence

0.4 43.5

0.3
43 ≈ 3% apparent stiction

PV
0.2
42.5
0.1

0 42
0.5 0.5
41.5
0 0 6 7 8 9 10 11 12 13
f2 f1
OP ( % of valve travel)
(a) Bicoherence Plot (b) LC2.pv-LC2.op plot

Fig. 10. Oscillation diagnosis plots for LC2 loop.

Heat Demethanizer
Exchanger FC FC
Chain 3 4
LC LC LC
LC
8 9 10 FC
7
8 TC
FC 2
FC FC 7
5 6
LI
5
LI LI
1 LC 4
LC
3 6
PC LC
FI 1 11
2 LC
2 AC
TI TI
2
1 4 TI
PC 5 PC PC
TC PC 4 5
1 2
3
LC
1 LC LI
LC 5
LI 3
FI FC 4
1 2
1
Compressor
FC SI
FI AC 2 1
3 1
TI TI
Distillation 3 TI 6
Column 2 FI
4
pv affected by oscillation of 144 samples/cycle
op affected by oscillation of 144 samples/cycle
Fig. 11. Process schematic. The oscillation variables are marked by circle symbols.
H. Jiang et al. / Journal of Process Control 17 (2007) 143–155 153

Fig. 10 shows the diagnostic plots for this loop. 0.8


Fig. 10(a) shows that there are significantly large peaks in

BV–1
0.6
the bicoherence plot indicating a non-linear loop. The 0.4
0.2
values of NGI and NLI for this loop are 0.15 and 0.42,
respectively, which clearly indicates that the loop exhibits 10
–3 –2
10 10
–1

non-linearity. Once a loop non-linearity is detected, it 0.2


should be checked whether this is due to stiction or other 0

BV–2
process non-linearity. Fig. 10(b) shows the pv–op plot for –0.2
–0.4
this loop. The plot clearly shows an elliptic pattern indicat-
–0.6
ing the presence of stiction in the control valve. The appar- 10
–3 –2
10 10
–1

ent stiction is quantified to be approximately 3% using the 0.2


method described in [6]. 0

BV–3
Similar results of root cause diagnosis were also dis- –0.2
cussed in [23]. It was reported that the control valve of loop –0.4
LC2 suffered from a deadband problem [23]. It has been –0.6
–3 –2 –1
10 10 10
confirmed that the control valve caused control variable Frequency (cycles/sample)
LC2.pv to oscillate, and the oscillation passed through
the feedback controller and made the controller output Fig. 12. SPCA BVs plot of the 58 variables.
LC.op also to oscillate. After that, the oscillations propa-
gated to the temperature control loop TC1 in the second
distillation column and caused the temperature to oscillate.
This is the reason why temperature indicator TI4.pv and 0.1
control variable TC1.pv had oscillations too. For more
0
information, refer to [23]. PC–3
–0.1
7. Industrial case study 2 –0.2

An industrial data set was provided by the courtesy of –0.3


Mitsubishi Chemical Corporation (MCC), Mizushima, –0.4
Japan. Fig. 11 shows the process schematic of the plant. 0.5
The plant personnel reported oscillations with a period of 1
0
about 2–3 h in the condenser level of a distillation column. PC–2 0.5
These oscillations actually propagated through out the 0.5 0
PC–1
plant, causing sub-optimal operation and large economic
losses. Previous attempts for oscillation detection and root Fig. 13. SPCA scores plot of the 58 variables.
cause diagnosis by considering only the level and variables
directly affecting them were not successful. In this section, three-dimensional scores plot (Fig. 13) has no meaningful
the newly proposed procedure is applied to this large data clustering. It is hard to analyze the frequency features of
set to detect and diagnose the cause of these plant-wide each variable. Other PCs do not help the categorization
oscillations. either.

7.1. Data description 7.3. Analysis steps in the detection and diagnosis of
oscillations
The provided data set consists of 58 variables: 27 pro-
cess variables (pv’s), 15 controller outputs (op’s), 16 indica- 7.3.1. Oscillation detection
tor variables. Each variable has 3600 observations with a Fig. 14 shows the spectral envelope (from Eq. (11)) of
sample interval of 1 min, which corresponds to data over the 58 variables. This spectral envelope is estimated using
2 days of operation. triangular smoothing with r = 1 and weights {h0 = 1/2,
h±1 = 1/4}. Besides the low frequency features, there is a
7.2. SPCA analysis clear peak at the frequency of 25/3600  0.0069 cycles/
sample. This peak indicates a oscillation with a period of
Fig. 12 shows a plot of the first three BVs. The three cor- 144 samples/cycle, which is exactly the oscillation that
responding PCs explain 94.68% variability of the spectra. the plant personnel wanted to detect and diagnose.
BV3 has a peak near the frequency of 0.007 cycles/sample
(or 143 samples/cycle) which indicates the oscillation of 7.3.2. Variable categorization
interest. However, the negative spectra in BV2 and BV3 Table 4 shows the variables that have the test statis-
is hard to interpret. As for the categorization, the tic value bigger than v22 ð0:001Þ ¼ 13:82 at the oscillation
154 H. Jiang et al. / Journal of Process Control 17 (2007) 143–155

x 10
4 7.3.3. Oscillation diagnosis
3
Table 5 shows variables that have OCI bigger than 1 at
the oscillation frequency. They are treated as the root cause
2.5 candidates. Among all the variables, variable PC1.pv has
largest OCI. This result indicates that this particular
2 (PC1) loop contributes most to the spectral envelope at
the oscillation frequency and we should examine this loop
λ(ω)

1.5 as the first root cause candidate.


Again, we followed the same procedure as in the earlier
Peak corresponding to industrial case study (1) to diagnose the root cause of the
1 oscillation frequency of
interest at 0.0069 cycles/sample oscillations. Fig. 15(a) shows the bicoherence plot. The val-
0.5
ues of NGI and NLI are 0.18 and 0.54, respectively, indicat-
ing a non-linear loop. The elliptical pattern in Fig. 15(b)
indicates that this control valve is suffering from stiction.
0
0.001 0.01 0.1 0.5 Further plant tests have confirmed that this loop with a
frequency ω (cycles/sample) sticky valve was indeed the leading cause of plant-wide
oscillations. Before the ‘plant-shutdown’ for maintenance
Fig. 14. Spectral envelope of the 58 variables.
could proceed, simple closed-loop test described in [7]
was performed on loop PC1 to confirm the presence of
valve stiction. This simple closed-loop test requires one to
Table 4
change the controller gain and observe whether there is a
Variables categorization for industrial case study (2)
change in frequency of oscillation. If the frequency of oscil-
Tag no. Test statistic Tag no. Test statistic Tag no. Test statistic
lation changes, this indicates that the oscillation is gener-
TI1.pv 492 TI3.pv 96 FI4.pv 56 ated within the loop and is not caused by an external
FC1.op 23 PC2.pv 269 LI4.pv 87
disturbance. The results obtained from this test on loop
AC1.pv 33 TI4.pv 141 LC6.op 93
LI1.pv 78 PC3.pv 100 TC2.op 25 PC1 confirmed that the oscillation was generated within
PC1.op 2867 TI5.pv 34 FC5.op 60 the loop PC1. MCC engineers have now confirmed that
PC1.pv 3385 LC4.op 1310 LC8.pv 37 the sticky valve in this loop plus interactions from other
LC2.pv 398 LC4.pv 325 FC6.op 23 loops were the main causes of oscillations.
AC2.pv 120 PC4.pv 92 FC6.pv 32
TC1.pv 22 LC5.op 125 LC9.pv 36
LI2.pv 56 LC5.pv 965 FC7.op 21 Table 5
FC2.op 61 LI3.pv 268 FC7.pv 40 Ranked list of variables having OCI bigger than 1 at the oscillation
frequency
Tag no. OCI Tag no. OCI
PC1.pv 2.23 LI3.pv 1.36
frequency. In other words, with a confidence of 99.9%, TI4.pv 1.68 LC4.pv 1.33
these are the variables that have oscillations. These oscilla- LC5.pv 1.64 LC8.pv 1.18
tion variables are also marked by dark circle symbols in LI1.pv 1.48 LC5.op 1.08
LC4.op 1.38
Fig. 11.

1.616

1.614
0.6
squared bicoherence

1.612
PV (MPa)

0.4
1.61 ≈ 1% stiction

0.2 1.608

1.606
0
0.5
0.2 0.4 1.604
0 0 35.6 35.8 36 36.2 36.4
f2 f1
OP (% of valve travel)
(a) bicoherence plot (b) pv-op plot

Fig. 15. Diagnostic plots for the PC1 loop.


H. Jiang et al. / Journal of Process Control 17 (2007) 143–155 155

8. Concluding remarks [4] M.A.A.S. Choudhury, S.L. Shah, N.F. Thornhill, Detection and
quantification of control valve stiction. in: The Proceedings of
DYCOPS 2004, July 5–7, Cambridge, USA, 2004.
In this paper, the concept of spectral envelope has been [5] M.A.A.S. Choudhury, S.L. Shah, N.F. Thornhill, Diagnosis of poor
modified and extended so that it is simple to apply for control loop performance using higher order statistics, Automatica 40
detecting plant-wide oscillations. This method is good at (10) (2004) 1719–1728.
detecting single or multiple oscillations. The oscillation [6] M.A.A.S. Choudhury, S.L. Shah, N.F. Thornhill, David S. Shook,
detection can be carried out using routine operating data Automatic detection and quantification of stiction in control valves,
Control Engineering Practice 14 (12) (2006) 1395–1412.
and the calculation of spectral envelope is straightforward. [7] M.A.A.S. Choudhury, V. Kariwala, S.L. Shah, H. Douke, H.
In comparison to the ACF based method, the spectral Takada, N.F. Thornhill, A simple test to confirm control valve
envelope method does not suffer any limitation on the min- stiction, in: The 16th IFAC World Congress, Czech Republic, Prague,
imum number of oscillation cycles and it does not require 2005.
the design of any filter. It can detect all oscillations in a sin- [8] L. Desborough, R. Miller, Increasing customer value of industrial
control performance monitoring – honeywell’s experience, in: Pro-
gle step and therefore the potential for automating this ceedings of CPC VI. Tuscon, Arizona. 2001, pp. 172–192.
method is significant. The method can also identify vari- [9] E.J. Hannan, Multiple Time Series, Wiley, New York, 1970.
ables with multiple oscillations. [10] T. Hägglund, A control-loop performance monitor, Control Engi-
Further more, statistical hypothesis test can be per- neering Practice 3 (1995) 1543–1551.
formed to identify variables having common oscillation(s) [11] Gwilym M. Jenkins, Donald G. Watts, Spectral Analysis and Its
Applications, Holden day, 1968.
accurately. A new index called the oscillation contribution [12] A.J. McDougall, D.S. Stoffer, D.E. Tyler, Optimal transformations
index (OCI) has been proposed to isolate the few key vari- and the spectral envelop for real-valued time series, Journal of
ables as the root cause candidates of plant-wide Statistical Planning and Inference 57 (1997) 195–214.
oscillations. [13] T. Miao, D.E. Seborg, Automatic detection of excessive oscillatory
The steps required to carry out this analysis have been feedback control loops, in: Proceedings of IEEE international
Conference on Control Applications. Kohala Coast, Hawai’i, 1999.
summarized. Two industrial case studies were presented [14] S.J. Qin, Control performance monitoring – a review and assessment,
to demonstrate the efficacy of the new procedure. Computer and Chemical Engineering 23 (1998) 173–186.
[15] R. Rengaswamy, T. Hagglund, V. Venkatasubramanian, A qualita-
tive shape analysis formalism for monitoring control loop perfor-
Acknowledgements mance, Engineering Applications of Artificial Intelligence 14 (2001)
23–33.
The authors are grateful for the financial support from [16] Robert H. Shumway, Applied Statistical Time Series Analysis,
Prentice-Hall, New Jersey, 1988.
the Natural Sciences and Engineering Research Council [17] David S. Stoffer, Detecting common signals in multiple time series
of Canada (NSERC), Matrikon Inc. and the Alberta Sci- using the spectral envelope, Journal of the American Statistical
ence and Research Authority (ASRA), through the Association 94 (1999) 1341–1356.
NSERC–Matrikon–ASRA Senior Industrial Research [18] David S. Stoffer, David E. Tyler, Andrew J. McDougall, Spectral
Chair program at the University of Alberta. The authors analysis for categorical time series: scaling and spectral envelope,
Biometrika 80 (1993) 611–622.
would like to thank John Cox and Michael Paulonis of [19] David S. Stoffer, David E. Tyler, David A. Wendt, The spectral
Eastman Chemical Company, and Hisato Douke and Soui- envelope and its applications, Statistical Science 15 (2000) 224–253.
chi Amano of Mitsubishi Chemical Corporation for allow- [20] A.K. Tangirala, S.L. Shah, Non-negative matrix factorization for
ing us the use of their plant data. The authors would also detection of plant-wide oscillations, Internal report, Department of
like to thank Dr. Bhushan Gopaluni for pointing out the Chemical and Materials Engineering, University of Alberta, Canada,
2005.
papers by Stoffer and co-workers for this study. [21] N.F. Thornhill, T. Hägglund, Detection and diagnosis of oscillation
in control loops, Control Engineering Practice, 1997.
[22] N.F. Thornhill, B. Huang, H. Zhang, Detection of multiple oscilla-
References tions in control loops, Journal of Process Control 13 (2003) 91–100.
[23] N.F. Thornhill, John W. Cox, Michael A. Paulonis, Diagnosis of
[1] D.R. Brillinger, Time series: data analysis and theory, second ed., plant-wide oscillation through data-driven analysis and process
Holden-Day, San Francisco, 1981. understanding, Control Engineering Practice 11 (2003) 1481–1490.
[2] M.A.A.S. Choudhury, Detection and diagnosis of control loop [24] N.F. Thornhill, S.L. Shah, B. Huang, Detection of distributed
nonlinearities, valve stiction and data compression. PhD thesis, oscillations and root-cause diagnosis, in: Proceedings of CHEMFAS
Department of Chemical and Materials Engineering, University of 4. Jejudo Island, Korea, 2001, pp. 167–172.
Alberta, Canada, 2004. [25] N.F. Thornhill, S.L. Shah, B. Huang, A. Vishnubhotla, Spectral
[3] M.A.A.S. Choudhury, N.F. Thornhill, S.L. Shah, Modelling valve principal component analysis of dynamic process data, Control
stiction, Control Engineering Practice 13 (2005) 641–658. Engineering Practice 10 (2002) 833–846.

You might also like