1. Eventi e variabili casuali INDIPENDENTI. Verifica della possibilita` di usare RND per simulare variabili indipendenti.
Abbiamo simulato l'esito del lancio di due dadi ( scheda 2, quesito 9) con:
U1=INT(RND*6)+1 : U2=INT(RND*6)+1 : U=U1+U2
Affinché la simulazione sia corretta non basta che RND abbia distribuzione uniforme: l'uscita di un dado deve essere indipendente da quella dell'altro, cioè U1 e U2 devono essere "stocasticamente" indipendenti: la probabilità che esca un certo valore di U1 non deve dipendere dal valore di U2 che esce, e viceversa (è una condizione più forte della indipendenza funzionale, o deterministica; un esempio di dipendenza funzionale è quella di U da U1 e U2). Ciò si verifica anche se abbiamo usato per ottenere sia U1 che U2 lo stesso generatore di numeri pseudocasuali?
In altre parole, è corretto considerare le due comparse di RND all'interno del sottoprogramma Prova, chiamato nel ciclo FOR-NEXT di FA_RND.BAS, come due variabili casuali indipendenti?
Voglio verificare questa indipendenza al calcolatore. Per farlo devo caratterizzare meglio matematicamente questo concetto.
Esempio-idea: nel paese XX il 21% degli abitanti sono biondi e il 52% sono femmine. Qual è la percentuale di abitanti che sono femmine bionde?
Suppongo, ragionevolmente, che l'essere biondo e l'essere femmina siano caratteristiche indipendenti, cioè che i biondi si distribuiscano tra i maschi allo stesso modo che tra le femmine: la percentuale di biondi tra i maschi e tra le femmine sia uguale a quella che c'è nel complesso degli abitanti. Quindi dalla tabella sottostante a sinistra, che rappresenta le informazioni iniziali, posso ottenere la tabella a destra riproducendo la riga in basso nelle righe soprastanti modificandola proporzionalmente mediante i fattori moltiplicativi 48% e 52% (ovvero riproducendo la colonna a destra moltiplicandola per i fattori 21% e 79%):
|
|
In formula, ho fatto:
FrequenzaRelativa(B and F) = FrequenzaRelativa(B) · FrequenzaRelativa(F)
dove B indica la modalità "essere biondo" e F la modalità "essere femmina".
Se indico con la variabile Sesso a valori in {"m", "f"} il sesso di un generico abitante di XX e con la variabile Biondo a valori in {"sì", "no"} il suo essere o no biondo, posso esprimere la supposizione fatta inizialmente dicendo che Sesso e Biondo sono variabili casuali indipendenti.
Passando dalla frequenza alla probabilità, possiamo scrivere:
Pr(Biondo="sì" and Sesso="f") = Pr(Biondo="sì") · Pr(Sesso="f").
Più in generale definiamo gli eventi A e B indipendenti se:
(§) Pr(A and B) = Pr(A)·Pr(B)
e le variabili casuali U1 a valori in {a1, …, an} e U2 a valori in {b1, …, bm} indipendenti se:
($) per ogni a in {a1, …, an} e ogni b in {b1, …, bm}, U1=a e U2=b sono eventi indipendenti.
Esegui e analizza le uscite del programma TESTDADI.bas: Via:
Dunque, simulando il lancio di due dadi mediante l'impiego di RND, l'uscita di un certo numero su un dado è indipendente dal numero che esce sull'altro. Come verificare che questo "buon comportamento" di RND è generale, cioè come verificare che più comparse di RND in un programma sono utilizzabili per rappresentare variabili casuali indipendenti? (con più comparse intendiamo 2, 3, …, 100, … comparse, ma, ovviamente, non milioni di comparse, altrimenti ci avvicineremmo alla quantità di "numeri casuali" che RND può assumere; del resto non ha senso realizzare programmi con così tante comparse di RND!) Dobbiamo passare dalla proprietà ($) utilizzata per il caso discreto a una proprietà che caratterizzi l'indipendenza nel caso in cui le variabili aleatorie U1 e U2 varino su intervalli I1 e I2 di numeri reali. È naturale definire U1 e U2 indipendenti se: ($$) per ogni J1 e J2 sottointervalli di, rispettivamente, I1 e I2, U1J1 e U2J2 sono eventi indipendenti. Nel nostro caso I1=I2=[0,1) e le due variabili
sono entrambe dotate di distribuzione uniforme. Via: INPUT "a, b (0 < a, b < 1) "; a, b Sotto sono riprodotte alcune uscite:
|