Kali ini kita akan membahas apa itu Numerical
Optimization. Numerical optimization adalah cara untuk mencari
nilai maximal atau minimal dari suatu fungsi dengan menggunakan angka.
Fungsi adalah hubungan antara dua hal yang saling bergantung. Misalnya
fungsi h(x) = x + 2 berarti ada hubungan antara
h dan x, yaitu h selalu sama
dengan x ditambah 2. Nilai maximal atau
minimal dari fungsi tersebut disebut juga nilai optimal. Nilai optimal
berguna untuk memecahkan berbagai masalah di bidang ilmu pengetahuan,
teknologi, ekonomi, dan lainnya.
Langkah pertama adalah mendefinisikan fungsi yang
ingin kita optimalkan secara numerik. Fungsi adalah hubungan antara dua
hal yang saling bergantung satu sama lain. Misalnya,
fungsi h(x) = x + 2 berarti ada hubungan
antara h dan x, yaitu h selalu
sama dengan x ditambah 2. Optimization secara numerik
adalah cara untuk mencari nilai terbesar atau terkecil dari suatu fungsi
dengan menggunakan angka-angka. Misalnya, jika kita ingin mencari nilai
terbesar dari fungsi h(x) = x + 2 dalam
interval [-5, 5], kita dapat mencoba berbagai
nilai x dari -5 sampai 5 dan melihat
nilai h yang dihasilkan. Nilai maximum
dari h adalah 7, yang dicapai jika x = 5.
Untuk menentukan fungsi yang ingin kita optimalkan secara numerik, kita
dapat menggunakan fungsi rfun().
Fungsi rfun() adalah fungsi yang dapat membantu kita
membuat fungsi secara acak atau sembarang. Fungsi acak adalah fungsi
yang dibuat dengan menggunakan angka atau huruf yang dipilih secara
acak. Fungsi acak sangat berguna untuk melatih kemampuan kalkulus kita.
Untuk menggunakan fungsi rfun(), kita perlu mengetikkan
perintah berikut di RStudio:
#langkah awal
h <- rfun(~ x, seed=1234)
Langkah kedua adalah menggunakan
fungsi argM() untuk mencari argumen maksimum dan minimum
dari fungsi tersebut dalam interval tertentu. Argumen max adalah
nilai x yang memberikan nilai maximum pada fungsi kita.
Argumen min adalah nilai x yang memberikan nilai minimum
pada fungsi kita.
Interval adalah rentang atau jarak antara dua angka. Misalnya,
interval [-5, 5] berarti rentang dari -5 hingga 5.
Fungsi argM() merupakan fungsi yang dapat membantu kita
mencari argumen maksimum dan minimum dari suatu fungsi dengan
menggunakan angka. Fungsi argM() mengembalikan kerangka
data frame yang berisi nilai x, output, dan konkavitas dari
fungsi kita pada titik ekstrem. Data frame adalah tabel atau kotak yang
berisi data atau informasi. Outputnya adalah nilai dari fungsi ketika
kita memasukkan nilai x tertentu. Konkavitas adalah bentuk
atau keadaan dari kurva fungsi kita di sekitar titik ekstrem. Kurva
adalah garis lengkung yang menggambarkan hubungan antara dua benda.
Titik ekstrim adalah titik dimana fungsi kita memiliki nilai terbesar
atau terkecil. Untuk menggunakan fungsi argM(), kita perlu
mengetikkan perintah berikut di RStudio:
#langkah kedua
argM(h(x) ~ x, bounds(x=-10:10))
## # A tibble: 2 × 3
## x .output. concavity
## <dbl> <dbl> <dbl>
## 1 -10.0 0.0000171 1
## 2 0.314 9.29 -1