2012-04-15 15 views
7

मैं Jump Point Search पर आया हूं, और यह मेरे लिए बहुत प्यारा लगता है। हालांकि, मुझे यकीन नहीं है कि उनके छंटनी नियम वास्तव में कैसे काम करते हैं। विशेष रूप से, चित्रा 1 में, यह कहा गया है किए * जंप प्वाइंट सर्च - कैसे छंटनी वास्तव में काम करती है?

हम तुरंत सभी ग्रे पड़ोसियों काटना कर सकते हैं के रूप में इन कभी नोड के माध्यम से जा के बिना एक्स के माता पिता से बेहतर पहुँचा जा सकता है एक्स

बहरहाल, यह लगता है कुछ हद तक बाधाओं पर। दूसरी छवि में, नोड 5 को पहले नोड 7 के माध्यम से जाकर x को पूरी तरह से एक सममित पथ के माध्यम से पहुंचाया जा सकता था- यानी 6 -> x -> 56 -> 7 -> 5 पर सममित प्रतीत होता है। यह पहली छवि में x से गुजरने के बिना कैसे नोड 3 तक पहुंचा जा सकता है। इस प्रकार, मुझे समझ में नहीं आता कि ये दो छवियां पूरी तरह से समकक्ष नहीं हैं, न केवल एक दूसरे के घूर्णन संस्करणों को।

दूसरा, मैं समझना चाहता हूं कि इस एल्गोरिदम को त्रि-आयामी खोज मात्रा में सामान्यीकृत कैसे किया जा सकता है।

+0

मैं पिछले सप्ताह एक ही एल्गोरिदम का अध्ययन कर रहा हूं और चित्रों को भ्रमित भी पाया है। क्या आपने इस बारे में डैनियल हैरबोर को मेलिंग माना है? –

+0

@ लार्समैन: मुझे इसके बारे में एक विचार है। सी ++ चैट पर आएं और मैं इसकी चर्चा करूंगा। – Puppy

+0

पहली छवि समझ में आता है क्योंकि यह केवल क्षैतिज और ऊर्ध्वाधर आंदोलन पर विचार कर रहा है, विकर्ण नहीं। तो उस बाधा को देखते हुए तो छंटनी समझ में आता है। लेकिन दूसरी छवि, जैसा कि आपने कहा, मुझे समझ में नहीं आता है। – Magnus

उत्तर

0

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

0

दूसरी छवि गलत तरीके से प्रदर्शित होती है। यदि आप साथ में पाठ पर नज़र डालते हैं: "दोनों मामलों में हम तुरंत सभी ग्रे पड़ोसियों को छीन सकते हैं क्योंकि इन्हें एक्स के माता-पिता से कभी भी नोड एक्स के माध्यम से बिना पहुंचा जा सकता है।"

'दोनों मामलों' पर जोर।

अवधारणा को 3-आयामी अंतरिक्ष (या बिल्ली, यहां तक ​​कि एक एन-आयामी अंतरिक्ष) को लागू करने के संदर्भ में, यह एल्गोरिदम ए * से अलग नहीं है जिसमें यह नोड्स और कनेक्शन का जाल है। आयाम पूरी तरह से आपके विवेकाधिकार पर है।

+0

मुझे विश्वास नहीं है कि यह सच है। यदि दूसरी छवि बस पहले का घूर्णन संस्करण है, तो दोनों को भी क्यों प्रदर्शित करें? क्यों न केवल पहले प्रदर्शित करें? इसके अलावा, चित्रा 3 में श्रृंखला भी असमानता का प्रदर्शन करती है। – Puppy

0

हाँ, JPS मिठाई लेकिन विशिष्ट बाधाओं के साथ नक्शे तक ही सीमित है:

  1. नक्शा एक ग्रिड से बताना होगा।
  2. ग्रिड में सभी सुलभ कोशिकाओं में समान ट्रैवर्सल लागत होनी चाहिए।
  3. चलती एजेंट के पास यात्रा के 8 संभावित दिशाएं होनी चाहिए: 4 मुख्य दिशा-निर्देश और 4 विकर्ण।

    1. कम से कम ज्यामितीय (अवरोधों के अभाव में) दो अंक के बीच मार्ग भी एक कम से कम लागत वाली मार्ग है:

    कुंजी एल्गोरिथ्म है कि इन प्रतिबंधों का कुछ प्रमुख मान्यताओं अनुमति देते हैं।

  4. दो बिंदुओं (बाधाओं की अनुपस्थिति में) के बीच कम से कम लागत पथ की दिशा में एक से अधिक परिवर्तन की आवश्यकता नहीं है।

इन मान्यताओं एल्गोरिथ्म सममित पथ विकल्पों पर ध्यान न दें और संचालित करने के लिए इस प्रकार की अनुमति देते हैं:

  1. जब एक कार्डिनल दिशा आप केवल एक बाधा में से एक में सामना करना पड़ा है दिशा परिवर्तन विचार करने की जरूरत में यात्रा कागजात में चित्रित पदों। इन बिंदुओं जहां दिशा में परिवर्तन माना जाना है "जंप पॉइंट्स" हैं।
  2. जब आप तिरछे यात्रा करते हैं तो आपको केवल दिशा में बदलाव की आवश्यकता होती है जब कागज़ में सचित्र रूप से दो ब्रैकेटिंग "फॉरवर्ड-लुकिंग" कार्डिनल दिशानिर्देशों में से एक में एक कूद बिंदु "देखा" जा सकता है।