चीजों पर नज़र रखने से आपको एक सटीक सूत्र मिल सकता है ।
चलो सफलता और की संभावना हो कश्मीर = 8 एक पंक्ति आप की गणना करना चाहते में सफलताओं की संख्या हो। ये समस्या के लिए तय किए गए हैं। परिवर्तनीय मूल्य मीटर हैं , ब्लॉक में छोड़े गए परीक्षणों की संख्या; और जे , पहले से ही देखी गई लगातार सफलताओं की संख्या। एम परीक्षणों के समाप्त होने से पहले अंततः एक पंक्ति में k सफलताओं को प्राप्त करने का मौका दें, f p , k ( j , m ) लिखा जाए । हम चाहते हैं च 1 / 3 , 8 (पी = 1 / 3के = 8मजेकमचपी , के( जे , एम ) ।च1 / 3 , 8( 0 , 25 )
मान लीजिए कि हमने अभी तक हमारे सफलता को m > 0 परीक्षणों के साथ एक पंक्ति में देखा है । अगला परीक्षण या तो एक सफलता है, संभाव्यता पी के साथ - जो केस j को बढ़ाकर j + 1 - किया जाता है; या यह एक विफलता है, प्रायिकता के साथ 1 - p - जो मामला j 0 पर रीसेट है । या तो मामले में, मी 1 से कम हो जाता है । जहां सेजेवेंम > ०पीजेज + १1 - पीजे0म1
चपी , के( j , m ) = p fपी , के( j + 1 , m - 1 ) + ( 1 - p ) fपी , के( 0 , मी - 1 ) ।
शुरू करने की स्थिति के रूप में हम स्पष्ट परिणाम हो के लिए मीटर ≥ 0 ( यानी , हम पहले ही देख चुके कश्मीर एक पंक्ति में) और च पी , कश्मीर ( जे , मीटर ) = 0 के लिए कश्मीर - j > m ( यानी , k पाने के लिए पर्याप्त परीक्षण नहीं हैंचपी , के( के , एम ) = 1मी ≥ ०कचपी , के( जे , एम ) = 0के - जे > एमkएक पंक्ति में)। यह अब तेज और सीधा है (डायनेमिक प्रोग्रामिंग का उपयोग कर या, क्योंकि इस समस्या के पैरामीटर इतने छोटे हैं, पुनरावृत्ति) गणना करने के लिए
fp,8(0,25)=18p8−17p9−45p16+81p17−36p18.
जब इस पैदावार +८०८९७ / 43,046,721 ≈ .००,१८,७९३ ।p=1/380897/43046721≈0.0018793
इसका R
अनुकरण करने के लिए अपेक्षाकृत तेज़ कोड है
hits8 <- function() {
x <- rbinom(26, 1, 1/3) # 25 Binomial trials
x[1] <- 0 # ... and a 0 to get started with `diff`
if(sum(x) >= 8) { # Are there at least 8 successes?
max(diff(cumsum(x), lag=8)) >= 8 # Are there 8 successes in a row anywhere?
} else {
FALSE # Not enough successes for 8 in a row
}
}
set.seed(17)
mean(replicate(10^5, hits8()))
गणना के 3 सेकंड के बाद, आउटपुट । हालांकि यह उच्च दिखता है, यह केवल 1.7 मानक त्रुटियां हैं। मैंने एक और 10 6 पुनरावृत्तियों को चलाया , 0.001867 उपज : केवल 0.3 मानक त्रुटियों की अपेक्षा कम। (डबल-चेक के रूप में, क्योंकि इस कोड के एक पुराने संस्करण में एक सूक्ष्म बग था, मैंने 0.0018475 का अनुमान प्राप्त करते हुए , गणितज्ञ में 400,000 पुनरावृत्तियों को चलाया ।)0.002131060.0018670.30.0018475
यह परिणाम है कम दसवां के अनुमान की तुलना में सवाल में। लेकिन शायद मैं पूरी तरह से यह समझ में नहीं: की "आप 8 कुल ब्लॉक ... 8 परीक्षणों एक पंक्ति में सही कर प्राप्त करने के लिए" एक और व्याख्या है कि इस सवाल का जवाब किया जा रहा बराबरी की मांग की 1 - ( 1 - च 1 / 3 , 8 ( 0 , 25 ) ) 8 ) = .०१,४९,३५८ ... ।1−(1−(1/3)8)136≈0.02051−(1−f1/3,8(0,25))8)=0.0149358...