30차시 · 정의와 표기

상태·입력·출력과 상태공간 모형

상태 \(x_k\)는 현재 입력 \(u_k\)와 함께 다음 상태를 계산하기에 충분한 정보의 묶음이다. 입력은 외부에서 주는 값이고, 출력 \(y_k\)는 상태에서 관측하는 값이다.

\[x_{k+1}=Ax_k+Bu_k,\qquad y_k=Cx_k\]

\(x_k\in\mathbb R^n\), \(u_k\in\mathbb R^m\), \(y_k\in\mathbb R^r\)이면 \(A\)는 \(n\times n\), \(B\)는 \(n\times m\), \(C\)는 \(r\times n\)이다. 이 차시는 계수가 시간에 따라 바뀌지 않는 선형 상태공간 모형을 다룬다.

성분의 순서와 단위를 먼저 정해야 같은 행렬이 같은 물리량을 계산한다. 운동 예제의 입력은 힘이 아니라 가속도이다.

30차시 · 설명과 유도

등가속도 운동식에서 상태행렬 만들기

한 구간 \(\Delta t\) 동안 가속도 \(u_k\)가 일정하다고 가정한다. \(p_k\)의 단위는 m, \(v_k\)는 m/s, \(u_k\)는 m/s²이다.

\[p_{k+1}=p_k+\Delta t\,v_k+\tfrac12(\Delta t)^2u_k,\qquad v_{k+1}=v_k+\Delta t\,u_k\]
\[A=\begin{bmatrix}1&\Delta t\\0&1\end{bmatrix},\quad B=\binom{(\Delta t)^2/2}{\Delta t},\quad C=\begin{bmatrix}1&0\end{bmatrix}\]

여기서 \(x_k=(p_k,v_k)^T\), 출력은 위치 \(y_k=p_k\)로 정했다. \(\Delta t=1\)초를 대입하면 다음 예제의 행렬이 된다.

30차시 · 상태공간

다음 위치를 알려면 지금 무엇을 기억해야 할까?

1초 동안 가속도 \(u_k\)가 일정한 운동을 생각해 봅시다.

\[\mathbf{x}_k=\begin{bmatrix}p_k\\v_k\end{bmatrix},\qquad \mathbf{x}_{k+1}=A\mathbf{x}_k+B u_k\]
\[A=\begin{bmatrix}1&1\\0&1\end{bmatrix},\qquad B=\begin{bmatrix}\tfrac12\\1\end{bmatrix}\]

\(p_k\): 위치, \(v_k\): 속도, \(u_k\): 가속도 입력.

직접 계산

\(\mathbf{x}_0=(0,1)^\mathsf T\), \(u_0=2\), \(u_1=0\)

\(A\): 입력이 없을 때의 변화 · \(B\): 입력이 상태에 반영되는 방식

초기 상태
\[\mathbf{x}_0=\begin{bmatrix}0\\1\end{bmatrix}\]

위치 0, 속도 1.

30차시 · 정의와 표기

도달가능성과 입력의 열공간

정해진 단계 수 안에 입력을 골라 목표 상태를 만들 수 있으면 그 상태에 도달 가능하다고 한다. 두 단계에서는

\[x_2=A^2x_0+ABu_0+Bu_1,\qquad x_2-A^2x_0=\begin{bmatrix}AB&B\end{bmatrix}\binom{u_0}{u_1}\]

목표와 자유운동 결과의 차이가 \([AB\ B]\)의 열공간에 있어야 한다. 2차원 상태·스칼라 입력에서는 이 두 열이 독립이면 임의의 목표를 두 단계로 만들 수 있다.

이는 입력 크기에 제한이 없다는 가정 아래의 결론이다. 가속도 제한 같은 실제 조건을 더하면 도달 가능한 목표가 줄어들 수 있다.

30차시 · 유도와 계산

두 단계의 입력이 도착점에 미치는 영향

\(x_1=Ax_0+Bu_0\)를 다음 단계 식에 대입합니다.

\[x_2=A(Ax_0+Bu_0)+Bu_1=A^2x_0+ABu_0+Bu_1\]

u₀는 B로 상태에 들어간 뒤 A를 한 번 더 거칩니다. 이 차이가 제어행렬의 서로 다른 열 AB와 B를 만듭니다.

30차시 · 계산과 논증

도달 가능한 목표와 가속도 제한

\(\Delta t=1\), \(x_0=0\), 목표 \(x_2=(4,0)^T\)이다. ① 두 입력을 구하라. ② \(|u_0|,|u_1|\le2\)라면 같은 시간에 도달 가능한가? ③ 정지해서 도착할 수 있는 위치의 범위를 구하라.

풀이와 판단 근거
\[\begin{bmatrix}3/2&1/2\\1&1\end{bmatrix}\binom{u_0}{u_1}=\binom40\]

둘째 식에서 \(u_1=-u_0\)이고 첫째 식은 \(u_0=4\)이므로 입력은 \((4,-4)\)이다. 제한을 만족하지 않아 두 단계 안에 도달할 수 없다.

정지 도착에서는 \(p_2=u_0\)이므로 \(-2\le p_2\le2\)이다. 행렬이 가역이라는 사실은 해의 존재·유일성을 보장하지만 그 해가 입력 제한을 만족함까지 보장하지는 않는다.

입력 시나리오

입력을 다르게 주면 이동 경로는 어떻게 달라질까?

\(\mathbf{x}_0=(0,1)^\mathsf T\), \(u_k=0\). 속도 1 유지.

파란색: 위치 \(p_k\). 주황색: 속도 \(v_k\).

30차시 · 계산과 논증

고윳값 1이 기억의 유지를 뜻할까?

\[A=\begin{bmatrix}1&1\\0&1\end{bmatrix},\quad B=\binom{1/2}{1},\quad u_k=0\]

① \(x_0=(0,1)^T\)일 때 \(x_k\)를 구하라. ② 고윳값이 모두 1이므로 상태 크기가 일정하다는 주장을 반박하라. ③ \(B\) 대신 \(B'=e_1\)을 쓰면 정지 출발에서 속도를 바꿀 수 있는가?

풀이와 판단 근거
\[A^k=\begin{bmatrix}1&k\\0&1\end{bmatrix},\qquad x_k=(k,1)^T\]

위치는 선형적으로 증가하므로 상태 크기는 일정하지 않다. 고윳값의 절댓값이 1인 경우에는 행렬 구조와 초기상태를 함께 보아야 한다.

\(AB'=B'=e_1\)이므로 도달 가능한 변화는 \(\operatorname{span}(e_1)\)뿐이다. 입력을 여러 번 줘도 두 번째 성분인 속도를 바꿀 수 없다.

선택 확장 · 시퀀스 모델

긴 입력에서 필요한 내용을 상태에 어떻게 남길까?

\[\mathbf{h}_{t+1}=A\mathbf{h}_t+B\mathbf{x}_t,\qquad \mathbf{y}_t=C\mathbf{h}_t\]
\(\mathbf{x}_t\)현재 입력
\(\mathbf{h}_t\to\mathbf{h}_{t+1}\)상태·기억
\(\mathbf{y}_t\)출력
  • \(A\): 이전 상태의 전달과 감쇠
  • \(B\): 입력을 상태에 기록하는 방식
  • \(C\): 상태에서 출력을 읽는 방식

선택적 상태공간 모델은 일부 계수를 입력에 따라 바꿉니다. 그래서 전체 모델은 보통 하나의 고정된 선형식이 아닙니다.

핵심 정리

상태식 하나로 예측·제어·장기 변화를 분석한다

모델

상태 갱신

\(\mathbf{x}_{k+1}=A\mathbf{x}_k+B u_k\)

계산

입력 설계

목표 상태를 만드는 선형 연립방정식.

분석

안정성

\(A^k\)와 고윳값의 장기 거동.

확장

공학·AI

제어, 추정, 시퀀스 모델.