Calibrazione di modelli matematici

Capitolo 4
Calibrazione di modelli matematici
Supponiamo che siano disponibili conteggi o stime di una data popolazione in
stagioni successive.
Ad esempio, consideriamo i dati per la quantità di piante della specie phlox
drummondii in una località del Texas (dati raccolti da Leverich e Levine nel 1979)
tempo (mesi)
piante
1
996
2
158
3
154
4
151
5
147
6
136
7
105
8
74
9
22
I dati dell’andamento della popolazione sono nella colonna “Nx ”.
Il nostro scopo è:
decidere quale modello matematico sia il più adatto a descrivere l’andamento
della popolazione;
una volta deciso il modello, stimare nel modo più preciso i parametri del modello. Questa stima dei parametri viene detta calibrazione di dati o “fitting”
del modello.
Vediamo come procere nel caso dei dati sulla phlox drummondii.
Iniziamo con il riportare i dati su un foglio
Excel. Non si tratta di un programma professionale, ma tuttavia è di uso abbastanza agevole
oltre che estrema diffusione.
44
Calibrazione di modelli matematici
45
Possiamo usare il comando ‘‘grafico’’
(‘‘chart’’ nella versione in inglese) per
fare un grafico della distribuzione di popolazione. Dal grafico si vede come la distribuzione sembri approssimativamente rispettare il modello malthusiano, cioè la descrescita sia di tipo esponenziale.
Ricordiamo che la una legge di tipo malthusiano ha equazione
y = aebt .
Per vedere se l’andamento è di tipo esponenziale “linearizziamo”: calcoliamo il
logaritmo di ambo i membri dell’equazione precedente trovando
log y = log a + bt .
Perciò in un riferimento semilogaritmico (ascissa t e ordinata log(y)) l’equazione
diventa lineare.
L’idea è allora di calcolare (nella colonna C della tabella di Excel) log(y). A tale
scopo scriviamo della cella C3 la formula
=LN(B3).
Selezionando le altre colonne e scegliendo il comando ‘‘riempimento in basso’’
(‘‘fill down’’ nella versione in inglese)
dal menu ‘‘Modifica’’ (‘‘Edit’’) si possono inserire automaticamente i dati per le
altre colonne (cioè automaticamente viene
inserita la formula
=LN(B4)
nella quarta riga etc.)
Modelli Matematici applicati all’Ecologia (3.12.06)
46
Capitolo 4
Disegnamo ora il grafico con ‘‘chart’’
inserendo come asse delle ascisse il tempo e asse delle ordinate i dati della colonna C. Al tempo stesso inseriamo la retta
di regressione ‘‘trendline’’ ( ‘‘linea
di tendenza’’ nella versione italiana) insieme con la sua equazione.
Ricordiamo dal corso di statistica che,
dato un insieme di punti nel piano, la retta
di regressione lineare rappresenta la retta
che “passa più vicino ai punti”. In termini più precisi, viene minimizzata la somma
dei quadrati delle distanze dei punti stessi
dalla retta; il grafico fornisce un’intuizione
del procedimento.
Nel caso della distribuzione di phlox drummondii la retta di regressione lineare
ha equazione
y = −0, 3066x + 6, 4189
Il coefficiente di correlazione, che in questo caso è
R2 = 0, 7261
fornisce una misura di quanto i dati seguono un andamento lineare: 0 ≤ R2 ≤ 1, il
valore 1 è assunto se i dati sono perfettamente allineati e tanto più R2 si avvicina a
1, tanto più i dati si avvicinano a seguire un andamento lineare.
Possiamo concludere che nel nostro caso il modello malthusiano non è ottimale
(R2 non è molto vicino a 1), ma se vogliamo usare tale modello la scelta migliore
per i parametri a e b nell’equazione
y = aebt
S. Console – M. Roggero
Calibrazione di modelli matematici
47
è data da
log a = 6, 4189 ,
b = −0, 3066 .
Calcoliamo ora a come EXP(6,4189) e determiniamo i dati secondo il modello
malthusiano: scriviamo una nuova colonna con la formula:
= H 3*EXP( F 4*(A3))
che ricopiamo in tutta la colonna D usando il comando ‘‘fill down’’. Si inserisce
il nome della cella tra dollari (ad esempio H 3) affinchè se uno ricopia automaticamente i dati delle celle tale dato non sia aumentato ogni volta di uno come da
‘‘fill down’’.
Disegnamo ora il grafico dei dati sperimentali in confronto con quelli del modello
malthusiano calibrato. Si noti che c’è una
certa discrepanza, come del resto prevedibile, dato che il coefficiente di correlazione
non è molto vicino a 1.
Modelli Matematici applicati all’Ecologia (3.12.06)
48
Capitolo 4
4.1
Trasformazioni linearizzanti
Il procedimento usato per il modello malthusiano può essere applicato in altri casi.
Il primo passo è di linearizzare il modello usando trasformazioni linearizzanti
Tabella 1: Alcuni modelli e trasformazioni linearizzanti
Modello
Esponenziale
Logistico
Sigmoide
Equazione
y = aebt
y = K/(1 + ae−bt )
y = K/(1 + atb )
Linearizzazione
log y = log a + bt
log(K/y − 1) = log a − bt
log(K/y − 1) = log a + b log t
La linearizzazione per il modello esponenziale (malthusiano) si ottiene facilmente
prendendo il logaritmo di ambo i membri dell’equazione y = aebt . In altre parole, ottengo un grafico lineare in un riferimento semilogaritmico (ascisse t, ordinate
log(y)).
Per il modello logistico, la linearizzazione si ottiene con i seguenti passaggi
algebrici:
y =
1
y
1
y
K
y
=
=
K
,
1 + ae−bt
1 + ae−bt
,
K
1 + ae−bt
,
K
= 1 + ae−bt ,
K
− 1 = ae−bt ,
y
"
!
K
−1
= log(ae−bt ) ,
log
y
!
"
K
log
−1
= log a − bt .
y
I calcoli per il modello sismoide sono molto simili.
Vediamo ora come si può calibrare un modello di crescita logistica.
4.2
Calibrazione per un modello di crescita logistica
Partiamo dai seguenti dati per una popolazione di parameci aurelia che inseriamo
in un foglio elettronico di Excel
S. Console – M. Roggero
Calibrazione di modelli matematici
49
Possiamo usare il comando ‘‘chart’’
di Excel per fare un grafico della distribuzione di popolazione. Dal grafico si vede
come la distribuzione sembri rispettare il
modello logistico.
Come prima operazione, vogliamo effettuare un fitting con il modello logistico di
crescita mediante trasformazione delle variabili (in modo a ridursi a una equazione
lineare) e poi mediante regressione lineare.
Ricordiamo che l’equazione logistica
y = K/(1 + ae−bt )
diventa lineare con la trasformazione linearizzante
log(K/y − 1) = log a − bt .
Dai dati supponiamo che la popolazione limite (di equilibrio) sia K = 560 (ricordiamoci che è l’asintoto orizzantale della funzione logistica). Determiniamo allora a
e b mediante regressione lineare.
L’idea è allora di calcolare (nella colonna C della tabella di Excel) log(K/y − 1).
A tale scopo scriviamo della cella C2 la formula =LN(560/B2-1). Otteniamo:
Modelli Matematici applicati all’Ecologia (3.12.06)
50
Capitolo 4
Disegnamo ora il grafico con ‘‘chart’’
inserendo come asse x i giorni e asse y i
dati della colonna C. Al tempo stesso inseriamo la retta di regressione ‘‘trendline’’
insieme con la sua equazione.
Dunque
log(a) = 4, 332 ,
a = 76, 0963 ,
b = 0, 6143 .
Si trova la curva logistica
y = 560 ∗ 1/(1 + 76.0963 ∗ exp(−.6134 ∗ t)).
In alternativa si puo’ effettuare mediante lo strumento ‘‘analisi di dati’’
(nella versione in inglese si trova sotto il menu ‘‘Tools’’ e si chiama ‘‘Data
analysis’’.)
Osservazione 4.1. Potrebbe succedere che non si trovi tale opzione tra gli strumenti. Bisogna in primo luogo cercare tra gli ‘‘Add-ins’’ (‘‘Aggiunte’’) e -se lo
si trova- aggiungere “analisi di dati”. Potrebbe pero’ non trovarsi. In questo caso
tale aggiunta non e’ stata installata (con l’installazione standard di ‘‘Office’’ non
viene installata): pertanto e’ necessario usare il CD di installazione.
Vediamo come possiamo ottimizzare la scelta dei parametri usando il ‘‘Solver’’
(‘‘Risolutore’’) di Excel. (Come nel caso di ‘‘analisi di dati’’, potrebbe
S. Console – M. Roggero
Calibrazione di modelli matematici
51
succedere che non si trovi tale opzione tra gli strumenti. Si proceda come nella nota
precedente.)
Nella seconda colonna inseriamo i dati in base alla formula data dal modello di
crescita logistica y = K/(1 + aexp(−bt)). Per fare questo, si inserisce ad esempio
nella terza colonna la formula scrivendo ad esempio nella 2 riga (relativa a 2 giorni)
= H 2/(1+( H 3*EXP(- H 4*A2))). Notare che che uso il parametro K inserito
nella cella H2, a inserito nella cella H3, etc. Come le altre volte, se si inserisce il
nome della cella tra dollari (come in H 2), usando (‘‘fill down’’) il dato non
viene cambiato.
Successivamente calcoliamo l’errore quadratico inserendo in ogni riga della colonna D formule come =(C2-B2)ˆ2 (questo per la cella D2) etc. Otteniamo:
Usando il “Solver” (“risolutore”) di Excel (che si trova sotto il menu ‘‘Tools’’
Modelli Matematici applicati all’Ecologia (3.12.06)
52
Capitolo 4
- ‘‘Strumenti’’) ottimizziamo i parametri K, a e b minimizzando la somma degli
scarti quadratici medi.
Bisogna impostare il “Solver” indicando che i parametri sono nelle celle e H2-H4
(e quindi inserendo il comando H 2: H 4 sotto ‘‘changing cells’’) degli scarti quadratici medie la somma degli scarti quadratici medi D16 (‘‘Target cell’’
D16). Si trova:
Possiamo infine fare il grafico dei dati misurati e di quelli calibrati.
S. Console – M. Roggero
Calibrazione di modelli matematici
4.3
Esercizi
1. Ripetere la procedura fatta per i parameci aurelia usando il modello sigmoide.
2. Determinare la retta di regressione per la crescita del bacillo aspergillus niger
3. Analizzare in modo analogo
Modelli Matematici applicati all’Ecologia (3.12.06)
53
54
Capitolo 4
la crescita del saccharomyces cerevisiae come nella tabella
la crescita di girasoli come nella tabella
S. Console – M. Roggero