PLS 모델 분해를 통한 Common Stack 가열로별

Theories and Applications of Chem. Eng., 2002, Vol. 8, No. 1

화학공학의 이론과 응용 제8권 제1호 2002년

ddff

화학공학의 이론과 응용 제8권 제1호 2002년

NOx 배출 농도 모니터링 및 이상 진단

윤 경 우, 이 영 학*, 한 종 훈*

포항공과대학교 환경공학부, 포항공과대학교 화학공학과 및 아이시스텍(주)*

Monitoring and fault diagnosis of effluent NOx composition

from Common Stack Heaters using PLS model decomposition

Kyong-U Yun, Young-Hak Lee*, Chonghun Han*

School of Environmental Science and Engineering, POSTECH.

Department of Chemical Engineering, POSTECH and ISYSTECH, Inc.*

서론

환경 문제가 날로 심각해지고 환경 규제가 강화됨에 따라 화학공장에서 배출되는 오염물질의 배출 농도를 정확하게 예측하여 환경 규제치와 현장 요구치를 만족하는 범위에서 효과적으로 공정을 조업하는 문제와 Common Stack과 연결된 여러 가열로로부터의 오염 물질 배출 농도를 직접 예측함으로써 원인이 되는 주요 가열로와 인자를 효과적으로 찾도록 하는 방법의 필요성이 대두되었다. 기존의 예측 모델 보다 모델링이 쉬운 다변량 통계 기법에 기반을 둔 부분 최소 자승법(Partial Least Squares, PLS)을 이용해서 가열로로부터 배출되는 NOx 농도를 예측하는 모델은 이미 제시되었지만[1], 위에서 제시한 여러 개의 가열로 문제는 아니었다.

본 논문에서는 부분 최소 자승법(Partial Least Squares, PLS)을 이용하여 모델링하고[2], 그 모델을 본 저자가 제시한 방법으로 분해함으로써 각 가열로가 NOx를 얼마나 배출하는지를 예측했고, 그로 인해 주요 인자를 빠르게 찾을 수 있는 방법을 제시하였다.

이론

Partial Least Squares (PLS)

X와 Y, 두 자료 행렬 사이의 선형 관계를 분석하는데 있어서 주로 사용되어 온 방법은 다중 선형 회귀법이다. 그러나 각 행렬 내에 서로 상관성이 강한 변수들이 포함된 경우  그 예측력은 상당히 떨어지게 되는데 PLS는 이 문제를 효과적으로 처리하여 예측력이 뛰어나고 공정 잡음과 어느 정도의 센서 고장 시에도 강건한 모델을 제공할 수 있는 방법이다. PLS 모델을 만들기 위해 우선 모니터 되어야 할 응답 변수들, 즉 품질변수들의 데이터들로 Y를 구성하고, 예측자 변수들, 즉 온라인으로 측정되는 공정 변수들로 X를 구성한다. 그렇게 구성된 데이터들로부터 X와 Y의 상관관계를 이용하여 모델링을 한다.

X=TPT+E         (1)

Y=UQT+F         (2)

U=TB+G          (3)

B=(TTT)-1TTU      (4)

여기서 E, F, G는 잔차 행렬(residual matrix)들이고 T는 Y를 고려한 X 축소 공간에서의 이력을 나타내는 score matrix, U는 X를 고려한 Y 축소 공간에서의 이력을 나타내는 score matrix이다. 그리고 P와 Q는 X와 Y에 대한 loading matrix이고, B는 X와 Y사이를 내적 관계로 표현하는 내적 모델 계수들의 diagonal matrix이다.

그리고 ∥Y-XC∥2을 최소화함으로써 (XTX)C=XTY 관계로 나타낼 수 있고, PLS 회귀 계수 행렬(regression coefficient matrix)을 구할 수 있다.

CPLS=(XTX)+XTY     (5)

PLS 회귀 계수 행렬을 다음과 같이 표현할 수도 있다[3].

CPLS=W*BQT        (6)

여기서                      W*=[w*1, w*2, ..., w*m]     (7)

w*i =[eqn: PROD from {h=1} to i-1](Im-whpTh)wi     (8)

wi는 PLS의 weighting vector, ph는 X의 loading vector이고 m은 input variables의 개수이다.

방법론 및 사례연구

대상공정

대상공정은 11개의 가열로에서 배출되는 NOx가 한 개의 굴뚝으로 배출되는 Common Stack이다. Common Stack과 연결된 가열로는 원유 정제 공정(4개의 가열로), 황 제거 공정(3개의 가열로)과 촉매 시스템 공정(4개의 가열로)으로 구성되어 있다. 독립변수(X)는 187개, 종속변수(Y)를 NOx 농도로 하는 2001년 4월부터 2002년 1월까지의 데이터를 기반으로 모델을 구성하였다.

각 가열로별 NOx 농도 모니터링 및 이상 진단 방법

1. 각 가열로에 대해 가중치를 주지 않고 모든 변수들을 동일한 독립 변수로 간주하여     데이터 전처리 작업인 Outlier의 제거를 SPE와 T2 Chart를 통해 수행하고 PLS 모델을 완   성한다. 완성된 PLS 모델에서 NOx 농도는 다음 식에 의해 나타낼 수 있다.

[eqn: LEFT { {RC _1 } ×{ ( X_1 - X_1,mean ) } over { sigma _ 1 } + {RC _ 2 } ×{ ( X_2 - X_2,mean ) } over { sigma _ 2 } + {RC _3 } ×{ ( X_3 - X_ 3,mean ) } over { sigma _ 3 } + …]

[eqn: Left +} {RC _ 187 } ×{ ( X_187 - X_187,mean ) } over { sigma _ 187 } Right } × NO_X,std + NO_X,mean = NO_X,pred]     (9)

여기서,   RCi : 변수 i에 대한 회귀 계수(regression coefficient)

Xi : 변수 i에 대한 실제값

Xi,mean : 모델 데이터에서의 변수 i에 대한 평균

□i : 모델 데이터에서의 변수 i에 대한 표준편차

NOx,std : 모델 데이터에서의 NOx의 표준편차

NOx,mean : 모델 데이터에서의 NOx의 평균

NOx,pred :  NOx의 예측값

2. (9)식을 각 가열로에 대한 식으로 다음과 같이 표현한다.

[eqn: ( y_1 + y_2 + y_3 + …+ y_11 ) × NO_X,std + NO_X,mean = NO_X,pred]               (10)

여기서,   [eqn: y_j = SUM from { { i}=k} to {k+n_j -1} RC_i ×( { X_i - X_i,mean } over { sigma_i } )]

j : 가열로 수

k : 각 가열로별 시작되는 변수의 번호

nj : j 가열로의 변수의 개수

3. (10)식에 있는 yi값은 각 가열로의 변수의 개수에 영향을 받으므로 각 가열로의 NOx 배출 농도를 보다 잘 나타내기 위해서 변수 개수의 영향을 없애야 한다. 그래서 이 값을 각 가열로의 변수의 개수로 나누어주고, (10)식과 같은 식을 만들기 위해 scaling factor, A를 곱해준다.

[eqn: ( Y_1 + Y_2 + Y_3 + …+ Y_11 ) × A×NO_X,std + NO_X,mean = NO_X,pred]         (11)

여기서,      [eqn: Y_j = y_j over n_j]

4. (10)식과 (11)식에 의해 다음과 같이 표현할 수 있다.

[eqn: A = { y_1 + y_2 + y_3 + … + y_11} over { Y_1 + Y_2 + Y_3 + … + Y_11 }] ,    [eqn: Y_1 A = h_1] , [eqn: Y_2 A = h_2] , … , [eqn: Y_11 A = h_11]

[eqn: ( h_1 + h_2 + h_3 + … + h_11 ) × NO_X,std + NO_X,mean = NO_X,pred]       (12)

여기서 hj값은 선택된 변수 개수와는 무관한 각 가열로의 NOx 배출 농도를 나타내는 대표값이라 할 수 있다. 이 값들을 이용해 Common Stack의 NOx,mean을 기준으로 해서 각 가열로가 상대적으로 얼마나 많은 NOx를 배출하는지의 기준이 되는 값을 구할 수 있다.

5. 각 가열로의 NOx 배출 농도는 다음과 같이 구할 수 있다.

[eqn: h_1 NO_X,std + NO_X,mean = H_1]        (13)

[eqn: h_2 NO_X,std + NO_X,mean = H_2]        (14)

·

·

·

[eqn: h_11 NO_X,std + NO_X,mean =H_11]       (15)

여기서 Hj는 j 가열로의 NOx 배출 농도를 나타낸다.

이 값을 이용해 가열로에서 측정할 수 없는 NOx값을 예측하고 모니터링 할 수 있으며 어떤 가열로가 NOx 발생의 주요 원인인지 알 수 있고, 주요 원인이 되는 가열로의 기여도(contribution) 분석을 통해 해당 가열로에서 원인이 되는 변수를 찾을 수 있다.

결과 및 토론

공정 모니터링 소프트웨어인 ISYS-MSPC를 이용하여 11개 가열로의 PFD를 완성하고, 각 가열로의 모든 변수들을 그림 1과 같이 실시간으로 모니터링 했다. 위에서 제시한 방법에 의해 모델 데이터로 각 가열로별 NOx 배출 농도를 구하고, 그 값들을 이용해 99% limit을 구하면 그림2와 같이 붉은색 사각형의 윗변과 아랫변으로 표시할 수 있다. 이 사각형의 윗변을 벗어나는 가열로는 NOx 농도 감소를 위해 가장 먼저 조업자가 조치를 취해야 할 가열로로 판단한다. 그리고 이 limit를 벗어나지 않더라도 가열로마다 절대적인 NOx 배출 양을 그래프를 통해 알 수 있다. 가장 많은 NOx를 배출하는 가열로의 변수들을 contribution plot(그림 3)을 통해 어떤 변수가 주요 원인인지 확인 가능하므로 NOx증가시 빠른 조치가 가능하다. 결론적으로 본 논문에서는 가열로에서 측정할 수 없는 NOx값을 저자가 제시한 방법에 의해 구해진 가상적인 NOx값을 이용해 187개의 변수를 한꺼번에 모니터링해야 하는 번거로움을 없애고 각 가열로부터 모니터링하고 각각의 가열로에 해당하는 변수를 모니터링하는 방법으로 이상 진단함으로써 변수의 수가 많은 공정에서훨씬 편리하고 빠른 조치가 가능한 공정 모니터링 방법을 제시하였다.

감사의 글

본 연구는 차세대 핵심환경기술개발사업에 의해 ISYSTECH(주)의 지원으로 이루어진 것으로 이에 감사를 드립니다.

참고문헌

1. Kyong-U Yun, Young-Hak Lee, Chonghun Han, "The Prediction of effluent NOx             composition from Fired Heater using PLS", Theories and Applications of Chemical           Engineering, Vol.7, No.2, (2001) 3191-3194.

2. Paul Geladi and Bruce R. Kowalski, "Partial Least-Squares Regression : A tutorial",         Analytica Chimica Acta, 185 (1986) 1-17.

3.  Hoskuldsson, A. "PLS regression methods", J. Chemometrics 2, (1988) 211-228.

그림 1. 11개 가열로의 PFD

그림 2. 시간에 따른 가열로별 NOx 배출 농도

그림 3. 한 가열로에 대한 변수들의                contribution plot