रैंडम पिकर

किसी भी सूची को पेस्ट करें — नाम, कार्य या विचार — और टूल को निष्पक्ष रूप से चुनने दें। प्रत्येक ड्रॉ आपके ब्राउज़र में चलता है, इसलिए आपकी सूची कभी भी आपके डिवाइस से बाहर नहीं जाती।

चुनने के लिए जनरेट दबाएं
विभाजक डिफ़ॉल्ट रूप से अपने आप चुना जाता है, या आप इसे नीचे सेट कर सकते हैं।
उन्नत विकल्प

गिवअवे (giveaway) के विजेता को चुनना हो, क्लास में किसी छात्र को बुलाना हो, या यह तय करना हो कि आज बर्तन कौन धोएगा? यह मुफ़्त ऑनलाइन टूल आपकी दी गई किसी भी सूची से निष्पक्ष और यादृच्छिक रूप से नाम चुनता है। बस अपनी सूची को 'आइटम' बॉक्स में पेस्ट करें — प्रत्येक नई लाइन पर एक, या अल्पविराम से अलग करके — 'चयन की संख्या' विकल्प में चुनें कि आपको कितने परिणाम चाहिए, और 'जनरेट करें' बटन दबाएं। एक सूची के लिए कम से कम दो प्रविष्टियों की आवश्यकता होती है और इसमें अधिकतम 1000 नाम रखे जा सकते हैं, जिनमें से प्रत्येक 200 वर्णों तक लंबा हो सकता है।

प्रत्येक चयन सीधे आपके ब्राउज़र में Web Crypto API (crypto.getRandomValues) का उपयोग करके किया जाता है, जो आपके डिवाइस के ऑपरेटिंग सिस्टम से ही क्रिप्टोग्राफ़िक रूप से सुरक्षित यादृच्छिक मूल्य प्रदान करता है। आपकी सूची कभी भी किसी सर्वर पर नहीं भेजी जाती, कहीं भी लॉग नहीं की जाती, और हमारे द्वारा कभी नहीं देखी जाती — और अन्य जनरेटर की तुलना में यह यहाँ अधिक मायने रखता है, क्योंकि लोग आमतौर पर ग्राहकों की सूची, क्लास रजिस्टर, या सहकर्मियों के नाम यहाँ पेस्ट करते हैं। 'फ़ाइल से लोड करें' बटन भी यही वादा निभाता है: आपका ब्राउज़र फ़ाइल को स्वयं पढ़ता है और इंटरनेट पर कुछ भी अपलोड किए बिना स्थानीय रूप से बॉक्स को भर देता है।

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

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

वास्तव में यह चयन कैसे होता है? जब आप 'जनरेट करें' दबाते हैं, तो यह पेज Math.random() जैसे किसी JavaScript स्यूडो-रैंडम फ़ंक्शन पर निर्भर रहने के बजाय, crypto.getRandomValues के माध्यम से ब्राउज़र से रैंडम मूल्य मांगता है और उनका उपयोग आपकी सूची में स्थानों को चुनने के लिए करता है। कच्चे 32-बिट मूल्य को किसी स्थान में बदलते समय ही रैंडम पिकर चुपचाप गलती करते हैं: सूची की लंबाई के अनुसार उस मूल्य को विभाजित करके शेषफल (modulo) लेना सबसे स्पष्ट लेकिन पक्षपातपूर्ण तरीका है, क्योंकि जब तक कि 2^32 संख्या सूची की लंबाई से पूरी तरह विभाजित न हो जाए, सूची की शुरुआत की प्रविष्टियां बाकी हिस्सों की तुलना में थोड़ी अधिक बार आती हैं। इस खामी को modulo bias कहा जाता है, और यह केवल सैद्धांतिक नहीं, बल्कि मापने योग्य है। यह पिकर इसके बजाय सूची की लंबाई के सबसे बड़े सटीक गुणक से अधिक किसी भी मूल्य को हटा देता है और फिर से ड्रॉ करता है — इस तकनीक को rejection sampling कहा जाता है। इसके लिए पृष्ठभूमि में कुछ अतिरिक्त ड्रॉ की आवश्यकता होती है, लेकिन यह अनुमानित परिणाम के बजाय सटीक निष्पक्षता की गारंटी देता है। सूची में स्थान कुछ भी नहीं बदलता: पहली और आखिरी प्रविष्टि हर ड्रॉ पर समान संभावना रखती है।

'दोहराव न होने दें' स्विच दो बिल्कुल अलग तरह के ड्रॉ को अलग करता है, और सांख्यिकी में हर एक का अपना नाम है। इसके चालू रहने पर, पिकर Fisher-Yates एल्गोरिदम का उपयोग करके आपकी सूची की एक प्रति को फेंट देता है और ऊपर से प्रविष्टियां लेता है — ठीक वैसे ही जैसे टोपी से बिना वापस रखे पर्चियां निकालना, ताकि किसी को भी दो बार न चुना जाए और उस आकार के प्रत्येक समूह की संभावना समान हो। इसे sampling without replacement कहा जाता है, और पुरस्कार विजेताओं, टीमों और बारी तय करने के लिए आपको यही चाहिए। इसके बंद होने पर, प्रत्येक चयन पूरी सूची से स्वतंत्र रूप से किया जाता है, इसलिए एक ही प्रविष्टि एक से अधिक बार आ सकती है — जिसे sampling with replacement कहा जाता है, जो तब आवश्यक होता है जब दोहराए गए ड्रॉ या त्वरित सांख्यिकीय नमूने की तरह हर राउंड में हर कोई योग्य बना रहता है। इनमें से कोई भी मोड दूसरे से अधिक निष्पक्ष नहीं है; वे केवल अलग-अलग सवालों के जवाब देते हैं।

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

यह यादृच्छिक चयन टूल ही क्यों चुनें?

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

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

FAQ

मैं किसी सूची से रैंडम नाम कैसे चुनूँ?

नामों को 'आइटम' बॉक्स में पेस्ट करें — प्रत्येक नई लाइन पर एक, या अल्पविराम या स्पेस से अलग करके — 'चयन की संख्या' को 1 पर छोड़ दें और 'जनरेट करें' दबाएं। एक नाम तुरंत चुन लिया जाएगा। एक साथ कई नामों के लिए, 'चयन की संख्या' को अपनी ज़रूरत के अनुसार बढ़ाएं।

क्या यह चयन वास्तव में निष्पक्ष है?

हाँ। प्रत्येक चयन आपके ब्राउज़र के Web Crypto API (crypto.getRandomValues) के साथ rejection sampling का उपयोग करता है, जो उस modulo bias को दूर करता है जो एक साधारण कोडिंग की वजह से उत्पन्न हो सकता था। सूची में इसके स्थान की परवाह किए बिना प्रत्येक प्रविष्टि की बिल्कुल समान संभावना होती है, और कई अलग-अलग प्रविष्टियां निकालते समय Fisher-Yates शफ़ल का उपयोग किया जाता है, इसलिए उस आकार के प्रत्येक समूह की संभावना भी समान होती है।

क्या मेरी सूची आपके सर्वर पर अपलोड होती है?

नहीं। पूरा ड्रॉ स्थानीय रूप से आपके ब्राउज़र में चलता है: सूची, चयन और इतिहास कभी भी आपके डिवाइस से बाहर नहीं जाते, इसलिए नाम, ईमेल या किसी भी निजी सूची को सुरक्षित रूप से पेस्ट किया जा सकता है। 'फ़ाइल से लोड करें' बटन भी स्थानीय है — आपका ब्राउज़र स्वयं फ़ाइल पढ़ता है और इंटरनेट पर कुछ भी अपलोड नहीं किया जाता।

क्या मैं प्रति पंक्ति एक आइटम के बजाय अल्पविराम या स्पेस से अलग की गई सूची पेस्ट कर सकता हूँ?

हाँ। 'आइटम विभाजक' डिफ़ॉल्ट रूप से 'स्वचालित पहचान' पर सेट होता है, जो अपने आप लाइन ब्रेक और अल्पविराम को अलग कर लेता है, इसलिए स्प्रेडशीट, चैट संदेश या दस्तावेज़ से कॉपी की गई सूची बिना किसी बदलाव के काम करती है। स्पेस से अलग की गई सूची के लिए एक अतिरिक्त कदम की आवश्यकता होती है — 'आइटम विभाजक' को 'स्पेस' पर सेट करें — क्योंकि पूरे नाम जैसी प्रविष्टियों में खुद स्पेस होते हैं और उन्हें स्वचालित रूप से विभाजित करने से सूची टूट जाएगी। यदि आपके डेटा में अलग-अलग प्रारूप मिले हुए हैं, तो 'आइटम विभाजक' को 'नई पंक्ति' या 'अल्पविराम' पर लॉक करें।

'दोहराव न होने दें' स्विच क्या करता है?

'दोहराव न होने दें' के चालू होने पर, चुना गया हर आइटम अलग होता है — ठीक वैसे ही जैसे टोपी से पर्चियां निकालते समय उन्हें वापस न रखना, जो कि पुरस्कार विजेताओं या टीमों के लिए बिल्कुल सही है। इसके बंद होने पर, एक ही प्रविष्टि को एक से अधिक बार चुना जा सकता है, जिसे सांख्यिकीविद् sampling with replacement कहते हैं।

'दोहराव न होने दें' और 'आउटपुट प्रारूप' नियंत्रण धूसर (निष्क्रिय) क्यों हैं?

क्योंकि दोनों तभी लागू होते हैं जब आप एक से अधिक प्रविष्टि निकालते हैं, जैसा कि उनके बगल में मौजूद संकेत कहता है: 'केवल तभी लागू होता है जब चयन की संख्या 1 से अधिक हो'। 'चयन की संख्या' को बढ़ाकर 2 या उससे अधिक करें और दोनों उपलब्ध हो जाएंगे; 1 की संख्या पर डुप्लिकेट करने या अलग करने के लिए कुछ नहीं होता।

'आउटपुट प्रारूप' विकल्प क्या करता है?

यह निर्धारित करता है कि एक साथ कई चयनों को कैसे दिखाया और कॉपी किया जाएगा: 'प्रत्येक नई पंक्ति पर', त्वरित चैट संदेश के लिए 'स्पेस से अलग किया गया', या किसी स्प्रेडशीट या स्क्रिप्ट में पेस्ट करने के लिए 'अल्पविराम से अलग किया गया'। यह तब उपलब्ध होता है जब 'चयन की संख्या' 2 या उससे अधिक हो।

'फेरबदल करें' और 'क्रमबद्ध करें' बटन क्या करते हैं?

'फेरबदल करें' बटन 'आइटम' बॉक्स के अंदर प्रविष्टियों के क्रम को मिला देता है, और 'क्रमबद्ध करें' उन्हें वर्णानुक्रम में और संख्याओं को उनके प्राकृतिक क्रम में व्यवस्थित करता है — फिर से क्लिक करने पर यह क्रम उलट जाता है। दोनों केवल यह बदलते हैं कि आपकी सूची कैसे लिखी गई है, यह नहीं कि ड्रॉ कैसे काम करता है: प्रविष्टियां किसी भी क्रम में हों, पिकर समान रूप से निष्पक्ष रहता है।

सूची में कितने आइटम हो सकते हैं, और मैं एक बार में कितने चुन सकता हूँ?

सूची में 2 से 1000 प्रविष्टियां हो सकती हैं, जिनमें से प्रत्येक अधिकतम 200 वर्णों की हो सकती है, और एक ड्रॉ में 100 तक चयन मिल सकते हैं। खाली पंक्तियों और आस-पास के स्पेस को अनदेखा कर दिया जाता है, इसलिए किसी स्प्रेडशीट या दस्तावेज़ से पेस्ट की गई सूची जैसी है वैसी ही काम करती है।

क्या यह गिवअवे या रैफ़ल विजेताओं को चुनने के लिए उपयुक्त है?

हाँ, और यह इसके सबसे आम उपयोगों में से एक है। प्रतिभागियों के नाम पेस्ट करें, 'चयन की संख्या' को पुरस्कारों की संख्या पर सेट करें, 'दोहराव न होने दें' को चालू रखें ताकि कोई भी दो बार न जीते, और 'जनरेट करें' दबाएं। चूंकि ड्रॉ में क्रिप्टोग्राफ़िक रूप से सुरक्षित रैंडमनेस का उपयोग किया जाता है और यह पूरी तरह से आपके डिवाइस पर चलता है, इसलिए प्रक्रिया को समझाना आसान है, और यदि बाद में कोई प्रतिभागी सवाल उठाता है तो 'इतिहास' परिणाम को सुरक्षित रखता है।

क्या मैं इसका उपयोग लोगों को टीमों में बांटने के लिए कर सकता हूँ?

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

एक ही नाम लगातार दो बार क्यों आया?

क्योंकि स्वतंत्र ड्रॉ खुद को दोहराते हैं, और वास्तविक रैंडमनेस ऐसी ही दिखती है। प्रत्येक ड्रॉ अपने से पहले के हर ड्रॉ को अनदेखा कर देता है, इसलिए दस नामों की सूची में एक ही नाम के लगातार दो बार आने की संभावना हर बार 10 में से 1 होती है — यह सामान्य है, कोई त्रुटि नहीं। यदि आप चाहते हैं कि एक ड्रॉ के भीतर प्रत्येक चयन अलग हो, तो 'दोहराव न होने दें' चालू करें।

क्या पिकर मेरे चयनों को याद रखता है, और क्या यह मुफ़्त है?

'इतिहास' आपके पिछले 10 ड्रॉ को आपके अपने ब्राउज़र में सहेजता है, ताकि आप पुराने परिणाम को पुनर्स्थापित, कॉपी या हटा सकें, और जब चाहें पूरी सूची साफ़ कर सकें। यह टूल बिना किसी साइन-अप के पूरी तरह से मुफ़्त है, और चूंकि कोई डेटा ट्रांसमिट नहीं किया जाता है, इसलिए चाहकर भी हम आपके चयन को देख या सहेज नहीं सकते हैं।