반응형

MATHEMATICS/수치해석학 8

[수치해석] 가우스-자이델 방법, 야코비 반복법(Gauss-Seidel Method, Jacobi Iteration)

#수치해석 반복법(Iterative Methods)은 연립방정식을 풀기 위한 방법의 일종으로 행렬연산이나 가우스 소거법과는 다른 방식으로 해를 구합니다. 이 게시글은 두 가지 반복법 가우스-자이델 방법(Gauss-Seidel Method)과 야코비 반복법(Jacobi Iteration)을 소개합니다. ​ ​ 1. Gauss-Seidel Method ​ 아래와 같이 행렬로 표현된 연립방정식이 있습니다. ​ 각 행이 의미하는 바는 다음과 같습니다. ​ 위 식에서 각각 x1, x2, x3에 대해정리하면 다음과 같습니다. ​ 가우스-자이델 방법은 위 식들의 우변에 각각 "직전 단계에서 업데이트된 x1, x2, x3"를 대입하는 것입니다. ​ ​ (예제 1) 가우스-자이델 방법을 사용하여 연립방정식의 해를 구하여..

[수치해석] 다항회귀 예제(Polynomial Regression), 매트랩 코드

0. Introduction 데이터의 분포에 따라 회귀모델을 직선이 아니라 다항함수로 설정하는 것이 더 유용할 때가 있습니다. ​ ​ ​ 지난 게시글에서는 exponential, power 등 일반적인 비선형 회귀 모델에 대해 선형화를 진행하고 계수를 구하는 예제를 소개했었는데 오늘은 비선형 회귀 모델 중 다항함수 모델에 대해 소개하겠습니다. ​ ​ ​ ​ 1. Polynomial Regression > 회귀곡선을 이차함수라 가정 ​ 회귀곡선을 이차함수라 가정한 경우 a0, a1, a2 총 세 개의 계수를 결정해야 합니다. ​ 아래 제곱합을 가지고 계수를 결정합니다. ​ 세 개의 변수 a0, a1, a2에 대해 편미분을 수행하고, 이것이 각각 0이라는 방정식을 세우고 연립하여 각각의 계수들을 구할 수 있..

[수치해석] 비선형 회귀(Nonlinear Regression) 예제, 매트랩 코드

0. Introduction 비선형 회귀에 대한 예제를 풀어보기 이전에 간단히 선형 회귀에 대해 설명하겠습니다. ​ ​ 선형 회귀(Linear Regression)이란 주어진 (x,y) 데이터에 대해 에러의 제곱합을 최소화하는 직선을 찾는 것입니다.​ ​ 위와 같은 직선을 구성하는 요소는 기울기 a1과 y절편에 해당하는 a0 두 가지입니다. ​ 에러의 제곱합은 아래와 같이 표현되며 앞서 말했듯 이것이 최소가 되도록 하는 직선, 즉 a1과 a0를 찾으면 됩니다. ​ 어떠한 변수에 대해 최소가 되는 지점은 "미분"을 통해 알 수 있는데 여기서 변수가 a1, a0 두 가지이므로 각각의 변수에 대해 편미분한 것이 모두 0이 된다는 관계식을 통해 a1와 a0를 결정할 수 있습니다.​ ​ ​ ​ 이것을 정리하면 아..

[수치해석] 룽게-쿠타 방법(Runge-Kutta Method), 룽게 쿠타 4차 예제

#수치해석 ​ Runge-Kutta Method 룽게 쿠타 방법은 초깃값 문제, 즉 아래와 같은 미분방정식을 푸는 수치해석 기법이다. ​ 아래와 같은 미분방정식을 룽게 쿠타 방법으로 풀 수 있다. ​ ​ ​ 오일러 방법(Euler's method), 호인의 방법(Heun's method), 중간점 방법(Midpoint method) 등의 미분방정식을 푸는 여러 가지 기법은 대부분 이 룽게-쿠타 방법의 일종이다. ​ RK method는 선형 미분방정식이 아니라 비선형 미분방정식에도 적용할 수 있다는 매우 큰 장점이 있다. ​ ​ ​ ​ 다음과 같은 방법을 Runge-Kutta Method라고 한다. ​ ​ 여기서 h는 step size이고 ​ φ(phi) 는 함숫값들로부터 계산되는 어떤 값이다. 원하는 만..

[수치해석학] LU분해(LU Factorization), 파이썬 코드

https://search.shopping.naver.com/book/catalog/32487155058 Linear Algebra and Its Applications, Global Edition : 네이버 도서 네이버 도서 상세정보를 제공합니다. search.shopping.naver.com ​§ 목차 § 0. LU분해 소개 1. LU분해 2. LU분해 알고리즘 3. 파이썬 구현 4. LU분해로 행렬방정식의 해 구하기 5. LU분해로 행렬식 계산하기 ​ ​ ​ ​ 0. Introduction LU분해는 행렬 분해의 한 종류입니다. L은 Lower triangular matrix(하삼각행렬), U는 Upper triangular matrix(상삼각행렬)을 의미합니다. 또다른 행렬 분해로는 직교행렬과 상..

[수치해석학] 뉴턴-코츠 공식, 심슨 룰(Newton-Cotes Formula, Simpson's Rule)

정적분의 값을 구하는 방법은 피적분함수의 원시함수(역도함수, Antiderivative)를 구해 구간의 끝 값을 대입하는 것입니다. ​ 이를테면 처럼 ​ 그런데 일반적인 방법으로 Antiderivative를 구할 수 없는 함수에 대해서는 정적분을 어떻게 구해야 하는가? 라는 물음이 생겨나는데 아래와 같은 경우를 살펴봅시다. ​ 마땅한 Antiderivative를 구하기가 어렵습니다. 해서 f(x)와 근접한 다항함수 P(x)를 찾아 그것의 정적분으로 f(x)의 정적분 값을 근사하는 것이 뉴턴-코츠 공식입니다. ​ ​ ​ 1. 사다리꼴 (Trapezoidal Rule) 작은 도형으로 쪼개서 그 넓이를 구한다. 라는 개념은 고등학교 과정에서도 배우는 구분구적법 내용입니다. ​ 사다리꼴 공식은 각 점을 잇는 선..

[수치해석학] 뉴턴 보간법 (Newton's Interpolating Polynomial, Divided difference)

지난 시간 소개한 라그랑주 다항식에 이어 뉴턴 보간법과 분할차분(Divided Difference)에 대해서 알아봅시다. ​ https://subprofessor.tistory.com/63 [수치해석학] 라그랑주 다항식 (Lagrange Polynomial), 파이썬 코드 오늘 다룰 내용은 보간법의 일종인 라그랑주 다항식 입니다. 보간법(Interpolating)은 간단히 몇 개의 점이 주어졌을 때 그것을 관통하는 함수를 세워 discrete한 데이터들을 연속적인 데이터로 근사 subprofessor.tistory.com 보간법에 대한 설명은 위 링크로 대체하겠습니다. ​ 1. Newton's Interpolating Polynomial 뉴턴 보간법은 다음과 같은 형태의 Polynomial 을 지칭합니다..

[수치해석학] 라그랑주 다항식 (Lagrange Polynomial), 파이썬 코드

오늘 다룰 내용은 보간법의 일종인 라그랑주 다항식 입니다. 보간법(Interpolating)은 간단히 몇 개의 점이 주어졌을 때 그것을 관통하는 함수를 세워 discrete한 데이터들을 연속적인 데이터로 근사하거나 미래의 데이터를 추측하는 것을 말합니다. ​ 예를 들어 아래와 같이 세 데이터가 주어졌을 때 ​ ​ 보간법의 일종인 라그랑주 다항식을 세우면 다음과 같이 세 데이터를 지나는 함수를 세울 수 있습니다. ​ ​ 1. 라그랑주 다항식의 정의​ 라그랑주 다항식은 다음과 같이 정의됩니다 ​ 이때 Ln,k 는 아래와 같습니다. 이를 가중함수(weight function)이라고도 부르고 라그랑주 기저다항식이라 부르기도 합니다. 제가 배운 용어는 Lagrange Interpolating Polynomial ..

반응형