2010-03-08 27 views
8

भौगोलिक निर्देशांक के एक बड़े सेट में एक कुशल निकटतम पड़ोसी खोज के लिए किस तरह की डेटा संरचना का उपयोग किया जा सकता है? साथ "नियमित" आर-पेड़ की तरह स्थानिक सूचकांक संरचनाओं कि प्लानर निर्देशांक मान, मैं दो समस्याओं को देखने (वहाँ दूसरों मैं अनदेखा कर दिया हैं?):भौगोलिक निर्देशांक के लिए स्थानिक सूचकांक?

  • ध्रुवों पर Wraparound और अंतर्राष्ट्रीय दिनांक रेखा
  • की विकृति ध्रुवों के पास दूरी

इन कारकों के लिए कैसे अनुमति दी जा सकती है? मुझे लगता है कि दूसरे को निर्देशांक बदलने से मुआवजा दिया जा सकता है। क्या रैपरराउंड को खाते में ले जाने के लिए आर-ट्री संशोधित किया जा सकता है? या क्या विशेष भू-स्थानिक सूचकांक संरचनाएं हैं?

उत्तर

2

Geohash पर एक नज़र डालें।

इसके अलावा, लपेटने के लिए क्षतिपूर्ति करने के लिए, केवल एक लेकिन तीन ऑर्थोगोनल आर-पेड़ का उपयोग न करें, ताकि पृथ्वी की सतह पर कोई बिंदु न हो जिससे कि सभी तीन पेड़ उस बिंदु पर एक लपेटें हों। फिर, यदि वे कम से कम एक पेड़ के अनुसार निकट हैं तो दो बिंदु बंद हैं।

+0

भूहाश एक "चीज का सबसे अच्छा काम करता है" लगता है, लेकिन आस-पास के स्थानों के लिए हमेशा एक सामान्य उपसर्ग प्रदान करने पर निर्भर नहीं किया जा सकता है। हालांकि, कई आर-पेड़ का उपयोग करने का विचार रैपरराउंड समस्या के लिए एक अच्छा समाधान की तरह दिखता है। –

3

क्या आप 3 आयामों में एक इलाके-संवेदनशील हैशिंग (एलएसएच) एल्गोरिदम का उपयोग कर सकते हैं? इससे आपको एक अनुमानित पड़ोसी समूह मिल जाएगा जो आप महान सर्कल दूरी की गणना करके सैनिटी-चेक कर सकते हैं।

Here's a paper एक इकाई आयामी अति क्षेत्र की सतह पर कुशल LSH के लिए एक एल्गोरिथ्म का वर्णन। संभवतः यह डी = 3 के लिए काम करता है।

संबंधित मुद्दे