외란 추정을 통해 향상된 모델예측제어

신 준 호, 박 선 원

한국과학기술원 화학공학과

Improved Model Predictive Control with Disturbance Estimation

Joonho Shin, Sunwon Park

Department of Chemical Engineering, KAIST

서 론

본 연구에서는 계단응답(step response)을 이용하는 간단한 Kalman filter를 추가시켜 측정되지 않는 외란을 추정하여 전통적인 DMC 와 QDMC 등의 제어성능을 향상시켰다. 자주 발생하는 외란에 대한 고려는 모델예측제어기의 제어성능의 향상을 위하여 매우 중요하지만 이러한 외란에 대한 정확한 모델을 얻기가 어렵고 외란의 측정이 불가능한 경우가 많다. 본 연구에서는 외란에 대한 계단응답모델을 가지고 있고 외란이 실시간으로 측정 불가능할 때 기존의 MPC(특히 QDMC)의 제어 성능을 향상시키는 방법에 대하여 고려하였으며 benchmarking 문제로 잘 알려진 SCP(shell control problem)에 적용하여 그 성능을 평가하였다.

모델예측제어 이론

공정의 모델링

다중입출력 (MIMO) 시스템에 대해서 계단응답모델 (step response model)을 이용하여 LTI(Linear Time Invariant) 시스템에 대해서 상태공간형태로 다음과 같이 표현된다.

[eqn: rm Y(k+1) ~&= ~M ~Y(k) ~+ ~S ~Delta u(k) # rm y(k) ~&= ~N ~Y(k)]

()

외란에 대한 Feedforward Control

MPC(DMC와 QDMC 등)에서는 측정 가능한 외란이 있을 경우에는 외란에 대한 항을 고려해주어 제어의 성능을 좋게 할 수 있다. 이것은 feedforward 제어를 포함시키는 것이며 식(1)은 측정 가능한 외란을 포함하여 다음과 같이 쓰여질 수 있다.

[eqn: rm Y(k+1) ~= ~M ~Y(k) ~+ ~S^u ~Delta u(k) ~+~ S^d ~Delta d(k)]

(2)

공정 출력의 추정(estimation) 및 보정(correction)

공정 출력의 추정이 식(2)에 의해된다. 즉

[eqn: rm {Y}(k|k-1) = M {Y}(k-1|k-1) + S^u ~Delta u(k-1) + S^d ~Delta d(k-1)]

(3)

모델링에서의 오차등에 의하여 실제 출력치와의 차이가 있으므로 식(3)에 의하여 예측된 출력은 공정에서의 출력에 의해서 다음식과 같이 보정을 해야한다.

[eqn: rm Y(k|k) = M {Y}(k|k-1) + K_f ~[{hat y} (k) - N Y(k|k-1) ]]

(4)

Lee [1] 등은  integrated white noise disturbance("Type 1" disturbance)를 고려하는 OBMPC(Observer Based Model Predictive Control) 알고리즘을 제안하였고 안정된 시스템(stable system)에 대해서 다음과 같은 Kalman filter 를 제안하였다:

[eqn: rm K_f ~= &{bmatrix{I_{n_y}^T ~I_{n_y}^T ~cdots ~I_{n_y} ~I_{n_y}^T }}^T TIMES F]

(5)

여기서 F는 대각행열로 다음과 같이 정의된다.

[eqn: rm F = diag{\{ f_1, f_2, cdots, f_{n_y} \}}]

()

fi는 일반적인 QDMC에서는 없는 또 하나의 튜닝 파라메터로 쓰여지는데 외란대잡음비(disturbance-to-noise ratio)에 의하여 0∼1의 값으로 결정된다.

예측과 제어입력 계산

미래 공정의 출력은 다음의 수식에 의해서 예측된다.

[eqn: rm Y_{pred} (k+1|k) = M_p Y(k|k) + S^U Delta U(k) + S^d Delta d(k)]

()

모델예측제어 기법에서는 다음과 같은 목적함수를 최적화함으로써 조작변수의 값을 결정한다.

[eqn: rm "Minimize " □ &= || Gamma (Y_sp -Y_pred ) ||^2 + || Lambda Delta U||^2 +||beta (U-U_sp )||^2]

()

subject to

[eqn: rm &Y^LOW &□ &Y_pred &□ Y^UPP # rm &U^LOW &□ &U &□ U^UPP # rm &□U^LOW &□ &□U &□ □U^UPP]

Kalman filter에 의한 외란의 추정과 기존 MPC 알고리즘과의 연결

본 연구에서는 측정되지않는 외란을 다음과 같이 계단응답을 이용하는 간단한 Kalman filter를 통하여 하였다.

[eqn: rm bmatrix{Y(k) # x_d (k) }= bmatrix{ M & 0 # 0 & 0 } bmatrix{ Y (k-1) # x_d (k-1) } + bmatrix{ S^u # 0 } Delta u(k-1) + bmatrix{S^d # I} Delta d(k-1)]

(9)

[eqn: rm y(k) = C X(k)]

표현의 간편성을 위하여 식(9)을 다시쓰면

[eqn: rm X(k) &= A X(k-1) + B Delta u (k-1) + E Delta d(k-1) # rm y(k) &= C X(k)]

(10)

따라서 Kalman filter의 형태는 다음과 같이 주어진다.

모델예측

[eqn: rm X(k|k-1) = A X(k-1|k-1) + B Delta u(k-1)]

(11)

보 정

[eqn: rm X(k|k) = X(k|k-1) + K_d \{ {hat y}(k) - C X(k|k-1) \}]

(12)

윗 식에서 Kd는 Kalman filter의 이득행렬(gain matrix)이고 잘 알려진바와 같이 ARE(Algebraic Riccati Equation)를 풀어서 간단하게 구할 수 있다. 여기에서 주의해서 볼 것은 외란에 대한 상태백터 xd(k) 인데 시간 k-1에서의 외란인 d(k-1)과 같도록 가정하였다. 이 가정을 통하여 외란을 추정하고 추정된 외란을 전통적인 MPC (DMC와 QDMC) 알고리즘이나 QBMPC 알고리즘등에 대해서 간단한 feedforward제어를 구현할 수 있음을 쉽게 알 수 있다.

예 제

SCP(Shell Control Problem)에 측정되지 않는 외란을 추정하여 5가지의 경우에 대해서 기존의 QDMC를 그대로 이용할 경우에는 QP의 해가 존재하지않는 경우가 있었으며 OBMPC 기법을 사용하여야했다.  OBMPC와 본 연구에서 제시된 외란추정을 통해 향상된 OBMPC와  제어성능을 그림 1과 그림 2와 같이 얻었다. 그림 1에서 보는 바와 같이 OBMPC는 SCP에서 제시된 제어 요구 조건을 만족시키지 못하는 반면 그림 2에서 보여지는 바와 같이 외란추정을 이용한 수정된 OBMPC는 모든 조건을 만족시킴을 알 수 있다. 본 연구에서 제시된 기법을 통해 regulatory control에 있어서  기존의 모델예측제어의 성능을 크게 향상시킬 수 있다는 것을 알 수 있었다.

결 론

본 연구에서는 기존의 MPC 알고리즘인 QDMC에 간단한 filter를 달고 측정되지 않는 외란에 대한 추정을 계단응답을 이용하는 간단한 Kalman filter를 통해 외란을 추정함으로써 기존의 모델예측기로 많이 쓰이고 있는 DMC와 QDMC등의 외란 제거에 대한 제어성능을 향상시키는 방법을 제시하였다. 제안된 외란 추정기는 기존의 DMC와 QDMC등의 MPC 알고리즘에 부가적으로 적용가능하며 적용이 쉽다는 장점을 가지고 있다.

감사의 글

포항공대 지능자동화 연구센터(ERC)를 통한 한국과학재단의 부분적 재정 지원에 감사 드립니다.

참고문헌

[1] Lee, J. H., M. Morari, and C. E. Garcia, vol. 30, no. 4, pp. 707-717, 1994

[2] Ricker, N. L., Model Predictive Control : State of the Art, CPCVI, P-67, N.Y., 1991.

그림  OBMPC 제어기의 제어 성능

그림  외란 추정을 통해 향상된 OBMPC

제어기의 제어 성능