# 뉴턴-랩슨 방법 분야: CS·데이터사이언스 학교급: 대학 교육과정: 정규 교육과정 외 — 접선을 따라가며 방정식의 해를 좁혀 가는 반복법. 공식 풀이가 없는 방정식을 컴퓨터가 푸는 표준 방법이다. 정식 URL: https://pi.devxdev.xyz/wiki/math/%EB%89%B4%ED%84%B4-%EB%9E%A9%EC%8A%A8_%EB%B0%A9%EB%B2%95 --- > 이 개념은 정규 교육과정 외의 내용으로, 접선을 따라가며 방정식의 해를 좁혀 가는 반복법이다. 공식으로 풀 수 없는 방정식을 컴퓨터가 푸는 표준적인 방법이다. ## 정의 함수 $f$가 어떤 구간에서 미분가능하고 $f(x)=0$의 해(근) 근처에서 $f'(x)\neq 0$이라 하자. 초깃값 $x_0$에서 시작하여 다음 점화식으로 수열 $\{x_n\}$을 만드는 방법을 **뉴턴-랩슨 방법**(Newton-Raphson method)이라 한다. $$x_{n+1} = x_n - \frac{f(x_n)}{f'(x_n)}$$ $x_0$이 실제 근 $\alpha$에 충분히 가깝고 $f'(\alpha)\neq 0$이면 $x_n \to \alpha$로 수렴하며, 그 수렴 속도는 2차(quadratic) 수렴이다 — 즉 오차가 매 단계 대략 제곱으로 줄어든다. ## 직관 $y=f(x)$ 그래프 위의 점 $(x_n, f(x_n))$에서 곡선 대신 그 점의 **접선**을 그린다고 생각하자. 곡선은 복잡해도 접선은 직선이라 $x$절편(접선이 $x$축과 만나는 점)을 쉽게 계산할 수 있다. 그 $x$절편을 다음 추정값 $x_{n+1}$로 삼고 다시 접선을 그리는 과정을 반복하면, 곡선이 국소적으로 직선처럼 보이는 만큼씩 점점 진짜 근에 가까워진다. 산비탈에서 발밑의 경사만 보고 평평한 곳을 향해 계속 내려가는 것과 비슷하다. ## 유도 목표는 $f(x)=0$을 만족하는 $x$를 찾는 것인데, 대부분의 $f$는 대수적으로 역함수를 구할 수 없다. 대신 이미 아는 것 — 미분계수는 접선의 기울기라는 사실 — 을 이용한다. **1단계.** 점 $(x_n, f(x_n))$에서의 접선 방정식을 쓴다. 기울기가 $f'(x_n)$이므로 $$y - f(x_n) = f'(x_n)(x-x_n)$$ **2단계.** 이 접선이 곡선 대신 근을 근사한다고 보고, 접선의 $x$절편(즉 $y=0$)을 구한다. $$0 - f(x_n) = f'(x_n)(x-x_n)$$ **3단계.** $f'(x_n)\neq 0$이면 양변을 $f'(x_n)$으로 나누어 $x$에 대해 정리한다. $$x - x_n = -\frac{f(x_n)}{f'(x_n)} \quad\Longrightarrow\quad x = x_n - \frac{f(x_n)}{f'(x_n)}$$ **4단계.** 이 $x$를 새로운 근사값 $x_{n+1}$로 삼는다. 곡선을 접선으로 갈아 끼운 것뿐이므로 한 번에 정확한 근이 나오지는 않지만, $x_n$이 근에 가까울수록 접선과 곡선의 차이(테일러 전개의 2차 이후 항)가 작아 오차가 급격히 줄어든다. 이것이 뉴턴-랩슨 방법이 2차 수렴을 갖는 이유다. ## 예시 $f(x)=x^2-2$의 양의 근, 즉 $\sqrt{2}$를 구해 보자. $f'(x)=2x$이므로 점화식은 $$x_{n+1} = x_n - \frac{x_n^2-2}{2x_n} = \frac{1}{2}\left(x_n + \frac{2}{x_n}\right)$$ $x_0=1$로 시작하면 - $x_1 = \frac{1}{2}(1+2) = 1.5$ - $x_2 = \frac{1}{2}(1.5 + \tfrac{2}{1.5}) = 1.41\overline{6}$ - $x_3 = \frac{1}{2}(1.41\overline{6} + \tfrac{2}{1.41\overline{6}}) \approx 1.41421568$ $\sqrt{2}\approx 1.41421356$이므로 단 세 번 만에 소수점 아래 다섯 자리까지 정확해졌다. 그래프: y=x^2-2 (정의역 -3~3) ## 🌍 실생활 예시 과학용 계산기나 MATLAB, 엑셀의 "목표값 찾기" 기능처럼 방정식의 근을 자동으로 구해 주는 소프트웨어는 대부분 내부적으로 뉴턴-랩슨 방법(또는 그 변형)을 사용한다. 사용자가 식을 넣고 "0이 되는 $x$를 찾아라"라고만 지시하면, 프로그램은 임의의 초깃값에서 출발해 접선을 따라 근을 좁혀 가는 계산을 사람 눈에 보이지 않게 수십 번 반복한다. ## ⚠️ 흔한 실수 - **초깃값을 아무렇게나 잡아도 항상 수렴한다고 착각한다.** 실제로는 초깃값이 근에서 멀거나 함수가 굴곡이 심하면 발산하거나 엉뚱한 근으로 튀어 갈 수 있다. 근이 여러 개인 함수에서는 초깃값에 따라 어느 근으로 수렴할지가 달라진다. - **접선의 기울기가 0인 지점, 즉 $f'(x_n)=0$을 만나면 계산이 그대로 무너진다는 것을 잊는다.** 접선이 $x$축과 평행하면 $x$절편이 존재하지 않으므로 $x_{n+1}$을 정의할 수 없다(0으로 나누기). - **한 번 반복으로 정확한 답이 나온다고 생각한다.** 뉴턴-랩슨 방법은 근사값을 점점 개선하는 것이지 정확한 해를 즉시 주지 않는다. 실제 계산에서는 $|x_{n+1}-x_n|$이 원하는 오차보다 작아질 때까지 반복해야 한다. ## 확인 문제 1. $f(x)=x^2-a$ ($a>0$)에 뉴턴-랩슨 방법을 적용하면 점화식이 $x_{n+1} = \dfrac{1}{2}\left(x_n + \dfrac{a}{x_n}\right)$가 됨을 유도로 직접 보여라. (이 식이 왜 "$x_n$과 $a/x_n$의 평균을 취하면 $\sqrt{a}$에 가까워진다"는 옛날 제곱근 계산법과 같은지 생각해 보라.) 2. $f(x)=x^3-5$, $x_0=2$일 때 $x_1$을 소수 셋째 자리까지 구하라. 3. 만약 어떤 $x_n$에서 $f'(x_n)=0$이라면 다음 단계 계산에 어떤 문제가 생기는지, 그래프의 접선 모양으로 설명하라. 정답 보기: 1. $f'(x)=2x$이므로 $x_{n+1}=x_n-\dfrac{x_n^2-a}{2x_n}=\dfrac{2x_n^2-x_n^2+a}{2x_n}=\dfrac{x_n^2+a}{2x_n}=\dfrac{1}{2}\left(x_n+\dfrac{a}{x_n}\right)$. $x_n$이 실제 값보다 크면 $a/x_n$은 작으므로 둘의 평균을 취하면 자연스럽게 참값 $\sqrt{a}$ 쪽으로 좁혀진다. 2. $f'(x)=3x^2$이므로 $x_1 = 2 - \dfrac{2^3-5}{3\cdot 2^2} = 2 - \dfrac{3}{12} = 2-0.25 = 1.750$. 3. $f'(x_n)=0$이면 접선이 수평이 되어 $x$축과 만나지 않는다(평행하거나 일치). 점화식의 분모가 0이 되어 $x_{n+1}$을 정의할 수 없고, 실제 계산에서는 오류가 나거나 근처 값이 매우 큰 수로 튀어 발산한다. ## 📜 역사 이 방법의 뼈대는 아이작 뉴턴이 1669년 무렵 다항방정식의 근을 근사하는 절차로 처음 제시했지만, 당시에는 도함수 개념을 명시적으로 쓰지 않고 매 단계 다항식을 다시 전개하는 번거로운 대수적 방식이었다. 1690년 조지프 랩슨이 이를 더 간결한 반복 절차로 정리해 발표했고, 이후 이 절차가 지금 우리가 아는 형태에 가까워졌다. 현재처럼 미분(도함수)을 명시적으로 사용하는 일반적인 형태로 정리한 것은 18세기 토머스 심프슨의 작업으로 알려져 있다. 이런 정리 과정을 거쳐 "뉴턴-랩슨 방법"이라는 이름이 굳어졌다. ## 관련 개념 - 도함수 — 접선의 기울기를 계산하는 데 필요한 선수 개념 - 함수의 연속 — 반복 과정이 의미를 가지려면 함수가 매끄럽게 이어져야 한다 - 이차방정식 — 뉴턴-랩슨 방법이 근을 구해 주는 대표적인 방정식의 예 - 경사하강법 — 근을 찾는 대신 함숫값을 최소화하는 방향으로 일반화한 반복법 --- 관련 개념: - 도함수 (/wiki/math/%EB%8F%84%ED%95%A8%EC%88%98) - 함수의 연속 (/wiki/math/%ED%95%A8%EC%88%98%EC%9D%98_%EC%97%B0%EC%86%8D) - 이차방정식 (/wiki/math/%EC%9D%B4%EC%B0%A8%EB%B0%A9%EC%A0%95%EC%8B%9D) - 경사하강법 (/wiki/math/%EA%B2%BD%EC%82%AC%ED%95%98%EA%B0%95%EB%B2%95)