Iterasi adalah suatu pendekatan berulang atau proses berulang yang digunakan untuk mendekati solusi matematis tertentu, terutama dalam konteks mencari akar persamaan atau nilai-nilai lainnya. Proses ini seringkali melibatkan pengulangan langkah-langkah tertentu untuk mendekati solusi yang diinginkan.
Contoh sederhana dapat diilustrasikan dengan metode Newton-Raphson, sebuah teknik iteratif umum untuk mencari akar persamaan. Misal terdapat persamaan matematis yang kompleks dan sulit dipecahkan secara langsung. Dengan menggunakan iterasi, nilai yang paling mendekati solusi/penyelesaian dapat dicari. Umumnya, iterasi menggunakan pendekatan berikut:
Misalkan ketika ingin mencari akar dari persamaan \(f(x) = x^2 - 9\), yang berarti akan dicari nilai \(x\) yang membuat \(x^2 - 9 = 0\). Mari lakukan iterasi dengan metode Newton-Raphson.
Dengan menggunakan iterasi, kita dapat mendekati nilai akar persamaan secara sistematis tanpa harus mengandalkan solusi analitis yang mungkin sulit atau tidak mungkin ditemukan.
# Fungsi untuk menghitung nilai fungsi
f <- function(x) {
return(x^2 - 9)
}
# Fungsi untuk menghitung turunan fungsi
df <- function(x) {
return(2 * x)
}
# Metode Newton-Raphson untuk mencari akar persamaan
newton_raphson <- function(guess, tol = 1e-6, max_iter = 100) {
x <- guess
iter <- 0
while (iter < max_iter) {
# Perbarui tebakan menggunakan rumus Newton-Raphson
x_new <- x - f(x) / df(x)
# Periksa konvergensi
if (abs(x_new - x) < tol) {
cat("Iterasi konvergen setelah", iter, "langkah.\n")
return(x_new)
}
# Perbarui nilai tebakan untuk iterasi selanjutnya
x <- x_new
iter <- iter + 1
}
# Jika mencapai batas iterasi maksimum tanpa konvergensi
cat("Iterasi tidak konvergen setelah", max_iter, "langkah.\n")
return(NULL)
}
# Penerapan metode Newton-Raphson dengan tebakan awal x_0 = 2
hasil_iterasi <- newton_raphson(guess = 2)
## Iterasi konvergen setelah 4 langkah.
# Tampilkan hasil akhir
cat("Solusi akhir:", hasil_iterasi, "\n")
## Solusi akhir: 3
f (fungsi):
df (turunan fungsi):
newton_raphson (metode
Newton-Raphson):
guess), toleransi error
(tol), dan jumlah iterasi maksimum (max_iter)
sebagai argumen.newton_raphson dengan tebakan awal
\(x_0 = 2\).hasil_iterasi.Dengan menggunakan contoh fungsi kuadrat \(f(x) = x^2 - 9\), kode tersebut mencoba menemukan akar persamaannya menggunakan metode Newton-Raphson dengan tebakan awal \(x_0 = 2\). Hasil akhirnya akan dicetak, dan jika iterasi tidak konvergen setelah jumlah iterasi maksimum, pesan kesalahan akan ditampilkan.
Referensi:
Kaplan, Daniel. 2022. MOSAIC Calculus. GitHub Pages. https://dtkaplan.github.io/MC2/