Kevään 21 pitkän matikan tehtävän 8 ratkaisu GeoGebralla

[edit. 25.3. Lisäsin toisen version listan tuottamiseen. Korjasin pari kirjootusvihrettä]]

Tehtävässä piti arpoa pisteitä suorakaiteen muotoiselle tasoalueelle ja laskea kuinka suuri osa kuuluu suorakaiteen sisällä olevalle alueelle. GeoGebran Jono-komennolla ratkaisu on suhteellisen yksinkertainen, jos hallitsee pari komentoa.

https://yle.fi/plus/abitreenit/2021/Kevät/2021-03-24_M_fi/index.html#11

Luodaan tasoalue epäyhtälöiden avulla. Loogisen tai-operaattorin saa helpoimmin kirjoitettua kahdella & merkillä. Kirjoitetaan syöttökenttään

alue=0 ≤ x ≤ 2 && 0 ≤ y ≤ 4 && y ≥ x²

Satunnaisluku väliltä 0…1 saadaan funktiolla rand(). Niinpä 2*rand() tuottaa satunnaisluvun välillä  0≤x≤2. Sama olisi onnistunut myös komennolla SatunnainenTasajakaumanarvo(0, 2). Tässä olisi voinut valita pisteitä monikulmion sisältä myös käyttäen komentoa SatunnainenPisteAlueessa( <Monikulmio> ).

Komento OnkoAlueessa(piste, alue) palauttaa arvon true, jos piste kuuluu alueeseen ja false muutoin.

Luodaan jono-komennolla lista, jossa on ykkösiä, mikäli tuotettu piste on kyseisellä alueella ja muutoin 0.

l1 = Jono(Jos(OnkoAlueessa((2random(), 4random()), alue), 1, 0), mm, 1, 1000)

Itse asiassa tuossa ei olisi tarvinnut edes käyttää tuota aluetta, vaan käyttää sen sijaan epäyhtälöä.

Jono(Jos(OnkoAlueessa((2random(), 4random()), y ≥ x²), 1, 0), mm, 1, 1000)

Osumien määrä saadaan laskemalla ykkösten lukumäärä eli

a = Summa(l1)

Pekka Vienonen julkaisi oman versionsa GeoGebra-materiaaleissa. https://www.geogebra.org/m/czfvx8pg

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 – kolme noppaa

Edellisissä artikkeleissani kerroin miten GeoGebralla saa simuloitua yhden ja kahden nopan heittoa. Kolmen nopan simulointi syntyy samalla tavalla muutamalla komennolla. GeoGebra-komentojen toiminnan olen esittänyt aiemmissa artikkeleissani, niinpä jätän sen vähemmälle tässä artikkelissa.

Kahden nopan heitossa pääteltiin tuloksen todennäköisyys käyttämällä tasoon piirrettyä pisteistöä, kolmen nopan heitossa hypätään 3D-kuutioon.

simulointi

Simuloidaan kolmen nopan heittoa ja tuotetaan jakauma kuvaajaksi.

Kolmen nopan heittojen lukumäärä on n, summat-listaan lasketaan kolmen nopan summia n kappaletta. Pylväsdiagrammi laskee jakauman ja tuottaa jakauman kuvaajan.

n = 20000
summat = Jono(Satunnaisluku(1, 6) + Satunnaisluku(1, 6) + Satunnaisluku(1, 6), nn, 1, n)
pylväs = Pylväskaavio(summat, 1, 1 / n)

Miten tämä voi olla näin yksinkertaista?

todennäköisyysjakauma

Lasketaan kunkin summan todennäköisyyden arvo käyttämällä 3D-mallia. Tätä aiheesta olen kirjoittanut jo aiemmin. Tuossa tarinassa selitän tarkemmin komentojen syntaksia. Mikäli sisäkkäisten Jono-komentojen tai Zip-komennon syntaksi on hakusessa, niin lue tuo. Katso https://mikonfysiikka.wordpress.com/2019/08/27/kolme-noppaa-ja-zip-komento/

Listaan kaikki lasketaan kolmen nopan eri vaihtoehdot, tyyliin x-koordinaatti on ensimmäisen nopan tulos, y-koordinaatti toisen ja z-koordinaatti kolmannen. Listassa kaikkisummat on summien arvot ja tnjakauma on pylväskaavio jakaumasta. Liuku m kertoo suotuisan tapauksen arvon ja suotuisat-listassa on m:ää vastaavat pisteet. Ne väritetään punaiseksi.

kaikki = Tiivistä(Jono(Jono(Jono((aa, bb, cc), aa, 1, 6), bb, 1, 6), cc, 1, 6))

kaikkisummat = Zip(x(a) + y(a) + z(a), a, kaikki)

tnjakauma = Pylväskaavio(kaikkisummat, 1, 1 / 216)

m = 10

suotuisat = PoistaMäärittelemätön(Zip(Jos(x(a) + y(a) + z(a) == m, a), a, kaikki))

Kuva, joka sisältää kohteen kartta

Kuvaus luotu automaattisesti

Nytpä pystymme tekemään saman päättelyn kuin Galilei noin 1620. Tuloksen ”10” todennäköisyys on suurempi kuin tuloksen ”9”. 

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

lähteet

Anders Hald. A History of Probability and Statistics and Their Applications before 1750, Wiley, Luku 4.4 Galileo and the distribution of the sum of points of three dice, c 1620.

Saul Stahl, Paul E. Johnson. Understanding Modern Mathematics. Jones Bartlett. Luku 1.2 Galileo Galile ( A historical interlude)

Galilein artikkeli englanniksi. Käsittääkseni kyseessä on kirje pomolle, Toscanan suurherttualle Cosimo de’ Medicille.
https://www.leidenuniv.nl/fsw/verduin/stathist/galileo.htm


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/