DeretTaylor dananalisisgalat Kuliah ke-2 IF4058 Topik Khusus Informatika I Oleh; Rinaldi MunirIF-STEI ITB) 1
DeretTaylor Kakastools) yang sangat penting dalam metode numerik adalah derettaylor. Deret Taylor adalah kakas yang utama untuk menurunkan suatu metode numerik. Dere Taylor berguna untuk menghampiri fungsi ke dalam bentuk polinom Fungsi yang rumit menjadi sederhana dengan deret Taylor 2
Definisi Deret Taylor Andaikanfdansemuaturunannya, f,f, f,..., menerusdi dalamselang[a, b]. Misalkan 0 [a, b], makauntuknilainilaidisekitar 0 Gambar2.1) dan [a, b], f) dapat diperluasdiekspansi) ke dalam deret Taylor: f 2 3 m 0) 0) 0) 0) m) ) = f 0 ) f ' 0) f " 0) f ''' 0)... f )... 1! 2! 3! m! 0 Misalkan- 0 = h, maka: 0 f 2 h h h h m) ) = f 0 ) f ' 0 ) f " 0 ) f ''' 0 )... f )... 1! 2! 3! m! 0 3 3
Contoh1: Hampirifungsif) = sin) kedalamderettaylor di sekitar 0 = 1. Penyelesaian: f) = sin), f ) = cos), f ) = -sin), f ) = -cos), f 4) ) = sin), 2 1) 1) 1) 1) sin ) = sin1) cos1) sin1)) cos1)) sin1)... 1! 2! 3! 4! Biladimisalkan 1 = h, maka, 2 h sin ) = sin1) hcos1) sin1)) 2 = 0.8415 0.5403h-0.4208h 2-0.0901h 3 0.0351h 4... h 6 3 3 4 h cos1)) sin1)... 24 4 4
Kasuskhusus: jika 0 = 0, makaderetnyadinamakan deret Maclaurin, yang merupakan deret Taylor baku. Contoh2: sin), e, cos) danln 1) masingmasing dalam deret Maclaurin 2 3 4 0) 0) 0) 0) sin ) = sin0) cos0) sin0)) cos0)) sin0)... 1! 2! 3! 4! 3 = 3! 5... 5! e 2 3 4 0) 0) 0) 0) 0) 0) 0) 0) 0) = e e e e e 1! 2! 3! 4! = 1 2 2! 3 3! 4... 4!... 5
0) 0) 1) 0 1! 0) 1) 0 ln 1) ln 3 2 1 =... 6! 4! 2! 1 ) cos 6 4 2 =... ) 1) 60 4! 0) 1) 20 3! 0) ) 1) 0 2! 0) 4 4 3 2... 4 3 2 4 3 2 = 6
Karena suku-suku deret Taylor tidak berhingga banyaknya, maka-untukalasanpraktis-derettaylor dipotongsampaisukuordetertentu. Deret Taylor yang dipotong sampai suku orde ke-n dinamakan deret Taylor terpotong dan dinyatakan oleh: 2 0) 0) 0) n) f ) f 0) f ' 0) f " 0)... f 0) Rn ) 1! 2! n! n R n ) = n 1) 0) n 1) f c), n 1)! 0 < c< Galat/residu/sisa 7
DeretTaylor terpotongdisekitar 0 = 0 disebutderet Maclaurin terpotong. Contoh 3: sin) = - 3 /3! 5 /5! R 5 ); e = 1 2 /2! 3 /3! 4 /4! R 4 ); cos) = 1-2 /4! 4 /6!- 6 /6! R 6 ); ln1) = - 2 /2 3 /3-4 /4; R 4 ); yang dalamhalini, 0 < c<. R 5 ) = cos c) 6! R 6 c R4 ) = e 5! 7 R 6 ) = cos c ) 7! 5 5 ) = c 1) 4 5 5! 8
Contoh 4: Hitung hampiran nilai cos0.2) = Jawab: cos0.2) 1-0.2 2 /2 0.2 4 /24-0.2 6 /720 = 0.9800667 9
AnalisisGalat Solusi dengan metode numerik adalah solusi hampiranaproksimasi) Hampiran terhadap solusi eksak Oleh karena itu, solusi numerik mengandung galat. Galat ε): perbedaan antara solusi hampiran dengan solusi eksak. Definisi: ε = a aˆ Galat mutlak: ε = a aˆ 10
ε ε Galat relatif: ε R = atau ε R = 100% a a Galatrelatifhampiran: ε ε RA = aˆ Contoh 5: Misalkan nilai sejati = 10/3 dan nilai hampiran = 3.333. Hitunglah galat, galat mutlak, galat relatif, dan galatrelatifhampiran. Penyelesaian: galat= 10/3 3.333 = 10/3 3333/1000 = 1/3000 = 0.000333 galat mutlak = 0.000333 = 0.000333 galat relatif = 1/3000)/10/3) = 1/1000 = 0.0001 galat relatif hampiran = 1/3000)/3.333 = 1/9999 11
Sumber utama galat: 1. Galat pemotongantruncation error) 2. Galat pembulatanround-off error) Galat pemotongan: galat yang ditimbulkan akibat penggunaanhampiransebagaipenggantiformula eksak Contoh: hampiran cos) dengan deret McLaurin: cos ) 2 4 1... 142! 424! 4443 6! 18! 44243 10! 4 nilai hampiran 6 8 pemotongan 10 galat pemotongan 12
Galat pembulatan: galat yang timbul akibat keterbatasan komputer dalam merepresentasikan bilanganriil. Contoh 6: 1/6 = 0.1666666666, dalam mesin dengan6-digit direpresentasikansebagai0.166667. Galat pembulatan = 1/6 0.166667 = -0.000000333. Contohdalamsistembinermisalnya1/10 = 0.00011001100110011001100110011 2 direpresentasikan di dalam komputer dalam jumlah bit yang terbatas. 13
Representasi bilangan riil di dalam komputer: 1. Bilangan titik-tetapfied-point) Setiap bilangan riil disajikan dengan jumlah tempat desimal yang tetap Contoh: 62.358, 0.013, 1.000. 2. Bilangan titik-kambangfloating-point) Setiapbilanganriildisajikandenganjumlahdigit berarti yang sudah tetap Contoh: 0.6238 10 3, 0.1714 10-13 14
Angka Benasignifikan) Angkabenaadalahangkabermakna, angkapenting, atau angka yang dapat digunakan dengan pasti Contoh: 43.123 memiliki5 angkabenayaitu4, 3, 1, 2, 3) 0.1764 memiliki4 angkabenayaitu1, 7, 6, 4) 0.0000012 memiliki 2 angka benayaitu 1, 2) 278.300 memiliki6 angkabenayaitu2, 7, 8, 3, 0, 0) 270.0090 memiliki7 angkabenayaitu2, 7, 0, 0, 0, 9, 0) 0.0090 memiliki 2 angka benayaitu 9, 0) 1360, 1.360, 0.001360 semuanya memiliki 4 angka bena 15
Komputer hanya menyimpan sejumlah tertentuangkabena. Bilangan riil yang jumlah angka benanya melebihi jumlah angka bena komputer akan disimpan dalam sejumlah angka bena komputer itu. Pengabaianangkabenasisanyaitulahyang menimbulkangalatpembulatan. 16
Galat total: adalah galat akhir pada solusi numerik merupakan jumlah galat pemotongan dan galat pembulatan. Contoh7: cos0.2) 1-0.2 2 /2 0.2 4 /24 0.9800667 galat galat pemotongan pembulatan Pada contoh di atas, galat pemotongan timbul karena kitamenghampiricos0.2) sampaisukuordeempat, sedangkan galat pembulatan timbul karena kita membulatkannilaihampirankedalam7 digit bena. 17
Bilangan Titik-Kambang Bilangan riil di dalam komputer umumnya disajikan dalam format bilangan titik-kambang Bilangan titik-kambang a ditulis sebagai a = ±m B p = ±0.d 1 d 2 d 3 d 4 d 5 d 6...d n B p m= mantisariil), d 1 d 2 d 3 d 4 d 5 d 6...d n adalahdigit mantisa. B= basis sistembilanganyang dipakai2, 8, 10, 16, dsb) p= pangkatberupabilanganbulat), dari P min sampaip maks Contoh: 245.7654 0.2457654 10 3 18
Bilangan Titik-Kambang Ternormalisasi Syarat: digit mantis yang pertama tidak boleh 0 a= ±m B p = ±0.d 1 d 2 d 3 d 4 d 5 d 6...d n B p 1 d 1 b -1 dan0 d k B-1 untukk> 1. Padasistemdesimal, 1 d 1 9 dan 0 d k 9, sedangkanpadasistembiner, d 1 =1dan0 d k 1. Contoh8:0.0563 10-3 0.563 10-4, 0.00023270 10 6 0.23270 10 3. 19
Pembulatan pada Bilangan Titik-Kambang Bilangan riil di dalam komputer mempunyai rentang nilai yang terbatas. Bilangan titik-kambang yang tidak dapat mencocoki satudarinilai-nilaididalamrentangnilaiyang tersedia, dibulatkan ke salah satu nilai di dalam rentang. Galat yang timbul akibat penghampiran tersebut diacu sebagai galat pembulatan. Ada dua teknik pembulatan yang lazim dipakai oleh komputer, yaitu pemenggalanchopping) dan pembulatankedigitterdekatin-rounding). 20
Pemenggalanchopping) Misalkan a= ±0.d 1 d 2 d 3... d n d n1... 10 p fl chop a) = ±0.d 1 d 2 d 3... d n-1 d n 10 p Contoh: π= 0.31459265358... 10 0 fl chop π) = 0.3141592 10 0 6 digit mantis) Galat= 0.00000065... 21
Pembulatan ke digit terdekatin-rounding) Misalkana= ±0.d 1 d 2 d 3... d n d n1... 10 p fl round a) = ±. d d d... 10 p 0 1 2 3 ˆ d n dˆn = d n d n 1 d n d n 1, jika d n 1, jika d, jika d, jika d n 1 n 1 n 1 < 5 > 5 = 5 dan = 5 dan n genap n ganjil 22
Contoh9: a= 0.5682785715287 10-4 : di dalam komputer 7 digit dibulatkan menjadi fl round a) = 0.5682786 10-4 di dalam komputer 8 digit dibulatkan menjadi fl round a) = 0.56827857 10-4 di dalam komputer 6 digit dibulatkan menjadi fl round a) = 0.568278 10-4 di dalam komputer 9 digit dibulatkan menjadi fl round a) = 0.568278572 10-4 23
Aritmetika Bilangan Titik-Kambang Kasus1: Penjumlahantermasukpengurangan) bilangan yang sangat kecil keatau dari) bilangan yang lebih besar menyebabkan timbulnya galat pembulatan. Contoh 10: Misalkan digunakan komputer dengan mantis 4 digit basis 10). Hitunglah 1.557 0.04381 = 0.1557 10 1 0.4381 10-1 24
Penyelesaian: 0.1557 10 1 = 0.1557 10 1 0.4381 10-1 = 0.004381 10 1 = 0.160081 10 1 in-rounding 0.1601 10 1 chopping 0.1600 10 1 Galatpembulatan = 0.160081 10 1 ) -0.1601 10 1 ) = 0.000019 Galatpemenggalan= 0.160081 10 1 ) -0.1600 10 1 ) = 0.000081 25
Tips: untuk menjumlahkan deret bilangan, selalu jumlahkan dari yang kecil-kecil lebih dahulu, baru menjumlahkan dengan bulangan yang lebih besar 10000 Contoh: = 1.0 0.00001 = 1.0 i= 1 014.00001 444 0.00001 44 24 44444... 0.00001 3 10000 kali Jumlahkan dulu 0.00001 sebanyak 1000 kali, baru jumlahkandengan1.0 26
Kasus2: Penguranganduabuahbilanganyang hampirsamabesarnearly equal). Biladuabilangantitik-kambangdikurangkan, hasilnya mungkin mengandung nol pada posisi digit mantis yang paling berartiposisidigit paling kiri). Keadaan ini dinamakan kehilangan angka bena loss of significance). Baik pemenggalan maupun pembulatan ke digit terdekat menghasilkan jawaban yang sama. 27
Contoh11: Kurangi0.56780 10 5 dengan0.56430 10 5 5 angkabena) Penyelesaian: 0.56780 10 5 0.56430 10 5 0.00350 10 5 normalisasi: 0.350 10 3 in-rounding 0.350 10 3 chopping 0.350 10 3 3 angka bena) Hasil yang diperoleh hanya mempunyai 3 angka bena. Jadi kita kehilangan 2 buah angka bena 28
Contoh 12: Kurangi 3.1415926536 dengan 3.1415957341 11 angka bena). Penyelesaian: 3.1415926536 = 0.31415926536 10 1 3.1415957341 = 0.31415957341 10 1 - -0.30805 10-5 5 angkabena) in-rounding -0.30805 10-5 chopping -0.30805 10-5 Jadi, kita kehilangan 6 angka bena!. 29
Contoh13. Diberikan f ) = 1. ) Hitunglahf500) denganmenggunakan6 angkabenadanpembulatankedigit terdekat. Penyelesaian: f 500) = 500 501 500) = 50022.3830-22.3607) = 5000.0223) = 11.15 empatangkabena) solusi eksaknya adalah 11.174755300747198..) Hasil yang tidak akurat ini disebabkan adanya operasi pengurangan dua bilangan yang hampir sama besar, yaitu 22.3830-22.3607. 30
Cara komputasi yang lebih baik: ) 1 ) f = ) 1 ) 1 ) 1 = ] ) 1) [ 2 2 = 31 ) 1 ] ) 1) [ = ) 1 p = = = = 500 501 500 500) p 1748 11. 22.3607 22.3830 500 =
Soal Latihan. Carilah cara yang lebih baik untuk menghitung: i) f) = - sin))/tan) untuk mendekati nol ii) f) = - 2 -a) untukyang jauhlebih besardaria iii) f) = cos 2 )-sin 2 ) untukdisekitar π/4 iv) f) = log 1) -log) untukyang besar v)1 α) 1/2-1, α 0.01 sampaienamangkabena vi) sinα ) -sinα) untukyang kecil vii)a ) n -a n untukyang kecil viii) 3-3 2 ) 3) -1 untuk= 2.72 i) 1 cos)/2 untuk π/4 32
Kondisi BurukIll Conditioned) Suatupersoalandikatakanberkondisiburukill conditioned) bila jawabannya sangat peka terhadap perubahan kecil data misalnya perubahan kecil akibatpembulatan). Ciri-ciri: Bila kita mengubah sedikit data, maka jawabannyaberubahsangatbesardrastis). Lawan dari berkondisi buruk adalah berkondisi baik well conditioned). Suatu persoalan dikatakan berkondisi baik bila perubahan kecil data hanya mengakibatkan perubahankecilpadajawabannya. 33
Contoh: persoalan menghitung akar persamaan kuadrata 2 b c = 0denganmengubahnilaic i) 2-4 3.999= 0 1 = 2.032 dan 2 = 1.968 ii) 2-4 4.000= 0 1 = 2 = 2.000 iii) 2-4 4.001= 0 akar-akarnyaimajiner! Kesimpulan: persoalan akar-akar persamaan kuadrat di atas berkondisi buruk 34
Kapankahakarpersamaanf) = 0 berkondisiburuk? Misalkan f) diubah sebesar ε sehingga akarnya berubah sebesar h: f h) ε = 0 Bila karena pengubahan ε yang sangat kecil mengakibatkan h menjadi besar, dikatakan persoalan mencari akar f) = 0 berkondisi buruk 35
Contoh lain: persoalan mencari mencari solusi sistem persamaan lanjar i) y = 2 0.9999y= 1.9999 Solusi: = y= 1.0000 ii) y = 2 0.9999y = 2.0010 iii) y = 2 Solusi: = 12, y= -10 y= 1.9999 Solusi: tidak ada iv) y = 2 y = 2 Solusi: tidakberhingga, yaitudisepanjanggaris y= 2 36
f) f h 2 ) ε 2 f h 1 ) ε 1 c 37