수치해석 (Numerical Analysis)

Slides:



Advertisements
Similar presentations
제 2 장. 비선형 방정식의 해법 1. 방정식의 근 2. 방정식의 실근을 구하는 해법 3. 다항식의 복소수 근을 구하는 해법.
Advertisements

수치해석 (Numerical Analysis) 보간법 (Interpolation). Page 2 보간법 (Interpolation) In this chapter … 보간법이란 ? 통계적 혹은 실험적으로 구해진 데이터들 (x i ) 로부터, 주어진 데이터를 만족하는 근사.
스마트 KTC 사용자 매뉴얼 스마트폰용 모바일학생증 앱 설치 및 기본기능. 강원관광대 스마트 KTC 앱 설치 강원관광대학교 모바일학생증 앱 ( 이하 ‘ 스마트 KTC’ 로 명명 ) 은 안드로이드폰은 Google Play Store, 아이폰 은 App Store 에서 무료로.
Add Your Text 5. 지수함수와 로그함수 1. 지수함수 2. 로그함수 · 지수함수와 그 그래프 · 지수방정식과 지수부등식 · 로그 함수와 그 그래프 · 로그방정식과 로그부등식.
수치해석 (Numerical Analysis) 과목 개요 문양세 강원대학교 IT 대학 컴퓨터과학전공.
VATECH 허승현 CURVE FITTING( ).
수치해석 (Numerical Analysis)
대림대학교 2017년도 1학기 강의 왕보현 순서도와 스크래치 5주차 대림대학교 2017년도 1학기 강의 왕보현
적분방법의 연속방정식으로부터 Q=AV 방정식을 도출하라.
컴퓨터프로그래밍 1주차실습자료 Visual Studio 2005 사용법 익히기.
4. Matlab-Simulink를 이용한 메카니즘 해석
9장. C 언어의 핵심! 함수. 9장. C 언어의 핵심! 함수 9-1 함수의 정의와 선언 main 함수 다시 보기 : 함수의 기본 형태 { } 그림 9-1.
(Numerical Analysis of Nonlinear Equation)
5.2 애니메이션 Page 283 ~ 295.
수치해석 6장 예제문제 환경공학과 천대길.
컴퓨터 프로그래밍 기초 [Final] 기말고사
- 1변수 방정식의 solution 프로그램 (Bisection method, Newton-Raphson method)
제 6 장. 수치미분과 수치적분.
데이터 마이닝 - 강의 개요 년 가을학기 강원대학교 컴퓨터과학전공 문양세.
수치해석 (Numerical Analysis)
수치해석 (Numerical Analysis)
윤성우의 열혈 C 프로그래밍 윤성우 저 열혈강의 C 프로그래밍 개정판 Chapter 12. 포인터의 이해.
제Ⅲ부 상미분 방정식의 근사해법과 유한요소해석
제Ⅲ부 상미분 방정식의 근사해법과 유한요소해석
2주차: 변수, 수식, Control Flow.
Tail-recursive Function, High-order Function
행렬 기본 개념 행렬의 연산 여러가지 행렬 행렬식 역행렬 연립 일차 방정식 부울행렬.
근사값과 반올림 오차 절단 오차와 Taylor 급수 오차의 전파
수치해석 (Numerical Analysis)
제4장 제어 시스템의 성능.
Ⅲ. 이 차 방 정 식 1. 이차방정식과 그 풀이 2. 근 의 공 식.
1.4 중첩된 한정기호 (Nested Quantifiers) 이산수학 (Discrete Mathematics)
프로그래밍 개요
Lesson 4. 수식과 연산자.
수학 I Week 7. Differentiation
Quiz #7 다음 수들을 합병 정렬과 퀵 정렬 알고리즘을 이용하여 오름 차순으로 정렬하였을 때, 데이터 이동 회수를 각각 구하라. 여러분은 정렬 과정을 단계별로 보이면서 이동 회수를 추적해야 한다. 단, 퀵 정렬시에 피봇으로 배열의 왼쪽 첫 번째 원소를 선택한다. 5.
수치해석 (Numerical Analysis)
연산자 (Operator).
Metal Forming CAE Lab., Gyeongsang National University
컴퓨터 프로그래밍 기초 - 10th : 포인터 및 구조체 -
1차시: 낮과 밤이 생기는 원리 지구과학
컴퓨터 프로그래밍 기초 - 5th : 조건문(if, else if, else, switch-case) -
Choi Seong Yun 컴퓨터 프로그래밍 기초 #06 : 반복문 Choi Seong Yun
제어시스템설계 Chapter 4 ~ Chapter 5.
컴퓨터 프로그래밍 기초 - 8th : 함수와 변수 / 배열 -
데이터 마이닝 - 강의 개요 년 가을학기 강원대학교 컴퓨터과학전공 문양세.
홍수추적 담당교수명 : 서 영 민 연 락 처 :
컴퓨터 프로그래밍 기초 [01] Visual Studio 설치 및 사용방법
미분방정식.
수학10-나 1학년 2학기 Ⅳ.삼각함수 3. 삼각함수의 그래프(7/12) 삼각함수 수업계획 수업활동.
이차방정식과 이차함수의 관계 이차함수의 그래프와 축의 위치 관계 이차방정식 의 그래프와 축이 만나는 점의 좌표는 이차방정식
PHP 웹 프로그래밍 (PHP Web Programming) 미리 정의된 함수 문양세 강원대학교 IT대학 컴퓨터과학전공.
선 그리기.
수학10-나 1학년 2학기 Ⅰ. 도형의 방정식 1. 평면좌표 (2~3/24) 선분의 내분점과 외분점 수업계획 수업활동.
홍수추적 담당교수명 : 서 영 민 연 락 처 :
4장. 데이터 표현 방식의 이해. 4장. 데이터 표현 방식의 이해 4-1 컴퓨터의 데이터 표현 진법에 대한 이해 n 진수 표현 방식 : n개의 문자를 이용해서 데이터를 표현 그림 4-1.
제 5장 제어 시스템의 성능 피드백 제어 시스템 과도 성능 (Transient Performance)
컴퓨터 구성요소와 사용 컴퓨터 문서 작업 인터넷 활용
3D 프린팅 프로그래밍 03 – 도형 회전 (손잡이컵 만들기) 강사: 김영준 목원대학교 겸임교수.
프로그램분석 어떻게하나 (quick/tiny)
1. 접선의 방정식 2010년 설악산.
수학10-나 1학년 2학기 Ⅰ. 도형의 방정식 4. 도형의 이동 (20/24) 도형의 평행이동 수업계획 수업활동.
상관계수.
Numerical Analysis Programming using NRs
수치해석 (Numerical Analysis)
컴퓨터공학과 손민정 Computer Graphics Lab 이승용 교수님
이산수학(Discrete Mathematics)  술어와 한정기호 (Predicates and Quantifiers)
수치해석 ch3 환경공학과 김지숙.
케플러 법칙.
수학 2 학년 1 학기 문자와 식 > 미지수가 2개인 연립방정식 ( 3 / 4 ) 대입법으로 풀기.
Presentation transcript:

수치해석 (Numerical Analysis) 다변수 방정식과 함수 (Part 2) 문양세 강원대학교 IT대학 컴퓨터과학전공

We are now … 이차원 이분 격자(bisection grid)법 영점 곡선 추적 (Zero-Curve Tracking) Gradient Search 이차원 이분 격자(bisection grid)법 영점 곡선 추적 (Zero-Curve Tracking) 더욱 세밀한 이차원 이분 격자법 다차원 극값을 구하기 위한 경사도 탐색 (Gradient Search) 이차원 경사도 탐색법 수치 미분을 사용한 방법 가파른 경사법 (Steepest Descent)

들어가기 이전에 … 편미분(partial derivative)에 대한 기본적인 이해가 있어야 한다. Gradient Search 편미분(partial derivative)에 대한 기본적인 이해가 있어야 한다. 미분도 어려운데, 편미분이 머야? 편두통은 몰라도… 글고, my high school 시절에 편미분 배웠나? 대학에서 배운 거 같기는 한데… 뭐 더라?

편미분 기초 (1/3) Gradient Search 변수 x에 대한 함수 f(x,y)의 편미분 (partial derivative of f w.r.t. x)  y를 상수(constant)로 보고 f를 x에 대해 미분한다. 편미분 예제 (1/2)

편미분 기초 (2/3) Gradient Search 편미분 예제 (2/2)

편미분 기초 (3/3) 고차 편미분 (High order partial derivatives) 고차 편미분 예제 Gradient Search 고차 편미분 (High order partial derivatives) 고차 편미분 예제

다차원 극값의 특성 Gradient Search 극값과 차원 일차원: x 값을 변화시키면서 극값을 찾아나간다. 이차원: x 값과 함께 y 값도 변화시키면서 극값을 찾아나가야 한다. 연속인 함수 f(x,y)는 다음 조건 하에서 임계점(critical point)을 갖는다. (임계점이란, 극소값, 극대값, 변곡점을 통칭한다.) 상기 조건의 의미는 x축 관점에서도 기울기가 0이고, y축 관점에서도 기울기가 0이란 의미이다. (일차원의 경우, f(c) = 0이면 임계점을 가짐과 동일하다.)

We are now … 이차원 이분 격자(bisection grid)법 영점 곡선 추적 (Zero-Curve Tracking) Gradient Search 이차원 이분 격자(bisection grid)법 영점 곡선 추적 (Zero-Curve Tracking) 더욱 세밀한 이차원 이분 격자법 다차원 극값을 구하기 위한 경사도 탐색 (Gradient Search) 이차원 경사도 탐색법 수치 미분을 사용한 방법 가파른 경사법 (Steepest Descent)

Recall: 뉴튼법을 이용한 일차원 극소값 찾기 Gradient Search 함수 f(x)의 일차 도함수 f(x)의 성질을 이용한다. 1) f(a) < 0 이면, 감소하는 구간으로서 극소값은 a보다 더 오른쪽에 존재하고, 2) f(a) > 0 이면, 증가하는 구간으로서 극소값은 a보다 더 왼쪽에 존재한다. 따라서, 다음 식을 사용하여 xi를 반복 계산하여 극소값으로 수렴해 간다. 1) f(xi) < 0 이면, cf(xi)가 음수가 되어 xi+1 은 오른쪽으로 이동한다. 2) f(xi) > 0 이면, cf(xi)가 양수가 되어 xi+1 은 왼쪽으로 이동한다. 상수 c는 좌우로 움직이는 폭을 결정한다.

이차원 경사도 탐색법 개념 일차원 뉴튼법을 이차원으로 확장시킨다. 상수 c는 좌우 및 상하로 움직이는 폭을 결정한다. Gradient Search 일차원 뉴튼법을 이차원으로 확장시킨다. 1) 이면, 가 음수가 되어 xi+1 은 오른쪽으로 이동한다. 2) 이면, 가 양수가 되어 xi+1 은 왼쪽으로 이동한다. 3) 이면, 가 음수가 되어 yi+1 은 위쪽으로 이동한다. 4) 이면, 가 양수가 되어 yi+1 은 아래쪽으로 이동한다. 상수 c는 좌우 및 상하로 움직이는 폭을 결정한다.

Recall: 뉴튼법을 이용한 극소값 찾기 - 알고리즘 Gradient Search procedure newton-min(x1, c, e: real numbers) { x1 is an initial point.} { c is a constant for the Newton equation.} { e is an allowable error value.} i := 0; do i++; xi+1 := xi – cf(xi); while |xi+1 - xi| > e return xi+1;

이차원 경사도 탐색법 알고리즘 (1/2) Gradient Search procedure gradient-min(x1, y1, c, e: real numbers) { (x1, y1) is an initial point.} { c is a constant for the Newton equation.} { e is an allowable error value.} i := 0; do i++; xi+1 := xi – ; yi+1 := yi – ; while return (xi+1,yi+1);

이차원 경사도 탐색법 알고리즘 (2/2) 에러 의 의미 Gradient Search 에러 의 의미 극(소)값에 접하는 평면의 x 기울기( ) 및 y 기울기( )는 모두 0이 된다. 따라서, 상기 에러 값은 이들 기울기의 제곱 합에 대한 제곱근(Euclidean distance)를 나타낸다. 에러의 더더욱 많은 의미에 대해서는 다른 교재를 참조하세요…

이차원 경사도 탐색법 프로그램 (1/3) Gradient Search 대상 함수:

이차원 경사도 탐색법 프로그램 (2/3) Gradient Search

이차원 경사도 탐색법 프로그램 (3/3) 교재 p. 87 및 p. 91의 f(x,y)식에서 –y2는 +y2가 되어야 함 Gradient Search 교재 p. 87 및 p. 91의 f(x,y)식에서 –y2는 +y2가 되어야 함

이차원 경사도 탐색법 실행 결과 Gradient Search

안드로이드 프로그래밍 – 코드(일부)

안드로이드 프로그래밍 – 실행결과

We are now … 이차원 이분 격자(bisection grid)법 영점 곡선 추적 (Zero-Curve Tracking) Gradient Search 이차원 이분 격자(bisection grid)법 영점 곡선 추적 (Zero-Curve Tracking) 더욱 세밀한 이차원 이분 격자법 다차원 극값을 구하기 위한 경사도 탐색 (Gradient Search) 이차원 경사도 탐색법 수치 미분을 사용한 방법 가파른 경사법 (Steepest Descent)

수치 미분법의 동기 편미분을 구하기 어려운 방정식에 대해서, 편미분의 정의를 활용한다. Numeric Derivatives 편미분을 구하기 어려운 방정식에 대해서, 편미분의 정의를 활용한다. 상기 식에서 x 및 y에 대하여, 충분히 작은 상수 값 를 사용하여, 편미분의 근사값을 구하고, 이를 편미분 대신 사용한다.  근을 찾을 때, 뉴튼-랩슨 대신에 할선법을 사용한 개념과 동일하다.

수치 미분법의 개념 경사도 탐색법의 편미분 수식 대신에 다음 식과 같이 를 도입한다. Numeric Derivatives 경사도 탐색법의 편미분 수식 대신에 다음 식과 같이 를 도입한다. 상기 식에서 는 0에 가까운 충분히 작은 수이며, 상수 c는 좌우 및 상하로 움직이는 폭을 결정한다.

수치 미분법 알고리즘 procedure numeric-der(x1, y1, c, , e: real numbers) Numeric Derivatives procedure numeric-der(x1, y1, c, , e: real numbers) { (x1, y1) is an initial point.} { c is a constant for the Newton equation.} {  is the user-specified interval value.} { e is an allowable error value.} i := 0; do i++; xi+1 := xi – ; yi+1 := yi – ; while return (xi+1,yi+1);

수치 미분법 프로그램 (1/3) Numeric Derivatives 대상 함수:

수치 미분법 프로그램 (2/3) Numeric Derivatives

수치 미분법 프로그램 (3/3) Numeric Derivatives

수치 미분법 실행 결과 Numeric Derivatives 이차원 경사도 탐색법

안드로이드 프로그래밍 – 코드(일부)

안드로이드 프로그래밍 – 실행결과

다른 함수 예제 프로그램 (교재) Numeric Derivatives 대상 함수: 다음과 같이 함수 부분만 다름

다른 함수 예제 실행 결과 (교재) Numeric Derivatives

안드로이드 프로그래밍 – 코드 & 실행결과

We are now … 이차원 이분 격자(bisection grid)법 영점 곡선 추적 (Zero-Curve Tracking) Steepest Descent 이차원 이분 격자(bisection grid)법 영점 곡선 추적 (Zero-Curve Tracking) 더욱 세밀한 이차원 이분 격자법 다차원 극값을 구하기 위한 경사도 탐색 (Gradient Search) 이차원 경사도 탐색법 수치 미분을 사용한 방법 가파른 경사법 (Steepest Descent)

가파른 경사법 개념 경사도 탐색법에서는 일정한 비율로 경사를 탐색해 나가는 반면에, Steepest Descent 경사도 탐색법에서는 일정한 비율로 경사를 탐색해 나가는 반면에, 가파른 경사법에서는 경사가 급한 방향으로 탐색해 나간다. 자세한 개념, 유도 과정, 알고리즘은 생략한다.

Homework #2