मनुष्य कुछ “अनिर्दिष्ट” समस्याओं का समाधान क्यों कर सकता है?


44

उच्च-क्रम पैटर्न मिलान एक समस्या है। इसका मतलब है कि कोई एल्गोरिथ्म नहीं है, जो एक समीकरण दिया गया है a => b, जहां aऔर bटाइप किए गए लंबोदा पथरी पर खुले शब्द हैं, एक प्रतिस्थापन का पता लगाता Sहै aS => bS, जैसे कि =>" जहां एक ही Bn सामान्य रूप है"। फिर भी, मानव उस समस्या को कुशलता से हल कर सकता है। उदाहरण के लिए, निम्नलिखित समस्या को देखते हुए:

a = (λt . t 
    (F (λ f x . (f (f (f x))))) 
    (F (λ f x . (f (f x)))))
b = (λ t . t
    (λ f x . (f (f (f (f (f (f x)))))))
    (λ f x . (f (f (f (f x))))))

लैम्ब्डा कैलकुलस पर पर्याप्त ज्ञान रखने वाला कोई भी व्यक्ति Fचर्च के नंबरों के लिए "डबल" फ़ंक्शन को नोटिस करने में सक्षम होगा , जल्दी से समाधान में आ जाएगा

 F = (λ a b c . (a b (a b c)))

मेरा प्रश्न है: यदि यह समस्या अनिर्णायक है, तो मनुष्य कैसे जल्दी और आसानी से इसे हल कर सकते हैं?


24
"मनुष्य उस समस्या को कुशलता से हल कर सकता है" - उद्धरण की आवश्यकता है। उसके लिए आपके पास क्या सबूत है? एक उदाहरण दिखाना जहां आप इसे कुशलता से हल कर सकते हैं इसका मतलब यह नहीं है कि आप समस्या के सभी उदाहरणों के लिए इसे कुशलता से हल कर सकते हैं। आप यह साबित नहीं कर सकते कि "X सत्य है, सभी X के लिए" X का एक उदाहरण दिखा कर जहाँ X सत्य है।
डीडब्ल्यू

33
एक समस्या अनिर्दिष्ट है जिसका अर्थ है कि कोई एल्गोरिथ्म नहीं है जो समस्या के हर उदाहरण के लिए "हां" या "नहीं" का सही उत्तर देता है। इसका मतलब यह नहीं है कि एक एल्गोरिथ्म मिल सकता है जो समस्या के कुछ (या कई) उदाहरणों को हल करता है। [हे। जैसा कि डीडब्ल्यू ने जवाब दिया था जब मैं इस टिप्पणी की रचना कर रहा था।]
रिक डेकर

23
इस समस्या का समाधान निकले? मैं भी इस समस्या को नहीं समझता
माइकइलियार

2
जिस तरह से मैं यह समझ गया वह यह है: यह समाधान एक तदर्थ है। समस्या के प्रत्येक उदाहरण में एक है - ज्यादातर मामलों में जितनी आसानी से आपके उदाहरण में प्रेरित नहीं किया गया है, लेकिन आप हमेशा कह सकते हैं कि 'अगर आपको उदाहरण X, आउटपुट Y मिलता है, क्योंकि एल्गोरिथम को केवल शुद्धता के आधार पर आंका जा सकता है - लेकिन इस तरह के सभी समाधानों को हार्ड-कोडिंग करना एक परिमित प्रक्रिया का उत्पादन नहीं करता है (जो कि एकमात्र उचित प्रकार है और इस प्रकार आमतौर पर इसका मतलब है)। वैकल्पिक रूप से कहा गया है, एक समस्या के लिए निर्णायक होने के लिए आपको यह देखने की अनुमति नहीं है कि एल्गोरिथम की रणनीति चुनने से पहले कौन सा उदाहरण दिया गया है।
वांडरमॉन्ड

इसके अलावा, यही कारण है कि केवल अनंत संख्या में समस्याओं को आम तौर पर माना जाता है या ऐसे कहा जाता है, क्योंकि आप अन्यथा ऊपर दिए गए सभी समाधानों की गणना कर सकते हैं।
वंडरमोंड

जवाबों:


78

मनुष्य उस समस्या के कुछ उदाहरणों को कुशलता से हल कर सकता है , लेकिन यह मानने का कोई कारण नहीं है कि मनुष्य सभी उदाहरणों को कुशलता से हल कर सकता है । एक उदाहरण दिखा रहा है कि एक मानव कुशलता से हल कर सकता है इसका मतलब यह नहीं है कि मनुष्य सभी उदाहरणों को कुशलता से हल कर सकता है।

अनिर्दिष्ट का अर्थ है "कोई एल्गोरिथ्म नहीं है जो सभी उदाहरणों को हल कर सकता है और जो हमेशा समाप्त होता है"। अभी भी एक एल्गोरिथ्म हो सकता है जो कुछ उदाहरणों को हल कर सकता है , यहां तक ​​कि एक अनिर्णायक समस्या के लिए भी।

इसलिए कोई विरोधाभास नहीं है।


23
@ srvm, हाँ, इसका मतलब यह है कि। उदाहरण के लिए, यहां कंप्यूटर एल्गोरिथ्म का एक मूर्ख उदाहरण है: "यदि इनपुट आपके प्रश्न में दिए गए उदाहरण का उदाहरण है, तो आउटपुट F = (λ a b c . (a b (a b c)))और पड़ाव है"। यह एक कंप्यूटर एल्गोरिथ्म है जो कुछ मामलों के लिए समस्या को हल करता है (विशेष रूप से, ठीक 1 मामले के लिए)। हाँ, यह ठीक है - एक नया प्रश्न पूछना जैसे कि ऐसा करना सही लगता है। हमेशा की तरह, कृपया हमें बताएं कि आपने प्रश्न में क्या शोध किया है (आपको पूछने से पहले कुछ करना चाहिए)।
डीडब्ल्यू

10
जहां रियली हार्ड प्रॉब्लम्स यह दावा करती हैं कि एनपी पूरी समस्याओं में भी ज्यादातर उदाहरण आसानी से हल किया जा सकता है। यह मेरे अनुभव से मेल खाता है। आमतौर पर समस्या की विशेषताएं हैं जो समाधान को कम से कम (कम से कम हिस्सा) बनाते हैं। कठिन लोगों को ध्यान से सफलता और विफलता के बीच संतुलित कर रहे हैं, लेकिन वहाँ उन में से कई नहीं कर रहे हैं।
रॉस मिलिकन

3
@ srvm यदि आप इसके बारे में सोचते हैं, तो विशेष मामलों में इस तरह की कठिन समस्याओं को हल करना बिल्कुल वैसा ही है जैसा एक अनुकूलक को करना होता है।
Cort Ammon

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


3

टिप्पणियों में से एक के रूप में, एक को पता होना चाहिए कि व्यवहार में उच्च आदेश पैटर्न मिलान को हल करने के लिए कुछ बहुत अच्छे एल्गोरिदम हैं (जैसा कि एक त्वरित Google खोज प्रकट करेगी)।

मैं इस विशेष समस्या को हल करने वाले किसी भी बारे में नहीं जानता, लेकिन यह "दोहरीकरण" समस्या कार्यक्रम संश्लेषण के क्षेत्र के करीब महसूस करती है । मेरा मानना ​​है कि प्रोग्राम सिंथेसिस सिस्टम हैं जो इस तरह की समस्या से निपट सकते हैं।

ऐसे उदाहरणों को बनाना आसान है जो उन प्रणाली को चोक कर देते हैं, और ऐसा लगता है कि मनुष्य इस प्रकार की समस्याओं में विशेष रूप से अच्छा है। इन प्रकार की समस्याओं को हल करने की क्षमता में मनुष्यों के करीब आने वाले एल्गोरिदम बनाना, स्वचालित प्रमेय साबित करने और कृत्रिम बुद्धिमत्ता (अधिक महत्वाकांक्षी / अवास्तविक प्रयासों के लिए) के दायरे में है ।


1

मनुष्य हमेशा अपने ज्ञान के साथ समस्या को हल करने की कोशिश करता है, इसलिए मनुष्य समस्या के कुछ उदाहरणों के साथ समस्या को हल करने के लिए कुछ एल्गोरिदम विकसित करता है। मानव में एक एल्गोरिथ्म विकसित होता है, लेकिन कोई निश्चितता नहीं है कि विशेष एल्गोरिथ्म हर एक समस्या को हल कर सकता है। इसलिए कोई भी एल्गोरिथ्म हर समस्या को हल नहीं कर सकता है, लेकिन अभी भी कुछ समस्या है जिसे मानव द्वारा हल किया जा सकता है, भले ही इसके लिए कोई सही एल्गोरिदम न हो, जैसे कि हम कह सकते हैं कि हम जानते हैं कि किसी समस्या को कैसे हल किया जाए, लेकिन हमारे पास एक एल्गोरिथ्म नहीं है ।


8
क्या यह मौजूदा जवाब का सिर्फ एक उदाहरण नहीं है? मुझे पता है कि मैंने आपके अधिकांश जवाबों की आलोचना की है, तो निम्नलिखित ध्वनिहीन लग सकता है, लेकिन यह नहीं है। यह वास्तव में बहुत अच्छा है कि आप साइट में योगदान करना चाहते हैं। यह वास्तव में बहुत अच्छा होगा यदि आप हमारे 2500 अनुत्तरित प्रश्नों के उत्तर देने में हमारी मदद कर सकते हैं , न कि उन प्रश्नों की तुलना में जहां हमारे पास पहले से ही एक उत्तर है जो वह सब कुछ कहता है जो आप कहना चाहते हैं। धन्यवाद!
डेविड रिचेर्बी
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.