La legge di distribuzione binomiale è riferita alle situazioni in cui si ripete n volte un evento casuale A con probabilità p.
La probabilità che il numero delle volte N che A si verifica sia k è
Calcola la probabilità che da una scatola in cui siano collocati 2 bastoncini rossi, 5 bastoncini blu e 3 bastoncini gialli (tutti di eguali dimensioni e peso)
si estraggano 3 bastoncini blu, ovvero un bastoncino per colore, ovvero 2 bastoncini rossi ed 1 giallo, sia nel caso in cui ogni bastoncino estratto venga ogni volta
subito reinserito, sia nel caso in cui non vi sia reinserimento.
Nel caso in cui vi sia reinserimento, le probabilità di estrazione via via non cambiano. Posso usare la legge di distribuzione multinomiale. Possiamo operare con R (vedi sotto) o più semplicemente col software online
WolframAlpha:
(3)! / ( (0)!*(3)!*(1)! ) * (2/10)^0*(5/10)^3*(3/10)^0 → 0.125 = 1/8
(3)! / ( (1)!*(1)!*(1)! ) * (2/10)^1*(5/10)^1*(3/10)^1 → 0.18 = 9/50
(3)! / ( (2)!*(0)!*(1)! ) * (2/10)^2*(5/10)^0*(3/10)^1 → 0.036 = 9/250
Erano, ovviamente, tutti calcoli fattibili facilmente a mano; ad es. il primo: 6/(1*6*1)*1*1/8*1 = 1/8 = 0.125
Nel caso in cui non vi sia reinserimento prima di mettermi a fare i calcoli posso pensare che nel primo caso mi aspetto un valore minore di prima (ripescare un blu è via via più difficile), nel secondo un valore maggiore (è più facile pescare un colore via via diverso), nel terzo un valore minore (esludere il blu è via via più difficile). Ecco i calcoli, con WolframAlpha:
•
3 blu:
5/10 * 4/9 * 3/8 → 1/12 = 0.08333
= 8.333
%
•
uno per colore:
1º rosso, 2º blu, 3º giallo → 2/10 * 5/9 * 3/8
1º blu, 2º rosso, 3º giallo → 5/10 * 2/9 * 3/8 = ↑
3*2 possibili ordinamenti; in tutto:
2/10 * 5/9 * 3/8 * 3*2 → 1/4 = 0.25 = 25%
•
2 rossi e 1 giallo:
1º rosso, 2º rosso, 3º giallo → 2/10 * 1/9 * 3/8
3 possibili collocazioni del giallo; in tutto:
2/10 * 1/9 * 3/8 * 3 → 1/40 = 0.025 = 2.5%
Per altri commenti: dipend. e indipendenza e leggi di distribuzione (variabili discrete) neGli Oggetti Matematici.
Se operiamo con R possiamo costruire una funzione che calcola la distribuzione oppure possiamo usare la funzione predefinita dmultinom:
disMul <- function(n,x,y,z,p1,p2,p3) factorial(n)/(factorial(x)*factorial(y)*factorial(z))*p1^x*p2^y*p3^z disMul(3,0,3,0,2/10,5/10,3/10) # 0.125 disMul(3,1,1,1,2/10,5/10,3/10) # 0.18 disMul(3,2,0,1,2/10,5/10,3/10) # 0.036 # Erano, ovviamente, tutti calcoli fattibili facilmente a mano; ad es. il primo: # 6/(1*6*1)*1*1/8*1 = 1/8 = 0.125 # ## Ovvero uso dmultinom( c(x, y, z, ...), prob=c(p1, p2, p3, ...) ) ## dove x, y, z, sono le uscite degli eventi (in questo caso 3) e p1, p2, ## p3, sono le probabilità degli eventi o numeri proporzionali ad esse dmultinom(c(0,3,0), prob=c(2, 5, 3)) # 0.125 # ## Posso esprimere i risultati in forma frazionaria (anche questi i calcoli ## erano fattibili facilmente a mano): library(MASS) p <- dmultinom(c(0,3,0), prob=c(2,5,3)); p*100 ; fractions(p) # 12.5 1/8 p <- dmultinom(c(1,1,1), prob=c(2,5,3)); p*100 ; fractions(p) # 18 9/50 p <- dmultinom(c(2,0,1), prob=c(2,5,3)); p*100 ; fractions(p) # 3.6 9/250
Posso verificare la cosa anche sperimentalmente, con una simulazione (con R: vedi). Nel caso in cui non vi sia reinserimento:
## Idea: genero a caso 10 numeri "diversi", considero i primi 2 rossi - 1, ## i successivi 5 blu - 2, gli ultimi 3 gialli - 3 co <- function(x) switch(x, 1,1, 2,2,2,2,2, 3,3,3) Pr <- function(n) { s <- 0; for(i in 1:n) { u <- sample(1:10); if( co(u[1])==2 & co(u[2])==2 & co(u[3])==2 ) s <- s+1}; s/n*100} Pr(1e5) # 8.405 La frequenza percentuale di blu,blu,blu in 100 mila lanci Pr <- function(n) { s <- 0; for(i in 1:n) { u <- sample(1:10); if( (co(u[1])==1 & co(u[2])==2 & co(u[3])==3) | (co(u[1])==1 & co(u[2])==3 & co(u[3])==2) | (co(u[1])==2 & co(u[2])==1 & co(u[3])==3) | (co(u[1])==2 & co(u[2])==3 & co(u[3])==1) | (co(u[1])==3 & co(u[2])==1 & co(u[3])==2) | (co(u[1])==3 & co(u[2])==2 & co(u[3])==1) ) s <- s+1}; s/n*100} Pr(1e5) # 24.935 tre colori diversi Pr <- function(n) { s <- 0; for(i in 1:n) { u <- sample(1:10); if( (co(u[1])==1 & co(u[2])==1 & co(u[3])==3) | (co(u[1])==1 & co(u[2])==3 & co(u[3])==1) | (co(u[1])==3 & co(u[2])==1 & co(u[3])==1) ) s <- s+1}; s/n*100} Pr(1e5) # 2.49 2 rossi e 1 giallo
OK, i valori teorici hanno una buona corrispondenza con quelli sperimentali.
Nel caso in cui vi sia reinserimento:
co <- function(x) switch(x, 1,1, 2,2,2,2,2, 3,3,3) Pr <- function(n) { s <- 0; for(i in 1:n) { u <- sample(1:10, replace=TRUE); if( co(u[1])==2 & co(u[2])==2 & co(u[3])==2 ) s <- s+1}; s/n*100} Pr(1e5) # 12.634 La frequenza percentuale di blu,blu,blu in 100 mila lanci Pr <- function(n) { s <- 0; for(i in 1:n) { u <- sample(1:10, replace=TRUE); if( (co(u[1])==1 & co(u[2])==2 & co(u[3])==3) | (co(u[1])==1 & co(u[2])==3 & co(u[3])==2) | (co(u[1])==2 & co(u[2])==1 & co(u[3])==3) | (co(u[1])==2 & co(u[2])==3 & co(u[3])==1) | (co(u[1])==3 & co(u[2])==1 & co(u[3])==2) | (co(u[1])==3 & co(u[2])==2 & co(u[3])==1) ) s <- s+1}; s/n*100} Pr(1e5) # 17.836 tre colori diversi Pr <- function(n) { s <- 0; for(i in 1:n) { u <- sample(1:10, replace=TRUE); if( (co(u[1])==1 & co(u[2])==1 & co(u[3])==3) | (co(u[1])==1 & co(u[2])==3 & co(u[3])==1) | (co(u[1])==3 & co(u[2])==1 & co(u[3])==1) ) s <- s+1}; s/n*100} Pr(1e5) # 3.644 2 rossi e 1 giallo
OK, i valori teorici hanno una buona corrispondenza con quelli sperimentali.