# 절대 안정성 지역과 조건부 안정성

수치해석에서 안정성은 근사해가 어떻게 시간에 따라(또는 반복 횟수에 따라) 거동하는지를 다루는 중요한 개념이다. 미분방정식의 해법에서 “절대 안정성 지역(absolute stability region)”과 “조건부 안정성(conditional stability)”은 특히 선형 초기값문제를 해석할 때 주요하게 등장한다. 이를 이해하기 위해 우선 선형 범위에서 안정성을 정의하는 방법과, 이를 바탕으로 각 수치적 기법의 안정성 지역을 구하는 과정을 살펴본다.

#### 선형 수치 스킴에서의 안정성 개념

선형 미분방정식이나 차분방정식으로 단순화하면 안정성의 정의를 더욱 직관적으로 이해할 수 있다. 예를 들어 선형 1계 초기값문제

$$
\frac{dy}{dt} = \lambda y,\quad y(0)=y\_0
$$

를 생각하면, 이 식의 해는

$$
y(t) = y\_0 e^{\lambda t}
$$

가 된다. 만일 수치해석 기법으로 위 문제를 풀 때, 어떤 스텝 크기 $h$와 시간 이산화 지점 $t\_n = n h$에서 구한 근사해를 $y\_n$이라고 할 때, 이 수열 $y\_n$이 실제 해의 거동과 유사하게(특히 $t$가 커짐에 따라) 안정적으로 계산되는가가 중요한 관심사가 된다.

수치 스킴이 선형이면 대체로 다음 꼴의 차분방정식을 가지게 된다.

$$
y\_{n+1} = R(\lambda h),y\_n
$$

여기서 $R(\lambda h)$는 $\lambda h$에 대한 어떤 복소 다항식 혹은 유리함수 같은 형태로 주어진다. 예를 들어 전진오일러법(Forward Euler method)을 사용하면

$$
y\_{n+1} = y\_n + h \lambda y\_n = (1 + \lambda h) y\_n
$$

이므로 $R(\lambda h) = 1 + \lambda h$가 된다. 이러한 상황에서 수치해석 기법의 안정성은 $n \to \infty$일 때 $y\_n$이 발산하지 않도록 하는 $\lambda h$값의 구역을 말하며, 이를 복소평면에서 “안정성 영역(stability region)”으로 정의한다.

복소수 $\lambda h$가 주어졌을 때 $|R(\lambda h)| < 1$이면 해당 방법으로 얻은 근사해가 $n \to \infty$로 갈 때 소멸하거나 유계내에 머무른다. 반면 $|R(\lambda h)| > 1$이면 $y\_n$이 발산할 것이고, $|R(\lambda h)| = 1$인 경계에서는 해석상 좀 더 미세한 판단이 요구된다. 바로 이렇게 $|R(z)| < 1$을 만족하는 $z$ (여기서 $z = \lambda h$)의 집합이 안정성 지역이다. 절대 안정성 지역이라 함은, 모든 $\lambda$(혹은 모든 자주 등장하는 초기값문제에서의 $\lambda$에 대해) 고정된 $h$가 아닌 임의의 $h$ 선택과 무관하게 안정성을 유지하는 경우를 말한다.

#### 절대 안정성과 조건부 안정성의 차이

절대 안정성(또는 A-안정성이라 부르기도 한다)은 간단히 말해 어떤 수치적 기법이 모든 스텝 크기 $h$와 모든 복소수 $\lambda$에 대해 만족스러운 안정성을 보여주는 경우를 말한다. 예를 들어 명시적 기법인 전진오일러법은 전혀 그렇지 못하다. 전진오일러법에서는 $|1 + \lambda h| < 1$이 되어야 하므로 $\lambda$가 음의 실수일 때라도 너무 큰 $h$에서는 이 부등식을 만족시키지 못한다. 즉 전진오일러법은 $h$가 적절히 작은 경우에만 안정적으로 작동하고, $h$가 커지면 발산할 위험이 있다. 따라서 전진오일러법은 조건부로만 안정하다고 말한다.

반면 후진오일러법(Backward Euler)은 $y\_{n+1} = y\_n + h \lambda y\_{n+1}$의 형태로부터

$$
y\_{n+1} = \frac{y\_n}{1 - \lambda h}
$$

가 되어, $R(\lambda h) = \frac{1}{1 - \lambda h}$가 된다. 복소수 $z$에 대해 $R(z) = \frac{1}{1 - z}$의 크기가 $|1 - z|>0$인 모든 $z$에서 1보다 작아지는지를 살펴보면, $\mathrm{Re}(z) < 0$인 경우 임의의 크기의 $h$에 대해서도 $|R(z)| < 1$이 성립한다. 이는 실제로 후진오일러법이 모든 음의 실수 $\lambda$에 대해 안정성을 유지할 수 있음을 의미한다. 결과적으로 후진오일러법은 A-안정(절대 안정)인 대표적인 예가 된다.

#### 복소평면에서의 안정성 지역

수치해석 기법이 제공하는 안정성 지역은 대개 복소평면에서 $z = \lambda h$의 영역으로 시각화된다. 예를 들어 전진오일러법의 경우 안정성 지역은 원판 내부로서

$$
|1 + z| < 1
$$

인 점들의 집합이다. 이를 풀면

$$
\mathrm{Re}(z) > -\frac{1}{2}
$$

인 반평면을 제외한 부분이 되므로, 이 방법은 $\lambda$가 음의 실수(실제로 미분방정식 해가 지수적으로 붕괴해야 하는 상태)라고 해도 $h$가 충분히 작아야만 수치해석이 발산하지 않는다. 즉 스텝 크기가 작으면 안정적이나, 큰 스텝 크기를 사용하면 안정성이 깨진다.

반면에 후진오일러법에서는

$$
R(z) = \frac{1}{1 - z}
$$

이므로

$$
|R(z)| = \frac{1}{|1 - z|}
$$

가 된다. 그런데 $\mathrm{Re}(z) < 0$이면 $1-z$는 실수부가 1보다 크게 되므로, 모든 음의 실수부 $z$는 $|1 - z| > 1$을 만족할 가능성이 많다. 이로부터 알 수 있듯이 음의 실수 부분평면 전체가 안정성 지역에 포함된다. 따라서 $\mathrm{Re}(\lambda) < 0$인 모든 $\lambda$에 대해, 임의의 양의 $h$에서도 후진오일러법은 수치적으로 해가 발산하지 않고 안정성을 유지한다. 그러므로 후진오일러법은 절대 안정성(또는 A-안정성)을 갖는 전형적 사례로 인용된다.

#### 다단계 방법에서의 안정성 근거

단일 단계법(single-step method)에 비해 다단계방법(multi-step method)에서는 안정성 해석이 더 복잡해진다. 다단계방법은

$$
\alpha\_0 y\_{n+k} + \alpha\_1 y\_{n+k-1} + \cdots + \alpha\_{k} y\_{n} = h \left\[\beta\_0 f(t\_{n+k}, y\_{n+k}) + \cdots + \beta\_{k} f(t\_n, y\_n)\right]
$$

꼴로 표현될 수 있다. 이를 선형 문제 $f(t,y)=\lambda y$에 대입하면,

$$
\alpha\_0 y\_{n+k} + \alpha\_1 y\_{n+k-1} + \cdots + \alpha\_{k} y\_{n} = h \lambda \left\[\beta\_0 y\_{n+k} + \cdots + \beta\_{k} y\_{n}\right]
$$

가 되므로 $y\_n$에 대한 대응 차분형 방정식으로 전개하면 특정한 다항식(특히 characteristic polynomial) 형태의 근을 이용해 $R(\lambda h)$를 정의할 수 있다. 이 방법 역시 $|R(z)|<1$을 만족하는 $z$가 안정성 지역이 된다.

이런 식으로 각 기법별로 안정성 지역이 달라지므로, 시뮬레이션하려는 실제 문제에서 $\mathrm{Re}(\lambda) < 0$인지 여부, 그리고 필요한 시간해석 범위 등을 고려하여 기법을 선택하게 된다. 절대 안정성 지역을 갖는 기법(A-안정 기법)은 $h$를 크게 잡아도 안정적으로 계산할 수 있으므로, 강하게 감쇠되는(stiff) 문제에서 매우 유리하다. 반면에 조건부 안정 기법은 효율성 면에서 우수하지만 $h$를 불필요하게 크게 선택하면 발산 문제가 발생하여 세심한 사전 분석이 필요하다.

#### 절대 안정성과 스티프 문제의 연관성

$\mathrm{Re}(\lambda\_i) \ll 0$인 고유값들이 혼재되어 있는 경직(stiff) 문제에서는, 고속 감쇠 모드가 안정적으로 계산되기 위해서는 매우 작은 $h$가 필요할 수 있다. 조건부 안정인 명시적 방법들은 이러한 경우 스텝 크기를 지나치게 많이 줄여야 하므로 계산 부담이 급격히 커질 수 있다. 이에 비해 절대 안정성을 갖는 암시적 방법(예: 후진오일러법, Crank–Nicolson 법 등)을 사용하면, $\mathrm{Re}(\lambda)$가 음의 방향으로 크게 치우쳐 있어도 $h$를 비교적 여유롭게 잡을 수 있기 때문에 계산 효율이 높아진다. 이런 이유로 대규모 산업 현장에서 스티프 미분방정식을 자주 풀어야 할 때 A-안정 혹은 L-안정 계열의 알고리즘들이 널리 쓰인다.

#### 불확실성(Uncertainty)과 민감도

현실에서 다루는 대부분의 시스템은 측정 불확실성(aleatory uncertainty)과 모델 불확실성(epistemic uncertainty)을 동시에 지니고 있다. 측정 불확실성은 본질적으로 시스템 외부에서 측정 장비 및 환경적 변동으로 인해 발생하며, 이를 통해 얻은 입력값 자체가 확률적 분포를 지닌다고 볼 수 있다. 반면 모델 불확실성은 시스템을 단순화하거나 가정된 파라메터, 혹은 해석 과정의 이상화로 인해 발생한다. 어떤 입력 범위 혹은 구조적 가정이 실제 물리 현상과 충분히 합치하지 않을 때, 이 불확실성이 결과로 전파되어 예측 오차를 야기할 수 있다.

민감도 분석은 이 두 종류의 불확실성이 출력에 어떻게 반영되는지를 확인하는 핵심적인 방법론이다. 측정 불확실성의 경우 확률적 성격을 갖기 때문에, 입력값에 대한 작은 분산(variance)이 결과 분산으로 얼마만큼 전이되는지를 전역 민감도(global sensitivity) 차원에서 해석할 수 있다. 예를 들어 여러 입력 변수가 독립적으로 분포되어 있다고 하면, 각 변수별 Sobol 지수나 FAST(Fourier Amplitude Sensitivity Test) 같은 전역 민감도 기법을 적용해, 결과적 분산에서 각 변수가 차지하는 기여도를 산출할 수 있다.

모델 불확실성 측면에서도, 가정된 물리 모델의 계수나 형식 자체가 바뀌면 민감도가 크게 변할 수 있다. 예컨대 열전달 해석 모델에서 경계조건의 이상화가 실제와 어긋나 있다면, 작은 온도 변화나 물성치의 오차에도 결과가 왜곡되기 쉽다. 문제에 따라서는 레이놀즈 수(Reynolds number)가 일정 구간에서는 모델이 잘 맞다가 임계점을 넘어가면 모델 타당성이 급격히 떨어지는 현상이 발생하기도 한다.

이러한 불확실성과 민감도의 상호관계를 정량화하기 위해, 확률론적 해석과 민감도 분석을 결합하는 방법이 흔히 쓰인다. 몬테카를로(Monte Carlo) 시뮬레이션을 통해 각 입력 변수를 분포에 따라 무작위로 샘플링하고, 그에 따른 출력 분포를 얻은 뒤, 상관관계(Correlation)나 회귀분석(Regression)을 사용해 각 변수의 민감도를 추정할 수도 있다.

#### 민감도와 위험성(Risk)

불확실성이 크고 민감도가 높은 시스템일수록 위험성이 커진다. 즉, 작은 교란이나 오차로 인해 시스템 출력이 극단적으로 변할 가능성이 존재한다는 의미다. 엔지니어링 설계나 재무·금융 분야에서도, 민감도가 높은 파라메터는 위험요소로 간주되어 별도의 관리(헤징, 보험, 여유도 증대 등)가 필요하다.

특히 중대형 프로젝트에서 시스템 신뢰도(Reliability)를 검토할 때, ‘어디에 설계 안전계수(safety factor)를 많이 줘야 하는지’에 대한 의사결정이 중요하다. 이때 민감도 분석은 가장 취약한 지점이나 파라메터를 찾아내어, 해당 요소에 대한 안전계수를 높이거나, 중복 설계를 두는 등의 대응책을 마련하도록 한다.

#### 민감도와 모델 교정(Model Calibration)

복잡한 시뮬레이션 모델을 실제 실험 데이터나 측정값에 맞추는 과정을 모델 교정(Model Calibration) 혹은 모델 업데이트(Model Updating)라고 부른다. 만일 교정해야 할 파라메터가 여럿이고, 이들 간의 상호 민감도가 뒤섞여 있으면, 교정 문제는 매우 난해해진다. 이때 민감도가 큰 파라메터와 작은 파라메터를 구분해, 우선순위 있는 교정을 진행하거나, 민감도가 낮은 파라메터는 모델 기본값으로 둔 채 민감도가 큰 파라메터만 집중 조정하는 전략이 사용된다.

다음과 같은 스키마를 가정해 볼 수 있다.

{% @mermaid/diagram content="flowchart LR
A((모델<br>초기설정)) --> B((실험/측정<br>데이터 획득))
B --> C((오차분석 &<br>민감도 평가))
C --> D((파라메터<br>재설정))
D --> E((모델<br>재평가))
E --> B" %}

주어진 실험/측정 데이터 $\mathbf{y}*{\mathrm{meas}}$에 대해 모델 출력 $\mathbf{y}*{\mathrm{model}}(\mathbf{p})$을 비교하고, 그 오차를 최소화하는 쪽으로 파라메터 $\mathbf{p}$를 조정해 나간다. 이때 민감도가 높은 파라메터부터 우선순위로 교정하면 수렴 속도나 예측 정확도를 높일 수 있다.

#### 민감도 계산 기법의 다양성

민감도는 대개 편미분, 야코비, 혹은 헤시안 등을 수치 근사로 추정하기 쉽지만, 문제 규모가 매우 커지면 직접 미분을 구하기 힘들 수 있다. 이럴 때는 자동미분(AD, Automatic Differentiation) 기법이 큰 도움이 된다. 자동미분은 코드를 통해 함수를 계산할 때, 연산 그래프를 구성하고 각 노드별로 미분 규칙을 적용하여 기계적으로 미분을 수행한다.

* 순방향 모드(forward mode) 자동미분: 입력 차원이 작고 출력 차원이 클 때 유리하다.
* 역방향 모드(reverse mode) 자동미분: 출력 차원이 작고 입력 차원이 클 때 유리하다.

딥러닝 프레임워크에서 흔히 사용되는 역전파(backpropagation)는 역방향 모드 자동미분의 대표적 예다. 이러한 기법을 이용하면, 대규모 비선형 모델이라도 야코비나 그래디언트 정보를 효율적으로 얻어 민감도 분석을 수행할 수 있다.

#### 민감도와 반응 곡면(Response Surface)

민감도 해석을 위해서는 직접적 미분을 구하지 않고, 반응 곡면(혹은 반응 곡면 모델, Response Surface Model)을 구축해 근사적으로 민감도를 해석하는 방법도 있다. 예컨대 고차원 입력 변수를 가지는 복잡한 모델일 경우, 전역적으로 충분한 샘플링점을 수집하고, 이를 통해 다항 근사나 가우시안 프로세스(서로게이트 모델)를 학습한 뒤, 이 근사 모델에서 민감도를 추정할 수 있다.

반응 곡면 모델은 다음과 같은 간소화된 형태일 수 있다.

$$
\tilde{f}(\mathbf{x}) = \alpha\_0  + \sum\_{i=1}^n \alpha\_i,x\_i  + \sum\_{i=1}^n \sum\_{j=i}^n \alpha\_{ij}, x\_i x\_j  + \dots
$$

이 다항식 근사에서 $\alpha\_i$와 $\alpha\_{ij}$ 등을 적절히 추정한 뒤, $\frac{\partial \tilde{f}}{\partial x\_i}$ 등을 해석해 민감도를 본다. 물론 실제 모델이 매우 비선형적이면 다항 근사 오차가 커질 수 있지만, 전략적으로 구간별 근사나 가우시안 프로세스, 스플라인 등을 이용해 성능을 높일 수 있다.

#### 민감도와 빅데이터/머신러닝

현대 수치해석 및 과학컴퓨팅에서는 단순 오차분석을 넘어 빅데이터와 머신러닝 기법을 결합하는 사례가 늘고 있다. 데이터 기반 모델에서도 민감도 개념은 중요하다. 예컨대 랜덤 포레스트나 그래디언트 부스팅에서, 특정 변수의 불순도 감소량(impurity decrease)을 통해 변수 중요도를 해석해 전역 민감도를 추정하기도 한다.

인공신경망을 이용해 복잡한 입력-출력 관계를 근사할 때, 입력 뉴런 각각에 대한 가중치나 기울기 크기를 파악하여 민감도가 높은 입력 특성을 검출하기도 한다. 이는 입력 차원이 매우 높고 문제 구조가 불명확할 때, 어떤 특징(feature)이 예측 결과에 핵심적인 역할을 하는지 파악하는 데 유익하다.

***

민감도 분석은 수치해석 전반과 다양한 응용 분야에서 핵심적인 역할을 한다. 어떤 문제든 입력값이나 중간 계산 오차가 결과에 미치는 영향을 제대로 알아야, 알고리즘 선택부터 모델 설계, 결과 해석, 위험관리, 강인 설계 등에서 합리적인 판단을 내릴 수 있다.
