PROBABILITÁ e
VARIABILI ALEATORIE
Prof. Enrico Terrone
A. S: 2008/09
Assiomi
La definizione classica di probabilità gode di tre proprietà
fondamentali che si chiamano “assiomi della
probabilità”:
1) p(E)>=0 per ogni evento E
2) p(S) = 1 per l’evento certo S (spazio dei campioni)
nota: se ne ricava che: p(⌐E) = 1 – p(E)
3) p(A u B) = p(A) + p(B)
se p(A ∩ B) = ø
Teoremi
Questi invece sono alcuni dei principali teoremi che si
ricavano dagli assiomi:
1) p(A u B) = p(A) + p(B) - p(A ∩ B)
2) p(A ∩ B) = p(A | B) * p(B) = p(B | A) * p(A)
nota: p(A | B) si legge “probabilità di A dato B” ed è la
probabilità che accada A nel caso in cui accade B.
Se p(A | B) = p(A) i due eventi A e B si dicono
indipendenti e le relazioni (2) e (1) diventano:
3) p(A ∩ B) = p(A) * p(B)
4) p(A u B) = p(A) + p(B) - p(A)*p(B)
Variabili aleatorie
Si definisce variabile aleatoria il risultato di un fenomeno
casuale.
Es. il lancio di un dado, la temperatura di domani, il
numero di promossi a fine anno
La variabile aleatoria può essere un numero intero o un
numero reale. Noi inizieremo a occuparti delle variabili
aleatorie intere e solo in seguito vedremo quelle reali.
Si intende “variabile” in senso matematico prima che
informatico: è il valore su cui si applica una funzione.
Le due funzioni che si applicano alle variabili aleatorie
sono la funzione densità e la funzione di distribuzione.
La funzione densità
La funzione densità di probabilità (o funzione massiva)
associa a ogni possibile valore della variabile
aleatoria la sua probabilità; si rappresenta sul piano
cartesiano mettendo la variabile casuale in ascissa e
la probabilità in ordinata.
f(x) = p(x)
Es. Disegnare la funzione densità nei seguenti casi:
1) Lancio di due dadi con somma
2) Lancio di due dadi con prodotto
3) Estrazione di un studente in una classe da 10 con un
libro da 20 pagine.
La funzione di distribuzione
La funzione di distribuzione associa a ogni possibile
valore della variabile aleatoria la probabilità che esca
un numero minore o uguale di quel valore.
F(x) = p(x’ | x’ <=x)
[probabilità che si verifichi una x’ che è minore o
uguale alla x data]
Es. Disegnare la funzione distribuzione nei seguenti casi:
1) Lancio di due dadi con somma
2) Lancio di due dadi con prodotto
3) Estrazione di un studente in una classe da 10 con un
libro da 20 pagine.
Valor medio e varianza
Mentre le funzioni densità e distribuzione descrivono
esaustivamente il comportamento di una variabile
aleatoria, il valor medio e la varianza forniscono una
descrizione più sintetica che però in molti casi risulta
utilissima.
Il valor medio è definito come somma di tutti i valori
della variabile aleatoria, ciascuno moltiplicato per la
sua densità di probabilità:
µ = E[x] = Σ x*f(x)
Si può dimostrare che il valor medio così definito
corrisponde alla definizione corrente di media fra n
numeri (la somma diviso la quantità). [cfr. libro]
Valor medio e varianza
La varianza è definita come somma dei quadrati delle
distanze dalla media dei valori della variabile
aleatoria, ciascuno moltiplicato per la sua densità di
probabilità:
σ² = E[(x- µ)²] = Σ (x-µ)² *p(x)
La varianza serve a descrivere quanto significativa è la
media: se la varianza è piccola vuol dire che i valori
sono tutti concentrati intorno alla media, invece se la
varianza è grande vuol dire che i valori si allontanano
molto dalla media.
Si definisce deviazione standard e si indica con σ la
radice quadrata della varianza.
Richiamo: i vettori
Un vettore è un insieme di variabili tutte delle stesso
tipo che occupano uno spazio contiguo di memoria e
che hanno un nome composto da una prima parte
comune e da una seconda parte (indice) specifica.
Es. int v[4];
39
v[0]
195
v[1]
0
v[2]
74
v[3]
I vettori
I vettori offrono due grandi vantaggi:
1) Possibilità di creare tante variabili quante se ne
vogliono con un’unica riga di programma;
2) Possibilità di ripetere la stessa operazione su tutti
gli elementi del vettore usando un ciclo for.
Es. (stampa degli elementi di un vettore)
int v[30];
[…]
for (i=0; i<30; i++)
{
cout << v[i] << “ “;
}
Vettori e sottoprogrammi
Il passaggio dei vettori a un sottoprogramma avviene
sempre come passaggio per riferimento.
Nell’intestazione del sottoprogramma occorre mettere
un puntatore al vettore nella forma <tipo> *pv oppure
nella forma <tipo> pv[ ]. Nel programma chiamante
basta invece scrivere soltanto il nome del vettore.
Trattandosi di un passaggio per riferimento, le
modifiche effettuate sul vettore nel sottoprogramma
rimangono memorizzate nel vettore originario.
Vettori e sottoprogrammi
Esempio
void aumenta (int pv[ ], int x, int n)
{
int i;
for (i=0; i<n; i++)
pv[i] = pv[i] + x;
}
int main ()
{
int v[30];
[…]
aumenta(v, 5, 30);
[…]
}
Esercizi
1) Scrivere e usare un sottoprogramma che dato un libro
di n pagine, una classe di k studenti e uno studente x,
calcoli la probabilità classica che venga estratto x
aprendo a caso una pagina del libro e sommando le
cifre del numero di pagina.
2) In riferimento al problema del punto (1), considerando
come variabile aleatoria lo studente estratto,
rappresentare le funzioni densità e distribuzione, e
calcolare la media e la varianza (svolgere ciascun
punto con un apposito sottoprogramma che prende
come parametro un vettore dove l’indice rappresenta
lo studente e il valore della sua probabilità; es. v[5] =
0,3 significa che lo studente n°5 ha probabilità 0,3).
3) Rappresentare le funzioni densità e distribuzione del
punto (2) con un grafico di asterischi.