Newton 후진 차분 보간(Backward Difference)
Newton의 다항식 보간 방식 중 하나인 후진 차분(Backward Difference)을 이용한 보간은, 데이터가 $x_0 < x_1 < \dots < x_{n}$ 형태로 주어졌을 때 끝쪽 자료를 기준으로 차분을 계산하여 다항식을 구성한다. 보간하려는 구간에서 $x_n$ 주변으로 접근하는 경우나, 표본점이 균등 간격으로 분포되어 있을 때 유리한 형태를 가진다. 특히 $x$가 $x_n$에 가까울수록 점근적 오차 특성이 개선되는 장점이 있다.
후진 차분 연산자의 정의
후진 차분 연산자 $\Delta^-$는 보통 다음과 같이 정의된다. 어떤 일변수 함수 $f(x)$에 대하여,
데이터가 균등 간격 $h$로 분포한다면 $x_i = x_0 + ih$로 둘 수 있다. 이때 후진 차분 연산자는 자료를 뒤에서부터(즉, $f(x_i)$에서 $f(x_{i-1})$를 빼는 형태) 계산한다. 차분의 차수가 올라갈수록
등의 형태로 정의되며, 일반적으로
으로 확장된다.
Newton 후진 차분 보간 다항식
표본점 $(x_0, y_0), (x_1, y_1), \dots, (x_n, y_n)$에 대하여, Newton 후진 차분 보간 다항식은 $x_n$을 중심으로 차분을 정의하고 보간 다항식을 전개한다. $x_i = x_0 + ih$ (등간격)라고 할 때, 일반적으로
형태로 쓰이기도 한다. 여기서 $\Delta^{k-} y_n = \Delta^{k-} f(x_n)$을 의미한다. 그리고 $\displaystyle \binom{x - x_n}{k}$는 일반화된 이항 계수로서,
(zk)=z(z−1)(z−2)…(z−k+1)k!\binom{z}{k} = \frac{z (z-1) (z-2) \dots (z-k+1)}{k!}
로 정의된다. 등간격 표본이 아닐 경우, 보간 다항식 계수는 아래와 같이 좀 더 일반화된 형태로 쓸 수 있다.
이는 $x_n$을 기준으로 후진 방향으로 차분을 반복하여 얻은 값들을 계수로 삼는다. 차분 테이블(차분표)을 구성할 때에는 $y_n$이 가장 아래쪽에 위치하고, $\Delta^- y_n$, $\Delta^{2-} y_n$ 등의 값이 그 위로 쌓아 올라가는 형식이다. 이때 보간점이 추가되면, 새로운 $y_{n+1}$가 맨 아래에 추가되고, 해당 점에 대한 후진 차분 $\Delta^- y_{n+1}$, $\Delta^{2-} y_{n+1}$ 등의 값을 계산함으로써 보간 다항식을 업데이트할 수 있다.
차분 테이블을 이용한 구성
후진 차분 보간 다항식을 손쉽게 구성하기 위해서는 보간 데이터의 끝단부터 차분값을 계산하여 테이블에 정리하는 방식이 사용된다. $n+1$개의 표본점이 있을 때, 테이블의 마지막 열에는 $\Delta^n y_n$이 위치하고, 그 왼편에 $\Delta^{n-1} y_n$, $\Delta^{n-2} y_n$ 등이 순차적으로 기록된다. 이를 통해 보간 다항식의 각 계수를 차례대로 구한다.
등간격 표본이라면, $h$가 동일하므로 $P(x)$의 전개 과정에서 계수들을 효율적으로 계산할 수 있다. 예를 들어,
등을 차례차례 곱하여 최종 보간식을 구성한다.
여기까지 후진 차분 연산자와 그 기본 성질, 그리고 Newton 후진 차분 보간 다항식의 형태를 살펴보았다. 더 나아가 오차항 분석과 비등간격 자료에서의 활용, 그리고 실제 계산 예제 등은 이어지는 항목에서 자세히 다룬다.
간단한 예제와 구현
데이터가 다음과 같이 주어졌다고 가정한다.
후진 차분법을 활용하여 $x=1.25$ 부근에서의 보간값을 구해 보고자 한다.
표본점의 $x$ 값이 균등 간격이 아니므로, 일반화된 후진 차분 다항식을 따른다. 먼저 후진 차분표를 구성해 보면, 아래와 같은 계산 과정을 거친다.
이제 각 표본점 사이의 간격은 $(x_3 - x_2) = 0.1$, $(x_2 - x_1) = 0.1$, $(x_1 - x_0) = 0.1$로 일정하지만, 일반화된 형태로도 동일하게 적용 가능하다.
후진 차분 보간 다항식을 전개하면,
P(x)=y3+Δ−y3 x−x3x3−x2+Δ2−y32! (x−x3)(x−x2) 1(x3−x2)(x2−x1)+Δ3−y33! (x−x3)(x−x2)(x−x1) 1(x3−x2)(x2−x1)(x1−x0).\begin{align} P(x) &= y_3 &\quad + \Delta^- y_3,\frac{x - x_3}{x_3 - x_2} &\quad + \frac{\Delta^{2-} y_3}{2!},(x - x_3)(x - x_2),\frac{1}{(x_3 - x_2)(x_2 - x_1)} &\quad + \frac{\Delta^{3-} y_3}{3!},(x - x_3)(x - x_2)(x - x_1),\frac{1}{(x_3 - x_2)(x_2 - x_1)(x_1 - x_0)}. \end{align}
위 예제의 경우 간격이 모두 0.1로 같으므로, $x_3 - x_2 = x_2 - x_1 = x_1 - x_0 = 0.1$로 대체할 수 있다. 따라서,
$x = 1.25$에서의 보간값 $P(1.25)$를 손으로 계산하거나, 간단한 스크립트를 통해 확인할 수 있다.
아래는 이 예제를 Octave 스크립트로 구현한 간단한 예시다.
위 코드를 실행하면, $x=1.25$에서의 근사값이 출력된다. Delta 테이블의 마지막 행이 (뒤에서부터) $y_3, \Delta^- y_3, \Delta^{2-} y_3, \Delta^{3-} y_3$ 등을 담고 있기 때문에, 후진 차분 공식을 그대로 활용할 수 있다.
좀 더 일반화하려면 $(x_n - x_{n-1}), (x_{n-1} - x_{n-2})$ 등에 맞춰서 term을 구성하고, $\Delta$ 행렬에서도 각 열마다 적절한 간격 정보를 반영하면 된다.
[계속]전진 차분 보간과의 비교
Newton 보간 다항식의 큰 줄기는 전진 차분(Forward Difference)을 이용하는 방식과, 여기서 다루는 후진 차분(Backward Difference)을 활용하는 방식이 있다. 전진 차분 보간은 $x_0$에서 출발하여 차분을 쌓아가며, 후진 차분 보간은 $x_n$에서 출발하여 차분을 쌓아간다는 차이가 있다. 데이터가 순차적으로 들어올 때, 어떤 쪽이 업데이트가 더 쉬운지는 실제 데이터의 입력 순서에 따라 달라진다. 예를 들어, 시계열적으로 오래된 데이터가 고정되고 새로운 데이터가 ‘최신’에 쌓일 때는 후진 차분이 편리하며, 그 반대라면 전진 차분이 편할 수 있다.
두 방식 모두 표본점이 균등 간격으로 분포하면 이항 계수 형태의 기저함수를 사용하기 편리해진다. 전진 차분에서는 $(x - x_0)$를 기준으로 전개하고, 후진 차분에서는 $(x - x_n)$를 기준으로 전개한다. 표본점들이 등간격으로 분포한다면, 두 식이 단순히 좌표계의 반전을 통해 서로 변환될 수 있다.
후진 차분 보간과 분할구간 보간
많은 표본점이 있을 때, 모든 점을 한꺼번에 $n$차 다항식으로 보간하면 높은 차수의 다항식이 형성된다. 이는 진동(Runge 현상) 문제나, 계산 오차 증가 가능성이 대두될 수 있다. 따라서 실무에서는 구간별로 낮은 차수의 보간 다항식을 적용하는 방법(스플라인 보간 등)을 사용하기도 한다. 그러나 특정 구간에서, 특히 $x_n$ 부근에만 관심이 있다면 후진 차분 보간법을 통해 국소적으로 낮은 차수의 근사 다항식을 빠르게 구성할 수 있다. 이는 편의성과 계산 효율 면에서 이점이 될 수 있다.
수치적 안정성과 반올림 오차
차분에 기반한 Newton 보간은, 표본점이 많아질수록 고차 차분값의 크기가 변동 폭이 커질 가능성이 있다. 특히 등간격 표본에서 $h$가 크면, $\Delta^{k-} y_n$가 점점 커졌다 작아졌다 하며 반올림 오차가 누적될 여지가 생긴다. $h$가 너무 크거나 너무 작은 경우 모두 수치적으로 불안정할 수 있으므로, 가능한 한 적정한 분포의 표본점을 사용하거나, 보간 구간을 세분화하여 국소적인 보간을 수행하는 것이 낫다.
후진 차분 보간에서, 새로운 점이 $x_{n+1} > x_n$에 들어올 경우에만 차분표를 확장해 나가는 로직이 구현된다. 이때 $y_{n+1}$가 지나치게 컸거나 반올림에 민감할 정도로 큰 값을 가져도, 이전 단계에서 계산한 $\Delta^{k-} y_n$들이 기존에 저장되어 있기 때문에 굳이 모든 차분을 다시 계산할 필요 없이 ‘최신’ 행만 채워 넣으면 된다. 다만 $k$차 차분으로 올라갈수록 차이가 누적되어 정확도가 떨어지는 일이 생길 수 있으므로, 주기적으로 보간 다항식을 새로 구성하여 누적 오차를 방지하기도 한다.
혼합 차분 기법
실제 상황에서 $x_n$ 근처의 데이터가 유독 많이 추가되는 구간이 있고, $x_0$ 부근에서의 자료 업데이트도 동시에 이루어질 수 있다면, 후진 차분과 전진 차분을 혼합적으로 사용할 수도 있다. 예컨대 $x_0$에서부터는 전진 차분 테이블을 관리하고, $x_n$에서부터는 후진 차분 테이블을 관리해 두면, 어느 쪽에서 데이터가 새로 들어와도 빠르게 보간 다항식을 확장 혹은 갱신할 수 있다.
이는 다항식을 직접 합성하는 것이 아니라, 각각의 지역 구간에서 Newton 다항식을 구성해 두고, 필요한 구간에서 적절히 활용하는 형태로 확장될 수 있다. 물론 이 경우 구간을 접합하는 경계점에서의 연속성(및 미분 가능성 등)이 필요하다면 좀 더 정교한 보간 기법(스플라인 등)을 고려해야 한다.
나머지 항 해석의 유용성
잔차항(residual term)이나 오차항을 통해 $f(x) - P(x)$의 추정치를 구하는 것은, 실제 계산에서 ‘얼마나 정밀한 근사인가’를 가늠하게 해 준다. 후진 차분 보간에서 $x_n$ 근처에 $x$가 존재한다면, 전반적으로 큰 $|x - x_0|$ 등을 모두 곱해야 하는 항이 차분 테이블의 높은 계수와 함께 작동한다. 그 결과, $x$가 $x_0$보다 $x_n$에 훨씬 가까운 영역에 있을 경우, 오차항이 비교적 작을 가능성이 있다. 이는 바로 후진 차분 보간의 장점 중 하나로 꼽힌다.
높은 차수 보간에서의 유의사항
후진 차분 보간을 통해 $n$차 다항식을 구성하는 것은 이론적으로 무리가 없지만, $n$이 커질수록 계산 양과 수치 오차가 모두 증가한다. $n$차 미분이 존재해야 오차 공식을 쓸 수 있다는 전제가 있으며, 함수가 급격히 변하는 구간에서는 매우 많은 표본점을 사용해도 좋은 근사가 얻어지지 않을 수 있다. 이러한 상황에서는 여러 분할 구간에 낮은 차수 보간 다항식을 적용하거나, 다른 보간/근사 기법과 병행하여 사용하는 방안이 훨씬 효율적이다.
다음 항목에서는 후진 차분 보간이 실제 문제 해결에 적용되는 몇 가지 사례와, 오차 분석에 대한 구체적인 식 및 적용 방법을 조금 더 살펴본다.
고차 오차항과 차분 연산 특성
후진 차분 보간에서 오차항은 주로 $(n+1)$차 미분 항과 표본점 간의 곱으로 구성된다. $n$차 다항식 보간이므로, 표본점이 $(n+1)$개가 주어졌을 때
꼴이 된다. 이를 후진 차분으로 표현할 때는 $x_n$을 기준으로
모양으로 전개된다. 실제로, $\xi_x$는 $x_0$과 $x_n$ 사이의 어떤 점이 될 것이며, $x$가 $x_n$ 근방일수록 큰 항 $(x - x_0)$ 등의 효과가 누그러지는 면을 가늠할 수 있다.
차분 연산의 성질상, $k$차 후진 차분은 $k$차 미분을 근사하는 데 이용되기도 하며, 특히 $x_n$을 기반으로 뒤쪽 지점에서 함숫값을 조합하므로, $x_n$ 부근에서의 미분값 추정에서도 유리하다. 예를 들어, 1차 후진 차분 $\Delta^- f(x_n)$은 (등간격이라면) $\frac{f(x_n) - f(x_{n-1})}{h}$ 형태가 되어 $f'(x_n)$을 근사할 때 종종 사용된다. 이는 고차 후진 차분에서도 마찬가지 개념이 확장된다.
높은 차수 확장 시의 수치적 감안사항
표본점이 늘어나서 보간 차수가 높아지면, 후진 차분표의 마지막 열(가장 높은 차수 차분)은 점점 그 크기가 커지거나, 부호가 바뀌며 반올림 오차를 증폭시킬 수도 있다. 이는 $n$이 증가할수록,
항에 포함된 오차가 지수적으로 증대될 수 있음을 시사한다. 등간격 간격 $h$가 크면, 후진 차분은 $k$차 차분을 구할 때마다 $O(h^k)$ 스케일로 증폭되는 경향을 보인다. 따라서
차수가 너무 커지지 않도록 적정 구간에서만 보간
부분 구간을 나누어 (스플라인 등) 안정성 확보
적절한 재표본화 혹은 중첩된 다항식 사용 등으로 반올림 오차 누적을 방지한다(이 내용은 원리 설명을 위해 나열하되, 형식상 ‘숫자 리스트’를 지양하기 위해 문장식으로 표현한다).
Gauss 후진 차분 공식과의 연관성
Newton의 전·후진 차분 공식 외에도 Gauss, Stirling, Bessel, Everett 등의 다항식 보간 공식이 있다. 이들은 후진 차분과 전진 차분을 혼합해서 사용하거나, 중심에 있는 표본점을 기준으로 전개한다. 예컨대 Gauss의 보간 공식에는 순차적으로 전진 차분과 후진 차분을 절묘하게 조합하여, $x_0$와 $x_n$ 사이 중간에 있는 어떤 ‘중심’ 점 $x_{m}$을 기준으로 전개하는 방식이 들어 있다. 후진 차분 공식과의 직접적인 연관은, Gauss 보간식에서 $x_{m+k}$ 방향의 차분을 후진 방식으로 계산하는 항이 나타나기 때문이다.
이처럼 보간식 전개가 $x$의 위치에 따라 다른 차분을 쓰면, 특정 구간에서 보간 오차가 더 작도록 설계할 수 있다. 후진 차분 보간 또한 $x_n$에 가까운 영역에서 효과적이라는 의미에서, Gauss 공식과 유사하게 국소화된 접근을 취할 수 있다.
Peano 핵정리(Peano Kernel Theorem)와 차분
보간식의 오차항은 Peano 핵정리를 통해 더 일반적으로도 해석할 수 있다. Peano 핵정리는 (선형 범함수로 볼 수 있는) 보간 오차 연산자가 어떻게 $(n+1)$차 미분 항을 결정하는지 보여 준다. 특히 후진 차분 보간의 오차연산자 역시, 특정 $\xi_x$에서의 고차 미분을 평가해야만 정확한 오차량을 알 수 있음을 말해 준다. 실제 계산에서는 $\xi_x$를 찾을 수 없으므로 이론적 한계가 있으나, 표본이 충분히 조밀하면 그 근방에서의 $f^{(n+1)}(\xi_x)$가 크지 않다는 전제하에, 오차가 작을 것임을 추론한다.
다항식 외의 혼합·고차 보간과의 융합
보간 영역이 넓고, $x_n$ 근처뿐만 아니라 중간 구간도 모두 정확하게 근사해야 할 때는, 단순 고차 보간(후진 차분 포함)이 효율적이지 못할 수 있다. 이런 상황에서, 예를 들어 스플라인 보간법(3차 등)을 쓰되, 국소적인 한 구간에서만 후진 차분 보간을 병행하는 방법이 가능하다. 예컨대 $[x_0, x_k]$ 구간에는 스플라인을 쓰고, $[x_k, x_n]$ 구간에선 후진 차분 보간의 $n$차 다항식을 적용한다. 그 경계점 $x_k$에서 적절한 연속성 및 매끄러움을 유지할 수 있으면, 한쪽 구간에서 새로운 표본점이 추가되더라도 국소적 보완이 가능하다.
보간 다항식의 외삽(Extrapolation)
다항식 보간은 표본 구간 바깥으로 외삽(extrapolation)할 때 불안정성이 커진다. 후진 차분 보간식을 기준으로, $x > x_n$인 영역에서 외삽을 시도해 보면, 차분값들이 본래의 데이터 분포와 전혀 다른 거동을 보일 수 있다. $x_{n+1}$를 실제로 구하지 않고, $x_n$ 이후로 쭉 이어지는 $P(x)$만 가지고 예측을 하게 되면, 고차 항들이 의도치 않게 급등락을 일으킬 가능성이 있다. 따라서 보간은 본래 표본점들이 있는 구간 내부에서, 혹은 약간의 경계 근방에서만 안정적으로 사용되며, 그 외 범위로의 외삽은 매우 신중하게 접근해야 한다.
정리
후진 차분 보간은 $x_n$을 기준으로 데이터를 쌓아 올려 보간 다항식을 구성한다. 표본점이 순차적으로 증가할 때 맨 마지막 점이 새로운 데이터라면, 효율적으로 차분표를 갱신할 수 있다는 실용적 이점이 있다. 국소적으로 $x_n$ 근방을 보간하는 상황에서는 전진 차분보다 자연스럽게 접근 가능하며, 오차항 역시 $x - x_0$ 등의 항이 주로 영향을 미치게 된다.
이후에는 후진 차분 보간을 다른 고차 공식들과 비교하거나, 분할 구간에서 차분 테크닉을 혼합 적용하는 사례를 조금 더 구체적으로 다룰 수 있다.
분할 구간에서의 후진 차분 보간 활용
후진 차분 보간 다항식은 표본점 전체를 한꺼번에 사용하는 전역(全域) 보간으로서, $n$차 다항식을 얻는다. 그러나 $n$이 커질수록 보간 다항식이 과도하게 진동하거나, Runge 현상으로 인해 근사 품질이 떨어질 가능성이 있다. 따라서 표본 구간을 여러 개의 하위 구간으로 나누어, 각 구간마다 상대적으로 낮은 차수의 후진 차분 보간 다항식을 적용하고, 이들을 순차적으로 연결하는 방식을 고려할 수 있다.
이 경우 각 구간은 $[x_{k_0}, x_{k_1}]$, $[x_{k_1}, x_{k_2}]$, … 같은 식으로 분할되고, 구간마다 후진 차분 보간을 독립적으로 구성한다. 예컨대 $[x_{k_i}, x_{k_{i+1}}]$ 구간에는, 해당 구간 표본점들 중 가장 오른쪽 지점을 $x_{k_{i+1}}$라고 두어 후진 차분 표를 만든다. 이후 보간이 필요한 $x$가 해당 구간 내에 있으면 그 보간 다항식을 사용하고, 다음 구간으로 넘어가면 거기에 해당하는 후진 차분 다항식을 쓴다.
뒤쪽 경계점($x_{k_{i+1}}$)에서 새로운 점을 추가할 때 효율적으로 차분표를 갱신할 수 있다. 모든 구간에 대해 이러한 과정을 병렬적으로 수행하려면, 구간별로 독립된 차분표를 관리하여, 필요한 순간에만 업데이트하면 된다. 단, 구간의 접점($x_{k_i}$ 등)에서 보간 다항식끼리 연속이 보장되는지, 혹은 매끄러운 연결(미분 연속 등)이 필요한지를 면밀히 검토해야 한다.
가중 후진 차분 보간 기법
표본 점마다 상대적인 중요도가 다를 수 있다면, 가중(weighted) 보간 기법을 도입하여 ‘특정 표본점은 정확히 지나는 것보다 근사에 가깝게 배정한다’ 같은 방식을 사용할 수 있다. 그러나 엄밀한 의미의 다항식 보간은 “모든 표본점을 정확히 지나야 한다”는 제약이 들어가므로, 가중 보간은 최소제곱 적합(Least-Squares Fitting) 등에 가깝다. 여기서도 후진 차분 표를 변형해, 각 항의 계수를 최적화하는 방향으로 일반화할 수 있지만, 그 과정은 표준적인 Newton 후진 차분 보간과 달라진다.
예컨대, $n+1$개 점이 모두 정확히 보간되어야 하는 것은 아니고, 일부 점들($x_{n-r}, \dots, x_n$ 등)은 완전 보간, 나머지 점들은 근사 보간이 허용된다고 하면, 후진 차분 표를 생성하고 나서 거기에 최소제곱 계수 보정을 적용하는 식이다. 이는 “혼합형 근사 보간”이라 할 수 있으며, 실제 계산에서는 스플라인이나 다항 회귀, 혹은 다른 데이터 적합 알고리즘과 함께 고려된다.
Hermite 혹은 고차 미분 조건을 적용한 후진 차분 확장
표본점의 함수값뿐만 아니라, 그 미분값(혹은 더 높은 차수 미분값)까지 알고 있다면, Hermite 보간(Hermite Interpolation)을 적용할 수 있다. Hermite 보간은 주어진 표본점에서 $f(x_i)$뿐 아니라 $f'(x_i)$ 등도 만족시키도록 다항식을 구축한다. 이 역시 Newton 형식으로 전개가 가능하나, 차분 표에 각 점에서의 미분 정보가 추가되어야 하고, 이때 전진·후진 차분식만으로는 부족하므로 보간식을 구성할 때 별도의 Hermite 계수(H-divided differences)를 도입한다.
후진 차분 관점에서 Hermite 보간을 구현하려면, $x_n$ 부근의 표본점에서 $f(x_n), f'(x_n)$을 포함한 여러 점 약속 조건을 충족하는 다항식을 만들어야 한다. 즉, 어떤 $x_i$에서 $m$차까지의 미분 조건이 주어진다면, 그만큼 차분 연산에서 $x_i$ 근방에 대한 확장 규칙을 세분화해 준다. 예컨대 $x_i$에서 1차 미분 조건이 주어지면, $\Delta^- f(x_i)$와 동일시하거나, 그 차이로부터 미분값을 추산하는 별도의 방정식이 생긴다. 이는 일반적인 단순 후진 차분 보간 공식과는 다른 구조의 테이블이 필요하게 만든다.
분산된 표본점과의 결합(혼합)
후진 차분 보간이 $x_n$에 가까운 점들만 집중적으로 사용되면, 그 이외 영역에서의 정확도는 상대적으로 떨어질 수 있다. 이를 극복하기 위해, $x_n$ 부근에는 후진 차분 보간을, $x_0$ 근방에는 전진 차분 보간을, 중간 영역에는 (예를 들어) Gauss나 Stirling 보간 공식을 혼합 적용하는 기법이 가능하다.
예를 들어 다음과 같은 시나리오를 상정할 수 있다. 표본점의 총 개수가 매우 많고, $x_0$부터 $x_m$ 구간에서 전진 차분 보간 테이블을 만들어 두었다. 동시에 $x_{m+1}$부터 $x_n$까지는 후진 차분 보간 테이블을 구성했다. 이제 $x$가 $[x_0, x_m]$ 내부에 있으면 전진 차분 테이블에서 $P_{\mathrm{forward}}(x)$를 찾고, $[x_{m+1}, x_n]$ 범위에 있으면 후진 차분 테이블에서 $P_{\mathrm{backward}}(x)$ 값을 사용한다. $x_m$과 $x_{m+1}$의 경계 부근에서 연속적 연결성이 필요하다면, 스플라인 또는 별도의 보정항을 적용할 수 있다.
이러한 혼합 방식은 데이터가 양쪽 끝에서 동시에 업데이트될 때 효율적일 수 있다. $x_0$ 부근의 새 점이 들어오면 전진 차분 테이블을 수정하고, $x_n$ 근방의 새 점이 들어오면 후진 차분 테이블을 수정한다. 중간 구간에선 상대적으로 표본점이 고정되어 있어, 전체에 대한 거대 차분표를 재계산하지 않아도 된다.
실질 예시: Python 코드
아래는 단순화를 위해, 등간격 표본을 가정하여 전역(全域) 후진 차분 보간을 구현하되, $n$이 너무 커지면 구간을 나누어 보간하는 형태를 보여 주는 간단한 Python 스크립트다. 각 구간의 끝점에서 후진 차분 테이블을 만들어, 구간 내부 요청이 있을 때 해당 테이블을 참조하도록 구성한다.
코드 상에서 $x=0.15$는 $[0.0, 0.1, 0.2]$ 구간에 속하므로 해당 테이블을 이용해 후진 차분 보간을 수행하고, $x=0.35$는 $[0.2, 0.3, 0.4]$ 구간에 해당하므로 두 번째 테이블을 사용한다. $n$이 커지더라도, 각 구간은 수 개의 점으로 제한되어 있기 때문에 차분표의 크기가 작고 오차가 지나치게 커지지 않는다.
후진 차분 보간을 이렇듯 구간별로 조합해 응용할 수 있으며, 표본점의 분포 상황이나 보간 대상 구간 등에 따라 유연한 접근이 가능하다.
추가 참고
후진 차분 보간법은 Newton의 일반화된 나누어진 차분(divided difference)과 기본적으로 동일한 원리에 기반한다. 단지 표본점 순서를 역방향으로 잡아, $(x_n, f(x_n))$을 ‘첫 번째 점’처럼 해석하고, 차분도 뒤에서부터 수행하는 구조다. 이 관점을 활용하면, 전진·후진·중심(가령 Gauss) 보간이 모두 같은 뼈대 위에서 구현 가능함을 알 수 있다.
추가로, 실제로는 보간보다는 회귀나 적합(fitting)에 초점을 두어, $n$차 다항식을 모든 점에 대해 최소제곱 오차로 구하는 방식을 선호하기도 한다. 그러나 “주어진 표본점을 모두 정확히 통과하는” 순수 보간 문제에서는 Newton 후진 차분 보간이, 특히 $x_n$ 주변에서의 근사에 효율적이라는 점에서 여전히 활용도가 높다.
더 자세한 이론적 배경과 수치예시, 그리고 Hermite 보간 등과의 혼합 방식은 심화 항목에서 이어 나갈 수 있다.
다른 보간 다항식(예: Lagrange)과의 비교
Lagrange 다항식 역시 모든 표본점을 정확히 통과하는 다항식을 생성하지만, 일반적으로는 직접 차분표를 구성하지 않고,
이때
와 같은 기저다항수를 사용한다. 이는 $n$차 보간 다항식을 일거에 전개할 수 있는 장점이 있지만, 보간점이 하나씩 추가될 때 전체 다항식을 재계산해야 하는 구조라서 반복 갱신에는 덜 편리하다.
Newton 보간(후진 혹은 전진 차분 방식)은 차분표를 축적해 두면 표본점이 새로 추가되더라도 갱신 로직이 간단해진다. 이는 차분표가 ‘누적 데이터 베이스’ 역할을 하기 때문이다. 후진 차분은 특히 $x_{n+1}$이 도착하면 그 점에 대응하는 $y_{n+1}$만 추가하고, 새로운 $\Delta^- y_{n+1}$, $\Delta^{2-} y_{n+1}$ 등을 차례대로 구하면 되므로, 보간 다항식 업데이트가 용이하다.
고계 차분(고차·고阶)에서의 수치 효과
표본점이 많아져 $n$이 커지면, Newton 후진 차분 보간식 역시 $n$차 다항식으로 확장된다. 그런데 다음과 같은 이유로 수치상의 난점이 발생할 수 있다. 후진 차분표에서 맨 끝 열의 $\Delta^{n-} y_n$이 미세 차이로 인해 반올림 오차가 커질 가능성 보간하려는 $x$가 $x_n$에서 멀리 떨어진 지점이라면, $P(x)$ 계산 시 높은 차수 항의 영향이 커져서 진동 현상(Runge 현상)이 두드러질 수 있음
이런 문제를 완화하기 위해선, 필요 이상으로 고차 보간을 하지 않고, 국소 구간을 나누어 각 구간에 대해 낮은 차수 보간을 수행하거나, 혹은 적절히 분산된 표본점(예: Chebyshev nodes)을 배치하는 전략을 생각해 볼 수 있다. Chebyshev 노드는 $[-1,1]$ 구간에서 다항식 보간의 진동을 최소화하기 위한 특수한 점 분포지만, 일반 구간으로 선형 변환하여 유사하게 활용하기도 한다.
실용 예시: 등간격 점에서의 $e^x$ 근사
$e^x$는 모든 도함수가 자기 자신이므로, 이론적으로는 $e^x$를 $n$차 Newton 후진 차분 다항식으로 보간해도 좋은 근사 성능을 볼 수 있다. 예컨대 $[0,1]$ 구간을 5등분한 표본점 $0,0.2,0.4,0.6,0.8,1.0$에 대해 $e^x$를 계산하여, 후진 차분표를 구성한다고 하자. 차분표 맨 아래에는 $e^1$, 그 위에는 $\Delta^- e^1 = e^1 - e^{0.8}$, … 식으로 올라가며,
이런 식의 다항식을 얻는다. $x\approx 1.0$ 부근(예: $x=0.95$)에서 보간값은 매우 정밀하게 $e^x$에 근접한다. 반면 $x=0$ 근방까지 멀리 외삽하려 하면, 차수에 따라 큰 오차가 누적될 수 있다.
Newton 후진 차분 보간은, 뒤쪽 표본점($x_n$)을 기준으로 보간 다항식을 전개하는 강력하고 유연한 기법이다. $x_n$ 근방에서의 보간에 효율적이며, 새로운 점이 추가될 때 재계산 부담이 적다는 장점이 있다. 반면, 보간 차수가 커질수록 고차 차분의 수치 불안정성이 나타날 수 있으며, $x$가 $x_n$과 멀어질수록 보간 다항식의 진동이나 오차가 커질 수 있으므로 주의가 필요하다.
이상으로 Newton 후진 차분 보간의 핵심 내용을 다루어 보았다.
Last updated