Nama dan NIM : Muhammad Syaifullah (230605110129)
Dosen Pengampu : Prof. Dr. Suhartono, M.Kom
Universitas : Universitas Islam Negeri Maulana Malik Ibrahim Malang
Fakultas : Sains dan Teknologi
Program Studi : Teknik Informatika
Iteration
Iteration, atau iterasi, adalah proses pengulangan suatu langkah atau serangkaian langkah dalam suatu algoritma atau perhitungan dengan tujuan mendekati atau mencapai solusi yang diinginkan. Dalam konteks komputasi, iterasi sering digunakan untuk peningkatan secara bertahap, pembaruan nilai-nilai variabel, atau konvergensi menuju solusi optimal dalam suatu masalah.
Iterasi memainkan peran penting dalam berbagai bidang, termasuk optimisasi numerik, pemecahan persamaan matematis, dan pengembangan model dalam machine learning. Proses ini memungkinkan algoritma untuk mengulang perhitungan dengan nilai-nilai yang diperbarui untuk mendekati solusi yang akurat.
Sebagai contoh, dalam metode iteratif Gradient Descent untuk optimisasi numerik, nilai variabel diupdate berulang kali dengan mengikuti arah yang berlawanan dengan gradien fungsi tujuan. Setiap iterasi membawa nilai variabel lebih dekat ke titik optimum, dan proses ini diulang hingga konvergensi.Berikut adalah contoh sederhana penggunaan iterasi dalam R untuk mengilustrasikan konvergensi dalam metode Gradient Descent pada fungsi f(x)=x²−4x+4.
# Install paket ggplot2 jika belum terinstal
# install.packages("ggplot2")
library(ggplot2)
# Fungsi Objektif
f <- function(x) {
return(x^2 - 4*x + 4)
}
# Turunan Parsial
df_dx <- function(x) {
return(2*x - 4)
}
# Metode Gradient Descent dengan Iterasi
gradient_descent <- function(x0, learning_rate, max_iter) {
x_values <- numeric(max_iter + 1)
x_values[1] <- x0
for (i in 1:max_iter) {
x_values[i + 1] <- x_values[i] - learning_rate * df_dx(x_values[i])
}
return(x_values)
}
# Plot Fungsi dan Konvergensi melalui Iterasi
plot_iteration_convergence <- function(x0, learning_rate, max_iter) {
x_values <- gradient_descent(x0, learning_rate, max_iter)
iter <- seq(0, max_iter)
df <- data.frame(iteration = iter, x_value = x_values, f_value = f(x_values))
ggplot(df, aes(x = iteration, y = f_value)) +
geom_line(color = "blue") +
geom_point(color = "red") +
geom_hline(yintercept = 0, linetype = "dashed", color = "green") +
labs(title = "Convergence through Iteration in Gradient Descent",
x = "Iteration", y = "f(x)")
}
# Contoh Penggunaan
x0 <- 0
learning_rate <- 0.1
max_iter <- 20
plot_iteration_convergence(x0, learning_rate, max_iter)
Kode ini menghasilkan grafik yang menunjukkan konvergensi fungsi f(x)
melalui iterasi dalam metode Gradient Descent. Anda dapat mengubah nilai
awal, ukuran langkah, dan jumlah iterasi sesuai kebutuhan.