Corso di Modelli di Sistemi Biologici
Esercitazione 4
Identificazione di modelli compartimentali lineari
Dispensa per esame orale con teoria, codice MATLAB, formule, grafici e commenti
Documento di studio
21 giugno 2026
Modelli di Sistemi Biologici Esercitazione 4
Indice
1 Obiettivo dell’Esercitazione 4 2
2 Schema del modello compartimentale del C-peptide 2
3 Forma di stato e codice MATLAB 3
4 Preparazione dei dati sperimentali 3
5 Modello dell’errore e scelta di WLS 5
6 Valori iniziali dei parametri 5
7 La funzione 6
residui_new.m
8 Stima LS e WLS 7
9 Precisione delle stime 8
10 Relazione tra modello compartimentale e modello biesponenziale 9
11 Come il codice passa da compartimentale a biesponenziale 10
12 Come confrontare stime compartimentali e stime biesponenziali 12
13 Monte Carlo 13
14 Bootstrap 14
15 Monte Carlo vs bootstrap 16
16 Risposta orale completa 17
17 Domande probabili d’esame 17
18 Errori da evitare 18
19 Mini-scheda finale 18
1
Modelli di Sistemi Biologici Esercitazione 4
1 Obiettivo dell’Esercitazione 4
L’Esercitazione 4 ha come obiettivo l’identificazione diretta del modello compartimentale lineare del
C-peptide gia’ studiato nell’Esercitazione 1, usando i dati sperimentali introdotti nell’Esercitazione 3.
Nelle esercitazioni precedenti avevamo fatto due cose diverse: nell’Esercitazione 1 avevamo studiato
e simulato il modello del C-peptide conoscendo i parametri; nell’Esercitazione 3 avevamo stimato
modelli ingresso-uscita esponenziali a partire dai dati. Qui, invece, stimiamo direttamente i parametri
fisiologici del modello compartimentale.
Il passaggio concettuale e’ il seguente:
dati sperimentali di concentrazione =⇒ stima di k , k , k , V .
01 12 21 1
Nell’Esercitazione 3 i parametri stimati erano:
A, α, B, β
per un modello biesponenziale del tipo −αt −βt
= +
y(t) Ae Be .
Nell’Esercitazione 4, invece, i parametri stimati sono:
= [k ].
p , k , k , V
01 12 21 1
Questi parametri hanno significato fisiologico: descrivono eliminazione, scambio tra compartimenti e
volume apparente del compartimento accessibile.
Interpretazione
Il punto centrale dell’esercitazione e’ capire che il modello compartimentale a due comparti-
menti genera una risposta biesponenziale. Quindi il modello compartimentale e il modello
biesponenziale sono collegati: il primo e’ una descrizione a stati, fisiologica; il secondo e’ la
forma ingresso-uscita della risposta osservata.
2 Schema del modello compartimentale del C-peptide
Il modello considera due compartimenti. Il compartimento 1 e’ accessibile: riceve il bolo di C-
peptide sintetico ed e’ il compartimento da cui si misura la concentrazione. Il compartimento 2 e’
periferico/non accessibile. Dal compartimento 1 avviene anche l’eliminazione verso l’esterno.
Le equazioni sono: (t) = + )Q (t) + (t) +
−(k
Q̇ k k Q u(t),
1 01 21 1 12 2
(t) = (t) (t),
−
Q̇ k Q k Q
2 21 1 12 2
(t)
Q
1
= (t) =
y(t) C .
1 V 1
Dove:
• (t) e’ la quantita’ nel compartimento accessibile;
Q
1
• (t) e’ la quantita’ nel compartimento periferico;
Q
2
• e’ la costante di eliminazione dal compartimento 1;
k
01 2
Modelli di Sistemi Biologici Esercitazione 4
• e’ la costante di trasferimento dal compartimento 1 al compartimento 2;
k
21
• e’ la costante di ritorno dal compartimento 2 al compartimento 1;
k
12
• e’ il volume apparente del compartimento accessibile;
V 1
• rappresenta il bolo di C-peptide sintetico.
u(t)
Formula chiave
Il bolo di dose viene modellato come impulso:
D =
u(t) Dδ(t).
La concentrazione misurata e’ (t)
Q
1
= .
y(t) V
1
3 Forma di stato e codice MATLAB
Nel codice MATLAB il vettore dei parametri viene interpretato come:
h i h i
= =
p p p p k k k V
p .
1 2 3 4 01 12 21 1
La forma di stato e’: " #
# "
+ ) 1
−(k k k
01 21 12
= =
A ,
, B 0
−k
k
21 12
1
0 = 0.
= , D
C V
1
Nel codice questa parte e’ scritta cosi’:
A=[-p(1)-p(3),p(2);p(3),-p(2)];
B=[1;0];
C=[1/p(4),0];
D=0;
SDL=ss(A,B,C,D);
Da dire all’orale
All’orale conviene dire: il modello e’ lineare negli stati perche’ le equazioni sono lineari in
e . Tuttavia la stima dei parametri e’ un problema non lineare, perche’ i parametri
Q Q
1 2
modificano la matrice i poli del sistema e quindi gli esponenziali della risposta.
A,
4 Preparazione dei dati sperimentali
Il codice importa i file dei sette soggetti:
[t1,conc1]=textread(’DatiCPsog1.dat’,’%d%f’,’headerlines’,4,’delimiter’,’t’);
...
[t7,conc7]=textread(’DatiCPsog7.dat’,’%d%f’,’headerlines’,4,’delimiter’,’t’);
La dose e il coefficiente di variazione dell’errore sono:
= 49650 pmol, = 0.04.
D CV
La prima operazione sui dati e’ la sottrazione del basale:
3
Modelli di Sistemi Biologici Esercitazione 4
basale=conc(1);
conc=conc-basale;
Questo passaggio e’ fondamentale. La concentrazione misurata dopo il bolo contiene sia il C-peptide
endogeno gia’ presente nell’organismo, sia il C-peptide sintetico somministrato:
(t) = + (t).
C C C
totale basale bolo
Noi vogliamo stimare la cinetica del bolo, quindi lavoriamo su:
(t) = (t) −
C C C .
bolo totale basale
Poi il codice elimina il tempo 0 e il minuto 1:
conc(1:2)=[];
t(1:2)=[];
Il tempo 0 serve solo a stimare il basale; il minuto 1 viene scartato per problemi di mescolamento,
cioe’ perche’ subito dopo il bolo la sostanza potrebbe non essere ancora uniformemente distribuita
nel compartimento plasmatico.
Figura 1: Dati di C-peptide corretti dal basale. In evidenza il soggetto usato come esempio nelle
simulazioni grafiche.
Da dire all’orale
Questo grafico va commentato dicendo che tutti i soggetti mostrano una decrescita della
concentrazione dopo il bolo, ma con variabilita’ individuale. Il soggetto evidenziato e’ quello
su cui viene illustrata la proce
-
Esercitazione 2: Modelli compartimentali non lineari
-
Esercitazione 1 Modelli di sistemi biologici
-
Esercitazione microbiologia
-
Soluzioni domande esercitazione linear probability model