Lembaga: “UIN Maulana Malik Ibrahim Malang”
Fakultas: “Teknik Informatika”
NIM: “230605110053”
suppressWarnings(suppressMessages(suppressPackageStartupMessages))
## function (expr)
## withCallingHandlers(expr, packageStartupMessage = function(c) tryInvokeRestart("muffleMessage"))
## <bytecode: 0x000001ed96ec6360>
## <environment: namespace:base>
library(mosaicCalc)
Artikel ini akan membahas tentang salah satu sub-bab dari mosaic calc, yaitu Optimisasi.
Mosaic calc adalah salah satu packages atau libraries yang dirancang khusus untuk melakukan berbagai operasi matematika dengan efisien.
Salah satu fitur unggulan mosaic calc adalah adalah kemampuanya dalam mengoptimalkan fungsi-fungsi dalam matematika
Optimisasi adalah proses pencarian nilai ekstremum (nilai paling tinggi dan rendah) dari suatu fungsi.
Nilai ekstremum ini dapat digunakan untuk mengetahui solusi tebaik atau titik kritis dalam masalah.
Maksimalisasi adalah proses mencari input yang menghasilkan output terbesar dibandingkan dengan input lain yang berdekatan.
sebagai ilustrasi, gambar dibawah ini memiliki 2 puncak
x <- seq(-5, 5, by = 0.1)
y <- sin(x) + sin(2*x)
plot(x, y, type = "l", col = "blue", lwd = 2, xlab = "Nilai x", ylab = "Nilai f(x)", main = "Grafik Fungsi f(x)")
Argmax adalah nilai input yang sesuai dengan setiap garis vertikal yang digambar melalui masing-masing puncak fungsi, yaitu nilai input yang menghasilkan nilai maksimum lokal dari fungsi tersebut. Dalam analogi gunung, argmax dapat dianggap sebagai titik di mana Anda dapat melihat puncak gunung dari kejauhan.
Minimalisasi mengacu pada teknik yang sama, tetapi di mana garis vertikal ditarik pada titik terdalam di setiap “lembah” grafik fungsi. Nilai input yang terletak di salah satu lembah tersebut disebut argmin.
Optimasi adalah istilah umum yang mencakup maksimalisasi dan minimalisasi.
Fungsi R/mosaic adalah fungsi yang dapat digunakan untuk mencari nilai argmax dan argmin di atas domain tertentu. Cara kerjanya mirip dengan fungsi argmax dan argmin, namun alih-alih menghasilkan grafik, fungsi ini mengembalikan bingkai data yang berisi nilai argmax di satu baris dan argmin di baris lainnya 1. Sebagai contoh, fungsi yang ditunjukkan pada Gambar 13.2 adalah argM() slice_plot() \(h()\), yang dihasilkan oleh :rfun()
h <- rfun(~ x, seed=7293)
argM(h(x) ~ x, bounds(x=-5:5))
## # A tibble: 2 × 3
## x .output. concavity
## <dbl> <dbl> <dbl>
## 1 -1.68 1.93 1
## 2 0.173 8.25 -1
h <- rfun(~ x + y, seed=7293)
argM(h(x, y) ~ x + y, bounds(x=-5:5, y=-5:5))
## # A tibble: 1 × 3
## x y .output.
## <dbl> <dbl> <dbl>
## 1 3.73 -0.359 -0.186
h <- rfun(~ sin(x) + cos(y), seed=7293)
argM(h(x, y) ~ x + y, bounds(x=-5:5, y=-5:5))
## # A tibble: 1 × 3
## x y .output.
## <dbl> <dbl> <dbl>
## 1 3.73 -0.359 -0.186
Kolom memegang argmax dan argmin, kolom memberikan nilai output fungsi untuk input . Kolom ini memberi tahu apakah cekung fungsi positif atau negatif. Mendekati puncak, cekung akan negatif; Di dekat lembah, cekungan positif. Akibatnya, Anda dapat melihat bahwa baris pertama dari bingkai data sesuai dengan minimum lokal dan baris kedua adalah maksimum local.x. output.x concavity x
argM() diatur untuk mencari argmax tunggal dan argmin tunggal dalam interval domain yang diberikan sebagai argumen kedua. Pada Gambar diatas ada dua puncak lokal dan dua lembah lokal. hanya memberikan puncak terbesar dan lembah terdalam.argM().
Sumber: - https://dtkaplan.github.io/MC2/