Öklidyen olmayan konfigürasyon alanı için en yakın komşu veri yapısı


15

RRT hareket planlayıcısında kullanmak için en yakın komşu yapıyı uygulamaya çalışıyorum. En yakın komşu doğrusal aramadan daha iyi yapabilmek için kd ağacı gibi bir şey uygulamak istiyorum. Bununla birlikte, kd ağacının klasik uygulaması, uzayın her boyutunun "sol" ve "sağ" olarak ayrılabileceğini varsayar. Bu nosyon, örneğin SO (2) gibi Öklidyen olmayan alanlar için geçerli görünmemektedir.

Robotun yapılandırma alanının her boyutunun SO (2) ve bu nedenle Öklidyen olmadığı anlamına gelen, tamamen dönme bağlantılı seri manipülatör kolu ile çalışıyorum. Kd-ağacı algoritması bu tür alt uzayları işleyecek şekilde değiştirilebilir mi? Değilse, bu Öklid olmayan alt uzayları güncelleyip sorgulamak hala kolayken, en yakın komşu yapı var mı? FLANN'a da baktım , ancak öklidyen olmayan alt uzayları idare edip edemeyecekleri belgelerinden bana net değildi.


Bu arada, yaklaşık en yakın komşular da gayet iyi (hızlanma önemli ise bile tercih edilir)
giogadi

1
Mükemmel bir cevabı kabul etmiş olsanız da, bir cevap kabul etmeden önce birkaç gün beklemek iyi bir fikirdir, böylece diğer seçenekleri sunabilecek başka cevapları da caydırmak istemezsiniz.
Mark Booth

Teşekkürler Mark, cevabı kabul etmeden önce ne kadar bekleyeceğimi bilmiyordum.
giogadi

Yanıtlar:


6

Kd ağaçlarının genellikle sadece küçük Öklid metrik alanlarda çalıştığı doğrudur. Ancak, metrik uzaylarda en yakın genel komşu uygulamaları için çok fazla iş vardır (esas olarak bir mesafe fonksiyonunu tanımlayabileceğiniz her yerde).

Klasik çalışma , daha sonra metrik ağaçlara genelleştirilen top ağaçlarındadır .

Kapak ağaçları olarak adlandırılan ve GPL koduna sahip bazı yeni çalışmalar var. İki yıldan fazla bir süredir bu ağaçlar ve kd ağaçları arasındaki performans özelliklerine bakmak istedim.

Umarım, bu sizin uygulamanıza uyar.


Kabul etmediğim için üzgünüm; sadece başka bir yorumcunun bu soruyu "güveç" için birkaç gün daha vermek için tavsiyelerini izleyerek. Yine de cevabınızı gerçekten yararlı buldum!
giogadi

Booo. Şaka yapıyorum. Bunu faydalı bulduğun için mutluyum.
Chris Mansley

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.