확률적 시스템의 개념

확률적 시스템(Probabilistic Systems)은 제어 공학에서 시스템 동작이 결정론적이지 않고 확률적으로 정의되는 경우를 말한다. 이는 시스템의 입력, 출력, 상태 변수들이 일정한 확률 분포를 따르는 상황을 의미하며, 일반적으로 시스템의 불확실성을 다루기 위해 확률적 모델을 사용한다.

이러한 불확실성은 시스템의 외부 환경 요인, 센서 노이즈, 모델링 불완전성 등에서 기인할 수 있다. 확률적 시스템의 분석과 설계는 이러한 불확실성을 효과적으로 처리하여 성능을 극대화하는 것을 목표로 한다. 특히, 확률적 시스템에서의 제어는 평균적인 성능과 시스템의 안정성을 동시에 고려해야 한다.

확률적 상태 공간 모델

확률적 시스템을 표현하기 위해 상태 공간(State Space) 모델을 확장하여 확률적인 표현이 가능하도록 만든다. 확률적 상태 공간 모델은 다음과 같이 정의된다.

\mathbf{x}_{k+1} = \mathbf{A}\mathbf{x}_k + \mathbf{B}\mathbf{u}_k + \mathbf{w}_k
\mathbf{y}_k = \mathbf{C}\mathbf{x}_k + \mathbf{D}\mathbf{u}_k + \mathbf{v}_k

여기서: - \mathbf{x}_k는 상태 벡터(State Vector) - \mathbf{u}_k는 제어 입력 벡터(Control Input Vector) - \mathbf{y}_k는 출력 벡터(Output Vector) - \mathbf{A}, \mathbf{B}, \mathbf{C}, \mathbf{D}는 시스템 행렬(System Matrices) - \mathbf{w}_k는 과정 노이즈(Process Noise), 일반적으로 평균이 0인 가우시안 분포를 따름 - \mathbf{v}_k는 측정 노이즈(Measurement Noise), 과정 노이즈와 독립적인 가우시안 분포를 따름

과정 노이즈 \mathbf{w}_k와 측정 노이즈 \mathbf{v}_k는 시스템 불확실성의 중요한 요소이며, 확률적 시스템에서는 이들이 시스템의 동작에 영향을 미친다.

확률적 시스템의 대표적인 문제들

확률적 시스템에서 자주 다루는 문제는 예측(Prediction), 추정(Estimation), 그리고 제어(Control)이다. 이 문제들은 각각 확률적 과정에서 최적의 의사결정을 내리기 위해 다양한 기법을 요구한다.

1. 확률적 예측

확률적 예측 문제는 주어진 상태와 입력 정보에서 미래의 상태를 확률적으로 예측하는 것이다. 이는 필터링 문제에서 자주 발생하며, 다음과 같이 예측된다.

p(\mathbf{x}_{k+1} | \mathbf{y}_{1:k}) = \int p(\mathbf{x}_{k+1} | \mathbf{x}_k) p(\mathbf{x}_k | \mathbf{y}_{1:k}) d\mathbf{x}_k

여기서 p(\mathbf{x}_{k+1} | \mathbf{y}_{1:k})는 과거의 출력 \mathbf{y}_{1:k}로부터 예측된 다음 상태의 확률 분포이며, 이는 상태 전이 확률 p(\mathbf{x}_{k+1} | \mathbf{x}_k)와 이전 상태의 추정치 p(\mathbf{x}_k | \mathbf{y}_{1:k})를 기반으로 한다.

2. 확률적 추정

확률적 추정(Estimation)은 시스템의 불확실성을 고려하여 현재 상태를 가장 잘 추정하는 과정이다. 대표적인 방법으로 칼만 필터(Kalman Filter)가 있으며, 확률적 상태 추정에 효과적이다. 칼만 필터는 선형 가우시안 시스템에서 최적의 상태 추정을 제공한다.

칼만 필터의 상태 추정 과정은 다음과 같다:

예측 단계:

\hat{\mathbf{x}}_{k|k-1} = \mathbf{A} \hat{\mathbf{x}}_{k-1|k-1} + \mathbf{B} \mathbf{u}_k
\mathbf{P}_{k|k-1} = \mathbf{A} \mathbf{P}_{k-1|k-1} \mathbf{A}^T + \mathbf{Q}

갱신 단계:

\mathbf{K}_k = \mathbf{P}_{k|k-1} \mathbf{C}^T (\mathbf{C} \mathbf{P}_{k|k-1} \mathbf{C}^T + \mathbf{R})^{-1}
\hat{\mathbf{x}}_{k|k} = \hat{\mathbf{x}}_{k|k-1} + \mathbf{K}_k (\mathbf{y}_k - \mathbf{C} \hat{\mathbf{x}}_{k|k-1})
\mathbf{P}_{k|k} = (\mathbf{I} - \mathbf{K}_k \mathbf{C}) \mathbf{P}_{k|k-1}

여기서: - \hat{\mathbf{x}}_{k|k-1}는 예측된 상태 추정값
- \mathbf{P}_{k|k-1}는 예측된 상태 공분산
- \mathbf{K}_k는 칼만 이득(Kalman Gain)
- \mathbf{Q}는 과정 노이즈 공분산 행렬
- \mathbf{R}는 측정 노이즈 공분산 행렬
- \hat{\mathbf{x}}_{k|k}는 갱신된 상태 추정값
- \mathbf{P}_{k|k}는 갱신된 상태 공분산

3. 확률적 제어

확률적 제어(Probabilistic Control)는 불확실성을 고려하여 시스템의 성능을 최적화하는 제어 전략이다. 확률적 제어에서의 목표는 시스템의 상태가 확률적으로 변동할 때에도 안정성과 성능을 유지하는 것이다. 이 과정에서는 평균 성능뿐만 아니라 시스템의 변동성도 고려된다.

확률적 제어 문제는 다음과 같은 확률적 동적 시스템을 제어하는 문제로 정의될 수 있다:

\mathbf{x}_{k+1} = \mathbf{A} \mathbf{x}_k + \mathbf{B} \mathbf{u}_k + \mathbf{w}_k
\mathbf{y}_k = \mathbf{C} \mathbf{x}_k + \mathbf{v}_k

여기서 \mathbf{w}_k\mathbf{v}_k는 각각 과정 노이즈(Process Noise)와 측정 노이즈(Measurement Noise)를 나타낸다. 이러한 시스템에서의 확률적 제어는 상태 \mathbf{x}_k가 불확실성을 가진 상황에서 적절한 제어 입력 \mathbf{u}_k를 설계하는 것이다.

확률적 제어에서는 다음의 성능 지표가 자주 사용된다:

J = \mathbb{E} \left[ \sum_{k=0}^{\infty} (\mathbf{x}_k^T \mathbf{Q} \mathbf{x}_k + \mathbf{u}_k^T \mathbf{R} \mathbf{u}_k) \right]

여기서 \mathbb{E}[\cdot]는 기대값을 나타내며, \mathbf{Q}는 상태 벡터의 가중치 행렬, \mathbf{R}는 제어 입력 벡터의 가중치 행렬이다. 이 비용 함수는 상태 벡터와 제어 입력 벡터의 제곱합을 최소화하려는 목적을 가지고 있다.

4. 확률적 동적 프로그래밍

확률적 시스템에서 최적 제어를 다루는 방법 중 하나는 확률적 동적 프로그래밍(Stochastic Dynamic Programming)이다. 이는 상태의 확률적 변화를 고려한 동적 제어 방정식을 풀어 최적의 제어 입력을 계산하는 방법이다. 이 방법은 특히 큰 불확실성이 있는 시스템에 적합하다.

확률적 동적 프로그래밍에서 기본적으로 사용되는 방정식은 벨만 방정식(Bellman Equation)이다:

V(\mathbf{x}_k) = \min_{\mathbf{u}_k} \left( \mathbf{x}_k^T \mathbf{Q} \mathbf{x}_k + \mathbf{u}_k^T \mathbf{R} \mathbf{u}_k + \mathbb{E}[V(\mathbf{x}_{k+1})] \right)

여기서: - V(\mathbf{x}_k)는 상태 \mathbf{x}_k에서의 최적 가치 함수(Value Function)를 의미한다. - 제어 입력 \mathbf{u}_k를 통해 가치 함수가 최소화되도록 최적의 제어 입력을 선택하는 것이 목표이다.

벨만 방정식은 각 단계에서 상태와 제어 입력의 조합을 통해 최적의 결정을 내리는 방식이다. 이는 확률적 시스템에서의 불확실성을 고려한 최적의 결정을 내리는 데 중요한 역할을 한다.

5. 확률적 시스템에서의 안정성

확률적 시스템에서는 안정성(Stability)의 개념도 불확실성을 고려해야 한다. 고전적인 제어 이론에서의 안정성은 상태가 시간에 따라 수렴하거나 일정한 범위 내에 머무는 것을 의미하지만, 확률적 시스템에서는 확률적 안정성(Probabilistic Stability)을 고려해야 한다.

확률적 안정성은 시스템 상태가 시간이 지나도 확률적으로 안정하게 유지되는지를 평가한다. 이때 사용되는 주요 개념은 2차 모멘트 안정성(Second Moment Stability)이다. 이는 상태 벡터 \mathbf{x}_k의 2차 모멘트, 즉 분산이 시간에 따라 수렴하는지를 평가하는 기준이다. 2차 모멘트 안정성은 다음 조건을 만족해야 한다:

\lim_{k \to \infty} \mathbb{E}[\|\mathbf{x}_k\|^2] < \infty

이는 시간이 지나도 상태 벡터의 분산이 일정한 값으로 수렴한다는 것을 의미하며, 시스템이 확률적으로 안정하다는 것을 나타낸다.

확률적 최적 제어 (Stochastic Optimal Control)

확률적 최적 제어는 확률적 시스템에서 비용 함수(Cost Function)를 최소화하는 제어 전략을 찾는 문제를 다룬다. 이러한 문제에서 제어 입력을 설계할 때 시스템의 불확실성을 고려하여, 최종적으로 시스템의 기대 성능을 최적화한다. 주로 사용되는 확률적 최적 제어 기법으로는 확률적 동적 프로그래밍확률적 LQR (Linear Quadratic Regulator)가 있다.

1. 확률적 LQR (Linear Quadratic Regulator)

확률적 LQR은 선형 시스템에서 최적의 제어 입력을 설계하는 방법이다. 이는 일반적인 LQR 문제에 확률적 요소를 더한 것으로, 확률적 노이즈가 존재할 때 시스템의 성능을 최적화하는 방법을 다룬다.

확률적 LQR의 목표는 다음과 같은 비용 함수를 최소화하는 제어 입력 \mathbf{u}_k를 찾는 것이다:

J = \mathbb{E} \left[ \sum_{k=0}^{\infty} (\mathbf{x}_k^T \mathbf{Q} \mathbf{x}_k + \mathbf{u}_k^T \mathbf{R} \mathbf{u}_k) \right]

이때, 시스템의 상태 방정식은 확률적 노이즈가 포함된 다음 형태를 따른다:

\mathbf{x}_{k+1} = \mathbf{A} \mathbf{x}_k + \mathbf{B} \mathbf{u}_k + \mathbf{w}_k

여기서 \mathbf{w}_k는 가우시안 노이즈로, 평균이 0이고 공분산이 \mathbf{Q}_w인 분포를 따른다. 확률적 LQR에서의 목표는 노이즈가 시스템에 미치는 영향을 최소화하면서, 상태 벡터와 제어 입력의 성능을 최적화하는 것이다.

2. 확률적 해밀턴-야코비-벨만 방정식 (Hamilton-Jacobi-Bellman Equation)

확률적 제어 문제를 푸는 또 다른 주요 도구는 해밀턴-야코비-벨만(HJB) 방정식이다. 이는 확률적 시스템에서의 최적 제어 문제를 풀기 위한 비선형 미분 방정식으로, 가치 함수(Value Function)를 기반으로 최적의 제어 입력을 찾는다.

해밀턴-야코비-벨만 방정식은 다음과 같이 정의된다:

\frac{\partial V(\mathbf{x})}{\partial t} + \min_{\mathbf{u}} \left\{ \mathbf{x}^T \mathbf{Q} \mathbf{x} + \mathbf{u}^T \mathbf{R} \mathbf{u} + \frac{\partial V(\mathbf{x})}{\partial \mathbf{x}} \left( \mathbf{A} \mathbf{x} + \mathbf{B} \mathbf{u} \right) + \frac{1}{2} \text{Tr} \left( \mathbf{Q}_w \frac{\partial^2 V(\mathbf{x})}{\partial \mathbf{x}^2} \right) \right\} = 0

여기서: - V(\mathbf{x})는 상태 \mathbf{x}에서의 최적 가치 함수이다. - \mathbf{Q}_w는 과정 노이즈의 공분산 행렬이다. - \text{Tr}(\cdot)는 행렬의 대각합(Trace)을 의미한다.

HJB 방정식은 제어 문제를 푸는 데 있어 매우 강력한 도구이지만, 일반적으로 비선형 방정식이므로 해를 찾는 것이 복잡하다. 따라서 수치 해법이나 근사 방법이 필요할 때가 많다.

확률적 모델 예측 제어 (Stochastic Model Predictive Control)

확률적 시스템에서 모델 예측 제어(Model Predictive Control, MPC) 기법은 예측 제어와 확률적 요소를 결합한 제어 방법으로, 미래의 상태를 예측하고 제어 입력을 최적화한다. 확률적 MPC는 시스템의 불확실성을 고려하여 미래의 다양한 시나리오를 예측하고, 가장 유리한 제어 결정을 내린다.

확률적 MPC는 주어진 예측 구간 동안 비용 함수를 최소화하는 최적 제어 입력을 찾는다:

\min_{\mathbf{u}_0, \dots, \mathbf{u}_{N-1}} \mathbb{E} \left[ \sum_{k=0}^{N-1} (\mathbf{x}_k^T \mathbf{Q} \mathbf{x}_k + \mathbf{u}_k^T \mathbf{R} \mathbf{u}_k) \right]

예측 모델은 확률적 상태 방정식을 기반으로 다음과 같이 정의된다:

\mathbf{x}_{k+1} = \mathbf{A} \mathbf{x}_k + \mathbf{B} \mathbf{u}_k + \mathbf{w}_k

확률적 MPC에서 중요한 개념은 제어 제약(Control Constraints)이다. 실제 시스템에서는 제어 입력이 특정한 범위 내에서만 허용되기 때문에, 이를 고려한 최적화가 필요하다.

Mermaid를 사용해 확률적 모델 예측 제어의 흐름을 간단히 표현하면 다음과 같다:

graph TD; Input[입력: 현재 상태, 예측 모델, 비용 함수] --> Prediction[미래 상태 예측] Prediction --> Optimization[최적 제어 입력 계산] Optimization --> Apply[제어 입력 적용] Apply --> Feedback[새로운 상태로 피드백] Feedback --> Input

확률적 모델에서의 잡음의 특성

확률적 시스템에서의 잡음은 시스템의 불확실성을 결정하는 중요한 요소다. 잡음은 크게 두 가지로 분류할 수 있다:

  1. 과정 노이즈(Process Noise): 시스템의 동작 중 발생하는 불확실성으로, 시스템 상태에 직접적인 영향을 미친다. 가우시안 노이즈를 따르는 것이 일반적이다.

  2. 측정 노이즈(Measurement Noise): 센서나 측정 장비에서 발생하는 불확실성으로, 시스템의 출력 값에 영향을 미친다.

과정 노이즈와 측정 노이즈의 공분산 행렬인 \mathbf{Q}\mathbf{R}는 시스템의 확률적 특성을 결정하는 중요한 매개변수다. 공분산 행렬의 크기가 클수록 시스템의 불확실성이 크다고 판단할 수 있다.