Minimum nokta ürün sorguları için veri yapısı


19

Rn,mv1,v2,,vmxRnminix,viO(nm)n=2O(log2m)

Gelebileceğim tek şey şudur. Bu hemen bir sonucudur Johnson-Lindenstrauss lemma bunun için her ve bir dağıtım \ mathcal {D} ilgili \ mathbb {R} ^ n doğrusal eşleme vardır \ kolon \ mathbb {R} f ^ n \ için \ mathbb {R} ^ {o (\ günlük m)} (edilebilir değerlendirildi içinde (o n \ günlük m) süresi) bu şekilde \ mathrm {Pr} _ {x \ sim \ mathcal {D}} \ sol [ \ forall i \ quad \ langle x, v_i \ rangle - \ varepsilon (\ | x \ | + \ | v_i \ |) ^ 2 \ leq \ langle f (x), f (v_i) \ rangle \ leq \ langle x , v_i \ rangle + \ varepsilon (\ | x \ | + \ | v_i \ |) ^ 2 \ right] \ geq 1 - \ varepsilon . Böylece, O ((n + m) \ log m) zamanında hesaplayabilirizε>0DRnf:RnRO(logm)O(nlogm)+ m ) günlükPrxD[ix,viε(x+vi)2f(x),f(vi)x,vi+ε(x+vi)2]1εO((n+m)logm)bir şey bir anlamda yakındır olduğunu için minix,vi için en x 'ler (normlar en azından eğer x ve vi küçüktür).

UPD Eğer bölgeye duyarlı karma kullanıyorsak , yukarıda belirtilen sınır O (n + m) sorgu zamanına biraz keskinleştirilebilir O(n+m). Daha doğrusu, k:=O(1ε2) bağımsız Gauss vektörleri r1,r2,,rk . Sonra Rn ile {0,1}k şu şekilde eşleştiririz : v \ mapsto (\ langle r_1, v \ rangle \ geq 0, \ langle r_2, v \ rangle \ geq 0, \ ldots, \ langle r_k, v \ rangle \ geq 0)v(r1,v0,r2,v0,,rk,v0) . Daha sonra , bu eşlemenin görüntüsünde \ ell_1disitesi hesaplanarak bir toplam hata \ varepsilon içindeki iki vektör arasındaki açıyı tahmin edebiliriz . Böylece, bir ek hata içinde nokta ürünlerini tahmin edebilirizε1εxviiçerisinde O(1ε2) zamanlı.



Bu işe ya da yardımcı olup olmadığından emin değilim, ancak sorununuz (v_i işaretini maksimizasyona dönüştürmek için değiştirdikten sonra) Voronoi diyagramları ile ilgili görünüyor. Bu soruna Voronoi diyagramları için algoritmaları değiştirmek mümkün olabilir, ancak mümkün olsa bile, muhtemelen sadece küçük n için yararlı olacaktır.
Tsuyoshi Ito

Aynı gözlem olup olmadığını bilmiyorum ... Tüm bir birim vektöre normalleştirilebilir ve sonucu değiştirmez, n-küp bir birimde her şeyi başlangıçta yapabiliriz. Her için ile küpün hangi bölgesinin nokta ürününü en aza (her bölge bir politop olmalıdır). Politop sayısı üzerinde bir sınırım yok. Eğer üstelden daha azsa , n-boyutlu nokta konum sorgusu yaparak den daha iyi bir şey elde edersiniz . v i i n m O ( n m )xviinmO(nm)
Chao Xu

hangi parametreye önem veriyorsunuz? Genellikle, m'de alt doğrusal almak istiyorsanız, n'de üstel olmaya başlayacaksınız.
Suresh Venkat

@Suresh Farklı olası değiş tokuşları anlamak iyi olurdu. Yaklaşık versiyonu da ilginç.
ilyaraz

Hızlı not: n = 2 durumu için, dışbükey gövdede ikili arama sorgu süresini verir. O(logn)
Geoffrey Irving

Yanıtlar:


16

Sorgu vektörünüzün önceden işlenmiş koleksiyonunuzdaki bir vektörle dikey olup olmadığını belirlemek istediğiniz özel durumu düşünün. (Yani, tartışılan vektörlerin negatif olmayan katsayılara sahip olduğu olup olmadığını belirlemek istiyorsunuz .) Bu durum zaten çok ilginç.minix,vi=0

Bazı için saatindeki sorguları , önişleme ( polinom dereceleri veya veya bağlı olmamalıdır ). δ > 0 m O ( 1 ) n O ( 1 ) m n δnO(1)m1δδ>0mO(1)nO(1)mnδ

"En iyi 2 kısıtlama memnuniyeti ve sonuçları için yeni bir algoritma" makalesinde, böyle bir veri yapısının aslında CNF-SAT'ı bazı için zamanda çözmenize izin verdiğini gözlemledim , burada değişken sayısıdır. Bu, k-SAT'ın sınırsız için esasen zaman gerektirdiği "Güçlü Üstel Zaman Hipotezini" çürütür . α < 1 v 2 n k2αvα<1v2nk

Nedenini görmek için önişleme süresinin ile sınırlı olduğunu varsayalım . değişkenleri ve cümleleri olan bir CNF formülü düşünün . Değişken kümesini ve boyutlarında iki ve parçasına . Parçalardaki değişkenlere olası tüm atamaları listeleyin (sırasıyla ve atamalarını alma). Bu kısmi tahsislerine ilişkilendirme bir ile bitlik vektör burada IFF F v n P 1 P 2 v ( 1 - 1 / ( 2 c ) ) v / ( 2 c ) 2 v ( 1 - 1 / ( 2 c ) ) 2 v / ( 2 c ) A i n w i w i [ j ] = 1 F(nm)cFvnP1P2v(11/(2c))v/(2c)2v(11/(2c))2v/(2c)Ainwiwi[j]=1j fıkrası tarafından . Bu yüzden katlanarak çok sayıda bit vektörü içeren iki listemiz var.FAi

Uyarı bu bir vektör olup IFF karşılanabilir olduğunu bir atama ve bir vektör bir atama şekildedirw 1 p 1 ağırlık 2 p 2ağırlık 1 , ağırlık 2= 0Fw1P1w2P2w1,w2=0 .

Şimdi bırakın ve varsayılan veri yapısını kısmındaki tüm vektörlerle . Bu varsayımla zaman alır . bölümündeki atamalardaki tüm vektörlerde sorgu algoritmasını çalıştırın . Varsayımla bu P 2 n 2 v / 2 P 1 2 v ( 1 - 1 / ( 2 c ) )n O ( 1 ) m 1 - δ = n O ( 1 ) 2 v - δ v / ( 2 c ) α = / ( 2m=2v/(2c)P2n2v/2P12v(11/(2c))nO(1)m1δ=nO(1)2vδv/(2c) . yapalım .α=1δ/(2c)

Belki de mevcut tekniklerle verimli ön işleme ve sorgu süresi elde etmek mümkündür. En iyi bilinen CNF-SAT algoritmaları bunu dışlamaz. ( gibi bir şey alırlar .) Ancak hesaplamak için biraz daha güçlüdür - bu kurulumda MAX CNF-SAT'ı çözmek gibi bir şey olacaktır. 2 , n - n / log n, en az ix , v ınO(1)m11/(loglogm)2nn/lognminix,vi


Müthiş! Ancak, yaklaşık veri yapılarının yanı sıra gibi sorgu sürelerini de göz etmez ; bu da çok ilginç olacaktır. O(mpoly(logn))
ilyaraz

Bu arada, "hızlı sorgu süresine sahip yaklaşık veri yapısı olsa bile, MAX-SAT yaklaşık olarak kabul edilebilir" gibi bir şey söyleyemeyiz.
ilyaraz

İlk paragrafta belirtilen denklik neden geçerlidir? İç ürünün genel olarak olumsuz olabileceğini düşünüyorum.
Tsuyoshi Ito

ilyaraz: Evet, yaklaşık veri yapıları bile yaklaşık MAX-SAT anlamına gelir. Tsuyoshi: Fikriniz için teşekkür ederiz
Ryan Williams

6

İşte tam cevap için bir fikir, Chao Xu'nun aldatabileceğinden şüpheleniyorum. İlk olarak Chao'nun işaret ettiği gibi de normalleştirebileceğimizi gözlemleyin . Şimdi h hiper düzlemini x yönüne normal kabul edin . Amaç, bu köprüye en yakın noktayı bulmaktır. Dualite ile, bu, sorgu noktasının "yukarısında" en yakın düzlemi bulmak için hiper düzlem düzenlemesinde bir ışın çekim sorgusuna karşılık gelir. Bu ön işlemden geçirilebildiğinden, ana karmaşıklık nokta konumudur ve bu nedenle sorununuz şimdi hiperplanların düzenlenmesinde nokta konumu yapmanın karmaşıklığına indirgenmiştir. Kesimler kullanarak, bu n d cinsinden O ( log n ) zamanında yapılabilirxhxO(logn)nd Uzay.


1
Bir boyutun büyük olması durumunda burada olmayan makul bir önişleme süresiyle de ilgilendiğimi belirtmeliydim.
ilyaraz
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.