Noppien summa GeoGebralla – n noppaa

Edellisissä artikkeleissani olen käsitellyt 1,…, 3 nopan heittoa simuloiden ja laskemalla todennäköisyysjakaumat. Jotta saisin tämän trilogiani jotenkin päätettyä, niin tarkastelen tässä yleistä n:n nopan summan todennäköisyysjakaumaa tilastollisesti ja laskemalla tarkat arvot käyttämällä polynomin kertoimia. 

Loin appletin GeoGebra 5:llä. Pääosin komennot kirjoitetaan syöttökenttään, todennäköisyysjakauman yhteydessä tarvitaan myös CAS:ia.

simulointi

Olkoon m noppien lukumäärä ja n heittojen määrä. Luodaan liu’t.

m = 10
n = 10000

Liu’un m asetuksissa Min: 1, Max: 10 ja Animaatioaskel: 1, liu’ulla n Min: 0, Max: 10000 ja Animaatioaskel: 100. 

Noppien summat-lista saadaan käyttämällä Jono-komentoja

summat = Jono(Summa(Jono(Satunnaisluku(1, 6), mm, 1, m)), nn, 1, n)

Tässä sisin Jono-komento Jono(Satunnaisluku(1, 6), mm, 1, m) tuottaa m:n pituisen jonon satunnaislukuja 1, 2, …6. Summa laskee edellisen summan ja uloin Jono tuottaa summia n kappaletta. Sisäisiä muuttujia mm ja nn ei käytetä, tuossa kohdin pitää vain olla jokin muuttuja, jotta Jonon syntaksi on oikein. Teoriassa sisemmän Jono-komennon ja Summan olisi pitänyt pystyä korvaamaan yhdellä Summa-komennolla. En saanut sitä toimimaan. Joko GeoGebra tai minun aivoni toimivat tässä kohtaa epäloogisesti.

Tilaston jakauman pylväskaavio tulee yhdellä komennolla

Pylväskaavio(summat, 1, 1 / n)

Taas minua ihmetyttää, miten tämä onnistuu näin vähillä riveillä.

todennäköisyysjakauma

Lasketaan m:n nopan summan todennäköisyysjakauma. Yritän seuraavalla esimerkillä perustella miksi sopivasti valitun polynomin kertoimet kertovat kuinka monella eri tavalla jokin summa voidaan saada nopan heitossa.

Kuvitellaan, että meillä on kaksi kummallista noppaa, jossa toisessa on luvut 1, 2 ja 3 ja toisessa vain luvut 1 ja 2. Eiväthän nuo ihan tavallisia noppia ole, vaan jotain ihan toisesta maailmasta, mieti itse miten toteuttaisit tuollaiset nopat. Millaisia tuloksia ja miten paljon niitä voi tulla.

Summataulukko kertoo meille, että esimerkiksi kolmosen voi saada kahdella eri tavalla (2, 1) ja (1, 2).

Onko jotain algoritmia tuon frekvenssitaulukon tuottamiseksi. Mitäpä jos luodaan polynomi, jossa muuttuja korotetaan nopan arvon potensseihin. Kerrotaan polynomit keskenään. Mitä polynomin kertoimet kertovat.

Katso miten MathPapa poistaa sulkeet ja pohdi miksi potenssit kertovat summan ja kertoimet niiden lukumäärän.

Edellisessä sulkeiden poistamisessa toiseksi viimeiellä rivillä on itse asiassa sama informaatio kuin 2*3 summataulukossa.

Jos pohditaan vaikkapa kuinka monella eri tavalla näiden noppien heitossa summaksi tulee kolme, niin se vastaa polynomin kertolaskussa tilannetta jossa x kerrotaan x^2 tai x^2 kerrotaan x:llä. Eli sam tilanne kuin summataulukon (1, 2) ja (2, 1). Sievennetyssä polynomissa kolmannen asteen kertoimeksi tulee 2. Se kertoo meille kuinka monella tavalla summaksi tulee kaksi.

Tutkitaan kahden perinteisen nopan heittoa, kolmen nopan heittoa jne. Yhtä noppaa vastaa polynomi noppa = a + a^2  + a^3 + a^4 + a^5 + a^6. Silloin kahden nopan summat saadaan noppa-polynomin potenssien kertoimina.

Tässä polynomin kertoimet kertovat esimerkiksi, että kahden nopan heiton 6*6 summataulukossa ysejä on neljä kappaletta. Alla oleva kuva on artikkelin ”Nopat GeoGebralla – kaksi noppaa” esimerkkitiedostosta.

Tuotetaan yleinen jakauma käyttämällä polynomin kertoimia. Määritellään ensin CAS:iin noppa-polynomi. Tämä vastaa yhtä noppaa.

noppa:=a+a^2+a^3+a^4+a^5+a^6
-> noppa:=a^6 + a^5 + a^4 + a^3 + a^2 + a

Tässä vaiheessa kannattaa laittaa m ja n-liukujen arvot sopivan pieniksi.

Poistetaan sulkeet noppa^m polynomista CASissa, tässä m:n arvo on kolme.

pol:=PoistaSulkeet(noppa^m)
-> pol:=a^18 + 3  a^17 + 6  a^16 + 10  a^15 + 15  a^14 + 21  a^13 + 25  a^12 + 27  a^11 + 27  a^10 + 25  a^9 + 21  a^8 + 15  a^7 + 10  a^6 + 6  a^5 + 3  a^4 + a^3

Polynomin kertoimet saadaan Kertoimet-komennolla. Ensimmäinen on tässä 18-asteen termin kerroin ja viimeinen nolla on nollannen asteen termin kerroin.

ker:=Kertoimet(pol)
-> ker:={1, 3, 6, 10, 15, 21, 25, 27, 27, 25, 21, 15, 10, 6, 3, 1, 0, 0, 0}

Käännetään ker-lista toisinpäin Käännä-komennolla Syöttökentässä.

kert = Käännä(ker)

Luodaan histogrammille reunat ja piirretään todennäköisyysjakauma.

reunat = Jono(-0.5, 6m + 0.5, 1)
hist = Histogrammi(reunat, kert / 6^m)

Esimerkkitiedosto löytyy GeoGebra-Materiaaleista https://www.geogebra.org/m/eqsebrjq

Nyt taidan lopettaa noppien tutkiskelun ainakin joksikin aikaa. Nytpä tästä noparartikklelisarjasta tulikin tetralogia. Vai onko tämä kvadrilogia?

Liitteet

Hyvä esitys miksi edellä esitetty polynomien kerroinmenetelmä toimii ”world of math and physics” -blogissa. https://www.lucamoroni.it/the-dice-roll-sum-problem/

Multinomiaali kertoimista hieman haastavampi blogiartikkeli ”A Blog on Probability and Statistics”-blogissa. https://probabilityandstats.wordpress.com/tag/multinomial-coefficients/


Aiemmat aiheeseen liittyvät blogiartikkelini.

Kolme noppaa https://mikonfysiikka.wordpress.com/2020/04/26/nopat-geogebralla-kolme-noppaa/

kaksi noppaa, https://mikonfysiikka.wordpress.com/2020/04/24/nopat-geogebralla-kaksi-noppaa/

yksi noppa, https://mikonfysiikka.wordpress.com/2020/04/23/nopat-geogebralla-yksi-noppa/

kolme noppaa ja zip-komento, https://mikonfysiikka.wordpress.com/2019/08/27/kolme-noppaa-ja-zip-komento/

Youtube-video viiden nopan heitosta https://www.youtube.com/watch?v=oUEbI5_vy-4

Nopat GeoGebralla – yksi noppa

Tässä ja muutamassa tulevassa tarinassa kerron, miten GeoGebralla voi simuloida nopanheittoa. Tutkitaan ensin yhden nopan heittoa, tulevissa artikkeleissa tutkitaan kahden ja useamman nopan heiton summan todennäköisyysjakaumaa simuloimalla ja laskemalla.

Heitetään yhtä noppaa n kertaa. Tuotetaan frekvenssijakauma. Kirjoita kaikki komennot Syöttökenttään, näin saat vikkelämmän sovelluksen kuin CASia käytettäessä.

Luo muuttuja n ja tee siitä liuku

n = 100

Arvo nopat

nopat = Jono(Satunnaisluku(1, 6), nn, 1, n)

Tuota jakauman reunat

reunat = Jono(0.5, 6.5, 1)

Laske jakauma. Frekvenssikomento laskee nopan arvojen lukumäärän ja tuottaa listan, jossa ensimmäisenä on ykkösten lukumäärä, sitten kakkosten jne. Kun listan jakaa n:llä, niin saadaan suoraan lista, jossa on arvojen suhteelliset osuudet.

arvot = Frekvenssi(nopat) / n

Tee histogrammi

histo = Histogrammi(reunat, arvot)

Piirrä teoreettinen arvo eli ⅙.

y = 1/6

Säädä piirtoalue nätiksi.

Toinen tapa tuottaa kuvaaja koordinaatistoon olisi ollut käyttää Pylväskaavio( Raakadatalista, Palkin leveys, Pystysuora skaalaustekijä (valinnainen)) – komentoa suoraan tuohon nopat dataan.

pylväs = Pylväskaavio(nopat, 1, 1 / n)

Esimerkkitiedosto GeoGebra-materiaaleissa: https://www.geogebra.org/m/e76b2rbr

MAB8 Tilastot ja todennäköisyys -kurssin GeoGebra-komentoja 2

[27.11.18 lisäsin kuvan yo-tehtävästä Abitreeneistä, copywrong lienee mitä se on.]

Tämä uusi WordPress editori vaatii hieman oppimista. Kirjoitan nämä alunperin Wordilla.

Tulkintani mukaan MB8 kurssilla tulee oppia normaalijakauman käyttö vaikka OPSissa virke on monikossa. Toki edellisessä tarinassani esitetty Poissonjakauma on jatkuva, mutta GeoGebran työkalun avulla se käyttäytyy ikään kuin diskreettinä.

Tehtävä 7 lyhyt matikka ylioppilaskoe 2018 syksy

Ratkaisu GeoGebran Todennäköisyystyökalun avulla toiminee seuraavasti.Ja sen lopullisen ratkaisun oppilaille opettaa ope.

Avaa Todennäköisyystyökalu. Normaalijakuma tulee automaattisesti, joten tehtävä ratkeaa suhteellisen suoraviivaisesti kun osaa painaa alareunan painikkeita ja sijoittaa oikeat luvut oikeisiin paikkoihin.


Käyttämällä GeoGebran komentoja tehtävä ratkeaa vaikkapa CASissa seuraavasti

a) 

Normaalijakauma(180 , 6, 190)

-> 0.04779035227282

b) 

Normaalijakauma(167.5, 5.4, 162 )

-> 0.1542158024051

c) 

KäänteisNormaalijakauma(167.5, 5.4,1-0.04)

-> 176.9537047848

Normaalijakaumaan liittyviä komentoja

Normaalijakauma( µ, s, x ) laskee normaalijakauman N(µ, s) kertymäfunktion arvon muuttujan x arvolla.

Normaalijakauma(0, 1, 0 )

-> 0.5

Normaalijakauma( µ, s, x, false  ) laskee normaalijakauman N(µ, s) arvon muuttujan x arvolla.

KäänteisNormaalijakauma(µ, s, y) laskee normaalijakauman N(µ, s) käänteisfunktion arvon muuttujan y arvolla

KäänteisNormaalijakauma( 0, 1, 0.5 )

-> (-((1.888843035978 * 10^((-19))))-> 

Satunnaisluvut

Satunnaislukualkuiset komennot tuottavat erilaisten jakaumien mukaisia satunnaislukuja. Huomasin juuri, että tuon komennon pitäisi olla SatunnainenNormaali.

SatunnainenNormiarvo(0, 1)

 -> 0.2470104887394

Luodaan histogrammia varten lista

reunat ≔Jono(100,220,2)

ja pylväiden arvoja varten arvotaan lista lukuja  Jono-komennon avulla

arvot ≔Jono(SatunnainenNormiarvo(167, 5.4), n, 1, 10000, 1)

Syöttökentän (tai CASin) komento luo histogrammin.

b:=Histogrammi(reunat,arvot)

Jatkuva jakauma syntyy näin

f(x):=Normaalijakauma(167.5, 5.4, x,false)*10000

Samalla logiikalla voi tuottaa erilaisia satunnaisia jakaumia muillakin GeoGebran satunnaisfunktioilla.

Seuraava juttu liittynee keskiarvojen/jakaumien testaamisiin GeoGebralla.