क्या यादृच्छिकता वास्तव में है


23

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

हम वास्तव में कैसे जानते हैं कि हमारे द्वारा उत्पादित संख्याओं का एक क्रम वास्तव में यादृच्छिक है और क्या यह हमें किसी निश्चित मॉडल को यथासंभव सटीक रूप से अनुकरण करने में मदद करेगा?



जवाबों:


18

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

यहां एक सहज उदाहरण दिया गया है जो वास्तव में लोगों को दिन में पीछे कर रहा था। सिक्के के क्रम के अनुक्रम पर विचार करें। एक टॉस का परिणाम या तो सिर ( ) या पूंछ ( टी ) है। कहते हैं कि हम दो प्रयोग करते हैं, जहां हम 10 बार सिक्का उछालते हैं। पहला प्रयोग 1 हमें देता है एच , एच , एच , एच , एच , एच , एच , एच , एच , एच । दूसरा प्रयोग E 2 हमें T , T , H , T , H , देता है।HTE1H,H,H,H,H,H,H,H,H,HE2 । परिणाम देखने के बाद, आपको यह दावा करने के लिए लुभाया जा सकता है कि1 में सिक्का के साथ कुछ गड़बड़ था, या कम से कम कुछ अजीब कारण के लिए जो आपको मिला यादृच्छिक नहीं है। लेकिन अगर आप को लगता है दोनों एच और टी संभावित रूप में कर रहे हैं (सिक्का मेला है), या तो प्राप्त करने की संभावना1 या2 के बराबर है ( 1 / 2 ) 10 । वास्तव में,किसी भीविशिष्ट अनुक्रम कोप्राप्त करनाकिसी भीरूप में संभावित है! फिर भी,2 लगता हैT,T,H,T,H,T,T,H,T,HE1HTE1E2(1/2)10E2 यादृच्छिक, और नहीं करता है।E1

सामान्य तौर पर, चूंकि कोलमोगोरोव जटिलता जटिल नहीं है, इसलिए कोई यह गणना नहीं कर सकता है कि संख्याओं का क्रम कितना यादृच्छिक है, कोई फर्क नहीं पड़ता कि किस तरह की दावा की गई "पूरी तरह से यादृच्छिक" प्रक्रिया ने इसे जन्म दिया।


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

1
@dkuper ध्यान दें कि अनंत अनुक्रम जो शुरुआती खंड कोलमोगोरोव जटिलता के अनुसार सभी यादृच्छिक हैं सामान्य होंगे, लेकिन सामान्य होना पर्याप्त नहीं है जो वास्तव में यादृच्छिक माना जा सकता है। उदाहरण के लिए, सामान्य संख्याएँ हैं जिनके सभी प्रारंभिक खंडों में 0 से अधिक 1 है।
क्विन कलेवर

@ क्विन कलेवर हां मैं सहमत हूं, सामान्यता अनंत दृश्यों के लिए हमारे पास (दूसरों के बीच) एक अतिरिक्त उपकरण का एक उदाहरण था। कोलमोगोरोव जटिलता और अन्य अभी भी उपयोगी हैं।
डेनिस

8

जावा (या समान भाषाओं) के मामले में, हम जानते हैं कि रैंडम नंबर बनाने के लिए किस एल्गोरिथम का उपयोग किया जाता है। यदि यह एक एकल बीज के साथ शुरू होता है, संख्या नहीं सब पर यादृच्छिक, यानी अगर हम जानते हैं एक दृश्य में एक 0 , ... , एक n , हम जानते हैं एक मैं + 1 :, या सशर्त संभावना के रूप में कहा गया है कश्मीर , एल , मैं : पी ( एक मैं + 1 = कश्मीर | एक मैं = एल ) { 0 ,aia0,,anai+1

k,l,i:P(ai+1=kai=l){0,1}

फिर भी वे श्रृंखलाएँ संपत्तियों की पूर्ति कर सकती हैं (उदाहरण के लिए WP: स्वतःसंक्रमण देखें ) जो यादृच्छिक संख्याएँ पूरी करती हैं और ये गुण अक्सर कार्यों को पूरा करने के लिए पर्याप्त होते हैं, जहाँ हम "वास्तविक" (जैसे कुछ शारीरिक प्रक्रिया द्वारा उत्पन्न) यादृच्छिक संख्याओं का उपयोग करना चाहेंगे, लेकिन कर सकते हैं ' उन्हें प्रयास।


3

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

यदि आप अपने यादृच्छिक जनरेटर का उपयोग करके असीम रूप से लंबा अनुक्रम उत्पन्न कर सकते हैं, तो इसमें यादृच्छिक वितरण के समान पैरामीटर होने चाहिए। उदाहरण के लिए, यदि आप मानक गाऊसी वितरण का उपयोग कर रहे , तो अपने अनुक्रम 0 का मतलब और के मानक विचलन के करीब पहुंच जाना चाहिए 1 । तो, अपने जनरेटर की जांच करने का एक प्रारंभिक तरीका वास्तव में एक लंबा अनुक्रम उत्पन्न करना है और यह देखना है कि यह वांछित यादृच्छिक वितरण को अनुमानित कर रहा है।(μ=0,σ=1)1

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


3

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

थोड़ा और सटीक होने के लिए, मान लीजिए कि आप क्लास सभी एल्गोरिदम की परवाह करते हैं । A हो सकता हैAA

  • सभी ट्यूरिंग मशीनें जो हमेशा रुकती हैं
  • सभी बहुपद आकार सर्किट परिवार
  • सभी बहुपद समय ट्यूरिंग मशीन
  • सभी लॉगस्पेस ट्यूरिंग मशीन

A(Xn)Xn{0,1}nϵAAA

|Pr[A(Xn)=1]Pr[A(Un)=1]|ϵ,
Un{0,1}n

यह विचार छद्म रूपवाद की किसी भी आधुनिक औपचारिक धारणा के पीछे है।


2

यहाँ दो और सेंट हैं।

यादृच्छिक एल्गोरिदम के बारे में सोचने का एक तरीका यह है कि एक ऐसे बॉक्स को चित्रित किया जाए जो कुछ इनपुट लेता है, उस इनपुट के लिए रहस्यमय चीजें करता है, और कुछ ("अप्रत्याशित") आउटपुट उत्पन्न करता है।

लेकिन इसके बजाय, उन्हें नियतात्मक एल्गोरिदम के रूप में सोचने में मदद मिल सकती है जो दो इनपुट लेते हैं: "सच" इनपुट, और कुछ "यादृच्छिक" इनपुट जो हमें कार्यों से मिलते हैं Math.Random()

[0,1]nlogn

[0,1]nlogn

जैसा कि जोनाथन और फ्राफ़ल ने उल्लेख किया है, अगर एक यादृच्छिक स्रोत "बेतरतीब ढंग से" व्यवहार कर रहा है, तो चेक को छाँटने के तरीके हैं। लेकिन वे सभी ऐसा करेंगे जो इस यादृच्छिक स्रोत से आने वाली भविष्य की जानकारी के बारे में आपका विश्वास है। यदि आपको लगता है कि प्रत्येक बिट समान रूप से शून्य या एक होने की संभावना है, पिछले बिट्स की परवाह किए बिना, तो आपके ज्ञान और विश्वासों में से सबसे अच्छा है, यह स्रोत समान रूप से और स्वतंत्र रूप से यादृच्छिक है और इसलिए, आपके ज्ञान और विश्वासों में से सबसे अच्छा है, यह तेजी से चलेगा या सही होगा। वैसे भी मेरा दार्शनिक लेना है।


-2

हम वास्तव में यादृच्छिक संख्या उत्पन्न नहीं कर सकते हैं। एक निर्दिष्ट समीकरण और एक विशेष बीज मूल्य का उपयोग करके छद्म यादृच्छिक संख्याओं की पीढ़ी के लिए अलग-अलग विधियां हैं। तो संख्याओं का यादृच्छिक क्रम बीज मूल्य पर निर्भर करता है। एक बार जब हम बीज मूल्य जानते हैं, तो हम अनुमान लगा सकते हैं कि अनुक्रम क्या होने जा रहा है। इसके अलावा रैंडम नंबर जेनरेट करने के अन्य तरीके भी हैं। लोग अब कुछ तरीकों का उपयोग करके सच्चे यादृच्छिक संख्या उत्पन्न कर रहे हैं जैसे कि डिस्क हेड मूवमेंट समय और अन्य भौतिक तरीकों का उपयोग करना, जिन्हें कंप्यूटर में शामिल किया जा सकता है: http://en.wikipedia.org/wiki/Random_number_generation#Generation_methods



-3

द्वारा आप की तरह दिया विधि कहा
math.random () जावा में
यादृच्छिक करें; रैंडम (एन); डेल्फी में

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

धन्यवाद।


2
यह इस सवाल का जवाब कैसे देता है कि "किसी को कैसे पता चलता है कि एक क्रम यादृच्छिक है"?
जुहो

जैसा कि मैंने पहले ही कहा था। अन्याय ... जहां "यादृच्छिक" को धोखा के रूप में देखा जा सकता है, लेकिन यह यादृच्छिक प्रभाव को प्रभावित नहीं करता है। तब इसे गर्व करें और अपने तर्क का निर्माण करें। सरल।
उपनाम

-4

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

  • "सच्ची / वास्तविक यादृच्छिकता" निम्न-स्तरीय शारीरिक प्रक्रियाओं और "शोर" के साथ होती है जैसे कि जेनर डायोड, क्वांटम मैकेनिक्स आदि जो हार्डवेयर आधारित आरएनजी में उपयोग किए जा सकते हैं।

  • कंप्यूटर के दायरे में उत्पन्न अन्य संख्याएं "छद्म आयामी" के रूप में जानी जाती हैं, जो कि सिम्युलेटेड है और कभी भी "सच्चे यादृच्छिक" से मेल नहीं खा सकती है। ये तथाकथित PRNG हैं

  • "यादृच्छिक संख्या जनरेटर की क्रिप्टोग्राफ़िक कठोरता" का एक महत्वपूर्ण अर्थ है कि एक अर्थ में उनके "गुणवत्ता" या "सुरक्षा" को देखें जैसे क्रिप्टोग्राफिक रूप से सुरक्षित PRNG । मूल रूप से एक "कमजोर" जनरेटर में "कठिन" जनरेटर के रूप में अधिक कम्प्यूटेशनल जटिलता नहीं होती है और एक "कमजोर" एक को तोड़ने में आसान होता है।

  • O(n)O(n2)=?एनपी प्रमाण में एक निश्चित "जटिलता" होनी चाहिए अन्यथा उसी विश्लेषण तकनीक का उपयोग PRNGs को तोड़ने के लिए किया जा सकता है, और इसके अलावा, कुछ आश्चर्यजनक रूप से, सबसे अधिक या शायद सभी जटिलता वर्ग अलगाव / उस तिथि में ज्ञात तकनीक (या संभवतः बाद में भी , आज तक ) पर्याप्त जटिलता नहीं है।

  • TCS में एक महत्वपूर्ण शोध विषय यादृच्छिकीकृत और व्युत्पन्न एल्गोरिदम है । विचार यह है कि मोटे तौर पर यह अध्ययन करने के लिए कि PRNG के साथ "सही यादृच्छिकता" की जगह एल्गोरिथ्म को कितना बदल दिया जाता है और इस विषय पर विभिन्न गहरे सिद्धांत हैं। यहाँ एक हाईरेंकड cstheory.se प्रश्न है जो इस क्षेत्र में अनुसंधान के कुछ स्वाद देता है: कुशल और सरल यादृच्छिक एल्गोरिदम जहाँ नियतत्ववाद कठिन है

  • TCS का एक अन्य महत्वपूर्ण विषय सूचना एन्ट्रापी है - मूल रूप से भौतिकी में बहुत पहले शुरू किया गया था - जो "सूचना डिस-ऑर्डर" की बारीकी से संबंधित अवधारणा का अध्ययन करता है और (T) CS में कुछ अन्य महत्वपूर्ण अवधारणाओं की तरह लगता है जो क्रॉस-शॉर्टकट में से एक हैं लागू और सैद्धांतिक विश्लेषण के बीच की सीमा, यहां तक ​​कि कुछ सूत्र भी समान हैं

  • फिर से सक्रिय अनुसंधान की स्थिति के लिए, cstheory.se पर अन्य उच्च रैंक वाले प्रश्न हैं जो इस प्रश्न से संबंधित हैं। यहाँ एक करीब है, लगभग समान है: एक सही मायने में यादृच्छिक संख्या जनरेटर ट्यूरिंग कम्प्यूटेबल है


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

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

पी बनाम एनपी कोण के लिए यादृच्छिकता की प्रासंगिकता पर अधिक, यह संतोषजनकता और गुच्छी "संक्रमण बिंदु" में दिखाता है जैसे कि इस पत्र में
रॉममैन

यादृच्छिक संख्या जनरेटर को फिर से तोड़ने पर
आरएनजी

CS में यादृच्छिकता के बारे में संक्षिप्त विवरण RANDOMNESS और PSEUDORANDOMNESS द्वारा
16
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.