Rzuć kostką 6-stronne aż do całkowitego . Średnia ilość, o którą jest przekroczony?

11

Oto pytanie:

Rzucasz iteracyjnie uczciwymi 6-stronnymi kostkami, aż suma rzutów kostek będzie większa lub równa M. Jakie jest średnie i standardowe odchylenie sumy minus M, gdy M = 300?

Czy powinienem napisać kod, aby odpowiedzieć na tego rodzaju pytania?

Proszę dać mi kilka wskazówek na ten temat. dzięki!

eli
źródło
1
Dodaj [self-study]tag i przeczytaj jego wiki . Następnie powiedz nam, co rozumiesz do tej pory, czego próbowałeś i gdzie utknąłeś. Podamy wskazówki, które pomogą Ci się odblokować.
Gung - Przywróć Monikę
2
Podejrzewam, że można odczytać jako „bardzo duże ”, ponieważ uważam, że lub dałoby prawie taki sam wynik. Co chciałbym zrobić, to znaleźć rozkład suma minus . M=300MM=301M=999M
Henry

Odpowiedzi:

13

Z pewnością możesz użyć kodu, ale nie symulowałbym.

Zignoruję część „minus M” (możesz to zrobić dość łatwo na końcu).

Można bardzo łatwo obliczyć prawdopodobieństwa rekurencyjnie, ale rzeczywistą odpowiedź (z bardzo wysokim stopniem dokładności) można obliczyć na podstawie prostego rozumowania.

Niech bułki być . Niech .S t = t i = 1 X iX1,X2,...St=i=1tXi

Niech być najmniejszy wskaźnik gdzie .S τMτSτM

P(Sτ=M)=P(got to M6 at τ1 and rolled a 6)+P(got to M5 at τ1 and rolled a 5)++P(got to M1 at τ1 and rolled a 1)=16j=16P(Sτ1=Mj)

wprowadź opis zdjęcia tutaj

podobnie

P(Sτ=M+1)=16j=15P(Sτ1=Mj)

P(Sτ=M+2)=16j=14P(Sτ1=Mj)

P(Sτ=M+3)=16j=13P(Sτ1=Mj)

P(Sτ=M+4)=16j=12P(Sτ1=Mj)

P(Sτ=M+5)=16P(Sτ1=M1)

Równania podobne do pierwszego powyższego można następnie (przynajmniej w zasadzie) cofać, dopóki nie osiągniesz któregokolwiek z warunków początkowych, aby uzyskać algebraiczną zależność między warunkami początkowymi a oczekiwanymi prawdopodobieństwami (co byłoby uciążliwe i niezbyt pouczające) , lub możesz zbudować odpowiednie równania do przodu i uruchomić je z warunków początkowych, co jest łatwe do zrobienia numerycznie (i tak sprawdziłem moją odpowiedź). Możemy jednak tego wszystkiego uniknąć.

Prawdopodobieństwa punktów są ważonymi średnimi wcześniejszych prawdopodobieństw; te (geometrycznie szybko) wygładzą wszelkie zmiany prawdopodobieństwa z początkowego rozkładu (wszelkie prawdopodobieństwo w punkcie zero w przypadku naszego problemu). The

W przybliżeniu (bardzo dokładne) możemy powiedzieć, że do powinny być prawie równie prawdopodobne w czasie (naprawdę blisko), a więc z powyższego możemy zapisać, że prawdopodobieństwa będą bardzo bliscy bycia w prostych stosunkach, a ponieważ muszą być znormalizowane, możemy po prostu zapisać prawdopodobieństwa.M - 1 τ - 1M6M1τ1

Oznacza to, że widzimy, że gdyby prawdopodobieństwo przejścia od do było dokładnie równe, istnieje 6 jednakowo prawdopodobnych sposobów dotarcia do , 5 do i tak dalej do 1 sposób na dostanie się do .M - 1 M M + 1 M + 5M6M1MM+1M+5

Oznacza to, że prawdopodobieństwa są w stosunku 6: 5: 4: 3: 2: 1 i sumują się do 1, więc są łatwe do zanotowania.

Dokładne obliczenie go (aż do skumulowanych błędów numerycznego zaokrąglenia) przez uruchomienie rekurencji prawdopodobieństwa do przodu od zera (zrobiłem to w R) daje różnice w kolejności .Machine$double.eps( na mojej maszynie) od powyższego przybliżenia (to znaczy: proste rozumowanie zgodnie z powyższymi wierszami daje efektywnie dokładne odpowiedzi, ponieważ są one tak bliskie odpowiedziom obliczonym na podstawie rekurencji, jak przypuszczalibyśmy, że dokładne odpowiedzi powinny być).2.22e-16

Oto mój kod do tego (większość po prostu inicjuje zmienne, praca jest w jednym wierszu). Kod zaczyna się po pierwszym rzucie (aby zaoszczędzić mi wpisania komórki 0, co jest niewielką uciążliwością w R); na każdym kroku pobiera najniższą komórkę, którą można zająć, i przesuwa się do przodu za pomocą rzutu kostką (rozkładając prawdopodobieństwo tej komórki na kolejne 6 komórek):

 p = array(data = 0, dim = 305)
 d6 = rep(1/6,6)
 i6 = 1:6
 p[i6] = d6
 for (i in 1:299) p[i+i6] = p[i+i6] + p[i]*d6

(moglibyśmy użyć rollapply(z zoo), aby zrobić to bardziej wydajnie - lub wielu innych takich funkcji - ale łatwiej będzie to przetłumaczyć, jeśli będę to wyraźnie wyrażać)

Zauważ, że d6jest to dyskretna funkcja prawdopodobieństwa powyżej 1 do 6, więc kod wewnątrz pętli w ostatnim wierszu konstruuje średnie ważone z wcześniejszych wartości. To właśnie ta relacja sprawia, że ​​prawdopodobieństwo wygładza się (aż do kilku ostatnich wartości, którymi jesteśmy zainteresowani).

Oto pierwsze 50 nieparzystych wartości (pierwsze 25 wartości oznaczone kółkami). Przy każdym wartość na osi y reprezentuje prawdopodobieństwo, które zgromadziło się w najbardziej tylnej komórce, zanim przetoczyliśmy ją do następnych 6 komórek.t

wprowadź opis zdjęcia tutaj

Jak widzisz, wygładza się (do , odwrotność średniej liczby kroków, które wykonuje każdy rzut kości) dość szybko i pozostaje stała.1/μ

A kiedy trafimy w , te prawdopodobieństwa maleją (ponieważ nie przedstawiamy z kolei prawdopodobieństwa dla wartości w i dalej)MMM

wprowadź opis zdjęcia tutaj

Zatem oczywiste jest, że idea, że ​​wartości od do powinny być równie prawdopodobne, ponieważ wahania warunków początkowych zostaną wygładzone.M - 6M1M6

Ponieważ rozumowanie nie zależy od niczego, ale jest na tyle duże, że warunki początkowe wypłukują się, tak że do są prawie równie prawdopodobne w czasie , rozkład będzie zasadniczo taki sam dla każdego duże , jak sugerował Henry w komentarzach.M - 1 M - 6 τ - 1 M.MM1M6τ1M

Patrząc wstecz, wskazówka Henry'ego (która jest również w twoim pytaniu), aby pracować z sumą minus M zaoszczędziłaby trochę wysiłku, ale argument byłby bardzo podobny. Możesz kontynuować, pozwalając i pisać podobne równania dotyczące z poprzednimi wartościami i tak dalej.R 0Rt=StMR0

Z rozkładu prawdopodobieństwa średnia i wariancja prawdopodobieństw są wtedy proste.

Edycja: Przypuszczam, że powinienem podać średnią asymptotyczną i odchylenie standardowe pozycji końcowej minus :M

Średni asymptotyczny nadmiar wynosi a odchylenie standardowe to . Przy jest to dokładne w znacznie większym stopniu, niż możesz się tym przejmować. 253 M=300253M=300

Glen_b - Przywróć Monikę
źródło
+1 Nie w pełni zrozumiałem tę odpowiedź, dopóki nie opracowałem własnej, która teraz wydaje się zbędna. Może niektórzy czytelnicy zobaczą wartość na ilustracji i wynikach symulacji, więc zachowam odpowiedź.
whuber
1
@whuber Moja odpowiedź jest o wiele mniej konkretna, niż bym sobie tego życzył, ponieważ działałam w założeniu, że była to praca domowa (więc unikałam zbytniego wyprowadzania kodu źródłowego lub podawania kodu - bardziej miał na celu zarys). Trudno mi było jednoznacznie napisać odpowiedź na ten problem (w tym konkretność pomaga bardziej niż zwykle). Ponieważ udzieliłeś odpowiedzi zawierającej rzeczywiste liczby i kod (którą odpowiedź zdecydowanie uważam, że powinien zostać), czuję, że mogę zrobić pewne rzeczy, które, mam nadzieję, ułatwią zrozumienie mojej odpowiedzi (wyraźniej, podaj własny kod) .
Glen_b
Kilka lat temu napisałem znacznie lepsze wyjaśnienie tego rodzaju problemu. Jeśli pamiętam / wymyślę, jak poszło, postaram się zamieścić tutaj niektóre z nich.
Glen_b
@Glen_b trochę rozumiał równania. Jestem nowicjuszem. jak zacząć tak myśleć? Czy są jakieś książki, które możesz polecić w tym celu? Twoja odpowiedź byłaby bardzo pomocna.
Zwykły podejrzany
Zwykły podejrzany - napisałem równania, wyobrażając sobie planszę jak długą ścieżkę i idąc „jakie są sposoby, aby dostać się do tej przestrzeni w sposób, który pasuje do warunków problemu i z jakimi szansami?”; Zrobiłem to dla spacji oznaczonej „M”, następnie dla spacji po nim i tak dalej. Napisałem podobne obliczenia dla kodu, wyobrażając sobie, że jestem w pobliżu komórki początkowej i mówiąc: „gdybym tu był, czy byłbym następny, z jakimi szansami?”. Równania to tylko odpowiedzi na te pytania.
Glen_b
8

Ω0nEnn

En={ωΩ|nω}.

XM(ω)ωMXMMXM

XM(ω)M{0,1,2,3,4,5}XMM=kωp(i)=1/6ii=1,2,3,4,5,6

Pr(XMM=k)=j=k6Pr(EM+kj)p(j)=16j=k6Pr(EM+kj).

W tym miejscu możemy heurystycznie argumentować, że w bardzo dobrym przybliżeniu dla wszystkich oprócz najmniejszych ,Wynika to z tego, że oczekiwana wartość rzutu wynosi a jej odwrotnością powinna być ograniczająca, stabilna długofalowa częstotliwość dowolnej wartości w .M

Pr(Ei)2/7.
(1+2+3+4+5+6)/6=7/2ω

Rygorystyczny sposób wykazania tego uwzględnia sposób, w jaki może wystąpić . Występuje albo a następny rzut to ; lub występuje, a kolejny rzut był wynikiem ; lub ... lub pojawia się a następny rzut to . To wyczerpujący podział możliwości, skądEiEi11Ei22Ei66

Pr(Ei)=j=16Pr(Eij)p(j)=16j=16Pr(Eij).

Początkowe wartości tej sekwencji to

Pr(E0)=1;Pr(Ei)=0,i=1,2,3,.

Rysunek: wykres E_i

Ten wykres stosunku do pokazuje, jak szybko szanse opadają do stałej , pokazanej poziomą przerywaną linią.Pr(Ei)i2/7

Istnieje standardowa teoria takich sekwencji rekurencyjnych. Można go opracować za pomocą generowania funkcji, łańcuchów Markowa, a nawet manipulacji algebraicznych. Ogólny wynik jest taki, że istnieje formuła zamknięta dla . Pr(Ei) Będzie to liniowa kombinacja stałej i mocy pierwiastków wielomianuith

x6p(1)x5p(2)x4p(3)x3p(6)=x6(x5+x4+x3+x2+x+1)/6.

Największa wielkość tych pierwiastków wynosi około . W reprezentacji zmiennoprzecinkowej podwójnej precyzji jest zasadniczo zerowy. Dlatego dlaexp(0.314368)exp(36.05)i36.05/0.314368=1152/7

W związku z tym dla , dla wszystkich praktycznych celów możemy przyjąć , skądM=300115EM+kj=2/7

Pr(XMM=(0,1,2,3,4,5))=(27)(16)(6,5,4,3,2,1).

Obliczenie średniej i wariancji tego rozkładu jest proste i łatwe.


Oto Rsymulacja potwierdzająca te wnioski. Generuje prawie 100 000 sekwencji przez , zestawia wartości i stosuje test aby ocenić, czy wyniki są zgodne z powyższym. Wartość p (w tym przypadku) jest wystarczająco duża, aby wskazać, że są one spójne.X 300 - 300 χ 2 0,1367M+5=305X300300χ20.1367

M <- 300
n.iter <- 1e5
set.seed(17)
n <- ceiling((2/7) * (M + 3*sqrt(M)))
dice <- matrix(ceiling(6*runif(n*n.iter)), n, n.iter)
omega <- apply(dice, 2, cumsum)
omega <- omega[, apply(omega, 2, max) >= M+5]
omega[omega < M] <- NA
x <- apply(omega, 2, min, na.rm=TRUE)
count <- tabulate(x)[0:5+M]
(cbind(count, expected=round((2/7) * (6:1)/6 * length(x), 1)))
chisq.test(count, p=(2/7) * (6:1)/6)
Whuber
źródło