# 로컬 vs. 글로벌 수렴 특성

#### 서론과 배경

비선형 방정식을 근사적으로 풀기 위해서는 일반적으로 특정한 반복법(iterative method)을 활용한다. 이 반복법들은 어떠한 형태로든 시작점(initial guess)을 필요로 하며, 그 시작점의 선택과 메서드의 설계 방식에 따라 수렴 특성이 달라진다. 특히 수렴 영역, 수렴 속도, 안정성 등을 체계적으로 구분할 때 흔히 사용하는 구분이 로컬 수렴(local convergence)과 글로벌 수렴(global convergence)이다.

로컬 수렴은 근방에 존재하는 초기값으로부터 시작할 때 특정 이론적인 수렴률(1차, 2차, 초등차 등)이 보장되거나, 적어도 수렴한다는 것이 보장되는 상황을 의미한다. 예를 들어, 뉴턴법(Newton's method)의 경우 원하는 해 근방에서 초기에 시작한다면 매우 빠른(일반적으로 2차) 수렴을 얻을 수 있다. 그러나 초기값이 해로부터 너무 멀면 오히려 발산하거나 다른 근으로 유도될 위험이 있다.

글로벌 수렴은 어떠한 초기값을 주더라도(혹은 특정 구간 내 어디에서 시작하더라도) 수렴이 보장된다는 것을 의미한다. 예를 들어, 단일변수 스칼라 방정식에서 이분법(bisection method)은 일단 구간 안에 해가 존재함이 보장되면 구간을 반으로 줄여 가며 항상 해를 찾는다. 이분법은 해의 존재를 보장하는 전제조건(중간값정리 적용을 위한 부호 변화 등)만 만족된다면 초기 구간을 어떻게 잡아도 최종적으로는 문제의 근사해를 찾는다. 이러한 특징 때문에 이분법은 글로벌 수렴성을 지닌 대표적인 방법으로 알려져 있으나, 그 수렴 속도는 일반적으로 느리다.

#### 뉴턴법의 로컬 수렴 성질

실수 단일변수 함수에서 뉴턴법은

$$
\begin{align} x\_{n+1} = x\_n - \frac{f(x\_n)}{f'(x\_n)} \end{align}
$$

과 같이 정의된다. 해가 근방에 존재한다면, 즉 $x\_0$가 근방에서 시작되었을 때, 뉴턴법은 2차 수렴(quadratic convergence)을 만족한다. 이때 오차의 스케일을 $e\_n = |x\_n - \alpha|$라고 할 때, 근 $\alpha$에 가까워질수록

$$
\begin{align} e\_{n+1} \approx C , e\_n^2 \end{align}
$$

형태를 띠며 $C$는 상수이다. 이러한 2차 수렴율은 매우 빠른 정밀도 향상을 의미한다.

하지만 $f'(x\_n)$이 0에 가깝거나, 초기값 $x\_0$가 해 $\alpha$와 충분히 가깝지 않을 때는 수렴을 보장하기 어렵다. 특히 뉴턴법은 다음과 같은 문제가 자주 발생한다. 초기값이 적절하지 않을 경우, 극값 부근으로 튀거나 분모가 0에 가까워지는 구간을 만나면 오차가 발산한다. 여러 근이 존재하는 상황에서 어느 근으로 갈지 예측하기 어려우며, 민감하게 분기되기도 한다.

이처럼 뉴턴법은 적절한 초기값 선정(혹은 사전에 정의된 영역 정보)이 매우 중요하며, 그래서 통상적으로 뉴턴법은 “로컬 수렴” 특성이 강한 방법으로 분류된다.

#### 이분법의 글로벌 수렴 성질

반면, 이분법(bisection)은 해 $\alpha$가 존재하는 구간을 $\[a, b]$로 먼저 설정해두고 시작한다. $f(a)$와 $f(b)$의 부호가 다르면 중간값 정리에 의해 그 사이에 적어도 하나의 해가 존재하게 된다. 이때

$$
\begin{align} m = \frac{a + b}{2} \end{align}
$$

를 계산하고 $f(m)$의 부호에 따라 $\[a, m]$ 또는 $\[m, b]$로 구간을 반으로 줄여 나가는 과정을 반복함으로써 궁극적으로 해를 포함하는 구간 길이가 기하급수적으로 줄어든다.

이분법은 초기에 $\[a, b]$만 적절히 잡으면 반복 과정을 통해 항상 해가 존재하는 구간을 보존하면서 최종적으로 해를 찾는다. 따라서 글로벌 수렴을 달성할 수 있다고 말한다. 다만 구간을 반으로 나누는 규칙에 의존하기 때문에 수렴 속도는 일반적으로 선형(linear convergence)에 그친다. 대체로 수렴 속도가 느리지만, 초기 구간만 정확히 설정하면 어떠한 중간 단계에서 발산이 일어나지 않는다.

#### 로컬과 글로벌 수렴의 절충

로컬 수렴성과 글로벌 수렴성을 동시에 만족하려는 시도가 많다. 예를 들어, 뉴턴법의 빠른 로컬 수렴 특성과 이분법의 안정적인 글로벌 수렴 특성을 융합하여, 특정 구간 안에서 먼저 안전하게 해의 대략적인 위치를 좁힌 후, 어느 정도 근방에 도달하면 뉴턴법으로 전환하여 빠르게 수렴시키는 하이브리드 방법들이 존재한다.

많은 고차방정식 풀이나 비선형 시스템 해석에서도 비슷한 전략이 적용된다. 예를 들어, 다차원 비선형 시스템에서 뉴턴법을 그대로 확장한

$$
\begin{align} \mathbf{x}\_{n+1}  = \mathbf{x}\_n  - \bigl(D\mathbf{f}(\mathbf{x}\_n)\bigr)^{-1}\mathbf{f}(\mathbf{x}\_n) \end{align}
$$

과 같은 반복은 로컬 수렴이 매우 뛰어나지만 글로벌 수렴이 보장되지 않는다. 따라서 trust region 방법, 선형 탐색(line search)과 같은 기법을 통해 뉴턴법을 보강하는 방식이 널리 연구된다.

#### 고차원 문제로의 확장

비선형 방정식의 해를 찾는 문제는 단일변수 경우에서 다변수 혹은 고차원 문제로 확장될 수 있다. 다변수 상황에서는 해가 실수값이 아니라 $\mathbf{x}\in\mathbb{R}^n$의 벡터가 되고, 식 역시 실수값 함수를 여러 개 모은 벡터 함수 $\mathbf{f}(\mathbf{x})=\mathbf{0}$ 꼴을 다룬다. 이때 반복법의 로컬 수렴과 글로벌 수렴 성질을 논할 때 주요하게 등장하는 기법이 선형 탐색(line search)과 트러스트 리전(trust region) 방법이다.

단일변수 상황에서 뉴턴법이 “로컬” 수렴 방식임을 확인했듯, 다변수 상황에서도 “순수 뉴턴법”

$$
\begin{align} \mathbf{x}\_{n+1} = \mathbf{x}\_n - \bigl(D\mathbf{f}(\mathbf{x}\_n)\bigr)^{-1}\mathbf{f}(\mathbf{x}\_n) \end{align}
$$

역시 근방(initial guess가 실제 해 근처)에 있으면 높은 차수(일반적으로 2차)의 국소적 수렴율이 보장되지만, 해가 존재하는 범위가 광범위하거나 초기값이 해로부터 멀리 떨어진 경우에는 발산하거나 엉뚱한 지점으로 가는 등 문제가 생길 확률이 높아진다.

#### 선형 탐색(line search) 방식의 글로벌화

뉴턴법을 글로벌하게 만들기 위해 적용되는 가장 단순하면서도 널리 쓰이는 아이디어가 선형 탐색이다. 뉴턴법에서 제시된 방향

$$
\begin{align} \mathbf{p}\_n  = - \bigl(D\mathbf{f}(\mathbf{x}\_n)\bigr)^{-1}\mathbf{f}(\mathbf{x}\_n) \end{align}
$$

은 국소적으로 매우 훌륭한 선택지이지만, 이를 그대로 큰 스텝 크기로 적용하면 발산할 수도 있다. 따라서 스텝 크기를 적절히 조정하면서 함수값이 실제로 감소하는 방향으로만 이동하게끔 제어하는데, 이러한 과정을 선형 탐색이라 한다.

기본 골자는 스텝 $\alpha$를 정하고

$$
\begin{align} \mathbf{x}\_{n+1} = \mathbf{x}\_n + \alpha \mathbf{p}\_n \end{align}
$$

의 형태로 갱신하되, $\alpha$가 너무 크면 함수값이 증가하거나 발산해 버릴 위험이 있으므로, Wolfe 조건이나 Goldstein 조건 등의 적절한 수치적 기준을 만족할 때까지 $\alpha$를 줄여 나간다. 이렇게 하면 초기값이 해로부터 멀리 떨어진 상태에서도 함수값이 특정 수준 이하로 서서히 줄어들도록 강제함으로써 발산 없이 전역적으로 수렴 영역을 넓힐 수 있다. 다만 $\alpha$를 찾는 과정이 추가되므로 연산 부담이 증가하고, 완전히 전역 수렴성을 보장하기 위해선 여전히 추가적인 가정(예: 함수가 충분히 매끄럽고, 유한 번의 라인서치로 $\alpha$를 탐색할 수 있음 등)이 필요하다.

#### 트러스트 리전(trust region) 방식의 글로벌화

선형 탐색과 달리, 트러스트 리전 접근법은 먼저 모델 함수를 정의한 뒤 모델이 “신뢰할 만한” 범위(트러스트 리전) 안에서만 최적화 스텝을 구하는 방식으로 글로벌 수렴을 도모한다. 특정 지점 $\mathbf{x}\_n$에서

$$
\begin{align} m\_n(\mathbf{p})  = f(\mathbf{x}\_n) + \nabla f(\mathbf{x}\_n)^\top \mathbf{p}  + \tfrac12 \mathbf{p}^\top B\_n \mathbf{p} \end{align}
$$

와 같은 근사 모델(일반적으로 $\nabla f(\mathbf{x}\_n)$, $B\_n\approx D^2f(\mathbf{x}\_n)$ 등의 정보를 사용)을 설정하고, $|\mathbf{p}|\le\Delta\_n$라는 구속 조건(트러스트 리전 크기 제한) 안에서 $m\_n(\mathbf{p})$를 최소화하는 해 $\mathbf{p}\_n$을 구한다. 그 뒤 실제 함수 $f(\mathbf{x}\_n+\mathbf{p}\_n)$ 값의 개선 정도와 모델 $m\_n(\mathbf{p}\_n)$의 기대 개선 정도를 비교하여, 모델이 잘 맞는다면(차이가 적다면) 트러스트 리전을 키워 다음 반복에서 좀 더 넓은 이동을 허용하고, 모델이 맞지 않는다면(차이가 크면) 리전을 줄여서 더욱 보수적으로 탐색한다.

트러스트 리전 접근은 선형 탐색과 비슷한 목적(글로벌 수렴성 확보)을 지니며, 특히 Hessian 정보를 효율적으로 이용하면서 발산을 방지한다. 로컬 수렴 측면에서 뉴턴법의 고차수 수렴을 그대로 유지할 수 있고, 글로벌 수렴성을 위한 기작(트러스트 리전 확장/축소)이 내장되어 있으므로 안정적으로 더 큰 영역을 탐색할 수 있다.

#### 준-뉴턴(quasi-Newton) 기법

실제 계산에서 Hessian 행렬 $D^2\mathbf{f}(\mathbf{x}\_n)$ 혹은 야코비 행렬 $D\mathbf{f}(\mathbf{x}\_n)$을 직접 구하고(또는 역행렬을 구하는) 비용이 지나치게 큰 경우가 많다. 이러한 상황에서 등장하는 접근이 준-뉴턴(quasi-Newton) 혹은 세컨트(secant) 방식이다. 준-뉴턴 기법은 정확한 Hessian이나 야코비가 아닌 근사 행렬을 업데이트 규칙으로 구해나가면서, 뉴턴법에 준하는 수렴률(혹은 그에 가까운)을 달성하려고 한다. 예를 들어, Broyden’s method, BFGS(Broyden-Fletcher-Goldfarb-Shanno) 등이 널리 알려져 있다.

이러한 준-뉴턴 계열 방법도 순수 뉴턴법과 마찬가지로 대개 로컬 수렴 특성이 강하다. 따라서 선형 탐색이나 트러스트 리전 방법과 조합함으로써 글로벌 수렴성을 개선한다. 즉, 초기값이 해로부터 멀어도 발산하지 않고 서서히 해 근방으로 이동한 뒤, 근방에 도달했을 때는 근사된 Hessian 정보를 활용해 로컬 고차 수렴률을 누리는 식이다.

#### 로컬 vs. 글로벌 분석 요약

로컬 수렴과 글로벌 수렴 사이에서 발생하는 문제는 결국 해 근처에서의 수렴 성능(수렴 차수, 수렴 속도)을 극대화하면서도, 어떤 초기값 혹은 넓은 영역으로부터 시작하더라도 발산이 일어나지 않도록 방지하는 방안에 관한 것이다. 신뢰 구간(트러스트 리전)이나 선형 탐색(라인서치)과 같은 글로벌화 기법은 일반적으로 계산량을 증가시키고, 순수 뉴턴법 대비 한 번의 스텝이 만드는 개선폭을 제한한다. 하지만 그 대가로, 전역적 안정성을 얻고 발산을 회피할 수 있다.

아래 다이어그램은 선형 탐색(Line Search)과 트러스트 리전(Trust Region)의 전형적인 반복 구조 개념을 단순화하여 보여 준다.

{% @mermaid/diagram content="flowchart TB
A(초기점 x₀ 설정) --> B{종료조건<br>만족 여부}
B -- 예 --> C(알고리즘 종료)
B -- 아니오 --> D\[Newton/Quasi-Newton<br>또는 모델에서 direction pₙ 계산]
D --> E(("Line Search<br>또는<br>Trust Region"))
E --> F("스텝 크기(또는<br>리전 크기) 조정")
F --> G(xₙ 갱신)
G --> B" %}

#### 뉴턴-칸토로비치(The Newton-Kantorovich) 정리

비선형 방정식(또는 연립방정식)을 다루면서, 단순히 반복식의 경험적 수렴 특성만 살피는 데서 더 나아가, 이론적으로 언제, 어떻게 수렴이 보장되는지를 설명해 주는 대표적인 결과가 뉴턴-칸토로비치 정리다. 이 정리는 고차원(벡터값) 함수의 경우에도 적용할 수 있으며, 뉴턴법의 수렴 반경을 보장해 줄 수 있는 유용한 도구로 꼽힌다.

구체적으로, $\mathbf{f}:\mathbb{R}^n \to \mathbb{R}^n$가 충분히 매끄럽다고 가정하고, 어떤 초기 추정점 $\mathbf{x}\_0$에서 야코비 행렬 $D\mathbf{f}(\mathbf{x}\_0)$이 역행렬을 갖는다고 하자. 이때, 해석적 조건(예: Lipschitz 조건)에 의해 야코비의 변화 폭이 제한되어 있으면, 뉴턴-칸토로비치 정리는

1. 초기점이 일정 기준을 만족하고,
2. 야코비 행렬의 역행렬이 존재하며 리프시츠 상수 등이 특정 범위 안에 있는 경우에,

뉴턴법 반복

$$
\begin{align} \mathbf{x}\_{n+1}  = \mathbf{x}\_n  - \bigl(D\mathbf{f}(\mathbf{x}\_n)\bigr)^{-1}\mathbf{f}(\mathbf{x}\_n) \end{align}
$$

가 결국 해 $\boldsymbol{\alpha}$로 수렴함을 보장한다. 또한 특정 영역 바깥으로 벗어나지 않는다면(즉, 발산하지 않는다면) 뉴턴법의 표준적인 로컬 수렴률(보통 2차)을 만족할 수도 있음을 함께 예측한다.

여기서 “로컬 수렴성”은 근방에서의 뉴턴법 행태에 대한 가장 중요한 분석 주제다. “글로벌 수렴”이라는 맥락으로 보면, 뉴턴-칸토로비치 정리는 선형 탐색이나 트러스트 리전 기법 같은 보강 없이도 순수 뉴턴법이 어떤 조건하에서 전역적(혹은 준-전역적)으로 발산 없이 수렴함을 알려주는 중요한 이론적 결과이기도 하다. 다만 이 정리가 제시하는 조건은 때때로 매우 보수적이라 실제 적용 시에는 조건을 만족시키기 어려운 경우가 많다.

#### Lipschitz 연속성 가정

뉴턴-칸토로비치 정리나, 보다 일반적인 반복법 분석에서 자주 등장하는 가정 중 하나가 Lipschitz 연속성이다. 예를 들어, 야코비 행렬 $D\mathbf{f}(\mathbf{x})$가 어떤 공역에서 Lipschitz 연속이라고 한다면,

$$
\begin{align} |D\mathbf{f}(\mathbf{x}) - D\mathbf{f}(\mathbf{y})| \le L |\mathbf{x} - \mathbf{y}| \end{align}
$$

를 만족하는 상수 $L$이 존재한다. 이 가정은 “야코비가 갑작스럽게 크게 달라지지 않는다”는 성질을 의미하며, 반복 과정에서 함수 또는 그 미분(야코비)이 지나치게 급변하여 발산으로 이어지는 위험이 완화됨을 시사한다.

따라서 뉴턴법이나 준-뉴턴법을 분석할 때, 문제 설정 구간에서의 Lipschitz 상수 $L$가 작을수록, 혹은 해 근방에서의 미분이 비교적 안정적일수록, 뉴턴형 방법이 로컬 수렴을 넘어 좀 더 넓은 영역에서도 잘 동작할 가능성이 크다. 이러한 정량적 분석이 뉴턴-칸토로비치 정리 안에 녹아 있어서, $L$이 충분히 작으면 뉴턴법이 한 번의 반복만으로도 큰 폭의 오차 감소를 이끌 수 있고, 발산 없이 안정적으로 근방에 진입하여 이후 2차 수렴을 보장하게 된다.

#### 멀티-루트(multiple roots)의 경우

단일변수 함수를 예로 들면, 해 $\alpha$가 단순 근이 아니라 중근(multiple root, 예: $f'(\alpha)=0$)일 때, 뉴턴법이 표준적인 2차 수렴을 보이지 않고 1차 수렴이나 더 낮은 차수로 떨어지는 경우가 발생한다. 이 현상은 다변수나 고차원에서도 마찬가지다. 해 근처에서 야코비 행렬의 행렬식이 0에 근접하는 구조가 나타난다면, 표준 뉴턴 공식이 곧바로 적용되기 어렵거나, 해 근방에 있을지라도 수렴 차수나 경로가 예측과 달라진다.

이를 방지하거나 적절히 다루기 위해서는 중근에 특화된 변형 뉴턴법(예: 해의 차수를 보정하기 위한 계수 도입, $f'(x)$가 0에 가까우면 보조 항을 추가하는 기법 등)을 사용하거나, 문제 설정을 바꾸어(예: 중근에 대한 사전 지식이 있다면 모수 변환을 통해) 일반적인 뉴턴 접근이 적용될 수 있는 형태로 재정의한다.

#### 함수가 여러 해(다중 근)를 갖는 경우

해가 여러 개 존재하는 경우, 로컬 수렴성을 갖는 뉴턴법(또는 준-뉴턴법)을 적용하면 어떤 초기값을 택하느냐에 따라 최종적으로 찾게 되는 해(즉, 서로 다른 근)도 달라질 수 있다. 이것이 비선형 방정식에서의 주요 이슈 중 하나다.

때로는 $f(\mathbf{x})=0$가 여러 해를 가질 수 있음을 알면서도, 특정 조건을 만족하는 유일한 해가 있을 것이라고 추정하거나, 특정 구간(혹은 구역) 안에서만 수렴을 논하는 식으로 문제를 단순화하기도 한다. 그러나 실제로 해가 여러 개 있을 수 있는 복잡한 상황에서는, 전역적 탐색 기법이나 전역 최적화 기법을 병행하거나, 물리적/문제적 해석을 통해 “관심 있는 해”를 특정한 뒤 그 해 근방에서만 수렴 여부를 확인하는 전략을 쓴다.

특히 다항식(폴리노미얼) 방정식 같은 경우에는 근이 여러 개 존재하는 것이 일반적이다. 이를 해결하는 수치적 루틴을 설계할 때, 단일 루틴으로 모든 근을 찾기는 쉽지 않다. 그래서 특정 근 근방을 탐색하는 로컬 방법을 여러 번 적용하거나, 폴리노미얼 분할(decomposition) 같은 알고리즘적 테크닉을 사용하여 여러 근들을 효율적으로 추적하기도 한다.

#### 로컬 vs 글로벌 관점에서의 선택 기준

비선형 방정식 근사해를 찾을 때, 로컬 vs. 글로벌 수렴성을 따져 가며 적절한 방법(또는 하이브리드 방법)을 고르는 것은 실용적으로 매우 중요하다. 해를 찾는 작업이 단발성이라면, 로컬 방법(뉴턴법류)을 쓰되 초기값 선정에 정성을 들여 빠른 수렴을 노릴 수 있고, 반복적으로 같은 계열의 문제를 다양한 초깃값에서 풀어야 하는 상황이라면, 상대적으로 수렴이 안정적인 글로벌 방법을 먼저 사용하여 대략적인 구간이나 근방을 찾아낸 후 뉴턴법으로 전환하는 흐름이 효율적일 수 있다.

더 나아가, 실제 해석 소프트웨어(예: 유한요소 기반 해석, 전산 유체역학, 최적화 솔버 등)는 내부적으로 신뢰 구간이나 선형 탐색을 적용해 글로벌 수렴성을 높이도록 설계된 뉴턴형 알고리즘을 채택하는 경우가 많다. 이를 통해 사용자 편의(굳이 세심한 초기값을 잡지 않아도 웬만큼 잘 수렴)를 높이고, 근방에 진입했을 때는 로컬 급속 수렴(고차 수렴)을 얻는 식이다.

#### 오차 해석과 반복 종료 기준

로컬 수렴 혹은 글로벌 수렴 여부를 분석할 때, 실제로 반복을 멈추는 순간(종료 기준)에 대한 고려도 매우 중요하다. 일반적으로 반복법은 적절한 종료 조건을 설정해야만 무한 반복을 막고, 원하는 정밀도를 확보한다. 종료 조건에는 크게 잔차(residual) 기반과 해 자체의 변화량 기반의 두 가지가 자주 쓰인다.

잔차 기반으로는

$$
\begin{align} |\mathbf{f}(\mathbf{x}\_n)|  \le \varepsilon ??\end{align}
$$

와 같은 방식이 사용된다. 함수 $\mathbf{f}$ 자체가 0에 근접했는지를 측정하는 것이므로, 실제로 문제에서 요구되는 “해의 적합성”과 가장 직접적으로 관련되어 있다. 다만 경우에 따라 $\mathbf{f}$가 매우 작은 값으로 수렴해도 야코비가 퇴화된 형태면(예: 중근) 실제 해의 위치가 만족스럽지 않을 수도 있다.

반면 해 자체의 변화량

$$
\begin{align} |\mathbf{x}\_{n+1} - \mathbf{x}\_n| \le \delta \end{align}
$$

을 기준으로 삼으면, 해가 더 이상 크게 움직이지 않는다는 것을 의미한다. 그러나 이것이 항상 $\mathbf{f}(\mathbf{x}\_n)=0$에 가까워졌음을 의미하는 것은 아니다. 예를 들어, 발산이나 불안정한 정체(stagnation) 현상으로 인해 변화량이 작아 보이지만, 실제로는 해와 무관한 지점에서 묶일 수도 있다.

두 기준을 함께 활용하거나, 문제 상황에 맞추어 잔차와 해 변화량 모두를 체크하는 것이 안전하다. 특히 로컬 수렴이 매우 빠른 뉴턴법 계열에선, 어떤 시점에 잔차 기준이 충분히 작아졌다면 해가 급속히 개선되므로 곧바로 종료해도 된다. 하지만 글로벌 수렴성 측면에서, 아직 해에 도달하지 못했는데도 단순 변화량 기준만으로 조기에 멈추는 상황은 피해야 한다.

#### 시행착오적 접근과 사전 지식 활용

이론적 분석만으로 초기값이나 구간을 완벽히 정할 수 없는 경우도 많다. 실제로 비선형 문제를 풀 때는 사전 지식(물리적 배경, 그래프 형태, 다른 단순 모델 결과 등)을 활용하여 “이 정도 범위에 해가 있으리라”는 감각적 추정을 하거나, 여러 후보점을 두고 각각에 대해 반복법을 수행해 본 뒤 가장 빠르게 혹은 안정적으로 수렴하는 방향을 고르는 시행착오를 거치기도 한다.

글로벌 방법(이분법, 선형 탐색/트러스트 리전 뉴턴 등)을 먼저 써서 대략적인 근방으로 이동한 뒤, 오차가 어느 정도 줄어들면 로컬 방법(순수 뉴턴법)으로 전환하여 고차 수렴을 누리는 전략도 실무적으로 많이 사용된다. 이를 하이브리드(hybrid) 기법이라고 부른다.

#### 간단한 예제(파이썬)

실수 단일변수 함수의 근을 찾는 간단 예제를 통해, 이분법(글로벌 수렴)과 뉴턴법(로컬 수렴)의 차이를 확인할 수 있다. 아래는 파이썬(Python)으로 작성한 예시다.

```python
import numpy as np

def f(x):
    return x**3 - 2*x - 5

def df(x):
    return 3*x**2 - 2

def bisection(a, b, tol=1e-8, max_iter=1000):
    fa = f(a)
    fb = f(b)
    if fa * fb > 0:
        raise ValueError("구간 [a, b] 안에 근이 존재하는지 확인 필요")
    for _ in range(max_iter):
        m = 0.5*(a + b)
        fm = f(m)
        if np.abs(fm) < tol:
            return m
        if fa * fm < 0:
            b = m
            fb = fm
        else:
            a = m
            fa = fm
    return 0.5*(a + b)

def newton(x0, tol=1e-8, max_iter=1000):
    x = x0
    for _ in range(max_iter):
        fx = f(x)
        if np.abs(fx) < tol:
            return x
        dfx = df(x)
        if np.abs(dfx) < 1e-14:
            raise ValueError("도함수가 0에 매우 가깝습니다. 수렴 불가")
        x = x - fx/dfx
    return x

# 예시 실행
root_bisection = bisection(1.0, 3.0)
root_newton_good_init = newton(2.0)
root_newton_bad_init = newton(-10.0)  # 제대로 수렴 못할 가능성

print("이분법 근사해:", root_bisection)
print("뉴턴법 근사해(좋은 초기값):", root_newton_good_init)
print("뉴턴법 근사해(나쁜 초기값):", root_newton_bad_init)
```

이분법은 $\[1,3]$ 구간 안에 해가 있음을 전제로 하고 시작하므로(실제로 $f(1)$와 $f(3)$의 부호가 다르다), 비교적 느리긴 해도 안정적으로 수렴한다. 뉴턴법은 초기값 $x\_0 = 2.0$ 근방이라면 매우 빠르게 해를 찾아낸다. 그러나 $x\_0 = -10.0$처럼 해와 멀리 떨어진 지점에서 시작하면 발산하거나 엉뚱한 지점으로 이동할 수 있다.

#### 다중 근 및 감쇠 뉴턴(damped Newton)

앞서 말했듯, 중근(multiple root) 상황에서는 표준 뉴턴법의 수렴 차수가 낮아질 수 있다. 이를 방지하려면 함수가 중근 구조를 지니는지 먼저 확인하고, 필요한 경우 변형 뉴턴법을 적용한다. 예컨대 감쇠 뉴턴(damped Newton)은

$$
\begin{align} x\_{n+1}  = x\_n - \alpha\_n \frac{f(x\_n)}{f'(x\_n)} \end{align}
$$

형태이며, $\alpha\_n\in(0,1]$을 매 반복 단계에서 적절히 선택해 줄 수 있다. 선형 탐색의 간단 버전으로 볼 수도 있고, 선형 탐색 방식이 더 일반화된 형태라고도 말할 수 있다.

감쇠 계수 $\alpha\_n$이 너무 작으면 수렴 속도가 떨어질 수 있지만, 중근 근방이나 도함수가 0 근처에서의 급격한 발산 또는 진동을 억제하는 효과가 있다. 실제로는 $\alpha\_n$을 고정값(예: 0.5)으로 쓰기도 하고, 더욱 정교한 선형 탐색 기법을 통해 $\alpha\_n$을 동적으로 조정하기도 한다.

#### 대규모(고차원) 문제와 Inexact Newton 방법

고차원 비선형 방정식을 풀 때, 뉴턴법의 각 반복 단계에서 야코비 행렬(또는 헤시안 행렬)에 해당하는 거대한 시스템을 풀어야 한다. 예컨대 $\mathbf{f}:\mathbb{R}^n\to\mathbb{R}^n$에 대해 뉴턴법을 적용하려면 다음 선형 시스템

$$
\begin{align} D\mathbf{f}(\mathbf{x}\_n),\mathbf{p}\_n = -\mathbf{f}(\mathbf{x}\_n) \end{align}
$$

를 풀고 $\mathbf{x}\_{n+1} = \mathbf{x}\_n + \mathbf{p}\_n$ 형태로 갱신한다. 하지만 $n$이 매우 클 때는 이 선형 시스템을 직접(또는 완전히) 푸는 데 드는 비용이 상당히 커진다.

이를 개선하기 위해 고안된 개념이 Inexact Newton 방법이다. 말 그대로 선형 시스템을 “정확히” 풀지 않고, 적당한 오차 한도 안에서 근사 해를 구하여 $\mathbf{p}\_n$을 계산한다. 예를 들어, 전치나 역행렬을 구하지 않고, Krylov 공간 기법(GMRES, CG 등) 같은 반복형 선형 솔버로 몇 번만 반복해 얻은 해를 사용한다. 이때

$$
\begin{align} \mathbf{r}\_n  = D\mathbf{f}(\mathbf{x}\_n),\mathbf{p}\_n + \mathbf{f}(\mathbf{x}\_n) \end{align}
$$

가 충분히 작아지도록, 즉 $|\mathbf{r}\_n|\le \eta\_n|\mathbf{f}(\mathbf{x}\_n)|$ 같은 조건을 만족하게끔 제어한다. 여기서 $\eta\_n$은 반복 단계 $n$마다 정해지는 허용 오차로, 이를 $0$에 가까이 두면 결국 순수 뉴턴법과 유사한 행태(로컬 2차 수렴)를 기대할 수 있다. 그러나 초기에 $\eta\_n$을 크게 두면, 선형 시스템을 적게 풀어도 되므로 계산량을 줄일 수 있다.

이러한 Inexact Newton 방법에 대해서도 로컬 vs. 글로벌 수렴 문제가 동일하게 나타난다. 국소적으로는 $\eta\_n$을 적절히 줄이면 순수 뉴턴법과 같은 수렴률을 보장할 수 있지만, 초기값이 해로부터 멀리 있을 때나 야코비가 극단적으로 변하는 구간에선 마찬가지로 발산 가능성이 생긴다. 따라서 선형 탐색(line search), 트러스트 리전(trust region) 등의 글로벌화 기법과 결합하여, “고차원에서 계산 효율이 좋은 (준)뉴턴 + Inexact 해법”이라는 하이브리드 구조가 널리 사용된다.

#### 조건수(condition number)와 수렴

반복법으로 해를 구할 때, 특히 고차원 문제에서 중요한 이슈가 행렬의 조건수(condition number)다. 야코비 행렬 $D\mathbf{f}(\mathbf{x}\_n)$이 잘 정의되어 있고 역행렬이 존재하더라도, 그 행렬이 매우 ill-conditioned(조건수가 매우 큼) 상태라면, 수렴 과정에서 수치적 불안정이 나타난다. 다음과 같은 부작용이 생길 수 있다.

야코비 행렬을 풀거나 근사할 때, 미세한 오차가 증폭되어 $\mathbf{p}\_n$이 부정확하게 추정된다. 정밀도 손실(loss of significance) 때문에, 실제로는 해 근방에 와 있음에도 불구하고 잔차 계산이 변칙적으로 튀거나 수렴 판정을 내리지 못한다.

이 문제를 보완하기 위해, 조건수가 높은 계(system)에 대해서는 미리 스케일링(scaling)하거나 적절한 프리컨디셔너(preconditioner)를 적용하여 수치적 안정성을 높인 뒤 뉴턴법을 적용하기도 한다. Inexact Newton 해법에서 Krylov 반복을 사용할 때도, 프리컨디셔너가 붙으면 반복 수가 줄어들고 전반적 계산 효율을 높일 수 있다.

#### 혼합(하이브리드) 전략과 글로벌 수렴 보장

현대의 대규모 수치 해석 솔버들은 대부분 하이브리드 전략을 채택한다. 예를 들어, 초기 구간 혹은 추정치를 얻기 위한 간단한 전역 탐색 방법(또는 문제의 물리적 특성을 이용한 근방 설정)을 먼저 수행한다. 그 후에, 해에 어느 정도 가까워졌다고 판단되면(잔차가 특정 문턱값 이하 또는 $|\mathbf{x}\_{n+1}-\mathbf{x}\_n|$이 충분히 작으면) 뉴턴형 방법으로 전환하여 빠른 로컬 수렴을 노린다. 이때 순수 뉴턴법을 쓰면 발산 위험이 있으므로, 선형 탐색이나 트러스트 리전을 덧붙여 글로벌 수렴성을 확보한다.

Inexact Newton을 사용할 경우에도 마찬가지로, 초기에 허용되는 오차(예: $\eta\_n$)를 크게 설정하여 빠른 근사로 대략적인 해 방향을 잡고, 해 근방에 도달하면 $\eta\_n$을 줄여 정확한 스텝을 구하도록 제어한다. 동시에 선형 탐색이나 트러스트 리전 접근을 결합해, 불안정하게 바깥으로 튀지 않도록 조절한다. 이러한 방식을 종합적으로 구현한 것이 실제 상용 수치 해석 소프트웨어에서 흔히 볼 수 있는 알고리즘적 뼈대다.

#### 확장된 문제 상황: 제약조건이 있는 경우

지금까지는 주로 비제약 비선형 방정식 혹은 최적화 문제를 다루며 로컬 vs 글로벌 수렴을 논했다. 만약 제약조건이 있는 문제(예: $\mathbf{g}(\mathbf{x})=0$나 $\mathbf{h}(\mathbf{x})\ge0$ 같은 부가 조건)가 추가되면, 뉴턴법 자체를 부가 조건을 만족하도록 수정해야 한다. 예를 들어, 제약이 있는 최적화 문제의 KKT(Karush-Kuhn-Tucker) 시스템을 풀 때, 순수 뉴턴법으로 접근하되 라그랑주 승수(dual variables)를 함께 고려해야 한다.

이 경우에도 같은 맥락으로, 초기 추정값이 KKT 해와 멀리 떨어져 있으면 발산하거나 허용 불가능 영역에서 헤맬 수 있다. 따라서 바이어블(viable) 영역 내에서 일단 해를 찾도록 설계된 글로벌화 기법이나, 페널티/장벽(barrier) 방법을 활용한 점진적 접근이 요구된다. 그리고 제약이 활성화되는 근방에 이르면, 로컬 뉴턴 반복으로 고차 수렴율을 다시 누린다.

#### 실무 사례와 오버뷰

실제로 FEM(유한요소법)으로 유체역학 혹은 구조해석을 할 때, 비선형 재료모델이나 유동방정식을 풀기 위해 뉴턴 반복(또는 준-뉴턴)을 적용하는 예가 많다. 이때 해가 정상상태(steady state)가 되는 지점, 혹은 한 스텝의 (준)정적 해를 찾아내는 과정에서 초기에 발산이 흔히 발생한다. 재료모델이 비선형이거나, 경계 조건이 강하게 작용하는 등으로 인해 뉴턴법이 민감해지기 때문이다. 이를 억제하기 위해 하위 레벨에서 Inexact Newton + 선형 탐색/트러스트 리전 조합을 사용하거나, 상위 레벨에서는 하중 혹은 시간 증분을 잘게 쪼개어 점진적으로 해를 추적한다.

이렇게 로컬 vs 글로벌 수렴 이슈는 단순히 “어느 한 번의 방정식 해석”에 그치지 않고, 실제 산업 및 연구 현장에서 매우 자주 마주치는 핵심 개념으로 자리 잡는다. 초기값이나 조건을 어떻게 설계하느냐, 알고리즘의 반복 스킴(감쇠, 선형 탐색 등)을 어떻게 운영하느냐에 따라 수렴 안정성이 완전히 달라지기 때문이다.

#### 복소수 영역에서의 뉴턴법과 프랙탈 현상

지금까지 주로 실수 해석 관점에서 로컬 vs. 글로벌 수렴을 논했지만, 복소수 영역에서 다항식 혹은 일반적 복소함수에 뉴턴법을 적용하면 매력적인 현상이 나타난다. 복소평면에서 뉴턴 반복

$$
\begin{align} z\_{n+1}  = z\_n  - \frac{f(z\_n)}{f'(z\_n)} \end{align}
$$

의 초기값 $z\_0$에 따라 수렴하는 해(근)가 달라지는데, 이 분포를 시각화하면 소위 “뉴턴 프랙탈(Newton fractal)”이 만들어진다. 이는 복소평면을 여러 색상으로 칠해, 어떤 초기값에서 시작해 반복을 수행했을 때 어느 근으로 수렴하는지를 나타내는 방식이다.

복소수 다항식 $f(z)$가 여러 근을 가질 경우, 각각의 근 주변에 비선형 경계영역이 형성되어, 초기값이 조금만 달라져도 다른 근으로 수렴하게 된다. 때론 어떤 초기값은 특정 근에 수렴하지 않고 무한대 방향으로 발산하기도 한다. 이러한 현상을 시각적으로 표현하면, 근 근방을 중심으로 다채로운 색상 띠가 생기며, 매우 복잡하고 정교한 프랙탈 기하가 드러난다. 이는 로컬 수렴(근 근방)에 대한 뉴턴법의 빠른 특성과, 전역적으로는 매우 민감한 초기값 의존도가 결합된 결과로 볼 수 있다.

#### 동역학적 관점에서의 안정점과 불안정점

복소 뉴턴법(혹은 실수 뉴턴법도 확장 가능)을 반복동역학(iterated dynamics)의 관점으로 바라보면, 근 $\alpha$는 고정점(fixed point)에 해당한다. 뉴턴 반복을 함수 $\Phi(z)=z - \frac{f(z)}{f'(z)}$로 정의할 때, $\Phi(\alpha)=\alpha$가 성립한다. 고정점이 안정적이려면, 국소 선형화(야코비 또는 복소 미분)에서 유도되는 스펙트럼 반경(spectral radius)이 1보다 작아야 한다. 뉴턴법은 일반적으로 해 근방에서는 안정적(2차 수렴)인 고정점이 되지만, 중근이나 야코비(미분)가 0에 가까운 곳에서는 불안정(발산 혹은 다른 특이 현상)으로 전환될 수 있다.

복소 평면에서는 고정점의 안정영역(배신영역, basin of attraction)이 서로 다른 근(고정점)들로부터 분할된다. 이 경계선이 매우 복잡한 프랙탈 구조를 띠는 이유는 고정점 주변에서 발생하는 반복동역학의 민감도, 그리고 복소 미분 작용이 갖는 회전·수축/팽창 효과가 결합되기 때문이다.

#### 호모토피(continuation) 방법과 글로벌 수렴

복소나 실수나, 해가 여러 개 존재하거나, 특정 파라미터에 따라 방정식이 연속적으로 변화하는 상황에서는 호모토피(continuation) 기법이 쓰이기도 한다. 예컨대 매개변수 $t$에 의존하는 방정식 $\mathbf{f}(\mathbf{x}, t)=\mathbf{0}$을 풀 때, $t$를 0에서 1로 조금씩 증가시키며 해의 궤적을 추적하면, 처음 문제(예: $t=0$)의 해에서 시작해 최종 문제($t=1$)의 해에 이르는 경로를 얻을 수 있다.

이 과정에서도 각 $t$ 값에서 뉴턴법을 적용하면, 이미 이전 단계에서 구한 해를 “초기값”으로 삼게 되어 자연스럽게 로컬 수렴 특성이 최적화된다. 즉, $t$가 연속적으로 변하면 해도 연속적으로 변한다는 가정하에서, 초기값이 늘 해의 근방에 놓이므로 뉴턴법이 매우 빠르게 수렴한다. 이렇게 파라미터가 변화하는 과정을 단계적으로 쫓아가는 호모토피 방식은 여러 근 중 원하는 가지(branch)를 “연속적”으로 추적할 수 있다는 장점이 있다.

호모토피 기법은 전역적 탐색에 준하는 역할을 할 수 있는데, 특히 한 번 붙잡은 가지를 놓치지 않고 계속 쫓아갈 수 있기 때문이다. 다만 파라미터 변화 과정 중에 해가 소멸하거나(쌍생성/소멸 현상) 급격히 이동하는 지점(분기점, bifurcation point)이 있다면, 로컬 뉴턴 수렴이 실패하거나 다른 가지로 튀는 문제가 생길 수 있다. 이를 안전하게 넘기기 위해선 추가적인 매개변수 조절, 혹은 분기해석 기법이 필요하다.

#### 수렴 영역 시각화와 초기값 선택

실제 문제를 다룰 때, 해가 하나이고 글로벌 수렴성을 대략적으로 보장해 주는 방법(이분법, 혹은 일부 단순한 구조)이면 간단하다. 그러나 다차원 문제 혹은 복소 문제처럼 여러 근이 존재할 때, 초기값 선택에 따라 다른 해로 갈 수 있으며, 심지어 발산 가능성도 존재한다. 시각화가 가능한(예: 2차원 평면 문제) 경우에는 간단한 스캔(격자 점들을 초기값으로 잡고 반복을 수행하여 최종 수렴 결과 혹은 발산 여부를 기록)으로부터 “수렴 영역”을 추정할 수 있다.

이 방식으로 파라미터 공간에서 해의 안정/불안정 영역을 구분하거나, 로컬 수렴 범위를 미리 가늠할 수 있다. 그러나 차원이 높아질수록 직접적인 시각화는 사실상 불가능하므로, 사전 지식이나 자동화된 신뢰 구간 확장 기법(예: 어댑티브 샘플링, 기계학습 기반 근 추정 등)을 병행하기도 한다.

#### 추가적인 예시(Octave)

아래는 Octave(MATLAB 호환) 스크립트로 단순한 복소 다항식 $f(z)=z^3-1$에 대하여 뉴턴 프랙탈을 그려 보는 예시다. 이 다항식은 복소평면에서 세 근, 즉 $1, -\tfrac12 \pm i\frac{\sqrt{3}}{2}$ 를 갖는다. 각각의 근으로 수렴하는 영역을 색상으로 구분해 보면, 세 근의 매력권(basin) 경계선이 복잡한 프랙탈 형태로 나타난다.

```octave
% Octave script: Newton fractal for f(z)=z^3-1
% Define function and derivative
f = @(z) z.^3 - 1;
df = @(z) 3*z.^2;

% Discretize complex plane
n = 400;
x = linspace(-2, 2, n);
y = linspace(-2, 2, n);
[X, Y] = meshgrid(x, y);
Z = X + i*Y;

% Newton iteration
max_iter = 50;
tol = 1e-6;
for k = 1:max_iter
    Z = Z - f(Z)./df(Z);  % Newton update
end

% Identify nearest root among the three known solutions
root1 = 1;
root2 = -0.5 + i*(sqrt(3)/2);
root3 = -0.5 - i*(sqrt(3)/2);

% Compute distance to each root
dist1 = abs(Z - root1);
dist2 = abs(Z - root2);
dist3 = abs(Z - root3);

% Find which root is nearest
[~, idx] = min(cat(3, dist1, dist2, dist3), [], 3);

% Plot fractal result
colormap([1 0 0; 0 1 0; 0 0 1]);  % red, green, blue
imagesc(x, y, idx);
axis xy equal tight;
title('Newton fractal for z^3 - 1');
```

위 스크립트에서는 초기값을 격자망 전체로 두고, 지정된 횟수만큼 뉴턴 반복을 실행한 뒤, 최종 결과가 세 근 중 어느 것과 가장 가까운지를 판단하여 색상을 입힌다. 세 근 각각에 해당하는 안정 영역이 대부분을 차지하지만, 경계 지점은 무한히 세밀하게 복잡한 분할 패턴을 보이게 된다.

이 예시는 뉴턴법이 로컬 수렴성을 지니더라도, 전역적으로는 매우 민감한 의존성을 나타냄을 복소평면에서 직관적으로 보여 주는 사례라고 할 수 있다.

#### 시사점

비선형 방정식 근사를 다루면서 로컬 수렴성과 글로벌 수렴성을 구분하는 것은, 이론적·실무적으로 모두 중요하다. 어떤 방법은 해 근처에서 빠르고 높은 차수로 수렴하지만, 초기값 설정이 까다롭거나 중근/복수해 상황에서는 쉽게 실패할 수 있다. 또 다른 방법은 수렴 속도가 느리더라도 안정적으로 발산을 피하며, 넓은 영역의 초기값에서 수렴 가능성을 확보한다.

결국 수치해석에서는 문제 특성을 고려해 어느 방법(또는 어떤 혼합 전략)이 적절한지 판단해야 한다. 다변수 대규모 문제, 중근·복수해 문제, 제약이 있는 문제, 초기값 정보가 충분하지 않은 경우 등 다양한 상황에 맞추어 뉴턴법(준-뉴턴 포함), 이분법, 선형 탐색, 트러스트 리전, 호모토피, 프리컨디셔닝, 병렬화 기법 등 수많은 아이디어가 함께 쓰인다.
