Diberikan fungsi yang tidak diketahui , kita dapat mengevaluasi nilainya di titik mana pun di domainnya, tetapi kami tidak memiliki ekspresinya. Dengan kata lain, f seperti kotak hitam bagi kita.
Apa nama untuk masalah menemukan minimizer ? Apa saja metode di luar sana?
Apa nama untuk masalah menemukan solusi untuk persamaan ? Apa saja metode di luar sana?
Dalam dua masalah di atas, apakah ide yang bagus untuk melakukan interpolasi atau menyesuaikan dengan beberapa evaluasi f: menggunakan fungsi g θ dengan bentuk dan parameter yang diketahui θ ditentukan, dan kemudian meminimalkan g θ atau menemukan akarnya?
Terima kasih dan salam!
optimization
Tim
sumber
sumber
Jawaban:
Metode yang Anda cari - yaitu, yang hanya menggunakan evaluasi fungsi tetapi bukan turunan - disebut metode optimasi bebas derivatif . Ada banyak literatur di dalamnya, dan Anda dapat menemukan bab tentang metode tersebut di sebagian besar buku tentang pengoptimalan. Pendekatan khas meliputi
sumber
Saya pikir Anda harus mulai dengan: Workshop GECCO tentang Benchmarking Optimalisasi Kotak Hitam Parameter Nyata (BBOB 2016) http://numbbo.github.io/workshops/index.html
Anda akan menemukan banyak algoritma berbeda yang telah digunakan dalam kompetisi sebelumnya, dan yang telah dibandingkan secara umum. Jika Anda mulai di tempat lain, Anda akan segera tenggelam dalam ratusan makalah yang mengklaim metode dan algoritme mereka berkinerja lebih baik daripada yang lain dengan sedikit bukti aktual untuk klaim tersebut.
Sampai baru-baru ini, sejujurnya, itu adalah keadaan yang memalukan dan semua kekuatan untuk INRIA, GECCO dan banyak lainnya atas upaya yang telah mereka lakukan dalam membangun kerangka kerja untuk perbandingan rasional.
sumber
Saya baru saja menambahkan bahwa salah satu kunci di sini adalah mampu mengukur metode optimasi pada CPU multicore . Jika Anda dapat melakukan beberapa evaluasi fungsi secara bersamaan, itu memberi Anda speedup sama dengan sejumlah core yang terlibat. Bandingkan ini dengan hanya menggunakan model respons yang sedikit lebih akurat, yang membuat Anda 10% lebih efisien atau lebih.
Saya akan merekomendasikan untuk melihat kode ini , dapat bermanfaat bagi orang yang memiliki akses ke banyak core. Matematika di belakangnya dijelaskan dalam makalah ini .
sumber