Download - bahan ajar pertemuan ke_2 metode numerik

Transcript
Page 1: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

Galat dalam Komputasi Numerik (Lanjutan)

• Notasi Ilmiah

• Titik Mengambang

• Galat dalam Komputasi Numerik

• Angka Signifikan

• Machine epsilon

• Satuan Pembulatan

• Pemangkasan dan Pembulatan

• Loss of significant error

• Perambatan Galat

James U.L. Mangobi Jurusan Matematika Unima 1

Page 2: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

Notasi Ilmiah (Scientific Notation)

• Cara baku untuk menyajikan bilangan real �disebut notasi ilmiah, dapat dinyatakan dalam

bentuk

� = ±� × 10�; 1 ≤ � ≤ 10.Dengan � disebut mantissa (mantis) dan disebut exponent (pangkat).

Contoh: 0.000342 = 3.42 × 10��

13.642 = 1.3642 × 10�

James U.L. Mangobi Jurusan Matematika Unima 2

Page 3: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

Titik Mengambang (Floating Point)

• Setiap bilangan � dalam sistem titik

mengambang direpresentasikan sebagai:

� = ± �� + ��� + ��

�� + ⋯ + �������� �� ,

0 ≤ �� ≤ � − 1; = 0, … , " − 1; # ≤ $ ≤ %dengan ���� ⋯ ���� disebut mantissa dan $disebut exponent.

James U.L. Mangobi Jurusan Matematika Unima 3

Page 4: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

� Base or radix

" Precision (the number of digits from

which a value is expressed).

[#, %] Exponent range

Contoh:

IEEE: Institute of Electrical and Electronics Engineers

James U.L. Mangobi Jurusan Matematika Unima 4

System ( " # %IEEE SP

IEEE DP

Cray

HP calculator

IBM mainframe

2

2

2

10

16

24

53

48

12

6

-126

-1,022

-16,383

-499

-64

-127

-1,023

-16,384

499

63

Page 5: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

Titik Mengambang Desimal

(Decimal Floating Point)

� = ) ∙ + ∙ 10� , ) = ±1; 1 ≤ + < 10; $ ∈ ℤ

Contoh:

503 = (1.66666 ⋯ )��∙ 10�

James U.L. Mangobi Jurusan Matematika Unima 5

Page 6: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

Titik Mengambang Normal

(Normalized Floating Point)

• Decimal Floating Point

• Binary Floating Point

James U.L. Mangobi Jurusan Matematika Unima 6

Page 7: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

• Decimal Floating Point:

� = ) ∙ + ∙ 10� , ) = ±1; 0.1 ≤ + < 1; $ ∈ ℤContoh:• 3.4108 = 0.34108 ∙ 10�• 13.642 = 0.13642 ∙ 10�

• Binary Floating Point:

� = ) ∙ + ∙ 2� , ) = ±1; 0.5 ≤ + < 1; $ ∈ ℤContoh:• 53/24 = 0.110101 = 0.1101 ∙ 2�• 1/10 = 0.000110011 = 0.1101 ∙ 2�4

James U.L. Mangobi Jurusan Matematika Unima 7

Page 8: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

IEEE Floating Point Standard

• Dengan presisi tunggal (single precision/SP),

suatu bilangan � dapat dituliskan dalam bentuk :

56 � = ) ∙ 1. 7�7� ⋯ 7�4 � ∙ 2�

Mantissa or Significand

+ = 1. 7�7� ⋯ 7�4 �; 1 ≤ + < 2

James U.L. Mangobi Jurusan Matematika Unima 8

Page 9: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

• Untuk memahami limit dari $ serta bilangan biner

yang dipilih untuk merepresentasikan + perlu

diketahui bagaimana bilangan � tersebut

disimpan dalam komputer

• Pada dasarnya ) disimpan sebagai 1 bit,

significand + dalam 23 bits, serta exponent $yang dapat berupa bilangan bulat positif atau

negatif menempati 8 bits sisanya.

James U.L. Mangobi Jurusan Matematika Unima 9

Page 10: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

• Dengan demikian, $ haruslah memenuhi

− 1111111 � ≤ $ ≤ 1111111 �−127 ≤ $ ≤ 127

Namun dalam prakteknya

−126 ≤ $ ≤ 127untuk alasan penyimpanan bilangan nol atau

takhingga.

James U.L. Mangobi Jurusan Matematika Unima 10

Page 11: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

Galat (kesalahan) dalam Proses Komputasi Numerik

• Kesalahan dapat terjadi akibat adanya

perbedaan antara bilangan � dan

representasinya dalam komputer, 56(�). • Kesalahan ini dapat dihindari, $9 = � − 56 � = 0,

bila � dapat direpresentasikan dalam komputer

tanpa mengubah apapun.

James U.L. Mangobi Jurusan Matematika Unima 11

Page 12: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

Definisi Galat (Error)

• Andaikan �: adalah nilai bilangan yang

sebenarnya dan �; adalah nilai hasil

representasinya, maka suatu kesalahan di �;dituliskan sebagai :

$<<=< �; = �: − �;dan kesalahan relatifnya dituliskan dalam bentuk:

<$6 �; = $<<=< �;�:

= �: − �;�:

= 1 − �;�:

James U.L. Mangobi Jurusan Matematika Unima 12

Page 13: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

Contoh:

Jika �: = > dan �; = �?@ , maka

$<<=< �?@ = $ − �?

@ = 0.003996dan

<$6 �?@ = 0.00147

James U.L. Mangobi Jurusan Matematika Unima 13

Page 14: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

Angka Signifikan (Significant Digit)

• Misalkan suatu hampiran bilangan � dinyatakan

sebagai:

�; = ±������ ⋯ ����. ������ ⋯ ��B

= ± C �D10D�

DE�BJika �D > 0 dan �G = 0 untuk H > I, maka digit-

digit �D , �D��, … , ��B dikatakan angka signifikan.

James U.L. Mangobi Jurusan Matematika Unima 14

Page 15: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

Contoh:

• Bilangan 25.047 memiliki 5 angka signifikan.

• Bilangan -0.00250 memiliki 3 angka signifikan.

• Bilangan 0.000068 memiliki 2 angka signifikan.

• Bilangan 0.100068 memiliki 6 angka signifikan.

James U.L. Mangobi Jurusan Matematika Unima 15

Page 16: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

• Misalkan � adalah nilai eksak. Hampiran �̅ untuk

�, dikatakan menghampiri � sampai I angka

signifikan jika I adalah bilangan bulat positif

terbesar yang memenuhi

$9̅� = � − �̅

� < 10�D2 .

Contoh:

� = 3.141592 dan �̅ = 3.14, maka

� − �̅� = 0.000507 ≈ 10�4

2Jadi, �̅ menghampiri � sampai 3 angka signifikan.

James U.L. Mangobi Jurusan Matematika Unima 16

Page 17: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

Contoh:

L = 1000000 dihampiri oleh LM = 999996, maka

L − LML = 0.000004 ≈ 10�N

2Jadi, LM menghampiri L sampai 5 angka signifikan.

Contoh:

O = 0.000012 dihampiri oleh O̅ = 0.000009, maka

O − O̅O = 0.25 ≈ 10��

2Jadi, hampiran O̅ tidak memiliki angka signifikan.

James U.L. Mangobi Jurusan Matematika Unima 17

Page 18: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

Machine Epsilon

• Andaikan L adalah bilangan terkecil yang lebih

dari 1 yang dapat direpresentasikan dalam suatu

komputer aritmatika, maka P = L − 1 disebut

machine epsilon.

• Ini digunakan sebagai ukuran akurasi untuk

merepresentasikan bilangan dalam komputer.

James U.L. Mangobi Jurusan Matematika Unima 18

Page 19: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

• Bilangan 1 memiliki representasi floating point

yang sederhana sebagai berikut :

1 = (1.000 ⋯ 0)�∙ 2�

• Bilangan terkecil yang > 1 adalah :

1 + 2��4 = (1.00 ⋯ 01)�∙ 2� > 1• Dengan demikian, machine epsilon dalam IEEE

floating point presisi tunggal adalah :

P = 2��4 = 1.19 ∙ 10�@

James U.L. Mangobi Jurusan Matematika Unima 19

Page 20: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

Satuan Pembulatan

• Andaikan Q > 0 adalah bilangan terkecil yang

dapat direpresentasikan dalam mesin komputer,

serta 1 + Q > 1 dalam aritmatika mesin.

• Untuk sembarang 0 < R < Q, maka hasil dari

1 + R = 1 dalam aritmatika mesin.

• Dengan demikian, dalam representasi floating

point pada mesin, R dapat diabaikan.

James U.L. Mangobi Jurusan Matematika Unima 20

Page 21: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

• Tidaklah sulit untuk menentukan besarnya Q.

Angka 1 memiliki representasi floating point

berikut :

1 = (1.000 ⋯ 0)�∙ 2�

• Bilangan terkecil yang dapat ditambahkan ke

angka 1 tanpa dapat diabaikan adalah :

1 + 2��4 = (1.00 ⋯ 01)�∙ 2� > 1

James U.L. Mangobi Jurusan Matematika Unima 21

Page 22: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

• Pada tahap ini perlu ditentukan apakah akan

digunakan aritmatika pemangkasan (chopping)

atau pembulatan (rounding).

• Dengan pemangkasan diperoleh:

Q = 2��4

• sedangkan dengan pembulatan diperoleh:

Q = 2���

James U.L. Mangobi Jurusan Matematika Unima 22

Page 23: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

Pemangkasan dan Pembulatan dalam Sistem Desimal

• Andaikan O adalah suatu bilangan desimal

dengan representasi dalam floating point seperti

berikut :

O = ) ∙ + ∙ 10� = ) ∙ 7�. 7� ⋯ 7� �� ∙ 10�

dengan 7� ≠ 0sehingga terdapat digit desimal

pada significand

+ = 7�. 7� ⋯ 7� ��

James U.L. Mangobi Jurusan Matematika Unima 23

Page 24: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

• Secara umum, bila diberikan suatu bilangan

� = ) ∙ 7�. 7� ⋯ 7� ⋯ �� ∙ 10� , 7� ≠ 0Penulisan � perlu dibuat lebih pendek agar muat

dalam komputer. Hal ini dapat dilakukan melalui

proses pemangkasan atau pembulatan.

• Bila dilakukan pemangkasan, maka representasi

floating point dari � adalah :

56 � = ) ∙ 7�. 7� ⋯ 7� �� ∙ 10� , 7� ≠ 0

James U.L. Mangobi Jurusan Matematika Unima 24

Page 25: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

• Bila dilakukan pembulatan, maka perlu

diputuskan pembulatan ke atas atau ke bawah.

• Formula yang sederhana adalah sebagai berikut:

56 � = T ) ∙ 7�. 7� ⋯ 7� �� ∙ 10� , 7�U� < 5) ∙ 7�. 7� ⋯ 7� �� + 0.0 ⋯ 1 �� ∙ 10� , 7�U� ≥ 5

James U.L. Mangobi Jurusan Matematika Unima 25

Page 26: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

Pemangkasan dan Pembulatan dalam Sistem Biner

• Andaikan

� = ) ∙ 1. 7� ⋯ 7� ⋯ � ∙ 2�

dengan 7� = 0atau 7� = 1, maka pemangkasan

yang dilakukan pada � menghasilkan bilangan

dalam floating point berikut :

56 � = ) ∙ 1. 7� ⋯ 7� � ∙ 2�

James U.L. Mangobi Jurusan Matematika Unima 26

Page 27: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

• Pembulatan ke atas atau ke bawah yang

dilakukan pada � menghasilkan bilangan dalam

floating point berikut :

56 � = T ) ∙ 1. 7� ⋯ 7� � ∙ 2� , 7�U� = 0) ∙ 1. 7� ⋯ 7� � + 0.0 ⋯ 1 � ∙ 2� , 7�U� = 1

James U.L. Mangobi Jurusan Matematika Unima 27

Page 28: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

Loss of Significant Error

• Kesalahan ini dapat terjadi sebagai akibat dari

keterbatasan kalkulator atau komputer yang kita

miliki.

• Sebagai contoh, didefinisikan fungsi berikut :

5 � = � W�<" � + 1 − W�<" �• Fungsi tersebut akan dievaluasi di kalkulator

dengan 6 digit desimal yang menggunakan

sistem aritmatika pembulatan.

James U.L. Mangobi Jurusan Matematika Unima 28

Page 29: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

• Hasilnya diberikan pada tabel berikut :

James U.L. Mangobi Jurusan Matematika Unima 29

X Computed Y(X) True Y(X)1

10

100

1000

10000

100000

.414210

1.54340

4.99000

15.8000

50.0000

100.000

.414214

1.54347

4.98756

15.8074

49.9988

158.113

Page 30: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

Contoh:

• Penyelesaian persamaan �� − 26� + 1 = 0adalah

�:(�) = 13 + W�<" 168 ,

�:(�) = 13 − W�<" 168

dengan W�<"(168) = 12.961 (benar sampai 5

digit). Ini berarti:

W�<" 168 − 12.961 ≤ .0005

James U.L. Mangobi Jurusan Matematika Unima 30

Page 31: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

• selanjutnya, didefinisikan:

�;(�) = 13 + 12.961 = 25.961,�;

(�) = 13 − 12.961 = .039• Untuk kedua akar persamaan tersebut berlaku:

�: − �; ≤ .0005• Namun demikian, kesalahan relatifnya:

Z$6 �;(�) ≤ .0005

25.9605 = 3.13 × 10�N

Z$6 �;(�) ≤ .0005

.0385 = .0130James U.L. Mangobi Jurusan Matematika Unima 31

Page 32: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

• Ini dapat terjadi karena loss of significant error

pada proses perhitungannya yang dapat

diperkecil dengan mengambil :

�;(�) = 1

13 + W�<"(168) = 125.961

• Bila suatu bilangan dikurangi dengan bilangan

yang hampir sama, akan terjadi loss of significant

error pada proses perhitungannya.

James U.L. Mangobi Jurusan Matematika Unima 32

Page 33: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

Perambatan (Propagasi) Galat

• Evaluasi suatu fungsi 5(�) pada mesin seringkali

tidak menghasilkan 5(�) melainkan suatu nilai

hampirannya, 5[(�)• Kemudian andaikan, �; ≈ �: , maka untuk

mengevaluasi 5(�:), bisa jadi kita menghitung

5[(�;).• Dengan demikian terjadi kesalahan sebesar :

5 �: − 5[ �; = 5 �: − 5 �; + 5 �; − 5[ �;

James U.L. Mangobi Jurusan Matematika Unima 33

Page 34: bahan ajar pertemuan ke_2 metode numerik

1. Galat dalam Komputasi Numerik

• Besaran 5 �; − 5[ �; biasanya disebut noise,

sedangkan besaran 5 �: − 5 �; disebut

kesalahan karena propagasi.

• Bila 5 adalah fungsi yang mempunyai turunan,

maka dengan menggunakan teorema nilai

tengah diperoleh :

5 �: − 5 �; = 5\ ] (�: − �;)• Atau karena ] terletak di antara �: dan �;,

sedangkan �: sedemikian dekat dengan �;,

maka :

5 �: − 5 �; ≈ 5\ �: (�: − �;)James U.L. Mangobi Jurusan Matematika Unima 34