Misalkan kita ingin menemukan elemen terkecil dari himpunan , yang elemennya diindeks dari ke . Kami tidak memiliki akses ke nilai-nilai elemen ini, tetapi kami dapat membandingkan dua elemen untuk melihat mana yang lebih kecil. Untuk setiap indeks dan , ada terkait biaya untuk membandingkan th dan th unsur . Matriks biaya lengkap diberikan kepada kami sebelumnya.1 n S i j C i , j i j S C i , j
Hal ini juga diketahui bahwa perbandingan yang perlu dan cukup untuk menemukan elemen terkecil dari . Namun, karena setiap perbandingan mungkin memiliki biaya yang berbeda, kami juga ingin menjaga agar biaya total perbandingan sekecil mungkin.S
Apakah ada algoritma online yang menemukan urutan perbandingan biaya total kecil yang menemukan elemen terkecil ? n = 3 Tidak ada algoritma online yang menemukan rangkaian perbandingan dengan total biaya minimum , bahkan ketika , tetapi mungkin ada algoritma online dengan rasio persaingan kecil.
Secara khusus, apakah memungkinkan algoritma online untuk melakukan lebih dari perbandingan membantu? Apakah lebih baik membuat beberapa perbandingan murah "ekstra" daripada beberapa perbandingan mahal?
Saya terutama tertarik pada kasus , di mana adalah metrik diskrit atas himpunan , dan , untuk semua . Sebuah optimal algoritma online masih mungkin dalam pengaturan ini. d S 0 ≤ d ( i , j ) ≤ k i , j
Setiap referensi untuk masalah serupa dihargai. Saya tidak mencari seseorang untuk menyelesaikan masalah saya (walaupun beberapa ide dapat membantu dan dihargai). Saya hanya ingin tahu apakah masalah ini diketahui. (Saya tidak dapat menemukan apa pun.)
Jawaban:
Analisis kasus brute-force mengungkapkan bahwa rasio kompetitif optimal untuk kasus khusus , tanpa batasan lain pada matriks biaya, adalah rasio emas . Dengan demikian, tidak ada algoritma online yang dapat mencapai rasio kompetitif lebih baik dari .ϕ = ( √n=3 ϕϕ=(5–√+1)/2 ϕ
Misalkan , , dan .C 1 , 3 = 1 C 2 , 3 = ϕC1,2=0 C1,3=1 C2,3=ϕ
Tanpa kehilangan keumuman, algoritma dimulai dengan membandingkan dengan , dengan biaya nol.S 2S1 S2
Musuh menyatakan .S1>S2
Jika algoritma membandingkan ke :S 3S1 S3
Jika algoritme membandingkan dengan :S 3S2 S3
Dalam kedua kasus tersebut, perbandingan algoritma menghabiskan faktor lebih dari set perbandingan optimal untuk total order yang terungkap.1+ϕϕ=ϕ1=ϕ
Secara umum, rasio kompetitif adalah , di mana berada tiga biaya perbandingan. (Ada lebih banyak kasus untuk dipertimbangkan di sini, karena ada algoritma optimal yang tidak melakukan perbandingan termurah terlebih dahulu, tetapi analisis kasus masih elementer.) Perhitungan yang membosankan menyiratkan bahwa ekspresi dimaksimalkan ketika , , dan .min{a+ca+b,a+b+ca+c} a≤b≤c min{a+ca+b,a+b+ca+c} a=0 b=1 c=ϕ
Khususnya, jika , algoritma terbaik mungkin dapat dipaksa untuk melakukan ketiga perbandingan.a+ca+b>a+b+ca+c
sumber
Sebuah awal adalah:
Apakah ini algoritma yang layak? Bergantung pada biaya relatif penyortiran C vs melakukan perbandingan di S:
-t.
sumber