Disini kita akan membahas tentang Optimization. Optimization adalah proses mencari nilai minimum atau maksimum dari suatu fungsi. Nilai minimum atau maksimum ini disebut sebagai nilai optimal. Optimization sering digunakan dalam berbagai bidang, seperti ekonomi, teknik, ilmu alam, dan lainnya, untuk menyelesaikan masalah yang melibatkan biaya, keuntungan, efisiensi, keseimbangan, dan sebagainya.

Salah satu fungsi yang dapat Kita gunakan untuk Optimization adalah optimize (). Fungsi ini memungkinkan Kita untuk mencari nilai minimum atau maksimum dari suatu fungsi dalam suatu interval. Kita perlu memberikan tiga argumen ke fungsi optimize (): fungsi yang ingin dioptimalkan, interval pencarian, dan apakah Kita ingin mencari nilai minimum atau maksimum.

# Langkah 1: Mendefinisikan fungsi yang ingin dioptimalkan
f <- function(x) { x^3 - 6*x^2 + 9*x - 4 }

# Langkah 2: Mencari nilai minimum dan maksimum fungsi f di interval [-1, 4]
x <- seq(-1, 4, length.out = 1000)
y <- f(x)
min_f_x <- x[which.min(y)]
min_f_y <- min(y)
max_f_x <- x[which.max(y)]
max_f_y <- max(y)

# Langkah 3: Menampilkan hasil Optimization
cat("Minimum:", min_f_x, "f(min) =", min_f_y, "\n")
## Minimum: -1 f(min) = -20
cat("Maksimum:", max_f_x, "f(max) =", max_f_y, "\n")
## Maksimum: 4 f(max) = 0
# Langkah 4: Membuat plot fungsi f
plot(x, y, type = "l", xlim = c(min_f_x - 1, 4), ylim = c(min_f_y - 2, max_f_y + 2))
points(min_f_x, min_f_y, col = "blue", pch = 19)
points(max_f_x, max_f_y, col = "red", pch = 19)
text(min_f_x, min_f_y - 1, "Min", col = "blue")
text(max_f_x, max_f_y + 1, "Max", col = "red")

Dalam langkah pertama, Kita mendefinisikan sebuah fungsi matematika dalam R. Fungsi ini merupakan fungsi polinomial dengan bentuk x^3 - 6x^2 + 9x - 4. Kita ingin mencari nilai minimum dan maksimum dari fungsi ini dalam interval tertentu.

Pada Langkah kedua, kita melibatkan pencarian nilai minimum dan maksimum dari fungsi tersebut. Pertama, Kita membuat serangkaian nilai x dalam interval [-1, 4] dengan jarak 1000 titik. Kemudian, Kita menghitung nilai y (nilai fungsi) sesuai dengan fungsi f(x) pada setiap titik x. Kita mencari nilai minimum dengan which.min(y) dan maksimum dengan which.max(y) untuk menemukan posisi x yang sesuai.

Setelah menemukan nilai minimum dan maksimum, Pada langkah ketiga kita menggunakan cat untuk mencetak hasilnya. Hasil ini mencakup nilai x (posisi) dan f(x) (nilai fungsi) untuk minimum dan maksimum.

Langkah terakhir, kita membuat plot dari fungsi f(x) menggunakan plot. Kemudian, kita menandai titik minimum dengan lingkaran merah dan titik maksimum dengan lingkaran biru. Fungsi text digunakan untuk menambahkan label Min dan Max di sekitar titik minimum dan maksimum.