Hengelåskode og simulering

Hengelåskode og simulering

Peder har glemt koden på hengelåsen sin. Koden består av tre sifre. Peder husker at sifrene 7, 8, 9 og 0 ikke er med i koden. Han bestemmer seg for å prøve seg fram.

Bestem sannsynligheten for at Peder klarer å åpne hengelåsen på første forsøk.

Bruk simulering til å bestemme sannsynligheten for at Peder klarer å åpne hengelåsen på første forsøk.

Fasit

P=12160,46%\underline{\underline{P = \frac{1}{216} \approx 0{,}46 \,\%}}

Simuleringen gir ca. 0,43%0{,}43 \,\%, nært den teoretiske verdien 0,46%0{,}46 \,\%.

LøsningsforslagKI-generert

Sifrene 7, 8, 9 og 0 er ikke med, så hvert siffer velges fra mengden {1,2,3,4,5,6}\{1, 2, 3, 4, 5, 6\} — 6 mulige sifre per posisjon. Vi antar at sifrene kan gjentas (vanligste tolkning for hengelåskoder).

Antall mulige koder:

666=2166 \cdot 6 \cdot 6 = 216

Peder vet ikke koden, og vi antar han gjetter tilfeldig blant alle 216 mulige koder. Det er bare én riktig kode, så sannsynligheten for å treffe på første forsøk er:

P(riktig kode)=12160,0046P(\text{riktig kode}) = \frac{1}{216} \approx 0{,}0046

Sannsynligheten er 12160,46%\underline{\underline{\frac{1}{216} \approx 0{,}46 \,\%}}.

Vi simulerer situasjonen 100 000 ganger. I hver runde trekkes en tilfeldig «fasit-kode» og en tilfeldig «gjetting», begge med sifre fra {1,2,3,4,5,6}\{1, 2, 3, 4, 5, 6\}. Vi teller hvor mange ganger gjettingen treffer fasit-koden.

import numpy as np
rng = np.random.default_rng(42)
n = 100_000
faktisk = rng.integers(1, 7, size=(n, 3))
gjett = rng.integers(1, 7, size=(n, 3))
treff = np.all(faktisk == gjett, axis=1)
print(f"Estimat: {np.mean(treff):.4f}")

Resultat:

Estimat: 0.0043

Simuleringen gir ca. 0,43%0{,}43 \,\%, som stemmer godt med den teoretiske verdien 12160,46%\frac{1}{216} \approx 0{,}46 \,\%. Avviket skyldes tilfeldig variasjon i simuleringen.

Sensorveiledning
1,5 poeng

Kandidaten må regne ut sannsynligheten for å få 1 poeng.

1,5 poeng

For å få full uttelling må kandidaten bruke simulering. En løsning med opptelling ved for eksempel nøstede for-løkker kan gi 1 poeng.