सच में यादृच्छिक संख्या जनरेटर: कम्प्यूटिंग ट्यूरिंग?


39

मैं "सही मायने में यादृच्छिक" संख्याओं की पीढ़ी को सुनिश्चित करने के लिए एक निश्चित उत्तर चाह रहा हूं कि ट्यूरिंग कम्प्यूटेबल है। मैं नहीं जानता कि यह कैसे मुहावरा है। StackExchange प्रश्न "रैंडम नंबर जनरेशन के लिए कुशल एल्गोरिदम" मेरे प्रश्न का उत्तर देने के करीब आता है। चार्ल्स स्टीवर्ट अपने जवाब में कहते हैं, "यह [मार्टिन-लोफ यादृच्छिकता] एक मशीन द्वारा उत्पन्न नहीं किया जा सकता है।" रॉस स्नाइडर कहते हैं, "कोई भी नियतात्मक प्रक्रिया (जैसे कि ट्यूरिंग / रजिस्टर मशीनें) 'दार्शनिक' या 'सही' यादृच्छिक संख्या का उत्पादन नहीं कर सकती हैं।" क्या एक स्पष्ट और स्वीकृत धारणा है जो वास्तव में यादृच्छिक संख्या जनरेटर का गठन करती है? और यदि ऐसा है, तो क्या यह ज्ञात है कि इसकी गणना ट्यूरिंग मशीन द्वारा नहीं की जा सकती है?

शायद मुझे प्रासंगिक साहित्य की ओर इशारा करना पर्याप्त होगा। आप जो भी मदद दे सकें मैं उसका आभारी होऊंगा!

संपादित करें। ज्ञानी उत्तर के लिए इयान और हारून का धन्यवाद! मैं इस क्षेत्र में अपेक्षाकृत असुरक्षित हूं, और मैं सहायता के लिए आभारी हूं। यदि मैं इस परिशिष्ट में प्रश्न को थोड़ा बढ़ा सकता हूं: तो क्या यह मामला है कि यादृच्छिकता (एक ओरेकल?) के शुद्ध स्रोत तक पहुंच के साथ एक टीएम, एक फ़ंक्शन की गणना कर सकता है जो एक शास्त्रीय टीएम नहीं कर सकता है?


1
यह मदद करता है अगर आप पहले "वास्तव में यादृच्छिक" की परिभाषा पर विचार करते हैं।
एमएस डौस्ती

जवाबों:


52

मैं काफी देर से चर्चा में शामिल हो रहा हूं, लेकिन मैं पहले पूछे गए कई सवालों को हल करने की कोशिश करूंगा।

सबसे पहले, जैसा कि आरोन स्टर्लिंग द्वारा देखा गया है, पहले यह तय करना महत्वपूर्ण है कि "वास्तव में यादृच्छिक" संख्याओं से हमारा क्या मतलब है, और खासकर अगर हम एक कम्प्यूटेशनल जटिलता या कम्प्यूटेबिलिटी के दृष्टिकोण से चीजों को देख रहे हैं।

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

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

α

1/20α
kwk,0wk,1Ukwk,i2kG=kUk0α

यह परिभाषा तकनीकी लग सकती है लेकिन इसे कई कारणों से सही माना जाता है:

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

एक मार्टिन-लोफ यादृच्छिक अनुक्रम कैसा दिखता है? ठीक है, एक पूरी तरह से संतुलित सिक्का लें और इसे फ्लिप करना शुरू करें। प्रत्येक फ्लिप पर, सिर के लिए 0 और पूंछ के लिए 1 लिखें। समय के अंत तक जारी रखें। यह एक मार्टिन-लोफ अनुक्रम जैसा दिखता है :-)

ααααkakαk2kUkα

αβαnnO(1)βnα


ठीक है, अब जोसेफ के सवाल का "संपादित" हिस्सा है: क्या यह मामला है कि यादृच्छिकता (ओरेकल?) के शुद्ध स्रोत तक पहुंच के साथ एक टीएम, एक फ़ंक्शन की गणना कर सकता है जो एक शास्त्रीय टीएम नहीं कर सकता है?

f:NNfnn

ffnnfϵ>0σσfσ


8
क्या खूबसूरत जवाब है।
सुरेश वेंकट

1
मैं इस पर आपके विस्तृत जवाब की स्पष्टता की सराहना कर रहा हूँ (मुझे!) पेचीदा सवाल। धन्यवाद!
जोसेफ ओ'रोरके

12

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

इस रूपरेखा में, मार्टिन-लोफ परीक्षण को एक नियतात्मक प्रक्रिया के रूप में देखा जा सकता है, और एक यादृच्छिक अनुक्रम की परिभाषा ठीक एक अनुक्रम है जिसका व्यवहार किसी भी मार्टिन-लोफ परीक्षण / ट्यूरिंग कम्प्यूटेशनल / निर्धारक प्रक्रिया द्वारा भविष्यवाणी नहीं किया जाता है।

यह, हालांकि, इस सवाल से भी कहता है: "क्या वास्तविक जीवन में एक यादृच्छिक अनुक्रम प्रभावी रूप से गणना योग्य है?" वास्तव में, यहां एक उद्योग है। वहाँ सीडी यादृच्छिक (?) बिट्स है कि भौतिक प्रणालियों के कंप्यूटर सिमुलेशन प्रदर्शन करने के लिए उपयोग किया जाता है के अरबों के साथ प्रकाशित कर रहे हैं, इन सीडी की गारंटी है कि उनके बिट्स के अनुक्रम मार्टिन-लोफ परीक्षणों का एक गुच्छा पास करते हैं। द ड्रंकयार्ड्स वॉक: हाउ रैंडमनेस रूल्स हमारे लाइव्स इस मुद्दे की एक पॉप-विज्ञान व्याख्या अधिक विस्तार से देते हैं।

अप्रासंगिक बिंदु: मैं आपके कॉलम का आनंद लेता हूं। :-)


11

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


यहां बुक करने के लिए लिंक: amazon.com/…
सुरेश वेंकट

धन्यवाद, इयान और सुरेश, मैं अपने पुस्तकालय से उस पुस्तक को पुनः प्राप्त कर रहा हूँ!
जोसेफ ओ'रोरके

एक और महान पुस्तक है नीस की "कम्प्यूटेबिलिटी और यादृच्छिकता"।
डिएगो डे एस्ट्राडा

11

कोई भी जो यादृच्छिक अंकों के उत्पादन के अंकगणितीय तरीकों पर विचार करता है, निश्चित रूप से, पाप की स्थिति में है। के लिए, जैसा कि कई बार बताया गया है, एक यादृच्छिक संख्या जैसी कोई चीज नहीं है - यादृच्छिक संख्याओं का उत्पादन करने के लिए केवल विधियां हैं, और निश्चित रूप से एक सख्त अंकगणितीय प्रक्रिया ऐसी विधि नहीं है। - जॉन वॉन न्यूमैन


हा! महान बोली, जेफ! और एक मूल बिंदु के साथ।
जोसेफ ओ'रूर्के ने

7

ऐसा लगता है कि किसी ने आपके परिशिष्ट का उत्तर नहीं दिया है, इसलिए मैं इस पर एक शॉट लूंगा:

यदि मैं इस परिशिष्ट में प्रश्न को थोड़ा बढ़ा सकता हूं: तो क्या यह मामला है कि यादृच्छिकता (एक ओरेकल?) के शुद्ध स्रोत तक पहुंच के साथ एक टीएम, एक फ़ंक्शन की गणना कर सकता है जो एक शास्त्रीय टीएम नहीं कर सकता है?

मैं प्रश्न को अधिक सटीक बनाने की कोशिश करने जा रहा हूं, और फिर इसका उत्तर दूंगा। (मेरा संस्करण वह नहीं हो सकता है जो आपके दिमाग में था, लेकिन मुझे बताएं कि क्या यह नहीं है।)

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

तो क्या त्रुटि करने के लिए रैंडमनेस तक पहुंच की अनुमति है? यदि नहीं, तो DTM को सही उत्तर देना चाहिए चाहे वह किसी भी यादृच्छिक बिट्स की आपूर्ति की गई हो। इस मामले में यादृच्छिक बिट अनावश्यक हैं, जैसा कि आप बस यादृच्छिक स्ट्रिंग को 00000 ले सकते हैं ...

fi(x,r)fir


मुझे यह व्यावहारिक लगता है: "यदि नहीं, तो DTM को सही उत्तर देना चाहिए चाहे वह किसी भी बेतरतीब बिट्स की आपूर्ति की गई हो।" धन्यवाद!
जोसेफ ओ'रोरके

वास्तव में मुझे यह नहीं मिलता है। आपको लगता है कि P = ZPP या शून्य त्रुटि के साथ एक यादृच्छिक एल्गोरिथ्म (उदाहरण के लिए एक लास वेगास एल्गोरिथ्म) निर्धारक होना चाहिए?
सुरेश वेंकट

एक भाषा का निर्णय लेने के साथ एक DTM द्वारा, मैंने माना कि DTM समय की एक सीमित मात्रा के बाद रुकता है। इस मामले में, हम ओरेकल से छुटकारा पा सकते हैं। शून्य-त्रुटि के लिए, हम इसे 0000 के साथ प्रतिस्थापित करते हैं ... और किसी भी अन्य उद्देश्य के लिए सभी परिमित लंबाई के यादृच्छिक तारों पर बल लगा सकते हैं। (मुझे यकीन है कि किसी को शायद यह राय है कि लास वेगास एल्गोरिदम वास्तव में एल्गोरिदम नहीं हैं क्योंकि वे जरूरी नहीं हैं।)
रॉबिन कोठारी

5

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


हालांकि स्पष्ट करने के लिए: जो एक यादृच्छिक ओरेकल (जो मूल रूप से एक यादृच्छिक हैश फ़ंक्शन है) या केवल यादृच्छिकता का एक स्रोत चाहते थे? ये एक ही बात नहीं हैं, क्या वे हैं?
सुरेश वेंकट

धन्यवाद, हारून, यादृच्छिकता पदानुक्रम का उल्लेख उपयोगी है।
जोसेफ ओ'रोरके

@ सुरेश: मेरा मतलब यादृच्छिकता का स्रोत था।
जोसेफ ओ'रोरके

आप दोनों शायद यहाँ मेरे आगे आने वाले हैं, लेकिन मैं यह कहना चाह रहा था कि यादृच्छिकता को "संदर्भ के फ्रेम" के सापेक्ष परिभाषित करने की आवश्यकता है, अर्थात, पूर्वानुमान बनाने के लिए उपलब्ध संसाधन। एक "यादृच्छिकता का स्रोत" एक ट्यूरिंग मशीन के संबंध में यादृच्छिक हो सकता है, लेकिन हाल्टिंग ओरेकल के संबंध में नहीं। मैं रॉबिन कोठारी के जवाब से सहमत हूं; मेरा कहना केवल यह था कि एक "यादृच्छिकता का शुद्ध स्रोत" वर्तमान परिभाषाओं के तहत मौजूद नहीं है, क्योंकि हम हमेशा इसके खिलाफ विकर्ण कर सकते हैं और कुछ यादृच्छिक-एर प्राप्त कर सकते हैं।
हारून स्टर्लिंग

5

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

हम जानते हैं कि एक है कि वहाँ बिना शर्त एक उत्तल शरीर निर्धारणात्मक की मात्रा (इस से एक पुराने परिणाम है एक subexponential कारक के साथ करने के लिए अनुमान लगाने के असंभव परिणाम Barany और Füredi )। इसके विपरीत, हम नमूने का उपयोग करके इस समस्या के लिए एक FPRAS प्राप्त कर सकते हैं । क्या यह उस अलगाव का उदाहरण है जिसकी आप तलाश कर रहे हैं?


यह परिणाम बहुपद समय एल्गोरिदम के लिए है, है ना? मैंने ओपी के प्रश्न को कम्प्यूटेबिलिटी सिद्धांत के बारे में बताया, न कि जटिलता सिद्धांत। जिसके द्वारा मेरा मतलब है कि मैंने इसका मतलब यह निकाला कि "क्या DTM द्वारा हल की गई समस्याओं की संख्या DTM + से यादृच्छिकता के स्रोत द्वारा हल की गई है?"
रॉबिन कोठारी

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

मुझे वह मात्रा उदाहरण पसंद है! यद्यपि मैंने विशेष रूप से कम्प्यूटेबिलिटी सिद्धांत के बारे में पूछा, मैं जटिलता अंतरों में भी दिलचस्पी रखता हूं। मैं यह नहीं देखता कि यह सीटी को कैसे अमान्य कर सकता है, क्योंकि पिछले उत्तरों ने स्थापित किया था कि असली यादृच्छिकता का शुद्ध स्रोत कम्प्यूटेशनल नहीं है ...?
जोसेफ ओ'रोरके

मुझे लगता है कि एक बार जब हम एक DTM द्वारा यादृच्छिकता के स्रोत तक पहुँच के साथ हमारा मतलब समझ लेते हैं (इसके स्वीकार्यता मानदंड, संभावना को कम कर देते हैं, आदि), तो हमें यह दिखाने में सक्षम होना चाहिए कि यह मॉडल भी पुनरावर्ती भाषाओं की गणना करता है।
रोबिन कोठारी

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