"सांप" पुनर्निधारण समस्या


13

वीडियोगेम निबलर और स्नेक की जटिलता पर एक छोटी सी पोस्ट लिखते समय ; मैंने पाया कि वे दोनों प्लानर रेखांकन पर पुनर्संरचना समस्याओं के रूप में तैयार किए जा सकते हैं; और ऐसा लगता है कि गति नियोजन क्षेत्र में ऐसी समस्याओं का अच्छी तरह से अध्ययन नहीं किया गया है (उदाहरण के लिए लिंक की गई गाड़ियों या रोबोटों की एक श्रृंखला की कल्पना करें)। खेल अच्छी तरह से जाना जाता है, हालांकि यह संबंधित पुनर्निर्माण मॉडल का एक संक्षिप्त विवरण है:

SNAKE PROBLEM

इनपुट : एक प्लेनर ग्राफ दिया , कंकड़ को नोड्स पर रखा गया है जो एक सरल मार्ग बनाते हैं। कंकड़ सांप का प्रतिनिधित्व करता है , और पहला उसका सिर है। सिर को उसकी वर्तमान स्थिति से एक आसन्न मुक्त नोड में स्थानांतरित किया जा सकता है, और शरीर इसका अनुसरण करता है। कुछ नोड्स एक डॉट के साथ चिह्नित हैं; जब सिर एक बिंदु के साथ एक नोड तक पहुंचता है, तो शरीर सिर के निम्नलिखित चालों में कंकड़ द्वारा बढ़ेगा । नोड पर डॉट सांप के ट्रैवर्सल के बाद हटा दिया जाता है।G=(V,E)lp1,...,plu1,...,ulp1ee

समस्या : हम पूछते हैं कि क्या सांप को ग्राफ के साथ स्थानांतरित किया जा सकता है और लक्ष्य विन्यास तक पहुंच सकता है जहां लक्ष्य विन्यास सांप की स्थिति का पूरा विवरण है, अर्थात कंकड़ की स्थिति।T

यह साबित करना आसान है कि SNAKE समस्या अधिकतम डिग्री 3 के प्लानर ग्राफ पर NP-hard है, भले ही कोई डॉट्स का उपयोग न किया गया हो और SOLID ग्रिड ग्राफ पर भी अगर हम डॉट्स की एक मनमानी संख्या का उपयोग कर सकते हैं। डॉट्स के बिना ठोस ग्रिड ग्राफ़ पर चीजें जटिल हो जाती हैं (यह एक और खुली समस्या से संबंधित है)।

मैं जानना चाहूंगा कि क्या किसी अन्य नाम के तहत समस्या का अध्ययन किया गया है।
और, विशेष रूप से, अगर कोई सबूत है कि यह एनपी में है ...

संपादित करें: प्लॉनर ग्राफ़ पर भी समस्या PSPACE- पूर्ण हो गई और परिणाम बहुत दिलचस्प लगता है, इसलिए यह पता लगाना शेष है कि क्या यह एक नई समस्या है और यदि इसके बारे में ज्ञात परिणाम हैं।

यहाँ छवि विवरण दर्ज करें
एक सरल उदाहरण (कंकड़ हरे रंग में दिखाया गया है, सांप का सिर P1 है)।


1
क्या समस्या में है, कंकड़ की अनुमति है या नहीं इसके साथ कुछ भी नहीं हो सकता है: यदि कंकड़ के बिना साँप की समस्या , तो कंकड़ के साथ सांप की समस्या है, क्योंकि एक प्रमाण पत्र के रूप में हम किस क्रम में निर्दिष्ट कर सकते हैं डॉट्स को उठाया जाता है, एक बिंदु तक पहुंचने से ठीक पहले सांप की स्थिति, और डॉट को चुनने के बाद राज्यों में। इस धारणा के तहत कि कंकड़ के बिना स्नेक की समस्या , एक प्रमाण पत्र मौजूद है जो हमें बताता है कि चाल को "बीच में" कैसे करना है। NPNPeNP
टॉम वैन डेर ज़ंडेन

क्या आप लक्ष्य विन्यास के लिए एक बेहतर और स्पष्ट परिभाषा प्रदान कर सकते हैं? जैसे साँप की स्थिति के पूर्ण विवरण से आपका क्या अभिप्राय है?
सईद

@ सईद: लक्ष्य विन्यास केवल कंकड़ (यानी साँप) की अंतिम स्थिति है। मैं समस्या को स्पष्ट करने के लिए एक आंकड़ा जोड़ूंगा।
मारजियो दे बियासी

आपका प्रश्न पर्याप्त स्पष्ट था, लेकिन मैंने अपनी टिप्पणी में शब्दावली को मिला दिया। इसे "कंकड़" के बजाय हर जगह "डॉट्स" पढ़ना चाहिए।
टॉम वैन डेर ज़ंडेन

@TomvanderZanden: ठीक है धन्यवाद, मैं आपसे सहमत हूं (ज़िमॉक्स के जवाब के लिए मेरी टिप्पणी भी देखें)। मैंने लिखा है ... "के साथ या बिना डॉट्स ..." कहने के लिए कि वे अप्रासंगिक हैं; लेकिन यह पर्याप्त स्पष्ट नहीं था; इसलिए मैंने प्रश्न को संपादित किया और इसे और अधिक स्पष्ट किया।
मारजियो दे बियासी

जवाबों:


8

सांप को एक स्थान से दूसरे स्थान पर ले जाने पर पीएसपीईसी पूरा हो जाता है। सांप PSPACE में तुच्छ रूप से है। हम Hearn के Nondeterministic Constraint Logic से PSPACE की कठोरता को कम करते हैं।

ननदेर्तिमानिक बाधा तर्क

एक बाधा ग्राफ को और किनारों के साथ एक निर्देशित ग्राफ होने दें , जैसे कि प्रत्येक शीर्ष पर आने वाले वजन । दो अड़चनों को देखते हुए, यह एक दूसरे पर आने वाले वजन को ध्यान में रखते हुए, किनारों को करके एक दूसरे में बदलना मुश्किल है । यह तब भी माना जाता है जब ग्राफ प्लेनर होता है और प्रत्येक शीर्ष पर डिग्री , और उसके किनारों में से या सभी का वजन । पूर्व प्रकार के शीर्ष को कहा जाता है और बाद वाले को या (चित्र देखें) कहा जाता है। 12223132एनसीएल गैजेट्स

साँप

हमारे निर्माण में, सांप का सिर कुछ छोटी दूरी पर अपनी पूंछ का पीछा कर रहा होगा और मामूली संशोधनों के साथ उसी चक्र को दोहराने के लिए मजबूर किया जाएगा। हम बाधा ग्राफ के प्रत्येक किनारे को आकृति (लाल रंग में दिखाए गए किनारों) के रूप में एम्बेड करते हैं, जहां हम सांप की स्थिति को मोटी रेखाओं से दर्शाते हैं। एक किनारे के दो किनारे (कोने) होते हैं और साँप उस केंद्रीय मार्ग पर ले जाता है, जिसके किनारे को निर्देशित किया जाता है। एक किनारे को उलट देना

एक किनारे को उलटने के लिए, सांप पहले केंद्र के मार्ग को साफ करता है और फिर उसके शीर्ष के शीर्ष पर पहुंचने के बाद केंद्र मार्ग को ले जाता है।

हम नीचे दिखाए अनुसार बाधा ग्राफ के कोने को एम्बेड करते हैं, जहां तीन रंगीन भागों में से प्रत्येक ऊपर दिखाए गए किनारे गैजेट का आधा हिस्सा है। जिन बिंदुओं पर किनारों को स्पर्श किया जाता है, वे सुनिश्चित करते हैं कि प्रत्येक किनारे के आने वाले वजन को कम से कम है ताकि साँप को कुछ किनारे वाले गैजेट का केंद्र मार्ग लेने के लिए मजबूर किया जा सके।2

साँप और साँप या

अंत में, सभी बढ़त गैजेट की काली रेखाएं एक एकल चक्र बनाने के लिए जुड़ी हुई हैं, इसलिए सांप का सिर अपनी पूंछ का पीछा करता है। यदि दो एज गैजेट्स के बीच, हम काले रास्ते को पर्याप्त लंबा बनाते हैं, तो सांप को हमेशा एक ही चक्रीय क्रम में काले रास्तों को पार करना होगा।

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

स्पैनिंग सबट्री प्लेनर साइकिल

सांप की लक्षित स्थिति को उसी परिवर्तन से प्राप्त किया जा सकता है। इसलिए, एक सांप को पुन: व्यवस्थित करना पीएसपीईसी पूरा है, यहां तक ​​कि प्लानेर ग्राफ पर भी।


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.