अंगूठे का नियम यह जानने के लिए कि क्या कोई समस्या एनपी-पूर्ण हो सकती है


26

यह प्रश्न स्टैकऑवरफ्लो पर एक टिप्पणी से प्रेरित था ।

गैरी जॉनसन पुस्तक की एनपी-पूर्ण समस्याओं को जानने के अलावा, और कई अन्य; क्या यह जानने के लिए अंगूठे का एक नियम है कि क्या समस्या एनपी-पूर्ण की तरह दिखती है?

मैं किसी कठोर चीज की तलाश नहीं कर रहा हूं, बल्कि ऐसी चीज की जो ज्यादातर मामलों में काम करती है।

बेशक, हर बार हमें यह साबित करना होगा कि एक समस्या एनपी-पूर्ण है, या एनपी-पूर्ण का मामूली रूप है; लेकिन प्रमाण में भाग लेने से पहले प्रमाण के सकारात्मक परिणाम में कुछ आत्मविश्वास होना बहुत अच्छा होगा।


8
मेरे अंगूठे का नियम सरल है: यदि यह एक समस्या की तरह गंध नहीं करता है, जो मैं पहले से ही परिचित हूं, तो यह शायद एनपी-हार्ड (या बदतर) है।
जेफ

12
@ निश्चित रूप से, आप अब तक काफी कुछ समस्याओं से परिचित हैं ... सीएस के नए लोग एक ही नियम का उपयोग करने में सक्षम नहीं हो सकते हैं।
जो

1
@ जो: सच। शायद यह कहना बेहतर होगा: यदि आपको पाठ्यपुस्तक से समस्या नहीं मिली, तो यह शायद एनपी-हार्ड है।
जेफई

2
एक अन्य तरीका यह डाल करने के लिए: यह आश्चर्य की बात है जब एक समस्या नहीं है , एनपी कठिन बजाय जब एक समस्या एनपी कठिन है।
जो

जवाबों:


15

यह निर्धारित करने के लिए मेरा व्यक्तिगत दृष्टिकोण है कि कोई समस्या (यानी एक भाषा ) एनपी-पूर्ण है या नहीं। यदि ये दोनों स्थितियां सत्यापित हैं:एल

  • मुझे लगता है कि अगर एल में हूं तो एक उदाहरण का परीक्षण करने का मतलब है कि मुझे किसी प्रकार के सभी संयोजनों की जांच करने की आवश्यकता हैमैंएल
  • और इस तरह के संयोजन को दो छोटे लोगों में विभाजित करने का कोई तरीका नहीं है

तब बहुत अच्छी तरह से NP- हार्ड हो सकता है।एल

उदाहरण के लिए सबसेट सम समस्या के लिए, मुझे सभी सबसेट को सूचीबद्ध करना होगा और जांचना होगा कि क्या कोई राशि शून्य है। क्या मैं S को दो छोटे सबसेट S 1 और S 2 में विभाजित कर सकता हूं, जिस पर मैं एक समान संपत्ति की जांच करूंगा? हम्म ... वास्तव में नहीं। शायद अगर मैंने S 1 और S 2 के सभी संयोजन की जाँच की, लेकिन यह वास्तव में लंबा होगा ...एसएसएस1एस2एस1एस2

आमतौर पर छोटे टुकड़ों में तोड़ने की क्षमता पी में होने के लिए एक समस्या का एक अच्छा संकेतक है। यह विभाजन और जीत का दृष्टिकोण है। उदाहरण के लिए दो बिंदुओं के बीच सबसे छोटा रास्ता खोजने के लिए, आप संपत्ति का उपयोग कर सकते हैं कि यदि से C तक का सबसे छोटा रास्ता B से होकर जाता है तो यह A से सबसे छोटे पथ से अधिक लंबा नहीं हैसीबीसे B से C हैबीबीसी

बहुत स्पष्ट रूप से यह दृष्टिकोण बहुत बुनियादी है: मैं दिए गए समस्या के लिए एक (बहुपद) एल्गोरिथ्म खोजने की कोशिश करता हूं। अगर मुझे एक नहीं मिल रहा है, तो समस्या मेरे दृष्टिकोण में "कठिन" हो जाती है। फिर सभी एनपी-पूर्णता का तर्क आता है: क्या मैं एक मौजूदा एनपी-पूर्ण समस्या को इस में एन्कोड कर पाऊंगा? (और चूंकि यह आमतौर पर बहुत कठिन है, मैं एक बहुपद एल्गोरिथ्म खोजने के लिए एक बार और कोशिश करता हूं ..)

मुझे संदेह है कि यह सोचने का सामान्य तरीका है। हालांकि यह अज्ञात समस्याओं पर लागू करने के लिए काफी कठिन है। मुझे व्यक्तिगत रूप से एनपी-पूर्णता के पहले उदाहरणों में से एक से आश्चर्यचकित होना याद है जो मुझे बताया गया था: क्लिक समस्या । यह जाँच करने के लिए इतना आसान लग रहा था! इसलिए मुझे लगता है कि अनुभव का इससे बहुत लेना-देना है। इसके अलावा अंतर्ज्ञान कभी-कभी बेकार हो सकता है। मुझे याद है कि कई बार दो समान समस्याओं के बारे में बताया गया था, लेकिन एक पी में था और दूसरा एक छोटे बदलाव के साथ एनपी-पूर्ण था।

मुझे अभी तक एक अच्छा उदाहरण नहीं मिला है (मुझे यहां सहायता की आवश्यकता है), लेकिन यह पोस्ट पत्राचार की समस्या की तरह है : यह एक अनिर्णायक समस्या है लेकिन कुछ वेरिएंट निर्णायक हैं।


7
+1

2
अंगूठे के नियम का एक दिलचस्प अपवाद अनुकूलन समस्याएं हैं जिन्हें रैखिक प्रोग्रामिंग के साथ हल किया जा सकता है। यदि आपने चाल के बारे में सुना है, तो यह देखना कठिन हो सकता है कि असाइनमेंट की समस्या या ग्राफ मिलान जैसी समस्याएं पाली समय में कैसे हल की जा सकती हैं, क्योंकि विभाजन और जीत और गतिशील प्रोग्रामिंग जैसी चालें लागू नहीं होती हैं।
hugomg

एक उदाहरण सबसे लंबे समय तक सामान्य उपसर्ग समस्या है जो 2 अनुक्रमों के लिए पी में है लेकिन एनपी-हार्ड में अधिक के साथ हो जाता है।
क्रिश्चियन विल्मा

14

समस्या-कठोरता पर एक और परिप्रेक्ष्य खेल और पहेली समुदाय से आता है, जहां अंगूठे का नियम यह है कि 'समस्याएं उतनी ही कठिन हैं जितनी संभव हो सकती हैं' (और समस्या में छिपी हुई संरचना से अपवाद आते हैं - मैसिमो के निर्धारक का उदाहरण टिप्पणियाँ इस का एक अच्छा उदाहरण है); चाल तब समझ में आती है कि समस्या कितनी कठिन हो सकती है:

  • n
  • एक बंधे हुए राज्य स्थान के भीतर चालों के अनुक्रम को शामिल करने वाली पहेलियाँ PSPACE में हैं (चूंकि 'मूव ट्री' को आम तौर पर मानक गहराई-पहले तरीके से खोजा जा सकता है, जिसमें बहुपद संख्याओं के विन्यास के लिए केवल भंडारण की आवश्यकता होती है), और PSPACE-complete होते हैं; इसका एक क्लासिक उदाहरण रश आवर है।
  • बहुपद रूप से बंधी हुई गहराई वाले खेल भी PSPACE में हैं; यह APACE के रूप में PSPACE के लक्षण वर्णन का उपयोग करता है, क्योंकि रणनीतियों के सामान्य न्यूनतम-अधिकतम लक्षण वर्णन पूरी तरह से एक वैकल्पिक ट्यूरिंग मशीन की नकल करता है क्योंकि इसके चरित्र के साथ 'खिलाड़ी A के लिए एक चाल मौजूद है, जैसे कि खिलाड़ी B के प्रत्येक उत्तर के लिए, एक उत्तर मौजूद है। खिलाड़ी ए के लिए इस तरह के कदम ... ', आदि वे भी PSPACE- पूर्ण हो जाते हैं; हेक्स और सामान्यीकृत टिक-टैक-टो खेल इसके उदाहरण हैं।
  • पेड़ की गहराई पर एक सीमा के बिना खेल (लेकिन (बहुपद)) बाउंड स्पेस में खेले जाते हैं, चूंकि बहुत सारे कुल पद हैं और पूरे ग्राफ को पदों की संख्या में बहुपद में बनाया जा सकता है और इसका पता लगाया जा सकता है (और इस तरह कुल मिलाकर घातांक) ; ये खेल आम तौर पर पूर्ण-पूर्ण होते हैं। शतरंज, चेकर्स और गो सभी इस श्रेणी में आते हैं।
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.