metode ini dapat dipahami sebagi salah satu metode matematika untuk menyelesaikan persamaan atau kumpulan persamaan, dengan cara memasukkan nilai tebakan awal, lalu dilakukan pendekatan sampai nilai tersebut konvergen, pendekatan tersebut dilakukan sampai nilai error sesuai atau lebih kecil dari yang kita inginkan, karena komputer saat ini sudah berkecepatan tinggi, memasukkan nilai error sampai 0.00001 pun tidak akan menjadi kesulitan. kondisi error lebih kecil dari pada yang kita inginkan disebut konvergen.
misalnya pada permasalahan mencari akar persamaan, perhitungan secara exact dapat dilakukan dengan memakai metode eliminasi gaus, misalnya pada Ax+b=0, namun pada persamaan non linier, metode iterative sangat banyak digunakan, karena persamaan, suku pangkat sangat susah untuk diselesaikan secara exact.
ada beberapa metode iterative yang biasa dipakai antara lain :
1. Metode newton raphson
2. Metode Secant
3. Metode Bisection
4. Metode False Position
sebenarnya masih banyak metode lain yang lebih rumit dan memusingkan, saya sebut metode advance, misalnya :
1. Newton Krylov
2. Arnoldi Iteration
3. Jacobi Method
penjelasan singkatnya adalah sebagai berikut
1. Metode Newton Raphson
saya sudah mencoba membuat alogaritma dan pemogramannya menjadi sebuah fungsi di visual basic, silahkan check di http://bloghasnan.blogspot.com/2012/03/pemograman-newton-rapshon-sebagai.html, kelemahan dari program yang saya buat tersebut adalah, harus memasukkan fungsi secara manual, sehingga bila terdapat fungsi lain, kita harus menuliskannya dahulu ke syntax code. metode ini ditemukan oleh Isaac Newton dan Joseph Raphson, metode ini dapat mencari nilai pendekatan dari akar persamaan sama dengan nol.
newton raphson untuk satu fariable dapat dijelaskan sebagai berikut
misalnya diketahui sebuah fungsi f(x)=0 (garis biru), tebakan pertama (x1) menghasilkan slope (garis merah), pada titik perpotongan dengan sumbu maka didapatkan nilai x2 yang lebih mendekati, nilai x2 didapatkan dari nilai x1 dikurangi f(x)/f'(x), dari nilai x2 dihitung nilai f(x) lalu didapatkan slope yang lebih mendekati, dan seterusnya sampai pendekatan tersebut mendekati nol, seberapa dekat?? semampu komputer menghitung saya rasa.
Definisi dari turunan f'(x) sebuah fungsi f(x) adalah
sehingga nilai xn adalah
2. Metode Secant
metode ini dikembangkan terpisah dari newton, namun secara prinsip metode secant adalah metode untuk menentukan akar-akar persamaan yang sering disebut sebagai pendekatan finite different dari metode newton-raphson, untuk lebih jelasnya perhatikan gambar berikut ini
sesuai pada gambar diatas, untuk menebak nilai yang mendekati f(x) maka dibutuhkan dua buah tebakan, yaitu x0 dan x1, lalu didapatkan nilai x2, rumus untuk menghitung nilai x ke n untuk metode secant adalah
3. Metode Bisection
metode ini adalah metode pencarian akar persamaan dengan cara membelah suatu fungsi dalam interval tertentu, lalu interval tersebut diperkecil, secara berurutan sampai didapatkan nilai x yang mendekati f(x)=0, secara grafis dapat dilihat pada gambar dibawah berikut
analisis intervalnya
alogaritmanya adalah :
INPUT: Function f, endpoint values a, b, tolerance TOL, maximum iterations NMAX CONDITIONS: a < b, either f(a) < 0 and f(b) > 0 or f(a) > 0 and f(b) < 0 OUTPUT: value which differs from a root of f(x)=0 by less than TOL N ← 1 While N ≤ NMAX { limit iterations to prevent infinite loop c ← (a + b)/2 new midpoint If (f(c) = 0 or (b – a)/2 < TOL then { solution found Output(c) Stop } N ← N + 1 increment step counter If sign(f(c)) = sign(f(a)) then a ← c else b ← c new interval } Output("Method failed.") max number of steps exceeded
(Burden, Richard L.; Faires, J. Douglas (1985), "2.1 The Bisection Algorithm", Numerical Analysis (3rd ed.), PWS Publishers)
4. False Position
metode ini sering disebut juga dengan regula falsi yaitu metode untuk mencari akar persamaan dengan cara menebak x lalu fungsi akan mengembalikan dengan arah berlawanan, proses tersebut diulang sampai didapatkan nilai f(x) dengan error mendekati nol
metode manakah yang lebih effisien, lebih cepat melakukan perhitungan? sepertinya perlu dibuat programnya satu per satu lalu dibandingkan hasilnya, ada yang mau bantu?
Referensi
1. iterative for optimization : www.caam.rice.edu/~zhang/caam554/KelleyBooks/fr18_book.pdf
2. Iterative for linier and non linier system : www.caam.rice.edu/~zhang/caam454/KelleyBooks/fr16_book.pdf
3. Iterative Solution Methods : Oleh Owe Axelsson
4. Solving nonlinear equations with Newton's method Oleh C. T. Kelle
5. Numerical analysis oleh Richard L. Burden, J. Douglas Faires
6. Computer solution of large linear systems Oleh Gérard Meurant
Aknowledment
Many thanks to Google books.
13 comments:
mas hasnan.. yang arnoldi iteration saya baru tau nih.. kira2 bedanya dgn yg lain apa ya?
terima kasih
metodenya menggunakan tebakan matrix, lebih lengkapnya silahkan berkunjung ke sini nie : http://en.wikipedia.org/wiki/Arnoldi_iteration
Mas hasnan, apa bedanya metode yang biasa kita kenal dengan metode advance yang ada di postingan mas hasnan?? Itu lebih bagus yang mana? hasilnya sama??
salam,
arandityonarutomo.blogspot.com
Mas Hasnan, keep posting ya..
bagus-bagus ya isi blognya..
semangat..
Mas dari banyak metode diatas kira2 tingkat keerroran yang kecil yang mana ya?
bang rantot: maksud advance sebenarnya ada dua disini: 1 karena metode itu diturunkan dari metode yang sudah ada, 2. karena saya juga baru tahu ada metode lain, heheheheh
@helmi : kalau semuanya ga tahu saya hel, berdasarkan program yang sudah dibuat bisection dan newton, hasilnya bagusan newton, tapi ko newton salah prediksi juga lebih ancur seh..heheh
@enggar : thanks...yang cfd blum sempet ngepost jadinya
ohh ada metoda advance.. baru tw jg saya,hee thq mas postingnya =D
Blog Mas Hasnan keren...
Isi blognya bagus dan lengkap termasuk yang satu ini...
Keep posting Mas, Semangat!
Visit my blog
mhs.blog.ui.ac.id/daniel81 :D
wahh zuppa!!
postingannya mas hasnan bagus-bagus deh..
jadi tertarik liat postingan yang lain.hehee
setelah membaca posting mas, saya menjadi lebih memahami konsep awal dari setiap metode-metode tersebut. Yang mau saya tanyakan mas, ada ga sih cara untuk menentukan tebakan nilai awal pada metode Bisecant, nilai a dan b nya. Karena saya pernah baca kalo nilai tebakan awalnya jauh, maka hasilnya akan divergen. Mohon pencerahannya yah mas. Thx :-)
kalaw matode jacobi sama arnoldi itu gmn mas?
tengkyu
mas hasnan, izin share ya. bagus sekali postingannya. terima kasih
@irawan :senin aja ya kita bahas
Post a Comment