Seminari Operativi sull’Analisi di Serie Temporalibarbier/files/sem05.pdf · Informazione e...

70
Introduzione all’econofisica Mondo del Lavoro 2, Prof. Francesco Mainardi Seminari Operativi sull’Analisi di Serie Temporali a cura di Davide Barbieri Marzo - Aprile 2005 1

Transcript of Seminari Operativi sull’Analisi di Serie Temporalibarbier/files/sem05.pdf · Informazione e...

Introduzione all’econofisica

Mondo del Lavoro 2, Prof. Francesco Mainardi

Seminari Operativi

sull’Analisi di Serie Temporali

a cura di Davide Barbieri

Marzo - Aprile 2005

1

Tematiche:

• Matlab, Programmazione e Grafici

• Analisi dei Segnali

Informazione e Campionamento

Modulazione di Frequenza

• Probabilita e Statistica

• Rumore e Processi Stocastici

Applicazioni (numeriche):

• Musica

• Dati Meteorologici dal 1814

• Inquinamento Ambientale a Bologna

• Mercati Finanziari

2

Programma (∼approssimato∼) delle giornate.

(03/03) Introduzione a Matlab e trasformata di Fourier.

- Per cominciare con Matlab: plot/fplot, operazioni

su matrici, m-files.

- Campionamento dei segnali: Limite di Shannon,

Informazione e Frequenza di Nyquist. Aliasing.

- Analisi in frequenza: serie di Fourier.

0 0.5 1 1.5 2 2.5 3 3.5−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

3

(10/03) Modulazione di Frequenza.

- Analisi in frequenza: trasformata di Fourier, FFT,

Potenza in dB e identita di Parseval.

- Frequenza istantanea e costruzioni semplici.

- FM Radio: portante, messaggio e spettro.

- Segnali impulsivi: spettri sinc.

0 0.5 1−1

−0.5

0

0.5

1

t

s(t)

0 0.05 0.1−1

−0.5

0

0.5

1

t

s(t)

0 60 500−10

0

5

ν

dB

40 55 60 65 80−6

−4

−2

0

2

4

ν

dB

4

(17/03) Analisi in Tempo-Frequenza.

- Windowed Fourier Transform.

- Osservazioni sulle finestre.

- Bach e Petrucciani: l’algoritmo del pentagramma.

- Un semplice Filtro sulle Frequenze.

0 0.1 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 −0.3

0

0.3

t (sec)

s(t

)

t (sec)

Fre

qu

en

ze

(H

z)

0 0.1 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 0

1000

2000

3000

5

(31/03) + (07/04) Probabilita e Statistica.

- Variabili Random: costruire con Matlab variabili

gaussiane e non (metodo del rigetto). Istogrammi

e densita di probabilita.

- Media e Varianza campionaria: funzionamento degli

stimatori e convergenza in probabilita. Efficienza

statistica e informazione di Fisher.

- Correlazione: interdipendenza statistica fra serie di

dati (al 2o ordine) e indipendenza aleatoria.

- Applicazioni: gioco d’azzardo e dati correlati.

0 200 400 600 800 1000 1200 1400 1600 1800 2000 2200−50

0

50

−20 −15 −10 −5 0 5 10 15 200

0.1

0.2

0.3

6

(14/04) Evoluzione della Probabilita nel Tempo:

i Processi Stocastici I.

- Il Moto Browniano: Einstein, Wiener, Markov, i

processi di Levy gaussiani e la diffusione normale

nell’equazione Xt+1 = Xt + Zt.

- Le forzanti stocastiche: il Rumore Bianco (WN),

la δ-correlazione e il caos molecolare.

- Random Walk, Efficienza dei mercati finanziari e

nottolino di Feynman.

- Per cominciare con i Processi Stocastici: AR(1).

- Autocorrelazione e Power Spectrum. Stazionarieta.

0 500 1000 1500 2000 2500 3000−100

−80

−60

−40

−20

0

20

40

60

80

100

7

Davide
Cross-Out

(21/04) Processi Stocastici II. Aspetti pratici.

- Gli AR(2). La regione di stazionarieta, il Power

Spectrum e la tavolozza dei colori.

- Come stimare i parametri della regressione.

- Nonstazionarieta semplici nei dati reali: trend e

stagionalita.

- Applicazione: analisi naıf del N.Y. Stock Exchange.

1500 1550 1600 1650 1700 1750 1800 1850 1900

−100

0

100

1580 1590 1600 1610 1620 1630 1640 1650 1660 1670 1680

−100

0

100

(28/04) Tentativo di analisi di dati C.N.R. e ARPA.

- Precipitazioni e temperature giornaliere a Bologna

dal 1814 a oggi.

- Polveri sottili PM10, ozono e biossido di azoto dalle

stazioni di rilevamento ARPA di Bologna.

8

Davide
Cross-Out
Davide
Cross-Out

03/03/2005

1 Matrici †

>> mat=[1 2 3 ; 4 5 6 ; 7 8 9]

Ogni comando non seguito da ; restituisce un output

mat =

1 2 3

4 5 6

7 8 9

i singoli elementi sono individuabili con due indici

>> mat(2,3)

ans =

6

o con un indice solo (scorrimento per colonne)

>> mat(8)

ans =

6

e si possono sempre aggiungere elementi

>> mat(1,4)=3

mat =

1 2 3 3

4 5 6 0

7 8 9 0†Rif.: Help di Matlab.

9

I Somme

>> mat

mat =

1 2 3

4 5 6

7 8 9

Per Matlab tutte le variabili sono considerate matrici.

Es: sommare iterativamente scalari equivale a richiamare

algoritmi di somma fra matrici 1x1.

⇒ cercare sempre di ricondursi a operazioni su elementi

di una stessa matrice: piu rapide.

>> sum(mat)

ans =

12 15 18

>> sum(mat(:,1))

ans =

12

>> sum(mat(1:3,1))

ans =

12

>> sum(mat(2:3,1))

ans =

11

10

II Prodotti

La matrice trasposta si ottiene con l’apice

>> matT=mat’

matT =

1 4 7

2 5 8

3 6 9

Il prodotto matriciale e dato dall’ ∗>> mm=mat*matT

mm =

14 32 50

32 77 122

50 122 194

E ad esempio si puo usare per prodotti scalari fra vettori

>> v=[1 2 3 4]; u=[4 3 2 1];

uT=u’;

vu=v*uT

vu =

20

prodotti matriciali⇒ trasporre il vettore dx e essenziale:

>> w=v*u

??? Error using ==> *

Inner matrix dimensions must agree.

11

e ... attenzione all’ordine !

>> w=uT*v

w =

4 8 12 16

3 6 9 12

2 4 6 8

1 2 3 4

E inoltre possibile gestire operazioni termine a termine†:

>> v3=v*3

v3 =

3 6 9 12

>> uv=u.*v

uv =

4 6 6 4

notare come l’ultima operazione (.∗) usi u e non uT .

NOTA: un operatore fondamentale, gia usato per somme,

e il “due punti”. Un altro dei suoi usi piu frequenti e

quello di costruire griglie

>> Dt=[0:2:10]

Dt =

0 2 4 6 8 10

†La sintassi .* ha un corrispondente anche per la divisione termine a termine (./) el’elevamento a potenza delle componenti dei vettori (.^).

12

2 Grafici †

Con Matlab e possibile graficare (quasi) ogni cosa: fun-

zioni in una o piu variabili, serie di dati, matrici, curve di

livello ecc., in due o tre dimensioni e con scale di colori.

Qui useremo solo funzioni e dati in una variabile.

Per plottare funzioni si usa il comando fplot, con il quale

e possibile anche specificare tipo di linea, colore, etc.

fplot(‘forma funzionale’,

[intervallo del dominio])

fplot(’sin(x)/x’,[-50,50])

−50 −40 −30 −20 −10 0 10 20 30 40 50−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

Per regolare gli assi su un plot si usa il comando axis:

axis([xm xM ym yM])

fplot(’..f(x)..’,[-10,10])

axis([-5 5 -2.8 0.6])

−5 −4 −3 −2 −1 0 1 2 3 4 5

−2.5

−2

−1.5

−1

−0.5

0

0.5

†Rif.: Help di Matlab.

13

Quando si hanno dati su un vettore y da plottare come

se fossero i valori assunti da una funzione si usa plot.

Di default i valori delle x sono i naturali: per specificarli

occorre un vettore x con la stessa lunghezza di y.

Esempio: si vogliono plottare i dati di inflazione FOI

(% mensili sul mese dell’anno precedente dei prezzi al

consumo per le Famiglie di Operai e Impiegati).

Disponibili i dati mensili da ottobre 1978 a gennaio 2005

(316 mesi) su un file di testo, li si trasferisce in memoria

con il comando load e si costruisce il vettore dei tempi.

>> x=load(’FOI_05_dati.txt’);

>> Dt=[1978+3/4:1/12:2005];

>> plot(Dt,x)

>> axis([1978 2005 0 22])

1980 1985 1990 1995 2000 20050

2

4

6

8

10

12

14

16

18

20

22

14

3 Campionamento dei segnali †

Un segnale f (t) viene misurato a tempi discretitjN

j=1,

dunque si presenta come una successioneftj

N

j=1.

Se gli intervalli temporali sono regolari tj+1 − tj = ∆t,

allora νc = 1/∆t e detta “frequenza di campionamento”.

Un segnale campionato si puo scrivere utilizzando la

delta di Dirac: passaggio dal discreto al continuo

f (t) =

N∑n=0

fn δ(t− n∆t)

Analisi in frequenza = scomposizione del segnale in

oscillazioni elementari:

i Per fare questo si usa la trasformata di Fourier

f (ν) =

∫ +∞

−∞ei2πνtf (t)dt

che si inverte con

f (t) =

∫ +∞

−∞e−i2πνtf (ν)dν

ii Per segnali campionati questa si riduce alla serie

f (ν) =

N∑n=0

ei2π(ν/νc)nfn

†Rif.: G.Kaiser, “A friendly guide to wavelets”, 1994 Birkhauser; C.Chatfield, “Theanalysis of time series”, 2004 Chapman & Hall; Numerical Recipes, http://www.nr.com/

15

La massima frequenza contenuta nel segnale e νc: tutto

cio che avviene in tempi minori di ∆t non e rilevato.

Questo e scritto anche nella serie di Fourier del segnale:

ν = νc + α ⇒ ei2π(ν/νc)n = ei2πnei2π(α/νc)n = ei2π(α/νc)n

dunque f (νc+α) = f (α): la rappresentazione del segnale

f (t) in frequenza e tutta contenuta nella banda [−νc, νc].

In realta si ha di piu: l’informazione del segnale e

contenuta in un intervallo di frequenze piu piccolo:

a) Una serie di dati distanziati di ∆t non puo con-

tenere informazioni su oscillazioni di periodo inferi-

ore a 2∆t: ad esempio dati di temperatura con una

misura alle 12:00 ed una alle 24:00 riescono a risolvere

fluttuazioni giornaliere, ma non danno informazioni

su cio che accade nell’arco della mattinata.

Si definisce quindi una frequenza di taglio analoga

alla frequenza di Debye per il solido cristallino: la

frequenza di Nyquist νN =νc

2.

b) Per quanto visto, un segnale campionato non risolve

frequenze piu acute di quella di Nyquist.

Per un campionamento che non perda informazioni

occorre quindi scegliere una νc che sia almeno doppia

della massima frequenza di oscillazione del segnale (se

questa massima frequenza esiste ...).

16

Esempio: campionamento della funzione seno

>> nuc = ...

>> nu = 1;

>> t = [0:1/nuc:10];

>> y = sin(2*pi*nu*t);

>> plot(t,y)

0 1 2 3 4 5 6 7 8 9 10−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

0 1 2 3 4 5 6 7 8 9 10−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

0 1 2 3 4 5 6 7 8 9 10−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

Figura : Campionamento (da sinistra a destra) con νc = 50, 2.18, 1.7

Come si puo notare, nella prima figura νc À ν ed il

seno e risolto con precisione. Nella seconda νc & 2ν, ma

nonostante la bassa definizione si distinguono i 10 picchi.

Nella terza figura ν < νc < 2ν e si perde l’informazione

contenuta nel segnale (la sua frequenza).

Il limite dato dalla frequenza di Nyquist e anche detto

limite di Shannon : il suo teorema del campionamento

afferma infatti che una funzione la cui trasformata di

Fourier si annulla per frequenze superiori a Ω puo essere

ricostruita interamente (senza perdere informazione) a

partire da un campionamento a frequenza νc ≥ 2Ω.

17

Un segnale campionato sotto il limite di Shannon viene

detto “sottocampionato”, ed il fenomeno di distorsione

dell’informazione associato e chiamato aliasing.

Un esempio di aliasing e l’impressione di veder girare in

senso opposto una ruota in rapida rotazione: la durata di

una impressione retinica, di circa 1/25 di secondo, agisce

infatti come un tempo di campionamento:

nu=7;

nuc=200;

t=[0:1/nuc:3.5];

y=sin(2*pi*nu*t);

plot(t,y,’r’)

hold on

nuc=8;

t=[0:1/nuc:3.5];

y=sin(2*pi*nu*t);

plot(t,y,’black’)

plot(t,y,’ob’) 0 0.5 1 1.5 2 2.5 3 3.5−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

In generale l’aliasing e causa di uno sparpagliamento delle

frequenze superiori a νN fra le frequenze “buone”, che

provoca una distorsione nel segnale campionato a danno

di queste ultime: nell’intervallo di Shannon compaiono

frequenze fittizie che confondono l’informazione.

18

10/03/2005

1 Osservazioni sulla Trasformata di Fourier †

a) Spettro di Potenza

Con “Energia Totale” contenuta in un segnale si intende

l’integrale nel tempo della “Potenza Istantanea” |f (t)|2.Il Teorema di Parseval afferma che l’energia totale di

un segnale non cambia se misurata sulle frequenze:∫ +∞

−∞

∣∣∣f (t)∣∣∣2

dt =

∫ +∞

−∞

∣∣∣f (ν)∣∣∣2

e la “potenza associata alle frequenze” [ Ω− , Ω+ ] e ‡

∫ Ω+

Ω−P (ν)dν =

∫ Ω+

Ω−

∣∣∣f (ν)∣∣∣2

b) Simmetrie

I segnali (campionati) reali hanno particolari simmetrie:

i f (t) ∈ R⇒ f (−ν) = f ∗(ν)

ii f (νc + α) = f (α) ⇒ f (−νN + α) = f (νN + α)

dunque |f |2 puo essere studiata solo nell’intervallo di

frequenze [ 0, νN ], essendo pari e periodica.

†Rif.: A.Papoulis, “The Fourier integral and its applications”; Numerical Recipes,Chapter 12 “Fast Fourier Transform” http://www.nr.com/

‡La potenza e comunemente espressa in scala logaritmica: i decibel (dB).

19

c) Fast Fourier Transform

La trasformata di un segnale discreto a N punti si calcola

su N valori di frequenza νk =kνN

N:

fk =

N∑n=0

eiπ(k/N)nfn , k = 0, . . . , N

Un algoritmo che implementa in modo diretto questa

trasformata di Fourier discreta richiede N 2 iterazioni.

L’algoritmo FFT riduce drasticamente le iterazioni a

Nlg2N grazie ad una semplice osservazione: la somma di

lunghezza N si puo scrivere come 2 somme di lunghezza

N/2, e se N = 2n questa scomposizione si puo ripetere

n volte, riducendo la computazione ad N valutazioni di

n “trasformate ad 1 punto”. †

La routine Matlab che realizza la FFT si richiama con

F = fft(f,M)

dove f rappresenta il segnale, F la sua trasformata, M

il numero di punti su cui viene fatto girare l’algoritmo.

Non e necessario che M sia uguale ad N : se M > N al

segnale vengono aggiunti M−N zeri, mentre se M < N

il segnale viene troncato. In questo modo si puo sempre

scegliere (vivamente consigliato) M come potenza di 2.†NOTA: se N = 104, allora N2 = 108, mentre Nlg2N = 1.33× 105.

20

Esempio 1. Frequenza che varia in modo continuo.

N = 8192; nuc = 256;

L = N/nuc;

t = [0:1/nuc:L];

x = cos(pi*t.*t);

subplot(2,1,1)

plot(t,x,’r’)

axis([0 10 -1 1])

Y = fft(x,N);

P = log10(Y.*conj(Y)/N);

f = nuc*(0:N-1)/N;

subplot(2,1,2); plot(f,P);

fm = min(P); fM = max(P);

Df = 0.1*(fM-fm);

axis([0 nuc fm-Df fM+Df])

0 1 2 3 4 5 6 7 8 9 10−1

−0.5

0

0.5

1

0 50 100 150 200 250−15

−10

−5

0

In questo segnale vi sono tutte le frequenze comprese nel-

l’intervallo [0, 32] (Hz). Il segnale e ben campionato, e si

osserva la simmetria dello spettro di potenza intorno alla

frequenza di Nyquist. Il plateau nello spettro si allarga

con l’aumentare del tempo totale L. A cosa e dovuta

questa dipendenza? Ponendo “a mano” una lunghezza

oltre L = 32 non si vede uno stesso cambimento, perche

si trasforma a N = 8196: il segnale viene troncato.

21

Esempio 2. Aliasing.

In presenza di piu frequenze, con alcune al di sopra del-

la frequenza di Nyquist del campionamento, si verifica

una ricombinazione della potenza dello spettro, con una

persistenza di frequenze fittizie derivanti dalle oscillazioni

sottocampionate, che sporca le frequenze ben campionate.

nu1=4.5; nu2=8.5; nu3=18;

nuc=300; t=[0:1/nuc:500]; phi=2*pi*t;

x=sin(phi*nu1)+sin(phi*nu2)+sin(phi*nu3);

subplot(2,1,1); plot(t,x); axis([0 3 -3 3])

Y = fft(x,4096); P=log(Y.*conj(Y)/4096);

f = nuc*(0:2048)/4096;

subplot(2,1,2); plot(f,P(1:2049));

axis([0 25 -10 10])

figure

x=sin(2*pi*nu1*t);

subplot(2,1,1); plot(t,x,’c’)

nuc=11; t=[0:1/nuc:500]; phi=2*pi*t;

x=sin(phi*nu1)+sin(phi*nu2)+sin(phi*nu3);

hold on; plot(t,x,’black’); plot(t,x,’ob’)

axis([0 5 -3 3])

Y = fft(x,4096); P=log(Y.*conj(Y)/4096);

f = nuc*(0:2048)/4096;

subplot(2,1,2); plot(f,P(1:2049));

axis([0 5.5 -10 10])

22

0 0.5 1 1.5 2 2.5 3−3

−2

−1

0

1

2

3

0 5 10 15 20 25−10

−5

0

5

10

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5−3

−2

−1

0

1

2

3

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 5.5−10

−5

0

5

10

Figura : Frequenze spurie in sottocampionamento.

Le tre frequenze contenute nel segnale sono 4.5, 8.5 e 18,

ma con il secondo campionamento, a νc = 11, soltanto la

prima rimane individuabile. In alto si vede il segnale reale

(sinistra) e campionato (destra). Nelle figure in basso vi

sono invee lo spettro reale e quello ottenuto dal segnale

campionato. Come si puo vedere nella figura di destra,

le due frequenze sottocampionate compaiono con valori

Ω2 = 2.5 (corrispondente di ν2 = 8.5: Ω2 = νc − ν2) e

Ω3 = 4 (corrispondente di ν3 = 18: Ω3 = 2νc − ν3).

23

2 Segnali oscillanti

s(t) = A(t)cos [φ(t)]

à Ampiezza = A(t)

à Fase = φ(t)

à Frequenza media

= ‘N o medio di rivoluzioni di 2π su un dato tempo’

=multipli di 2π percorsi da φ(t) nel tempo ∆t

∆t

=1

φ(t + ∆t)− φ(t)

∆t

à Frequenza istantanea ft =1

dt

ESEMPI

a. s(t) = cos [2π (νt− 0.25)]

shift di fase: φ0 = −π

2; frequenza: f = ν

0 1 2 3 4−1

−0.5

0

0.5

0 = − π / 2

φ0 = 0

24

b. s(t) + (2π)2 s(t) = 4πcos(2πt) : risonante

s(t) = t cos [2π(t− 0.25)] ; ampiezza: A(t) = t

0 1 2 3 4 5 6−6

−4

−2

0

2

4

6

s(t)

0 1 2 3 4 5 60

2

4

6

A(t)

c. s(t) = cos[πt2

]: segnale chirp

fase: φ(t) = πt2; frequenza: ft =1

dt= t

0 1 2 3 4 5 6 7 8 9 100

2

4

6

8

10

m(t)

0 1 2 3 4 5 6 7 8 9 10−1

−0.5

0

0.5

1

s(t)

25

3 FM

Modulazione in frequenza = informazione in ft

s(t) = Acos

[ωpt + 2π

∫ t

0

m(t′)dt′]

La frequenza portante νp =ωp

2πviene modulata dal

messaggio m(t) (e.g. per le radio maxt

|m(t)| ¿ νp)

ft = νp + m(t)

ESEMPI

a. s(t) = cos[2π

(3sin

2t])]

, ft =3π

2cos

2t]

0 1 2 3 4 5 6−1

−0.5

0

0.5

1

s(t)

0 1 2 3 4 5 6−5

0

5

m(t)

26

b. Segnale modulato con deviazioni massime di' 4.7 Hz

( = 3π/2) su una portante a 60Hz:

s(t) = cos[2π

(60t + 3sin

2t])]

x(1:40001) = cos(2*pi*(60*(0:0.0005:20)

+ 3*sin(0.5*pi*(0:0.0005:20))));

X=fft(x,8001); P=log10(X.*conj(X)/8001);

f = [0:0.25:1000]; plot(f,P(1:4001))

0 0.5 1−1

−0.5

0

0.5

1

t

s(t)

0 0.05 0.1−1

−0.5

0

0.5

1

t

s(t)

0 60 500−10

0

5

ν

dB

40 55 60 65 80−6

−4

−2

0

2

4

ν

dB

27

4 Modulazione a impulsi: spettri SINC

Re−ikxχ[−1,1](x)

dx√2π

=

√2

π

sin(k)

k

−10 −8 −6 −4 −2 0 2 4 6 8 100

0.2

0.4

0.6

0.8

1

χ [−

1,1

]

0 5 10 15 20 25−5

−4

−3

−2

−1

0

1

ν

dB

(S

INC

)

Segnale modulato da impulsi sulla frequenza

Frequenza costante a tratti

Spettro SINC

28

%% Tempi a cui accendere e spegnere gli impulsi (messaggio)

a(1)=3; a(2)=1; a(3)=4; a(4)=2; a(5)=2; a(6)=1; a(7)=2;

a(8)=5; a(9)=3; a(10)=1; a(11)=1; a(12)=3; a(13)=2;

w0=2; dw=3; vM=100; t(1) = 1/vM; w(1) = w0;

%% Costruzione del messaggio

T = 1;

for k=1:13,

for i=T+1:T+a(k)*vM,

t(i) = i/vM;

w(i) = w0+0.5*(((-1)^k)+1)*dw;

end

T=i;

end

%% Segnale modulato

for i=1:T;

x(i)=cos(2*pi*w(i)*t(i));

end

%% Spettro(dB): |fft segnale|^2 in scala semilog

X = fft(x,3000);

P = log10(X.* conj(X) / 3000);

f = [0:50/1500:50];

%% GRAFICI. 3 plot affiancati verticalmente.

%% E’ indicata la SINTASSI MANUALE PER I PLOT.

%% Grafico 1: Messaggio.

subplot(3,1,1);

plot(t,w,’b’); axis([0 30 1 6])

set(gca,’xtick’,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,

16,17,18,19,20,21,22,23,24,25,26,27,28,29,30])

set(gca,’xticklabel’,’0’,’’,’’,’’,’’,’’,’’,’’,’’,’’,

’10’,’’,’’,’’,’’,’’,’’,’’,’’,’’,

’20’,’’,’’,’’,’’,’’,’’,’’,’’,’’,’30’,’Fontsize’,18)

set(gca,’ytick’,[1, 2, 3, 4, 5, 6])

set(gca,’yticklabel’,’’,’ 2’,’’,’’,’ 5’,’’,’Fontsize’,18)

ylabel(’m(t)’,’Fontsize’,20)

29

%% Grafico 2: Segnale.

subplot(3,1,2);

plot(t,x,’k’); axis([0 30 -1 1])

set(gca,’xtick’,[0, 5, 10, 15, 20, 25, 30])

set(gca,’xticklabel’,

’0’,’’,’10’,’’,’20’,’’,’30’,’Fontsize’,18)

set(gca,’ytick’,[-1, 0, 1])

set(gca,’yticklabel’,’-1’,’0’,’1’,’Fontsize’,18)

ylabel(’s(t)’,’Fontsize’,20)

%% Grafico 3: Spettro. Si osservano 2 frequenze

%% principali e l’assenza delle loro armoniche.

subplot(3,1,3);

plot(f,P(1:1501),’r’); axis([0 15 -5 3])

set(gca,’xtick’,[0, 1, 2, 3, 4, 5, 6, 7, 8, 9,

10, 11, 12, 13, 14, 15])

set(gca,’xticklabel’,

’0’,’’,’2’,’’,’’,’5’,’’,’’,’’,’’,’10’,

’’,’’,’’,’’,’15’,’Fontsize’,18)

set(gca,’ytick’,[-5, -4, -3, -2, -1, 0, 1, 2, 3])

set(gca,’yticklabel’,

’-5’,’’,’’,’’,’’,’0’,’’,’’,’3’,’Fontsize’,18)

text(1.75,-3.5,’frequenze di picco’,’Fontsize’,18)

text(w0-0.2,-2,’\uparrow’,’Fontsize’,28)

text(w0+dw-0.2,-2,’\uparrow’,’Fontsize’,28)

text(8.75,1.2,’armoniche assenti’,’Fontsize’,18)

text(8-0.2,-1.2,’\downarrow’,’Fontsize’,28)

text(9-0.2,-1.2,’\downarrow’,’Fontsize’,28)

text(10-0.2,-1.2,’\downarrow’,’Fontsize’,28)

text(11-0.2,-1.2,’\downarrow’,’Fontsize’,28)

text(12-0.2,-1.2,’\downarrow’,’Fontsize’,28)

text(13-0.2,-1.2,’\downarrow’,’Fontsize’,28)

ylabel(’|f(\nu)|^2 (dB)’,’Fontsize’,20)

%% Per stampare su file in formato eps standard:

%% -depsc2 = eps colore ; -deps2 = eps b/w

orient landscape; print -depsc2 ’impulsi.eps’

30

010

2030

2 5 m(t)

010

2030

−101

s(t)

02

510

15−503

frequ

enze

di p

icco

↑↑

arm

onic

he a

ssen

ti

↓↓

↓↓

↓↓

|f(ν)|2 (dB)

31

17/03/2005

1 Timbrica di una corda vibrante †

Le vibrazioni in una corda elastica (lunga L) ad estremi

fissi sono in forma di onde stazionarie di lunghezza

λn =2L

nLa velocita delle onde trasverse dipende dalla tensione e

dalla densita lineare come v =√

T/d. Detta f1 =v

2L,

frequenza fondamentale, si ha cosı la quantizzazione

fn = nf1 “armoniche”

Le onde stazionarie sono cioe vibrazioni nelle frequenze

multiple intere della frequenza fondamentale, e questa

dipende solo dalle proprieta della corda.

L’orecchio risponde in maniera logaritmica alle frequenze.

Questo fa sı che gli intervalli musicali corrispondano a

rapporti fra frequenze, non a differenze‡: due frequenze

distano un’ottava se sono l’una doppia dell’altra, una

quinta se sono in rapporto 3 : 2, una terza maggiore

se sono in rapporto 5 : 4. Nelle prime cinque armoniche

si ritrova dunque la triade maggiore, riferimento chiave

per la musica tonale.†Rif.: J.Roederer, “The Physics and Psychophysics of Music”‡Nell’orecchio i suoni (onde di pressione) diventano vibrazioni di una membrana con

costante elastica (rigidita) diversa da punto a punto. Ogni frequenza ne mette dunque inrisonanza posizioni x diverse, secondo la relazione logaritmica x(ν)− x(2ν) ' 3.5 mm.

32

Analisi di Fourier delle oscillazioni di una corda pizzicata:

a seconda della deformazione iniziale le armoniche hanno

piu o meno peso nella timbrica uscente dalla corda†.

Profilo iniziale: f (x) ∈ L2([0, L]), dunque

f (x) =

+∞∑n=−∞

cnbn(x) serie di Fourier

bn(x) = ei2πnx/L ; cn =1

L

∫ L

0

e−i2πnx/Lf (x)dx

Estremi fissi: f (0) = f (L) = 0. La serie si riduce alla

f (x) =

+∞∑n=1

Ansen(πnx

L

); An =

2

L

∫ L

0

sen(πnx

L

)f (x)dx

0 L−1

0

1

ν 1

0 L/2 L−1

0

1

ν 2

0 L/3 2L/3 L−1

0

1

ν 3

0 L/4 L/2 3L/4 L−1

0

1

ν 4

0 L/5 2L/5 3L/5 4L/5 L−1

0

1

ν 5

†Queste si trasmettono poi alla cassa di risonanza, che le amplifica in manieracaratteristica per il suono dello strumento.

33

Esempio:

f (x) =

x

αL0 ≤ x ≤ αL

x− L

(α− 1)LαL ≤ x ≤ L

0 0.7 L L0

1

An =2

L

∫ αL

0

sen(πnx

L

) x

αLdx +

∫ L

αL

sen(πnx

L

) x− L

(α− 1)Ldx

=2

α(1− α)

sen(πnα)

(πn)2

Queste armoniche vengono propagate come onde †

∂2g(x, t)

∂t2= v2 ∂2g(x, t)

∂x2

con condizioni iniziali

g(0, t) = g(L, t) = 0 ; g(x, 0) = f (x) , gt(x, 0) = 0

dando origine a vibrazioni ‡

g(x, t) =

∞∑n=1

Ansen(πnx

L

)cos

(πnvt

L

)

†Le vibrazioni elastiche sono una approssimazione: l’amplificazione ad opera della cassadi risonanza avviene per trasmissione di energia dalle vibrazioni, che viene cosı dissipata.

‡Osservare che, nell’esempio, se α = p/q ∈ Q, mancano tutte le armoniche n = kq.

34

2 Analisi in tempo-frequenza †

La modulazione di frequenza viene usata per trasmettere

informazioni codificate: uno strumento di analisi adeguato

per questi segnali deve quindi riuscire a decodificare il

messaggio. La trasformata di Fourier puo al piu definire

l’intervallo di modulazione: il suo scopo e infatti quello

di valutare il peso delle varie componenti in frequenza

sull’intero segnale. Per cogliere la (o le) frequenze che

“istantaneamente” definiscono il messaggio occorre uno

strumento di analisi locale, che al tempo t fornisca il peso

che ha la frequenza ν nel segnale.

Uno strumento di questo tipo e dato dalla WFT:

Windowed Fourier Transform

Sia g(u) a supporto compatto, supp[g(u)

]=

[−T

2,T

2

]

diciamo ft(u) = g(u− t)f (u).

La WFT di f (t) si definisce come FT di ft(u)

[WFT f (t)

]T(ν, t) =

∫ +∞

−∞e−iνuft(u)du

g(u) e detta finestra: seleziona una porzione di segnale

sulla quale identificare il peso delle varie frequenze

attraverso FT Ã composizione locale di frequenze.

†Rif.: G.Kaiser, “A friendly guide to wavelets”

35

ESEMPIO: finestra campione

g(T )(u) =

1 + cos

(2πuT

) −T2 6 u 6 T

2

0 altrove

function g=window(u,T);

g = 0;

if (u > -0.5*T) & (u < 0.5*T)

g = 1 + cos(2*pi*u/T);

end;

−5 −4 −3 −2 −1 0 1 2 3 4 5

0

1

2

g(4) (u

)

Supporto(centrato in 0)

Localizzazione

t = 1 t = −1

Amplificato

Attenuato

36

APPLICAZIONE al segnale chirp

01

23

45

67

89

10 0 1 2 g

(2)(u−3)

01

23

45

67

89

10 −

1 0 1 f(t)

01

23

45

67

89

10 −

2 0 2 f3(u)

01

23

45

67

89

10 0 1 2 g

(1.5)(u−5)

01

23

45

67

89

10 −

1 0 1 f(t)

01

23

45

67

89

10 −

2 0 2 f5(u)

37

function M=wft(x,T,nt,nnu,dB);

% x = segnale da analizzare

% T = dimensione della finestra

% nt = punti di t-risoluzione. al piu’ size(x)-T

% nnu = punti di nu-risoluzione.

si = size(x); n = si(2); dt = (n-0.5*T)/nt; t = 0.5*T;

for j = 1:nt,

% inizializzazione finestra

g(1:n)=0;

% trova i numeri corrispondenti al t-supporto fra quelli in (1:n)

k = find(-0.5*T + t <= (1:n) & (1:n) <= 0.5*T + t);

% quanti sono: l e’ un vettore = (1,Nsupp).

% se ne usera’ la seconda componente.

l = size(k);

% funzione finestra sui punti di supporto.

g(k(1):k(l(2))) = 1 + cos(2*pi*((k(1):k(l(2)))-t)/T);

% t-windowed signal

ft(1:n) = x(1:n).*g(1:n);

% fft solo sul supporto

y = fft(ft(k(1):k(l(2))),nnu);

% potenza spettrale

P = log10(y.*conj(y)/nnu);

% pulizia dal rumore a partire da -dB

k = find(P < -dB);

l = size(k);

P(k(1:l(2))) = -dB-1;

M(j,:) = P(1:nnu/2);

t = t+dt;

end;

38

39

31/03/2005 + 07/04/2005

1 Probabilita - Valori Medi †

Il paradosso di S. Pietroburgo

Un gioco di lanci di una moneta. Il giocatore G paga d $

per giocare e sceglie una faccia (testa), il banco B lancia.

Se testa esce dopo n lanci, B paga a G 2n $. Questa e una

mano (partita): una volta che G e B hanno concordato

d, si continua a giocare fino a quando G non dice basta.

Quanto puo essere disposto a pagare G per ogni mano?

d = 2 $ : se T esce al primo lancio, B da a G 2 $,

altrimenti gli da di piu. G guadagna o va in pareggio.

d > 2 $ : ?

Schema di una partita:

1 2 3

T

C

T

T

T

T

C

C

C

C C

T

C

T

1/2

1/4

1/8

pn =1

2n

probabilita che una

mano finisca in n lanci

= probabilita che T

esca solo al lancio n

†Per la teoria della probabilita esestono molti ottimi testi. Uno per tutti a cui riferirsie: William Feller “An Introduction to Probability Theory and its Applications”

40

Risultato di una mano: numero di lanci per far uscire T.

⇒ giocando N partite, se ne possono scrivere i risultati

come successione numerica (in N)xj

N

j=1xj = risultato della j-esima mano

Queste sono realizzazioni indipendenti di una variabile

random ξ discreta (a valori in N): un suo campione.

La distribuzione di probabilita di ξ e data da pn = 1/2n:∞∑

n=1

pn =

∞∑n=0

1

2n− 1 =

1

1− 1/2− 1 = 1

Dopo quanti lanci, in media, si concludera la partita?

µ =

∞∑n=1

n pn valor medio di ξ

xN =1

N

N∑j=1

xj media campionaria

Osservazione: xN dipende dal campione, che a sua volta

e il risultato di un fenomeno aleatorio. Dunque anche

xN e una variabile random: giocando altre N partite si

puo ottenere una media campionaria differente. Questa

variabile random serve pero come stima di µ, e per questo

si dice stimatore. La sua proprieta fondamentale e che

converge in probabilita a µ per N grande †.†Questo risultato e anche noto come “Legge dei Grandi Numeri”.

41

%% Paradosso di S. Pietroburgo

T = 5000; %% numero di partite

d = 12; %% posta: costo di una partita

win(1) = 0; %% soldi di partenza

%% N = numero di lanci prima che esca testa

%% win = soldi precedenti + vincita - posta

for i=1:T;

flag = 0;

N(i) = 0;

while (flag < 1)

z=rand(1,1);

N(i) = N(i)+1;

if z < 0.5

flag = 1;

end

end

win(i+1) = win(i) + 2^N(i) - d;

end

M = max(N);

%% media teorica

avT = sum((1:100)./(2.^(1:100)));

%% media campionaria

avN = sum(N(1:T))/T;

% %% Processo del capitale in possesso

% subplot(2,1,1); plot(N(1:T),’.’)

% axis([1 T M-4.5 M+0.5])

% ylabel(’N’,’Fontsize’,20); set(gca,’Fontsize’,18)

% subplot(2,1,2); plot(win(1:T))

% ylabel(’$’,’Fontsize’,20); set(gca,’Fontsize’,18)

%% Istogramma degli N: distribuzione 1/2^n

h=hist(N,M); h=h/(2*h(1));

plot(h,’.’); axis([0.5 M+0.5 0 0.55])

clear z flag d i T M %% eliminazione dal workspace

42

0 1000 2000 3000 4000 5000

2468

101214

1 2 3 4 5 6 7 8 9 10 11 12 130.03130.0625

0.125

0.25

0.5

Aspettativa di Vincita:

vn = 2n$ = vincita in una partita di n lanci

se si prova a calcolare la vincita media, si ottiene che in

ciascuna mano si possono vincere 2$ con probabilita 1/2,

4$ con probabilita 1/4, 8 $ con probabilita 1/8, ...

< v >=

∞∑n=1

vn pn =

∞∑n=1

1 = ∞

Gioco con aspettativa di vincita infinita.

43

Questo gioco e basato su eventi rari: quasi sempre una

partita da un risultato basso, e piu la posta d e alta, piu

saranno rare le partite in cui G vince su B. I risultati alti,

pero, giocando molte partite ripagano tutte le perdite.

Con “raro” si intende il fatto che la distribuzione di base

e esponenziale, dunque ad esempio la probabilita che una

partita si concluda con piu di n∗ lanci e

q(n∗) =1

2n∗ +1

2n∗+1+

1

2n∗+2+ . . . =

∞∑

n=n∗

1

2n

= 1−n∗−1∑n=1

1

2n=

1

2n∗−1

Fissato d, quindi, per “vincere” occorre terminare una

partita con un numero n di lanci tale che vn ≥ d, ovvero

n ≥ [log2d

]+ 1, e cio avviene con probabilita 1/2

[log2d

]

cioe circa 1 volta su d partite†.

Nella pratica, la successione numerica che interessa e

quella dei soldi che si hanno in tasca partita dopo partita,

che puo essere descritta dawj

N

j=1wj+1 = wj + 2xj+1 − d

Nei seguenti grafici vi sono esempi di come puo andare

un gioco di 5000 partite, con d=12 $, e di quanto siano

gli eventi rari a dominarne gli esiti.†Con le parentesi quadre si intende qui la parte intera del numero reale.

44

500 1000 1500 2000 2500 3000 3500 4000 4500 5000

10

11

12

13

14N

0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000−1

−0.5

0

0.5

1x 10

4

$

500 1000 1500 2000 2500 3000 3500 4000 4500 5000

8

9

10

11

12

N

0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000−2000

0

2000

4000

6000

8000

$

45

500 1000 1500 2000 2500 3000 3500 4000 4500 5000

9

10

11

12

13

N

0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000−1

0

1

2

3x 10

4

$

500 1000 1500 2000 2500 3000 3500 4000 4500 5000

10

11

12

13

14

N

0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000−1

0

1

2

3

4x 10

4

$

46

500 1000 1500 2000 2500 3000 3500 4000 4500 5000

9

10

11

12

13N

0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000−8000

−6000

−4000

−2000

0

2000

$

500 1000 1500 2000 2500 3000 3500 4000 4500 5000

8

9

10

11

12

N

0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000−2000

0

2000

4000

6000

8000

$

47

500 1000 1500 2000 2500 3000 3500 4000 4500 5000

11

12

13

14

15

N

0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000−1

0

1

2

3

4x 10

4

$

500 1000 1500 2000 2500 3000 3500 4000 4500 5000

9

10

11

12

13

N

0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000−1

0

1

2

3

4x 10

4

$

48

2 Costruzione di Variabili Random

Nell’esempio precedente la variabile random ξ

• poteva prendere solo valori in N (discreta)

• aveva una distribuzione pn =1

2n

Consideriamo ora una variabile random ξ diversa:

• a valori in R (continua)

• con densita di probabilita p(x)

Il significato intuitivo della densita di probabilita

p(x)dx = probabilita che ξ prenda valori fra x e x + dx

si puo comprendere in termini di istogramma: nei vari

canali [x, x + ∆x], per un campione grande, si ha p(x).

Esempio: ξ gaussiana standard

p(x) =1√2π

exp

(−x2

2

)

z=randn(1,10000);

x=[-5:0.1:5];

h=hist(z,x);

h=h/1000; bar(x,h);

g = exp(-x.^2/2)/sqrt(2*pi);

hold on; plot(x,g)

−5 0 50

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

49

Matlab dispone di due generatori random: uno normale

standard (randn) ed uno uniforme fra 0 ed 1 (rand).

Con quest’ultimo e possibile costruire variabili random

aventi qualsiasi distribuzione di probabilita, attraverso

il metodo del rigetto: si estraggono coppie (x, y) con x

nell’intervallo di dominio desiderato ed y ∈ [0, pMAX ],

accettando x solo se y < p(x). Cosı entrano a far parte

del campione di ξ, in un dato intervallo, tante occorrenze

quanta e la probabilita di averne. Esempio: Cauchy

p(x) =1

π

1

1 + x2

function x=cauchy(n)

j=1; z1=rand(1,n); z2=rand(1,n);

for i=1:n,

a1=1400*z1(i)-700; a2=z2(i)/pi;

if a2*pi*(1+a1*a1)<1

x(j)=a1; j=j+1;

end;

end;

funzione richiamata da

Yc=cauchy(1000000); x = -20:.2:20;

div=.2*length(Yc); h=hist(Yc,x)/div;

bar(x,h,’b’); axis([-21 21 0 0.35]);

50

La proprieta cruciale della distribuzione di Cauchy e la

varianza infinita. L’integrale∫

Rx2p(x)dx

infatti diverge. La ragione sta nella lenta decrescita delle

code della distribuzione, che hanno un comportamento

di potenza. Queste “code grasse” causano una statistica

molto diversa da quella dell’esempio pn = 1/2n: qui

gli eventi rari non sono cosı rari. E sufficiente guardare

un’istogramma per accorgersi che le code impiegano molto

a spegnersi: sono frequenti eventi anche molto intensi

0 200 400 600 800 1000 1200 1400 1600 1800 2000 2200−50

0

50

−20 −15 −10 −5 0 5 10 15 200

0.1

0.2

0.3

51

3 Indipendenza e Correlazione

Il concetto di variabile random e cio che permette di

misurare eventi aleatori attraverso una mappatura dello

spazio degli eventi sull’asse reale: attraverso la densita

di probabilita (p.d.f.), l’importanza degli elementi dello

spazio degli eventi rappresentativi del fenomeno random

in questione si traduce in misura su R.

Esempio: X variabile random relativa alle dimensioni

delle foglie di un albero. La sua densita di probabilita

descrive quanto e frequente l’occorrenza dei vari eventi

(foglie di date dimensioni) pesandola su R (dimensioni).

Con la misura dµ si calcolano quindi i valori medi come

< f >=

Rf (x)dµ(x) =

Rf (x)p(x)dx

52

L’interdipendenza di due variabili random e legata alle

relazioni fra i rispettivi eventi di riferimento. Queste

si possono descrivere introducendo il condizionamento:

P (A|B) =P (A ∩B)

P (B)

rappresenta il condizionamento dell’evento B su A, ovvero

il peso “specifico” che B ha nell’interferire con A.

P e una misura di probabilita sullo spazio degli eventi, a

cui corrisponde univocamente una densita di probabilita

in R. Poiche P (A|B) definisce la probabilita (misura)

di A condizionata a B, gli eventi si dicono indipendenti

se P (A|B) = P (A), cioe se B non condiziona A.

Due variabili random, che mappano eventi in

intervalli di R, si dicono percio indipendenti se

i loro eventi di riferimento sono indipendenti.

53

L’indipendenza aleatoria della variabile random X da

Y indica che le realizzazioni dell’una non influiscono su

quelle dell’altra. In generale, l’azione “simultanea” di X

ed Y e regolata da una densita di probabilita congiunta

in due variabili pX,Y

(x, y), che definisce una mappatura

bidimensionale degli eventi. pX,Y

(x, y) e legata ad una

densita condizionata attraverso la formula di Bayes, che

equivale alla relazione insiemistica precedente:

pX|Y (x|y) =

pX,Y

(x, y)

pY

(y)

Per variabili random indipendenti, dunque, la densita di

probabilita congiunta fattorizza:

X,Y indipendenti ⇒ pX

(x)pY

(y)

e in questo modo non si ha condizionamento

pX|Y (x|y) = p

X(x)

In particolare, l’indipendenza di due variabili random

deve produrre l’annullamento della covarianza :

cov(X,Y ) = E[(

X − E(X))(

Y − E(Y ))]

= 0

e questo avviene proprio grazie alla fattorizzazione †.†La covarianza quantifica la somiglianza media delle fluttuazioni random di X ed Y , e

se queste sono indipendenti, in quanto affinita statistica deve annullarsi:∫

R2

(x−E(X)

)(y−E(Y )

)p

X,Y(x, y)dxdy =

R

(x−E(X)

)p

X(x)dx

R

(y−E(Y )

)p

Y(y)dy = 0

54

Se due variabili random X e Y sono note attraverso loro

realizzazioni, cioe si possiedono due campioni statistici

xj e yj, la covarianza si puo inferire utilizzando uno

stimatore analogo a quello di media campionaria xN : la

covarianza campionaria

cN (xj , yj) =1

N

N∑j=1

(xj − xN)(yj − yN)

La covarianza fra X e X stessa e la varianza var(X):

alla covarianza contribuiscono anche le fluttuazioni delle

singole variabili random, quindi una maniera naturale

per “normalizzare” la covarianza ed ottenere un indice

adimensionale porta alla definizione di correlazione:

corr(X, Y ) =cov(X,Y )√

var(X)var(Y )

Il cui stimatore campionario e una composizione degli

stimatori di covarianza/varianza e media campionarie:

rN (xj , yj) =

N∑j=1

(xj − xN)(yj − yN)

√√√√N∑

j=1

(xj − xN)2N∑

j=1

(yj − yN)2

55

La covarianza e la correlazione vengono spesso usate per

quantificare l’interdipendenza fra due variabili random.

Questo e possibile solo studiando la probabilita congiunta:

la valutazione di affinita aleatoria della covarianza e una

approssimazione non sempre sufficiente.

Esempio: cov(X,Y ) si annulla per X , Y indipendenti,

ma non e vero che variabili random a covarianza nulla

siano indipendenti. Se diciamo Z = XY , questa variabile

non e indipendente da X , ma se Y ha media nulla la

covarianza e comunque zero

cov(X, Z) = E(X2Y

)−E(X

)E

(XY

)= var(X)E(Y )

Occorre quindi tenere sempre presente la differenza fra

dipendenza aleatoria e covarianza. Una correlazione nulla

viene infatti considerata come “indipendenza al secondo

ordine”: la covarianza rappresenta il secondo momento

congiunto della distribuzione, e la terminologia e relativa

al fatto che da cov(X, Y ) = 0 non si hanno informazioni

sui momenti superiori (solo conoscendoli tutti e possibile

ricostruire la probabilita congiunta).

Cio nonostante si tratta comunque di uno degli strumenti

piu usati nell’analisi statistica sia per il suo significato

intuitivo che per l’efficacia degli stimatori disponibili.

56

Correlazione campionaria fra due variabili indipendenti

gaussiane generate con Matlab:

function r=correla(x,y);

n = min(length(x),length(y));

muX = mean(x); muY = mean(y);

x2 = sum((x(1:n)-muX).*(x(1:n)-muX));

y2 = sum((y(1:n)-muY).*(y(1:n)-muY));

xy = sum((x(1:n)-muX).*(y(1:n)-muY));

den = sqrt(x2*y2); r = xy/den;

confrontare il risultato ottenuto da

x = randn(2,5000); r = correla(x(1,:),x(2,:));

con quello ottenuto dalle variabili dipendenti

x = randn(1,5000); y = x.^3-x; r = correla(x,y);

0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000−5

0

5

0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000−20

−10

0

10

20

57

Teorema del Limite Centrale

Se XiNi=1 sono variabili random i.i.d. (indipendenti e

identicamente distribuite), con media µ e varianza σ2

finite, la variabile costruita come

YN =1√N

N∑i=1

(Xi − µ)

converge in probabilita, per N → ∞, ad una variabile

gaussiana a media 0 e varianza σ2: YN ∼ N(0, σ2).

Il TLC indica la convergenza normale della somma di

variabili random a varianza finita: in questo senso la

gaussiana e un attrattore per determinate distribuzioni.

Legge dei Grandi Numeri

Se XiNi=1 sono variabili random indipendenti e identi-

camente distribuite (i.i.d.), con media µ e varianza σ2

finite, la variabile costruita come

ZN =1

N

N∑i=1

Xi

converge a µ quasi dappertutto sullo spazio degli eventi.

La LGN costruisce una variabile ZN con varianza σ2/N ,

che quindi ha limite deterministico. Questo fatto e alla

base della costruzione di molti stimatori.

58

Applicazioni Numeriche/Esercizi:

1. Calcolare la correlazione due variabili gaussiane X e

Y indipendenti. Come mai e diversa da 0? Vale la

stessa cosa per la correlazione fra X e XY ?

2. Costruire X e Y gaussiane, e Z = X + Y . Qual e

la loro correlazione? Disegnare plot(X,Z,’.’) e

plot(X,Y,’.’): che differenze ci sono? Cos’e la

densita di probabilita condizionata?

3. Per il teorema del limite centrale, preso xj un

campione a varianza finita e media nulla allora, per

N grande, il campione

zN =∑N

j=1 xj

tende ad

avere una varianza campionaria pari a N volte la

varianza di xj. Come si puo vedere con Matlab?

4. L’istogramma di un campione abbastanza grande ne

fornisce la densita di probabilita corrispondente. Cio

e assicurato dalla legge dei grandi numeri, che si puo

applicare † alla distribuzione empirica

FN(x) =#xi < x

Nche stima la distribuzione cumulativa e vi converge

(in qualche senso). Calcolarla con Matlab su un

campione gaussiano all’aumentare di N .

†Questo e il caso del Teorema di Cantelli.

59

Esercizio 1:

Lo stimatore r e una variabile random, perche dipende

dalla realizzazione del campione. In particolare, se xjNj=1

e yjNj=1 sono realizzazioni indipendenti, allora r e

una variabile random con varianza 1/N , gaussiana per N

grande: si ha quindi un 95% di probabilita che r risulti

compreso fra −2/√

N e 2/√

N (quantili gaussiani).

N = 20000; dbin = 0.002; norm = N*dbin;

for i=1:20000

x=randn(1,5000); y=randn(1,5000); z=x.*y;

r(i)=correla(x,A);

end

bin=[-0.1:0.002:0.1]; h=hist(r,bin)/norm;

bar(bin,h); axis([-0.1 0.1 0 max(h)])

Questo codice permette di istogrammare la correlazione

di X con Y o con Z = XY (A = Y o Z). Teoricamente

si ha corr(X,Z) = 0, dunque dall’analisi campionaria ci

si attende ancora “correlazione nulla”. La distribuzione

gaussiana con varianza 1/N per la correlazione si ha pero

solo fra campioni indipendenti: anche la correlazione fra

X e Z sara piccola, ma seguira una statistica differente.

Studiando questa statistica e quindi possibile rifiutare

l’ipotesi di indipendenza delle variabili †.†Ad esempio se piu del 5% delle volte si ottiene una correlazione superiore a 2/

√N .

Questo e un test che non puo venire svolto quando si dispone di un solo campione.

60

La statistica ottenuta da 2 × 104 campioni indipendenti

ricalca perfettamente quella gaussiana con varianza 1/N .

−0.1 −0.05 0 0.05 0.10

5

10

15

20

25

30

Correlazionefra campioniindipendentidi N = 5000 egaussiana a var 1/5000

Per corr(X, Z) la statistica ha varianza maggiore. Se

si ha la possibilita di generare molti campioni di X e

Z e cosı possibile valutare l’effettiva indipendenza delle

variabili anche attraverso la correlazione.

−0.1 −0.05 0 0.05 0.10

5

10

15

20

25

30

Correlazione: campioni NONindipendenti di N = 5000 egaussiana a var 3/5000

61

Esercizio 2:

Anche per questo punto osserviamo l’intera distribuzione

della correlazione campionaria. Questa volta il suo valore

medio (la correlazione teorica) non sara 0:

corr(X,X + Y ) =cov(X,X + Y )√

var(X)var(X + Y )

=E [X(X + Y )]√

var(X) (var(X) + var(Y ))

=1√2

Dove si e usata la media nulla delle variabili X e Y e la

loro indipendenza: E [XY ] = cov(X,Y ) = 0.

0.67 0.68 0.69 0.7 0.71 0.72 0.73 0.740

10

20

30

40

50

62

Disegnamo ora lo Scatter Plot

x=randn(1,5000); y=randn(1,5000);

z=x+y; plot(x,z,’.’)

−4 −3 −2 −1 0 1 2 3 4−6

−4

−2

0

2

4

6

X

Z

La densita di probabilita condizionata fZ|X (z|x) e una

densita per la variabile Z, pesata con il condizionamento

di X , e la si puo costruire numericamente istogrammando

lo scatter plot lungo Z considerando i punti fra x e x+dx.

In figura e messo in evidenza fZ|X (z|x = 1).

63

Un esempio ancora piu evidente di come lo scatter plot

possa essere utile per quantificare l’interdipendenza fra

variabili random e dato dai campioni dell’esercizio 1: di

X e Z = XY . Una valutazione la loro non indipendenza

attraverso la correlazione richiede di ricorrere a statistiche

su piu campioni, non sempre disponibili. Con lo scatter

plot si ottiene invece immediatamente una distribuzione

estremamente diversa da quella di variabili indipendenti.

−4 −3 −2 −1 0 1 2 3 4−4

−3

−2

−1

0

1

2

3

4

X

Y

−4 −3 −2 −1 0 1 2 3 4−8

−6

−4

−2

0

2

4

6

8

X

Z

A sinistra si osserva isotropia, carattere che corrisponde

a indipendenza, mentre a destra e ben visibile una forte

interdipendenza fra X e Z.

64

14/04/2005

1 Moto Browniano †

Einstein e la diffusione

Il lavoro di Einstein arriva dopo le molte osservazioni del

moto di particelle sospese in fluidi, ad opera di biologi e

botanici, e dopo i lavori di fine ottocento di meccanici

statistici come Boltzmann e Maxwell. La teoria cinetica

dei gas e la termodinamica dell’equilibrio erano gia state

introdotte, e ora mancava un collegamento fra questi

strumenti e quei moti irregolari : la loro comprensione

non poteva rifarsi alla meccanica, e la descrizione delle

traiettorie doveva perdere il determinismo.†Un articolo sempre interessante e “On the theory of the brownian motion”, di Ornstein

e Uhlenbeck su Phys.Rev. 36, 823-841 (1930). Di riferimento per la fisica dei processidi Markov sono invece i libri di H.Risken “The Fokker-Planck equation” e di N.G.VanKampen “Stochastic processes in physics and chemistry”.

65

Moto Browniano (Einstein, 1905)

Risultato di un fenomeno di diffusione delle particelle

sospese ad opera dei moti molecolari, determinati dalla

cinetica dell’ambiente all’equilibrio (bagno termico).

Le traiettorie sono caratterizzate dalle seguenti proprieta:

1. e possibile introdurre un intervallo di tempo τ ¿ del

tempo di osservazione, tale che i movimenti di una

particella in intervalli τ differenti siano indipendenti

2. in un intervallo τ la posizione della particella viene

incrementata di una quantita random ∆

3. in presenza di ν particelle in sospensione per unita di

volume, in ciascuna regione interessata dal moto si ha

un flusso† di particelle pari a −D∂ν

∂x, con costante di

diffusione D = kBT/γ (γ = frizione dell’ambiente).

4. la relazione fra la distribuzione degli incrementi ∆ e

la diffusione e data in termini della varianza:

σ2(∆) = 2Dτ

si ottiene cosı l’equazione per la densita di probabilita

del moto delle particelle sospese

∂p(x, t)

∂t= D

∂2p(x, t)

∂x2

†Questa e la legge di Fick della diffusione, qui relazionata alla teoria cinetica dei gas.

66

Ornstein, Uhlenbeck e i processi stocastici

Per descrivere le traiettorie e possibile anche utilizzare

una rappresentazione meccanica dell’azione dell’ambiente,

introducendo la nozione di forzante stocastica: gli urti

subiti da una particella in un bagno termico si possono

rappresentare come impulsi casuali non correlati fra

loro. Per una particella in un ambiente che induce queste

fluttuazioni e dissipa energia a causa degli attriti si puo

scrivere l’equazione di Langevin nella velocita:

dv(t)

dt= −γv(t) +

√DΓ(t)

dove Γ(t) e una famiglia di variabili aleatorie a media

nulla e non correlate a tempi diversi (impulsi random)†:

E(Γ(t)) = 0 ; corr(Γ(t), Γ(s)) = δ(t− s)

Viene definito cosı un processo stocastico: una evoluzione

le cui traiettorie sono oggetti probabilistici descritti da

una equazione di Fokker-Planck per la p.d.f. della

velocita (aleatoria) v, che evolve in t:

∂p(v, t)

∂t= D

∂2p(v, t)

∂v2+ γ

∂p(v, t)

∂vL’ipotesi di non correlazione nella forzante e quella del

“caos molecolare” e Γ viene anche detto rumore bianco.†Si considera cioe, in ciascun istante t, una variabile random i.i.d. rispetto alle

precedenti. Nell’approssimazione di Einstein questo significa considerare τ infinitesimo.

67

Random Walk gaussiano e Teorema del Limite Centrale

La proprieta 1) delle traiettorie browniane (Einstein) viene

detta degli incrementi stazionari indipendenti (Levy):

ogni salto e indipendente dai precedenti e la distribuzione

dei salti ∆ effettuati nell’intervallo τ dipende solo da τ †.

Se diciamo Xt la “posizione del processo al tempo t”,

possiamo introdurre gli incrementi, o salti, come

∆Xt = Xt+τ −Xt

e la proprieta di Levy imponendo che ∆Xt = Zt siano

variabili random i.i.d. la cui p.d.f. dipende solo da τ .

Considerando τ come intervallo unitario, si puo lavorare

a tempi discreti e definire cosı il processo operativamente:

Xt+1 = Xt + Zt

Con la condizione iniziale X0 = 0 si ottiene dunque

Xt+1 =

t∑n=0

Zt

cioe la posizione del processo al tempo t puo pensarsi

come somma di t variabili i.i.d.. Se hanno varianza σ2

finita, il moto browniano “ricade” dunque nel TLC:

Xt ∼ N(0, tσ2)

†Un processo stocastico di questo tipo e detto di Levy.

68

La gaussianita del processo e coerente con l’equazione

della diffusione, la cui soluzione e appunto

p(x, t) =1√

4πDte−x2/4Dt

e la scrittura ad incrementi si puo intendere come versione

discreta dell’equazione di Langevin.

Per visualizzare il processo risultante occorre generare

molte traiettorie Xt =∑

Zt infatti per t diversi si hanno

variabili random Xt con diversa p.d.f.. L’evoluzione della

densita di probabilita puo essere istogrammata solo con

molte realizzazioni di ciascuna Xt: per questo ciascuna

traiettoria va considerata come un unico oggetto random.

Ogni traiettoria e una realizzazione del processo.

subplot(2,1,1)

for n=1:200;

z=randn(1,500);

for i=1:500;

x(i)=sum(z(1:i));

end;

for i=1:50; y(i)=x(10*i); end;

plot(y,’.’); hold on

end

subplot(2,1,2); plot(x)

69

0 100 200 300 400 500−100

−50

0

50

100

0 100 200 300 400 500−20

−10

0

10

Nel riquadro superiore sono state plottate a punti molte

traiettorie sovrapposte, mettendo in risalto come a ciascun

t la densita di probabilita vari: in particolare si nota

l’aumento della varianza e la media sempre circa nulla.

Nel riquadro inferiore si ha una traiettoria browniana: per

ciascun t e stata scelta una realizzazione della variabile

Xt, formando cosı una realizzazione del processo stocastico.

70