Metode Bisection (Metode Bagi Dua) merupakan suatu metode numerik untuk menentukan tiitk nol f bila f kontinu. Metode bisection sangat sederhana akan tetapi dalam hal kekonvergenannya lambat. Metode ini didasarkan pada teorema nilai antara untuk fungsi kontinu, yaitu bahwa suatu selang [a, b] harus mengandung suatu titik nol f bila f(a) dan f(b) berlawanan tanda, misalnya f(a) < 0, f(b) > 0. Sehingga dapat disarankan untuk menggunakan metode pengulangan bisection selang dalam setiap langkah mengambil setengah selang yang juga memenuhi persyaratan tersebut.
Pada metode ini memerlukan dua nilai sebagai tebawakan awal, dapat disebut a dan b, a < b yang harus memenuhi f(a), f(b) < 0; selang (a, b) dibagi dua sama panjang, sebut titik tengahnya adalah Xi. Dua selang baru yang diperoleh adalah (a, Xi) dan (Xi, b) yang diana salah satu diantaranya pasti mengandung akar tersebut. Proses ini dapat diulangi dengan membagi dua selang tersebut dan memeriksa setengah selang yang mana yang mengandung akar dan dapat dilanjutkan sampai lebar selang yang ditinjau cukup kecil.
Penentuan setengah selang yang mengandung akar dilakukan dengan memeriksa tanda dari hasil hasil kali f(a), f(Xi) atau f(b), f(Xi). Ada 3 syarat f(a),f(Xi) yaitu:
- < 0, berarti akar pada (a, Xi)
- = 0, berarti akar = Xi
- > 0, berarti akar pada (Xi, b)
Dalam algoritma digunakan simbol sebagai berikut:
a Sebagai ujung kiri selang
b sebagai ujung kanan selang dan
Xi sebagai titik tengah.
A. Algoritma Metode Bisection (Metode Bagi Dua)
Masukan : f(x), a, b dan epsilon
Keluaran : akar
Langkah-Langkah:
- Xi = (a+b)/2
- Jika f(a),f(Xi) < 0 maka b = Xi, jika tidak a = Xi
- Jika b – a <= epsilon maka akar = Xi. Selesai
- Ulangi Kembagi ke langkah 1.
Karena metode ini selalu menghasilkan akar maka dikatakan bahwa metode ini selalu konvergen. Besarnya epsilon tergantung pada ketelitian yang diinginkan, semakin kecil epsilon maka semakin teliti hampiran akar yang diperoleh.
B. Contoh Soal
Terapkan metode bisection (metode bagi dua untuk menentukan salah satu akar dari persamaan f(x) = e^x -4x.
Penyelesaian:
Dengan menggunakan sofware Ms. Excel dapat diselesaikan dalam tabel berikut ini.
Iterasi | a | Xi | b | f(a) | f(Xi) | f(b) | e |
1 | 0 | 0,5 | 1 | 1 | -0,35128 | -1,28172 | |
2 | 0 | 0,25 | 0,5 | 1 | 0,284025 | -0,35128 | -1 |
3 | 0,25 | 0,375 | 0,5 | 0,284025 | -0,04501 | -0,35128 | 0,333333 |
4 | 0,25 | 0,3125 | 0,375 | 0,284025 | 0,116838 | -0,04501 | -0,2 |
5 | 0,3125 | 0,34375 | 0,375 | 0,116838 | 0,035226 | -0,04501 | 0,090909 |
6 | 0,34375 | 0,359375 | 0,375 | 0,035226 | -0,00507 | -0,04501 | 0,043478 |
7 | 0,34375 | 0,351563 | 0,359375 | 0,035226 | 0,015037 | -0,00507 | -0,02222 |
8 | 0,351563 | 0,355469 | 0,359375 | 0,015037 | 0,004974 | -0,00507 | 0,010989 |
9 | 0,355469 | 0,357422 | 0,359375 | 0,004974 | -4,9E-05 | -0,00507 | 0,005464 |
10 | 0,355469 | 0,356445 | 0,357422 | 0,004974 | 0,002462 | -4,9E-05 | -0,00274 |
11 | 0,356445 | 0,356934 | 0,357422 | 0,002462 | 0,001207 | -4,9E-05 | 0,001368 |
12 | 0,356934 | 0,357178 | 0,357422 | 0,001207 | 0,000579 | -4,9E-05 | 0,000684 |
13 | 0,357178 | 0,3573 | 0,357422 | 0,000579 | 0,000265 | -4,9E-05 | 0,000342 |
14 | 0,3573 | 0,357361 | 0,357422 | 0,000265 | 0,000108 | -4,9E-05 | 0,000171 |
15 | 0,357361 | 0,357391 | 0,357422 | 0,000108 | 2,98E-05 | -4,9E-05 | 8,54E-05 |
16 | 0,357391 | 0,357407 | 0,357422 | 2,98E-05 | -9,4E-06 | -4,9E-05 | 4,27E-05 |
17 | 0,357391 | 0,357399 | 0,357407 | 2,98E-05 | 1,02E-05 | -9,4E-06 |
-2,1E-05 |
Iterasi 1:
- Menentukan a, b, epsilon
a = 0
b = 1
epsilon = 0,00001
a= | 0 |
b= | 1 |
e= | 0,00001 |
- 2. Mencari nilai f(a), f(b), Xi, f(Xi)
- Karena a = 0 maka, masukan nilai a ke dalam persamaan. Yaitu f(x) = e^0-4(0). Dalam excel sebagai berikut:
- Begitupula dengan b = 1, untuk mencatri f(b) maka masukan nilai b ke dalam persamaan sehingga f(b) = e^1 – 4(1). Dalam hal ini:
- Mencari nilai Xi dengan menerapkan rumus dari metode bisection atau metode bagi dua yaitu nilai (a+b)/2 atau (0+1)/2=1/2=0,5. Dalam hal ini:
- Kemudian mencari nilai f(Xi) dengan memasukan nilai Xi ke dalam persamaan. Pencarian nilainya sama seperti ketika mencari nilai f(a) atau f(b). Dalam hal ini:
- Sehingga dari Iterasi 1 diperoleh:
Iterasi 2:
- Mencari nilai a yang baru dengan cara jika f(a)*f(b) < 0 maka nilai baru diperoleh dari a yang lama atau Xi yang lama. Dalam hal ini:
- Mencari nilai b yang baru dengan cara jika f(b)*f(Xi)<0 maka nilai baru diperoleh dari b yang lama atau Xi yang lama. Dalam hal ini:
- Mencari nilai Xi sama seperti sebelumnya dengan menggunakan rumus (a baru + b baru)/2 sehingga diperoleh (0+0.5)/2=0.25
- Mencari nilai f(a), f(b), f(Xi) sama seperti sebelumnya dengan cara memasukan nila a, b, Xi ke dalam persamaan.
- Mencari nilai error yaitu dengan rumus (Xi baru – Xi lama)/ Xi baru. Dalam hal ini (0,25 -0, 5)/0, 25 sedemikian sehingga dapat dilihat dalam syntax sebagai berikut:
Karena nilai error yang diperoleh dari -1 dan -1 belum mendekati nilai galat/epsilon maka dilakukan iterasi berikutnnya sampai nilai error yang diperoleh mendekati atau < 0,00001. Dalam hal ini pencarian akar sampai pada iterasi ke 17.
Dengan nilai error yang diperoleh adalah -2,1E-05 maka akarnya akan 0,357399 yang berhenti pada iterasi ke-17.
Jika masih belum dipahami anda dapat mengakses metode ini di Metode Bisection
Lebih banyak lagi yang terdapat di langit dan di bumi, Horatio, daripada yang kau mimpikan di dalam filosofimu.
(Hamlet)
Semoga Bermanfaat.