Penyelesaian optimasi multivariabel dengan R dapat dilakukan menggunakan berbagai paket yang tersedia. Salah satu paket yang umum digunakan untuk optimasi multivariabel adalah “optim” dalam R. Berikut adalah langkah-langkah umum dalam penyelesaian optimasi multivariabel dengan R:
# Fungsi objektif
f <- function(x) {
return(x[1]^2 + x[2]^2)
}
# Kendala
constraint1 <- function(x) {
return(x[1] + 2 * x[2] - 10)
}
constraint2 <- function(x) {
return(-x[1])
}
# Memanggil optim untuk mencari minimum
result <- optim(par = c(0, 0), fn = f, gr = NULL, lower = c(0, -Inf), upper = c(Inf, Inf), control = list(fnscale = -1))
## Warning in optim(par = c(0, 0), fn = f, gr = NULL, lower = c(0, -Inf), upper =
## c(Inf, : bounds can only be used with method L-BFGS-B (or Brent)
Argumen-argumen di atas mengatur parameter fungsi “optim” yang digunakan untuk mencari minimum. “par” adalah titik awal, “fn” adalah fungsi objektif, “gr” adalah gradien (jika ada), “lower” adalah batasan bawah variabel, “upper” adalah batasan atas variabel, dan “control” adalah kontrol parameter lainnya.
cat("Nilai Minimum:", result$value, "\n")
## Nilai Minimum: 3.127491e+27
cat("Lokasi Minimum:", result$par, "\n")
## Lokasi Minimum: 5.592397e+13 0
Ini adalah contoh sederhana penyelesaian optimasi multivariabel dengan R. Anda dapat menyesuaikan fungsi objektif, kendala, dan batasan sesuai dengan masalah yang Anda hadapi. Selain “optim”, R juga menyediakan paket-paket lain seperti “nloptr” dan “nlopt” yang dapat digunakan untuk masalah optimasi yang lebih kompleks dan lebih fleksibel.