Pertimbangkan masalah berikut.
Ada nilai yang tidak diketahui . Tugasnya adalah menemukan indeks yang terbesar hanya menggunakan kueri dari formulir berikut. Kueri ditentukan oleh himpunan dan jawaban yang sesuai adalah . Tujuannya adalah menggunakan pertanyaan sesedikit mungkin.
Masalah ini mudah: Kita dapat menggunakan pencarian biner untuk menemukan argmax dengan kueri . yaitu Membangun pohon biner lengkap dengan daun sesuai dengan indeks. Mulai dari akar dan berjalan ke daun sebagai berikut. Di setiap node, kueri nilai maksimum di subtree kanan dan kiri dan kemudian pindah ke anak di samping dengan jawaban yang lebih besar. Setelah mencapai daun, output indeksnya.
Versi berisik berikut dari masalah ini telah muncul dalam penelitian saya.
Ada nilai yang tidak diketahui . Ini dapat diakses dengan kueri di mana set ditentukan dan sampel dari dikembalikan. Tujuannya adalah untuk mengidentifikasi i ∗ ∈ { 1 , ⋯ , n } sedemikian rupa sehingga E [ v i ∗ ] ≥ max i v i - 1 menggunakan pertanyaan sesedikit mungkin. (Harapannya lebih dari pilihan i ∗ v 1 , ⋯ , v n S ⊆ { 1 , ⋯ , n } N ( maks i ∈ S v i , 1 ), yang bergantung pada koin algoritme dan jawaban kueri berisik.)
Misalkan kita mencoba menyelesaikan ini menggunakan strategi pencarian biner yang sama seperti sebelumnya (tetapi dengan jawaban yang berisik). Cukup mudah untuk menunjukkan bahwa ini mencapai dan ini ketat dalam kasus terburuk. Kita dapat mengurangi kesalahan ke 1 yang diinginkan dengan mengulangi setiap permintaan O ( log 2 n ) kali dan menggunakan rata-rata (yang menurunkan varians). Ini memberikan algoritma menggunakan kueri O ( log 3 n ) .
Apakah ada algoritma yang lebih baik? Saya menduga bahwa query sudah cukup. Dan saya percaya saya bisa membuktikan batas bawah Ω ( log 2 n ) . Juga, masalahnya menjadi mudah - yaitu ˜ O ( log n ) permintaan melalui pencarian biner - dengan janji bahwa ada Ω ( 1 ) kesenjangan antara nilai terbesar dan nilai terbesar kedua. Jika ini membantu, Anda dapat mengasumsikan semua nilai berada di antara 0 dan O ( log n ) .