Hogyan lehet könnyen meghatározni az eredményeloszlást több kocka esetén?
On február 13, 2021 by adminKiszámítom a valószínűségeloszlást a kocka kombinációjának teljes számára.
Emlékszem, hogy a valószínűsége a kombinációk száma, amelyek összeadják ezt a számot a kombinációk teljes számához képest (feltéve, hogy a kocka egyenletes eloszlású).
Milyen képletek vannak
- A kombinációk száma összesen
- Az a kombinációk száma, amelyek egy bizonyos számot összesítenek
Megjegyzések
- Úgy gondolom, hogy a (z) $ (X_1 = 1, X_2 = 2) $ és $ (X_1 = 2, X_2 = 1) $ másként kell kezelnie események.
Válasz
Pontos megoldások
A $ n $ dobások kombinációinak száma természetesen $ 6 ^ n $ .
Ezek a számítások a legkönnyebben elvégezhetők a valószínűség-generáló függvény használatával egy kockához,
$$ p (x) = x + x ^ 2 + x ^ 3 + x ^ 4 + x ^ 5 + x ^ 6 = x \ frac {1-x ^ 6} {1-x}. $$
(Valójában ez $ 6 $ -szorosa a pgf-nek – gondoskodom a $ 6 $ a végén.)
A $ n $ tekercsek pgf értéke $ p (x) ^ n $ . Ezt meglehetősen közvetlenül kiszámíthatjuk – ez nem zárt forma, de hasznos – a binomiális tétel használatával:
$$ p (x ) ^ n = x ^ n (1 – x ^ 6) ^ n (1 – x) ^ {- n} $$
$ $ = x ^ n \ balra (\ sum_ {k = 0} ^ {n} {n \ select k} (-1) ^ kx ^ {6k} \ right) \ left (\ sum_ {j = 0} ^ { \ infty} {-n \ select j} (-1) ^ jx ^ j \ right). $$
A $ m $ a kockán a $ x ^ m $ együttható ebben a termékben, amelyet elkülöníthetünk
$$ \ sum_ {6k + j = m – n} {n \ select k} {- n \ select j} (- 1) ^ {k + j} . $$
Az összeg meghaladja az összes nem negatív $ k $ és $ j összeget $ , amelyre $ 6k + j = m – n $ ; ezért véges és csak körülbelül $ (m-n) / 6 $ kifejezéssel rendelkezik. Például a $ m = 14 $ összesítésének módja a $ n = 3 $ dobásokban: csak két kifejezés összege, mert a $ 11 = 14-3 $ csak $ 6 \ cdot 0 + 11 $ néven írható és $ 6 \ cdot 1 + 5 $ :
$$ – {3 \ válassza a {0} {-3 \ select 11} + {3 \ select 1} {- 3 \ select 5} $$
$$ = lehetőséget 1 \ frac {(- 3) (- 4) \ cdots (-13)} {11!} + 3 \ frac {(- 3) (- 4) \ cdots (-7)} {5!} $$
$$ = \ frac {1} {2} 12 \ cdot 13 – \ frac {3} {2} 6 \ cdot 7 = 15 . $$
(Ön is ügyes lehet, és megjegyezheti, hogy a $ m = 7 $ esetén a válasz ugyanaz lesz az 1 < -> 6, 2 < -> 5 és 3 < -> 4, és csak egyetlen módon lehet kibővíteni a $ 7 értéket – 3 $ mint 6 k + j $ ; mégpedig $ k = 0 $ és $ j = 4 $ használatával, így
$$ {3 \ select 0} {- 3 \ select 4} = 15 \ text {.} $$
A valószínűség tehát megegyezik $ 15/6 ^ 3 $ = $ 5/36 $ , körülbelül 14%.
Mire ez fájdalmas lesz, a Központi Határ Tétel jó közelítéseket nyújt (legalábbis azokhoz a központi kifejezésekhez, ahol a $ m $ a $ \ frac {7 n} {2} – 3 \ sqrt {n} $ és $ \ frac {7 n} {2} + 3 \ sqrt { n} $ : relatív alapon a farokértékekhez adott közelítések egyre rosszabbak lesznek, mivel a $ n $ nagy lesz).
Úgy látom, hogy ezt a képletet a Wikipedia Srikant hivatkozási cikk tartalmazza, de nincs megadva indoklás, és példákat sem közölnek. Ha ez a megközelítés túlságosan elvontnak tűnik, indítsa el kedvenc számítógépes algebrai rendszerét, és kérje meg, hogy bővítse ki a $ n ^ {\ text {th}} $ hatalmat. class = “math-container”> $ x + x ^ 2 + \ cdots + x ^ 6 $ : azonnal elolvashatja a teljes értékkészletet. Pl. egy Mathematica egysoros vonal
With[{n=3}, CoefficientList[Expand[(x + x^2 + x^3 + x^4 + x^5 + x^6)^n], x]]
Megjegyzések
- Működni fog a mathematica kód a wolfram alfával?
- Ez működik. Kipróbáltam a korábbi verzióját, de nem tudtam értelmezni a kimenetet.
- @Srikant: Bontsa ki az [Sum [x ^ i, {i, 1,6}] ^ 3] kibővítését a WolframAlphában is.
- @ A.Wilson Úgy gondolom, hogy sok ilyen hivatkozás adjon egyértelmű utat az általánosításhoz, amely ebben a példában $ (x + x ^ 2 + \ cdots + x ^ 6) (x + x ^ 2 + x ^ 3 + x ^ 4) ^ 3 $. Ha szeretné, hogy a
R
kód kiszámolja ezeket a dolgokat, olvassa el a stats.stackexchange.com/a/116913 címet teljesen bevezetett rendszer. Másik példa a Mathematica kód:Clear[x, d]; d[n_, x_] := Sum[x^i, {i, 1, n}]; d[6, x] d[4, x]^3 // Expand
- Ne feledje, hogy @whuber ‘ A pontosítás 1d6 + 3d4-re vonatkozik, és ezzel el kell jutnia. Egy tetszőleges wdn + vdm esetén: (x + x ^ 2 + … + x ^ w) ^ n (x + x ^ 2 + … + x ^ v) ^ m. A további kifejezések a termékkel azonos módon felépített és megszorzott polinomok.
Válasz
Még egy módja annak, hogy A kockadobás valószínűség-eloszlásának gyors kiszámításához egy erre a célra tervezett speciális számológépet kellene használni.
Torben Mogensen , CS a DIKU professzorának kiváló dobókockája van: Troll .
A Troll kockahenger és a valószínűségszámológép kinyomtatja a valószínűségeloszlást (pmf, hisztogram, és opcionálisan cdf vagy ccdf), az átlagot, a szórást és az átlagos eltérést a bonyolult kockadobási mechanizmusok esetében. Íme néhány példa, amely bemutatja a Troll kocka tekercsének nyelvét:
3 tekercses 6 oldalas kocka és összegezzük őket: sum 3d6
.
Dobjon 4 6 oldalas kockát, tartsa meg a legmagasabb 3 értéket, és összegezze őket: sum largest 3 4d6
.
Dobjon “robbanó” hatoldalas kockát (azaz bármelyiket amikor megjelenik egy “6”, adjon hozzá 6-ot az összeghez, és dobja újra): sum (accumulate y:=d6 while y=6)
.
“Troll” s SML forráskód elérhető, ha meg szeretné tudni, hogy miként valósult meg.
Morgensen professzornak van egy 29 oldalas cikk: “ Dobókocka-forgató mechanizmusok az RPG-kben “, amelyben a Troll által megvalósított kockafelhajtó mechanizmusok sokaságát és a mögöttük álló matematika egy részét tárgyalja.
Hasonló ingyenes, nyílt forráskódú szoftver a Dicelab , amely Linux és Windows rendszeren egyaránt működik.
Válasz
Nagyon jó módszer a kombinációk vagy valószínűség kiszámítására táblázatban (például az excel), amely közvetlenül kiszámítja a konvolúciókat.
Meg fogom tenni a valószínűségek szempontjából, és hatoldalas kockával szemléltetem, de tetszőleges számú oldallal megtehetjük (beleértve a különféle oldalak hozzáadását is).
( btw olyan egyszerű is, mint például az R vagy a matlab, amely konvolúciókat fog végrehajtani)
Kezdjen egy tiszta lappal, néhány oszlopban, és haladjon lefelé egy csomó sorral fentről (több mint 6) .
-
tegye az 1 értéket egy cellába. Ez a 0 kockához kapcsolódó valószínűség. Tegyen balra 0-t; ez az érték oszlop – folytassa onnan lefelé 1,2,3-al lefelé, amennyire csak szüksége van.
-
mozgasson egy oszlopot jobbra és lefelé egy sorral az “1” -től. írja be a következő képletet: “= összeg (” majd balra nyíl felfelé mutató nyíl (a cellának 1-vel történő kiemeléséhez), nyomja meg a “:” gombot (a tartomány beírásának megkezdéséhez), majd ötször felfelé mutató nyíl, majd a “) / 6 “és nyomja meg az Enter billentyűt – így olyan képlethez jut, mint például:
=sum(c4:c9)/6
(ahol ittC9
az a cella, amelyben az 1 szerepel) .Ezután másolja a képletet és illessze be az alatta lévő 5 cellába. Mindegyiknek tartalmaznia kell 0,166667 (ish) értéket.
Ne írjon be semmit e képletek üres celláiba hivatkozás!
-
lépjen lefelé 1 és jobbra 1 az értékoszlop tetejétől, és illessze be …
… összesen további 11 értéket. Ez két kockának a valószínűsége.
Nem számít, ha túl sokat illeszt be, akkor csak nulla lesz.
-
ismételje meg a 3. lépést a következő oszlopban három kockához, majd ismét négy, öt stb. kockához.
Itt azt látjuk, hogy a $ 12 $ 4d6-on történő dobásának valószínűsége 0.096451 (ha szorzod $ 4 ^ 6 $ -val, akkor pontosan meg tudod írni pontos töredékként).
Ha ügyesen alkalmazza az Excel programot – például egy képlet másolása egy cellából és beillesztése sok cellába egy oszlopban az összes táblázatot 10d6-ig állíthatja elő körülbelül egy perc alatt (esetleg gyorsabban, ha néhányszor megtette).
Ha kombinációszámlálást szeretne a valószínűség, ne osszuk el 6-tal.
Ha különböző arcszámú kockákat szeretne, összegezheti a $ k $ (6 helyett) cellát, majd ossza el $ k $ -val. Kockákat keverhet az oszlopok között (pl.tegyen egy oszlopot a d6-hoz, egyet pedig a d8-hoz, hogy megkapja a d6 + d8 valószínűségi függvényét:
Megjegyzések
- Ez nagyon hasznos olyan hozzám hasonló személyek számára, aki csak módot akar rá, és nem kell megértenie! Ha nem ‘ nem veszi figyelembe a
OFFSET()
függvény volatilitását, akkor ezt a dinamikát egy megnevezett tartomány segítségével teheti meg. Például készítettem egyDiceSize
nevű tartományt az oldalak számának megtartására és az első ” 1 ” valószínűség a B23-ban. Használtam egy KingSum nevű dinamikus nevű tartományt, amely a=OFFSET('Dice Rolls'!$A$22,-1*DiceSize,,DiceSize,1)
-re utal. Ezután felhasználhattam a (z)=SUM(OFFSET(KingSum,ROW(A1),COLUMN(A1)))/DiceSize
képletet a C23 cellában, nagy területre húzva, hogy a DiceSize-re támaszkodó táblázatot kapjak.
Válasz
$ \ newcommand {red} {\ color {red}} $ $ \ newcommand {blue} {\ color {blue}} $
Legyen az első kocka piros, a második fekete. Ezután 36 lehetséges eredmény található:
\ begin {tömb} {c | c | c | c | c | c | c} & 1 & 2 & 3 & 4 & 5 & 6 \\\ hline \ red {1} & \ red {1}, 1 & \ red {1}, 2 & \ red {1}, 3 & \ red {1}, 4 & \ red {1}, 5 & \ red {1}, 6 \\ & \ kék {^ 2} & \ kék {^ 3} & \ kék {^ 4} & \ blue {^ 5} & \ blue {^ 6} & \ blue {^ 7} \\\ hline \ piros {2} & \ red {2}, 1 & \ red {2}, 2 & \ red {2}, 3 & \ red {2}, 4 & \ red {2}, 5 & \ red {2}, 6 \\ & \ blue {^ 3} & \ kék {^ 4}
\ blue {^ 5} & \ blue {^ 6} & \ blue { ^ 7} & \ blue {^ 8} \\\ hline \ red {3} & \ red {3}, 1 & \ red {3}, 2 & \ red {3}, 3 & \ piros {3}, 4 & \ red {3}, 5 & \ red {3}, 6 \\ & \ blue {^ 4} & \ blue {^ 5} & \ blue {^ 6} & \ blue {^ 7} & \ blue {^ 8} & \ kék {^ 9} \\\ hline \ red {4} & \ red {4}, 1 & \ red {4}, 2 & \ red {4}, 3 & \ red {4}, 4 & \ red {4}, 5 & \ red {4}, 6 \\ & \ kék {^ 5} & \ blue {^ 6} & \ blue {^ 7} & \ blue {^ 8 } & \ kék {^ 9} & \ kék {^ {10}} \\\ hline \ red {5} & \ red {5 }, 1 & \ red {5}, 2 & \ red {5}, 3 & \ red {5}, 4 & \ red {5}, 5 & \ red {5}, 6 \\ & \ blue {^ 6} & \ blue {^ 7} & \ kék {^ 8} & \ kék {^ 9} & \ kék {^ {10}} & \ blue {^ {11}} \\\ hline \ red {6} & \ red {6}, 1 & \ red {6}, 2 & \ red {6}, 3 & \ red {6}, 4 & \ red {6}, 5 & \ red {6}, 6 \\ & \ kék {^ 7} & \ kék {^ 8} & \ kék {^ 9} & \ kék {^ {10}} & \ kék {^ {11}} & \ kék {^ {12} } \\\ hline \ end {tömb}
Mindegyik ezek a 36 ($ \ red {\ text {red}}, \ text {black} $) eredmények ugyanolyan valószínűek.
Ha összegezed az arcokon lévő számokat (összesen $ \ blue {\ text-ben {blue}} $), a (piros, fekete) eredmények közül több ugyanazzal az eredménnyel jár – ezt a kérdésében szereplő táblázattal láthatja.
Tehát például csak egy van módja annak, hogy összesen $ 2 $ -ot (azaz csak az esemény ($ \ red {1}, 1 $)), de van két módja a $ 3 $ megszerzésének (azaz az elemi eseményeknek ($ \ red {2}, 1 $) és ($ \ red {1}, 2 $)). Tehát összesen $ 3 $ kétszer nagyobb valószínűséggel fog előállni, mint $ 2 $. Hasonlóképpen van három módja a 4 $ megszerzésének, négy módja az 5 $ megszerzésének és így tovább .
Mivel 36 lehetséges (piros, fekete) eredményed van, a különböző összesítések megszerzésének összes módja is 36, így a végén el kell osztanod 36-tal. Teljes valószínűsége 1 lesz, ahogy lennie kell.
Megjegyzések
- Hűha, a táblázat gyönyörű!
- Valóban nagyon szép
Válasz
Hozzávetőleges megoldás
A pontos megoldást korábban ismertettem (lásd alább). Most ajánlok egy hozzávetőleges megoldást, amely jobban megfelel az Ön igényeinek.
Legyen:
$ X_i $ egy $ s $ kocka dobásának eredménye, ahol $ i = 1, … n $.
$ S $ az összes $ n $ kocka összege.
$ \ bar {X} $ legyen a minta átlaga.
Meghatározásunk szerint:
$ \ bar {X} = \ frac {\ sum_iX_i} {n} $
Más szavakkal,
$ \ bar {X} = \ frac {S} {n} $
Az ötlet most az, hogy szemléltesse a $ {X_i} $ megfigyelésének folyamatát, mint ugyanazon kocka dobásának eredményét, ha $ n $ -szor dobjuk, ahelyett, hogy $ n $ -ot dobnánk. Így meghívhatjuk a központi határtételt (figyelmen kívül hagyva a diszkrét elosztástól a folytonosig való elmozduláshoz kapcsolódó technikákat), van $ n \ rightarrow \ infty $:
$ \ bar {X} \ sim N ( \ mu, \ sigma ^ 2 / n) $
ahol,
$ \ mu = (s + 1) / 2 $ az egyetlen kocka dobásának átlaga és
$ \ sigma ^ 2 = (s ^ 2-1) / 12 $ a társított variancia.
A fentiek nyilvánvalóan közelítőek, mivel az alapul szolgáló $ X_i $ disztribúció diszkrét támogatás.
De,
$ S = n \ bar {X} $.
Így:
$ S \ sim N (n \ mu, n \ sigma ^ 2) $.
Pontos megoldás
Wikipédia rövid magyarázattal szolgál a szükséges valószínűségek kiszámítására. Kicsit bővebben kitérek arra, hogy miért van értelme az ottani magyarázatnak. A lehetőségekhez mérten hasonló jelölést használtam a Wikipedia cikkhez.
Tegyük fel, hogy $ n $ kockád van $ s $ arccal, és ki akarod számolni annak valószínűségét, hogy az összes $ n egyetlen tekercs A $ kocka összege $ k $ -ot tesz ki. A megközelítés a következő:
Define:
$ F_ {s, n} (k) $: Valószínűség, hogy egyetlen $ tekercsben összesen $ k $ -ot kap n $ kocka $ s $ arcokkal.
Meghatározásunk szerint:
$ F_ {s, 1} (k) = \ frac {1} {s} $
A fentiek kimondják, hogy ha csak egy kocka van, amelynek $ s $ arca van, akkor annak valószínűsége, hogy 1 és s között eléri a teljes $ k $ -t, az ismerős $ \ frac {1} {s} $.
Vegye figyelembe azt a helyzetet, amikor két kockát dob: $ k $ összegét a következőképpen szerezheti be: Az első dobás 1 és $ k-1 $ között van, a második dobás pedig $ k között -1 $ és $ 1 $ között. Így:
$ F_ {s, 2} (k) = \ sum_ {i = 1} ^ {i = k-1} {F_ {s, 1} (i) F_ { s, 1} (ki)} $
Most vegyen fontolóra egy három kocka dobását: $ k $ összeget kaphat, ha az 1 – $ k-2 $ értéket dobja az első kockán és a A fennmaradó két kocka összege $ k-1 $ és $ 2 $ között van. Így
$ F_ {s, 3} (k) = \ sum_ {i = 1} ^ {i = k-2} {F_ {s, 1} (i) F_ {s, 2 } (ki)} $
A fenti logikát folytatva megkapjuk a rekurziós egyenletet:
$ F_ {s, n} (k) = \ sum_ {i = 1} ^ {i = k-n + 1} {F_ {s, 1} (i) F_ {s, n-1} (ki)} $
További részletekért lásd a Wikipedia linket.
Megjegyzések
- @Srikant Kiváló válasz, de vajon ez a függvény megoldja-e valami aritmetikát (azaz: nem rekurzív)?
- @C. Ross Sajnos nem hiszem. De gyanítom, hogy a rekurziónak nem szabad olyan nehéznek lennie, mindaddig, amíg ésszerűen kicsi n és kicsiekkel foglalkozunk. Csak fel lehet építeni egy keresőtáblát, és szükség szerint többször is használni.
- Az Ön által összekapcsolt wikipédia oldalon egyszerű, nem rekurzív képlet található, amely egyetlen összeg. Az egyik levezetés a whuber ‘ válaszában található.
- A wiki link horgonya meghalt, tudsz-e pótlóról?
Válasz
Ez valójában meglepően bonyolult kérdés. Szerencsére létezik egy pontos megoldás, amelyet itt nagyon jól megmagyaráznak:
http://mathworld.wolfram.com/Dice.html
A keresett valószínűséget a (10) egyenlet adja meg: “p pontok (p tekercs) megszerzésének valószínűsége n egyoldalas kockán”.
Az Ön esetében: p = a megfigyelt pontszám (az összes kocka összege), n = a kocka száma, s = 6 (hatoldalas kocka). Ez a következő valószínűségi tömegfüggvényt adja:
$$ P (X_n = p) = \ frac {1} {s ^ n} \ sum_ {k = 0} ^ {\ lfloor (pn) / 6 \ rfloor} (-1) ^ k {n \ select k} {p-6k-1 \ select n-1} $$
Megjegyzések
- Üdvözöljük weboldalunkon, Felix!
Válasz
Jellemző függvények nagyon megkönnyítik az véletlen változók összegeit és különbségeit tartalmazó számításokat. A Mathematica számos funkcióval rendelkezik, hogy statisztikai eloszlásokkal dolgozzon, beleértve a beépített rendszert, amely az elosztást a jellegzetes függvényévé alakítja.
Szeretném hogy ezt két konkrét példával szemléltessük: (1) Tegyük fel, hogy meg akarta állapítani az eredményeket, ha egy kockaegyüttesnek eltérő számú oldala van, például dobjon két hatoldalas és egy nyolcoldalas dobókockát meghal (azaz 2d6 + d8 )?Vagy (2) tegyük fel, hogy két kockadobás (pl. d6-d6 ) különbségét akarta megtalálni?
Ennek egyszerű módja a jellemző függvények használata az alapul szolgáló diszkrét egyenletes eloszlások. Ha egy véletlen változó $ X $ valószínűségi tömegfüggvénnyel rendelkezik $ f $, akkor a $ \ varphi_X (t) $ jellegzetes függvénye csak a diszkrét Fourier-transzformáció a $ f $ értékből, azaz $ \ varphi_X (t) = \ mathcal {F} \ {f \} (t) = E [e ^ {it X }] $. Egy tétel azt mondja nekünk:
Ha a $ X $ és $ Y $ független véletlen változóknak megfelelő valószínűségi tömegfüggvények vannak $ f $ és $ g $, akkor a $ összeg pmf $ h $ értéke Ezen RV-k X + Y $ értéke pmfs $ h (n) = (f \ ast g) (n) = \ sum_ {m = konvolúciója – \ infty} ^ \ infty f (m) g (nm) $.
Használhatjuk a Fourier-transzformációk konvolúciós tulajdonságát ennek egyszerűbb megismételésére a jellemző függvények szempontjából:
A (z) $ X varfsi_ {X + Y} (t) $ karakterisztikus függvény a $ X $ és $ Y $ független véletlen változók összegéből megegyezik a jellemző függvények szorzatával $ \ varphi_ {X} (t) \ varphi_ {Y} (t) $.
Ez a Mathematica függvény fogja létrehozni a karakterisztikus függvényt egy kétoldalas szerszám esetében:
MakeCf[s_] := Module[{Cf}, Cf := CharacteristicFunction[DiscreteUniformDistribution[{1, s}], t]; Cf]
Egy disztribúció pmf-je visszaállítható a jellegzetes függvényéből, mert a Fourier-transzformációk invertálhatók. Ehhez a Mathematica kódot kell megtenni:
RecoverPmf[Cf_] := Module[{F}, F[y_] := SeriesCoefficient[Cf /. t -> -I*Log[x], {x, 0, y}]; F]
A példánkat folytatva legyen F az pmd, amely a 2d6 + d8 eredményéből származik.
F := RecoverPmf[MakeCf[6]^2 MakeCf[8]]
$ 6 ^ 2 \ cdot 8 = 288 $ eredmények vannak. Az F támogatási tartománya $ S = \ {3, \ ldots, 20 \} $. Három a min, mert három kockát dobsz. Húsz pedig a max, mert $ 20 = 2 \ cdot 6 + 8 $. Ha F képét akarod látni, számítsd ki
In:= F /@ Range[3, 20] Out= {1/288, 1/96, 1/48, 5/144, 5/96, 7/96, 13/144, 5/48, 1/9, 1/9, \ 5/48, 13/144, 7/96, 5/96, 5/144, 1/48, 1/96, 1/288}
Ha meg szeretné tudni az összesített eredmény kimenetelét, számítsa ki
In:= 6^2 8 F[10] Out= 30
Ha a független véletlen változók $ X $ és $ Y $ megfelelő valószínűségi tömegfüggvényekkel rendelkezik: $ f $ és $ g $, akkor ezen RV-k $ X – Y $ különbségének pmf $ h $ értéke a pmf-ek keresztkorrelációja $ h (n) = (f \ csillag g) (n) = \ összeg_ {m = – \ infty} ^ \ infty f (m) g (n + m) $ .
A Fourier-transzformációk keresztkorrelációs tulajdonságát felhasználhatjuk ennek egyszerűbb megismételésére a jellegzetes függvények szempontjából:
A $ \ varphi_ karakterisztikus függvény A $ {X, Y} $ két független véletlen változó különbségének {XY} (t) $ egyenlő a $ \ varphi_ {X} (t) $ és $ \ varphi_ {Y} (- t) jellemző függvény szorzatával $ (NB a negatív előjel a t változó előtt a második cha-ban jellegzetes függvény).
Tehát a Mathematica segítségével keresse meg a d6-d6 pmf G-jét:
G := RecoverPmf[MakeCf[6] (MakeCf[6] /. t -> -t)]
$ 6 ^ 2 = 36 $ kimenetel létezik. A G támogatási tartománya $ S = \ {- 5, \ ldots, 5 \} $. -5 a min, mert $ -5 = 1-6 $. És 5 az a max, mert $ 6-1 = 5 $. Ha látni szeretné a G képét, számítsa ki
In:= G /@ Range[-5, 5] Out= {1/36, 1/18, 1/12, 1/9, 5/36, 1/6, 5/36, 1/9, 1/12, 1/18, 1/36}
Megjegyzések
- Természetesen diszkrét eloszlások, ideértve a véges támogatás eloszlásait is (mint például az itt szóban forgók), a cf csak az x = exp (it) értéken értékelt valószínűség-generáló függvény, ami bonyolultabbá teszi ugyanazon információk kódolását.
- @whuber: Ahogy mondod, a cf, mgf és pgf nagyjából megegyeznek és könnyen átalakíthatók egymásba, azonban a Mathematica rendelkezik beépített cf-vel, amely minden valószínűség-eloszlással működik, amelyről tud, nincs ‘ nincs beépített pgf. Ez teszi a kockaösszegekkel (és különbségekkel) végzett munka Mathematica kódját, amely a CFS-eket használja, különösen elegáns konstrukcióra, függetlenül a kocka kifejezés komplexitásától, remélem, fentebb bemutattam. Ráadásul nem árt ‘ nem tudni, hogy a cf-k, az FT-k, a konvolúciók és a keresztkorrelációk hogyan segíthetnek az ilyen problémák megoldásában.
- @Elisha: Jó pontok , mindegyikük. Gondolom, azon csodálkozom a legjobban, hogy a tíz vagy több Mathematica-kódsorod valóban ” elegánsabb ” vagy hatékonyabb, mint a egy vonalat, amelyet korábban javasoltam (vagy a Srikant még rövidebb vonalát a Wolfram Alpha-nak tápláltam). Gyanítom, hogy a jellegzetes funkciókkal rendelkező belső manipulációk nehezebbek, mint a polinomok sokszorozásához szükséges egyszerű konvolúciók. Ez utóbbiak természetesen könnyebben megvalósíthatók a legtöbb más szoftverkörnyezetben, amint azt Glen_b ‘ válasza jelzi. A megközelítésed előnye a nagyobb általánosság.
Válasz
Itt egy másik módszer a valószínűség kiszámításához két kocka összegének elosztása kézzel konvolúciók segítségével.
Ahhoz, hogy a példa valóban egyszerű maradjon, kiszámoljuk egy háromoldali szerszám (d3) összegének valószínűség-eloszlását, amelynek véletlen változóját X-nek és kétoldalas kockának (d2) nevezzük. ), amelynek véletlen változóját Y-nek hívjuk.
Táblázatot fog készíteni. Írja be a felső sorba az X valószínűség-eloszlását (a d3 legördülésének eredményei). Lefelé a bal oldali oszlopban , írd meg az Y valószínűségi eloszlását (a d2 valós értékének gördülési eredménye).
Meg fogod készíteni a külső szorzatát a valószínűségek felső sora a bal valószínűségi oszloppal. Például a jobb alsó cella a Pr [X = 3] = 1/3-szoros a Pr [Y = 2] = 1/2 szorzatának a szorzata, amint az a mellékelt ábrán látható. Egyszerűsített példánkban az összes cella megegyezik 1/6-tal.
Ezután a külső szorzat mátrixának ferde vonalai mentén összegez, amint az a mellékelt ábrán látható. Minden ferde vonal áthalad egy vagy több cella, amelyeket ugyanazt színeztem: A felső vonal egy kék cellán halad át, a következő sor két vörös cellán és így tovább.
A ferdék mentén található összes összeg a kapott eloszlás valószínűségét képviseli. Például a vörösvértestek összege megegyezik annak a valószínűségével, hogy a két kocka összeadódik 3-ra. Ezeket a valószínűségeket a kísérő diagram jobb oldalán mutatjuk be.
Ez a technika bármely két diszkrét eloszlással használható. véges támogatással. És iteratívan is alkalmazhatja. Például, ha meg akarja ismerni három hatoldalas kocka (3d6) eloszlását, akkor először kiszámíthatja 2d6 = d6 + d6; akkor 3d6 = d6 + 2d6.
Van egy ingyenes (de zárt licenccel rendelkező) programozási nyelv J . Tömb alapú nyelv, amelynek gyökerei az APL-ben vannak. Beépített operátorok vannak arra, hogy külső termékeket és összegeket végezzenek a mátrixokban a ferdék mentén, így az általam bemutatott technika megvalósítása meglehetősen egyszerű.
A következő J kódban két igét határozok meg. Először a d
ige épít egy tömböt, amely egy kétoldalas szerszám pmf-jét ábrázolja. Például a d 6
egy 6 oldalú szerszám pmf-je. Másodsorban a conv
ige két tömb és szorzat külső szorzatát találja meg a ferde vonalak mentén. Tehát conv~ d 6
kinyomtatja a 2d6 pmf-jét:
d=:$% conv=:+//.@(*/) |:(2+i.11),:conv~d 6 2 0.0277778 3 0.0555556 4 0.0833333 5 0.111111 6 0.138889 7 0.166667 8 0.138889 9 0.111111 10 0.0833333 11 0.0555556 12 0.0277778
Amint láthatja, J rejtélyes, de rövid .
Válasz
Szeretem a felhasználónevet! Jól sikerült 🙂
A kocka tekercs, amelyet meg kell számolni, mind a $ 6 \ szor 6 = 36 $, amint az a táblázatban látható.
Például $ \ frac Az összeg {1} {36} $ -a $ 2 $, és $ \ frac {2} {36} $ az összeg $ 3 $, és $ \ frac {4} {36} $ az összeg $ 4 $, és így tovább.
Hozzászólások
- Én ‘ zavartam ez. Megválaszoltam egy die_hard nevű, újonnan érkezett újonnan feltett kérdést, aki látszólag már nem létezik, majd a válaszomat ehhez az ősi szálhoz csatolva találtam!
- A kérdésre adott válaszát a következő címen adta meg: /div>stats.stackexchange.com/questions/173434/… összevonásra került a duplikátra adott válaszokkal.
Válasz
Ezt rekurzív képlettel oldhatja meg. Ebben az esetben a $ n $ kockával rendelkező dobások valószínűségét a $ n-1 $ kockával rendelkező tekercsek számítják ki.
$$ a_n (l) = \ sum_ {l-6 \ leq k \ leq l-1 \\ \ text {és} n-1 \ leq k \ leq 6 (n-1)} a_ {n-1} (k) $$
A k első korlátja az összegzés a megelőző hat szám. Például, ha 13 dobót szeretne dobni 3 kockával, akkor megteheti, ha az első két kocka 7 és 12 között gördül.
Az összegzésben szereplő k második korlátja az, amivel dobni lehet n-1 kocka
Az eredmény:
1 1 1 1 1 1 1 2 3 4 5 6 5 4 3 2 1 1 3 6 10 15 21 25 27 27 25 21 15 10 6 3 1 1 4 10 20 35 56 80 104 125 140 146 140 125 104 80 56 35 20 10 4 1 1 5 15 35 70 126 205 305 420 540 651 735 780 780 735 651 540 420 305 205 126 70 35 15 5 1
szerkesztés: A fenti válasz egy másik kérdés válasza volt, amelyet C.Ross egyesített a kérdésben
Az alábbi kód megmutatja, hogy az adott válasz (az 5 kockát kérő kérdésre) számításai hogyan zajlottak le R-ben. Hasonlóak a Glen B válaszában az Excelben végrehajtott összesítésekhez.
# recursive formula nextdice <- function(n,a,l) { x = 0 for (i in 1:6) { if ((l-i >= n-1) & (l-i<=6*(n-1))) { x = x+a[l-i-(n-2)] } } return(x) } # generating combinations for rolling with up to 5 dices a_1 <- rep(1,6) a_2 <- sapply(2:12,FUN = function(x) {nextdice(2,a_1,x)}) a_3 <- sapply(3:18,FUN = function(x) {nextdice(3,a_2,x)}) a_4 <- sapply(4:24,FUN = function(x) {nextdice(4,a_3,x)}) a_5 <- sapply(5:30,FUN = function(x) {nextdice(5,a_4,x)})
Megjegyzések
- @ user67275 a kérdésed beleolvadt ebbe a kérdésbe. De kíváncsi vagyok, mi volt az ötlete a képlete mögött: ” A következő képletet használtam: nincs mód a 8 megszerzésére: 5_H_2 = 6_C_2 = 15 ” ?
Válasz
Az egyik megközelítés szerint azt mondjuk, hogy a $ X_n = k $ valószínűség az $ x együtthatója ^ {k} $ a $$ \ left függvény kiterjesztésében (\ frac {x ^ 6 + x ^ 5 + x ^ 4 + x ^ 3 + x ^ 2 + x ^ 1} {6} \ right) ^ n = \ balra (\ frac {x (1-x ^ 6)} {6 (1-x)} \ jobbra) ^ n $$
Tehát például hat dobókockával és $ k = 22 $ céllal talál $ P (X_6 = 22) = \ frac {10} {6 ^ 6} $ értéket. Ez a link (egy math.stackexchange kérdéshez) más megközelítéseket is ad
Vélemény, hozzászólás?