क्या सभी छद्म यादृच्छिक संख्या जनरेटर अंततः आवधिक हैं?


24

क्या सभी छद्म यादृच्छिक संख्या जनरेटर अंततः आवधिक हैं? या वे अंत में आवधिक हैं?

समय-समय पर मेरा मतलब है कि तर्कसंगत संख्याओं की तरह, वे अंत में एक आवधिक परिणाम उत्पन्न करते हैं ...

और छद्म-यादृच्छिक का अर्थ है एल्गोरिदम / यादृच्छिक संख्याओं की गणितीय पीढ़ी ...


7
यह बनाने के लिए एक पांडित्यपूर्ण बिंदु है, लेकिन एक परिमित-मेमोरी कंप्यूटर पर, हर गैर-हॉल्टिंग कार्यक्रम अंततः आवधिक है। आप ट्यूरिंग मशीन पर चलने के रूप में एल्गोरिथ्म का विश्लेषण कर सकते हैं, लेकिन कोई भी PRNG जिसका मेमोरी उपयोग समय के साथ अनबाउंड है, बहुत व्यावहारिक नहीं होगा।
पतरस

@Peter आप कहते हैं "कोई भी PRNG जिसका मेमोरी उपयोग समय के साथ बिना रुके बहुत व्यावहारिक नहीं होगा"। स्मृति के समय के साथ द्विघात या रैखिक का उपयोग होने पर यह व्यावहारिक नहीं हो सकता है, लेकिन क्या होगा यदि यह केवल लघुगणक है? मेरा जवाब देखिए।
डॉन हैच

जवाबों:


39

सभी छद्म आयामी जनरेटर जो बाहर की यादृच्छिकता पर भरोसा नहीं करते हैं और स्मृति की एक सीमित मात्रा का उपयोग करते हैं, आवश्यक रूप से अंततः आवधिक होते हैं क्योंकि उनके पास परिमित अवस्था होती है। आप उन्हें विशाल निर्धारक परिमित ऑटोमेटा के रूप में सोच सकते हैं जिनके पास विशेष "आउटपुट" राज्य हैं जिसमें वे अपना आउटपुट देते हैं। सभी परिमित ऑटोमेटा अंततः आवधिक हैं, और इसलिए सभी छद्म आयामी जनरेटर अंततः आवधिक उत्पादन करते हैं।

हालाँकि, अवधि की अवधि भारी हो सकती है। उदाहरण के लिए, 128 बिट्स की क्रिप्टोग्राफ़िक स्थिति वाला एक PRNG केवल बार 128 बिट्स आउटपुट के बाद ही चक्र कर सकता है , और इसलिए भले ही हर नैनोसेकंड में एक बिट आउटपुट हो, लेकिन सौर मंडल PRNG दोहराता है।2128

यदि PRNG को अनबाउंड मेमोरी (जो यथार्थवादी नहीं है) का उपयोग करने की अनुमति है, तो यह उदाहरण के लिए, के बाइनरी विस्तार का उत्पादन कर सकता है22


टिप्पणियाँ विस्तारित चर्चा के लिए नहीं हैं; इस वार्तालाप को बातचीत में स्थानांतरित कर दिया गया है ।
DW

चैट का लिंक टूट गया है। क्या चर्चा का एक लॉग देखना अभी भी संभव है? : / @ डीडब्ल्यू
oink

@ cchan3141, मैंने इसे बहाल कर दिया है; अब कोशिश करो। हालांकि, सावधान रहें कि टिप्पणियां डिजाइन क्षणिका द्वारा हैं, और वही चैट रूम के लिए जाता है। यदि आपको वहाँ कुछ भी मिलता है जिसका दूसरों के लिए स्थायी मूल्य है, तो मैं आपको उस जानकारी को शामिल करने के लिए उत्तर को संपादित करने का सुझाव देने के लिए प्रोत्साहित करता हूं, या अपने खुद के एक नए उत्तर को पोस्ट करता हूं। धन्यवाद!
डीडब्ल्यू

7

PRNG राज्य-मशीन हैं। यदि वे केवल आंतरिक इनपुट में स्थित हैं (पोकर सितारे RNG के विपरीत जो कि हार्डवेयर और सॉफ्टवेयर का एक संयोजन है, खुद को लगातार ... साउंड सैंपल से सीडिंग करना) आपको मिलेगा (C, S1, ...) जहां C वर्तमान (या पिछले) मान और S1 है, ... राज्यों का एक समूह हो सकता है:

यदि C का संभावित N मान (चूंकि मेमोरी बाउंड है) और आप N + 1 को पुन: टाइप करते हैं, तो आप C के लिए समान मान को कम से कम दो बार हिट करेंगे। यदि आप 2N + 1 बार पुनरावृति करते हैं, तो आप C के लिए समान मान को कम से कम 3 बार हिट करेंगे।

आज्ञा देना टी = (सीटी, एस 1 टी, एस 2 टी) एक निश्चित राज्य (वर्तमान मूल्य और अन्य राज्य) हैं।
M = # {S1 के लिए मान} X {S2 के लिए मान} X {...} संभव राज्यों संयोजनों के कार्डिनल हो (फिर से: जब से मेमोरी बाउंड हुई है)।

यदि आप NM + 1 बार algoritm का पुनरावृत्ति करते हैं, तो आप कम से कम दो बार एक ही स्थिति (Ct, S1t, S2t, ...) तक पहुँचेंगे, इस प्रकार एक ही आउटपुट मान और पहली बार की तुलना में समान निम्न राज्य अनुक्रम उत्पन्न करते हैं, और इसलिए समय-समय पर।


6

छद्म यादृच्छिक अनुक्रम का सरल उदाहरण जो आवधिक नहीं है: क्रम में सभी सकारात्मक पूर्णांकों के द्विआधारी निरूपण को एक साथ समाहित करें:

110111001011101111000...

(एक " Prepend a।" और इसे बाइनरी Champernowne स्थिर कहा जाता है ।)

बेशक यह बहुत उच्च गुणवत्ता नहीं है जहां तक ​​छद्म यादृच्छिक क्रम चलते हैं, लेकिन यह दर्शाता है कि यह बहुत अधिक स्मृति का उपयोग किए बिना संभव है।

π2

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

2128

2128

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