- (x,f(x)) 의 데이터를 가지고 f(x)를 approximation 하는 방법에 대하여 기술한 포스팅이다
- 'Numerical Methods and Optimizaiton : An Introduction (Sergiy Butenko)' - chapter 5 를 참고하였다
많은 Engineering 과 Science 에서 요구되는 문제들은 주어진 데이터들을 이용하여 함수 f(x)를 알아내는 방법들이 요구된다.
이러한 문제들을 Polynomical approximation을 통해 해결하고자 한다.
1. Polynomial 의 함수의 형태
1.1 power form
p(x)=a0+a1x+a2x2+⋯+anxn
1.2 shifted power form (with center c)
p(x)=b0+b1(x−c)+b2(x−c)2+⋯+bn(x−c)n
1.3 Newton form
p(x)=a0+a1(x−c1)(x−c2)+⋯+an(x−c1)…(x−cn)
=a0+n∑k=1akk∏i=1(x−ci)
(Newton form의 경우 모든 ci=c 일 경우 power form 과 같은 형태가 된다
즉 polynomial interpolation은 polynomial form의 계수인 ai들을 구하는 과정임을 알 수 있다.
이제 Polynomical 함수 중 하나인 Lagrange polynomial 을 이용하여 Interpolation 을 수행하여 보자
2. Polynomial Interpolation Methods
data (x0,y0),…,(xn,yn) 이 주어졌을때 Lagrange polynomial 은 아래와 같다.
lj(x)=(x−x0)(x−x1)…(x−xj−1)(x−xj+1)…(x−xn)(xj−x0)(xj−x1)…(xj−xj−1)(xj−xj+1)…(xj−xn)
=n∏i=0,i≠j(x−xi)(xj−xi)
2.1 Lagrange method
lagrange polynomal을 이용하여 함수를 Interpolation하면 아래와 같다
p(x)=y0l0(x)+y1l1(x)+⋯+ynln(x)
n∑j=0yjn∏i=0,i≠j(x−xi)(xj−xi)
2.2 Newton's method
기존의 n개 의 data points에 새로운 data point (x_{n+1}, y_{n+1}) 가 추가되는 경우 Lagrange method로는 기존의 pn(x) 을 이용할 수가 없다. 즉 새롭게 다시 구해야 한다. 하지만 Newton's method를 이용하면 pn(x)를 이용하여 pn+1(x)를 구하는 것이 가능해진다
pn+1(x)=n∑j=0ajj−1∏i=0(x−xi)+an+1n∏i=0(x−xi)=q(x)+r(x)
이 경우 interpolating polynomial 의 uniqueness로 q(x)=pn(x)이므로,
pn+1(x)=pn(x)+an+1n∏i=0(x−xi)
위에 식의 x에 새롭게 얻어진 xn+1을 넣으면 아래와 같이 pn(x) 을 이용하여 pn+1(x) 를 효율적으로 구할 수 있다.
yn+1=pn+1(xn+1)=pn(xn+1)+an+1n∏i=0(xn+1−xi)
an+1=yn+1−pn(xx+1)∏ni=0(xn+1−xi)
'호주 대학원 생존기 > Mathematics' 카테고리의 다른 글
[Computational Statistics] Random Vectors (랜덤 벡터) (0) | 2021.07.28 |
---|---|
[Computational Statistics] Linear algebra for the linear models (선형모델해석을 위한 선형대수) (0) | 2021.07.27 |
[Numerical Analysis] Numerical Integration (0) | 2021.07.07 |
[Numerical Analysis] Solution of Nonlinear Systems (0) | 2021.07.02 |
[Numerical Analysis] Solving Equations, Root Finding Method (0) | 2021.07.02 |