Optimalisasi matematika pada fungsi yang bising

10

Misalkan menjadi fungsi yang cukup bagus (mis. Kontinu, dapat dibedakan, tidak terlalu banyak maxima lokal, mungkin cekung, dll.). Saya ingin mencari maksimum f : nilai x R d yang membuat f ( x ) sebesar mungkin.f:RdRfxRdf(x)

Jika saya memiliki prosedur untuk mengevaluasi tepat pada input apa pun pilihan saya, saya dapat menggunakan teknik optimasi matematika standar : mendaki bukit, gradient descent (well, gradient ascent), dll. Namun, dalam aplikasi saya, saya tidak memiliki cara mengevaluasi f ( x ) dengan tepat. Sebaliknya, saya punya cara untuk memperkirakan nilai f ( x ) .ff(x)f(x)

Secara khusus, mengingat setiap dan ε apa pun , saya memiliki oracle yang akan menampilkan perkiraan f ( x ) , dan yang kesalahan yang diperkirakan sekitar ε . Waktu menjalankan doa oracle ini sebanding dengan 1 / ε 2 . (Diimplementasikan oleh semacam simulasi; akurasi simulasi meningkat dengan akar kuadrat dari jumlah percobaan, dan saya dapat memilih berapa banyak percobaan untuk dijalankan, jadi saya dapat memilih akurasi yang diinginkan.) Jadi ini memberi saya cara untuk mendapatkan perkiraan akurasi yang saya inginkan, tetapi semakin akurat saya ingin estimasi itu, semakin lama waktu yang dibutuhkan.xεf(x)ε1/ε2

Mengingat ramalan bising ini untuk , adakah teknik untuk menghitung maksimal f seefisien mungkin? (Atau, lebih tepatnya, menemukan perkiraan maksimal.) Apakah ada varian pendakian bukit, gradient descent, dll., Yang berfungsi dalam model ini?ff

Tentu saja, saya bisa memperbaiki nilai sangat kecil dan menerapkan mendaki bukit atau gradient descent dengan oracle ini, menjaga ε yang sama tetap ada . Namun, ini mungkin tidak efisien yang tidak perlu: kita mungkin tidak memerlukan perkiraan yang tepat di awal, sedangkan presisi mendekati akhir ketika Anda memusatkan perhatian pada solusi lebih penting. Jadi apakah ada cara untuk mengambil keuntungan dari kemampuan saya untuk mengontrol keakuratan estimasi saya secara dinamis, untuk membuat proses optimisasi lebih efisien? Apakah masalah seperti ini telah dipelajari sebelumnya?εε

DW
sumber
2
ϵ
cybersynchronicity, menemukan persis kasus ini baru-baru ini dalam program GA. setuju dengan rs di atas yang disimulasikan anil di mana ketepatan evaluasi fungsi kira-kira cocok dengan penurunan suhu harus bekerja. Gagasan lain adalah hanya melakukan jumlah sampel yang tetap di setiap titik dan mengambil rata-rata sebagai perkiraan. teori yang lebih maju mungkin hanya memberi tahu Anda bahwa Anda tidak dapat memperoleh sesuatu secara gratis & bahwa tidak ada jalan pintas untuk evaluasi yang meningkatkan optimisasi.
vzn

Jawaban:

4

f(x,p)f(x+Δx,p+Δp)pΔxΔp

  • Beberapa teknik yang digunakan dalam optimasi stokastik dan optimasi yang kuat mungkin dapat diterapkan.
  • fx0ΔxΔp
  • fx(x~,p~)f(x~,p~)
  • ΔpΔx1/ϵ2
  • Tradeoff noise vs runtime yang diberikan adalah yang membedakan masalah ini dari masalah yang dipelajari lebih baik. Masalahnya adalah kebisingan tidak dapat dihindari lebih umum dan dipelajari dengan lebih baik.
Thomas Klimpel
sumber
f(x,p)f(x+Δx,Δp)pp=0f). Optimalisasi stokastik dan optimisasi yang kuat sepertinya kurang lebih seperti hal-hal yang saya cari, jadi itu sangat membantu. Terima kasih.
DW
p=0f(x,0)f(x+Δx,Δp)ΔxΔp