컴퓨터공학/수치해석

[수치해석] Ch3_1. Approximations and Round-Off Errors

NIMHO 2022. 10. 4. 13:49
728x90

복습하기 위해 학부 수업 내용을 필기한 내용입니다.
이해를 제대로 하지 못하고 정리한 경우 틀린 내용이 있을 수 있습니다.
그러한 부분에 대해서는 알려주시면 정말 감사하겠습니다.

해석적 문제 해결 (Analytical Solution)

 

수치해석적 문제 해결 (Numerical Solution)

 

해석적 방법 vs 수치해석적 방법

해석적 값은 주어진 식에 대입해서 값이 정확하다.

수치해석적 값은 컴퓨터가 계산하기 편하도록 식을 줘서, 값이 정확하지 않다. (근사)

 

해석적 방법에 비해 수치해석적 방법은 대부분 오차(Error)가 발생한다.

Round-Off Error, Truncation Error 두 가지의 오차가 있다.

수치해석은 오차와의 전쟁이다. (어떻게 오차를 줄일지 생각)

 

Round-Off Error는 컴퓨터가 제한된 숫자의 양만 나타낼 수 있기 때문이다.
컴퓨터는 유한한 크기(길이)의 숫자 표현(bit) 방식을 가진다.
작은 정수면 괜찮지만, 긴 실수라면 모두 표현하기 힘들다.
이때 작은 부분을 표현할 수 없어져, 오차가 발생한다.

 

Truncation Error는 정확한 수학적 연산과 양을 나타내기 위해 수치 방법이 근사치를 사용하면서 생긴 불일치이다.
즉, 정확한 값이 아닌, 근사법을 이용해 계산해서 발생하는 오차이다.
컴퓨터는 정확한 수식을 사용하지 않고, 편한 수식을 고르기 때문이다.
728x90

Significant Digits

숫자의 Significant Digits는 자신 있게 사용할 수 있는 숫자이다. 

이 값은 특정 숫자에 추정 숫자 하나를 더한 숫자에 해당한다.

     → 확실한 숫자 + 1개의 추정치 = 유효숫자  

예를 들어, 아래 그림의 속도계와 주행 기록계는 각각 3과 7개의 significant한 수치를 산출한다.

 

Significant figures for Zero

0은 소수점을 찾는 데만 필요할 수 있기 때문에 항상 significant한 수치는 아니다. 

0.00001845, 0.0001845, 0.001845는 모두 4개의 significant한 숫자를 가지고 있다.

후행 0이 큰 숫자로 사용될 때, 0 중 몇 개가 중요한지는 명확하지 않다. 

    → 뒤에 오는 0은 애매하다.

예를 들어, 액면가 45,300이라는 숫자는 0을 확실히 알고 있는지에 따라 3, 4, 5개의 significant한 숫자를 가질 수 있다.

4.53 × 10^4, 4.530 × 10^4, 4.5300 × 10^4는 각각 3, 4, 5개의 significant한 숫자를 가질 수 있다.

Two important implications of significant figures

1. 수치 방법은 대략적인 결과를 산출한다. 

이것을 하는 한 가지 방법은 significant한 숫자의 측면에서이다. 
예를 들어, 근사치가 4개의 significant한 수치에 맞으면 허용 가능하다고 결정할 수 있다.


2. pie, e, root(7)은 특정 수량을 나타내므로, 한정된 자릿수로 정확하게 표현할 수 없다. 

컴퓨터는 한정된 수의 중요한 숫자만 가지고 있기 때문에, 그러한 숫자는 결코 정확하게 표현될 수 없다. 

나머지 significant한 수치가 누락된 것을 Round-Off Error라고 한다.

 

Error Definitions

 

Approximation Error

실제 응용 프로그램에서 우리는 분명히 선험적으로 진정한 답을 알지 못할 것이다. 
대안은 실제 값의 최선의 추정치, 즉 근사치 자체에 대한 추정치를 사용하여 오류를 정규화하는 것이다.

다음 기준을 충족하면 결과가 적어도 n개의 significant한 수치까지 정확하다는 것을 확신할 수 있음을 보여줄 수 있다.(Scarborough, 1966)

728x90