라그랑주 보간법(Lagrangian Interpolation)
라그랑주 보간법
보간법이란 불연속적인 데이터를 이용하여 사이 구간의 값을 추정하는 방법입니다. 라그랑주 보간법(Lagrangian Interpolation)은 n+1개의 좌표로 n차 다항식을 만드는 방법입니다. 계산과정이 단순무식하면서도 흥미로운 부분이 있어 소개하려 합니다. 식을 유도과정이 필요하다기보다 몇번 손으로 따라 써보면 어떤 논리로 만들어진 식인지 바로 이해가 될 것입니다.

이미지 출처 : http://mathworld.wolfram.com/LagrangeInterpolatingPolynomial.html
기본 아이디어
1. n+1개의 데이터로 n차 함수를 만든다.
2. 특정 숫자를 대입하면 0이나 1의 값을 갖는 항을 만든다.
3. (x-a)를 곱해주면 x에 a값을 대입할 때 0이 된다.
4. (x-a)를 (b-a)로 나누면, x에 b를 대입했을 때 1이 된다.
일차함수
두 점 (x0,y0), (x1,y1)가 주어졌을 때, 라그랑주 보간식은 다음과 같습니다.
라그랑주 보간식의 핵심은 y0과 y1 앞에 붙어있는 항에 있습니다. x에 x0를 대입하면 y0에 곱해진 항은 1이 되고, y1에 곱해진 항은 0이 됩니다. 따라서 이 식의 그래프는 점 (x0,y0)를 지납니다. 마찬가지로 x1를 대입하면 (x1,y1)를 만족합니다. 이차함수와 삼차함수를 살펴봅시다.
이차함수
세 점 (x0,y0),(x1,y1),(x2,y2)을 지나는 이차함수입니다.
일차함수에서와 마찬가지로 y0에 붙어있는 항은 x0이 대입되었을 때 1이 되고, x1이나 x2가 대입되었을 때 0이 됩니다. 이 항에서 분자의 역할은 0이 되는 지점을 설정하는 것이라 할 수 있습니다. 이 항에서 분모의 역할은 어떤 지점에서 1이 되도록 크기를 맞춰주는 것입니다.
삼차함수
네 점 (x0,y0),(x1,y1),(x2,y2),(x3,y3)을 지나는 삼차함수입니다.
삼차함수까지 손으로 써보면 장단점이 확실히 느낄 수 있을 것입니다. 장점은 어떻게든 보간식을 만들어낼 수 있다는 것이고, 단점은 점이 하나씩 추가될 때마다 처음부터 다시 다 계산해야 한다는 것입니다. 더 이상의 고차함수는 쉽게 예상하실 수 있을 거라 믿습니다.
짤방
여담이지만, 라그랑주 보간법에 의해 1,3,5,7 그 다음수는 217341라 주장하던 짤이 있습니다. 이런 말도안되는 식이 어떻게 나오는지 궁금해서 직접 보간식을 써보니 저는 제대로 y=2x-1이 나오더군요.

이미지 출처 : https://blog.naver.com/dev_kr/220951507946
y=((x−2)(x−3)(x−4)(1−2)(1−3)(1−4))1+((x−3)(x−4)(x−1)(2−3)(2−4)(2−1))3$$+((x−1)(x−2)(x−4)(3−1)(3−2)(3−4))5+((x−1)(x−2)(x−3)(4−1)(4−2)(4−3))7$$=2x−1
공부하면서 궁금하거나 재밋었던 주제가 있다면 댓글로 제보 부탁드립니다.
'물리 수학' 카테고리의 다른 글
곰셈과 함수에서 근삿값의 오차 (0) | 2017.09.09 |
---|---|
차원 : 수학적 차원과 물리적 차원 (0) | 2017.09.08 |
라그랑주 승수법 풀이(Lagrange multiplier method) (7) | 2017.09.02 |
verlet 알고리즘 : 유도과정과 의미 (0) | 2017.08.26 |
파동방정식 유도 : 역학적 접근 (1) | 2017.07.05 |
파동 방정식 유도 : 수학적 접근 (1) | 2017.07.02 |
테일러 근사법과 오차, 신기한 특징 3가지 (5) | 2017.06.29 |