Table of Contents
LTI 시스템을 이해하기 위해서는 임펄스 응답과 컨볼루션 그리고 차분 방정식이 어떤 의미를 갖는 파악하는 것이 중요하다. 임펄스 신호만을 가지고 시스템의 특성을 간단하고도 강력하게 파악할 수 있고, 해당 시스템이 어떤 구조를 갖고있는지도 차분 방정식을 통해 수학적으로 나타낼 수 있다. 이번 글에서는 각 개념들에 대해 살펴보고 차분 방정식을 어떻게 풀어나가는지 소개해보려고 한다.
Impuse response
임펄스 응답은 시스템에 이산 임펄스 신호 $\delta[n]$ 을 입력하였을 때 출력으로 나타나는 시스템의 응답 $h[n]$을 말한다. 임펄스 신호는 ‘현재 시점에 입력할 수 있는 가장 간단한 신호’로 볼 수 있는데, 이 신호로부터 시스템이 어떤 성질을 갖는지 분석해볼 수 있다. 이처럼 간단한 신호로 분석할 수 있는 이유는 시스템이 선형-시불변성을 갖기 때문이다.
https://onscale.com/impulse-response-modeling-in-onscale/
LTI 시스템에 들어가는 임의의 입력 신호는 ‘임펄스 신호에 대한 가중합’으로 나타낼 수 있다고 지난 글에서 소개했던 적이 있다. 그렇기 때문에, 임펄스 신호만 알고 있다면 그 어떤 입력 신호에 대해서도 해당 신호의 출력을 유추해낼 수 있다. 위 임펄스 응답은 출력이 유한한지 무한한지에 따라 다음으로 나뉘어 진다:
- 유한 임펄스 응답 (FIR, Finite Impulse Response): 임펄스 응답의 길이가 유한한 시스템
- 무한 임펄스 응답 (IIR, Infinite Impulse Response): 임펄스 응답의 길이가 무한한 시스템
Convolution
임의의 이산 신호는 시간 이동된 임펄스 신호들의 가중합으로서 바라볼 수 있었다. 이를 수식으로 써보면 다음과 같다:
\[\begin{aligned} x[n] &= \cdots + x[-1]\delta[n+1]+x[0]\delta[n]+\cdots+x[k]\delta[n-k]+\cdots \\ &= \sum_{k=-\infty}^{\infty}x[k]\delta[n-k]. \end{aligned}\]LTI 시스템의 선형성(동차성과 가산성)에 의하면, 각각의 임펄스 신호 $\delta[n-k]$에 대한 출력만 알고 있어도(즉, 임펄스 응답만 알아도) 전체 입력 $x[n]$이 들어갔을 때의 출력을 합을 통해 쉽게 구할 수 있다.
\[\begin{aligned} y[n]&=H\{x[n]\}=\cdots+H\{x[0]\delta[n]\}+\cdots+H\{x[k]\delta[n-k]\}+\cdots \\ &=\sum_{k=-\infty}^{\infty}x[k]H\{\delta[n-k]\} \end{aligned}\]이 연산을 컨볼루션(Convolution)이라 하며, 기호로는 $*$를 사용하여 다음과 같이 표현한다.
\[y[n]=\sum_{k=-\infty}^{\infty}x[k]H\{\delta[n-k]\} = x[n]*h[n]\]만약 시스템이 causal 시스템인 경우, 합의 범위가 $[0, \infty]$ 로 변경된다. 컨볼루션 연산은 기본적인 연산 법칙 (교환법칙, 결합법칙, 분배법칙)이 성립하기에 필요에 따라 적절하게 변형시켜 연산량을 줄이는 것이 좋다. 아래 애니메이션은 컨볼루션 연산의 결과를 시각화한 것이며, 결과를 보면 $N$의 길이를 갖는 이산 신호와 $M$의 길이를 갖는 이산신호에 대해 컨볼루션 연산을 취한 결과는 $N + M - 1$ 의 길이를 갖는다는 것을 알 수 있다.
Difference equation: Interpreting LTI system
본 주제에서 가장 까다롭게 느꼈던 부분은 차분 방정식(Difference Equation)을 풀어내는 과정이다. 크게는 반복 대입법과 고전적 해법을 통해 접근할 수 있고, 이 과정에서 특성 방정식과 특성근을 어떻게 구하고 해석하는지 알게 된다. 먼저, 가장 일반적인 형태의 차분 방정식을 생각해보자:
\[y[n]+a_1 y[n-1]+\cdots + a_py[n-p]=b_0x[n]+\cdots+b_qx[n-q]\]차분 방정식을 보면, 출력 $y[n]$이 단순히 입력 $x[n]$에 의해서만 결정되는 것이 아니라, 시스템 내부가 가진 이전 출력 $y[n-k]$에도 의존함을 알 수 있다. 그리고 초기 상태로 부터 한단계씩 나아가 최종 출력을 계산하는 방법을 반복 대입법이라고 한다.
반복 대입법
- 차분 방정식의 좌변에 $y[n]$만 남기고 우변으로 넘겨 정리한다.
- 시작 지점 $n=i$에서 주어진 초기조건과 이미 알고 있는 입력 신호들을 대입하여 $y[i]$를 계산한다.
- 이후 $n=i+1$ 값으로 넘어가, 이전 단계에서 구한 $y[i]$를 차분 방정식에 대입하여 $y[i + 1]$을 구한다. 이런식으로 단계별로 쭉 반복하여, 원하는 구간까지 $y[n]$을 계산할 수 있다.
방정식이 간단하거나 차수가 낮은 경우에는 반복 대입법을 통해 닫힌 꼴(closed-form)의 해를 구할 수 있다. 그러나 차수가 높아질수록 해를 구하는 과정이 매우 복잡해져 비효율적이므로 고전적 해법을 이용한다. 이 방법은 차분 방정식의 해가 동차해(homogeneous solution) $y_h[n]$와 특이해(particular solution) $y_p[n]$의 합으로 이루어진다는 점에 착안하여 문제를 해결한다.
Homogeneous solution
동차해는 시스템에 외부입력이 가해지지 않았을 때($x[n]=0$)의 해, 즉 시스템 자체의 고유 특성이 반영된 응답을 말한다. 이 응답은 시스템의 특성근(characteristic roots)으로 부터 구할 수 있고, 특성근의 중복 여부에 따라 해의 형태가 달라진다.
-
특성근이 모두 서로 다른 경우:
\[y_h[n] = c_1 \gamma_1^n + c_2 \gamma_2^n + \cdots + c_p \gamma_p^n\]여기서 $\gamma_1, \gamma_2, \dots, \gamma_p$는 특성근이고, $c_1, c_2, \dots, c_p$는 상수
-
특성근이 중근을 갖는 경우:
예로, 특성근 $\gamma_1$이 $m$-중근이라면, 해당 근에 대한 해는 다음과 같이 표현된다.
\[y_h[n] = (c_1 + c_2 n + \cdots + c_m n^{m-1}) \gamma_1^n + \cdots + c_p \gamma_p^n\]
Particular solution
특이해는 시스템에 외부에서 가해지는 입력(자극)에 의해 발생하는 출력을 의미한다. 이는 시스템의 고유한 특성과는 무관하며, 입력의 형태에 따라 달라진다. 여기까지 보면, 입력에 의해 발생하는 결과와 시스템 자체가 갖고 있는 특성으로 인해 만들어지는 결과를 합쳐서 차분방정식을 구성한다는 것으로 볼 수 있다.
차분 방정식의 해는 시스템이 지닌 고유한 특성과
입력으로 인해 발생하는 결과를 더한것으로 구성된다.
Characteristic equation
위에서 계속 언급했던 특성근을 구하기 위해서는 특성 방정식을 세워야 한다. 차분 방정식에서 시간 지연 항(예: $y[n-1]$, $y[n-2]$)을 각각 $\gamma^{n-1}$, $\gamma^{n-2}$로 대체해 나가다 보면, 다음과 같은 다항식인 특성방정식을 얻게 된다.
\[\gamma^p + a_1 \gamma^{p-1} + \cdots + a_{p-1} \gamma + a_p = (\gamma - \gamma_1)(\gamma - \gamma_2) \cdots (\gamma - \gamma_p) = 0\]이 방정식의 해인 $\gamma_i$들을 통해, 시스템이 외부 입력이 없을 때 어떤 거동을 보이는지, 즉 안정적으로 수렴하는지, 발산하는지, 혹은 계속 진동하는지 등을 판별할 수 있다.

Example
다음과 같은 차분 방정식이 있다고 가정해보자:
\[y[n]-1.5y[n-1]+0.5y[n-2]=0\]차분 방정식에서 우변이 0인 것으로 보아, 해당 시스템에는 입력이 인가되지 않는 시스템을 분석하고 있다는 것을 엿볼 수 있다. 그렇다면 초기조건에 의해 시스템이 어떠한 상태를 갖는지 살펴보는 것과 같다. 위 차분 방정식의 특성 방정식은 다음과 같다.
\[\gamma^2-1.5\gamma+0.5=0 \qquad \Rightarrow \qquad \gamma_1=1,\;\gamma_2=0.5\]특성근은 각각 1과 0.5의 값을 갖는데, 이로부터 이 시스템은 시간이 지나면서 일부 항은 유지되고 일부 항은 사라지는 중립(또는 안정에 가까운) 거동을 보인다는 사실을 확인할 수 있다. 구체적으로는 초기조건에 따라 $c_1 \cdot 1^n + c_2 \cdot 0.5^n$ 형태로 응답이 결정될 것이다.
Summary
지금까지 임펄스 응답과 컨볼루션을 통해 LTI 시스템의 출력을 분석하는 기본 메커니즘을 살펴보았고, 이어서 차분 방정식을 이용해 시스템의 동작 원리를 보다 수학적으로 이해하는 방법을 알아보았다. 비교적 간단해보이는 임펄스 응답만으로도 실제로는 매우 폭넓은 시스템의 거동을 설명할 수 있다는 것에 놀라게 되었다. 한편으로, 이런 임펄스 응답과 컨볼루션에 대한 개념을 확실히 하게 된다면 LTI 시스템에 대해 더욱 깊이 있는 이해를 할 수 있을 것이라 생각된다.
Start the conversation