Příloha 2 - Laboratoři biokybernetiky a počítačové podpory výuky

Transcription

Příloha 2 - Laboratoři biokybernetiky a počítačové podpory výuky
Příloha 2
Publikace podporované projektem MŠMT
2C06031 za rok 2007
Seznam publikací podporovaných
projektem MŠMT 2C06031 za rok 2007
České
1. Jiří Kofránek, Jan Rusz: Od obrázkových schémat k modelům pro výuku.
Československá fyziologie 56(2), str. 69-78., 2007. (V elektronické podobě dostupné
na: http://patfbiokyb.lf1.cuni.cz/wiki/_media/workshopy/od_obrazkovych_schemat_k_modelum_pr
o_vyuku_definitivni.pdf?id=wiki%3Auser%3Aseznam_publikaci&cache=cache )
2. Jiří Kofránek, Stanislav Matoušek, Michal Andrlík: Škola (simulační) hrou - využití
simulačních modelů acidobazické rovnováhy v e-learningové aplikaci. In:
Zeithamlová, Milena. 2007. Praha, Czech Republic, Agentura Acion M. MEDSOFT
2007, ISBN 978-80-867-4200-7 str.83-92, 2007. (V elektronické podobě dostupné na:
http://patf-biokyb.lf1.cuni.cz/wiki/_media/clanky/skola_simulacni_hrou__vyuziti_simulacnich_modelu_abr_v_elearningove_aplikaci.pdf?id=wiki%3Auser%3Aseznam_publikaci&cache=cache )
3. Jiří Kofránek, Martin Tribula: Control web pro multimediální interaktivní ledvinu.
In:Zeithamlová, Milena, 2007. Praha, Czech Republic, Agentura Acion M. M
EDSOFT 2007, ISBN 978-80-867-4200-7 str. 93-100, 2007. (V elektronické podobě
dostupné na: http://patfbiokyb.lf1.cuni.cz/wiki/_media/clanky/control_web_pro_multimedialni_interaktivni_l
edvinu.pdf?id=wiki%3Auser%3Aseznam_publikaci&cache=cache )
4. Zdeněk Wünsch, Marcel Matúš, Tomáš Kripner, Jiří Kofránek: Modely regulace ve
fyziologickém praktiku. In: Zeithamlová, Milena. 2007. Praha, Czech Republic,
Agentura Acion M. MEDSOFT 2007, ISBN 978-80-867-4200-7, str.225-230, 2007, (V
elektronické podobě dostupné na: http://patfbiokyb.lf1.cuni.cz/wiki/_media/clanky/modely_regulace_ve_fyziologickem_praktiku.
pdf?id=wiki%3Auser%3Aseznam_publikaci&cache=cache )
5. Stanislav Štípek, Čestmír, Štuka, Jiří Kofránek, Pavol Privitzer, Tomáš Nikl:
Metodika e-learningu: Od jednoduchého ke složitému a zpět. In: Sborník příspěvků z
konference eLearning 2007. Hradec Králové: Gaudeamus, 2007, ISBN 978-80-7041573-3, str. 156-164, 2007. (V elektronické podobě dostupné na: http://patfbiokyb.lf1.cuni.cz/publications/publikace/HK_prispevek.pdf )
6. Jiří Kofránek: Tvorba výukových simulátorů. Co je za oponou. In: Mefanet report 01
Institut biostatistiky a analýz, Masarykova Univerzita. str. 60-72, leden 2008. (v
elektronické podobě dostupné na: http://patfbiokyb.lf1.cuni.cz/wiki/_media/clanky/tvorba_vyukovych_simulatoru._co_je_za_opo
nou..pdf?id=wiki%3Auser%3Aseznam_publikaci&cache=cache )
Anglické
7. Jiří Kofránek, Stanislav Matoušek, Michal Andrlík, Petr Stodulka, Zdeněk Wünsch,
Pavol Privitzer, Josef Hlaváček, Ondřej Vacek: Atlas of physiology - internet
simulation playground. In: Proceedings of the 6th EUROSIM Congress on Modeling
and Simulation, Vol. 2. Full Papers (CD). (B. Zupanic, R. Karba, S. Blažič Eds.),
University of Ljubljana, ISBN 978-3-901608-32-2, pdf soubor. MO-2-P7-5, str. 1-9.
2007. (V elektronické podobě dostupné na: http://patf-
biokyb.lf1.cuni.cz/wiki/_media/clanky/atlas_of_physiology_and_pathophysiology.pdf
?id=wiki%3Auser%3Aseznam_publikaci&cache=cache )
8. Jiří Kofránek, Stanislav Matoušek, Michal Andrlík: Border flux ballance approach
towards modelling acid-base chemistry and blood gases transport. In: Proceedings of
the 6th EUROSIM Congress on Modeling and Simulation, Vol. 2. Full Papers (CD).
(B. Zupanic, R. Karba, S. Blažič Eds.), University of Ljubljana, ISBN 978-3-90160832-2, pdf soubor. TU-1-P7-4, str. 1-9. 2007. (V elektronické podobě dostupné na:
http://patfbiokyb.lf1.cuni.cz/wiki/_media/clanky/physiological_feedback_modelling_in_medical
_education.pdf?id=wiki%3Auser%3Aseznam_publikaci&cache=cache )
9. Zdeněk Wünsch, Marcel Matúš, Jiří Kofránek: Physiological feedback modelling in
medical education. In: Proceedings of the 6th EUROSIM Congress on Modeling and
Simulation, Vol. 2. Full Papers (CD). (B. Zupanic, R. Karba, S. Blažič Eds.),
University of Ljubljana, ISBN 978-3-901608-32-2, pdf soubor: TU-1-P7-5, str. 1-7.
2007. (V elektronické podobě dostupné na: http://patfbiokyb.lf1.cuni.cz/wiki/_media/clanky/physiological_feedback_modelling_in_medical
_education.pdf?id=wiki%3Auser%3Aseznam_publikaci&cache=cache )
10. Petr Stodulka, Pavol Privitzer, Jiří Kofránek, Martin Tribula, Ondřej Vacek:
Development of WEB accessible medical educational simulators. In: Proceedings of
the 6th EUROSIM Congress on Modeling and Simulation, Vol. 2. Full Papers (CD).
(B. Zupanic, R. Karba, S. Blažič Eds.), University of Ljubljana, ISBN 978-3-90160832-2, pdf. soubor MO-3-P4-2, str. 1-6. 2007. (V elektronické podobě dostupné na:
http://patfbiokyb.lf1.cuni.cz/wiki/_media/clanky/development_of_web_accessible_medical_sim
ulators.pdf?id=wiki%3Auser%3Aseznam_publikaci&cache=cache )
11. Jiří Kofránek, Jan Rusz, Stanislav Matoušek: Guyton's Diagram Brought to Life from Graphic Chart to Simulation Model for Teaching Physiology. In:Technical
Computing Prague 2007. 15th Annual Conference Proceedings. Full paper CD-ROM
proceedings. (P. Byron Ed.), Humusoft s.r.o. & Institute of Chemical Technology,
Prague, ISBN 978-80-7080-658-6, str. 1-13, 2007. (V elektronické podobě dostupné
na: http://www.humusoft.cz/akce/matlab07/sbor07.htm#k )
Československá fyziologie 2007
Jiří Kofránek, Jan Rusz: Od obrázkových schémat k modelům pro výuku.
Československá fyziologie 56(2), str. 69-78., 2007.
PØEHLEDNÉ ÈLÁNKY
Od obrázkových schémat
k modelům pro výuku
MUDr. Jiøí Kofránek, CSc., Bc. Jan Rusz
Laboratoø biokybernetiky, Ústav patologické fyziologie 1. LF UK, Praha
SOUHRN
Pøed pìtatøiceti lety uveøejnil A. C. Guyton et al. popis rozsáhlého modelu fyziologických vztahù ve formì grafického
schématu. Autoøi toto rozsáhlé grafické schéma oživili s využitím moderního vývojového nástroje urèeného pro vývoj
simulaèních modelù. Rozložení jednotlivých prvkù, jejich propojení a popis byl zachován. Na rozdíl od starého schématu je nové schéma funkèním simulaèním modelem umožòujícím ve vývojovém prostøedí Matlab/Simulink model
spouštìt a studovat chování všech promìnných. Autoøi dále popisují technologii vývoje multimediálních výukových
simulátorù.
SUMMARY
Thirty five years ago, A.C.Guyton at al. published a description of the large model of physiological relations in a form
of a graphic chart. The authors brought this large-scale chart to life using a modern simulation tool – Matlab/Simulink. The original layout, connections and descriptions were saved in the implementation, but contrary to the old
system analysis diagram, the new one is also a functional simulation model itself. Thus, the new implementation
gives the user the possibility to see and study behaviour of all model’s variables in time. Authors also describe the
technology of development of multimedia learning simulators.
POČÍTAČOVÁ PAVUČINA
FYZIOLOGICKÝCH REGULACÍ
Před pětatřiceti lety uveřejnil prof. Arthur C. Guyton spolu
s T. G. Colemanem a H. J. Granderem v časopise Annual of
Biomedical Physiology článek (Guyton et al., 1972), který se
svou podobou na první pohled naprosto vymykal navyklé
podobě fyziologických článků té doby. Jeho centrálním
místem bylo rozsáhlé schéma, na první pohled vzdáleně
připomínající nákres nějakého elektrotechnického zařízení
(obr. 1). Místo elektronek či jiných elektrotechnických součástek však zde byly zobrazeny propojené výpočetní bloky (násobičky, děličky, sumátory, integrátory, funkční bloky), které
symbolizovaly matematické operace prováděné s fyziologickými veličinami. Svazky propojovacích vodičů mezi bloky
na první pohled vyjadřovaly složité zpětnovazební propojení
fyziologických veličin. Bloky byly seskupeny do osmnácti
skupin, které představovaly jednotlivé propojené fyziologické
subsystémy. Centrálním byl subsystém reprezentující cirkulační dynamiku – s ním byly do jednoho celku zpětnovazebně
provázány ostatní bloky (od ledvin, přes tkáňové tekutiny,
elektrolyty, až po autonomní nervovou regulaci a hormonální
řízení zahrnující ADH, angiotenzin a aldosteron).
Československá fyziologie 56/2007 č. 2
Článek popisoval rozsáhlý model fyziologických regulací
cirkulačního systému a jeho širší fyziologické souvislosti
a návazností na ostatní subsystémy organizmu – ledviny,
regulaci objemové a elektrolytové rovnováhy. Místo vypisování soustavy matematických rovnic se v článku využívalo
grafické znázornění matematických vztahů (viz obr. 1). Tato
syntaxe umožnila graficky zobrazit souvislosti mezi jednotlivými fyziologickými veličinami ve formě propojených bloků
reprezentujících matematické operace. Popis modelu byl
pouze ve formě základního (ale přesto plně ilustrativního)
obrázku, komentáře a zdůvodnění formulací matematických
vztahů byly velmi stručné: např. „bloky 266 až 270 počítají
vliv buněčného PO2, autonomní stimulace a bazální rychlosti
spotřeby kyslíku tkáněmi na skutečnou rychlost spotřeby
kyslíku v tkáních“. Od čtenáře to vyžadovalo velké soustředění
(jakož i jisté fyziologické a matematické znalosti) pro pochopení smyslu formalizovaných vztahů mezi fyziologickými
veličinami. O rok později, v roce 1973, vyšla monografie
(Gyuton et al., 1973), kde byla řada použitých přístupů vysvětlena poněkud podrobněji. Později skupina A. Guytona tento
model dále rozšiřovala a zájemcům dokonce poskytovala
i výpisy počítačových programů realizace modelu v programovacím jazyce Fortran (naposledy z roku 1986).
69
Annu. Rev. Physiol. 1972.34:13-44. Downloaded from arjournals.annualreviews.org
by Dr. Jiri Kofranek on 07/15/06. For personal use only.
Obr. 1: Schéma rozsáhlého modelu A. C. Guytona a spolupracovníkù. Publikováno s laskavým svolením Annual Review of Physiology.
Guytonův model byl prvním rozsáhlým matematickým
popisem fyziologických funkcí propojených subsystémů
organizmu a odstartoval oblast fyziologického výzkumu,
která je dnes někdy popisována jako integrativní fyziologie.
Z tohoto hlediska byl určitým mezníkem, který se snažil
systémovým pohledem na fyziologické regulace zachytit
dynamiku vztahů mezi regulací oběhu, ledvin, dýchání,
objemu a iontového složení tělních tekutin pomocí matematického modelu.
A. C. GUYTON – PRŮKOPNÍK
SYSTÉMOVÉHO PŘÍSTUPU VE FYZIOLOGII
Arthur C. Guyton patřil k průkopníkům systémového přístupu ke zkoumání fyziologických regulací. Do fyziologické
vědy vnesl řadu zásadních konceptů v oblasti krátkodobé
a dlouhodobé regulace oběhu a jeho propojení s regulací
70
objemu, osmolarity a iontového složení tělních tekutin.
Vypracoval řadu originálních experimentálních postupů
– byl např. prvním, kdo změřil hodnotu tlaku v intersticiální tekutině. Byl však nejenom inovativní experimentátor,
ale především brilantní analytik a kreativní syntetizátor.
V experimentálních výsledcích uměl nacházet nové dynamické souvislosti, které umožnily pochopit podstatu řady
důležitých regulačních vztahů v organizmu jako celku.
Guytonovy výzkumy např. prokázaly, že v řízení minutového objemu srdečního není rozhodujícím prvkem pouze
srdce jako pumpa, ale i dodávka kyslíku do tkání a s tím
související regulace tkáňové perfuze, a dále i náplň krevního
řečiště a regulace poddajnosti velkých žil. Guyton prokázal,
že za dlouhodobou regulaci krevního tlaku jsou zodpovědné
ledviny (Guyton, 1990).
Při studiu dynamiky regulačních vztahů a pro pochopení
vzájemných dynamických souvislostí fyziologických regulačních vztahů jen slovní popis a „selský rozum“ nestačí. Guyton
Československá fyziologie 56/2007 č. 2
si to uvědomil již v polovině šedesátých let a při zkoumání
příčin, které ovlivňují krevní tlak, se snažil o přesnější vyjádření závislostí a vztahů pomocí propojených grafů a posléze
i pomocí počítačových modelů. První počítačové modely
vytvořil spolu se svým dlouholetým spolupracovníkem Thomasem Colemanem již v roce 1966. Jako erudovaný fyziolog
se Guyton zabýval biomedicínským inženýrstvím v době, kdy
tento obor vlastně ještě oficiálně neexistoval.
Je pozoruhodné, že Guyton se vlastně zabývat teoretickou
medicínou nechtěl. Původní zaměření jeho lékařského vzdělání byla praktická klinická medicína. Po absolutoriu lékařské fakulty na prestižní Harvardské univerzitě v roce 1943
začal svou klinickou kariéru v Massachusettské všeobecné
nemocnici, kde se vzdělával v oboru neurochirurgie. Jeho
neurochirurgická studia přerušila válka, kdy byl povolán
k námořnictvu jako vojenský lékař. Po válce se vrátil zpět
k neurochirurgii, ale velmi nakrátko. V roce 1947 dostal
poliomyelitis, která zanechala těžké následky – ochrnutí
pravé nohy a pravého ramene jej upoutalo na kolečkové
křeslo. Jeho kreativní duch ho i v těžkých chvílích neopustil
a výsledkem byl vynález pákového ovladače (joysticku)
určeného pro kolečkové křeslo na elektrický pohon. Dalším
vynálezem byla speciální pružná spona umožňující paraplegikům snadný přesun mezi kolečkovým křeslem a vanou. Za
tyto vynálezy usnadňující život hendicapovaným jedincům
byl vyznamenán prezidentem USA. Zdravotní postižení
ukončilo Guytonovu kariéru v neurochirurgii a nasměrovalo
ho k teoretické medicíně. Přestože měl nabídky zůstat na
prestižní Harvardské univerzitě, vrátil se do svého rodného
Oxfordu ve státě Mississippi, kde zpočátku učil farmakologii
na dvouleté medicínské škole a v roce 1948 byl jmenován
vedoucím katedry fyziologie a biofyziky v Medical Center
na Univerzitě Mississippi. Z tohoto (na americké poměry)
původně provinčního institutu vytvořil světově věhlasné
fyziologické pracoviště, kde sepsal svou proslulou učebnici
fyziologie, která se dnes dočkala již 11 vydání, byl autorem
a spoluautorem více než 600 publikací a napsal 40 knih.
Vychoval mnoho generací mediků a více než 150 doktorandů. V roce 1989 předal vedení katedry svému žákovi J. E.
Hallovi a jako emeritní profesor se nadále věnoval výzkumu
a výuce až do své tragické smrti v důsledku automobilové
nehody v roce 2003.
FORMALIZACE POPISU
FYZIOLOGICKÝCH VZTAHŮ
Guyton byl jedním z propagátorů využívání formalizovaného popisu fyziologické reality. Formalizace, tj. převedení
čistě verbálního popisu příslušné sítě vztahů na popis ve formalizovaném jazyce matematiky, umožňuje zkoumat chování formálně popsaného systému pomocí formálních pravidel
– např. řešením rovnic matematického modelu. Pokud tyto
rovnice převedeme do formy programu pro počítač, můžeme
tak přenechat „dřinu strojům“ – v tom je podstata využití
simulačních modelů.
Simulační model, pochopitelně, nenahradí biologický
experiment (jak tvrdí někteří fanatičtí bojovníci proti pokuČeskoslovenská fyziologie 56/2007 č. 2
sům na zvířatech). Simulační model je ale velice efektivním
nástrojem na dedukci a ověřování hypotéz – umožňuje sledovat chování složitého dynamického systému v čase v závislosti na nejrůznějších vstupech. Kritériem pro odmítnutí
nebo neodmítnutí hypotézy je ale vždy porovnání chování
modelu s empiricky a experimentálně získaným chováním
biologického originálu.
Uplatnění formalizace v biologických a lékařských vědách
ani zdaleka není běžné, oproti technickým vědám, fyzice, či
chemii má zde biologie a medicína určitý handicap. Jestliže
formalizace ve fyzice začala již někdy v sedmnáctém století,
proces formalizace lékařských a biologických věd je z důvodů složitosti a komplexnosti biologických systémů relativně
opožděn a postupně přichází až s kybernetikou a výpočetní
technikou. Určitým předělem byl počátek sedmdesátých let,
kdy rozvoj výpočetní techniky a programovacích jazyků ve
větší míře umožnil praktické vytváření a testování simulačních modelů fyziologických systémů.
Počínaje výše zmíněným modelem Guytona a jeho spolupracovníků se od sedmdesátých let v odborné literatuře
postupně objevují rozsáhlé simulační modely, snažící se
integrativně zachytit spletité vztahy mezi regulací ledvin,
dýchání, oběhu, iontového složení, acidobazické rovnováhy
a dynamiky tělních tekutin pomocí soustav nelineárních
diferenciálních rovnic a rozvíjí se i modelování interakcí
struktur nervové tkáně.
Pro popis řady těchto modelů autoři často volili grafickou syntaxi navrženou Guytonem – tak např. Amosov et
al. v roce 1977 publikovali monografii, v níž stejnou syntaxí
popsali propojený model cirkulace, respirace, ledvin, elektrolytové rovnováhy a termoregulace. Obdobně v roce 1979
tuto syntaxi využil Ikeda et al. ve svém modelu vnitřního
prostředí.
ŠKOLA (SIMULAČNÍ) HROU
Rozvoj personálních počítačů a internetu koncem minulého století vnesl zcela nové možnosti pro praktické uplatnění simulačních modelů. Simulační model nemusí být jen
nástrojem pro vědecký výzkum, může být i velmi užitečnou
výukovou pomůckou.
Výukové programy se simulačními komponentami
nejsou jen multimediální náhradou klasických učebnic.
Jsou zcela novou výukovou pomůckou, kde nachází své
moderní uplatnění staré krédo Jana Ámose Komenského
„Schola Ludus“ (škola hrou), které tento evropský pedagog
razil již v 17. století. Spojení multimediálního prostředí,
sloužícího jako zvukové a vizuální uživatelské rozhraní,
se simulačními modely studentům umožňuje názorně si
„osahat“ vykládaný problém ve virtuální realitě a přináší
tak zcela nové možnosti pro vysvětlování složitých problémů. Simulační hrou je možné bez rizika otestovat chování
simulovaného objektu – např. zkusit přistávat virtuálním
letadlem nebo, v případě lékařských simulátorů, léčit virtuálního pacienta, či otestovat chování jednotlivých fyziologických subsystémů. Simulační hry umožňují názorně
vysvětlit komplexní vztahy ve fyziologických regulačních
71
NON-MUSCLE OXYGEN DELIVERY
MUSCLE BLOOD FLOW CONTROL AND PO2
228
BFM
1
xo
PM1^2
2500
5
238
257
OVA
2688
263
OVA
DOB
264
1 xo
s
223
P3O^3
233
AM
VIM
216
PDO
PA
NOD
RFN
201
207
213
RBF
177
PRA
0
CNX
CNE
10
POB
276
AU
AH8
lower_limit_0
40
274
275
POD
AK1
ANM
0.06
1
ARM
40
POA
281
282
285
0.9763
ARM
279
280
AR3
AR1
1
s
xo
A2K
lower limit 0.5
1
ARM
1
VIM
1
35
ANU
RSM
283
0.495
0.3
1
5
33
VAS
7
9
VV8
VVE
1
xo
73
5
0.001657
VTC
CV
QVO
PC^3
CPK
QLO
PLA
5.069
QLO
291
PVS
0
PR1
POQ
0.1
293
VLE
P2O
CPA
PLA
DAU
AUK
AUB^3
AUB CALCULATION
304
RPT
QRN
308
QRN = f(PRA)
Z8
309
AUB calculation
0
19
15.18
23
6
22
15
QRO
21
PPA
PGL
VPE
20
14
DPL
uv
0.21
0.85
314
312
AUV
xo
0.9895
AUL
VTD
84
PLA
0
1
AUY
0.5
319
PPA
0.991
0.55
AUM
0.000225
151
VIE
0.375
PPD
100
HSL
337
145
350
5.001
140
KCD
xo
PTT = (VTS/12)^2
336
KED
DHM
1
0.1
xo
1
1600
96
V2D
352
HPR
347
342
125
AU
5
0.5
1
REK
u^2
117
CHY^2
NOD
1
s
93
94
PGC
PGR
0.4
1
HM
335
57600
HM
0.0000058
PG2
95
99
343
PPI = 2 - (0.15/VPF)
PGH
0.01252
VPF
344
PULMONARY DYNAMICS AND FLUIDS
5
VPF
VRC
VRC
1
1
xo s
1
349
HPL
1
1
xo s
HMD
HPR
PTS
89
90
57
CHY
HYL
-5.9
91
NAE
142.2
CNA
PIF
92
VIC
0.0125
VPF
114
115
VEC
39.93
VTW
PRM
3
12
HEART HYPERTROPHY OR DETERIORATION
0.1
VP
VTW
24.2
2
RED CELLS AND VISCOSITY
STH
1
VG
334
RC2
-2.429e-008
VB
1
s
1
s
NID
PTC
HMD
100
DFP
xo
119
xo
2130
0.1
PGP
143
2-(0.15/u)
142
0.0125
HEART RATE AND STROKE VOLUME
upper limit 1
PPI
PLF
DFP
CNA
118
NED
0.25
PIF
57600
348
39.95
RKC
141
1
0.00042
KOD
1
xo
124
CKE
126
116
333
PFI
1
0.00014
123
KE
120
98
HPL
336b
VRC
40
HMD
1
xo s
75
0.013332
u^0.625 PP3^0.1
u^0.625 PA4^0.625
1
s
2
xo
11
325
AM
122
KID
11.4
VGD
100
140
326
121
0.0028
(u/12)^2
6
0.0025
351
1
s
144
0.0003
POT
15
345
PP3
346
HM2
40
336c
RCD
332
PPO
CPF
0
321
324
2850
KE1
CKE
97
RC1
152
2
PRA
QLO
KIR
127
0.013
1
s
85
PTT
PLF
0.0003
PLF
PPI
322
323
HSR
100
PPA4
341
331
POS
139
32
327
HR
VTS
PPA
340
0.00092
PPC
SVO
15
PA
464e-7
PPD
POS
128
129
KIE
113
101
330
5.124e-006
148
PPN
11.94
1
1.5
POY
147
130
KCD
3550
GPR
VG
VG
8
lower limit 0.2375
xo
138
AVE
xo
10
86
VTS
0.333
0.4
1
s
PCP
0.07061
xo
1
s
0
VIM
338
VPF
137
AVE
0.9955
AUTONOMIC CONTROL
339
PO2
PPR
149
VIC
1
s
KI
1
s
PTS = f(VIF)
VIM
8.25
146
PPC
xo
25
131
171
0
POT
329
PO1
CPN
CPP
28
136
15
AUM
320
150
0.4667
AUH
AUH
1
GPD
112
0.9889
8
70
2.951
0.9968
PTS
1
s
VVR
VVR
0.7
328
PIF
88
xo
313
AUD
315
135
VID
0.01
CNA
VIC
VIF
12
3.159
AU
0.3
VID
134
CCD
132
20
VID
VV9
133
CKI
GP2
111
0.0005
87
CIRCULATORY DYNAMICS
1
-2.489e-005
110
GPD
83
VTC
0.15
318
VIF
VTL
VPA
AUJ^AUZ
316
AU9
IFP
1
xo s
12
0.1
0.101
0.38
103
DPI
0.002
1
s
0
AUN calculation
SVO
0.005
PRA
xo
AUJ
1
104
GP1
102
0.30625
0.0048
1
PRA
1
s
VPA
AUZ
310
311
AU
170
xo
ALDOSTERONE CONTROL
DPC
0.04
VRA
18
PLA
RPT
QPO
AU8
AUN
AUN
PIF
QPO
PPA
xo
PTT
0.25
lower limit 4
20
-4
1
s
AUN CALCULATION
317
-6.381
PR1
0
1
1
s
AMC
lower limit 6
9
1
s
VRA
169
60
200
166
KN1
CNA
109
PRA
AUH
AUB
AMR
0
165
CKE
5
142
xo
PPA
AMT
AMP = f(PA)
0.00352
7.8
PTC
105
1
AUH 51
0.026
0
106
PIF
CPI
CPI
0.1
13
50
RVM = f(PP2)
20.44
108
DPL
DRA
15
0
PLD
0.004
lower limit 5
PTC
16
0
PP2
AU2
0.0005
305
when PA1<50: AUN=6
when 20>PA1<50: AUN=0.2*(50-PA1)
when PA1>=50: AUC=0
107
VTL
5.109
12
QRO
lower limit 0
52
PL1
-0.017
168
AM1
DPL
VTL
HMD
HMD
RVM
RPV
0.0357
20
57
PLA
0.03509
0.001717
HPR
1.4
55
1
0.4
DLA
24
301
u^3
PA1
QVO
1
1
56
307
1
303
AU6
when PA1<40: AUB=1.85718
AUB
when 40>PA1<170: AUB=0.014286*(170-PA1)
when PA1>=170: AUB=0
PP1
QLN = f(PLA)
xo
302
A1B
171
167
AMP
HSR
50
20
-4
1
s
VLA
AUC
AUC calculation
AM2
AM3
PA
100
AUH
48
sqrt
QLO
1
when PA1<40: AUC=1.2
AUC
when 40>PA1<80: AUC=0.03*(80-PA1)
when PA1>=80: AUC=0
11
49
RPA
0
172
19.8
10u
1
RVM
53
VLA
25
AUC CALCULATION
PA1
54
QLN
EXC
173
AM5
164
4
1
295
8
296
297
1.24
PA1
AM
ANM
1
RVG
2.738
26
Z12
PA1
20.039
174
0.9926
QRF
47
15
0.4
EXE
AM
PVS
0.6
QLN
44
3
298
ANT
ANGIOTENSIN CONTROL
DPC
VP
PPC
10
QLO
260
LVM = f(PA2)
28
294
0.002
45
46
0
100
8
15
3.007
27.9
VTL
27
upper limit 8 PA
lower limit 4
1
158
0.1
DPC
0.03705
20
0
1
PLA
8
152
CPI
VP
1
xo s
3
DFP
VRA
0.02593
POT
POQ
8
1
s xo
157
AN1
ANM
71
VPD
VUD
5
VPA
PA2
LVM
156
155
CNE
74
70
0.001
VB
VLA
58
1.4
1
QLN
HMD
HPL
CNA
142
CP1
TVD
0.001
VVS
59
HSL
LVM
QLO
159
ANC
CNE
154
CPP
60
VAS
QAO
0.042
(1.2/u)^3
(1.2/RFN)^3
10
75
1.6283e-007
PA
29
30
292
74
u^3
0.0825
RFN
1.2
69.75
VAS3
DAS
AN2
153a
69
PTC
PVS
lower limit 0.0001
2.833
160
10u
REK
CPP
CFC
PVS
AR3
1
s
3.3
161
AN3
4.0
210
0.007
8
VVS
AN5
lower limit 0.7
ANM
xo
0.4
-6.3
3.776
QVO
VVS
1
s
VP
153b
xo
3.25
BFN
PRP
CPP
PIF
2.95
1
s
BFN
PGS
61
62
VP
VVR
6
DVS
2
RSN
1
PA
VAE
xo
0.85
POZ
289
0
162
163
ANM
1.004
80
PC
68
PPC
PVS
VBD
VB
2
VV7
QAO
0.00355
32
1
s
if (POD<0) {POJ=PODx3.3}
0.04
DPP
0.00047
16.65
5.007
72
VRC
RBF
31
lower limit 0.3
A3K
DLP
LPK
CPR
VB
17
100.4
284b
DPL
85
17
PC
0.322
4
0.33
11520
288
39
17
VVE
0.007
78
77
2.774
PA
POJ
DP0
79
0
67
PVS
3.7
RVS
1.2
BFM
100
1
286
41
CN2
RV1
1.022
34
AUM
284
POC
2.8
PPD
PVG
BFN
CN7
0.0212
BFM
PGS
PAM
AUM
287
RV1
43
3
37
RAR
AUM
PAM
30.5
RAR
0.1
1
66
1.6379
0.2
1.79
RVS
ANTIDIURECTIC HORMONE CONTROL
RVS
41A
38
36
VIM
PON
20
ANU
AMM
VIM
RAM
96.3
AUM
RAM
1
290
AR2
2.9
40
42
1
POR
1
1
AVE
POK
lower limit 0.2
1
CAPILLARY MEMBRANE DYNAMICS
273
lower limit 0.95
xo
1
s
0.0007
2
AM
1
1
1
1
1
s
AHY
180
181
REK
POV
277
278
179
AH7
AHM
1
1.213
PPC
28
1
178
AHZ
1
NON-MUSCLE LOCAL BLOOD FLOW CONTROL
AR1
184
lower limit 3
2.5
0.025
RFN
PA
100
AOM
1.001
0.14
AH
222
0.001
1.213
AUM
0.9984
0.3333
139
RBF
AOM
AMM
183
182
CN8
CNR
lower limit 0
lower limit 0.35
1
214
CNA
142
176
1
175
CNY
1
40
1
PVO
AHC
1
s
158A
6
AM
AHM
AH1
10u
CNZ
0.1112
ARF
195
0.3
249
EXC
187
6
AHM
221
upper limit 15.0
lower limit 0.4
185
0.0785
0.9882
NOD
215
AAR
40
6
AH2
0.08
512
HM
0.0125
186
AH4
GF3
1.5
243
8
AHM
1
APD
202
196
1
PMO
0.5
VPF
7.992
188
189
220
1
122
2.8
POT
0.009
210
GF4
211
POM
PM5
POT
203
GF3
1
u^3
219
217
1
5
VVE
200
TVD
0.0009088
0.5
250
244
191
0.01
0.301
60
P3O
242
190
GLP
VIM
197
8.0001
234
QO2
0.00333
RMO
57.14
PVO
OVA
TVD
lower limit 0
Z11
AHM
1000
209
PPC
18
31.67
VV7
VV1
62
1
BFN
40
P1O
232
OSA
255
HM
xo
271
272
upper limit
AAR
51.66
251
1
224
1
s
194
4
Z10
1
0.01044
61
241
2400
271
POT^3
u^3
TRR
0.8
198
VV7
lower limit .005
MO2
265
193
STH
8.25
1.031
63
VV6
VV2
AOM
248
STH
0.001103
PFL
EVR
33
POE
8
VUD
lower limit 0.0003
AAR
SRK
252
247
P2O
P2O
upper limit 8
192
POT
8
VUD
208
212
DVS
5
8.0001
1
253
1
2400
Xo
235
256
218
GFR
0.125
0.00781
0.25
-1
0.7
231
225
P40^3
P4O
THIRST AND DRINKING
206
VV7
1
s
199
PM4
1
s xo
BFM
198.5
lower limit 50
236
QOM
GFN
205
200
65
64
230
5
u^3
1
246
POV
RDO
512
267
u^2
RR
AMM
1
s xo
0.15
226
262
254
02A
PK3
39.85
266
237
239
PK1
258
POT
AU
1
lower limit .001
229
5
RMO
5
245
PMO
800
227
POV
268
PM3
240
PK2
259
0.7
261
270
KIDNEY DYNAMICS AND EXCRETION
VASCULAR
STRESS
RELAXATION
260
OSV
168
1
1
s
57.14
02M
269
TISSUE FLUIDS, PRESSURES AND GEL
VTS
ELECTROLYTES AND CELL WATER
Obr. 2: Realizace rozsáhlého modelu A. C. Guytona et al. pomocí softwarového nástroje Simulink © Matworks. Rozvržení, oznaèení
i èíslování jednotlivých blokù je stejné jako na Guytonovì schématu. Rozdíl je ovšem v tom, že toto není pouze obrázek, je to zároveò
i funkèní simulaèní model. Model je k dispozici na adrese www.physiome.cz/guyton.
systémech a kauzální řetězce v patogenezi nejrůznějších
onemocnění.
Z pedagogického hlediska je důležité, že modelovaný
objekt můžeme rozdělit na jednotlivé subsystémy a testovat
jejich chování odděleně i jako součást vyššího celku. Tak např.
při studiu složitých fyziologických regulací můžeme dočasně
odpojit vybrané regulační smyčky a umožnit studentům sledovat reakce těchto subsystémů na změny vstupních veličin
(které jsou v reálném organizmu ovšem samy regulovány).
Tím dovolíme sledovat dynamiku chování jednotlivých
subsystémů při postupných změnách pouze jediného vstupu,
zatímco jiné vstupy jsou nastaveny na zvolenou konstantní
hodnotu (tzv. princip „ceteris paribus“).
Postupně pak můžeme jednotlivé dočasně rozpojené
regulační vazby opět zapojovat a studovat jejich vliv na chování organizmu při nejrůznějších patologických poruchách
a reakcích na příslušnou terapii. Podle našich zkušeností
právě tento přístup vede k lepšímu pochopení složitých
dynamických jevů v patogenezi nejrůznějších onemocnění
a porozumění patofyziologických principů příslušných
léčebných zásahů.
Vývoj efektivních výukových programů, kombinujících
multimédia se simulačními hrami, je náročnou a komplikovanou prací vyžadující týmovou spolupráci řady profesí
– zkušených pedagogů vytvářejících základní scénář, tvůrců
simulačních modelů, lékařů, výtvarníků a programátorů. Tuto interdisciplinární kolektivní tvorbu zefektivňuje
72
využívání vhodných vývojových nástrojů, které umožňují
komponentovou tvorbu, propojení simulačních programů
a interaktivních multimédií podle daného scénáře do kompaktního celku.
TEORETICKÝ ZÁKLAD SIMULAČNÍCH HER
– SIMULAČNÍ MODELY
Při vytváření simulátorů výukových simulačních her je
nutno řešit dva typy problémů:
1. Tvorba simulačního modelu – vlastní teoretická výzkumná práce, jejímž podkladem je formalizace fyziologických vztahů vyjádřená matematickým modelem.
V našem případě byla tato problematika řešena v rámci
výzkumných grantů a výzkumného záměru.
2. Tvorba vlastního multimediálního simulátoru, resp.
tvorba výukového programu využívající simulační hry
– je praktická aplikace teoretických výsledků, která
navazuje na výsledky řešení výzkumu. Podkladem
simulátoru jsou vytvořené (a verifikované) matematické modely.
Pro každou z těchto úloh je vhodné používat adekvátní
vývojářské nástroje. Pro tvorbu simulačních modelů v naší
laboratoři využíváme Simulink a Matlab americké firmy
Mathworks, které nám umožňují postupně sestavovat simulační model z jednotlivých komponent – jakýchsi softwaroČeskoslovenská fyziologie 56/2007 č. 2
vých simulačních součástek, které se pomocí počítačové myši
mezi sebou propojují do simulačních sítí. Tyto sítě svými
vodiči a součástkami na první pohled vzdáleně připomínají
elektronické obvody. Rozdíl je ovšem v tom, že místo elektrických signálů v propojovaných vodičích proudí informace.
V jednotlivých uzlech (sumátorech, integrátorech, násobičkách, děličkách atd.) pak dochází ke zpracování přiváděných
informací a k trasformaci do výstupní informace, která je
rozesílána výstupními vodiči do dalších prvků sítě.
V Simulinku tak můžeme názorně graficky vyjádřit i velmi složité matematické vztahy. Vytvořená síť ovšem není
jen přehledný obrázek. Je to zároveň i funkční simulační
model (viz obr. 2). K jednotlivým vodičů této sítě můžeme
myší připojovat virtuální displeje či osciloskopy. Po spuštění modelu pak můžeme jejich prostřednictvím sledovat
číselnou či grafickou podobu hodnot veličin, které proudí
v jednotlivých vodičích.
OŽIVLÉ GUYTONOVO SCHÉMA
Simulinková schémata jsou velmi obdobná pětatřicet let
staré notaci využité ve výše zmiňovaném rozsáhlém modelu
Guytonovy školy. Rozhodli jsme se proto oživit starý model
prostřednictvím moderního softwarového nástroje. Vnější
vzhled jsme se snažili zachovat zcela stejný jako v původním
obrázkovém schématu – rozložení, rozmístění vodičů, názvy
veličin i čísla bloků jsou stejné (obr. 2). Rozdíl je jen v grafickém tvaru jednotlivých prvků – tak např. násobička a dělička
je v Simulinku realizována čtverečkem (obr. 3b) a nikoli
„prasátkem“ jako v Guytonově notaci (viz obr. 3a). Blok integrátoru zobrazený v Simulinku nemá na sobě grafický znak
integrálu, ale výraz „1/s“ (což souvisí s notací tzv. Laplaceovy
transformace). V simulinkovém modelu jsme využili i přepínače, kterými i za běhu modelu můžeme odpojovat nebo
zapojovat jednotlivé subsystémy a regulační smyčky.
Simulační vizualizace starého schématu ale zdaleka nebyla
úplně snadná – v originálním obrázkovém schématu modelu
jsou totiž chyby. V nakresleném obrázku to nevadí, pokusíme-li se ho ale oživit v Simulinku, pak se chyba projeví,
v lepším případě, neadekvátním chováním modelu, a v horším se model znestabilní, hodnoty proměnných modelu
začnou divoce kmitat a model zkolabuje jako celek. Chyby
byly drobné – přehozená znaménka, dělička místo násobičky,
prohozené propojení mezi bloky, chybějící desetinná tečka
u konstanty atd. – ale stačily na to, aby model nefungoval. Při
znalosti fyziologie a systémové analýzy se na chyby, při troše
námahy, dalo přijít.
Je zajímavé, že tento složitý obrázek byl mnohokrát přetiskován do různých publikací a nikdo si nedal práci tyto
chyby odstranit. Ostatně v době, kdy obrázkové schéma
vznikalo, ještě neexistovaly kreslící programy – obrázek
vznikal jako složitý výkres – a ruční překreslování složitého
výkresu ani zdaleka není snadné. Možné je i to, že autoři
opravovat chyby ani příliš nechtěli – kdo si dal práci s analýzou modelu, snadno obrazové „překlepy“ odhalil, kdo by
chtěl jen tupě opisovat, měl smůlu. Koneckonců, ve své době
autoři rozesílali i zdrojové texty programů svého modelu
NON-MUSCLE OXYGEN DELIVERY
260
OSV
168
0.7
POV
270
5
268
262
POT
512
u^3
-
257
lower limit 50
+
+
+
2688
263
5
P40^3
DOB
264
266
258
POV
39.85
RDO
267
259
261
-
1
xo
-
269
1
s
57.14
02M
256
P4O
MO2
8.0001
265
2400
u^3
271
POT^3
1
s
BFN
40
upper limit 0.6
272
P1O
0.00333
255
HM
x271
o
POT
OVA
200
QO2
2.8
POT
7.992
AOM
1
Obr. 3: Pravý horní roh obrázkového schématu modelu A. C. Guytona (a) a zobrazení modelu v softwarovém nástroji Simulink (b).
Stejnì rozmístìné bloky se stejnými èísly pøedstavují stejné matematické operace. Násobièky a dìlièky: bloky 255, 257, 259, 261,
263, 268 ,272, 270 ; sèítaèky: bloky 256, 258, 262, 264, 266, 269; integrátory: bloky 260 a 271; funkèní mìnièe (kubická funkce):
bloky 265 a 267; omezovaè horní hodnoty: mezi bloky 272 a 286, omezovaè dolní hodnoty: mezi bloky 265 a 180. V Simulinku jsou
navíc pøepínaèe, kterými lze pøepnout vstupní hodnoty pøicházejících do subsystému z ostatních èástí modelu na vstupy zadávané
uživatelem (a odpojit tak subsystém od ostatní èásti modelu).
Československá fyziologie 56/2007 č. 2
73
0.1441
PNa
100.2
29.83
6.25
1189
TubC
Normal proximal
tubule conductance
[ml/min/torr]
RBF
OUTPUTS :
GFR - Glomerular filtration rate [ml/min]
FF - Filtration fraction [relative number]
GP - Glomerulal pressure [torr]
PTP - Proximal tubule pressure [torr]
AVeCOP - Average colloid osmotic pressure [torr]
NETP - Net pressure gradient in glomerulus [torr]
RPF
665.6
0.07
Plasma protein
cnoncentration
[g/ml]
APr
16
GKf
Normal glomerular
filtration coeffitient
[ml/min/torr]
U
GFR
PNa
INPUTS :
RAP - Renal artery pressure[torr]
Affc - Afferent artery conductance [mll/min/torr]
TubC - Proximal tubule conductaqnce [ml/min/torr]
RBF - Renal blood flow [ml/min]
RPF - Renal plasma flow
APr - Plasma protein concentration (in afferent artery) [g/ml]
GKf - Glomerular filtration coeffitient [ml/min/torr]
AffC
3.644
125
GLOMERULUS
RAP
FF
U
U
INPUTS :
PNa - Plasma sodium concentration [mmol/ml]
GFR - GLomerulal filtration rate [ml/min]
LogA2 - Logarithm of plasma angiotensin concentration
[pg/ml]
PrxFNaNorm - Normal value of sodium proximal
fractional reabsorbtion [relative number]
0.1905
GFR
GP
O
60.31
MDNaFlow
PdxNaReab
LogA2
PTP
20.29
AVeCCP
32.21
PrxFNaNorm
OUTPUTS :
MDNaFlow - Sodium outflow [mmol/min]
PdxNaReab - Proximal sodium reabsorbrtion [mmol/l]
PrxFNa - Proximal fractional sodium reabsorbtion
PrxFNa
Calculation of proximal tubule sodium reabsorbtion
NetP
7.811
0.7977
0.8
Normal Na proximal
fractional reabsorbtion
Glomerulus
14.37
MYOGENIC RESPONSE
0.9996
AffC
25.09
EffC
200
RenVenC
Venous conductance
[ml/min/torr]
AP
100.2
7
VP
Vena renalis
pressure
[torr]
0.44
Hct
Hematocrit
0
Renal artery pressure
clamp drop [torr]
Clamp
RAP
RENAL PERFUSION
INPUTS :
AffC - Afferent artery conductance
[ml/min/torr]
EffC Efferent artery conductance
[ml/min/torr]
RenVenC - Renal venous conductance
[ml/min/torr]
AP - Arterial pressure [torr]
VP - Vena renalis pressure [torr]
Hct - Hematocrit [relative number]
Clamp - Renal artery pressure drop
caused by renal artery clamp [torr]
OUTPUTS :
RAP - Renal artery pressure [torr]
RBF - Renal blood flow rate[ml/min]
RPF - Renal plasma flow rate[ml/min]
INPUT :
RAP - Renal artery pressure [torr]
MACULA DENSA
MDNaFlow
AffMyo1
INPUTS :
MDNaFlow - Macula densa sodium flow
[mmol/min]
logA2 - Logarithm of plasma angiotensin
concentration [pG/ml]
MDNorm - Normal macula densa feedback signal
[ratio to normal value]
OUTPUT :
AffC - Myogenic effect [ x Normal]
RAP
Calculation of the myogenic response to changes in renal perfusion
pressure (afferent conductance responds to changes in perfusion
pressure, with pressure increases causing vasoconstriction)
1.005
MDSig
AFFERENT ARTERY
RBF
OUTPUT :
MDSig - Macula densa feedback signal
[ x Normal]
AffMyo
AffC
INPUTS :
AffMyo - Myogenic effect [ x Nomal]
MDSig - Macula densa feedback signal [ x Normal]
AffNorm - Normal conductance in afferent artery [ml/min/torr]
OUTPUT :
AffC - Vascular conductance [ml/min/torr]
RPF
MDSig
Calculation of renal artery pressure and renal blood flow rate
MDNorm
Macula densa feedback signal calculation based on
macula densa sodiumflow and angiotensin concentration
30
AffNorm
1
Normal macula
densa
feedback signal
Normal conductance
of Afferent artery
[ml/min/torr]
Calculates conductance of afferent artery
LogA2
EFFERENT ARTERY
LogA2
EffC
EffC
INPUTS :
LogA2 - logarithm of angiotensin concentration
MDSig - Macula densa feedback signal [ x Normal]
EffNorm - Normal conductance in afferent artery [ml/min/torr]
OUTPUT :
EffC - Vascular conductance [ml/min/torr]
AP
LogA2
1.277
MDSig
25
EffNorm
Calculates conductance of efferent artery
MDSig
Normal conductance
of Efferent artery
[ml/min/torr]
LogA2
Obr. 4: Fragment èásti modelu sestaveného s využitím simulaèních èipù. Na rozdíl od „holých“ simulaèních blokù propojených spoustou èar, je struktura modelu pøehlednìjší.
v programovacím jazyce Fortran – takže pokud někdo chtěl
pouze testovat chování modelu, nemusel nic programovat
(maximálně pouze rutinně převedl program z Fortranu do
jiného programovacího jazyka).
Námi vytvořená Simulinková realizace (opraveného)
Guytonova modelu je zájemcům k dispozici ke stažení na
adrese www.physiome.cz/guyton. Na této adrese je i naše
Simulinková realizace mnohem složitější verze modelu Guytona et al. z roku 1986. Zároveň je zde i velmi podrobný popis
všech použitých matematických vztahů se zdůvodněním.
K dispozici je i výpis zdrojového textu původního modelu
z roku 1986 ve Fortranu.
OD SIMULAČNÍ PAVUČINY
K SIMULAČNÍM ČIPŮM
Spletitá pavučina počítacích bloků oživlého Guytonova
modelu působí sice svou složitostí na první pohled impozantně, pro vlastní práci s modelem je však dosti nepřehledná.
Při výstavbě našich vlastních modelů se nesnažíme stavět
mraveniště bloků prošpikovaných svazky informačních
vodičů, v nichž se uživatel (a nezřídka i sám tvůrce modelu)
velmi snadno ztrácí. Snažíme se proto, pokud to jde, model
dekomponovat do přehledných částí. Využíváme toho, že
jednotlivé části simulační sítě se dají hierarchicky seskupovat
do subsystémů s uživatelsky definovanými vstupy a výstupy,
v masce subsystému se dají vstupy a výstupy stručně popsat.
Na kliknutí je možno k subsystému zpřístupnit i rozsáhlou
74
dokumentaci, kde je možno bez omezení podrobněji popsat
i teoretické pozadí vytvořeného subsystému.
Takto pojaté subsystémy na první pohled připomínají
elektronické integrované obvody, neboť na jednotlivých
„pinech“ těchto „simulačních čipů“ jsou příslušné vstupy
a výstupy, které je možno propojit do sítě s dalšími bloky
a subsystémy (obr. 4).
Důležité je, že nakreslené struktury jsou v prostředí
programu Simulink „živé“ – pomocí počítačové myši lze
na jednotlivé vstupy jednotlivých simulačních čipů přivést
konstantní nebo proměnné hodnoty vstupních veličin a na
výstupech pak snímat v numerickém či grafickém vyjádření
jednotlivé hodnoty výstupních proměnných.
Vnitřní struktura „čipu“ může být při jeho použití zcela
skryta, uživatel musí pouze vědět, jakou vstupní či výstupní
veličinu příslušný „pin“ reprezentuje. Pomocí myši může
uživatel přenést čip z příslušné knihovny do vytvářeného
modelu, kde příslušné vstupy a výstupy propojí. Chování
„čipu“ lze také snadno testovat, stačí k jeho vstupům přivést
příslušné definované průběhy hodnot vstupních veličin
a na jeho výstupy připojit příslušné virtuální osciloskopy či
displeje.
Každý čip může „uvnitř sebe“ obsahovat další propojené „simulační čipy“. Obsáhlý simulační čip tak může mít
poměrně složitou hierarchii. Simulační čipy je možno ukládat do knihoven a opětovně používat v různých modelech.
Tvorba simulačních modelů v biomedicínských vědách je
nezřídka týmová práce. Na jedné straně stojí systémový
analytik – expert na formalizaci a tvorbu simulačních
modelů (teoretický fyziolog, vytvářející formalizovaný popis
Československá fyziologie 56/2007 č. 2
fyziologického systému a testující jeho chování pomocí
simulačního modelu). Na druhé straně často stojí klasický
experimentální fyziolog či klinik, pro kterého je popis
fyziologického systému pomocí diferenciálních rovnic španělskou vesnicí, ale který dokáže snadno rozpoznat, nakolik
odpovídá chování počítačového simulačního modelu biologické realitě.
Podle našich zkušeností může problém dorozumění
mezi těmito dvěma skupinami specialistů zásadně usnadnit
důsledné využívání simulačních čipů při výstavbě simulačního modelu. Znamená to v prvé řadě věnovat důslednou
pozornost dokumentaci. Simulační čipy samy o sobě mohou
být i aktuální elektronickou dokumentací k vytvářeným
modelům. Nejenže v čelní masce simulačního čipu je stručný
popis všech vstupů a výstupů a „vnitřek“ simulačního čipu
Vývoj,
testování
a identifikace
simulačního
modelu
v prostředí
Simulink/Matlab
Přeloženi
identifikovaného
modelu
do C++
Automatizovaná tvorba
ovladače pro virtuální
měřící/řídící kartu
komunikující s aplikací
vytvořenou v prostředí
Control Web
Automatizovaná
tvorba Microsoft
. NET assembly
Vývoj
interaktivníchj
animací v prostředí
Adobe FLASH
Virtuálni
ovladač
(s modelem)
Interaktivní
flashové
animace
. NET
Interaktivní
assembly
flashové
( (s modelem)
animace
Psaní scénáře
výukové aplikace
Ideový návrh
interaktivních sekvencí
obrázků a aplikací
(tzv storyboard)
Vývoj
výukového
simulátoru
VÝUKOVÝ SIMULÁTOR
(platforma Control Web)
VÝUKOVÝ SIMULÁTOR
(platforma Microsoft .NET)
Testování ve výuce
Obr. 5: Vývojový cyklus tvorby výukových simulátorù. Na poèátku
je sestavení scénáøe výukového programu vèetnì návrhu sekvencí obrázkù (tzv. storyboard). Pak následuje tvorba simulaèních
modelù, které budeme využívat v simulátoru, resp. výukovém
programu využívajícím simulaèní hry. Pro tvorbu simulaèních
modelù využíváme vývojové prostøedí Matlab/Simulink od firmy Mathworks. Zároveò vytváøíme pohyblivé animaèní obrázky
v prostøedí Adobe Flash. Odladìný simulaèní model je pak pomocí námi vyvinutého softwarového nástroje automaticky implementován ve formì øadièe virtuální mìøící/øídicí karty do prostøedí Control Web od firmy Moravské pøístroje, v nìmž je vytvoøeno
uživatelské rozhraní. Øadiè virtuální karty, obsahující simulaèní
model, toto prostøedí „ošálí“ – výstupy modelu jsou v prostøedí
Control Web interpretovány jako mìøené signály z technologie
a vstupy modelu jsou interpretovány jako øídicí signály smìøující
do technologického zaøízení. Flashové animace jsou do vytváøené
výukové aplikace umístìny jako Active X komponenty a propojeny se vstupy/výstupy simulaèního modelu. Animace pak mohou
být øízeny simulaèním modelem a do simulaèního modelu mohou
zároveò pøicházet hodnoty vstupù generované interakcí uživatele s flashovou grafikou. Další platformou, kterou využíváme pøi
tvorbì výukových simulátorù je prostøedí Microsoft .NET. Do nìj
umisśujeme jak simulaèní model ve formì automaticky generovaného .NET assembly ze Simulinku, tak i flashovou interaktivní
animaci. Dùležité je otestování výukových simulátorù ve výuce,
které pøináší nové požadavky pro revizi, rozšíøení èi vytvoøení dalších výukových simulátorù.
Československá fyziologie 56/2007 č. 2
graficky reprezentuje síť použitých vztahů, na kliknutí myší
lze u každého softwarového simulačního čipu také otevřít
okno nápovědy s dalším podrobnějším popisem.
Simulační čipy tedy umožňují pečlivě vést aktuální
dokumentaci v elektronické podobě ke každému použitému
subsystému při zachování veškeré funkčnosti. Aby mohl jednotlivé komponenty využívat i ten, kdo danou část modelu
nevytvářel, je podrobná a zároveň přehledná dokumentace
nezbytná a čas strávený nad vypisováním spousty informací
do masek jednotlivých subsystémů reprezentujících simulační čipy se pak zaručeně vyplatí.
Výhodou za trochu té dřiny je porozumění – experimentální fyziolog nemusí rozumět vnitřnímu uspořádání
simulačního čipu, porozumí ale tomu, jaké chování má od
fyziologického subsystému, který čip reprezentuje, očekávat.
Fyziolog je nadto schopen porozumět i struktuře složené
z propojených simulačních čipů – ze struktury modelu
přímo vidí, které veličiny spolu vzájemně souvisejí (a ze
znalosti fyziologie i dovede odhadnout, co a na jaké úrovni
bylo zanedbáno).
OD ROVNIC MODELU
K TECHNOLOGICKÉMU KNOW HOW
V sedmdesátých a osmdesátých letech bylo časté, že autoři
počítačových modelů na vyžádání posílali zdrojové texty
počítačových programů, kterými byly tyto modely realizovány. Dnes se už zdrojové programy rozsáhlých simulačních
programů získávají mnohem obtížněji. Rozvoj výpočetní
techniky totiž umožnil praktické uplatnění simulačních
modelů například v lékařských počítačových trenažérech
a výukových programech využívajících simulační hry.
Biomedicínské modely mají své místo i v technologických
zařízeních – od kapesních počítačů pro sportovní potápěče
až po řídící jednotky v sofistikovaných lékařských přístrojích.
Ze simulačních modelů se tak stává i technologické „know
how“.
V naši laboratoři biokybernetiky se zabýváme tvorbou
simulačních modelů v rámci výzkumu dotovaného z veřejných zdrojů. Proto i struktura námi vytvářených modelů je
veřejná. V rámci výzkumných grantů a rozvojových projektů
jsme mimo jiné vytvořili knihovnu fyziologických modelů
v prostředí Simulink-Matlab ve formě „simulačních čipů“.
Tato knihovna byla vytvořena jako Open-Source produkt,
byla periodicky aktualizována a je k dispozici zájemcům
na našich internetových stránkách (www.physiome.cz/simchips).
TVORBA SIMULÁTORŮ PRO SIMULAČNÍ HRY
Simulační nástroje firmy Mathworks jsou určeny pro specialisty. Pro běžného uživatele, který si chce se simulačním
modelem jen „pohrát“, se příliš nehodí. I když v prostředí
těchto nástrojů je možné naprogramovat poměrně příjemné
uživatelské rozhraní k ovládání vytvořeného modelu, pro
účely uplatnění simulačního modelu ve výuce medicíny je
75
toto rozhraní až příliš komplikované a navíc vyžaduje zakoupení dalších (pekelně drahých) licencí.
Chceme-li vytvořit výukový simulátor, musíme ho zvlášť
naprogramovat v některém z programovacích jazyků, včetně
uživatelského rozhraní simulátoru. Jedním z nezastupitelných komponent výukového simulátoru je i část programu,
která realizuje simulační model. Výsledkem vývoje simulačního modelu (který provádíme s využitím veškerého pohodlí
nástroje Simulink/Matlab) je struktura matematických vztahů – jinak řečeno, soustava rovnic modelu, jejichž řešením
dostaneme takové chování modelu, které se (v zvoleném
rozsahu a v dané přesnosti) blíží chování fyziologického originálu. Známe-li rovnice, pak už zbývá „hlavoruční dřinou“
přetvořit jejich strukturu do podoby počítačového programu
ve zvoleném jazyce.
Pro vytvoření simulátorů využíváme platformu Microsoft
.NET a programovací prostředí Visual Studio .NET.
Aby nebylo nutné ve Visual Studiu .NET „ručně“ programovat již odladěný simulační model, vyvinuli jsme speciální
softwarový nástroj (Kofránek et al., 2005; Stodulka et al., 2006),
který automaticky převede vytvořený model do cílové platformy – tento nástroj automaticky ze Simulinku vygeneruje simulační model ve formě Microsoft .NET assembly (viz obr. 5).
Další platformou, v níž běží simulační hry, je prostředí
Control-Web od firmy Moravian Instruments. Control-Web
je vývojový systém původně určený pro snadný vizuální
návrh řídicích a měřících aplikací v průmyslu s využitím PC,
vybavených speciální měřící/řídicí kartou. My tento nástroj
využíváme jako prostředí pro běh simulačních modelů s tím,
že vygenerovaný řadič virtuální řídicí karty v PC se pro
systém Control-Web tváří jako propojení s průmyslovým
rozhraním – ve skutečnosti však obsahuje simulační model.
Control Web je tak „ošálen“ – pokud systém vysílá nějaké
řídicí signály do průmyslového zařízení, ve skutečnosti
posílá vstupní hodnoty do modelu. Pokud program vytvořený v prostředí Control-Web čte nějaké naměřené signály
z průmyslového zařízení, ve skutečnosti čte výstupní signály
z modelu (obr. 5).
Tímto způsobem se nám podařilo využít veškerou vizualizační sílu tohoto nástroje pro multimediální prezentaci
simulačních modelů ve výuce.
POHYBLIVÉ ANIMACE JAKO LOUTKY
NA NITÍCH SIMULAČNÍCH MODELŮ
Pro vytváření uživatelského rozhraní výukového simulátoru je velmi vhodné simulátor navenek reprezentovat jako
pohyblivý obrázek. Proto simulační model propojujeme
s multimediální animací vytvořenou pomocí Adobe Flash
(Kofránek et al., 2004). Animace pak mohou být řízeny
výstupy implementovaného simulačního modelu a graficky
reprezentovat význam číselných hodnot – např. schematický
obrázek cévy se může roztahovat nebo komprimovat, plicní
sklípek může hlouběji či mělčeji „dýchat“, ručička měřícího
přístroje se může pohybovat a průběžně zobrazovat hodnotu
nějaké výstupní proměnné modelu čtené z běžícího simulačního modelu na pozadí.
76
Na druhé straně můžeme přes vizuální prvky vytvořené ve
Flashi (nejrůznější tlačítka, knoflíky, táhla apod.) do simulačního modelu zadávat nejrůznější vstupy.
V případě složitější architektury může být logika propojení flashové animace a simulačního modelu poměrně složitá,
proto je vhodnější mezi vrstvu vizuálních elementů a vrstvu
simulačního modelu vložit řídicí vrstvu, která na jednom
místě řeší veškerou logiku komunikace uživatelského rozhraní s modelem a kde je ukládán i příslušný kontext. V literatuře se hovoří o tzv. MVC architektuře výstavby simulátorů
(Model – View – Controller).
Toto uspořádání je nezbytné zejména při složitějších
modelech a simulátorech, jejichž uživatelské zobrazení je
reprezentováno mnoha virtuálními přístroji na více propojených obrazovkách. Výhody tohoto uspořádání zvláště
vyniknou při modifikacích jak modelu, tak i uživatelského
rozhraní (obr. 6).
Při návrhu řídicí vrstvy, propojující vrstvu simulačního
modelu s uživatelským rozhraním, se nám velmi osvědčilo využít propojené stavové automaty (jejichž pomocí je
možno zapamatovat příslušný kontext modelu a kontext
uživatelského rozhraní). Vytvořili jsme proto speciální softwarový nástroj, pomocí kterého můžeme propojené stavové
automaty vizuálně navrhovat, interaktivně testovat jejich
chování a automaticky generovat zdrojový kód programu
pro prostředí Microsoft .NET (Stodulka et al., 2006). Tento
Vrstva
uživatelského
rozhraní
Řídicí
vrstva
Vrstva
modelu
Stavový
automat pro
určení kontextu
výstupy
vstupy
Simulační model
Obr. 6: Tzv. MVC architektura pøi tvorbì simulátorù. Mezi vrstvu
modelu a vrstvu uživatelského rozhraní je vhodné vložit øídicí
vrstvu, kam jsou smìrovány veškeré zprávy a události vznikající ve virtuálních pøístrojích uživatelského rozhraní a kam je
zároveò smìrována veškerá komunikace s modelem. V této
vrstvì se øeší veškerý kontext zobrazovaných dat a pøíslušné
požadavky na komunikaci s modelem. Veškerá logika zobrazování a komunikace je pak soustøedìna do jednoho místa, což
podstatnì ušetøí èas pøi modifikacích uživatelského rozhraní
nebo zmìnách modelu.
Československá fyziologie 56/2007 č. 2
nástroj umožňuje zefektivnit programování propojek simulačního modelu s vizuálními objekty uživatelského rozhraní
ve výukovém simulátoru.
SIMULAČNÍ HRY NA WEBU
Další technologický problém, který bylo při tvorbě výukových simulátorů nutno vyřešit, bylo proto nalezení způsobu,
jak včlenit simulátory jako součásti internetových e-learningových aplikací. Při jeho řešení je možno postupovat několika způsoby. Jedním z nich je spouštění modelu na serveru
a na klientský počítač posílat pouze výstupy z modelu. Znamená to ale pro každého připojeného uživatele na serveru
individuálně spouštět jednu instanci simulačního modelu.
Dalším problémem, zvláště u vzdálenějších a pomalejších
připojení, je nezanedbatelné časové zpoždění mezi výstupem
simulačního modelu na serveru a vykreslením výsledku na
počítači klienta. Proto jsme se rozhodli jít spíše cestou spouštění simulačních modelů na počítači klienta.
U jednodušších modelů je možno využít interpetovaný
ActionScript ve Flashi, v němž je naprogramován simulační
model. Složitější simulační modely už ale vyžadují kompilovaný simulátor.
Naše řešení (Stodulka et al., 2006) je zobrazeno na obr. 7.
Uživatel si nainstaluje platformu .NET (pokud ji již nemá).
Dále si na svém počítači nainstaluje speciální klientský program – „dispečer simulačních modelů“. V případě potřeby se
dispečer rozšíří i o runtime pro prostředí ControlWeb, které
zajistí možnost spouštění modelů v tomto prostředí vytvořených. Webová e-learningová aplikace umožní stáhnout
potřebné soubory simulačního modelu a dispečer simulačních modelů je spustí. Dispečer tak funguje obdobně jako
prohlížeč obrázků, jen s tím rozdílem, že místo zobrazení
obrázků spustí simulační program.
INTERNET
ASP .NET
Obr.8: Ilustrativní ukázka doprovodného simulátoru ve výukovém
programu patofyziologie cirkulace.
ZABALENÍ SIMULAČNÍCH HER
DO MULTIMEDIÁLNÍHO VÝKLADU
Jedním z projektů, který vytváříme v naší laboratoři,
je Atlas fyziologie a patofyziologie (viz www.physiome.
cz/atlas). Atlas (Andrlík et al., 2006) je průběžně vytvářená
internetová multimediální výuková pomůcka z oblasti normální a patologické fyziologie, která s využitím simulačních
modelů pomáhá vysvětlit funkci a poruchy jednotlivých
fyziologických systémů.
Simulační hry (obr. 8) jsou součástí e-learningových
multimediálních výukových lekcí, jejichž podkladem je
scénář vytvořený zkušeným pedagogem. Pedagog navrhuje
vysvětlující text a s textem propojené doprovodné obrázky a animace. Animace jsou vytvářeny v prostředí Adobe
Flash v úzké spolupráci pedagoga s výtvarníkem. Text je poté
namluven a synchronizován se spouštěním jednotlivých
animací a s odkazy na simulační hry. Jednotlivé komponenty jsou kompletovány do výukových lekcí. Pro vytváření
a kompletaci multimediálních výukových lekcí využíváme
softwarové prostředí serveru Adobe Connect (dříve Macromedia Breeze).
Adobe Connect
SERVER
Runtime pro běh
simulátorů
vytvořených
v prostředí
Control Web
Simulační
model
stažený
ze serveru
Dispečer
simulačních
modelů
Webová
e-learningová
prezentace
KLIENT
Platforma .NET
Obr. 7: Využití simulaèních modelù v internetových e-learingových kurzech. Dispeèer simulaèních modelù funguje obdobnì
jako prohlížeè obrázkù, jen s tím rozdílem, že místo zobrazení
obrázkù spustí simulaèní program.
Československá fyziologie 56/2007 č. 2
OD ENTUZIAZMU K TECHNOLOGII
A MULTIDISCIPLINÁRNÍ SPOLUPRÁCI
Navzdory tomu, že se využití počítačů ve výuce stalo tématem řady konferencí, odborných i popularizačních článků,
přesto, že hardwarové možnosti i softwarové nástroje dnes již
dospěly do úrovně umožňující vytvářet náročná interaktivní
multimedia, k výraznému rozšíření multimediálních výukových programů ve výuce medicíny zatím nedošlo.
Příčin je několik:
• Za prvé – ukazuje se, že tvorba výukových programů je
podstatně náročnější na čas, lidské i materiální zdroje,
než je obvykle plánováno.
• Za druhé – tvorba kvalitních medicínských výukových
programů vyžaduje týmovou multidisciplinární spolu77
práci zkušených pedagogů, lékařů, matematiků, fyziků,
programátorů i výtvarníků.
• Konečně, pro kreativní propojení různých profesí podílejících se na tvorbě výukové multimediální aplikace,
musí být k dispozici vhodně zvolené vývojové nástroje
(jejichž ovládnutí vyžaduje určité úsilí a čas).
• Nároky stoupají, pokud na pozadí výukového programu
má běžet simulační program umožňující interaktivní simulační hry – ve vývojovém týmu pak musí být
i odborníci, kteří jsou schopni navrhnout, formalizovat
a odladit příslušné modely (lékaři, matematici, fyzici
a informatici).
Domníváme se proto, že nejdůležitějším výsledkem, kterého se nám při vytváření internetového Atlasu fyziologie
a patofyziologie zatím podařilo dosáhnout, je vybudování
multidisciplinárního týmu lékařů, matematiků, programátorů i výtvarníků, který je schopen tyto bariéry překonat.
Projekt Atlasu fyziologie a patofyziologie je otevřený.
Veškeré výukové texty, interaktivní animace a simulační
modely včetně jejich zdrojových kódů jsou k dispozici všem
zájemcům. Jako open-source jsou i veškeré námi vytvořené
podpůrné softwarové nástroje umožňující vygenerování
jádra simulátorů z prostředí Matlab/Simulink a distribuci
simulátorů prostřednictvím internetu. Náš vývojový tým
uvítá spolupráci s dalšími pracovišti na dalším rozšiřování
Atlasu a vytvoření jeho jazykových mutací.
Poděkování:
Práce na vývoji lékařských simulátorů je podporována
grantem MŠMT č. 2 C06031 a společností BAJT servis s. r. o.
LITERATURA
1.
Andrlík M, Kofránek J, Matoušek S, Stodulka P, Wünsch Z, Kripner
6.
T, Hlaváček J. Internetový atlas multimediálních modelů pro vybrané
kapitoly normální a patologické fyziologie člověka. Ukázka předběž-
2.
7.
Maršálek P, Smutek D, Svačina Š. The design and development of inte-
Praha, 2006; 7–12.
ractive multimedia in educational software with simulation games.
Amosov NM, Palec BL, Agapov BT, Jermakova II, Ljabach EG, Packi-
Proceedings of the Seventh IASTED International Conference on
na SA, Solovjev VP. Teoretičeskoje issledovanie fiziologičeskich sistěm.
Computer Graphics and Imaging, Kauai, Hawai, USA 2004; 164–170.
3.
Guyton AC, Coleman TA and Grander HJ. Circulation: Overall Regu-
4.
Guyton AC, Jones CE and Coleman TA. Circulatory Physiology: Car-
ISBN.
8.
lation. Ann. Rev. Physiol., 41,1972, s. 13–41.
diac Output and Its Regulation. Philadelphia: WB Saunders Company,
78
Kofránek J, Maruna P, Andrlík M, Stodulka P, Kripner T, Wünsch Z,
ných výsledků. Medsoft 2006, Zeithamlová M., Agentura Action-M,
Naukova Dumka, Kijev, 1977.
5.
Ikeda N, Marumo F and Shirsataka M. A Model of Overall Regulation
of Body Fluids. Ann. Biomed. Eng. 7, 1979, s. 135–166.
Kofránek J, Andrlík M, Kripner T, Stodulka P. From Art to Industry:
Development of Biomedical Simulators. The IPSI BgD Transactions on
Advanced Research 2, 2005, s. 62–67.
9.
Stodulka P, Privitzer P, Kofránek J, Mašek J. Nové postupy při tvorbě
1973.
simulátorů – inteligentní propojení Matlabu a Simulinku s platformou
Guyton AC. The suprising kidney-fluid mechanism for pressure con-
.NET a tvorba stavových automatů řídících výlsednou aplikaci. Med-
trol – its infi nite gain! Hypertension, 16, 1990, s. 725–730.
soft 2006, Zeithamlová M., Agentura Action-M, Praha 2006, 171–176.
Československá fyziologie 56/2007 č. 2
MEDSOFT 2007, sborník příspěvků,
1. Jiří Kofránek, Stanislav Matoušek, Michal Andrlík: Škola (simulační)
hrou - využití simulačních modelů acidobazické rovnováhy v elearningové aplikaci. In: Zeithamlová, Milena. 2007. Praha, Czech
Republic, Agentura Acion M. MEDSOFT 2007, ISBN 978-80-8674200-7 str.83-92, 2007.
2. Jiří Kofránek, Martin Tribula: Control web pro multimediální
interaktivní ledvinu. In:Zeithamlová, Milena, 2007. Praha, Czech
Republic, Agentura Acion M. M EDSOFT 2007, ISBN 978-80-8674200-7 str. 93-100, 2007.
3. Zdeněk Wünsch, Marcel Matúš, Tomáš Kripner, Jiří Kofránek: Modely
regulace ve fyziologickém praktiku. In: Zeithamlová, Milena. 2007.
Praha, Czech Republic, Agentura Acion M. MEDSOFT 2007, ISBN 97880-867-4200-7, str.225-230, 2007.
Škola (simulační) hrou – využití simulačních modelů acidobazické rovnováhy v e-learningových aplikacích
83
ŠKOLA (SIMULAČNÍ) HROU – VYUŽITÍ SIMULAČNÍCH
MODELŮ ACIDOBAZICKÉ ROVNOVÁHY V
E-LEARNIGNOVÉ APLIKACI
Jiří Kofránek, Stanislav Matoušek, Michal Andrlík
Anotace
Simulační hry jsou výhodným pedagogickým nástrojem umožňujícím
názorně vysvětlit komplexní vztahy ve fyziologických regulačních
systémech a projevy regulačních poruch v patogeneze nejrůznějších
onemocnění. Jedním z principů, který pomáhá pochopit význam
jednotlivých regulačních smyček a jejich uplatnění při rozvoji
nejrůznějších onemocnění možnost v modelu rozpojit regulační smyčky
a sledovat jednotlivé původně propojené subsytémy odděleně (tzv.
princip ceteris paribus). Tuto možnost hojně využíváme v
multimediáloním e-learningovém programu vysvětlujícím poruchy
acidobazické rovnováhy. Teoretickým podkladem tohoto programu byly
modely acidobazické rovnováhy o kterých jsme referovali na loňském
Medsoftu. Simulační model byl odladěn a verifikován ve vývojovém
prostředí Matlab/Simulink. Pro tvorbu multimediálních komponent jsme
využili prostředí Adobe Flash, a pro tvorbu vlastní výukovou aplikace
využíváme prostředí Adobe Connect. Aplikace bude součástí
vytvářeného Internetového Atlasu fyziologických modelů.
Klíčová slova
Acidobazická rovnováha, e-learning, krevní plyny, simulační model,
výukové simulátory
1. Úvod
V interaktivních výukových programech využívajících simulační hry
dnes nachází své uplatnění staré Komenského krédo – "škola hrou".
Spojení multimediálního prostředí, sloužícího jako zvukové a vizuální
uživatelské rozhraní, se simulačními modely totiž umožňuje názorně si
"osahat" vykládaný problém ve virtuální realitě. Simulační hrou je možné
bez rizika otestovat chování simulovaného objektu – např. zkusit
přistávat virtuálním letadlem, nebo, v případě lékařských simulátorů léčit
virtuálního pacienta, nebo si otestovat chování jednotlivých částí
J. Kofránek, S. Matoušek, M. Andrlík
84
fyziologických subsystémů. Simulační hry umožňují názorně vysvětlit
komplexní vztahy ve fyziologických regulačních systémech a kauzální
řetězce
v
patogeneze
nejrůznějších
onemocnění.
Spojení
multimediálního interaktivního prostředí se simulačními hrami je
pedagogicky velmi účinným nástrojem výkladu, usnadňujícím studentům
pochopení složité dynamiky
patofyziologických stavů. Jedním z
patologických stavů, jejichž správné pochopení činí studentům medicíny
(ale i některým lékařům) obtíže je problematika poruch acidobazické
rovnováhy vnitřního prostředí. Tato problematika je důležitá pro řešení
řady závažných stavů v akutní medicíně, její správná interpretace je však
provázena řadou problémů. A právě zde může hra se simulačním
modelem významně přispět k pochopení kauzálních řetězců, které vedou
k acidobazickýcm poruchám.
2. Dánská škola acidobazické rovnováhy a "matematické
čarodejnictví" některých zastánců "moderního přístupu" k
acidobazické rovnováze
Acidobazická rovnováha je výsledkem dvou regulovaných bilancí –
bilancí mezi tvorbou a výdejem silných kyselin (ledvinami) a bilancí mezi
tvorbou a výdejem oxidu uhličitého (respirací). Tyto bilance jsou
propojeny prostřednictvím pufračních systémů – bikarbonátového
pufračního systému a nebikarbonátového pufračního systému (který je
tvořen pufračními systémy plazmatických bílkovin, hemoglobinu a
fosfátů). Označíme-li souhrnnou koncentraci nebikarbonátových bazí
jako [Buf-] – ve skutečnosti se jedná o pufrační baze plazmatických
bílkovin, hemoglobinu a fosfátů – pak souhrnná koncentrace bikarbonátů
a nebikarbonátových pufračních bazí tvoří tzv. hodnotu BufferBase [6]:
BB=[HCO3-] + [Buf-]
Velkou část hodnoty BB ovlivňuje koncentrace hemoglobinu – aby bylo
možno srovnávat hodnoty u pacientů, kteří mají různou koncentraci
hemoglobinu, v klinice se počítá z rozdílem skutečné hodnoty BB a její
normální hodnoty (v krvi závislé na koncentraci hemoglobinu) – tento
rozdíl je označován jako tzv hodnota výchylky nárazníkových bazí, neboli
Base Excess (BE):
BE=BB-NBB
Při metabolických poruchách acidobazické rovnováhy (tj. poruchách
bilance mezi tvorbou a vylučováním silných kyselin) dochází k tomu, že
Škola (simulační) hrou – využití simulačních modelů acidobazické rovnováhy v e-learningových aplikacích
85
nadbytek nebo nedostatek silných kyselin je tlumen pufračními systémy,
což vede ke změnám hodnot BB resp. BE.
Respirační systém na to reaguje změnou rychlosti vylučování CO2
což vede ke změnám hladiny CO2 v arteriální krvi a (přes pufrační
systémy) k následným kompenzačním změnám v koncentraci
vodíkových iontů. Pro klinické vyhodnocování poruch acidobazické
rovnováhy byly dánskými autory [5] experimentálně sestaveny
nomogramy, které vyjadřují závislost koncentrace vodíkových iontů [H+],
resp. pH na hodnotě pCO2 a koncentraci hemoglobinu (Hb):
[H+]=Funkce (pCO2, BE, Hb)
Tyto dnes v klinice široce využívané nomogramy byly založeny na
předpokladu normální koncentrace plazmatických bílkovin (které ovlivňují
hodnotu BB). To způsobuje problémy při interpretaci výsledků vyšetření
acidobazické rovnováhy u akutně nemocných pacientů s poruchou
koncentrace plazmatických bílkovin.
Tzv. "moderní přístup" Stewarta a jeho následovníků [2,7,8] k
vysvětlení poruch acidobazické rovnováhy vychází z matematických
vztahů, počítajících koncentraci vodíkových iontů [H] z parciálního tlaku
CO2 v plazmě (pCO2), celkové koncentrace slabých (neúplně
disociovaných) kyselin a jejich bazí ([Buftot]=[Buf-]+[HBuf]) a z rozdílu
mezi koncentrací plně disociovaných kationtů a plně disociovaných
aniontů – tzv. SID (strong ion difference):
[H+]=Funkce (pCO2, SID, Buftot)
K tomuto vztahu (jehož přesný tvar jsme uvedli např. v [x]) ovšem
řada Stewartových následovníků přistupovala jako k "orákulu" – z věcně
správných matematických vztahů se vyvozují nesprávné kauzální
příčiny. Z výše uvedené rovnice např. vyplývá, že při hypalbuminémii
(charakterizované snížením [BufTOT]) je tendence k alkalémii, při
rozředění ECT (a následným snížením SID) dochází k acidémii, při
zakoncentrování ECT naopak k alkalémii (a vysvětlují se tak tzv. diluční
acidózy při podání nadměrného množství fyziologického roztoku, nebo
naopak kontrakční alkalózy, pozorované při některých hypovolemických
stavech). Z toho pak někteří autoři vyvozují, že jednou z prvotních
kauzálních příčin acidobazických poruch jsou změny v hodnotách SID.
Tak např. Sirker a spol. [7[ tvrdí že "pohyb vodíkových iontů přes
membrány (skrze vodíkové kanálky) nemá vliv na jejich aktuální
koncentraci. Přímé odstranění H+ z jednoho kompartmentu nezmění
hodnotu žádné nezávislé proměnné a tudíž i hodnotu koncentrace [H+]…
J. Kofránek, S. Matoušek, M. Andrlík
86
rovnovážná disociace vody vyrovnává jakékoli fluktuace v koncentraci
[H+] a slouží nevyčerpatelným zdrojem nebo výlevkou pro ionty H+".
Obr 1 Hodnota SID v plazmě je v podstatě totožná s hodnotou BB, koncentraci
vodíkových iontů je možno v modelu vypočítat jak z hodnot SID podle Stewarta,
nebo z hodnot BB a koncentrace plazmatických albuminů
3. Bilanční přístup k acidobazické rovnováze
Pro pochopení kauzálních řetězců při poruchách acidobazické
rovnováhy je důležité si uvědomit, že hodnoty SID a BB jsou v podstatě
totožné (obr. 1) a koncentraci vodíkových iontů lze vypočítat jak z hodnot
SID, tak i z hodnoty BB. Proto změny SID jsou v podstatě totožné se
změnami hodnot BB (projevující se změnou hodnot BE). Protože přesun
iontů mezi kompartmenty tělních tekutin je vždy elektroneutrální (s
výjimkou membránových procesů na vzrušivých membránách svalu a
nervové tkáně), jsou přesuny vodíkových iontů či bikarbonátů vždy
doprovázeny přesuny komplementárních iontů.
Tak například při metabolické tvorbě silných kyselin přichází z
buněk do extracelulární tekutiny příslušné množství vodíkových iontů
provázené ekvimolárním množstvím aniontů silných kyselin. Obdobně,
přísuny či ztráty bikarbonátů jsou vždy provázeny ekvimolárními přesuny
doprovodných iontů (např. ztráty bikarbonátů gastrointestinálním traktem
jsou provázeny retencí chloridů v extracelulární tekutině, což vede k
hyperchloremické metabolické acidóze). Pufrační reakce nemění
elektroneutralitu – mohou ale měnit hodnotu SID a BB. Přesunuté
vodíkové ionty nebo bikarbonáty okamžitě reagují s pufračními systémy
a v numericky stejném smyslu mění jak hodnotu BB, tak i hodnotu SID.
Změny hladin iontů charakterizované změnou SID a změny veličin
charakterizujících pufrační kapacitu (změnou BB, resp. BE) jsou proto
duální projevem jednoho a téhož stavu.
Škola (simulační) hrou – využití simulačních modelů acidobazické rovnováhy v e-learningových aplikacích
87
Obr. 2 Acidobazická rovnováha je výslednicí dvou bilancí propojených přes pufrační
systém – bilancí mezi tvorbou a vylučováním oxidu uhličitého a bilancí mezi tvorbou
a vylučováním silných kyselin. Purační reakce sami o sobě nemění elektroneutralitu.
Přesun iontů mezi kompartmenty tělních tekutin je vždy elektroneutrální, proto jsou
přesuny bikarbonátů a vodíkových iontů vždy provázeny přesunem
komplementárních iontů.
Náš bilanční přístup k formalizaci acidobazické rovnováhy
sjednocuje klasické pojetí tzv. "Dánské školy" s kvantitativním pojetím
Stewarta a jeho následovníků - podrobněji jsme o tom referovali na
posledních dvou konferencích MEDSOFT [3,4].
V našem pojetí acidobazickou rovnováhu ovlivňuje dvojí
(regulovaná) bilance: bilance tvorby a výdeje silných kyselin a bilance
tvorby a výdeje oxidu uhličitého (obr 2). Tyto bilance jsou propojeny
prostřednictvím pufračních systémů. Kvantitativně tyto procesy popisuje
simulační model, který umožňuje kauzálně vysvětlit souvislosti poruch
acidobazické, objemové a iontové rovnováhy. Tento model je v pozadí
naší výukové aplikace.
4. Pohyblivé animace jako loutky na nitích výukového
simulačního modelu
Motorem simulačních her jsou simulační modely, které vytváříme
ve vývojovém prostředí Matlab/Simulink od firmy Mathworks. Prostředí
Matlab/Simulink je efektivní nástroj pro návrh, konstrukci a identifikaci
J. Kofránek, S. Matoušek, M. Andrlík
88
simulačních modelů – není to ale prostředí, ve kterém by se realizovaly
vlastní výukové simulátory.
Pro vytváření uživatelského rozhraní výukového simulátoru je velmi
vhodné vstupy a výstupy simulačního modelu vizualizovat jako pohyblivé
interaktivní obrázky. Proto simulační model propojujeme s multimediální
animací vytvořenou pomocí Adobe Flash. Animace pak mohou být
řízeny výstupy implementovaného simulačního modelu a graficky
reprezentovat význam číselných hodnot - např. hladina jednotlivé
komponenty pufru může klesat, podle pH může tekutina měnit svoji
barvu, ručička měřícího přístroje se může pohybovat a průběžně
zobrazovat hodnotu nějaké výstupní proměnné modelu čtené z běžícího
simulačního modelu na pozadí apod.
Na druhé straně můžeme přes vizuální prvky vytvořené ve Flashi
(nejrůznější tlačítka, knoflíky, táhla, ale i třeba pomocí virtuálního
kapátka) do simulačního modelu zadávat nejrůznější vstupy.
Jednou z možností, jak implementovat v Simulinku vytvořené a
odladěné simulační modely do výukových simulátorů, je jejich "ruční"
přeprogramování v jazyku Action Script. Action Script je řídícím jazykem
interaktivních multimediálních komponent vytvořených v Adobe Flash a
proto je pak snadné naprogramovat propojení modelu s příslušnými
multimediálními komponenty. Tak jsme ve výukové aplikaci např. vytvořili
např. některé komponenty pufračního systému plazmy.
Je-li ale model složitější, je jeho "ruční" přeprogramování ze
Simulinku do Action Scriptu velmi pracné. V naší laboratoři ale máme
možnost pomocí speciálně námi vytvořeného konverzního nástroje
automaticky přímo ze Simulinku vygenerovat .NET assembly [9].
Simulační hru pak vytváříme v C#. Flashové animace jsou do vytvářené
výukové aplikace umístěny jako Active X komponenty a propojeny
se vstupy/výstupy simulačního modelu. Animace pak mohou být řízeny
simulačním modelem a do simulačního modelu mohou zároveň přicházet
hodnoty vstupů generované interakcí uživatele s flashovou grafikou.
Další možností implementace simulačního modelu do výukového
simulátoru je využití vývojového prostředí Control Web, původně
určeného k navrhování průmyslových řídících a vizualizačních aplikací (v
tomto prostředí máme např. naprogramován model ledvinných regulací,
o kterém referujeme v jiném článku v tomto sborníku).
5. Závěr
Simulačních hry jsou velmi efektivním nástrojem, který umožňuje
vysvětlit řadu složitých patofyziologických jevů. Ukazuje se, že jedním z
efektivních prostředků využití simulačních modelů je dočasné rozpojení
regulačních smyček a zkoumání chování odpojeného subsystému
Škola (simulační) hrou – využití simulačních modelů acidobazické rovnováhy v e-learningových aplikacích
A
B
C
D
89
Obr 3 Simulační hra s pufračním systémem plazmy, určená k vysvětlení
patogeneze vzniku diluční acidózy. A – pufrační systém plazmy byl odpojen z
regulačních smyček a jeho chování může být sledováno samostatně. B – táhlem
iniciujeme diluci, která rozředí všechny látky, včetně koncentrace vodíkových iontů
a koncentrace CO2. C – stiskem tlačítka rozběhneme pufrační ekvilibraci, která
zvýší koncentraci vodíkových iontů – pH se normalizuje. D – stiskem tlačítka
zapojíme systém do respirační regulace, která udržuje pCO2 na stálé hladině, dané
úrovní alveolární ventilace, koncentrace se zvýší CO2 a následně se zvýší
koncentrace vodíkových iontů – hodnota pH se přesune na kyselou stranu.
samostatně. Jako příklad uvádíme vysvětlení patogenezy diluční acidózy
pomocí simulační hry s pufračním systémem plazmy (obr 3 A-D).
Simulační výukové modely jsou propojeny s výkladovou částí
vytvářenou v prostředí Adobe Connect (dříve Macromedia Breeze).
Výuková aplikace, vysvětlující patofyziologii acidobazické rovnováhy, je
součástí vytvářeného internetového atlasu fyziologie a patofyziologie [1],
který je dostupný na internetové adrese www.physiome.cz.
J. Kofránek, S. Matoušek, M. Andrlík
90
6. Literatura
[1] Andrlík M., Kofránek J., Matoušek S. Stodulka P., Wünsch Z., Kripner
T., Hlaváček J.: Internetový atlas multimediálních modelů pro vybrané
kapitoly normální a patologické fyziologie člověka. Ukázka
předběžných výsledků. Sborník příspěvků MEDSOFT 2006. ISBN 8086742-12-1, str. 7-12
[2] Fencl J., Jabor A., Kazda A., Figge, J.: Diagnosis of metabolic acidbase disturbances in critically ill patients. Am. J. Respir. Crit. Care
162:2246-2251, 2000.
[3] Kofránek J, Andrlík M., Bruthans J.: Modelování přenosu krevních
plynů a acidobazické rovnováhy krve, pp.71-80, Sborník příspěvků
MEDSOFT 2005, ISBN 80-86742-07-5, str. 71-80,
[4] Kofránek J., Andrlík M., Matoušek S.:Bilanční přístup k modelování
acidobazické rovnováhy a přenosu krevních plynů. Sborník příspěvků
MEDSOFT 2006, ISBN 80-86742-12-1, str. 75-81,
[5] Siggaard-Andersen, O.: The pH, log pCO2 blood acid-base nomogram
revised. Scand. J. clin. Lab. Invest., vol. 14, 1962, pp. 598-604.
[6] Singer R.B. and Hastings A.B. An umproved clinical method for the
estimation of disturbances of the acid-base balance of human blood.
Medicine (Baltimore) 27, 223-242. 1948.
[7] Sirker, A. A., Rhodes, A., and Grounds, R. M.. Acid-base physiology:
the 'traditional' and 'modern' approaches. Anesthesia 57, 348-356.
2001.
[8] Stewart P.A. Modern quantitative acid-base chemistry. Can. J.
Physiol. Pharmacol. 61, 1444-1461. 1983.
[9] Stodulka P., Privitzer P., Kofránek J., Mašek J.: Nové postupy v
tvorbě simulátorů – inteligentní propojení Matlabu a Simulinku s
platformnou .NET a tvorba stavových automatů řídících výslednou
aplikaci. MEDSOFT 2006. ISBN 80-86742-12-1, str. 171-176,
Zeithamlová M., Agentura Action-M, Praha 2006.
Poděkování
Práce na vývoji lékařských simulátorů je podporována grantem MŠMT
č.2C06031 a společností BAJT servis s.r.o.
Jiří Kofránek,
Laboratoř biokybernetiky,
Ústav patologické fyziologie 1.LF UK,
128 53 Praha 2
tel: 777-68-68-68
fax:26731 0503
e-mail: kofranek@cesnet.cz
Control Web pro multimediální interaktivní ledvinu
93
CONTROL WEB PRO MULTIMEDIÁLNÍ INTERAKTIVNÍ
LEDVINU
Jiří Kofránek, Martin Tribula
Anotace
Vytvořili jsme výukový model základní funkce ledvin, který byl vyvinut v
prostředí Matlab/Simulink. Vytvořili jsme speciální softwarový nástroj,
který ze simulačního modelu z prostředí Matlab/Simulink vygeneruje
řadič virtuální řídící karty s níž je schopen komunikovat systém Control
Web, původně určený pro vývoj průmyslových řídících a vizualizačních
aplikací. Control Web je tak "ošálen" – prostřednictvím řadiče virtuální
řídící karty "se domnívá", že čte data z průmyslového zařízení ale ve
skutečnosti čte výstupy simulačního modelu. Obdobně, Control Web
přes tento řadič posílá signály do průmyslového zařízení - ve skutečnosti
posílá vstupy do simulačního modelu. To nám dalo možnost jednoduše a
rychle vytvořit uživatelské rozhraní výukového modelu v prostředí
Control Web. Vlastní výuková aplikace vyžaduje pro svůj běh speciálně
upravené volně šiřitelné runtime prostředí systému Control Web, které
lze, spolu s vlastním modelem, nainstalovat z Internetu.
Klíčová slova
E-learning, krevní plyny, ledviny, simulační model, výukové simulátory
1. Úvod
Ledviny jsou orgánem, který reguluje vylučování celé škály látek a
tím i jejich hladiny ve vnitřním prostředí. Ledviny jsou velmi složitě
regulovaný dynamický systém. Ovlivňují objem cirkulující krve a tím i
hemodynamické parametry. Na druhé straně změny cirkulace mají svou
odezvu v činnosti ledvin. Pochopení funkce jednotlivých částí ledvin je
důležité např. pro posouzení poruch jejich funkce a vedlejších projevů
diuretické léčby. Simulační hry jsou jedním z účinných prostředků,
usnadňujících pochopení dynamiky složitých regulačních vztahů v
ledvinách. Tvorba e-learningového programu, využívajících simulační hry
s virtuálními (zdravými i nemocnými) ledvinami byla i naším úkolem.
2. Na začátku je matematický model
Simulační modely ledvin jsou jedním z nástrojů interpretace
experimentálních dat. V odborné literatuře byla popsána celá řada
J. Kofránek, M. Tribula
94
modelů ledvin, od jednoduchých až po velmi složité modely, explicitně
zahrnující i model miliónu nefronů, řešených na superpočítači. Pro účely
výukových aplikací jsme zvolili spíše modely se soustředěnými
parametry, jejichž účelem je jejich využití pro vysvětlení obtížněji
pochopitelných partií fyziologie a patofyziologie ledvin. Konkrétně se
jedná o modelování funkce autoregulace glomerulární filtrace a průtoku
krve ledvinami. Modelování tubuloglomerulární vazby a její adaptace na
dlouhodobé podněty. Modelování funkce macula densa a smyčky reninangiotenzin-aldosteron. Modelování funkce protiproudového systému a
Henleho kličky a vlivu hemodynamiky na funkci protiproudového
systému. Modelování vlivu antidiuretického hormonu. Modelování
regulace vylučování draslíku a sodíku. Modelování renální regulace
acidobazické rovnováhy.
Modely vytváříme v prostředí Matlab-Simulink. Jedná se v
podstatě o několik modelů /na různé úrovni složitosti/, které mohou být
využívány v různých simulačních hrách. Rovněž uvažujeme i malé
modely ledvinných subsystémů, které mohou být studovány odděleně
(po rozpojení příslušných regulačních smyček), pro lepší pochopení
funkce vybraného subsystému. Tak je např. možno studovat vliv
rezistencí přívodní a odvodní arterioly, hladiny plazmatických bílkovin,
permeability glomerulární membrány i protitlaku proximálního tubulu na
velikost glomerulární filtrace.
Model je ovšem pouze začátek. Pro výukovou simulační aplikaci ho
musíme převést z prostředí Matlab/Simulink do prostředí
vytvářeného výukového simulátoru a názorně při tom vizualizovat
jeho chování.
3. Vizualizační prostředí pro simulátory
Od simulátoru vyžadujeme velké možnosti vizualizace vstupů a
výstupů modelu (ve formě nejrůznějších přehledných displejů, grafů, či
modelem řízených pohyblivých schémat a animací). Na druhé straně
vlastní model nezřídka bývá výpočetně poměrně náročný. Od nástroje, v
němž budeme vytvářet vlastní výukový simulátor, tedy požadujeme
poměrně protichůdné požadavky: na jedné straně chceme aby
podporoval velké možnosti grafické vizualizace a na druhé straně
vyžadujeme zachování dostatečně velké kapacity procesoru pro
souběžné numerické výpočty.
Obdobné nároky mají systémy pro návrh průmyslových řídících a
měřících systémů (při vykreslování výsledků vizualizace na obrazovce
se nesmí zastavit paralelně běžící výpočet ovládající nějaký průmyslový
proces). Proto jsme se při hledání vhodného nástroje pro tvorbu
Control Web pro multimediální interaktivní ledvinu
95
vizualizací výukových simulačních her poohlédli po nástrojích původně
určených pro vizualizaci průmyslových procesů.
Nástrojů pro design průmyslových aplikací je na světovém trhu
nemálo. Jejich ceny jsou ovšem, na rozdíl od obecných softwarových
nástrojů, zpravidla velmi vysoké. Z těchto (a dalších) důvodů jsme se
poohlédli po domácím výrobci, kterým nakonec byla zlínská akciová
společnost "Moravské přístroje," která vyvíjí systém pro tvorbu
průmyslových aplikací s názvem "Control Web".
4. Virtuální součástky pro virtuální ledvinu
"Svensk kvalitet (till Tjeckiska priser)" – "Švédská kvalita (za české
ceny)", stojí v letáčku skandinávského distributora výkonného
softwarového nástroje z Valašska. Švédové jsou velmi domýšliví na
kvalitu svých výrobků, a pokud o vývojovém nástroji Control Web z dílny
zlínské společnosti Moravské přístroje veřejně prohlašují, že dosahuje
"švédské kvality", je to velké ocenění skupiny tvůrců, kteří na tomto
produktu v potu tváře usilovně pracují již od počátku devadesátých let.
Nyní je jejich úsilí korunováno tím, že jejich programové dílo (jehož
zdrojový text obsahuje více než 2 milióny řádek) nachází úspěšnou cestu
na zahraniční trhy. Poslední verze programu je tak možno vidět v nejen v
anglické, německé či švédské verzi, ale i v "rozsypaném čaji" japonských
znaků.
Control Web je především určen pro vývoj průmyslových
vizualizačních a řídících aplikací na platformě WIN32 - sběr,
ukládání a vyhodnocování dat, tvorba rozhraní člověk-stroj aj. (viz
http://www.mii.cz). Objektově-orientovaná komponentová architektura
zajišťuje vyvíjeným aplikacím široký rozsah nasazení: od prostých
časově nenáročných vizualizací až po řídicí aplikace reálného času, od
jednoprocesorových aplikací až po rozsáhlé distribuované síťové
aplikace.
V průmyslových aplikacích jádro systému Control Web komunikuje
přes ovladač měřící/řídící karty s průmyslovým zařízením. Na jádro
systému je napojena uživatelská aplikace vytvořená pomocí
vizualizačních nástrojů.
Základními stavebními kameny uživatelské aplikace v Control
Webu jsou virtuální přístroje (komunikující mezi sebou pomocí
proměnných a zpráv). Virtuální přístroje představují širokou paletu
zobrazovacích nástrojů - od ručkových měřících přístrojů, přes
nejrůznější škálu grafů až po nástroje pro archivaci zobrazovaných dat a
"hlídací" komponenty, spouštějící reakci na odchylku měřených dat od
definovaného stavu.
J. Kofránek, M. Tribula
96
Každý virtuální přístroj je komponenta, jejíž vlastnosti jsou pomocí
vizualizačních a ovládacích prvků snadno modifikovatelné. Ale nejenom
to – každá komponenta systému má k dispozici mocné programátorské
nástroje, jako jsou lokální proměnné a libovolně definovatelné procedury,
reagující na události.
Pro rychlý vývoj uživatelského rozhraní Control Web poskytuje
velmi efektivní prostředky. Tak např. z palety virtuálních přístrojů je
možno snadno tažením myši vytáhnout potřebný přístroj a umístit ho na
příslušný panel. V interaktivním dialogu je pak možné virtuálnímu přístroji
nastavit hodnoty jeho příslušných atributů, napojit ho na příslušný
"vstupní kanál" ze kterého bude odečítat nějaké hodnoty, nebo naopak
mu vybrat "výstupní kanál" do kterého bude nějaké nastavované hodnoty
posílat, nadefinovat lokální proměnné přístroje, či individuální procedury
přístroje (metody objektu) apod.
Výhodnou vlastností Control Webu je to, že jedním z virtuálních
přístrojů je kontejner pro komponenty ActiveX, který tak představuje
most mezi systémem Control Web a vlastnostmi a metodami (OLE
Automation) ActiveX komponent. To znamená, že do aplikace lze
zabudovat ActiveX komponenty a programově je ovládat - nastavovat jim
vlastnosti a volat metody z procedur jakýchkoliv přístrojů. Můžeme tedy
pomocí programu Adobe Flash MX vytvořit interaktivní výukové
animační obrázky a ty pak uložit jako ActiveX komponenty do kontejneru.
Animace pak mohou být řízeny na základě výstupů implementovaného
simulačního modelu – např. na schematickém obrázku ledvinného
glomerulu se cévy se mohou roztahovat nebo komprimovat, tloušťka
šipky znázorňující velikost glomerulární filtrace se může ztlušťovat či
ztenčovat atd.
Celá výuková aplikace v Control Webu pak může vypadat jako
sada propojených interaktivních obrázků na jejichž pozadí může běžet
dosti komplikovaný simulační model.
5. Jak ošálit Control Web
Měřené hodnoty okolního světa jsou v Control Webu virtuálním
přístrojům zprostředkovány přes vstupní kanály, řídící signály do okolí
mohou virtuální přístroje posílat pomocí výstupních kanálů.
Vstupní a výstupní kanály komunikují s ovladači příslušných
měřících/řídících karet, které jsou propojeny s vnějším technologickým
zařízením. Z něj pak do karet přicházejí měřené signály, které ovladač
přetvoří do příslušných numerických hodnot vstupních kanálů systému
ControlWeb, kde jsou vizualizovány pomocí virtuálních přístrojů
napojených na tyto kanály. Naopak, nastavované hodnoty ve výstupních
Control Web pro multimediální interaktivní ledvinu
97
kanálech jsou ovladačem a řídící kartou přetvořeny na příslušné řídící
signály, které jsou posílány do připojené technologie.
Abychom mohli využít vývojářské pohodlí systému Control Web při
tvorbě simulátorů, musíme použít určitý "úskok". Je nutno v jazyce C++
naprogramovat speciální ovladač, který je schopen komunikovat (přes
softwarové kanály) s objekty systému Control Web. Na rozdíl od
ovladačů ke skutečným měřícím a řídícím kartám však tento ovladač
nekomunikuje s hardwarem těchto karet, ale se simulačním
modelem, který je součástí ovladače. Systém Control Web je tak
"ošálen": vstupní kanály (k měřícím přístrojům) považuje za skutečné
měřené signály někde v technologickém okolí počítače, zatímco ve
skutečnosti to jsou výstupní proměnné simulačního modelu. Výstupní
kanály, odcházející od řídících prvků systému Control Web, nenastavují
přes příslušný ovladač nějaké aktivní prvky technologie, ale mění vstupy
simulačního modelu.
Obr. 1 Virtuální přístroje v průmyslové aplikaci v Control Webu komunikují
prostřednictvím vstupních a výstupních kanálů přes řadič řídící/měřící karty s
propojenou technologií
Vzájemný vztah mezi simulačním modelem ve virtuálním ovladači
a vizualizačním rozhraním systému Control Web je realizován jako klient
- server technologie: v určitých časových okamžicích Control Web
(klient) žádá virtuální ovladač se simulačním modelem (server) o načtení
hodnot ze vstupních kanálů a umožnění změny hodnot výstupních
kanálů.
Vytvořený simulátor vyžaduje, aby na počítači, kde má simulátor
běžet byl nainstalován runtime prostředí Control Web. Pro distribuci
simulátorů prostřednictvím Internetu (včetně potřebného runtimu
J. Kofránek, M. Tribula
98
prostředí Control Web) využíváme speciální program "dispečer
simulačních modelů", o kterém jsem referovali na předminulém Medsoftu
[4].
6. Dřinu strojům!
Jádrem simulátoru je ovladač virtální řídící/měřící karty, který
obsahuje vlastní simulační model. Ovladač je implementován v jazyce C
nebo C++ nebo Modula 2. Jako podklad pro tvorbu využíváme simulační
model, o jehož adekvátnosti jsme se (se vším pohodlím systému
Matlab/Simulink) již přesvědčili.
Pomocí Control Webu a speciálního ovladače s vnořeným
simulačním modelem (psaným v Module 2 a později v C++) jsme např. v
minulosti realizovali implementaci simulátoru fyziologických regulací
simulátoru fyziologických funkcí Golem [2].
Obr. 2 Virtuální přístroje v simulátoru vytvořeném v Control Webu komunikují
prostřednictvím vstupních a výstupních kanálů přes řadič (neexistující) virtuální
řídící/měřící karty se simulačním modelem, který je součástí řadiče. Zdrojový text
programu tohoto řadiče je možné automaticky vygenerovat z modelu,
implementovaném v Simulinku pomocí námi vytvořeného softwarového nástroje.
Control Web pro multimediální interaktivní ledvinu
99
Je ale nutno poznamenat, že programování obdobných speciálních
ovladačů pro systém Control Web je poměrně časové náročná a
úmorná mravenčí práce. Krom toho, při jakýchkoli změnách v modelu
(který vytváříme v pohodlí vývojového systému Matlab/Simulink) je pak
nutno přeprogramovat celý ovladač virtuální karty.
Abychom vývoj ovladačů (a vnořeným simulačním modelem)
usnadnili a nemuseli ho psát v C++ "ručně", vyvinuli jsme speciální
program, který umožní vývoj ovladače automatizovat.
Díky tomu máme nyní možnost ze simulinkového schématu přímo
generovat zdrojový text příslušného virtuálního ovladače v jazyce C.
To nám nyní dává možnost oddělit tvorbu simulačního modelu a
tvorbu simulátoru. Simulační model vytváříme ve vývojovém prostředí,
určeném pro vývoj simulačních modelů – tj. v prostředí Matlab/Simulink,
a pro vývoj vlastního simulátoru využíváme širokou škálu vizualizačních
nástrojů, které nabízí vývojové prostředí Control Web. Propojení mezi
oběma prostředími zajišťuje námi vyvinutý softwarový nástroj, který
převede model vytvořený v Simulinku do podoby ovladače virtuální karty
pro Control Web.
Nyní je snadné při nejrůznějších úpravách simulačního modelu v
prostředí Simulink jednoduše modifikovat ovladač v prostředí Control
Web a vytvořit novou verzi ovladače s novou verzí simulačního modelu.
7. Od umění k průmyslu (při tvorbě simulátorů)
Zdá se, že pomalu končí doba, kdy vytváření výukových programů
bylo otázkou entuziasmu a píle skupin nadšenců. Tvorba moderních
výukových aplikací je poměrně náročný a komplikovaný projekt,
vyžadující týmovou spolupráci řady profesí – od zkušených učitelů,
jejichž scénář je základem kvalitní výukové aplikace, přes systémové
analytiky, kteří ve spolupráci s profesionály daného oboru jsou
odpovědni za vytvoření simulačních modelů pro výukové simulační hry,
výtvarníky, kteří vytvářejí vnější vizuální podobu, až po programátory,
kteří celou aplikaci "sešijí" do výsledné podoby. Aby tato interdisciplinární
kolektivní tvorba byla efektivní, je nutno pro každou etapu tvorby
využívat specifické vývojové nástroje, s dostatečnou technickou
podporou, které umožňují komponentovou tvorbu simulačních modelů,
vytváření interaktivních multimédií a jejich závěrečné propojení podle
daného scénáře do kompaktního celku [3].
Při tvorbě simulátorů v naší laboratoři proto využíváme
Matlab/Simulink pro návrh a odladění vlastního simulačního modelu,
Control Web a Visual Studio .NET pro tvorbu simulátoru (pro
automatizaci převodu modelu z protředí Matlab/Simulink do podoby
assembly v prostředí Microsoft .NET jsme referovali na minulém
J. Kofránek, M. Tribula
100
Medsoftu [5]). Pro vytváření multimediálních interaktivních komponent
uživatelského rozhraní využíváme Adobe Flash, z výsledné interaktivní
animace pak prostřednictvím ActiveX komponent propojujeme se
simulačním modelem (a to jak v simulátorech vytvořených pomocí
Microsoft Visual Studia, tak i v simulátorech vytvořených v Control
Webu).
Obr. 3 Prvotní design simulátoru ledvin má příliš technický ráz
8. Ledvina na síti
Simulátor ledvin je součást internetového atlasu fyziologických
modelů [1], dostupném na www.physiome.cz, který dlouhodobě
vytváříme v naší laboratoři.
Simulátor je určen studentům medicíny a lékařům pro studium
fyziologie a patofyziologie ledvin. Má pomoci pochopit základní funkce
ledvin a kauzální řetězce jejich poruch. Pro usnadnění výkladu model
umožňuje rozpojit některé regulační smyčky s sledovat chování
jednotlivých částí ledvin odděleně. Tak je např. možné sledovat faktory,
Control Web pro multimediální interaktivní ledvinu
101
které ovlivňují glomerulární filtraci a průtok krve ledvinami, modelovat
rozpojenou a propojenou tubuloglomerulární vazbu a sledovat její
postupnou
adaptaci
na
dlouhodobé podněty. Postupným
rozpojováním a zapojováním
regulačních smyček je možné
podrobně
sledovat
funkci
protiproudového systému ledvin,
vliv různých koncentrací sodíku a
draslíku k tubulární moči a v krvi
na chování distálního nefronu při
různých hladinách aldosteronu,
chování ledvin při různých
poruchách
acidobazické
rovnováhy apod.
8. Závěr
Vytvořený simulátor ledviny
v Control Webu je první
implementací s využitím nově
vytvořeného
nástroje
umožňujícího
automatizovaný
převod vytvořeného modelu z
prostředí Matlab/Simulink do
Obr 4 Technický háv simulátoru
vývojového prostředí Control
(připomínající spíše průmyslový velín
než výukový simulátor) mohou setřít Web. Na rozdíl od simulátorů,
v
platformě
interaktivní animace, vytvořené pomocí vytvořených
Adobe Flash, implementované do Microsoft Studio .NET, je nutno
simulátoru pomocí ActiveX kontejneru a na počítači, kde má být simulátor
propojené se simulačním modelem
provozován, instalovat speciální
volně šiřitelný runtime pro systém
Control Web. Rychlost vytváření aplikace je však v prostředí Control
Web nesrovnatelně rychlejší – proto se tento systém hodí především pro
vytváření prvotních prototypů simulátoru. Prvotní design aplikace
vytvořené v Control Webu (s využitím integrovaných vizualizačních
nástrojů) je na první pohled příliš technický. Nicméně, tak jak do ActiveX
kontejnerů instalujeme interaktivní multimediální elementy vytvořené v
Adobe Flash, technický háv uživatelského rozhraní aplikace se ztrácí a
postupně se přeměňuje na obrázky interaktivního počítačového atlasu
fyziologie, který je bližší těm, komu je aplikace určena – studentům
medicíny a lékařům.
J. Kofránek, M. Tribula
102
9. Literatura
[1] Andrlík M., Kofránek J., Matoušek S. Stodulka P., Wünsch Z.,
Kripner T., Hlaváček J.: Internetový atlas multimediálních modelů pro
vybrané kapitoly normální a patologické fyziologie člověka. Ukázka
předběžných výsledků. Sborník příspěvků MEDSOFT 2006. ISBN 8086742-12-1, str. 7-12, Zeithamlová M., Agentura Action-M, Praha
2006.
[2] Kofránek, J., Anh Vu, L. D., Snášelová, H., Kerekeš, R. Velan, T.
(2001): “GOLEM – Multimedia simulator for medical education.” In:
Studies in Health Technology and Informatics., vol. 84. MEDINFO
2001, Proceedings of the 10th World Congress on Medical
Informatics. (V.L. Patel, R. Rogers, R. Haux (Eds.)), IOS Press,
Amsterdam, Berlin, Oxford, Washington DC, 2001, pp. 1042-1046.
[3] Kofránek J, Andrlík M, Kripner T, Stodulka P. From Art to Industry:
Development of Biomedical Simulators. The IPSI BgD Transactions
on Advanced Research 1 #2, 62-67. 2005. New York, Frankfurt,
Tokyo, Belgrad. 2005.
[4] Kofránek J., Andrlík M., Kripner T., Hlaváček J., Stodulka P.: Elearning s výukovými simulačními modely v prostředí Macromedia
Breeze. Sborník příspěvků MEDSOFT 2005. ISBN 80-86742-07-5,
str. 81-88, Zeithamlová M., Agentura Action-M, Praha 2006.
[5] Stodulka P., Privitzer P., Kofránek J., Mašek J.: Nové postupy v
tvorbě simulátorů – inteligentní propojení Matlabu a Simulinku s
platformnou .NET a tvorba stavových automatů řídících výslednou
aplikaci. MEDSOFT 2006. ISBN 80-86742-12-1, str. 171-176,
Zeithamlová M., Agentura Action-M, Praha 2006.
Poděkování
Práce na vývoji lékařských simulátorů je podporována grantem MŠMT
č.2C06031 a společností BAJT servis s.r.o.
Jiří Kofránek
Laboratoř biokybernetiky
Ústav patologické fyziologie 1.LF UK
128 53 Praha 2
tel: 777-68-68-68
fax:26731 0503
e-mail: kofranek@cesnet.cz
Modely regulace ve fyziologickém praktiku
225
MODELY REGULACE VE FYZIOLOGICKÉM PRAKTIKU
Zdeněk Wünsch, Marcel Matúš, Tomáš Kripner a Jiří Kofránek
Anotace
Regulace jsou všudypřítomnou složkou organizace životních procesů,
jejich dynamické vlastnosti a chování jsou rozmanité a nezřídka se mění
v závislosti na fyziologických nebo patologických faktorech. Učebnice a
monografie prezentují statická schemata struktur těchto systémů a verbální popis některých jejich funkčních vlastností, ale praktická cvičení
neposkytují téměř žádnou možnost, aby se posluchači mohli cestou experimentu s biologickým originálem podrobněji seznámit s jejich
dynamickými vlastnostmi a se souvislostmi dynamických vlastností regulačních systémů s parametry těchto systémů. Tuto mezeru se
pokoušíme částečně vyrovnat tématikou simulačních experimentů, které
umožňují interaktivní seznámení se základními projevy a způsoby stanovení charakteristik prvků regulačních systémů, s vlivem různých
parametrů obvodu na průběh regulačního pochodu, stabilitu systému
apod. Jsou též uvedeny příklady několika modelů fyziologických systémů. Prezentované sdělení spíš jen v obecné rovině navazuje na
předběžnou verzi ´06 přednesenou na MEDSOFTU v minulém roce.
1 Úvod
Po předchozích realizacích výukových programů v prostředí Control Web
a Macromedia Flash [Wünsch a spol., Medsoft ´04, ´05, ´06 ] uvádíme
další a ucelenější verzi výukového programu na platformě Microsoft
.NET. Poslední změny souvisejí s převedením předběžné koncepce programu ´06 do testovatelné beta verze s doplňky tematiky a úpravami
uživatelského prostředí a použitého softwaru. Cílem zůstává nabídnout
posluchačům možnost „virtuálních“ experimentů v dané tematické oblasti, kdy grafické uživatelské rozhraní umožňuje široké možnosti
komunikace s modelem volbou parametrů systému a vstupních podmínek, sledováním číselných hodnot a grafické reprezentace veličin.
2 Metodika
Projekt se skládá z částí, vyžadující spolupráci více oborů. Fyziolog připravuje scénáře jednotlivých úkolů, tj. promění myšlenku, jakou část
teorie má uživatel na určitém panelu pochopit a podle toho navrhne matematický model v prostředí MATLAB/Simulink a odsimuluje správnost
Z. Wünsch, M. Matúš, T. Kripner, J. Kofránek
226
modelu. Programátor konstruuje rámec, pro běh modelu mimo původní
simulační prostředí a prostředky pro ovládaní a vizualizaci. Vytvoří tak
vhodné grafické uživatelské prostředí. Vizualizační a případně i ovládací
komponenty (např. ve formě interaktivních animací Flash) výtvarně navrhuje a skriptuje grafik.Z prostředí MATLAB/Simulink exportujeme modely
ve formě kódu C++, knihoven DLL nebo .NET assembly. Je to umožněno pomocí toolboxu Real-Time Workshop a propietární šablony
[Stodulka, Privitzer, Medsoft ´06].
Takto vyexportovaný model
model
animace Flash
lze snadno provozovat v hosActiveX
Simulink → C++
titelské aplikaci (typicky Microsoft .NET aplikace). Třída
modelu nabízí metody ke koportlinky
munikaci se vstupně/výstupovládací prvky
vizualizace a
ními porty modelu, k inicializasběr dat
ci a vykonání simulačního
kroku modelu.
Pro další komunikaci modelu
.NET framework
(vstupy a výstupy) s interaktivními prvky rozhraní používame
Obr.1: koncepce propojení komponentů
technológii tzv. portlinků [Stov prostředí Microsoft .NET
dulka, Privitzer, Medsoft ´06].
Portlinky jsou spojovací třídy, které automatizují předávání dat mezi modelem a vizuálními komponentami (graf, tabulka, textový blok,
MediVector – komponenta na nastavení požadované hodnoty, aj.). Vývojovým prostředím pro implementaci výukového programu je Microsoft
Visual Studio .NET. Používají se jak jeho standardní prvky, tak prvky vyvinuté u nás v laboratoři (MediVector, DifferenceGraph, příp. Interaktivní
animace). Simulační modely sestavené a odladěné ve vizuálním prostředí Simulinku jsou odtud automaticky exportovány do .NET assembly
obsahující třídu modelu přímo referencovatelnou z ostatního kódu.
V současné době jsou podporovány modely s fixním simulačním krokem
a výpočetní procedury 1. až 5. řádu. Poslední komponentou výukového
programu jsou interaktivní animace vytvořené nástroji Macromedia Flash, které komunikují s .NET prostředím pomocí ActiveX rozhraní
(koncepci propojení komponent shrnuje obr.1, příklad flash animace viz
obr.2).
3 Téma
Téma ve srovnání s původní koncepcí ´06 se rovněž v obecné rovině
nemění. Regulace mají základní význam pro průběh životních pochodů a
jsou všudypřítomnou složkou jejich organizace. Struktura a dynamické
Modely regulace ve fyziologickém praktiku
227
vlastnosti biologických regulačních systémů jsou velmi rozmanité, popř. i
proměnlivé jak za fyziologických tak i patologických podmínek. Učebnice
a jiné odborné texty prezentují statická schemata těchto systémů a
eventuálně verbální popis jejich funkčních vlastností, ale běžná praktika
neposkytují téměř žádnou možnost, aby si posluchači mohli
v experimentu s biologickým originálem ověřit jejich dynamické vlastnosti, účinky různých poruchových vlivů a změn parametrů systému na
chování regulované veličiny apod. Projekt má přispět k překlenování
těchto omezení. Počítačové simulace (nebo imitace) v praktické výuce
biomedicínských témat se opírají o současný metodický aparát systémových věd a jim odpovídající
způsob vědeckého myšlení a
k tomu se posluchač medicíny
dostává jen sporadicky, pokud
vůbec. Přitom právě složitost
biologických systémů a jejich
funkčních vlastností byla jedním
z hlavních motivů, který startoval
současný vývoj systémových
věd v polovině minulého století.
Systémové vědy sice nejsou explicitní
součástí
lékařského
studia, ale např. v odborné biomedicinské literatuře je řada
témat, která se bez znalostí
umožňujících porozumění maa
počítačovým
Obr.2: Použití interaktivní animace mecha- tematickým
modelům neobejdou (např. aplinické analogie při výkladu dynamikých
systémů
kovaná biokybernetika, computational neuroscience aj.). Předpokládáme, že prostřednictvím uvažovaných interaktivních počítačových
modelů lze realizovat praktikum, které posluchači zprostředkuje nejen
něco virtuální empirické zkušenosti s některými základními vlastnostmi
regulačních systémů, ale současně i něco elementárního z formulace
počítačových modelů a teorie regulace. Praktikum je tak možno brát
jako dílčí příklad jedné části metodologie biokybernetiky, jejíž předmětnou oblastí jsou ovšem nejen jednoduché regulační systémy, ale
všechny složitější a složité dynamické systémy živých soustav jejichž
součástí jsou regulační obvody, včetně těch s emergentními vlastnostmi.
Z. Wünsch, M. Matúš, T. Kripner, J. Kofránek
228
4 Struktura programu
Celý program je strukturovaný do jednotlivých panelů, které jsou seřazené za sebou v posloupnosti, reprezentující narůstající náročnost.
Všechny úkoly (panely) můžeme seřadit do následující struktury:
4.1 Úvod (panel 0)
Úvodní obrazovka obeznamuje
uživatele se záměrem programu a
s ovládacími prvky programu.
4.2 Prvky regulačných systémů
(panely 1. – 4.)
Obr.3: Použití některých prvků regulačních systémů
V této skupině úkolů si uživatel vyzkouší působení různých vstupních
průběhů na volitelné typy jednoduchých dynamických prvků a zjišťuje
odpovídající charakter a rozdíly
v odezvách. V následujících panelech se seznamuje s používanými
postupy při stanovování statických
a dynamických charakteristik, se
zobrazením průběhů ve fázovém
prostoru, s jednoduchými lineárními systémy s použitím přenosu. Na
obr.3 je znázorněný panel s jednoduchými systémy, který umožňuje
demonstrovat vliv vstupního signálu na přenos systému a vliv
integrační a derivační složky, případně nelineárního omezení. Na
obrázku je simulován vliv parametrů na systém 2.řádu.
4.3 Systémy se zpětnou vazbou
– regulace (panely 5.1 a 5.2)
Obr.4: Varianty systémů se zpětnou
vazbou
Základní struktura systému se zápornou zpětnou vazbou je umístěna ve dvou panelech, které mají širokou škálu možností nastavení.
Uživatel má na začátek k dispozici lineární regulovaný systém
Modely regulace ve fyziologickém praktiku
229
s proporcionálním regulátorem. Může si k tomu přidat jeden z P, PI, PD a
PID regulátoru, vyzkoušet vliv žádané hodnoty a dopravního zpoždění.
Dále je možnost zapojit do zpětné vazby dynamický prvek. Na obr.4 je
demonstrován vliv PI regulátoru a žádané hodnoty (v našem případě měla hodnotu 1) na systém 1.řádu, který má na vstupu šum. (Na příkladu je
patrné, jak se regulace snaží udržet výstup u žádané hodnoty 1).
4.4 Modely fyziologických regulačních systémů (panely 6 10)
Obr.5: Model enzymatického systému
s násobnými vazbami
Fyziologické regulační systémy se
mohou nezřídka odlišovat strukturou a/nebo chováním od systémů
uvedených na předchozích panelech (mají však vždy alespoň jednu
zápornou zpětnou vazbu). Příkladem mohou být vícenásobné
zpětné vazby, dopředná vazba, parametrická
zpětná
vazba,
antagonistické vazby aj. Některé
z jed-nodušších variant
ilustruje
několik modelů umožňujících interakci volbou hodnot parametrů
(výstupy některých těchto modelů
jsou na obr.5 a obr.6), některé
další jsou pak popsány v poslední
výkladové části programu.
5 Závěr
Připravovaný výukový program nabízí široké spektrum simulačních
experimentů v tématické oblasti,
která je jinak obtížně, pokud vůbec,
realizovatelná v praktických cvičeních na biologickém objektu.
Zprostředkovává uživateli i něco
málo z některých obecně využitelných
koncepcí,
termínů
a
Obr.6: Rovnovážny bod systému (žádaná metodických nástrojů, které jsou
hodnota) jako průsečník statických cha- základem formulace a různých forakteristik (regulace Pco2 podle Millhorna)
rem uplatnění biokybernetických
Z. Wünsch, M. Matúš, T. Kripner, J. Kofránek
230
modelů. Využívá předchozích zkušeností novějšího a vhodnějšího softwaru pro realizaci podobných interaktivních simulačních programů,
doc. MUDr. Zdeněk Wünsch, CSc., Marcel Matúš
Laboratoř biokybernetiky a počítačové podpory výuky
Ústav patologické fyziologie 1. LF UK
e-mail: zwun@lf1.cuni.cz, mmatu@lf1.cuni.cz
6 Literatura
[1] Wünsch Z., Dostál C., Veselý A. Základy lékařské kybernetiky. Avicenum, Praha 1977
[2] Milhorn H. T. The application of control theory to physiological systems. Saunders Co., Philadelphia 1966
[3] Kubík S., Kotek Z., Šalamon M. Teorie regulace. I.Lineární regulace.
SNTL, Praha 1974
[4] Khoo M. C. K. Physiological control systems. IEEE Press, New York
2000
[5] Glass L., Malta C.P. Chaos in multi-looped negative feedback systems. J. theor. Biol. 1990, 145, 217-223
[6] Cavalcanti S., Belardinelli E. Modeling of cardiovascular variability
using differential delay equation. IEEE Transactions on biomedical
engineering, 1996, 43, 982-989
[7] Wünsch Z., Šefl O. Einige allgemeine Möglichkeiten der Kooperation
in antagonistischen Systemen. In: Biokybernetik, vol. V, 342-349,
G.Fischer, Jena 1975
[8] Troelsen A. C# a .NET 2.0 profesionálně. Zoner Press, 2005
[9] The MathWorks. Real-Time Workshop. Online:
www.mathworks.com/products/rtw/
[10] Wünsch Z. Principy fyziologických regulací. Lékařská fyziologie
(17.kapitola v: Trojan a kol.), GRADA Pub., Praha 2003
[11] Ashby W. R.: Design for a brain. J.Wiley, New York 1952
Poděkování
Práce na vývoji lékařských simulátorů je podporována grantem MŠMT
č.2C06031 a společností BAJT servis s.r.o.
eLearning 2007, sborník příspěvků
1. Stanislav Štípek, Čestmír, Štuka, Jiří Kofránek, Pavol Privitzer, Tomáš
Nikl: Metodika e-learningu: Od jednoduchého ke složitému a zpět. In:
Sborník příspěvků z konference eLearning 2007. Hradec Králové:
Gaudeamus, 2007, ISBN 978-80-7041-573-3, str. 156-164, 2007.
METODIKA E-LEARNINGU : OD JEDNODUCHÉHO KE
SLOŽITÉMU A ZPĚT
Stanislav Štípek, Čestmír Štuka, Jiří Kofránek, Pavol Privitzer, Tomáš Nikl
Abstrakt
Cílem prezentace je ukázat různé stupně komplexnosti elektronických výukových
aplikací tak jak byly postupně implementovány na 1. lékařské fakultě Univerzity
Karlovy. V současné době jsou na 1. lékařské fakultě intenzivně rozvíjeny dva směry elearningu. Směr mířící od animací k interaktivním modelům a simulačním hrám, a směr
mířící od pasivní percepce, ke komunikaci s programem, s tutorem, až ke komunikaci
v sociální skupině. V naší prezentaci ukážeme několik konkrétních realizovaných
projektů spolu s jejich zařazením do jednotlivých vývojových kategorií v uvedených
směrech. Rovněž se budeme snažit ukázat možnosti a omezení nástrojů, které
v současnosti používáme na realizaci e-learningových projektů. Budeme se zabývat i
personální a finanční náročností jednotlivých postupů. Účelem našeho snažení je
z pohledu uživatele zjednodušit aplikace tak, aby bylo naplněno Komenského heslo
„Škola hrou".
Klíčová slova
animace, interaktivní modely, Breeze, Adobe Connect, simulační hry
OBSAH
1. Rozvoj e-learningu na 1. LF UK Praha ........................................................................ 1
2. LMS - nezbytná součást e-learningu ............................................................................ 2
3. Internetový atlas fyziologie a patofyziologie člověka.................................................. 3
3.1 Tvorba simulačních modelů ................................................................................... 4
3.2 Tvorba vlastního multimediálního simulátoru - simulační hry .............................. 5
3. Od jednoduchého ke složitému a zpět .......................................................................... 6
1. Rozvoj e-learningu na 1. LF UK Praha
Rozvoj e-learningu na 1. LF UK Praha prošel prvním obdobím, kdy bylo potřeba sebrat
velké množství výukových materiálů, rozptýlených mezi jednotlivé vyučující a učinit
z nich materiály dostupné v nějakém logickém konceptu pro studenty.
K tomu účelu se ukázal nejvhodnější výukový portál, jaký provozovala LF MU v Brně
(http://portal.med.muni.cz/). Jeho obdoba byla s úspěchem spuštěna na naší fakultě a
představuje úložiště a rozcestník pro hledání fakultních výukových materiálů. Efektivní
vyhledávání dokumentů podporuje systematické užívání klíčových slov k popisu
dokumentu a zatřídění všech dokumentů do taxonomie podle lékařských oborů
(http://portal.lf1.cuni.cz/).
Paralelně s tím, byl zaváděn systém pro tvorbu a správu výukových kurzů (Learning
Management Systém - LMS) o kterém bude podrobně pojednáno v následující kapitole.
Z praktického hlediska byl vybrán velmi jednoduchý systém, který nevytváří vysoký
práh, což je podstatné zejména vzhledem k potřebě zapojit velké množství autorů
výukových materiálů bez zvláštních znalostí informatiky. Pro ty je LMS systém
navazující na PowerPoint vítanou zkratkou do jinak nedostupné krajiny e-learningu.
2. LMS - nezbytná součást e-learningu
První lékařská fakulta Univerzity Karlovy v Praze zavedla pro podporu e-learningu a
distančního vzdělávání LMS systém Adobe Connect (AC) dříve známý pod jménem
Breeze. Tento LMS podporuje interakce mezi uživateli a současně používání
multimédií, jakými jsou: proudový přenos zvuku a obrazu, přenos interaktivních prvků
jako kreslení na sdílenou tabuli, hlasování, diskusi, sdílení dat a další.
Ve zvoleném LMS systému tak lze vytvářet on-line prezentace, real-time
(video)konference i výukové materiály. Předpokladem širšího rozvoje e-learningu je,
aby autoři byli schopni samostatně používat kreativní nástroje pro tvorbu kurzů. Kurzy
pak mohou tvořit ucelené bloky nebo samostatné výukové objekty, které je možné spojit
do větších celků a vytvářet tak rozsáhlé studijní plány. Výhodou LMS AC je použití
aplikace Microsoft PowerPoint (s doplňkovým modulem) jako základního vývojového
prostředku. V něm lze snadno vytvářet a díky LMS i distribuovat aplikace velmi široké
skupině uživatelů v horizontu hodin. Serverová část LMS AC pak zajišťuje distribuci
výukových materiálů a vyhodnocování výsledků.
AC poskytuje profesionální úroveň komunikace ve dvou hlavních operačních modech:
•
•
Jako web-konference, virtuální seminář, sdílení pracovní plochy a aplikací
v reálném čase, přenos živého zvuku, obrazu a dat.
Jako přístup k multimediálnímu obsahu (prezentací, kurzů, testů) na vyžádání.
Velkou výhodou je, že AC na straně uživatele stojí na technologii Flash Player, který je
nainstalován na 97% k internetu připojených počítačů (zdroj: NPD Group 2006) a je na
platformě nezávislý.
Moduly LMS Adobe Connect
Training modul pro přípravu a správu
kurzů v požadované struktuře
a vyhodnocování souvisejících testů.
Events modul určený k organizaci on-line seancí
a k automatizaci rozesílání pozvánek a notifikací
jednotlivým přizvaným účastníkům.
Presenter zásuvný modul do Microsoft
PowerPoint pro multimediální přípravu
a publikování prezentací, testů.
Meeting modul pro pořádání on-line konferencí
a seminářů, sdílení plochy, souborů.
Communication Server základní modul zprostředkující on-line komunikaci, administraci,
správu a sdílení obsahu.
LMS umožňuje kromě PowerPointu vkládat také řadu jiných objektů s nejrůznějšími
formáty a jejich vzájemnou kombinací lze dosáhnout překvapivých výsledků. Jde o tyto
objekty: Flash animace a interaktivní hry (swf), audio a video nahrávky, 3D objekty
transformované pomocí nástrojů Adobe Acrobat (pdf), simulace a postupy snímané
pomocí Adobe Captivate, text v dokumentech PDF, textové dokumenty z aplikace MS
Word a jiné dokumenty převedené pomocí virtuální PDF tiskárny, obrazy ve formátech
JPG, GIF, PNG, HTML soubory a ZIP soubory.
Aktuální obsah LMS 1. LF UK je dostupný na adrese: http://connect.lf1.cuni.cz/
Díky LMS Adobe Connect a aplikaci PowerPoint bylo možné v poměrně krátké době
(cca 6 měsíců) studentům nabídnout přes 160 přednášek a prezentací. V současnosti se
na tvorbě obsahu výukových objektů podílí více než 30 institucí a ústavů 1. LF.
E-learning na 1. LF UK eskaluje od pasivní percepce, ke komunikaci s programem,
s tutorem, až ke komunikaci v sociální skupině. Markantního vývoje doznává i
komplexnost používaných výukových prostředků. Mezi nejvyspělejší výukové
prostředky patří interaktivní simulační aplikace - simulační hry, kterým zvláštní
pozornost věnuje následující kapitola.
3. Internetový atlas fyziologie a patofyziologie člověka
V současné době vzniká na Ústavu patologické fyziologie 1.LF UK internetový atlas
fyziologie a patofyziologie [1]. Cílem projektu je vytvoření internetové multimediální
výukové pomůcky pro studijní programy lékařských fakult (magisterské i bakalářské
studium) z oblasti normální a patologické fyziologie, který by názornou cestou
prostřednictvím internetu pomohl vysvětlit funkci jednotlivých fyziologických systémů
a příčiny a projevy jejich poruch.
Atlas má multimediální výkladovou část, která prostřednictvím pohyblivých názorných
animací a mluveného slova uvádí do fyziologické problematiky. Má také praktickou
část, která využívá simulačních her na praktické seznámení se s fyziologickou
(virtuální) realitou. Spojení multimediálního výkladu se simulačními hrami umožňuje
názorně a komplexně pojmout vykládaný problém jak teoreticky tak i prakticky ve
virtuální realitě. Simulační hrou je možné bez rizika otestovat chování simulovaného
objektu – např. si otestovat chování jednotlivých částí respiračního systému, oběhového
systému, vylučovacího systému apod.
Pro podrobnější popis toho, co všechno je „za oponou“ tvorby atlasu, odkazujeme na
články [1,2]. I když si tvorba výkladové části atlasu zasluhuje také velkou pozornost,
z důvodu omezeného místa článku se v dalším textu zabýváme zejména tvorbou
simulačních her jako tou komplexnější částí atlasu.
Při vytváření lékařských simulátorů je nutno řešit dva typy problémů:
1. Tvorba simulačního modelu – vlastní teoretická výzkumná práce, jejímž
podkladem je formalizace fyziologických vztahů vyjádřená matematickým
modelem. V našem případě byla tato problematika řešena v rámci výzkumných
grantů a výzkumného záměru.
2. Tvorba vlastního multimediálního simulátoru, resp. tvorba výukového programu
využívající simulační hry – je praktická aplikace teoretických výsledků, která
navazuje na výsledky řešení výzkumu. Podkladem simulátoru jsou vytvořené (a
verifikované) matematické modely.
3.1 Tvorba simulačních modelů
Teoretickým podkladem v pozadí lékařského simulátoru je model lidského organismu,
resp. nějakého jeho subsystému. Tematika projektu využívá výsledků na našich
pracovištích řešené výzkumné problematiky - vytváření formalizovaného popisu
fyziologické reality - tj. převedení popisu biologické reality a příslušné sítě vztahů
z čistě slovní deskripce na formalizovaný popis v jazyce matematiky - fyziky. Je třeba
poznamenat, že tato problematika je poměrně nová, protože z důvodů složitosti a
komplexnosti biologických systémů byl proces formalizace biomedicínských systémů
ve srovnání s jinými obory, např. s fyzikou, relativně opožděn a přichází až
s kybernetikou a výpočetní technikou. Tak jako teoretická fyzika se snaží interpretovat
výsledky experimentálního výzkumu ve fyzikálních vědách, tak i nový fyziologický
směr základního výzkumu, nazývaný někdy integrativní fyziologie, se snaží o
formalizovaný popis vzájemného propojení fyziologických regulací.
Metodickým nástrojem jsou zde počítačové modely. Aktivity v této oblasti se snaží
koncentrovat i mezinárodní projekt PHYSIOME (http://www.physiome.org). Jeho
výsledkem jsou simulační modely fyziologických funkcí. V současné době je také
koncipován celoevropský projekt EUROPHYSIOME (http://www.europhysiome.org),
do jehož přípravy se na základě dosažených výsledků chceme zapojit.
Pro návrh, ladění a implementaci
simulačních modelů jsme použili
modelovací vývojové prostředí Matlab Simulink firmy Mathworks, které
nám umožňuje postupně sestavovat
simulační model z jednotlivých
komponent (tzv. simulačních čipy).
Při řešení rozvojového programu
jsme tak vytvořili knihovnu fyziologických modelů, která je teoretickým podkladem pro vytváření
výukových simulačních her (obr. 1).
Obr. 1 Ukázka části simulačního modelu kardiovaskulárního systému v Matlab Simulink-u.
3.2 Tvorba vlastního multimediálního simulátoru - simulační hry
Odladěný simulační model se pak z prostředí Matlab Simulink převede do cílové
softwarové platformy, ve které se sestaví výslední aplikace simulátoru. Na uvedený
převod jsme vyvinuli speciální nástroje. V dnešní době používáme pro výsledné
aplikace zejména platformu Microsoft .NET Framework. Z odladěného simulačního
modelu se tak stane tzv. .NET assembly (jeden soubor .dll), která je úplně nezávislá na
Matlab Simulink-u [3,4].
Uživatelské rozhraní výukového simulátoru je velmi vhodné navenek reprezentovat jako interaktivní pohyblivý
obrázek. Pro tento účel používáme
Adobe Flash animace (obr. 2), které se
uvnitř aplikace propojí se simulačním
modelem. Animace pak mohou být
řízeny výstupy modelu a graficky reprezentovat význam číselných hodnot např. schematický obrázek srdce může
„tepat“, plicní sklípek může hlouběji či
mělčeji "dýchat", ručička měřícího přístroje se může pohybovat a průběžně
zobrazovat hodnotu nějaké výstupní
proměnné modelu čtené z běžícího simulačního modelu na pozadí apod. Na
druhé straně můžeme přes vizuální
prvky vytvořené ve Flash-i (tlačítka,
knoflíky, táhla apod.) do simulačního
modelu zadávat nejrůznější vstupy.
V případě složitější logiky simulátoru je
jeho řídící vrstva implementována
pomocí
hierarchického
stavového
automatu. Vyvinuli jsme vlastní nástroj
pro vizuální návrh těchto automatů,
jejich ladění a generování jejich
zdrojového kódu, který se stane součástí
výsledné aplikace. Výhodou použití
hierarchických stavových automatů je
především v možnosti graficky zobrazit
logiku aplikace a jednoznačně a
přehledně definovat přechody mezi
jejími stavy. V našem nástroji je zároveň
možné přímo definovat řídící akce
vyvolávané v závislosti na aktuálním
kontextu simulační aplikace (obr. 3).
Obr. 2 Ukázka návrhu řízené animace
srdce v prostředí Adobe Flash
Obr. 3 Hierarchický stavového automat
pro simulační hru první pomoci
Výsledná simulační aplikace (obr. 4)
je nakonec sestavena v rámci jediné
softwarové platformy, kterou je
v současné době hlavně .NET
Framework, který umožňuje poměrně jednoduchou instalaci-spouštění
aplikací přímo z webu prostřednictvím technologie ClickOnce. Pro
jednodušší simulátory je někdy postačující i samotný Flash, kterého
výhoda je jeho výborná přenositelnost na prakticky všechny operační
systémy; .NET Framework svým
konceptem ovšem také slibuje
velkou přenositelnost.
Obr.4 Ukázka simulátoru srdečních fází
Jak je z výše popsaného patrné, je možné vytvořit jednoduché až velmi komplexní
výukové objekty. Finanční náklady a personální náročnost je proto velice rozdílná.
Především náročnější aplikace typu simulačních her (projekt Atlas) vyžadují sestavení
mutlidisciplinárního týmu složeného z pedagogů, lékařů, matematiků, fyziků,
programátorů i výtvarníků (což je také jeden z velmi důležitých výsledků projektu
Atlas). Aby tato interdisciplinární kolektivní tvorba byla efektivní, je nutno pro každou
etapu tvorby využívat specifické vývojové nástroje, s dostatečnou technickou podporou,
které umožňují komponentovou tvorbu simulačních modelů, vytváření interaktivních
multimédií a jejich závěrečné propojení podle daného scénáře do kompaktního celku.
Naproti tomu náklady na pořízení jednoduchého výukového objektu, např. ozvučené
prezentace, jsou relativně nízké. Vyžadují především aktivní přístup pedagoga,
všeobecně dostupné nástroje výpočetní techniky a poměrně krátký čas na zpracování
takového objektu. Za nízké lze považovat také provozní náklady LMS serveru AC
vzhledem k počtu uživatelů a poměru výkonu a ceny.
Hardwarové možnosti i softwarové nástroje dnes již dospěly do úrovně umožňující
vytvářet náročná interaktivní multimediální díla, která je možno efektivně využít
k výrazné podpoře výuky medicínských oborů.
4. Od jednoduchého ke složitému a zpět
S rostoucími zkušenostmi z elektronicky podporované výuky se do popředí začala
dostávat otázka efektivity a formy výukového procesu. Ukazuje se, že pasivní formy
předávání informace (i když jsou lepší než nic) jsou málo účinnou formou jak potřebné
informace ke studentovi dostat. Účinnost tohoto přenosu roste s interaktivitou média –
od textu, přes hypertext, video, ozvučené video, animace až ke hrám, jejichž
interaktivita je v tomto pohledu maximální.
Podobně jako roste efektivita výukového procesu s interaktivitou média, roste rovněž
s mírou sociální interakce. Nebo přesněji mírou aktivního zapojení v procesu výuky.
Běžně jsou tři stupně aktivity popisovány jako tři paradigmata e-learningu [1].
Komplexnost
média
1. paradigma e-learning jako e-reading: kurz je založen především na prezentaci (i
multimediálních) učebních materiálů, preferujeme především nástroje pro prezentaci a
publikování vytvořených vzdělávacích objektů.
2. paradigma celebrity profesor: tento typ kurzů bývá postaven na osobnosti tutora
kurzů, který vede studenty v průběhy celého kurzu. Důraz je zde proto kladen na
komunikační prostředky a možnosti on-line komunikace (chat, videokonference).
3. paradigma konstruktivismus: cílem těchto kurzů je vytvořit z účastníků kurzů určitou
virtuální komunitu, v rámci níž jsou potom nové znalosti aktivně konstruovány a
vytvářeny při interakci studentů navzájem pod vedením tutora. Ve velkém míře se zde
uplatní nástroje pro řízení studia a komunikační nástroje.
Zobrazíme-li nyní nastíněné schéma v rovině, kde na jedné ose roste komplexnost
média a na druhé ose míra aktivního zapojení studenta, vidíme, že fakulta pokrývá
svými aktivitami dvě oblasti. Oblast, v níž se rostoucí mírou komplexity média blíží od
textu k simulačním hrám a oblast, v níž se rostoucí mírou komunikace blíží od precepce
k interakci v sociální skupině.
Škola hrou
Learning by doing
+Simulační
modely
+Animace
+Video
+Audio
Text
Míra
zapojení
Čtení
+Testy
+Tutor
+Sociální
skupina
Bylo by jistě žádoucí tyto dvě oblasti propojit. Uvážíme-li co by toto propojení
znamenalo, je patrné, že od složitých věcí se dostáváme zpět k jednoduchým.
Výsledkem propojení obou trendů a cílem našeho směřování za vyšší efektivitou
elektronicky podporované výuky by bylo ono okřídlené „Learning by doing“.
Škola hrou.
Literatura
[1] Co je za oponou aneb cíle a postup řešení projektu "Atlasu multimediálních internetových modelů pro vybrané kapitoly normální a patologické fyziologie člověka".
http://physiome.cz/atlas - Info / Ze zákulisí tvorby Atlasu
[2] Kofránek J, Matoušek S, Andrlík M, Stodulka P, Wünsch Z, Privitzer P, Hlaváček J,
Vacek O. Atlas of Physiology and Pathophysiology – Internet Simulation Playground.
EUROSIM 2007; 2007; Ljubljana, Slovenia
[3] Stodulka P, Privitzer P, Kofránek J, Tribula M, Vacek O: Development of Web
Accessible Medical Educational Simulators. EUROSIM 2007; 2007; Ljubljana,
Slovenia
[4] Stodulka P, Privitzer P, Kofránek J, Mašek J. Nové postupy v tvorbě simulátorů inteligentní propojení Matlab Simulink s platformou .NET a tvorba stavových automatů
řídících výslednou aplikaci. MEDSOFT 2006; 2006; Praha, Czech Republic: Agentura
Action-M; 2006. p. 177-184.
[5] Learning Management System (LMS) 1. LF UK http://connect.lf1.cuni.cz/
[6] Ing. Martin Weiter, Ph.D., Využití e-learningových technologií při výuce fyziky na
FCH VUT, Chemická fakulta VUT v Brně
(http://www.fit.vutbr.cz/research/pubs/TR/2005/sem_uifs/s050307podklady2.pdf)
Jména autorů
prof. MUDr. Stanislav Štípek, DrSc.
UK v Praze, 1.lékařská fakulta, 1. proděkan a proděkan pro studijní záležitosti
Kateřinská 32, 128 01 Praha 2
e-mail: stanislav.stipek@lf1.cuni.cz
RNDr. Čestmír Štuka
UK v Praze, 1.lékařská fakulta, Vedoucí oddělení výpočetní techniky
Kateřinská 32, 128 01 Praha 2
e-mail: stuka@cesnet.cz
Tomáš Nikl
UK v Praze, 1.lékařská fakulta, Centrum podpory elektronické výuky
Kateřinská 32, 128 01 Praha 2
e-mail: tomas.nikl@lf1.cuni.cz
MUDr. Jiří Kofránek, CSc.
UK v Praze, 1.lékařská fakulta, Ústav patologické fyziologie, Laboratoř biokybernetiky
a počítačové podpory výuky
U Nemocnice 5, 128 53 Praha 2
e-mail: kofranek@email.cz
MUDr. Mgr. Pavol Privitzer
UK v Praze, 1.lékařská fakulta, Ústav patologické fyziologie, Laboratoř biokybernetiky
a počítačové podpory výuky
U Nemocnice 5, 128 53 Praha 2
e-mail: pavol.privitzer@lf1.cuni.cz
Mefanet report 01,
sborník příspěvků z konference MEFANET 2007
1. Jiří Kofránek: Tvorba výukových simulátorů. Co je za oponou. In:
Mefanet report 01 Institut biostatistiky a analýz, Masarykova Univerzita.
str. 60-72, leden 2008.
MEFANET report 01
TVORBA VÝUKOVÝCH SIMULÁTORŮ. CO JE ZA OPONOU
DEVELOPMENT OF EDUCATIONAL SIMULATORS.
WHAT IS BEHIND THE CURTAIN?
J. Kofránek
Laboratoř biokybernetiky, Ústav patologické fyziologie 1. LF UK, Praha
Abstrakt
Autor popisuje metodologii určenou pro vytváření e-learningového obsahu s využitím simulačních her. Je popsán
celý návrhový proces, od sestavení formalizovaného popisu fyziologické reality, až vytváření interaktivního výukového softwaru. Při tom se využívají nejrůznější nástroje – od softwarových nástrojů pro numerickou simulaci jako
Matlab/Simulink nebo Modelica, přes Adobe Flash pro tvorbu interaktivních animací, Control Web a Microsoft Visual Studio .NET pro vytváření uživatelského rozhraní, až po nástroje pro publikování na webu včetně Adobe Breeze. Tvorba moderních výukových aplikací je náročný a komplikovaný projekt, vyžadující týmovou spolupráci řady
profesí – pedagogů, lékařů, tvůrců simulačních modelů, výtvarníků a programátorů. Cílem je poskytnout studentům výukový software, který jim pomůže pochopit složitou dynamiku fyziologických systémů.
Klíčová slova
e-learning, fyziologie, počítačem podporovaná výuka, simulační modely, simulační hry
Abstract
The authors present a methodology of creating e-learning content with simulation games for the students of physiology and pathophysiology courses. The design process is explained starting from a formalized description of the
physiological reality up to interactive educational software. Various software tools are used during the design, i.e.
numerical simulation software Matlab/Simulink or Modelica, Adobe Flash for interactive animations, Control Web
or Microsoft Visual Studio.NET for user interface design, and web publishing tools including the Adobe Breeze
learning management system. Various professions are involved in complicated projects of modern educational applications – teachers, physicians, simulation/modeling experts, graphic designers and programmers. The aim is to
provide students with software that helps them understand complex dynamics of physiological systems.
Keywords
computer aided learning, e-learning, medicine, physiology, simulation games, simulation models
Mí s t o ú v o du – p a v u č i n a f y z i o l o g i c k ýc h
regulací
Před šestatřiceti lety vyšel v časopise časopise Annual
of Biomedical Physiology článek [8], který se svou podobou na již první pohled naprosto vymykal navyklé
podobě fyziologických článků té doby. Byl uveden rozsáhlým schématem na vlepené příloze. Schéma plné
čar a propojených prvků na první pohled vzdáleně připomínalo nákres nějakého elektrotechnického zařízení
(obr. 1). Místo elektronek či jiných elektrotechnických
součástek však zde byly zobrazeny propojené výpočetní
bloky (násobičky, děličky, sumátory, integrátory, funkční bloky), které symbolizovaly matematické operace
prováděné s fyziologickými veličinami (obr. 2). Svazky
propojovacích vodičů mezi bloky na první pohled vyjadřovaly složité zpětnovazebné propojení fyziologických
veličin. Bloky byly seskupeny do osmnácti skupin, které
představovaly jednotlivé propojené fyziologické subsystémy. Centrálním byl subsystém reprezentující cirkulační dynamiku – s ním byly do jednoho celku zpětnovazebně provázány ostatní bloky: od ledvin, přes tkáňové
tekutiny, elektrolyty, až po autonomní nervovou regulaci a hormonální řízení zahrnující ADH, angiotenzin
a aldosteron (obr. 3).
Vlastní článek tímto tehdy naprosto novým způsobem
pomocí matematického modelu popisoval fyziologické
regulace cirkulačního systému a jeho širší fyziologické souvislosti a návazností na ostatní subsystémy organismu – ledviny, regulaci objemové a elektrolytové
60
rovnováhy aj. Místo vypisování soustavy matematických rovnic se v článku využívalo grafické znázornění
matematických vztahů. Tato syntaxe umožnila graficky
zobrazit souvislosti mezi jednotlivými fyziologickými
veličinami ve formě propojených bloků reprezentujících matematické operace. Vlastní popis modelu byl
pouze ve formě základního (ale přesto plně ilustrativního) obrázku. Komentáře a zdůvodnění formulací
matematických vztahů byly velmi stručné: např. „bloky
266 až 270 počítají vliv buněčného PO2, autonomní
stimulace a bazální rychlosti spotřeby kyslíku tkáněmi na skutečnou rychlost spotřeby kyslíku v tkáních“.
Od čtenáře to vyžadovalo nadmíru velké soustředění
(i jisté fyziologické a matematické znalosti) pro pochopení smyslu formalizovaných vztahů mezi fyziologickými veličinami.
O rok později, v roce 1973, vyšla monografie [9], kde
byla řada použitých přístupů vysvětlena poněkud podrobněji. Guytonův model byl prvním rozsáhlým matematickým popisem fyziologických funkcí propojených
subsystémů organismu a odstartoval oblast fyziologického výzkumu, která je dnes někdy popisována jako
integrativní fyziologie. Z tohoto hlediska byl určitým
mezníkem, který se snažil systémovým pohledem na
fyziologické regulace zachytit dynamiku vztahů mezi
regulací oběhu, ledvin, dýchání, objemu a iontového
složení tělních tekutin pomocí matematického modelu.
14
MEFANET report 01
Model neměl jen čistě teoretický význam – Guyton si
záhy uvědomil i velký význam využití modelů jako svébytné výukové pomůcky.
Guyton a jeho žáci model nepřetržitě dále rozvíjeli.
V roce 1982 Guytonův žák a spolupracovník Thomas
Coleman vytvořil model "Human", určený především
k výukovým účelům. Model umožnil simulovat řadu
patologických stavů (kardiální a renální selhání, hemorhagický šok aj.) i vliv některých therapeutických
zásahů (transfúzi krve, umělou plicní ventilaci, dialýzu
atd.) [5]. Moderní interaktivní webovou implementaci
tohoto modelu v jazyce Java je možné najít na adrese
http://venus.skidmore.edu/human.
Posledním výsledkem Guytonových žáků a následovníků je simulátor Quantitative Human Physiology [1].
Model je možné stáhnout z http://physiology.umc.edu/
themodelingworkshop/.
Ško l a (s i m u l a č n í ) h r o u
Rozvoj osobních počítačů a internetu vnesl zcela nové
možnosti pro praktické uplatnění simulačních modelů. Simulační model nemusí být jen nástrojem pro vědecký výzkum, může být i velmi užitečnou výukovou
pomůckou.
Výukové programy se simulačními komponentami
nejsou jen multimediální náhradou klasických
učebnic. Jsou zcela novou výukovou pomůckou,
kde nachází své moderní uplatnění staré krédo Jana
Ámose Komenského "Schola Ludus" (škola hrou), které tento evropský pedagog razil již v 17. století. Spojení
multimediálního prostředí se simulačními modely studentům umožňuje pomocí experimentů se simulačním
modelem názorně prozkoumat vykládaný problém
ve virtuální realitě a přináší tak zcela nové možnosti
pro vysvětlování složitých problémů (obr. 4). Simulační
hrou je možné bez rizika otestovat chování simulovaného objektu – např. zkusit přistávat virtuálním letadlem
nebo, v případě lékařských simulátorů, léčit virtuálního
pacienta, či otestovat chování jednotlivých fyziologických subsystémů. Simulační hry umožňují názorně vysvětlit komplexní vztahy ve fyziologických regulačních
systémech a kauzální řetězce v patogenezi nejrůznějších onemocnění.
Z pedagogického hlediska je důležité, že modelovaný
objekt můžeme rozdělit na jednotlivé subsystémy a testovat jejich chování odděleně i jako součást vyššího celku. Tak např. při studiu složitých fyziologických regulací můžeme dočasně odpojit vybrané regulační smyčky
a umožnit studentům sledovat reakce těchto subsystémů na změny vstupních veličin (které jsou v reálném
organismu ovšem samy regulovány). Tím dovolíme
sledovat dynamiku chování jednotlivých subsystémů
při postupných změnách pouze jediného vstupu, zatímco jiné vstupy jsou nastaveny na zvolenou konstantní
hodnotu (tzv. princip "ceteris paribus").
Postupně pak můžeme jednotlivé dočasně rozpojené
regulační vazby opět zapojovat a studovat jejich vliv
na chování organismu při nejrůznějších patologických
poruchách a reakcích na příslušnou terapii. Podle našich zkušeností právě tento přístup vede k lepšímu
pochopení složitých dynamických jevů v patogenezi
nejrůznějších onemocnění a porozumění patofyziologických principů příslušných léčebných zásahů.
Tak například v našem simulátoru Golem [14] můžeme
postupně odpojovat a zapojovat jednotlivé regulační
smyčky ovlivňující homeostázu vnitřního prostředí
a tím postupně testovat význam jednotlivých regulačních okruhů a ozřejmit si tím například souvislosti poruch iontové a acidobazické rovnováhy (viz obr. 5).
Vývoj efektivních výukových programů, kombinujících
multimédia se simulačními hrami, je náročnou a komplikovanou prací, vyžadující týmovou spolupráci řady
profesí – zkušených pedagogů vytvářejících základní
scénář, tvůrců simulačních modelů, lékařů, výtvarníků a programátorů. Tuto interdisciplinární kolektivní
tvorbu zefektivňuje využívání vhodných vývojových nástrojů, které umožňují komponentovou tvorbu, propojení simulačních programů a interaktivních multimédií
podle daného scénáře do kompaktního celku.
Jedním z projektů, kde chceme využít nové možnosti
multimédií a simulačních modelů pro výuku je počítačový Atlas fyziologie a patofyziologie [18], koncipovaný jako multimediální výuková pomůcka, která
názornou cestou prostřednictvím Internetu s využitím
simulačních modelů by měla pomoci vysvětlit funkci
jednotlivých fyziologických systémů, příčiny a projevy
jejich poruch – viz http://physiome.cz/atlas. Atlas je
vytvářen jako společné dílo tvůrčího týmu odborníků
různých profesí – lékařů, programátorů, systémových inženýrů a výtvarníků. Projekt atlasu je otevřený – jeho výsledky v českém jazyce chceme na internetu
volně zpřístupnit všem zájemcům, a při jeho vývoji uvítáme spolupráci se všemi, kdo se budou chtít podílet na
jeho postupném budování.
Ukažme si nyní, co vytváření takové interaktivní výukové pomůcky vyžaduje, neboli – "co je za oponou" tvorby
výukových simulátorů.
S c é n á r i s t é v ý u ko v ýc h p r o g r a m ů
Obdobně jako sebelepší učebnice zcela nenahradí učitele, tak ho nevytlačí ani seberafinovanější výukový program. A stejně tak jako klíčovým faktorem pro úspěch
vysokoškolských učebnic je schopnost jejich autorů
názorně a věcně správně vyložit složitou látku, tak pro
zdar výukového programu je nejdůležitější jeho kvalitní scénář. Napsat dobrý učební text vysvětlující složité procesy však není jednoduché a veškeré pomůcky
(multimédia, interaktivní animace, simulační modely
apod.) – tedy vše co si lze představit pod donekonečna
omílaným slovem e learning, jsou bez dobrého scénáře
vlastního výukového programu či bez zkušeného učitele, který ví jak složitý simulační model pedagogicky
využít, jen pouhou módní ozdobou.
V případě využití multimediálních animací je podkladem pro tvorbu scénáře nejen (hyper)textová část, ale,
obdobně jako při produkci kresleného filmu, i jakýsi
"storyboard" naznačující výtvarníkům jaké mají vytvářet animované obrázky.
Složitější to je ovšem při využití simulačních modelů.
Tam nestačí jen namalovat návrhy obrázků. Je zapotřebí nejprve vytvořit vlastní simulační model. Obdobně, jako je teoretickým podkladem letového simulátoru
více méně realistický matematický model letadla, je
v pozadí lékařského simulátoru matematický model lidského organismu (resp. nějakého jeho subsystému).
Fo r m a l i z a c e f y z i o l o g i c k ýc h v z t a h ů
Při studiu dynamiky regulačních vztahů a pochopení
vzájemných dynamických souvislostí fyziologických
regulačních vztahů často jen slovní popis a "selský
61
MEFANET report 01
rozum" nestačí. Pro kvantifikované vyjádření dynamických vztahů je zapotřebí tyto vztahy formalizovat,
tj. vyjádřit je pomocí rovnic matematického modelu.
Formalizace, tj. převedení čistě verbálního popisu příslušné sítě vztahů na popis ve formalizovaném jazyce
matematiky, umožňuje zkoumat chování formálně popsaného systému pomocí formálních pravidel – např.
řešením rovnic matematického modelu.
Obdobně jako fyzika popisuje přírodní zákonitosti pomocí matematických vzorců a soustav rovnic (a popis
chování fyzikálního světa je výsledkem řešení těchto
rovnic), tak i systémový fyziolog se snaží vyjádřit fyziologické regulace pomocí matematických vztahů jako
matematický model fyziologické reality. To obvykle
vede na popis prostřednictvím soustavy diferenciálních
rovnic (jejichž "ruční" řešení bývá obtížné a často až
prakticky nemožné). Pokud ale tyto rovnice převedeme
do formy programu pro počítač, můžeme pak přenechat "dřinu strojům" – a na počítači sledovat průběhy
hodnot jednotlivých proměnných, které zobrazují chování modelovaného systému jako výsledek řešení rovnic
matematického modelu. Na počítači můžeme provádět
s modelem nejrůznější experimenty. Průběhy hodnot
těchto proměnných v čase nahrazují – tj. simulují chování skutečného fyziologického organismu. V tom je
právě podstata využití tzv. simulačních modelů (tj. matematických modelů, implementovaných na počítači).
Simulační model, pochopitelně, nenahradí biologický
experiment (jak tvrdí někteří fanatičtí bojovníci proti
pokusům na zvířatech). Simulační model je ale velice
efektivním nástrojem na dedukci a ověřování hypotéz – umožňuje sledovat chování složitého dynamického systému v čase v závislosti na nejrůznějších vstupech
a porovnávat průběhy hodnot jednotlivých proměnných
modelu s hodnotami získanými pozorováním a měřením biologického originálu.
Kritériem pro odmítnutí nebo neodmítnutí hypotézy je
vždy porovnání chování modelu s empiricky a experimentálně získaným chováním biologického originálu.
Pokud dosáhneme (na zvolené úrovni přesnosti) dostatečné shody chování modelu s chováním biologického
originálu (hovoříme o tzv. verifikaci modelu), pak můžeme (s předem jasným omezením přesnosti) využít
model k predikci – např. v klinice pro propočítávání
kinetiky podaných léků nebo k propočítávání dekompresních zastávek při sportovním potápění atd.
Je to obdobné jako ve fyzice – pokud chování fyzikálního modelu dobře predikuje (na dané úrovni přesnosti)
chování fyzikálních experimentů, můžeme dané vztahy
ve fyzikálních vzorcích využít pro nějaké praktické účely – např. pro počítání statiky budov a další technické
aplikace.
Fyzika využívá formalizace dávno – již od dob Newtona – a uplatnění formalizovaného vyjádření fyzikálních
zákonů je podstatou moderních technických aplikací.
Uplatnění formalizace v biologických a lékařských vědách však ani zdaleka není běžné. Oproti technickým vědám, fyzice či chemii má zde biologie a medicína určitý
handicap. Jestliže formalizace ve fyzice začala již někdy
v sedmnáctém století, proces formalizace lékařských
a biologických věd je z důvodů složitosti a komplexnosti
biologických systémů relativně opožděn a postupně přichází až s kybernetikou a výpočetní technikou.
Ve fyziologii se s formalizovanými popisy setkáváme již
od konce šedesátých let dvacátého století (od průkop-
62
nických prací Grodinse a spol., [7] popisujících respiraci). Předělem byl počátek sedmdesátých let, kdy rozvoj
výpočetní techniky a programovacích jazyků ve větší
míře umožnil praktické vytváření a testování simulačních modelů fyziologických systémů. Určitým mezníkem byl již v úvodu zmíněný popis cirkulace Guytonem
a spol. z roku 1972 [8], který byl prvním rozsáhlejším
modelem, snažícím se zachytit širší fyziologické souvislosti oběhového systému, dýchání a ledvin. Koncem
sedmdesátých let se v odborné literatuře postupně objevují rozsáhlé simulační modely, snažící se integrativně
zachytit spletité vztahy mezi regulací ledvin, dýchání,
oběhu, iontového složení, acidobazické rovnováhy a dynamiky tělních tekutin pomocí soustav nelineárních diferenciálních rovnic [2, 4, 13].
Bouřlivý rozvoj modelování biologických systémů však
přichází zejména v posledních letech v souvislosti s novými možnostmi, které přináší technický pokrok v oblasti výpočetní techniky a Internetu. Stoupá počet prací
využívajících počítačové modely pro vyhodnocování
a interpretaci výsledků experimentálních dat zejména při studiu nervové tkáně, respirace, oběhu a ledvin. Byl odstartován velký rozvoj v oblasti formalizace
fyziologických systémů.
Tak jako teoretická fyzika se snaží interpretovat výsledky experimentálního výzkumu ve fyzikálních vědách,
tak i nový fyziologický směr základního výzkumu,
nazývaný někdy "integrativní fyziologie", se snaží
o formalizovaný popis vzájemného propojení fyziologických regulací. Metodickým nástrojem jsou
zde počítačové modely. Aktivity v této oblasti se snaží
koncentrovat projekt PHYSIOME [3, 11, 12] pod záštitou International Union of Physiological Sciences
(http://www.physiome.org). V rámci Evropské Unie
je současné době vyhlášen celoevropský projekt EUROPHYSIOME
(http://www.europhysiome.org/).
Jedním z cílů tohoto projektu je využití simulačních
modelů pro výuku.
Počítačové modely z oblasti biologie a medicíny nyní
stále častěji nacházejí přímé praktické uplatnění v sofistikovaných výukových programech a lékařských
simulátorech, jejichž význam s rozšiřováním počítačů
a Internetu dále poroste.
D v a t y p y p r o b l é m ů p ř i t v o r b ě v ý u ko v ýc h
simulátorů
Při vytváření simulátorů a výukových simulačních her
je nutno řešit dva typy problémů:
1. Tvorba simulačního modelu – vlastní teoretická
výzkumná práce, jejímž podkladem je formalizace
fyziologických vztahů vyjádřená matematickým modelem. Výsledkem by měl být verifikovaný simulační
model, který na zvolené úrovni přesnosti dostatečně
věrně odráží chování modelované reality.
2. Tvorba vlastního multimediálního simulátoru, resp.
tvorba výukového programu využívajícího simulační
hry – je praktická aplikace teoretických výsledků, která navazuje na výsledky řešení výzkumu. Podkladem
simulátoru jsou vytvořené (a verifikované) matematické modely. Zde jde o náročnou vývojovou práci,
vyžadující skloubit nápady a zkušenosti pedagogů,
vytvářejících scénář výukového programu, kreativitu
výtvarníků, vytvářejících interaktivní multimediální
komponenty a úsilí programátorů, kteří "sešijí" výsledné dílo do konečné podoby.
MEFANET report 01
Každý z těchto problémů má svou specifiku a vyžaduje
proto použít zcela odlišné vývojové nástroje.
Zatímco vytvoření vlastního simulátoru je spíše vývojářskou a programátorskou prací, formalizace fyziologických vztahů a vytváření simulačního modelu není
vývojářský, ale (poměrně náročný) výzkumný problém,
jehož efektivní řešení vyžaduje použít adekvátní nástroje pro podporu tvorby simulačních modelů.
Tvorba simulačního modelu i tvorba simulátoru spolu
úzce navzájem souvisejí (viz obr. 6) – předpokladem
pro tvorbu výukového simulátoru je dostatečně dobře
verifikovaný model, na druhé straně, využití simulátoru
ve výuce přináší nové požadavky na vytvoření nových či
modifikaci stávajících simulačních modelů.
A protože pro tvorbu simulačních modelů a pro vytváření vlastního simulátoru používáme odlišné vývojové nástroje, musíme pak zajistit dostatečně flexibilní přenos
výsledků z jednoho vývojového prostředí do druhého.
Tak např. modifikujeme-li simulační model v některém
nástroji pro tvorbu simulačních modelů, je výhodné zajistit, aby se změny v modelu bez větších potíží mohly
rychle promítnout do aktualizace těchto změn ve vlastním simulátoru. K usnadnění tohoto přenosu je vhodné
si vytvořit i vlastní softwarové pomůcky.
V naší laboratoři jsme při vytváření a verifikaci simulačních modelů sáhli po profesionálních nástrojích firmy
Mathworks (Matlab, Simulink a příslušné aplikační
knihovny) a v poslední době i po velmi nadějném simulačním jazyku Modelica, pro něž dotváříme i některé
vlastní komponenty vývojového prostředí.
Při vytváření vlastního simulátoru využíváme standardní vývojová prostředí pro tvorbu a vývoj interaktivní
grafiky (např. Adobe Flash) a nástroje pro tvorbu softwarových a webových komponent (např. Visual Studio .NET, prostředí pro vývoj v jazyce Java jako třeba
NetBeans, prostředí pro návrh a programování interaktivní grafiky v jazyce ActionScript jako je např. Adobe
Flex aj.). V minulosti jsme výukové simulátory vyvíjeli
také pomocí nástroje pro vizualizaci průmyslových
aplikací Control Web.
Pro propojení obou skupin vývojových nástrojů jsme
vyvinuli vlastní softwarové nástroje pro automatizaci
přenosu simulačních modelů, vytvořených v prostředí
Matlab/Simulink do vývojových prostředí Microsoft
Visual Studio .NET a do Control Web [17, 22]. V současné době vyvíjíme softwarové nástroje pro zefektivnění tvorby simulátorů založených na simulačních
modelech vyvíjených v prostředí simulačního jazyka
Modelica. Tyto programy jsou k dispozici všem zájemcům na vyžádání (e-mailem na adresu autora).
Te o r e t i c k ý z á k l a d s i m u l a č n í c h h e r – s i m u lační modely
V sedmdesátých a osmdesátých letech minulého století
autoři často volili pro grafický popis modelů fyziologických systémů grafickou syntaxi navrženou Guytonem
– tak např. Amosov a spol. v roce 1977 [2] publikovali monografii v níž stejnou syntaxí popsali propojený
model cirkulace, respirace, ledvin, elektrolytové rovnováhy a termoregulace. Obdobně v roce 1979 tuto syntaxi využil Ikeda a spol. [13] ve svém modelu vnitřního
prostředí.
Později, s rozvojem výpočetní techniky a softwarových
nástrojů, se pro grafické zobrazení fyziologických re-
gulačních vztahů začaly využívat nástroje simulačních
vývojových prostředí.
Jedním z nich je např. vývojové prostředí Matlab/Simulink od firmy Mathworks, které umožňuje postupně sestavovat simulační model z jednotlivých komponent – jakýchsi softwarových simulačních součástek,
které se pomocí počítačové myši mezi sebou propojují
do simulačních sítí. Obdobně jako u výše zmíněného
Guytonova modelu i tyto sítě svými vodiči a součástkami na první pohled vzdáleně připomínají elektronické
obvody. Rozdíl je ovšem v tom, že místo elektrických
signálů v propojovaných vodičích proudí informace.
V jednotlivých uzlech (sumátorech, integrátorech, násobičkách, děličkách atd.) pak dochází ke zpracování
přiváděných informací a k trasformaci do výstupní informace, která je rozesílána výstupními vodiči do dalších prvků sítě.
V Simulinku tak můžeme názorně graficky vyjádřit
i velmi složité matematické vztahy. Vytvořená síť ovšem
není jen přehledný obrázek. Je to zároveň i funkční simulační model. K jednotlivým vodičů této sítě můžeme myší připojovat virtuální displeje či osciloskopy.
Po spuštění modelu pak můžeme jejich prostřednictvím
sledovat číselnou či grafickou podobu hodnot veličin,
které proudí v jednotlivých vodičích.
Jako příklad můžeme uvést námi vytvořenou implementaci klasického Guytonova modelu cirkulace [19].
Vnější vzhled jsme se snažili zachovat zcela stejný,
jako v původním grafickém schématu – rozložení, rozmístění vodičů, názvy veličin i čísla bloků jsou stejné.
Simulinkové počítací prvky jsou velmi podobné prvkům, které pro formalizované vyjádření fyziologických
vztahů použil Guyton (obr. 7). Rozdíl je jen v grafickém
tvaru jednotlivých prvků – tak např. násobička a dělička
je v Simulinku realizována čtverečkem a nikoli "prasátkem" jako v Guytonově notaci. Blok integrátoru zobrazený v Simulinku nemá na sobě grafický znak integrálu, ale výraz "1/s" (což souvisí s notací tzv. Lapaceovy
transformace). V simulinkovém modelu jsme využili
i přepínače, kterými můžeme odpojovat nebo zapojovat jednotlivé subsystémy a regulační smyčky i za běhu
modelu.
Simulační vizualizace starého schématu ale zdaleka
nebyla úplně snadná – v originálním obrázkovém schématu modelu jsou totiž chyby. V nakresleném obrázku
to nevadí, pokusíme-li se ho ale oživit v Simulinku, pak
se chyba projeví v lepším případě neadekvátním chováním modelu, v horším se model znestabilní, hodnoty proměnných modelu začnou divoce kmitat a model
zkolabuje jako celek. Chyby byly drobné – přehozená
znaménka, dělička místo násobičky, prohozené propojení mezi bloky, chybějící desetinná tečka u konstanty
atd. – ale stačily na to, aby model nefungoval. Při znalosti fyziologie a systémové analýzy se na chyby, při troše námahy, dalo přijít (obr. 8).
Je zajímavé, že tento složitý obrázek byl mnohokrát přetiskován do různých publikací a nikdo si nedal práci tyto
chyby odstranit. Ostatně, v době, kdy obrázkové schéma
vznikalo ještě neexistovaly kreslící programy – obrázek
vznikal jako složitý výkres – a ruční překreslování složitého výkresu ani zdaleka není snadné. Možné je i to,
že autoři opravovat chyby ani příliš nechtěli – kdo si dal
práci s analýzou modelu, snadno obrazové "překlepy"
odhalil, kdo by chtěl jen tupě opisovat, měl smůlu. Konec konců, ve své době autoři rozesílali i zdrojové texty
63
MEFANET report 01
programů svého modelu v programovacím jazyce Fortran – takže pokud někdo chtěl pouze testovat chování
modelu, nemusel nic programovat (maximálně pouze
rutinně převedl program z Fortranu do jiného programovacího jazyka).
Námi vytvořená Simulinková realizace (opraveného) Guytonova modelu (obr. 9–11) je zájemcům
k dispozici ke stažení na adrese www.physiome.cz/
guyton/. Na této adrese je i naše Simulinková realizace
mnohem složitější verze modelu Guytona a spol. z pozdějších let. Zároveň je zde i velmi podrobný popis všech
použitých matematických vztahů se zdůvodněním.
K dispozici je i výpis zdrojového textu původního modelu z roku 1986 ve Fortranu.
Od simulační pav učiny k simulačním
čipům
Spletitá pavučina počítacích bloků Guytonova modelu, implementovaná v prostředí Simulinku působí sice
svou složitostí na první pohled impozantně, pro vlastní
práci s modelem je však dosti nepřehledná.
Při výstavbě našich vlastních modelů se nesnažíme stavět mraveniště bloků prošpikovaných svazky informačních vodičů, v nichž se uživatel (a nezřídka i sám tvůrce
modelu) velmi snadno ztrácí. Snažíme se proto, pokud
to jde, model dekomponovat do přehledných částí. Využíváme toho, že jednotlivé části simulační sítě se dají
hierarchicky seskupovat do subsystémů s uživatelsky
definovanými vstupy a výstupy, v masce subsystému
se dají vstupy a výstupy stručně popsat. Na kliknutí je
možno k subsystému zpřístupnit i rozsáhlou dokumentaci, kde je možno bez omezení podrobněji popsat i teoretické pozadí vytvořeného subsystému.
Takto pojaté subsystémy na první pohled připomínají
elektronické integrované obvody, neboť na jednotlivých "pinech" těchto "simulačních čipů" jsou příslušné vstupy a výstupy, které je možno propojovat do sítě
s dalšími bloky a subsystémy (obr. 12). Struktura simulačního modelu vyjádřeného jako síť propojených simulačních čipů je pak mnohem přehlednější a srozumitelnější (obr. 13, 14).
Důležité je, že nakreslené struktury jsou v prostředí
programu Simulink "živé" – pomocí počítačové myši
lze na jednotlivé vstupy jednotlivých simulačních čipů
přivést konstantní nebo proměnné hodnoty vstupních veličin a na výstupech pak snímat v numerickém
či grafickém vyjádření jednotlivé hodnoty výstupních
proměnných.
Vnitřní struktura "čipu" může být při jeho použití zcela
skryta, uživatel musí pouze vědět, jakou vstupní či výstupní veličinu příslušný "pin" reprezentuje. Po¬mocí
myši může uživatel přenést čip z příslušné knihovny
do vytvářeného modelu, kde příslušné vstupy a výstupy
propojí. Chování "čipu" lze také snadno testovat, stačí
k jeho vstupům přivést příslušné definované průběhy
hodnot vstupních veličin a na jeho výstupy připojit příslušné virtuální osciloskopy či displeje.
Každý čip může "uvnitř sebe" obsahovat další propojené "simulační čipy". Obsáhlý simulační čip tak může
mít poměrně složitou hierarchii (obr. 15–16).
Simulační čipy je možno ukládat do knihoven a opětovně používat v různých modelech (obr. 17).
Tvorba simulačních modelů v biomedicínských vědách
je nezřídka týmová práce. Na jedné straně stojí systémový analytik – expert na formalizaci a tvorbu simu-
64
lačních modelů (teoretický fyziolog, vytvářející formalizovaný popis fyziologického systému a testující jeho
chování pomocí simulačního modelu). Na druhé straně
často stojí klasický experimentální fyziolog či klinik,
pro kterého je popis fyziologického systému pomocí
diferenciálních rovnic španělskou vesnicí, ale který dokáže snadno rozpoznat, nakolik odpovídá chování počítačového simulačního modelu biologické realitě.
Podle našich zkušeností může problém dorozumění mezi těmito dvěma skupinami specialistů zásadně
usnadnit důsledné využívání simulačních čipů při výstavbě simulačního modelu. Znamená to v prvé řadě
věnovat důslednou pozornost dokumentaci. Simulační
čipy samy o sobě mohou být i aktuální elektronickou
dokumentací k vytvářeným modelům (viz obr. 17).
Nejenže v čelní masce simulačního čipu je stručný popis všech vstupů a výstupů a "vnitřek" simulačního čipu
graficky reprezentuje síť použitých vztahů, na kliknutí
myší lze u každého softwarového simulačního čipu také
otevřít okno nápovědy s dalším podrobnějším popisem.
Simulační čipy tedy umožňují pečlivě vést aktuální dokumentaci v elektronické podobě ke každému použitému subsystému při zachování veškeré funkčnosti. Aby
mohl jednotlivé komponenty využívat i ten, kdo danou
část modelu nevytvářel, je podrobná a zároveň přehledná dokumentace nezbytná a čas strávený nad vypisováním spousty informací do masek jednotlivých subsystémů reprezentujících simulační čipy se pak zaručeně
vyplatí [Kofránek a spol, 2002].
Výhodou za trochu té dřiny je porozumění – experimentální fyziolog nemusí rozumět vnitřnímu uspořádání
simulačního čipu, porozumí ale tomu, jaké chování má
od fyziologického subsystému, který čip reprezentuje,
očekávat. Fyziolog je nadto schopen porozumět i struktuře složené z propojených simulačních čipů – ze struktury modelu přímo vidí, které veličiny spolu vzájemně
souvisejí (a ze znalosti fyziologie i dovede odhadnout,
co a na jaké úrovni bylo zanedbáno).
O d r o v n i c m o d e l u k t e c h n o l o g i c ké m u
know how
V sedmdesátých a osmdesátých letech dvacátého století
bylo časté, že autoři počítačových modelů na vyžádání
posílali zdrojové texty počítačových programů, kterými
byly tyto modely realizovány.
Dnes se už zdrojové programy rozsáhlých simulačních
programů získávají mnohem obtížněji. Rozvoj výpočetní techniky totiž umožnil praktické uplatnění simulačních modelů například v lékařských počítačových
trenažérech a výukových programech využívajících
simulační hry. Biomedicínské modely mají své místo
i v technologických zařízeních – od kapesních počítačů
pro sportovní potápěče až po řídící jednotky v sofistikovaných lékařských přístrojích.
S možností komerčního využití souvisí i určitá změna
náhledu na formalizovaný popis fyziologické reality, který je podkladem výukových simulačních modelů.
Podrobný formalizovaný popis (ve formě rovnic, nebo,
ještě lépe, algoritmů zapsaných ve formě zdrojového
textu v nějakém programovacím jazyce) se proto z čistě vědeckého tématu často stává (před potenciální
konkurencí utajovaným) technologickým know how.
Jestliže ještě koncem osmdesátých let bylo běžné získat
na písemnou žádost přímo výpis příslušného fortranského programu, nyní to již většinou není možné.
MEFANET report 01
V naší laboratoři biokybernetiky se zabýváme tvorbou simulačních modelů v rámci výzkumu dotovaného z veřejných zdrojů i díky spolupráci s komerčním
sektorem. Struktura námi vytvářených modelů, dotovaných z veřejných prostředků je veřejná. V rámci výzkumných grantů a rozvojových projektů jsme
mimo jiné vytvořili knihovnu fyziologických modelů
v prostředí Simulink-Matlab, ve formě "simulačních
čipů". Tato knihovna byla vytvořena jako Open-Source produkt, byla periodicky aktualizována a je k dispozici zájemcům na našich internetových stránkách
(www.physiome.cz/simchips).
T vorba simulátorů pro simulační hr y
Vývojové nástroje pro tvorbu simulačních modelů jsou
určeny pro specialisty. Pro běžného uživatele, který
si chce se simulačním modelem jen "pohrát", se příliš
nehodí. I když v prostředí těchto nástrojů je možné naprogramovat poměrně příjemné uživatelské rozhraní
k ovládání vytvořeného modelu, pro účely uplatnění
simulačního modelu ve výuce medicíny je toto rozhraní
až příliš komplikované a navíc vyžaduje zakoupení dalších (poměrně drahých) licencí.
Student medicíny a lékař vyžaduje uživatelské rozhraní
simulátoru připomínající spíše obrázky a schémata obdobná, jako v knižních publikacích typu atlasu fyziologie či atlasu patologické fyziologie.
Proto je nutné výukový simulátor včetně jeho multimediálního uživatelského rozhraní naprogramovat zvlášť.
Možnosti uživatelského ovládání simulátoru jsou pak
pro cílovou skupinu uživatelů podstatně přirozenější.
Nezastupitelnou komponentou výukového simulátoru je i část programu, která realizuje simulační model.
Známe-li strukturu simulačního modelu, (vytvořeného
v některém z vývojových nástrojů pro tvorbu simulačních modelů – např. Matlab/Simulink) pak už zbývá
"hlavoruční dřinou" přetvořit strukturu modelu do podoby počítačového programu ve zvoleném programovacím jazyce (např. v C#).
Dále je zapotřebí pro vytvoření uživatelského rozhraní
nakreslit interaktivní multimediální komponenty. Tyto
komponenty je pak nutno propojit se simulačním modelem na pozadí simulátoru.
Pro vývoj simulátorů ve výukových programech jsme
se proto museli poohlédnout po jiném vývojovém prostředí než je Matlab a Simulink. Po určitém váhání
jsme pro tvorbu vlastních simulátorů nejprve sáhli po
nástrojích využívaných při tvorbě průmyslových
aplikací (měřících ústředen a velínů) [16]. Vedly nás
k tomu především dva důvody:
1. Se simulačním modelem chceme v simulátoru fyziologických funkcí zacházet obdobně, jako se v průmyslu z velínu řídí složité technologické zařízení:
chceme číst (a v nejrůznější grafické či číselné podobě zobrazovat) množství nejrůznějších měřených dat
(jako v průmyslové měřící ústředně) a zároveň chceme jednoduchým způsobem (stiskem tlačítek, otáčením knoflíků, popotahováním táhel apod.) simulační
model ovládat (obdobně jako se z velínu řídí nějaká
technologie).
2. Druhým důvodem, proč jsme sáhli po softwarovém
nástroji z průmyslu, je spolehlivost. Požadavky spolehlivosti, kladené na nástroje, jejichž pomocí se vyvíjejí průmyslové řídící aplikace, jsou obvykle řádově
vyšší než u obecných programovacích nástrojů.
Nástrojů pro design průmyslových aplikací je na světovém trhu nemálo. Jejich ceny jsou ovšem, na rozdíl
od obecných softwarových nástrojů, zpravidla velmi
vysoké.
Paradoxem je, že velmi dobrý nástroj lze získat velmi
levně, a to přímo od domácího výrobce. Zlínská akciová
společnost "Moravské přístroje" již léta vyvíjí systém
pro tvorbu průmyslových aplikací s názvem "Control
Web". Jde přitom o kvalitní vývojový systém: na letáčku
jejich skandinávského distributora stojí "Svensk kvalitet (till Tjeckiska priser)" – "Švédská kvalita (za české
ceny)". Švédové jsou velmi domýšliví na kvalitu svých
výrobků a pokud o vývojovém nástroji Control Web
z Valašska veřejně prohlašují, že dosahuje "švédské kvality", je to velké ocenění skupiny tvůrců, kteří na tomto
produktu usilovně pracují již od počátku devadesátých
let.
Control Web je především určen pro vývoj průmyslových vizualizačních a řídících aplikací na platformě
WIN32 – sběr, ukládání a vyhodnocování dat, tvorba rozhraní člověk-stroj aj. (viz http://www.mii.cz).
Základními stavebními kameny uživatelské aplikace
vytvářené v prostředí Control Web jsou virtuální přístroje (komunikující mezi sebou pomocí proměnných
a zpráv). Měřené hodnoty z vnějšího světa jsou v průmyslových aplikacích virtuálním přístrojům zprostředkovány přes vstupní kanály, řídící signály mohou
virtuální přístroje posílat do okolí pomocí výstupních
kanálů.
Pro vývoj uživatelského rozhraní poskytuje systém
Control Web velmi výkonné prostředky. Tak např.
z palety virtuálních přístrojů je možno snadno tažením
myši vytáhnout potřebný přístroj a umístit ho na příslušný panel a v interaktivním dialogu mu nastavit hodnoty jeho příslušných atributů, nadefinovat jeho lokální
proměnné, či individuální procedury (metody objektu)
apod.
Abychom mohli využít vývojářské pohodlí systému
Control Web, museli jsme použít následující, vcelku
jednoduchý, trik. V průmyslových aplikacích Control
Web komunikuje (přes příslušné softwarové kanály)
přes ovladač příslušné měřící/řídící karty s průmyslovým technologickým zařízením.
Je ovšem možné napsat speciální ovladač, jehož interní součástí je simulační model. Tento ovladač je
schopen komunikovat (přes softwarové kanály) s objekty systému Control Web, ale na rozdíl od ovladačů
ke skutečným měřícím a řídícím kartám nekomunikuje
s jejich hardwarem, ale komunikuje se simulačním
modelem. Pokud se ovladač napíše dobře, je systém
Control Web "ošálen": vstupní kanály (k zobrazovacím
prvkům na monitoru) považuje za skutečné měřené signály někde z technologického okolí počítače, zatímco
ve skutečnosti to jsou výstupní proměnné simulačního
modelu. A také v opačném směru je Control Web přesvědčen, že výstupní kanály, které odcházejí od řídících
prvků systému Control Web, nastavují přes příslušný
ovladač nějaké aktivní prvky průmyslového zařízení, ale
ony namísto toho mění vstupy simulačního modelu.
Abychom usnadnili vývoj ovladačů jakési "virtuální
měřící/řídící karty", které obsahují simulační model
a nemuseli tento ovladač pro každý model psát v programovacím jazyce C "ručně", vyvinuli jsme speciální
program, který nám umožní vývoj tohoto ovladače
automatizovat. Máme tedy nyní možnost bezpro-
65
MEFANET report 01
středně ze simulinkového schématu generovat
zdrojový text příslušného virtuálního ovladače v C.
Tím je možné jednoduše a rychle modifikovat ovladač
pro prostředí Control Web při nejrůznějších úpravách
a nových verzích simulačního modelu.
V prostředí Control Web jsme např. vytvořili simulátor
Golem (Kofránek a spol 2001).
Další platformou pro vývoj simulátorů, kterou nyní
v naší laboratoři využíváme převážně, je platforma
Microsoft .NET a programovací prostředí Microsoft
Visual Studio .NET, které, zejména ve své poslední
verzi, poskytuje velké možnosti pro programátorskou
práci.
V tomto prostředí již nejsme omezeni "předpřipravenými" prvky uživatelského rozhraní jako v prostředí
Control Webu a přitom můžeme využívat veškerou sílu
moderního nástroje pro tvorbu softwarových aplikací,
na druhé straně si však musíme řadu prvků vytvářené
aplikace naprogramovat sami.
Abychom si vytváření simulátorů ulehčili (a aby nebylo
nutné ve Visual Studiu .NET "ručně" programovat již
odladěný simulační model) vyvinuli jsme i zde speciální
softwarový nástroj [17, 22], který automaticky ze Simulinku vygeneruje simulační model ve formě komponenty pro prostředí .NET (viz obr. 20).
Po h y b l i vé a n i m a c e j a ko l o u t k y n a n i t í c h
simulačních modelů
Pro vytváření uživatelského rozhraní výukového simulátoru je velmi vhodné simulátor navenek reprezentovat
jako pohyblivý obrázek. Proto simulační model propojujeme s multimediální animací vytvořenou pomocí
Adobe Flash [17].
Pro profesionální výsledný vzhled aplikace je nezbytné,
aby vlastní animace vytvářel výtvarník – výsledky jsou
neporovnatelně lepší, než když animace vytváří graficky nadaný programátor. Znamenalo to ovšem věnovat
určité úsilí výuce výtvarníků, kteří musí zvládnout práci
s nástroji pro tvorbu interaktivní grafiky. Takto vzdělaných výtvarníků je ale na trhu práce kritický nedostatek. Proto jsme již před lety začali úzce spolupracovat
s výtvarnou školou Václava Hollara a na této škole jsme
otevřeli "laboratoř interaktivní grafiky" jako naše detašované pracoviště. Iniciovali jsme také založení Vyšší
odborné školy, která vyučuje v tříletém studiu předmět
"interaktivní grafika". Pracovníci naší laboratoře se
v této Vyšší odborné škole mimo jiné podílejí i na výuce.
Animované obrázky mohou být řízeny výstupy implementovaného simulačního modelu a graficky reprezentovat význam číselných hodnot – např. schematický
obrázek cévy se může roztahovat nebo komprimovat,
plicní sklípek může hlouběji či mělčeji "dýchat", ručička měřícího přístroje se může pohybovat a průběžně
zobrazovat hodnotu nějaké výstupní proměnné modelu
čtené z běžícího simulačního modelu na pozadí.
Na druhé straně můžeme přes vizuální prvky vytvořené
pomocí Adobe Flash (nejrůznější tlačítka, knoflíky, táhla apod.) do simulačního modelu zadávat nejrůznější
vstupy.
Příklady simulátorů, vytvořených v prostředí Control
Web a v prostředí Visual Studio .NET s propojením
na flashové animace jsou uvedeny na obr. 21 a 22.
V případě složitější architektury může být logika
propojení flashové animace a simulačního modelu
poměrně složitá, proto je vhodnější mezi vrstvu vizu-
66
álních elementů a vrstvu simulačního modelu vložit
řídící vrstvu, která na jednom místě řeší veškerou logiku komunikace uživatelského rozhraní s modelem
a kde je ukládán i příslušný kontext. V literatuře se
hovoří o tzv. MVC architektuře výstavby simulátorů
(Model – View – Controller).
Toto uspořádání je nezbytné zejména při složitějších
modelech a simulátorech, jejichž uživatelské zobrazení
je reprezentováno mnoha virtuálními přístroji na více
propojených obrazovkách. Výhody tohoto uspořádání
zvláště vyniknou při modifikacích jak modelu, tak i uživatelského rozhraní (obr. 23).
Při návrhu řídící vrstvy, propojující vrstvu simulačního
modelu s uživatelským rozhraním, se nám velmi osvědčilo využít propojené stavové automaty (jejichž pomocí je možno zapamatovat příslušný kontext modelu
a kontext uživatelského rozhraní). Vytvořili jsme proto
speciální softwarový nástroj, pomocí kterého můžeme
propojené stavové automaty vizuálně navrhovat, interaktivně testovat jejich chování a automaticky generovat
zdrojový kód programu pro prostředí Microsoft .NET
[22]. Tento nástroj umožňuje zefektivnit programování
propojek simulačního modelu s vizuálními objekty uživatelského rozhraní ve výukovém simulátoru.
Simulační hr y na WEBu
Další technologický problém, který bylo při tvorbě výukových simulátorů nutno vyřešit, bylo proto nalezení
způsobu, jak včlenit simulátory jako součásti internetových e-learningových aplikací. Při jeho řešení je možno
postupovat několika způsoby. Jedním z nich je spouštění modelu na serveru a na klientský počítač posílat
pouze výstupy z modelu. Znamená to ale pro každého
připojeného uživatele na serveru individuálně spouštět
jednu instanci (jeden exemplář) simulačního modelu. Kromě toho, zvláště u vzdálenějších a pomalejších
připojení, je nezanedbatelné časové zpoždění mezi výstupem simulačního modelu na serveru a vykreslením
výsledku na počítači klienta. Proto jsme se rozhodli jít
spíše cestou spouštění simulačních modelů na počítači
klienta.
U jednodušších modelů je možno využít interpetovaný
ActionScript ve Flashi v němž je naprogramován simulační model. Složitější simulační modely už ale vyžadují
kompilovaný simulátor.
Naše řešení [22] je zobrazeno na obr. 24. Uživatel si
nainstaluje platformu .NET (pokud ji již nemá). Dále
si na svém počítači nainstaluje speciální klientský
program – "dispečer simulačních modelů". V případě
potřeby se dispečer rozšíří i o runtime pro prostředí
ControlWeb, které zajistí možnost spouštění modelů
v tomto prostředí vytvořených. Webová e-learningová
aplikace umožní stáhnout potřebné soubory simulačního modelu a dispečer simulačních modelů je spustí.
Dispečer tak funguje obdobně jako prohlížeč obrázků,
jen s tím rozdílem, že místo zobrazení obrázků spustí
simulační program.
Zabalení simulačních her do multimediálního v ýkladu
Jedním z projektů, který vytváříme v naší laboratoři
je již výše zmíněný Atlas fyziologie a patofyziologie
(viz www.physiome.cz/atlas). Atlas [18] je průběžně
vytvářená internetová multimediální výuková pomůcka z oblasti normální a patologické fyziologie, která s
MEFANET report 01
využitím simulačních modelů pomáhá vysvětlit funkci
a poruchy jednotlivých fyziologických systémů.
Simulační hry (obr. 25) jsou součástí e-learningových
multimediálních výukových lekcí, jejichž podkladem
je scénář vytvořený zkušeným pedagogem. Pedagog
navrhuje vysvětlující text a s textem propojené doprovodné obrázky a animace. Animace jsou vytvářeny
v prostředí Adobe Flash v úzké spolupráci pedagoga
s výtvarníkem.
Text je poté namluven a synchronizován se spouštěním
jednotlivých animací a s odkazy na simulační hry. Jednotlivé komponenty jsou kompletovány do výukových
lekcí.
Pro vytváření a kompletaci multimediálních výukových
lekcí využíváme softwarové prostředí serveru Adobe
Connect (dříve Macromedia Breeze).
Projekt Atlasu fyziologie a patofyziologie je otevřený.
Veškeré výukové texty, interaktivní animace a simulační
modely včetně jejich zdrojových kódů jsou k dispozici
všem zájemcům. Jako open-source jsou i veškeré námi
vytvořené podpůrné softwarové nástroje, umožňující vygenerování jádra simulátorů z prostředí Matlab/
Simulink a distribuci simulátorů prostřednictvím Internetu. Náš vývojový tým uvítá spolupráci s dalšími
pracovišti na dalším rozšiřování atlasu a vytvoření jeho
jazykových mutací.
Od entuziazmu k technologii a multidisciplinární spolupráci
Navzdory tomu, že se využití počítačů ve výuce stalo
tématem řady konferencí, odborných i popularizačních
článků, přesto, že hardwarové možnosti i softwarové
nástroje dnes již dospěly do úrovně umožňující vytvářet
náročná interaktivní multimedia, k výraznému rozšíření multimediálních výukových programů ve výuce medicíny zatím nedošlo.
Příčin je několik.
• Za prvé, ukazuje se, že tvorba výukových programů
je podstatně náročnější na čas, lidské i materiální
zdroje, než je obvykle plánováno
• Za druhé – tvorba kvalitních medicínských výukových programů vyžaduje týmovou multidisciplinární
spolupráci zkušených pedagogů, lékařů, matematiků, fyziků, programátorů i výtvarníků.
• Konečně, pro kreativní propojení různých profesí,
podílejících se na tvorbě výukové multimediální aplikace, musí být k dispozici vhodně zvolené vývojové
nástroje (jejichž ovládnutí ale vyžaduje určité úsilí
a čas).
• Nároky stoupají, pokud na pozadí výukového programu má běžet simulační program, umožňující
interaktivní simulační hry – ve vývojovém týmu pak
musí být i odborníci, kteří jsou schopni navrhnout,
formalizovat a odladit příslušné modely (lékaři, matematici, fyzici a informatici).
Domníváme se, že nejdůležitějším výsledkem, kterého
se nám v naší laboratoři zatím podařilo dosáhnout je
vybudování multidisciplinárního týmu lékařů, matematiků, programátorů i výtvarníků, který je schopen výše
zmíněné bariéry překonat.
Mezioborový tým potřebuje nástroje pro usnadnění komunikace a kooperace práce na společně vytvářených
projektech. Pro podporu a koordinaci týmové spolupráce dnes existuje řada softwarových prostředků.
V naší laboratoři se nám osvědčilo využití open-source
nástroje WikiDoc, který umožňuje jednoduše využí-
vat webové rozhraní pro vzájemnou komunikaci členů
týmu. Pro letmý pohled do "kuchyně" našeho mezioborového týmu i pro seznámení s funkcí "wiki" – rozhraní
se čtenář může podívat na "wiki-web" naší laboratoře:
http://physiome.ct/wiki.
No v á v ý z v a i p ř í l e ž i t o s t p r o v y s o ké š ko l y
Současná epocha je charakterizována zásadními změnami v technologiích, které ve svém důsledku mění ekonomiku, společnost i způsob života. Původní soupeření
o tuny produktů přešlo do souboje o dokonalejší a rychlejší informace.
Vytváří se nový tržní segment, kde se obchoduje s nehmotným produktem, myšlenkami, nápady a knowhow. Pokrok v technologiích vytváří tlak na flexibilitu
pracovní síly a zvyšuje požadavek na průběžné rekvalifikace. Celoživotní vzdělávání se stává nutností ve stále
větším počtu oborů.
Vytváření a realizaci rekvalifikačních kurzů a výuky
v procesu celoživotního vzdělávání usnadňuje a podporuje využití informačních technologií. E-learning proto
umožňuje rozšířit kapacitu vysokých škol a zároveň jim
může přinést další příjmy z tvorby distančních rekvalifikačních a specializačních postgraduálních programů.
Z tohoto hlediska je e-learning pro vysoké školy nová
výzva, která bude vyžadovat velké úsilí, ale zároveň je
i velkou příležitostí pro jejich další rozvoj.
Zdá se, že pomalu končí doba, kdy vytváření výukových
programů bylo otázkou entuziasmu a píle skupin nadšenců. Tvorba moderních biomedicínských výukových
aplikací je náročný a komplikovaný projekt, vyžadující
týmovou spolupráci řady profesí – zkušených pedagogů vytvářejících základní scénář, tvůrců simulačních
modelů, lékařů, výtvarníků a programátorů. Aby tato
interdisciplinární kolektivní tvorba byla efektivní, je
nutno pro každou etapu tvorby využívat specifické vývojové nástroje, s dostatečnou technickou podporou,
které umožňují komponentovou tvorbu simulačních
modelů, vytváření interaktivních multimédií a jejich závěrečné propojení podle daného scénáře do kompaktního celku. K ovládnutí těchto nástrojů je zapotřebí věnovat značné úsilí, které se ale nakonec vyplatí.
Vytvořit kvalitní výukové e-learningové aplikace, pokrývající nezanedbatelnou část lékařského oboru není
v silách jednoho pracoviště a MEFANET je zde velkou
příležitostí.
Proto uvítáme spolupráci v rámci sítě MEFANET se
všemi jednotlivci i pracovišti, kteří budou mít zájem.
Rádi se podělíme o naše zkušenosti včetně námi vytvořených podpůrných softwarových prostředků.
Literatura
[1] Abram, S. R., Hodnett, B. L., Summers, R. L., Coleman,
T. G., Hester R.L. (2007). Quantitative Circulatory Physiology: An Integrative Mathematical Model of Human
Physiology for medical education. Advannced Physiology
Education, 31 (2), 202–210.
[2] Amosov, N. M., Palec B. L., Agapov, B. T., Jermakova, I.
I., Ljabach E. G., Packina, S. A., Solovjev, V. P. (1977):
Teoretičeskoje issledovanie fiziologičeskich sistěm.
Naukova Dumka, Kijev, 1977.
[3] Bassingthwaighte J. B. (2000). Strategies for the
Physiome Project. Annals of Biomedical Engeneering 28,
1043–1058.
[4] Cameron, W.H. (1977): A model framework for computer
simulation of overall renal function. J. Theor. Biol. vol.
66., s. 552–572
67
MEFANET report 01
[5] Coleman, T. G. and J.E. Randall (1983): HUMAN.
A comprehensive physiological model. The Physiologist,
vol. 26, (1): 15–21.
[6] P. Fritzson (2003). Principles of Object-Oriented Modeling and Simulation with Modelica 2.1, Wiley-IEEE Press.
[7] Grodins, F., S., J. Buell and A. Bart (1967).: Mathematical
analysis and digital simulation of the respiratory control
system. J. Appl. Physiol., vol. 22, (2): s. 250–276.
[8] Guyton AC, Coleman TA, and Grander HJ. (1972):
Circulation: Overall Regulation. Ann. Rev. Physiol., 41,
s. 13–41.
[9] Guyton AC, Jones CE and Coleman TA. (1973): Circulatory Physiology: Cardiac Output and Its Regulation.
Philadelphia: WB Saunders Company,1973.
[10] Guyton AC (1990): The suprising kidney-fluid mechanism for pressure control – its infinite gain!. Hypertension, 16, s.725–730.
[11] Hunter P. J., Robins, P., & Noble D. (2002) The IUPS
Physiome Project. Pflugers Archive-European Journal
of Physiology, 445, s.1–9
[12] Hunter, P. J. & Borg, T. K. (2003). Integration from proteins to organs: The Physiome Project. Nature Reviews
Molecular and Cell Biology. 4, 237–243.
[13] Ikeda N, Marumo F and Shirsataka M. A (1979): Model
of Overall Regulation of Body Fluids. Ann. Biomed.
Eng. 7, s. 135–166
[14] Kofránek, J. Anh Vu, L. D., Snášelová, H., Kerekeš, R.,
& Velan, T (2001): GOLEM – Multimedia simulator
for medical education. In Patel, L., Rogers, R., Haux R.
(Eds.). MEDINFO 2001, Proceedings of the 10th World
Congress on Medical Informatics. London: IOS Press,
1042–1046.
[15] Kofránek, Jiří, Andrlík, Michal, Kripner, Tomáš, and
Mašek, Jan (2002). From Simulation chips to biomedical
simulator. In Amborski, K. and Meuth, H. Proc. of
16th European Simulation Multiconference, Darmstadt,
2002. SCS Publishing House, 2002, s. 431–436.
[16] Kofránek, Jiří, Kripner, Tomáš, Andrlík, Michal, and Mašek, Jan. (2003) Creative connection between multimedia,
simulation and software development tools in the design
and development of biomedical educational simulators.
Simulation Interoperability Workshop, 2003. Orlando,
2003, Position papers, Volume II, paper 03F-SIW-102,
s. 677–687.
[17] Kofránek J, Andrlík M, Kripner T, Stodulka P. (2005):
From Art to Industry: Development of Biomedical Simulators. The IPSI BgD Transactions on Advanced Research
2 (Special Issue on the Research with Elements of Multidisciplinary, Interdisciplinary, and Transdisciplinary:
The Best Paper Selection for 2005), s.62–67.
[18] Kofránek, J., Matoušek, S., Andrlík, M., Stodulka, P.,
Wünsch, Z., Privitzer, P., Hlaváček, J., Ondřej Vacek, O.
(2007): Atlas of physiology – internet simulation playground. In. Proceedings of the 6th EUROSIM Congress
on Modeling and Simulation, Vol. 2. Full Papers (CD).
(B. Zupanic, R. Karba, S. Blažič Eds.), University of
Ljubljana, ISBN 978-3-901608-32-2, MO-2-P7-5, 1–9.
2007. Článek je dostupný na adrese http://patf-biokyb.lf1.
cuni.cz/wiki/media/clanky/development_of_web_accessible_medical_simulators.pdf?id=wiki%3Auser%3Aseznam_publikaci&cache=cache
[19] Jiří Kofránek, Jan Rusz, Stanislav Matoušek (2007):
Guytons Diagram Brought to Life – from Graphic Chart
to Simulation Model for Teaching Physiology. In Technical Computing Prague 2007. 15th Annual Conference
Proceedings. Full paper CD-ROM proceedings. (P. Byron
Ed.), Humusoft s.r.o. & Institute of Chemical Technology,
Prague, ISBN 978-80-7%8%-658-6, 1–13, 2007. Článek,
včetně zdrojových textů programů je dostupný na adrese
http://www.humusoft.cz/akce/matlab07/sbor07.htm#k
[20] Miller, J. A., Nair, R. S., Zhang, Z., Zhao, H. (1997).
JSIM: A JAVA-Based Simulation and Animation Environment, In Proceedings of the 30th Annual Simulation
Symposium, Atlanta, Georgia, 31–42.
68
[21] Raymond, G. M., Butterworth E, Bassingthwaighte J. B.
(2003). JSIM: Free Software Package for Teaching Physiological Modeling and Research. Experimental Biology
280,102–107
[22] Stodulka, P., Privitzer, P., Kofránek, J., Tribula, M., Vacek,
O. (2007): Development of WEB accessible medical educational simulators. In. Proceedings of the 6th EUROSIM
Congress on Modeling and Simulation, Vol. 2. Full Papers
(CD). (B. Zupanic, R. Karba, S. Blažič Eds.), University
of Ljubljana, ISBN 978-3-901608-32-2, MO-3-P4-2, 1–6.
2007. Článek je dostupnýá na adrese http://patf-biokyb.
lf1.cuni.cz/wiki/_media/clanky/development_of_web_
accessible_medical_simulators.pdf?id=wiki%3Auser%3Aseznam_publikaci&cache=cache
P o d ě ko v á n í
Práce na vývoji lékařských simulátorů je podporována grantem
MŠMT č.2C06031 a společností BAJT servis s.r.o.
Obrázek 1: Grafické schéma rozsáhlého modelu cirkulace A. C.
Guytona a spol. z roku 1972, publikovaného v Annual Review
of Physiology. Přetištěno s laskavým svolením Annual Review of
Physiology.
Obrázek 2: Detail Guytonova modelu z roku 1972. Model byl
pro běžného čtenáře fyziologických časopisů na první pohled
poněkud nepřehledný. Nebyl však jen směsicí čar a symbolů.
Reprezentoval matematické vztahy, vyjádřené pomocí propojených symbolů pro funkční závislosti (Funtional block), dělení
(Divider), násobení (Multiplier), integrování (Interator), scítání
a odčítání (Summator). Tak například propojením tří bloků se
dala graficky vyjádřit závislost pulmonárního kapilárního tlaku
(PCP) na středním tlaku v levé síni (PLA) a na středním tlaku
v pravé síni (PPA) vyjádřená vztahem PCP= 0,55 PLA + 0,45
PPA.
MEFANET report 01
Obrázek 3: Guytonův model vyjadřoval zpětnovazebné propojení
osmnácti subsystémů, ovlivňujících funkci cirkulačního systému,
jako graficky zobracenou soustavu matematických vztahů.
Obrázek 4: Spojení internetu, multimediálního prostředí, sloužícího jako zvukové a vizuální uživatelské rozhraní, se simulačními modely umožňuje studentům po připojení do kouzelné
internetové pavučiny si názorně "osahat" vykládaný problém
ve virtuální realitě. Staré Komenského krédo – "škola hrou" tak
dnes nachází své moderní uplatnění.
Obrázek 5: Příklad využití rozpojení fyziologických subsystémů
z vnějších regulačních smyček v simulátoru GOLEM. Stisknutím tlačítka odpojíme řízení hladiny hormonu aldosteron z regulace. Pootočením knoflíku pak hladinu aldosteronu násilně
zvýšíme (A). Po čase vidíme na schématu vylučování draslíku
v ledvinách, že draslík se ve zvýšené míře vylučuje močí. Jeho zásoby v plazmě jsou však malé a ledvinné ztráty pak vedou k tomu,
že draslík se přesouvá do mimobuněčné tekutiny (a plazmy)
z buněk (B). Výstup draslíku z buněk je však provázen vstupem
vodíkových iontů do buněk (C), důsledkem je rozvoj extracelulární metabolické acidózy (D).
Obrázek 6: Dva typy problémů při tvorbě lékařských simulátorů
a e-learningových programů využívajících simulační hry.
Obrázek 7: Grafické vyjádření násobiček (Multiplier), děliček
(Divider), sumátorů (Summator), integrátorů (Integrator)
a funkčních bloků (Functional block) v grafické notaci, navržené A.C.Guytonem (fotografie vlevo dole) a v nástroji pro tvorbu
simulačních modelů Simulink od firmy Matworks.
Obrázek 8: Oprava chyb v grafickém schématu modelu
A.C.Guytona z roku 1972.
69
MEFANET report 01
Obrázek 9: Implementace Guytonova modelu z roku 1972
v moderním nástroji pro tvorbu simulačních modelů Matlab/
Simulink.
Obrázek 10: Pravá horní část grafického znázornění Guytonova
modelu z roku 1972: Subsystém dodávky kyslíku do „nesvalových tkání“.
Obrázek 11: Část modelu A.C. Guytona z roku 1972 v nástroji
pro tvorbu simulačních modelů, která odpovídá grafickému
znázornění z předchozího obrázku. Implementace subsystému
dodávky kyslíku do „nesvalových“ tkání v prostředí Matlab/
Simulink.
70
Obrázek 12: Subsystém dodávky kyslíku do „nesvalových tkání“
vyjádřený jako simulační čip. Zapojení odpovídá stejnému schématu jako na předchozím obrázku, vnitřní struktura počítacích
prvků je však skryta uvnitř simulačního čipu. Model je pak „čitelnější“ a srozumitelnější i pro experimentální fyziology.
Obrázek 13: Implementace Guytonova modelu z roku 1972
v prostředí Matlab/Simulink, vyjádřená jako propojené simulační čipy. Každý ze simulačních čipů odpovídá jednomu
z 18 propojených subsystému.
Obrázek 14: Implementace Guytonova modelu z roku 1986
v prostředí Matlab/Simulink ve formě simulačních čipů. Matematické vztahy jsou ukryty v simulačních čipech, propojení
simulačních čipů znázorňuje uvažované vazby mezi jednotlivými
subsystémy. Zdrojový text programu, včetně podrobného popisu
významu všech rovnic je k dispozici na adrese http://physiome.
cz/guyton.
MEFANET report 01
propojené prvky reprezentují jednotlivé matematické vztahy.
Ke každému čipu je dynamicky připojena příslušná dokumentační stránka, která obsahuje věcný popis funkce čipu včetně
popisu matematických vztahů, které jsou jejím podkladem.
Simulační čipy mohou být ve vývojovém prostředí Simulink soustřeďovány do hierarchicky uspořádaných knihoven (viz obrázek
vpravo). Z nich pak lze jednotlivé čipy "vytahovat" pomocí myši
(jako z palety nástrojů), umísťovat je do vytvářené aplikace,
propojovat je a vytvářet složitější modely. Implementace námi
vytvořené knihovny simulačních čipů (obsahujících, mimo jiné
i simulační čip „Golem“, je volně stažitelná z adresy http://physiome.cz/simchips.
Obrázek 15: Ukázka hierarchického uspořádání simulačního
čipu, reprezentujícího simulační model, který je podkladem pro
simulátor GOLEM. V prostředí Simulinku je možno snadno
otestovat jeho chování – k jednotlivým "vstupním pinům" lze
přivést vstupní hodnoty (nebo průběhy hodnot) a od "výstupních
pinů" na virtuálních displejích či osciloskopech odečítat výstupy, resp. časové průběhy výstupů. Vpravo je zobrazen „vnitřek"
simulačního čipu nejvyšší hierarchické úrovně. Struktura připomíná elektrickou síť s propojenými integrovanými obvody, které
v daném případě reprezentují simulační čipy nižší hierarchické
úrovně. V následujícím obrázku je znázorněn obsah čipu "Blood
Acid Base Balance".
Obrázek 16: Simulační čipy mají hierarchické uspořádání.
Na obrázku je znázorněn "vnitřek" jednoho ze simulačních čipů
z předchozího obrázku. Vzhledem k tomu, že každý jednotlivý
simulační čip obsahuje dostatečně podrobnou dokumentaci
o svých vstupech a výstupech, může být struktura vztahů uvnitř
simulačního čipu (reprezentující fyziologické vztahy v reálném
organismu) srozumitelná fyziologům. Na dalším obrázku je zobrazen obsah čipu "BEINV".
Obrázek 18: Komunikace systému Control Web s ovladačem
řídící/měřící karty při tvorbě průmyslových aplikací. Měřící
ústředny či velín průmyslové aplikace, vytvořené v prostředí Control Web komunikuje přes vstupní a výstupní kanály s řadičem
měřící/řídící karty, která komunikuje s propojeným technologickým zařízením.
Obrázek 19: Začlenění simulačního modelu do ovladače "virtuální karty" při tvorbě simulátoru v prostředí Control Web.
Simulátor vytvořený v prostředí Control Web komunikuje přes
vstupní a výstupní kanály s řadičem virtuální (v hardwarové podobě neexistující) měřící/řídící karty. V tomto řadiči je „ukryt“
simulační model. Vstupní proměnní jsou simulačnímu modelu
„posílány“ přes výstupní kanály aplikace v Control Webu. Výstupy modelu jsou čteny, obdobně jako měřené výstupy technologického zařízení, prostřednictvím vstupních kanálů. Aby nebylo
nutno ručně programovat řadič s „ukrytým“ simulačním modelem, vyvinuli jsme speciální nástroj, který automaticky generuje
zdrojový text řadiče v jazyce C přímo z modelu, implementovaného v Simulinku.
Obrázek 17: Simulační čipy na nejnižší hierarchické rovni jsou
tvořeny propojenými základními komponenty vývojového systému Matlab/Simulink (sumátory, násobičkami, integrátory
aj.) a případně i simulačními čipy dalších nižších úrovní. Tyto
71
MEFANET report 01
Obrázek 20: Kreativní propojení nástrojů a aplikací pro tvorbu
simulátorů a výukových programů využívajících simulační hry.
Základem e-learningového programu kvalitní scénář, vytvořený
zkušeným pedagogem. Tvorba animovaných obrázků je odpovědnost výtvarníků, kteří vytvářejí interaktivní animacev prostředí
Adobe Flash. Jádrem simulátorů je simulační model, vytvářený
v prostředí speciálních vývojových nástrojů, určených pro tvorbu
simulačních modelů. V naší laboratoři zde využíváme prostředí
Matlab/Simulink od firmy Matworks (a v poslední době i nástroje pro práci se simulačním jazykem Modelica). Vývoj simulátoru je náročná programátorská práce, pro jejíž usnadnění jsme
vyvinuli speciální programy, usnadňující automatický převod
vytvořeného simulačního modelu z prostředí Matlab/Simulink
do prostředí Control Web a Microsoft .NET.
Obrázek 23: Tzv. MVC architektura při tvorbě simulátorů. Mezi
vrstvu modelu a vrstvu uživatelského rozhraní je vhodné vložit
řídící vrstvu, kam jsou směrovány veškeré zprávy a události vznikající ve virtuálních přístrojích uživatelského rozhraní, a kam je
zároveň směrována veškerá komunikace s modelem. V této vrstvě
se řeší veškerý kontext zobrazovaných dat a příslušné požadavky
na komunikaci s modelem. Veškerá logika zobrazování a komunikace je pak soustředěna do jednoho místa, což podstatně ušetří čas při modifikacích uživatelského rozhraní nebo změnách
modelu.
Obrázek 24: Využití simulačních modelů v internetových e-learingových kurzech. Dispečer simulačních modelů funguje obdobně jako prohlížeč obrázků, jen s tím rozdílem, že místo zobrazení
obrázků spustí simulační program.
Obrázek 21: Příklad simulátoru vytvořeného v prostředí ControlWeb. Výstupy modelu jsou zobrazovány na ručkových měřících přístrojích a zároveň ovlivňují i tvar animovaného obrázku
ledvinného glomerulu (velikost, tloušťku šipek a číselnou hodnotu aj.), vytvořeného pomocí programu Adobe Flash.
Obrázek 25: Ilustrativní ukázka doprovodného simulátoru ve výukovém programu patofyziologie cirkulace.
Obrázek 22: Příklad simulátoru vytvořeného v prostředí Microsoft Visual Studio .NET. Výstupy modelu přenosu krevních
plynů jsou zobrazovány v číselné podobě i pomocí sloupcových
diagramů. Zároveň model ovlivňuje i tvar animovaného obrázku
schematicky znázorňujícího distribuci ventilace a perfúze v plicích, který byl vytvořen pomocí programu Adobe Flash.
72
EUROSIM 2007, Congress on Modeling and Simulation,
1. Jiří Kofránek, Stanislav Matoušek, Michal Andrlík, Petr Stodulka, Zdeněk
Wünsch, Pavol Privitzer, Josef Hlaváček, Ondřej Vacek: Atlas of
physiology - internet simulation playground. In: Proceedings of the 6th
EUROSIM Congress on Modeling and Simulation, Vol. 2. Full Papers
(CD). (B. Zupanic, R. Karba, S. Blažič Eds.), University of Ljubljana,
ISBN 978-3-901608-32-2, pdf soubor. MO-2-P7-5, str. 1-9. 2007.
2. Jiří Kofránek, Stanislav Matoušek, Michal Andrlík: Border flux ballance
approach towards modelling acid-base chemistry and blood gases
transport. In: Proceedings of the 6th EUROSIM Congress on Modeling
and Simulation, Vol. 2. Full Papers (CD). (B. Zupanic, R. Karba, S.
Blažič Eds.), University of Ljubljana, ISBN 978-3-901608-32-2, pdf
soubor. TU-1-P7-4, str. 1-9. 2007.
3. Zdeněk Wünsch, Marcel Matúš, Jiří Kofránek: Physiological feedback
modelling in medical education. In: Proceedings of the 6th EUROSIM
Congress on Modeling and Simulation, Vol. 2. Full Papers (CD). (B.
Zupanic, R. Karba, S. Blažič Eds.), University of Ljubljana, ISBN 978-3901608-32-2, pdf soubor: TU-1-P7-5, str. 1-7. 2007.
4. Petr Stodulka, Pavol Privitzer, Jiří Kofránek, Martin Tribula, Ondřej
Vacek: Development of WEB accessible medical educational simulators.
In: Proceedings of the 6th EUROSIM Congress on Modeling and
Simulation, Vol. 2. Full Papers (CD). (B. Zupanic, R. Karba, S. Blažič
Eds.), University of Ljubljana, ISBN 978-3-901608-32-2, pdf. soubor
MO-3-P4-2, str. 1-6. 2007.
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
9-13 Sept. 2007, Ljubljana, Slovenia
ATLAS OF PHYSIOLOGY AND
PATHOPHYSIOLOGY – INTERNET SIMULATION
PLAYGROUND
Jiří Kofránek, Stanislav Matoušek, Michal Andrlík, Petr Stodulka, Zdeněk Wünsch,
Pavol Privitzer, Josef Hlaváček, Ondřej Vacek
Charles University in Prague, 1st Faculty of Medicine
The Laboratory of Biocybernetics and Computer Aided Teaching
U nemocnice 5, 128 53 Praha 2, Czech republic
kofranek@email.cz (Jiří Kofránek)
Abstract
The Atlas of physiology and pathophysiology (http://www.physiome.cz) is an interactive
multimedia web-based educational application that facilitates the process of physiological
system functions interpretation. It helps to comprehend the principles of system
malfunctioning and to identify its reasons. The connection of a multimedia environment and a
simulation models enables to experience the problem in a virtual reality. The educational
simulator provides a way for trying out the behaviour of a simulated object without any risk.
The atlas development workflow demands the cooperation between many professionals. The
model designed by a mathematician is made to fit a scenario prepared by a physiologist. Then
the model is implemented connecting the model with graphical components designed by a
graphic designer. To suit various needs during the Atlas preparation, we have used various
technologies and approaches, namely the .NET framework, the Control Web framework,
Matlab/Simulink and Adobe Flash with ActionScript v2.0. The Atlas is available for medical
students (in Czech language version) from March 2007 and the official evaluation of Atlas
educational contribution begins from the autumn 2007. The Atlas of physiology and
pathophysiology is a free acessible application. All educational text, interactive animation and
simulation models including the source code are for free to all who are interested. Any form
of cooperation with other European teams resulting e.g. in translation of our Atlas is welcome.
Keywords: E-learning, Modeling in physiology, Interactive on-line simulation
Presenting Author’s biography
Ondřej Vacek. Postgradute student of Jiří Kofránek at The Laboratory of
Biocybernetics and Computer Aided Teaching which is part of the
Institute of Pathophysiology of the 1st Faculty of Medicine, Charles
University in Prague. Graduated as MSc. in biomedical engineering at
Czech Technical University in Prague (graduated in 2007). Within the
scope of his studies is: regulation in physiology, its modeling and
utilization in education and the designing of extensive scalable models.
ISBN 978-3-901608-32-2
1
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
1
9-13 Sept. 2007, Ljubljana, Slovenia
Education as a game
The Atlas of physiology and pathophysiology is an
interactive multimedia educational application, that
facilitates the process of physiological system
functions interpretation. It helps to comprehend
principles of system malfunctioning and to identify its
reasons.
Design
of simulatoruser
Design
of simulator
user
interface
interface
Formalised
descriptionof
Formalised
description
of physiologic
function
physiologic
function
Implementation
Implementationof
of simulator
simulation
model
intosimulator
simulator
model
into
SImulation
Simulationmodel
model design
design
Educational applications are not only multimedia
supplements of traditional textbooks. In addition they
constitute a new educational utility that fulfills an old
credo „Schola Ludus“ (education as a game), which
was published in 17th centrury by famous european
educationist Jan Ámos Komenský [2]. The connection
between a multimedia application interface and a
mathematical simulation model enables students to
interact with currently explained physiological
problems in virtual reality, thus bringing quite new
opportunities when describing complex physiological
interdependencies. A simulation game enables
examination of simulated object without any real
danger, e.g. landing with virtual aircraft, or in this
case, virtual patient treatment and examination of
functions of his separate physiological subsystems.
Simulation also provides a way to explain complex
relations among physiological regulation systems and
pathogenesis of various disorders [1].
--
Verification
ofsimulation
model
Verification
of model.
- behavior ofsimulation modelis
Behavior
modelof
comparedtoof
behavior
human
organism
compared
with
behavior of
human body.
+
Verification
simulator in
Verification
of of
simulator
in medical
education
medical
education
requirementsfor
forsimulation
simulation model
New New
requirements
model
Fig. 1 Two kinds of problems were to be solved by
construction of the medical simulator. Each of the
problems is specific and requires using different
developer's tools.
2 Simulation model – theoretical fundament of
simulation games
Two types of problems are usually to resolve when
creating simulation games (fig. 1):
From the pedagogic point of view, the possibility to
divide the examined object is highly appreciated. In
this way, particular subsystems can be examined
either separately or as a part of the whole system.
Selected control loops can be temporarily
disconnected to demonstrate subsystem reaction to
input changes. Changing one input while other inputs
are set to constant values (the „ceteris paribus“
principle) enables to examine subsystem’s response to
single value modification.
Simulation model designing – a theoretical physiology
based research work describing formalized
physiological relations expressed in mathematical
formulas. These issues were solved within the scope
of research projects.
Designing of final multimedia simulator – designing
of an educational application using simulation games
is an application of theoretical results. The
foundations of the simulator are verified mathematical
models.
Subsequently it is possible to reconnect temporarily
disconnected control loops again and examine their
general effect when certain pathologies occur or the
patient is subject to particular therapy. According to
our experience, this approach leads to better
understanding of complex dynamics of various
malfunction pathogenesis and subsequently to
selection of a better and more appropriate treatment.
It has proved effective to use appropriate development
tool for each step of this process. For simulation
models design, we’re using Simulink and Matlab from
Mathworks. Using these tools enables us to compound
the final model from separate components, so called
software simulation chipsets.
Taking the advantage of the features of Simulink we
have adopted the concept of simulation chips that
represent the building blocks of our simulation
models.
The
development
of
effective
educational
applications, combining multimedia components with
simulation games, is an ambitious and complicated
task. It demands the cooperation between many
professionals – experienced teachers creating the basic
scenario, simulation model makers, medical doctors,
graphic
designers
and
programmers.
This
multidisciplinary cooperative work is supported by
appropriate tools that enable the connection of
interactive multimedia with simulation models
according to given scenarios.
The simulation chips represent the subsystems of
simulation model. Simulation chips resemble
electronic integrated circuits, with information rather
than current flowing between their pins (user defined
inputs and outputs). The inner structure of these
simulation chips can be hidden from the system
architect; knowledge of physical quantities on the
respective input and output pins is sufficient.
In biomedical models simulation chips correspond to
certain physiological subsystems, they have defined
ISBN 978-3-901608-32-2
2
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
9-13 Sept. 2007, Ljubljana, Slovenia
0.1441
PNa
100.2
29.83
6.25
1189
TubC
Normal proximal
tubule conductance
[ml/min/torr]
RBF
PNa
FF
GP
0.07
Plasma protein
cnoncentration
[g/ml]
APr
16
GKf
Normal glomerular
filtration coeffitient
[ml/min/torr]
O
U
U
INPUTS :
PNa - Plasma sodium concentration [mmol/ml]
GFR - GLomerulal filtration rate [ml/min]
LogA2 - Logarithm of plasma angiotensin concentration
[pg/ml]
PrxFNaNorm - Normal value of sodium proximal
fractional reabsorbtion [relative number]
0.1905
GFR
60.31
MDNaFlow
PdxNaReab
LogA2
PTP
OUTPUTS :
GFR - Glomerular filtration rate [ml/min]
FF - Filtration fraction [relative number]
GP - Glomerulal pressure [torr]
PTP - Proximal tubule pressure [torr]
AVeCOP - Average colloid osmotic pressure [torr]
NETP - Net pressure gradient in glomerulus [torr]
RPF
665.6
U
GFR
INPUTS :
RAP - Renal artery pressure[torr]
Affc - Afferent artery conductance [mll/min/torr]
TubC - Proximal tubule conductaqnce [ml/min/torr]
RBF - Renal blood flow [ml/min]
RPF - Renal plasma flow
APr - Plasma protein concentration (in afferent artery) [g/ml]
GKf - Glomerular filtration coeffitient [ml/min/torr]
AffC
3.644
125
GLOMERULUS
RAP
20.29
PrxFNaNorm
AVeCCP
32.21
NetP
7.811
OUTPUTS :
MDNaFlow - Sodium outflow [mmol/min]
PdxNaReab - Proximal sodium reabsorbrtion [mmol/l]
PrxFNa - Proximal fractional sodium reabsorbtion
PrxFNa
Calculation of proximal tubule sodium reabsorbtion
0.7977
0.8
Normal Na proximal
fractional reabsorbtion
Glomerulus
14.37
MYOGENIC RESPONSE
0.9996
AffC
25.09
EffC
200
RenVenC
Venous conductance
[ml/min/torr]
AP
100.2
7
VP
Vena renalis
pressure
[torr]
0.44
Hct
Hematocrit
0
Renal artery pressure
clamp drop [torr]
Clamp
RAP
RENAL PERFUSION
INPUTS :
AffC - Afferent artery conductance
[ml/min/torr]
EffC Efferent artery conductance
[ml/min/torr]
RenVenC - Renal venous conductance
[ml/min/torr]
AP - Arterial pressure [torr]
VP - Vena renalis pressure [torr]
Hct - Hematocrit [relative number]
Clamp - Renal artery pressure drop
caused by renal artery clamp [torr]
OUTPUTS :
RAP - Renal artery pressure [torr]
RBF - Renal blood flow rate[ml/min]
RPF - Renal plasma flow rate[ml/min]
INPUT :
RAP - Renal artery pressure [torr]
MACULA DENSA
MDNaFlow
AffMyo1
INPUTS :
MDNaFlow - Macula densa sodium flow
[mmol/min]
logA2 - Logarithm of plasma angiotensin
concentration [pG/ml]
MDNorm - Normal macula densa feedback signal
[ratio to normal value]
OUTPUT :
AffC - Myogenic effect [ x Normal]
RAP
1.005
Calculation of the myogenic response to changes in renal perfusion
pressure (afferent conductance responds to changes in perfusion
pressure, with pressure increases causing vasoconstriction)
MDSig
AFFERENT ARTERY
RBF
OUTPUT :
MDSig - Macula densa feedback signal
[ x Normal]
AffMyo
AffC
INPUTS :
AffMyo - Myogenic effect [ x Nomal]
MDSig - Macula densa feedback signal [ x Normal]
AffNorm - Normal conductance in afferent artery [ml/min/torr]
OUTPUT :
AffC - Vascular conductance [ml/min/torr]
RPF
MDSig
Calculation of renal artery pressure and renal blood flow rate
MDNorm
Macula densa feedback signal calculation based on
macula densa sodiumflow and angiotensin concentration
30
AffNorm
1
Normal conductance
of Afferent artery
[ml/min/torr]
Calculates conductance of afferent artery
LogA2
Normal macula
densa
feedback signal
EFFERENT ARTERY
LogA2
EffC
EffC
INPUTS :
LogA2 - logarithm of angiotensin concentration
MDSig - Macula densa feedback signal [ x Normal]
EffNorm - Normal conductance in afferent artery [ml/min/torr]
OUTPUT :
EffC - Vascular conductance [ml/min/torr]
AP
LogA2
1.277
MDSig
25
EffNorm
Calculates conductance of efferent artery
MDSig
Normal conductance
of Efferent artery
[ml/min/torr]
LogA2
Fig. 2 Part of the of large-scale kidney model designed in Simulink using interconnected "simulation chips". This
graphical representation of the large-scale model reveals the relationships among physiological subsystems
represented as "simulation chips". Interconnected chips depict the core structure of the simulated physiological
regulations. Schematic representations of the model with "simulation chips" are understandable for physiologists.
A physiologist doesn‘t have to understand in detail the inner structure of the chip, but he knows what behaviour
can be expected from the physiological subsystem represented by the network of chips.
inputs and outputs through which they communicate
with other simulation chips (fig. 2).
certainly can evaluate the functionality of a simulation
model.
The inside of a chip contains all mathematical
expressions needed to implement its physiological
function, but this is hidden from those team-members
that do not need it; still they can analyze and
understand the structure and the behaviour of the
simulation model.
Usage of simulation chips throughout the simulation
model design can, in our experience, facilitate the
understanding between these two groups of people.
Physiologists can look at this chip as like a black box
with some physiological functions and programmers
can look at the chip as like a subprogram or algorithm
that is part of a more complex system.
Simulation chips can be organized in Simulink
libraries so that they can be easily reused among
models, moreover they represent themselves a means
of documentation thanks to their graphical nature, as
well as they can become part of the Matlab help
system.
An experimental physiologist doesn‘t have to
understand in detail the inner structure of a simulation
chip. But he knows what behaviour can be expected
from the physiological subsystem represented by the
chip or a network of chips. The graphical
representation of the model reveals the relationships
among
the
chips.
Importantly,
schematic
representations
with
simulation
chips
are
understandable for physiologists.
Developing simulation models in biomedical sciences
usually results in team-work. On one side, there is a
system analyst – an expert in the formalization and
creation of simulation models, a theoretical
physiologist who describes a physiological system
formally and tests the simulation model. On the other
side, there is a classical experimental physiologist or
clinicians who cannot deal with the integrodifferential description of chips depict the core
structure of the large-scale physiological system, but
ISBN 978-3-901608-32-2
The development project results led to the whole
library of physiological models for Matlab/Simulink
as theoretic basis for subsequent development of
educational simulation models [5,6]. The library is a
periodically updated open-source product available at
our internet site (www.physiome.cz/simchips).
3
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
3
9-13 Sept. 2007, Ljubljana, Slovenia
simulation models. Less powerful computers run the
simulation extremely slow.
Model design for web-based simulation games
Since Mathworks tools are primarily intended for
engineering specialists, they’re not suitable for a
common user, who wants only to „play a little“.
Therefore it was necessary to separately create another
simulator along with its user interface, based on a
debugged and verified structure of a simulation model.
The implemented simulation model can then run faster
and the possibilities of user control are considerably
more comfortable for non-technicians (i.e. medical
students and doctors) than those in Matlab or Simulink
environment.
Although it is possible to create a rather friendly user
interface to control the created model in Simulink
environment, this interface is too complicated for
purposes of use of the simulation model in medical
education and moreover, it requires further purchase
of licenses. Besides, one pays with higher hardware
requirements for a comfortable environment, which is
assigned especially for creation (not for operation) of
For simulator creation, we use the Microsoft .NET
platform. So that it is not necessary to create the
Fig. 3 "Simulation chips" are stored in libraries (top window). A model (bottom window) contains instances of
the chips. Note the ‘quick reference’ of the function, inputs and outputs of the simulation chip in its mask. The
library of simulation chips is open-source product available at our internet site (www.physiome.cz/simchips).
ISBN 978-3-901608-32-2
4
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
Automatic
build
of
Control
Web
virtual
driver
9-13 Sept. 2007, Ljubljana, Slovenia
Model
development
and testing in
Matlab/Simulink
Automatic
build
of
.NET
assembly
virtual
driver
(model)
.NET
assembly
(model)
Control
layer
Control
Web
Development
of simulator
application
Flash
animations
Control Web simulator
Creating of flash
animation
Flash
animations
.NET simulator
Deployment
Testing in
Education
Scenarious and
scripting
Fig. 4 Development cycle of educational simulator application
purposes. This way, we have created for instance
educational applications „Internet kidney“ or
„Mechanical properties of a skeleton muscle“ in our
Atlas.
Simulink model in Visual Studio .NET manually once
again, we have created a special software tool which
automatically converts the Simulink model into the
target platform - this tool automatically generates a
simulation model in .NET assembly from Simulink
(see fig. 4).
4 Interactive animations – puppets controlled by
simulation models
Another platform in which the simulation games can
be run is the environment Control-Web, developed
by the Moravian instruments Inc. The Control-Web is
a development system originally meant for being able
to easily create a visual design of controlling and
measuring devices for industry with use of a PC,
equipped with a special measuring/controlling card.
We use this application as an environment for running
the simulation models, where the generated controller
of the virtual control card in the computer is by the
Control Web system perceived as an interconnection
with the industrial interface – but in fact, it contains a
simulation model. The Control Web is somehow
„fooled“ this way – if the system is sending some
control signals into the industrial device, it is in fact
sending input values into the model (fig. 5). If the
application created in the Control-Web environment
reads any measured signals from the industrial device,
it is in fact reading the output signals from the model.
For creation of user interfaces for an educational
simulator, it is very useful to visualize the simulator as
an animation. That is why we interconnect the
simulation model with a multimedia animation created
with the help of Macromedia Flash. The animations
can be then controlled by outputs from the
implemented simulation model and the meaning of
numerical values can be represented graphically – i.e.
a schematic picture of a vein can dilate or compress,
an air sack can breathe more or less deeply, a device
pointer can move and continuously display values of
an output variable of the model, which is being read
from the running simulation model in the background.
Conversely, various inputs can be entered into the
simulation model with the help of visual components
(various kinds of buttons, knobs, draw bars etc.).
In case of more complex architecture, the
interconnection logic between the flash animation and
the simulation model is rather complicated, and
therefore it is more advisable to insert a control layer
This way we manage to use the total visualization
potential of this device for creation of multimedia
presentations of simulation models for educational
ISBN 978-3-901608-32-2
5
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
9-13 Sept. 2007, Ljubljana, Slovenia
User
interface
layer
Control
layer
State machines for
preservation of user
interface and model
context
outputs
inputs
Model
layer
Simulation model
Fig. 6 Three layers architecture of simulators
mutually connected screens. The advantages of such
an organization excel especially at modifications both
of the model and the user interface. In technical
publications, a so-called UCM architecture (User
interface – Control layer – Model layer) of simulators
is being discussed [3,4].
Fig. 5 The Control Web application communicates
with the mathematical model through a virtual driver.
In industry the Control Web application would
communicate with the measuring/controlling card
through a similar driver and this card would be
interconnected with any industrial technology. Next,
the FLASH interactive animations can be built into the
user interface of the Control Web application.
For this purposes, the state machines capable of
remembering the respective context have proved well.
The Matlab/Simulink environment offers execution of
state machines through a special toolbox (Stateflow)
which is immediately interconnectable with a
simulation model in Simulink (fig. 6).
between the layer of visual components and the layer
of the simulation model. This new layer in one single
point controls all the communication logics between
the user interface and the model, where also the
respective content is being stored.
It is also possible to execute the state machine on the
side of the user interface – directly in Flash. This
machine then directly communicates with visual
objects in Flash.
INTERNET
ASP .NET
Adobe Connect
SERVER
Simulation
model
downloaded
from the server
Runtime for
Control Web
simulators
Web
e-learning
presentation
CLIENT
Dispatcher of
simulation
models
Microsoft .NET
Fig. 7 Deployment of Control Web and .NET
simulators
Fig. 8 Main screen of Atlas of physiology and
pathophysiology. This atlas contain explanation
multimedia e-learning components combined with
simulation games
This organization is necessary in case of more
complex models and simulators whose user interface
is represented by a number of virtual devices on more
ISBN 978-3-901608-32-2
6
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
9-13 Sept. 2007, Ljubljana, Slovenia
5
Simulation games on the Internet
Another task to solve was to find a way to embody
simulators into the Internet e-learning applications.
There are several ways to do that. One is to run model
on a server and send only the outputs to the client’s
workstation. But that means one model instance
started for each connected client, apart from slow time
response. That’s why we’re using client-based models.
Simple models may use Flash ActionScript, but
complicated models must be provided with more
sophisticated simulator background.
Our solution is depicted in fig. 7. First step is the
.NET framework installation, in case user doesn’t
already have it. Then the special client application
„the simulation model dispatcher“ is loaded. The
dispatcher’s component is the Control Web runtime
that ensures the simulator execution. Internet elearning application provides files necessary for the
dispatcher to execute the simulation. The dispatcher
acts similarly to a picture viewer, but instead of
viewing a picture it runs a simulation.
Fig. 9 The usage of multimedia components during
the explanation of coagulation failures
Fig. 11 Right heart failure demonstrated using
simple model of circulation implemented in Adobe
Flash using ActionScript language
6
Simulation games are a part of e-learning multimedia
educational lessons, whose foundation is a scenario
created by an experienced pedagogue. The scenario
created by the pedagogue consists of an explanatory
text and supporting figures and animations. The
animations are being created in the Adobe Flash
environment by a pedagogue closely cooperating with
an artist. Afterwards, the text is narrated and
synchronized with the start of particular animations
and with the links to the simulation games. All these
components are put together in educational lessons
[7].
Fig. 10 Muscle simulator implemented in Adobe
Flash using Action Script language in educational
program on macroscopic and molecular aspects of
muscular contractility. The time-course of isotonic
muscle contraction (shortening and its velocity) is
generated and Hill’s curve reconstructed from the
results.
ISBN 978-3-901608-32-2
Multimedia e-learning using simulation games
7
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
9-13 Sept. 2007, Ljubljana, Slovenia
Fig. 13 An example of a simulator user interface
combining custom MS .NET controls (bar graphs) with
Flash animations (alveoli) in educational program on
ventilation-to perfusion abnormalities.
Fig. 12 An example of a simulator user interface
combining Control Web controls (graphs and knob)
with Flash animations (vas afferent and efferent
arteriole in kidney glomerulus) in educational program
on kidney functions.
involves medical doctors, mathematicians, computer
programmers and design artists.
The Atlas of physiology and pathophysiology is a free
application. All educational text, interactive animation
and simulation models including the source code are
for free to all who are interested. All supportive
applications developed in our Laboratory, enabling
automatic conversion of Simulink models are free as
well.
For creation and completion of multimedia
educational lessons a software environment of Adobe
Connect (formerly Macromedia Breeze) server is
being used.
7 From enthusiasm to technology and
interdisciplinary cooperation
Any form of cooperation with other European teams
resulting e.g. in translation of our Atlas is welcome.
Though the application of computers in education has
become the main theme of many conferences and
papers and the potentials of hardware and software
tools have enabled the design of demanding
interactive multimedia, no extensive expansion of
medical e-learning application has happened.
The reasons are following:
•
First, e-learning application development is
fundamentally more expensive as to human
and material costs.
•
Second, high-quality e-learning application
development requires team cooperation of
experienced teachers, doctors, mathematics,
physics, programmers and design artists.
•
Finally, appropriate developing tools have to
be available to allow the interconnection of
aforementioned professionals. Also, to
master the design tools requires certain time
and effort.
If the simulation model enabling interactive
simulation games operates in the application
background, computational demands are raised
rapidly. Developing team has to involve professionals
capable of designing such models (doctors,
mathematicians,
physicists
and
computer
programmers).
We consider the creation of our interdisciplinary team
to be one of the greatest achievements, since it
ISBN 978-3-901608-32-2
Fig. 14 Various professions and activities involved in
the educational software development
8
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
8
9-13 Sept. 2007, Ljubljana, Slovenia
References
[1] Coleman, T.G. and J.E. Randall: HUMAN. A
Comprehensive
Physiological
Model.
The
Physiologist 26, pp. 15-21. 1982
[2] Comenius Johann Amos (1592-1670): The Great
Didactic. ed. by M. W. Keatinge (PDF files at
Roehampton), available on:
http://onlinebooks.library.upenn.edu/webbin/book/loo
kupid?key=olbp34684
[3] Harel, D.: Statecharts: a visual formalism for
complex systems. Science of Computer Programing,
8, 231-274. 1987
[4] Kayne, J., Castillo. D.: Flash MX for interactive
simulation. Thomson Delmar Learning, 2003, ISBN
1-4018-1291-0.
[5] Kofránek, J., Anh Vu, L. D., Snášelová, H.,
Kerekeš, R. Velan, T. (2001): “GOLEM – Multimedia
simulator for medical education.” In: Studies in Health
Technology and Informatics., vol. 84. MEDINFO
2001, Proceedings of the 10th World Congress on
Medical Informatics. (V.L. Patel, R. Rogers, R. Haux
(Eds.)), IOS Press,
[6] Kofránek J, Andrlík, M., Kripner, T. Mašek. J.:
From Simulation chips to biomedical simulator. In
Amborski K, Meuth H, (eds.): Modelling and
Simulation 2002, Proc. of 16th European Simulation
Multiconference, Germany, Darmstadt, 3.-5. 6. 2002.
ISBN 90-77039-07-4, pp. 431-435
[7] Kofránek J, Andrlík M, Kripner T, Stodulka P. :
From Art to Industry: Development of Biomedical
Simulators. The IPSI BgD Transactions on Advanced
Research 1 #2, 62-67. 2005. New York, Frankfurt,
Tokyo, Belgrad. 2005.
Acknowledgement
Medical simulators project is supported by aid grant
MŠMT 2C06031 and BAJT servis s.r.o company.
ISBN 978-3-901608-32-2
9
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
9-13 Sept. 2007, Ljubljana, Slovenia
BORDER FLUX BALLANCE APPROACH
TOWARDS MODELLING ACID-BASE CHEMISTRY
AND BLOOD GASES TRANSPORT
Jiří Kofránek, Stanislav Matoušek, Michal Andrlík
Charles University in Prague, First Faculty of Medicine, Institute of Pathological Physiology,
U Nemocnice 5, Praha, Czech Republic
kofranek@email.cz (Jiří Kofránek)
Abstract
Two widely discussed approaches to acid-base chemistry (classical vs. modern one) are not in
contradiction with one another. Most of the misunderstanding originates when people don’t
realize they are defined for different conditions – classical theory is valid for blood of various
hemoglobin content but with normal plasma only while the modern theory describes plasma
under general conditions, but not full blood. The two theories are complementary when both
limiting conditions are met. Our border flux approach to acid-base and blood gases chemistry,
together with the newly defined set of state variables form a logically consistent general
theory. We are able to describe, identify and simulate blood gases transport as well as a wide
array of acid-base disorders, e.g. respiratory alkaloses and acidoses, metabolic acidoses and
alkaloses, hypo- and hyperalbuminemias (phosphatemias), hemodilution/ hyperhydration,
hemoconcentration/dehydration, situations of abnormal body temperature etc. Complex
simulation model based on our approach (Golem) is for several years successfully used in
medical student education. Underlying mathematical relationships are as a part of a
MATLAB/Simulink library “Physiolibrary” at your free disposition on site http://patfbiokyb.lf1.cuni.cz/wiki/projekty/physiolibrary . Lately, we have completed on-line version of
simple plasma buffering system simulation model, which is available at
http://www.physiome.cz/atlas/acidobaze/02/ABR_v_plazme1_2.swf .
Keywords: Acid-base chemistry of blood, Modeling, SID, BB, BE
Presenting Author’s biography
Stanislav Matoušek, M.D. Author is a Ph.D. student of Jiří Kofránek,
main focus of his work being modeling of ventilation, blood gases
transport and acid-base chemistry in humans. He studied Medicine at
Charles University in Prague. He combined his studies with several years
of mathematics and physics at Charles University and with some subjects
regarding control theory at Czech Technical University. Stanislav
Matoušek is a member of multidisciplinary team of laboratory of
biocybernetics lead by Jiří Kofránek. He also teaches Pathological
Physiology to medical students.
ISBN 978-3-901608-32-2
1
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
1
9-13 Sept. 2007, Ljubljana, Slovenia
between the pH (or hydrogen ion concentration) and
the value of pCO2, BE and Hb.
Preface
Efforts to formalize the description of the blood acidbase chemistry are not at all new, going back to the
pioneering times of Henderson (1909) and
Hasselbalch (1916). Currently, many clinical and
physiological calculations are based on the existing
formalization, as those carried out in the analytical
devices for the acid-base status assessment, analyzers
of respiratory system function, ventilators of scubadivers, automatic ventilator control in critical-care
medicine etc.
pH = function(pCO2, BE, Hb)
(3)
These nomograms are still widely used in clinical
practice (although today mainly hidden in electronic
computation algorithms inside the blood-gas/pH
analyzers). However, they were constructed for the
blood with normal concentration of plasma proteins.
That can cause interpretation and/or validity problems
in patients with plasma protein concentration disorders
- rather common situation in acutely ill-patients.
There are three mechanisms to acid-base chemistry
regulation: 1) buffers, 2) ventilation, 3) renal
regulation of [H+] and [HCO3-]. Fastest regulation (in
order of milliseconds) that prevents swift changes of
pH after disturbance relies on buffering reactions.
Reflex changes of ventilation rate regulate level of
pCO2 in blood, i.e. one side of the bicarbonate buffer.
Kidneys provide the slowest response to acid-base
disturbances, regulating final excretion of H+ a
regeneration of HCO3-. Thus, the last two mechanisms
act by influencing the blood buffering systems.
3 “Modern” approach of Stewart and
his followers
2 Classical approach of the “Danish
school”
1. Water dissociation equation:
Limitation of Siggaard-Andersen nomogram to
normal levels of plasma proteins (or more exactly
normal values of plasmatic buffers generally) has lead
Peter Stewart into formulation of a new approach to
acid-base chemistry of plasma.
Stewart’s calculations [8] are based on five notions
that must hold and are expressed by following
equations.
[H+] [OH-] = K'w
-
Let us use the symbol [Buf ] for the cumulative
concentration of non-bicarbonate buffer base (basic
forms of plasma proteins, hemoglobin and phosphate).
Sum of concentration of bicarbonates and nonbicarbonate buffer bases gives us so called Buffer
Base (BB) [6]:
BB = [HCO3-] + [Buf--]
2. Law of conservation of mass for the buffers in their
two forms (basic and acidic):
[Buf-]+[HBuf] = [BufTOT]
(1)
[Buf-] [H+] = KBUF × [HBuf]
(6)
4. Dissociation equilibrium of the bicarbonate buffer:
[H+] [HCO3-] = M × pCO2
(7)
5. Dissociation equilibrium between bicarbonate and
carbonate:
[H+] [CO32-] = N × [HCO3-]
(8)
6. Principle of electroneutrality:
SID+[H+] –[HCO3-]–[Buf-]–[CO32-]–[OH-] = 0
(9)
SID in the last equation is an acronym for “strong ion
difference”, defined as the difference between the
concentration of the fully dissociated cations and fully
dissociated anions (expressed in mEq/L). In practice,
we usually find its value as:
(2)
During metabolic disturbances of acid-base chemistry
(i.e. during disturbances caused by imbalance between
production and excretion of strong acids), the excess
or lack of strong acids is dampened by buffer systems,
causing changes of both BB and BE.
SID = [Na+] + [K+] + [Mg2+] + [Ca2+] - [Cl-]
(10)
By combining the six given equations, we can obtain a
single algebraic equation of fourth order, which can be
solved for the concentration of hydrogen ions
(independent variables are in bold; constants in
italics):
In order to clinically assess of acid-base disorders,
Danish authors lead by Ole Siggaard-Andersen [5]
have created nomograms based on experimental data.
Nomograms graphically describe the relationship
ISBN 978-3-901608-32-2
(5)
3. Dissociation equilibrium of the non-bicarbonate
buffer system:
Value of BB is, of course, mainly determined by pH.
However, part of BB value is independent of pH,
hemoglobin concentration (Hb) being the principal
variable upon which it also depends. To be able to
compare the results of two patients with various
hemoglobin concentrations, Base Excess (BE) was
defined as a difference between actual concentration
of BB at the given pH and its normal value (normal
buffer base- NBB – dependent of Hb) at pH 7.4. BB
and NBB are dependent on Hb concentration, but due
to the definition, this dependence is eliminated with
BE.
BE =BB – NBB
(4)
2
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
CO2 balance
9-13 Sept. 2007, Ljubljana, Slovenia
pCO2
pH
H2O/Na+/Cl-/K+ balance
SID
Plasma protein balance
[BufTot]
[HCO3-]
Fig.1 Modeling acid-base chemistry according to Stewart’s theory
[H+]4+(SID+KBUF)×[H+]3 + (KBUF×(SID-[BufTOT])K'w–M×pCO2)×[H+]2-(KBUF×(K'w +M×pCO2) - N×M
× pCO2)×[H+] - K'w×N ×M×pCO2=0
(11)
removing of H+ to or from one of the compartments
will not alter the value of any of the independent
variables present and hence [H+] will be maintained
at the same value as previously by change in the
dissociation of water to reverse any [H+] fluctuations.
The water dissociation equilibrium is able to provide
an essentially inexhaustible source or sink for H+
ions."
In other words, pH can be expressed from this
equation as a function of three independent variables;
pCO2, SID and total concentration of non-bicarbonate
buffers in both forms [BufTOT]:
pH = function ( pCO2, SID, [BufTOT] )
(12)
However, regulation of the pH in the bodily fluids is
achieved by adjusting the outflow of two entities to
balance their production – kidneys regulate the
excretion of strong acids while lungs regulate the
outflow of carbon dioxide. The two regulated entities
are connected by buffer systems. We can divide them
into bicarbonate buffer system and non-bicarbonate
buffer system (plasmatic proteins, hemoglobin and
phosphates make part of this one).
Clearly, pCO2 can be viewed as a measure of
respiratory disturbance, while changes in SID and
[BufTOT] reflect metabolic disturbances.
However, many of Stewart’s followers [1, 7]
look at this formula as if it were an oracle – and
incorrect causal relationships are deduced from
factually correct mathematic formulas (fig.1). For
instance, application of the above mentioned formula
gives you tendency to alcalemia in cases of
hypoalbuminemia (characterized by decrease in
BufTOT] ). Dilution of extracellular fluid (followed by
a decrease of SID) gives tendency to alkalemia and
concentration of extracellular fluid gives tendency to
acidemia. In such a way one can explain the so called
dilution acidosis in cases of saline solution infusions
or so called contraction alkalosis observed in some
cases of hypovolemia.
Ca2+, Mg2+
K+ HCO3Buf XA-
Some authors erroneously deduce from these facts that
one of the original causes of acid-base disorders is the
change in SID. For instance, Sirker et al. [7] states
that:
SID = [HCO3- ]+[ Buf - ] = BB
Na+ Cl-
“One implication which is stressed in Stewart's
original study is that movement of hydrogen ions
between solutions (by ion channels or pumps) will not
actually affect local hydrogen ion concentration. If
one considers a membrane separating two body fluid
compartments, for each compartment the value of
[H+] depends solely on the value of the independent
variables in that compartment. Directly adding and
ISBN 978-3-901608-32-2
Electroneutrality principle
Fig. 2 The value of plasmatic SID is basically
identical with the BB, concentration of hydrogen
ions in model is either calculated from the Stewart’s
SID or from the BB and concentration of plasma
albumins
3
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
9-13 Sept. 2007, Ljubljana, Slovenia
CO2+H2O
CO2 excretion
by lung
HCO3-
H+
HPO42-
CO2
K+
HCO3-
H2CO3-
XA-
H+
HBuf
H2 O
Na+
NH3
Cl-
Buf -
XA- H+
Metabolic production Metabolic production
of CO2
of strong acids
H2PO4- NH4+ XAStrong acids
excretion
by kidney
Fig. 3 Acid-base status in the extracellular fluid is a result of two regulated flows of substances connected by
the buffering system: The flow of carbon dioxide, whose output is regulated by the lungs and the flow of
strong acids.
as was the change of SID caused by transport.
Changes of the concentrations of ions comprising the
SID and changes of the entities describing buffering
capacity (BB or BE) are dual representations of one
single phenomenon.
4 Border flux balance approach to acidbase chemistry
In order to understand well the causal relationships in
acid-base disorders, it is crucial to realize that values
of SID and BB are basically identical (fig. 2).
Our experience with the modeling of acid-base
chemistry has helped us to formulate a theory that we
have named border flux balance approach.
Thus, pH can be calculated using the SID as well as
the BB. Changes of SID and changes of BB (or BE)
are identical, because the movements of ions across
plasmatic membranes are electroneutral. Hydrogen
ions or bicarbonates are always accompanied by other
ions when they move from one compartment to
another.
Our models are based on several principles:
Nor the buffering reactions nor the transfer of ions
between various compartments of bodily fluids do
change elektroneutrality. Fluxes of hydrogen ions or
bicarbonates are always accompanied by the fluxes of
complementary ions. That is why the changes of the
concentrations of ions that influence the SID and
changes of the entities describing the buffering
capacity (BB or BE) are dual representations of one
single acid base status.
For instance, during metabolic production of strong
acids, the amount of hydrogen ions that leaves
intracellular fluid is accompanied by equivalent
amount of the strong acid anions. Analogically, influx
or loss or bicarbonates is always accompanied by
equimolar transfers of other ions. Loss of bicarbonates
by gastrointestinal tract is matched by retention of
chloride ions in extracellular fluid, leading to
hyperchloremic metabolic acidosis.
Buffering
reaction do not change elektroneutrality, however,
they can change the value of SID and BB. Transferred
hydrogen ions or bicarbonates instantly react with
buffering systems and cause an identical change in BB
ISBN 978-3-901608-32-2
It is beneficial to work with the total content of the
given substance rather than the measures of the
various forms in which the substance is present in the
sample (e.g. O2 in blood exists in the free form and in
the form that is bound to hemoglobin, CO2 is in the
free dissolved form, bound to hemoglobin and in the
form of bicarbonate). The transitions between various
4
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
BB and SID
decreases
Cl- HCO 3
BB and SID
stays
constant
Na + Cl -
BB and SID
increases
Cl - HCO 3-
CO 2
K+
9-13 Sept. 2007, Ljubljana, Slovenia
H2CO 3-
XA-
BB and SID
increases
Na + HCO 3-
HCO 3H+
HBuf
H 2O
Na +
Cl -
Buf
-
XA- H+
BB and SID
decreases
Fig. 4 Buffering reactions per se do not change elektroneutrality. The transfer of ions in between the
compartments of bodily fluids is always electroneutral: Fluxes of hydrogen ions or bicarbonates are always
accompanied by the fluxes of complementary ions.
function of pH, hemoglobin concentration and
plasmatic buffer concentration. This definition is
logically consistent.
forms do not change the total amount of the given
substance in the sample; the total content can change
only by a flux of the substance across the imaginary
borders of the sample. Commonly used variables are
obtained by backward conversion.
The behaviour of blood under general conditions
(abnormal temperature, low hemoglobin saturation,
anemia, hypo- or hyperalbuminémie) can be formally
described by a set of equations. In case of modeling
blood gases and acid-base chemistry, seven degrees of
freedom are enough to achieve a sufficient accuracy.
We chose seven mutually independent state variables
as follows:
Although its use in clinical practice can without doubt
be of advantage, Stewart’s theory is not suitable for
mathematical modeling. In order to use it, we would
have to model homeostasis of all the ions contained in
the definition of SID. That is why, where possible, we
rather use the terms coined by Siggaard-Andersen. In
the cases where the older definition is rather blurred,
we precise it in such a way that ensures logical
consistency. For instance, we precise the term BE of
Siggaard-Andersen under the name of standard base
excess (StBE) as follows: StBE is the amount of
hydrogen ions that has to be added to 1liter of the
sample during the titration with a strong acid to reach
pH of 7.4, all that with the given hemoglobin
concentration and plasmatic buffer concentration
(albumins and phosphates mainly) of the sample;
during titration pCO2 is set to be 40 mmHg,
temperature to be 37°C and hemoglobin saturation to
be 100%. To summarize it, the difference between the
BE and StBE is that BE is a function of pH and
hemoglobin concentration only, while StBE is a
ISBN 978-3-901608-32-2
cO2Tot – total concentration of O2 in all its forms;
cCO2Tot – total concentration of CO2 in all its forms;
StBE – standard BE – generalized BE, as defined
above;
BufTot = cProtTot + cPhosp – total concentration of
plasmatic buffers, that is total concentration of
plasmatic proteins (or to be more precise
concentration of their buffering aminoacids; these are
found mostly on albumin molecules) added with the
concentration of plasma phosphates;
cHb – hemoglobin concentration;
temperature – actual temperature (norm 37°C);
5
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
9-13 Sept. 2007, Ljubljana, Slovenia
A
B
C
D
Fig. 5 Simulation game with the plasma buffering system. The simulator is freely available at site
http://www.physiome.cz/atlas/acidobaze/02/ABR_v_plazme1_2.swf . This scenario explains evolution of dilution
acidosis. A – plasma buffering system was disconnected from the regulatory loops and its behaviour can be
studied individually. B – with the pull, we dilute all the substances in the system, including the hydrogen ions
and dissolved CO2. C – by pressing a button, we initiate the buffering equilibration, concentration of hydrogen
ions increases back to normal and pH normalizes. D – by pressing another button, we reconnect the respiratory
regulation of the system. By its regulatory influence (through regulation of alveolar ventilation) the pCO2
increases back to normal and the buffers cause an increase of concentration of hydrogen ions – dilution acidosis.
kidney excretion of strong acids. We are also able to
calculate the changes of the state variables during
hemoconcentration and hemodilution (thus, we obtain
the pH at dilution acidosis and contraction alcalosis),
as well as the changes of acid-base parameters at
hypoalbuminemia or hypothermia.
total volume of blood or alternatively dilution factor.
It is not needed to describe uniquely a blood sample.
However, if we want to simulate dilution acidosis
and/or contraction alcalosis in conditions of whole
organism, we need it.
Inflow/outflow of a blood gas leads to change in total
concentrations of a blood gas, inflow/outflow of
hydrogen ions (or alternatively hydroxyl ions) and
bicarbonates lead to a change in StBE (adding 1 mmol
of hydrogen ions to 1 liter of blood reduces the StBE
by 1 mmol/L, adding 1 mmol of bicarbonates will lead
to increase of StBE by 1 mmol/L.
The border flux balance approach to acidbase chemistry unifies the classical approach of the
“Danish school” with the quantitative approach of
Stewart and his followers. The causal chain in our
approach goes from two regulated balances (that of
influx/outflux of CO2 and that of influx/outflux of
strong acids (fig. 3) to the buffer systems that connect
them and onto the pH which is the result of these
processes (fig. 4). Quantitative representation of our
This is why we are able to model the (respiratory)
balance between the inflow/outflow of CO2 and the
(metabolic) balance between the production and
ISBN 978-3-901608-32-2
6
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
approach is embedded in our simulation models; it
explains the relationships between acid-base, volume
and ion disturbances.
9-13 Sept. 2007, Ljubljana, Slovenia
5 Learning while playing – an acid-base
chemistry simulation model as an elearning application
The combination of multimedia interactive
environment with simulation games is a very effective
pedagogic tool, making it easier for a student to
understand the complex dynamics of physiological
regulation and pathophysiological disorders of it. It is
possible to play with the system while the regulatory
feedback loops are disconnected. Hence, students
come to understand better the difference between the
behaviour of the system itself and the influence of the
feedback regulation.
The simulation model based on the border
flux balance approach makes a base for our teaching
multimedia application that includes buffering
systems, regulatory influence of respiration and
kidneys and influence of ionic and volume
homeostasis on acid-base status. For instance, student
can try to simulate the evolution (causal chain of
events) of dilution acidosis in subsystem of plasma
Fig. 6 Turning the knob we can increase the
metabolic production rate of non-volatile acids. By
increasing the strong acid production, we cause
metabolic acidosis
Fig. 7 Ratio of metabolic production and renal
excretion of strong acids is highly increased. H+/Na+
and H+/K+ exchange on the cell membrane is
activated. Intracellular and extracellular buffers
buffer H+ ions,
Fig. 9 Acid-base values on this compensatory
diagram are in the acute metabolic acidosis range.
This is the beginning of a progressive reaction by the
ventilation center to counteract metabolic acidosis.
Fig. 8 Blood buffer system - the blood has been
acidified, Base Excess and actual bicarbonate
concentration are decreasing, and pCO2 is also slowly
decreasing.
ISBN 978-3-901608-32-2
Fig. 10 Respiratory compensation is at a maximum in
about 12 hours. Decreasing pCO2 is leading to a rise
of arterial blood pH. Acid-base parameters are
approaching a compensated metabolic acidosis range.
7
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
9-13 Sept. 2007, Ljubljana, Slovenia
buffers (fig.5); he/she starts with normal plasma (A),
first he/she dilutes the plasma (B),then finds out what
happens after buffering equilibration (C) and finally
applies the respiratory regulation (D).
A complex model of acid-base chemistry is embedded
into our educational simulator named Golem [8]. The
underlying mathematical model with all the equations
is as a part of a MATLAB/Simulink library
“Physiolibrary” freely available at internet site
http://patfbiokyb.lf1.cuni.cz/wiki/projekty/physiolibrary .
Illustrations of graphical output of the educational
simulator Golem are at figures…. Golem was made in
Fig. 13 If we overdose the infusion (as shown above),
we correct BE, but hyperventilation leads the patient
from acidemia to alkalemia, which can be dangerous.
Fig. 11 The slow response of the respiratory system
on metabolic acidosis is due to the relative
impermeability of bicarbonate across the blood-brain
barrier. While CO2 penetrates easily and pCO2 in
blood and cerebrospinal fluid is at a similar level, this
is not the case for bicarbonate. Thus bicarbonate
reaches equilibrium, cerebrospinal pH decreases, and
the respiratory center is more stimulated, and alveolar
ventilation increases resulting in a decrease of pCO2.
Values of acid-base parameters are slowly
approaching to compensated metabolic acidosis
range.
Fig. 14 Overdoses of alkaline infusion therapy would
quickly lead the patient from acidemia to alkalemia,
as the cell exchanges K+ for H+ (from the intracellular
buffers). Because extracellular stores of potassium
are limited, its plasma concentration will quickly and
dangerously decreases. It is necessary to replace lost
potassium.
the ControlWeb environment and is used as an
effective means of education since 2001. We are
currently working on a design of the new on-line
version, where the simulation games would be
integrated with a multimedia explication section.
Thus, it would become part of the newly created
internetAtlas of Physiology and Pathophysiology
(referred about in another article of the Eurosim
conference)
6
Understanding of pathophysiological causality of
acid-base disorders gives insight especially into more
complex disorders of internal environment, of which
acid-base disorder may be part. It is a prerequisite of
correct diagnosis and treatment. According to our
experience, an educational simulation model can be an
effective means of understanding true causal chain of
acid-base disorders.
Fig. 12 The kidney's response progressively
develops. Titratable acidity and NH4+ excretion
increases, urine pH decreases. Renal response is in its
maximum in 3-5 days. Only enough should be given
to compensate pH. Turning the knob we are starting
bicarbonate infusion therapy.
ISBN 978-3-901608-32-2
Conclusion
8
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
Fig. 15 To correct the K+ depletion, we must use a
potassium infusion in glucose and insulin - insulin
takes glucose into cells…
9-13 Sept. 2007, Ljubljana, Slovenia
Fig. 16 ...but also increases the entry of potassium
into cells resulting in a faster correction of K+
depletion. The infusion must not contain too large
concentrations of potassium (as this would increase
K+ to dangerous level).
.
7
References
[1] Fencl J., Jabor A., Kazda A., Figge, J.: Diagnosis
of metabolic acid-base disturbances in critically ill
patients. Am. J. Respir. Crit. Care 162:2246-2251,
2000.
[9] Kofránek, J., Anh Vu, L. D., Snášelová, H.,
Kerekeš, R. Velan, T. (2001): “GOLEM –
Multimedia simulator for medical education.” In:
Studies in Health Technology and Informatics.,
vol. 84. MEDINFO 2001, Proceedings of the 10th
World Congress on Medical Informatics. (V.L.
Patel, R. Rogers, R. Haux (Eds.)), IOS Press,
Amsterdam, Berlin, Oxford, Washington DC,
2001, pp. 1042-1046.
[2] Hasselbach K.A.: Die Berechnung der
Wasserstoffzahl des Blutes aus der freiten und
gebundenen Kohlensaure desselben und die
Sauerstoffbindung des Blutes als Funktion der
Wasserstoffzahl.
Biochemische
Zeitschrift,
78:112-144, 1916.
[3] Henderson L.J.: Das Gleichgewicht zwischen
Sauren und Basen im teirischen Organismus.
Ergebnisse der Physiologie Biologischen Chemie
und Experimentellen Pharmakologie.
8:254325.1909.
Acknowledgement
This research was supported by aid grant MŠMT
č.2C06031 and BAJT servis s.r.o company.
[4] Kofránek J, Andrlík M, Matoušek S. Simulation
Model of O2 and CO2 Content and Blood AcidBase Chemistry.
Proceedings of ESTAIC
conference, AAlborg 2005, 15-16.,2005
[5] Siggaard-Andersen, O.: The pH, log pCO2 blood
acid-base nomogram revised. Scand. J. clin. Lab.
Invest., 14: pp. 598-604. 1962.
[6] Singer R.B. and Hastings A.B. An umproved
clinical method for the estimation of disturbances
of the acid-base balance of human blood.
Medicine (Baltimore) 27: 223-242. 1948.
[7] Sirker, A. A., Rhodes, A., and Grounds, R. M..
Acid-base physiology: the 'traditional' and
'modern' approaches. Anesthesia 57: 348-356.
2001.
[8] Stewart P.A. Modern quantitative acid-base
chemistry. Can. J. Physiol. Pharmacol. 61: 14441461. 1983.
ISBN 978-3-901608-32-2
9
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
9-13 Sept. 2007, Ljubljana, Slovenia
PHYSIOLOGICAL FEEDBACK MODELLING IN
MEDICAL EDUCATION
Zdeněk Wünsch, Marcel Matúš, Jiří Kofránek
Charles university, 1st Faculty of medicine, Institute of pathophysiology,
120 00 Prague, U nemocnice 5, Czech republic
zwun@lf1.cuni.cz (Zdeněk Wünsch)
Abstract
Regulations are an ever-present element of each life process, determining its diverse behaviour depending upon various physiological or pathological effects. Textbooks and lecture
notes represent the static and lexical overview of these systems. However, the practical education provides almost no means how to experiment with biological signals, thus examine the
system‘s dynamical characteristics and relations to it‘s parameters in detail. We try to pass
this limitation through the use of simulation experiments, which provide interactive methods
for understanding feedback system behaviour, its basic features, stability conditions and process of parameter influences under certain external conditions. Also, examples of several
physiological models are included. The aim of our educational application is to provide an
interactive tutorial that explicates the behaviour of basic control systems and their dependencies on input signal and inner structure. The definitions and conceptions needed for control
system description as well as methods for system characteristics determination, graphical and
analytical expressions are introduced in necessary extent. All topics are structured into succession of tabular frames, thus creating one complex executable from the Internet using the
ClickOnce technology (part of the .NET framework). We suppose the application to be an
interactive opportunity for students to gain some virtual experience with simple control models along with basic knowledge of computer modelling and regulation theory. In this manner,
the application may be thought of as a part of biocybernetics methodology, whose topics
cover not only simple control systems, but also every complicated and complex dynamical
system of living organisms that contain control circuits, including those with emergent properties.
Keywords: Educational software, Simulation models, Physiological control models, Interactive animation, MS .NET framework
Marcel Matúš. Postgraduate student at The Laboratory of Biocybernetics
and Computer Aided Teaching with the Institute of Pathophysiology of
the 1st Faculty of Medicine, Charles University in Prague. Graduated as
MSc. in technical cybernetics engineering at Czech Technical University
in Prague (graduated in 2007). The scope of his studies covers regulation
in physiology, its modelling and utilization in education.
ISBN 978-3-901608-32-2
1
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
1
this manner, the application may be thought of as a
part of biocybernetics methodology, whose topics
cover not only simple control systems, but also every
complicated and complex dynamical system of living
organisms that contain control circuits, including
those with emergent properties.
Introduction
Regulations are an essential part of life processes
organization. They are part of the homeostasis mechanism, effective control of goal-oriented motion and
automatic compensation of casual influences on inner
and outer environment. The aim of this application is
to provide an interactive tutorial that explicates the
behaviour of basic control systems and their dependencies on input signal and inner structure. This
interactive walkthrough is implemented in 15 successive panels. The definitions and conceptions needed
for control system description as well as methods for
system characteristics determination, graphical and
analytical expressions are introduced in necessary
extent. The application complements the lectured
topics taught within the scope of physiology and
pathophysiology through interactive practical tasks.
Following simulations present experiments that would
be undertaken on living subject only with difficulty –
if even possible. The scale of offered experiments is
quite extensive and, regarding the user-friendly graphical interface, it could be explored without any
preliminary theoretical or technical knowledge.
2
9-13 Sept. 2007, Ljubljana, Slovenia
3
The Methodology
The project comprises of several parts, which require
interdisciplinary teamwork (see for instance [8]). The
scenario design is based upon a long term experience
of physiological control systems lecturing at the 1st
Faculty of Medicine, Charles University in Prague
[1,6,7,9]. The physiologist arranges each exercise’s
scenario, i.e. prepares the mathematical model according to the theory that is supposed to be explained in
the relevant exercise. The model’s validity is tested in
the Matlab/Simulink environment. The computer
programmer designs the framework for model’s control and visualization outside of modelling
environment, thus creating user friendly graphical
interface. Visual and eventually other graphic control
components (e.g. in form of interactive Adobe Flash
animations) are designed by a graphic designer.
3.1
The Topic
Development environments used for simulation, graphics and programming
Due to the project’s complexity, the Microsoft Visual
Studio .NET was used as a suitable framework for
educational simulator implementation. Visual Studio
.NET enables communication with imported libraries
containing the mathematical model along with the
graphical components and animations [4].
Regulations are an ever-present element of each life
process, determining its diverse behaviour depending
upon various physiological or pathological effects.
The structure and dynamic properties of biological
control systems are extremely diverse, eventually even
changing under physiological and pathophysiological
conditions.
Textbooks and lecture notes represent the static and
lexical overview of these systems. However, the practical education provides almost no means how to
experiment with biological signals, thus examine the
system‘s dynamical characteristics and relations to it‘s
parameters in detail. The project is conceived in proceeding from the simple to more complex.
Computer simulation in applied education of biomedical topics uses contemporary system of concepts and
corresponding way of scientific thinking which medical students are seldom familiar with.
It was also the very biological systems complexity and
their characteristics that triggered current systems
science advancement more than a half century ago.
Systems science is not an explicit part of regular medical studies, but a series of topics in biomedical
literature e.g. applied biocybernetics or computational
neuroscience don’t dispense with understanding to
mathematical and computer modelling.
Fig. 1: The components interconnection concept in the
Microsoft .NET framework
The Matlab/Simuling environment was chosen, since
it enables easy design and export to C/C++ code using
the Real-Time Workshop [5], for the modelling and
simulation purposes. The code is subsequently imported into the .NET framework in the of a DLL file.
We suppose the application to be an interactive opportunity for students to gain some virtual experience
with simple control models along with basic knowledge of computer modelling and regulation theory. In
ISBN 978-3-901608-32-2
For the graphic components and animations design,
the Adobe Flash was picked, as it contains the Ac-
2
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
9-13 Sept. 2007, Ljubljana, Slovenia
tionScript 2.0 language, which enables communication with ActiveX components.
default). The model is aplicable in the .NET framework after these changes.
The functional interconnection of used components is
depicted in the figure 1.
3.3
3.2
The model DLL export (Wizards)
The tool for the communication enhancement between
the mathematical model and the .NET framework was
developed in the Laboratory of Biocybernetics and
Computer Aided Teaching in the Institute of Pathophysiology of the 1st Faculty of Medicine, Charles
University in Prague.
The model export to the .NET framework
The final model designed by the physiologist has to be
modified before the conversion to the .NET framework C/C++ code.
The Real-Time Workshop component available in the
Matlab/Simulink environment enables the model conversion into the C/C++ code and the Wizards [10]
modify the DLL to be able to communicate with PortLinks [10]. The exported model is easy to use in the
.NET application. The Wizards application encapsulates the C/C++ code to the object and adds some
input/output ports control methods that facilitate all
requests for setting the input or reading the output. It
also performs the simulation steps according to the
adjusted parameters and the event is set up after each
step for contingent reaction. If these Wizards are not
available, each simulation step must be handled and in
each simulation step all outputs must be read and all
inputs must be set, which would be highly complicated for such a number of models.
Fig. 2: The simple model design
The conversion is performed by using the proprietary
template [10], which encapsulates the model with the
object congaing control methods that facilitate the
communication with visual components and animations. The figure 2 depicts designing of a theoretical
model, which is intended to demonstrate the effect of
various input signals (step, impulse and sinus function) on the third-order system. The same system
ready for export to the .NET framework is depicted in
figure 3.
3.3.1
The communication between the model
and framework components
The PortLinks are used for the communication of the
model’s input and output ports with interactive components. The PortLinks are connection classes, which
automatize the data handling between the model and
visual components.
The main difference between these two models is in
the method of the parameters modification. All changes in e.g. amplitude, input signal frequency or system
parameters have to be made using the input ports. All
function outputs are connected to the output ports.
The demonstration of the communication using PortLinks is shown in the figure 4. From the one side, the
PortLink is connected to the model’s port and from
the other side it is linked to the graphic component. In
Additionally, the solver step is changed to fixed-step
length (the Simulink uses the variable-step solvers by
Fig. 3: The modified model, prepared for an export
ISBN 978-3-901608-32-2
3
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
9-13 Sept. 2007, Ljubljana, Slovenia
case of connection of the visual component to the
model’s output port, all changes registered are immediately automatically passed to the graphic
component. The connection of the visual control component with the model’s input port results in the
immediate passing of the component’s value to the
model.
Fig. 6: Two-way communication example (.NET ->
Flash animation, Flash animation -> .NET)
4
The Application structure
The whole application is structured into the separate
panels that follow in a successive order. Each panel
(task) may be divided according to the topic.
Fig. 4: An example of communication between the
model and visual components using Portlinks
This feature represents a great contribution as to the
code affectivity, since there is no need for concerns
about passing the values between the model and visual
components when using the PortLink correctly.
Panel 0. Opening screen acquaints the user with the
application scope and operating elements.
3.3.2
4.2
4.1
The communication between the .NET
application and interactive animations
The communication between the animation and the
.NET application is provided by the ActiveX component, which is a part of the .NET framework. The
communication may proceed in the following ways:
4.3
4.4
Models of physiological regulatory systems
Panels 6. - 10. Physiological regulatory systems may
frequently differ from systems introduced in previous
panels (they have, however, at least one negative feedback). Differences may for example be multiple
feedbacks, feedforward, parametrical feedback, antagonistic feedback etc.
4.5
Two-way communication (figure 6): The above
mentioned method is used for the .NET-Flash direction of communication. The backward
direction of communication is facilitated by the
FSCommand method, which is able to set up an
event in the .NET framework and hand over two
String parameters („Command“ and „Parameters“).
ISBN 978-3-901608-32-2
Feedback systems – the regulation
Panels 5.1, 5.2. Basic structure of the model with
negative feedback is shown in two panels allowing
wide range of modifications. The user can modify the
linear regulatory system with proportional control. In
addition P, PI, PD or PID regulator can be added,
along with transfer delay. The dynamic component
can be connected to feedback.
One-way communication (figure 5): Animations
are controlled by the model, i.e. model sends data
to the animation. The ActiveX method is used for
changing the animation parameters (performing a
motion, showing an information) through global
variable included in the ActionScript v2.0 (is a
part of the animation).
Fig. 5: One-way communication example (.NET ->
Flash animation)
•
Regulation system components
Panels 1. - 4. This group of tasks enables the user to
try out and to watch the influence of various timevarying signals upon several simple dynamic components. Following panels demonstrate some basic
procedures of static and dynamic characteristics identification and inspection of phase-space of simple
linear systems.
The animations used in this project are designed to
represent the results of the model’s computations. For
this reason, result values are needed to be passed to
them.
•
Introduction
4.5.1
Selected panels description
Simple systems
Dynamical systems with input and output can be of
various type and property. Variants selected for this
panel serve as an example of some dependencies between the input/output values and system properties,
which can be traced when examining the physiological
systems. The basic way to examine these properties is
4
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
to evaluate the system’s response to a standard input
signal (step, impulse, sinus function). Using this function has a substantial theoretical reason and under
certain circumstances it can be the basis for system
identification (type, or differential equation).
9-13 Sept. 2007, Ljubljana, Slovenia
component characteristics are defined by means of
mathematical functions, thus allowing the interpretation of each parameter‘s meaning in an exact and
objective way.
Figure 8 depicts the panel representing the analogy
between the mathematical function (differential equation) and a dynamic mechanical system.
4.5.3
The control loop
The controlling system is a stable dynamical system,
for example when there is no disturbance signal at it’s
input, the regulated output stabilizes itself within certain bounds. The output values tend to resume their
steady-state values (equilibrium points) when deviated
by the disturbance variable. This tendency is caused
by the information about a deviation from the equilibrium point, which implicitly affects the system input
through a control loop. Such a feedback is called
negative.
This panel enables to examine the influence of such
factors on a regulation process under various inputs.
Fig. 7: The panel with simple systems
Figure 7 depicts the influence of parameters on second
order system. Archiving the history of system behaviour enables to examine the influence.
4.5.2
The mechanical dynamic system
Fig. 9: Alternate feedback systems
Figure 9 shows the system’s output for different input
signals and the effect of feedback on results.
4.5.4
It is not always possible to establish an error measuring element when examining the physiological control
system [2]. Controlled parameter value at equilibrium
point is at the intercept point of static characteristics of
circuit components in the opposite direction and corresponds to a requested value. The reverse slope of
characteristics works as a negative feedback, since the
rising input value evokes the fallback on the regulator’s output through the opposite system characteristic, thus lowering the system input .
Fig. 8: The panel with a mechanical system
Linear differential equations are frequently used for
describing the physiological system dynamics. Usually it is and approximation of empirical measurement
and estimation of dependencies. The idealized model’s
ISBN 978-3-901608-32-2
The example of Pco2 regulation
5
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
9-13 Sept. 2007, Ljubljana, Slovenia
This panel’s task is not a factual example of some
examples mentioned above. It rather has some of the
indicated features, such as chaining the reactions,
multiplicity of feedbacks and characterise nonlinearities.
4.5.6
The model of circulation regulation
The model demonstrates the hypothesis explaining the
heart rate and systemic pressure spontaneous variability [3] as a result of deterministic chaos-like behaviour
of baroreflex control system. The two feedbacks are
taken in account – the baroreflex feedback affecting
the heart rate and baroreflex feedback affecting the
myocardium contractility, thus controlling the stroke
volume. The transmission delay is involved in both
feedback at the baroreceptor and sinoatrial knob.
Fig. 10: The system equilibrium point (desired value)
as a intersection point of static characteristics (Pco2
regulation according to Millhorn)
4.5.5
The enzymatic system model
Fig. 12: the transmission delay influence/effect on the
model of circulation regulation
Figure 12 depicts the effect of changing the transmission delay length on the circulation model behaviour.
5
The software resources used for the simulation application development turned out to fit every requisition
for creating a user-friendly and well-controllable interface with graphic output. It should be taken as a
fundament for future development of simulation applications for education.
Fig. 11: The model of an enzymatic system with multiple feedbacks
Sudden, enduring or periodical changes of outer physiological or chemical parameters of metabolical (e.g.
on enzymatic level) cause the disturbance of equilibrium point, which is followed by a reequilibration, or
a new equilibrium point is established. The observation of various components of cell metabolism
revealed, that different types of transitions may occur.
Monotonous, aperiodical, cyclical, oscillating and also
persistent oscillating transition were described.
ISBN 978-3-901608-32-2
Conclusion
The educational application offers wide range of experiments in an area, which is otherwise way too
much difficult to be realized on a living subject. It also
mediates some generally utilizable concepts and
guidelines that constitute various forms of biocybernetics model application. It utilizes the previous
experience and recent software tools for the creation
of similar interactive simulation applications.
6
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
6
9-13 Sept. 2007, Ljubljana, Slovenia
References
[1] Wünsch Z., Dostál C., Veselý A. Základy lékařské
kybernetiky (Principles of medical cybernetics).
Avicenum, Praha 1977
[2] Milhorn H. T. The application of control theory to
physiological systems. Saunders Co., Philadelphia 1966
[3] Cavalcanti S., Belardinelli E. Modeling of cardiovascular variability using differential delay
equation. IEEE Transactions on biomedical engineering, 1996, 43, 982-989
[4] Troelsen A. Pro C# and the .NET platform. Apress
L.P. 2005
[5] The MathWorks. Real-Time Workshop. Online:
www.mathworks.com/products/rtw/
[6] Wünsch Z. Principy fyziologických regulací (Principles of physiological control systems). In:
Lékařská fyziologie (Medical Physiology) (Trojan a kol.), GRADA Pub., Praha 2003
[7] Wünsch Z., Svačina Š., Trojan S. Biocybernetics
in teaching medical students. Internat. Symposium University and its Students. (Collection of
abstracts) UK Praha 1998
[8] Wünsch Z, Kripner T, Kofránek J, Andrlík M. The
mechanical properties of skeletal muscle - Multimedia simulation educational software. In:
Gamal Attiya and Yskandar Hamam editors. Proceedings of the 5th EUROSIM Congress on
Modeling and Simulation.Full Papers CD Volume. Marne La Vallée, France: Eurosim Francosim - Argesim; 2004. p. Simulation in
Education 28-32.
[9] Wünsch Z. Experience in Teaching with the Help
of Models. In Biomedical Modeling and Simulation on a PC, Editors: van Wijk van Brievingh
R.P., Möller D.P.F. Springer-Verlag, NY 1998
[10] Stodulka P.,Privitzer P., Kofránek J., Mašek J..
Nové postupy v tvorbě simulátorů. (New Approaches in simulator design). In Zeithamlova
M., editor, MEDSOFT 2006, Action M. Praha
2006, 177-184.
Acknowledgement
Medical simulators project is supported by aid grant
MŠMT 2C06031 and BAJT servis s.r.o company.
ISBN 978-3-901608-32-2
7
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
9-13 Sept. 2007, Ljubljana, Slovenia
DEVELOPMENT OF WEB ACCESSIBLE MEDICAL
EDUCATIONAL SIMULATORS
Petr Stodulka, Pavol Privitzer, Jiří Kofránek, Martin Tribula, Ondřej Vacek
Institute of Pathophysiology
1st Faculty of Medicine, Charles University in Prague
petr.stodulka@gmail.com (Petr Stodulka), pavol.privitzer@lf1.cuni.cz (Pavol Privitzer)
Abstract
One of our main goals is to incorporate the usage of computers into the process of education.
The great part of our e-learning activities lies in the development of applications that would
demonstrate non-trivial physiological systems behavior, their dynamics and regulation.
Students of medicine generally differ from students of engineering and technical universities;
being less used to purely abstract mathematical thinking. Therefore it is necessary to transfer
the mathematically expressed pathophysiological concepts into more schematic, easily
understandable, yet still precise manner. Best results are achieved, when the students find the
form familiar, e.g. similar to illustrations from the textbooks. In the process of the
development of e-learning simulators, our main focus is creating the model and creating high
quality animations to visualize the simulation results. In this paper, we describe our approach
to usage of simulators in e-learning, the development of these applications, their layered
architecture and technologies we use. We use the Matlab Simulink for creating physiological
models, .NET framework or Control Web as the main platforms and Adobe Flash for
controllable animations. We describe our original tools for accessing Simulink models from
the .NET framework or Control Web and we introduce our approach to maintaining the
simulator state based on statecharts.
Keywords: e-learning, Simulation games, Simulators, Statecharts, Flash, Simulink,
.NET, Control Web
Presenting Author’s biography
Pavol Privitzer, M.Sc., MD graduated in 2001 from the Faculty of
Mathematics and Physics, Charles University in Prague, his major being
Computer Science. In 2007 graduated as Doctor of Medicine, Charles
University in Prague. Currently, he is a Ph.D student of Computer
Science in Biomedicine supervised by Jiří Kofránek, M.D.
ISBN 978-3-901608-32-2
1
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
1
9-13 Sept. 2007, Ljubljana, Slovenia
and also accompanying software framework which
can be embedded in our applications. This is going to
be a part of our future research and development.
Simulation games in e-learning
Our main motivation for developing simulators is their
ability of delivering deeper insights into real biological systems. Important question is what properties a
simulator must have to have this ability. Another
important question is who will use the simulator.
For simulators we are using high quality animations
designed by our artists. Art styled animations provide
more attractive interfaces for our audience. This is
trying to fill the gap between technical versus educational simulator and it is our main technology improvement in development of e-learning simulators based
on more complex models.
As researchers in simulation and mathematical modeling we are more technically oriented and we have
sufficient mathematical skills to understand a mathematically expressed physiological model. For us a
simulator is good enough when it shows just graph
charts and enables only numerical inputs.
2
Architecture of e-learning simulators
The simulator application itself consists of three parts
– the model, a user interface and a control layer. The
model is the data and computational core of the
simulator. The user interface must properly present the
behavior of the model and give the user the possibility
to control it. The middle tier, so called controller,
establishes communication between the model and the
GUI and controls the simulation flow. This approach
is known as the MVC architecture (model – view –
controller) or the UCM architecture (user interface –
control object – model layer).
However, our simulators are used mainly by medical
students and such technically oriented interface seems
to them too raw and non-attractive. We have realized
that for a simulator to be successful in medical
education it must have some gaming elements in it or
even its whole architecture should be similar to a
computer game. This is why we call our applications
also simulation games. See also [1]. This concept is
nowadays recognized worldwide and there is a great
movement in the e-learning research and the computer
game industry called immersive learning simulations,
which can be divided into serious games and educational simulations [4].
2.1 Model layer
The model is the implementation of the problem
domain. Our models are typically capable of producing a timeline of outputs as they run. The inputs
are set at the beginning and can also be changed at run
time. The run of the model is controllable - it can be
paused, resumed or reset to the beginning. In the
future we are going to implement richer time control
of the model (rewinding), model cloning (to be able to
show differences between several possible progressions of the model depending on different inputs)
and the replacement of several implementations of the
model (or its parts) at runtime. That would allow the
user to focus on selected topic and replace the general
simulation model with another more precise.
Generally, children are attracted by beautiful colors,
shapes, movements and by the possibility to play.
Analogically, e-learning applications based on simulation models should be styled by an artist, animated
and highly interactive, much like successful computer
games are. The concept of learning by playing games
is fundamental to education itself and goes back as far
as to the work of the great Czech scholar and didactic
Jan Amos Comenius (1592-1670) Schola ludus
(school as a game / school by play) [3].
Also our research process can be viewed from this
perspective. We have fun when we are developing a
simulation model; we are playing with the simulation,
changing the structure of the model, switching signals
and so on. At the same time we are learning and
deepening our insight of a real biological system because we are comparing and verifying the simulations
against real data and/or our observations.
2.2 Presentation layer
We want to deliver this immersive inner experience
and fun to our medical students because then the learning and also teaching is in the form of a game.
There are two processes which can be employed for
education by simulation: creation of a model and
playing the game based on a model. Both can be used
separately or at the best together in one application.
We use Simulink for creating mathematical models. It
is too raw and technical for medical students even if
we would use prepared higher level subsystem blocks.
We need to develop some kind of a high level visual
system language for the creational part of the game
ISBN 978-3-901608-32-2
Fig. 1 Heart phases simulator (for .NET).
2
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
9-13 Sept. 2007, Ljubljana, Slovenia
Rich visualization of the problem that lets the user
interacts with the model usually consists of common
UI controls like buttons or sliders, output control like
graphs and controllable animations that can also
optionally serve as an input.
Watch
en:co.resetSWTime();
du:co.GetTime();
Time
en:co.setColonSep();
co.setBlinkSep();
du:co.setDigitTime();
2.3 State management
Since the logic of a simulator can be rather complex
we found out that we need a way to maintain the state
of the simulation (and of the application as a whole)
and to react to its change. The trivial solution – set of
state variables with centralized control logic – soon
becomes too complicated and difficult to maintain as
the complexity of the simulator grows. We have found
the solution in hierarchical state automata (or
Statecharts). We use the statecharts for design of the
simulation flow logic and timing. Afterwards they are
automatically used to control the application.
rdhold
Normal
on luhold:co.setOnShine();
on luup: co.setOffShine();
rddown
rddown
SetHr
en:co.setBlinkLeft();
on rudown:co.incHr();
on ludown: co.decHr();
ex:co.stopBlinkLeft();
rddown
SetMin
en:co.setBlinkMed();
on rudown:co.incMin();
on ludown: co.decMin();
ex:co.stopBlinkMed();
ruup
ruup
SWTime
du:co.setSWTime();
H
RunningtSWTime
rddown
ResetSWTime
en:co.resetSWTime();
ex: co.startSWTime();
Hierarchical state automata are a concept introduced
by David Harel [5] for defining complex state
information and well-defined transitions between
states. Harel’s statecharts were further extended in the
Matlab Stateflow tool and one variant is now a part of
the UML 2.0 specification. Statecharts are based on
finite state automata and extend them by providing
high level modeling possibilities such as hierarchy of
states and concurrency (more active states at the same
time). The hierarchy reflects the fact that subsystem
cannot be activated unless its supersystem is active.
The concurrency (sometimes referred as “and”
machines) brings the possibility to model several
parallel subsystems in one statechart. The automaton
is controlled by events coming from outside or raised
in the automaton itself, which can cause a change of a
state and an execution of an action. Actions can be
defined in states and on transitions. Additionally
statecharts allow specifying guard expressions on
transitions.
rdhold
rddown/co.stopSWTime();
rddown/co.startSWTime();
rdhold
Light
off
en: co.setOffShine();
StopSWTime
luup
ludown
on
en:co.setOnShine();
Fig. 2 Sample statechart. Fragment of the wristwatch
simulator.
that all controls display consistent values, custom data
conversion, automatic checking of input boundaries
and custom handlers on value change. Connections
can be temporarily enabled or disabled. This solution
automates the data flow control and makes it trivial to
add or remove UI controls. In the future we are going
to extend this infrastructure with the possibility of
recording of user actions and the work of a simulator.
Replaying will give us a possibility to create tutorials.
We map user interactions onto events for the state
machine and the machine can in response control the
model (starting it, pausing, resetting), the controls of
the user interface (enabling/disabling some controls,
setting boundaries of the input controls) or change the
interconnection infrastructure (switching controls to
display another model outputs, disabling some
connections). See also [2].
3
Software technologies
We are using more software technologies to build
simulators, because we haven’t found a single environment that would satisfy all our needs regarding to
effective visual expressiveness of physiological
models, richness and maturity of the resulting
simulator’s user interface and the ability to produce
standalone and web-accessible applications. Generally
we use either Microsoft .NET or Control Web as the
base platforms we build upon. The models are created
in Matlab Simulink and the animations used as a user
interface are created in Adobe Flash.
We have developed a standalone IDE for visual design
and debugging of hierarchical state automata. The
statechart is exported in the form of its source code
and compiled to be used as a part of the simulator
application.
2.4 Interconnection infrastructure
After the creation of our first few simulators we felt a
need for an infrastructure that would help us bind the
UI controls with the model data. We developed a
interconnection middleware framework that supports
binding several UI controls to one model input or
output, two-way propagation of data, which ensures
ISBN 978-3-901608-32-2
SetSec
en:co.setBlinkRight();
on rudown:co.resetSec();
ex:co.stopBlinkRight();
We have spent significant amount of time on
development of our own unique tools that allow the
Simulink model to be used in a .NET or Control Web
application. Flash animations are inserted in the form
of ActiveX objects.
3
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
C/C++
Automatic build
of Control Web
virtual driver
Automatic build of
.NET assembly
Portable.NET promise the future of portable simulators based on this platform.
Model
development
and testing
in Matlab
Simulink
3.3 Control Web
Creating of
interactive Flash
graphics and
animations
Flash
interactive
animation
DLL virtual
Control Web (Moravian instruments inc., Czech
Republic) is a platform mainly intended for development of industrial visualization and control applications on the WIN32 platform. It is optimized for realtime controlling and visualization. Its visual framework is component based and gives a great efficiency
and rapid application development.
Scenarios
and
Scripting
.NET
Flash
assembly interactive
(model) animation
Development of Storyboard
design
simulator
application
driver
(model)
CW SIMULATOR
9-13 Sept. 2007, Ljubljana, Slovenia
.NET SIMULATOR
Deployment
Testing in education
Fig. 3 Development cycle of a simulator application.
3.1 Simulink
Matlab Simulink is a modeling tool that provides
graphical design and simulation of mathematical
models. Elements of a model can be grouped and
hierarchically ordered, giving rise to subsystems with
user defined inputs and outputs. We have adopted the
concept of simulation chips that represent the building
blocks of our simulation models.
Fig. 4 First prototype of renal function simulator
(Control Web implementation).
We used the Control Web platform mainly before the
release of the .NET, but we still support it for its
advantages such as rapid prototyping and easy visual
interconnection of model and visual controls.
Another Matlab toolbox, Real-Time Workshop
(RTW), exports the model as a C/C++ code. This code
consists of a routine that executes the model logic, a
structure that holds the model data and an ODE solver.
We have developed two new RTW targets (we call
them Wizards) that transform this code to be
compatible with the .NET or Control Web. For the
.NET the code is wrapped in a C++ .NET class that
exposes the model’s inputs and outputs as its interface. For Control Web the code is transformed into a
C++ class that implements the interface making it
possible to be used as a virtual driver in a CW
application. Thus, the final output of the Wizards is a
Matlab independent dynamic library.
3.2 The .NET platform
Fig. 5 Virtual device generation for Control Web.
The .NET represents a modern and strong platform
that allows rapid and comfortable application development with support for visual design of the GUI,
creation of custom visual controls and the web
deployment.
We have a redistributable of CW runtime at our
disposition and we have developed a simple tool
(SimPlayer) that allows us easy distribution of the CW
simulators over the web. Unfortunately there is only
Win32 runtime for Control Web.
The .NET platform is nowadays most supported for
Windows, but open source projects such as Mono or
ISBN 978-3-901608-32-2
4
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
9-13 Sept. 2007, Ljubljana, Slovenia
ActiveX objects. Their behavior is than controlled by
the underlying model layer.
3.4 Flash
Although it is possible to create the presentation layer
of the application using standard or custom made
.NET (or CW) visual components, for more sophisticated visualizations (such as an animation of a
beating heart) we use movie clips created in Adobe
Flash. Fundamental feature of these animations is the
possibility to control them programmatically (using
Action Script) and thus affect the presentation. It is
also possible to get the user input from a Flash clip
and that way create animated user controls.
3.5 Deployment
Pure Flash simulators give the best portability and the
easiest web deployment. Unfortunately, we have no
technology for exporting Simulink to Action Script
and therefore only simulators based on simpler model
can be implemented as pure Flash applications.
Control Web based simulators need the Control Web
runtime on the client machine. Deployment of CW
simulators consists of writing a simple SimPlayer
XML description file which defines the location of the
simulator (zipped) and location of the runtime
(installer). The SimPlayer utility transparently ensures
the presence of the runtime, downloads, installs and
runs the simulation.
Most of our simulators are based on the .NET
framework, which offers simple way of the web
deployment using the ClickOnce technology. This
technology creates a description manifest file
recognized by the framework that allows the application to be transparently downloaded from the internet and run in a security sandbox.
4
Fig. 6 Right heart failure demonstrated using simple
model of circulation (Flash explanation model)
Future development
The longer way we have passed, the more we see what
can be created.
Our vision is becoming much wider than producing
high quality simulation games for education. We see a
great potential in exchanging scientific information
using open simulation games as a medium instead of a
linear text with static pictures. Nonlinear information
exchange will be the future way of sharing scientific
knowledge. Knowledge expressed in a visual system
language, which is linked to multimedia and directly
showing its behavior will provide the platform for
rapid education of the next generation. With this
vision we are developing our tools and frameworks.
In the modeling area we are extending our approach to
object-oriented component based modeling. It gives
the advantage of direct implicit formulation of mathematical equations instead of the need of defined
causality in signal based block diagrams. Component
based modeling seems more convenient and it is more
relevant in physical modeling. An OOP modeling
language is probably the way how we will design a
high-level visual system language for the creational
part of our future simulation games.
Fig. 7 Properties of muscle (Flash exercise model)
As the execution speed of the Flash and Action Script
is increasing over the time, it is a good platform for
implementation of simulators based on less complex
models. Pure Flash based simulators are very portable
and in-browser what is the most desirable deployment
scenario for our simulation games. Some of our Flash
based simulators can be seen in our Atlas of Physiology and Pathophysiology, cited in other article of the
Eurosim 2007 conference [6].
In the software technology, the compatibility and portability is a big problem to solve. The .NET world is
promising a solution. Seamless interlanguage communication and binary portability will be the properties of
the .NET to make it suitable for implementation of our
tools and frameworks. Recently Microsoft announced
its new Silverlight technology which is similar to
Flash technology but it is based on the .NET platform.
In our complex simulators based on the .NET or
Control Web the Flash animations are embedded as
ISBN 978-3-901608-32-2
5
Copyright © 2007 EUROSIM / SLOSIM
Proc. EUROSIM 2007 (B. Zupančič, R. Karba, S. Blažič)
This would give us the possibility to create, for
example, an in-browser educational simulator based
on a very complex model with a rich graphical
interface. This simulator will run both on Windows
and on Mac OS platforms without a change.
6
References
[1] Kofránek J, Andrlík M, Kripner T, Stodulka P.:
From Art to Industry: Development of Biomedical
Simulators. The IPSI BgD Transactions on
Advanced Research 1 #2[Special Issue on the
Research with Elements of Multidisciplinary,
Interdisciplinary, and Transdisciplinary: The Best
Paper Selection for 2005], 63-68. 2005. New
York, Frankfurt, Tokyo, Belgrad. 2005. Journal
(Full)
Our next work in the field of hierarchical state
automata is to develop a plug-in for Visual Studio to
more integrate statecharts into our simulator development process.
5
9-13 Sept. 2007, Ljubljana, Slovenia
Conclusion
[2] Kofránek J, Andrlík M, Kripner T.: Multimedia
educational simulators in pathophysiology - how
to design and why to use them. In: Gamal Attiya
and Yskandar Hamam editors. Proceedings of the
5th EUROSIM Congress on Modeling and
Simulation. Full Papers CD Volume.; Marne la
Vallee, Paris, France: Eurosim - Francosim Argesim; 2004. p. Simulation in Education 22-27.
We have shown our motivations for using simulators
as simulation games in medical education. Our main
improvement is usage of rich graphical user interface
as a gaming element in simulators based on complex
models.
We use Matlab Simulink for physiological modeling,
Adobe Flash for controllable animations and the .NET
or Control Web as the base environment. We have
developed a unique way of exporting the Simulink
model into the .NET framework and into the Control
Web platform. We have created an original integrated
environment for a design of statecharts and their use
in the process of controlling the simulator.
[3] Comenius Johann Amos (1592-1670): The Great
Didactic. ed. by M. W. Keatinge (PDF files at
Roehampton), available on:
http://onlinebooks.library.upenn.edu/webbin/book
/lookupid?key=olbp34684
[4] Clark Aldrich's web page:
http://clarkaldrich.blogspot.com/2007/03/immersi
ve-learning-simulation_14.html
[5] Harel, D.: Statecharts (1987): A visual formalism
for complex systems. Science of Computer
Programming, vol. 8, 1987, 231-274.
[6] http://physiome.cz/atlas
7
Acknowledgement
This research was supported by aid grant MŠMT
2C06031 and BAJT servis s.r.o company.
ISBN 978-3-901608-32-2
6
Copyright © 2007 EUROSIM / SLOSIM
Technical Computing 2007, 15th Annual Conference
1. Jiří Kofránek, Jan Rusz, Stanislav Matoušek: Guyton's Diagram
Brought to Life - from Graphic Chart to Simulation Model for
Teaching Physiology. In:Technical Computing Prague 2007. 15th
Annual Conference Proceedings. Full paper CD-ROM proceedings. (P.
Byron Ed.), Humusoft s.r.o. & Institute of Chemical Technology, Prague,
ISBN 978-80-7080-658-6, str. 1-13, 2007.
GUYTON'S DIAGRAM BROUGHT TO LIFE – FROM
GRAPHIC CHART TO SIMULATION MODEL FOR
TEACHING PHYSIOLOGY
Jiří Kofránek, Jan Rusz, Stanislav Matoušek
Laboratory of Biocybernetics, Department of Pathophysiology, 1st Faculty of Medicine, Charles
University, Prague, Czech Republic
Abstract
Thirty five years ago, A.C. Guyton et al. published a description of a large model of
physiological regulation in a form of a graphic schematic diagram. The authors
brought this old large-scale diagram to life using Matlab/Simulink. The original
layout, connections and description of individual blocks were saved. However,
contrary to the old system analysis diagram, the new one is also a functional
simulation model by itself, giving the user a possibility to study behaviour of all the
variables in time. Furthermore, obvious and less obvious errors and omissions were
corrected in the new Simulink diagram.
1
Introduction
Prof. Arthur C. Guyton, T. G. Coleman and H. J.
Grand published the article [6] in the Annual Review
of Physiology magazine 35 years ago. It was a
completely different form of article than usual
physiological articles published until that time. Its
fundament was a large scheme, which at first sight
evoked some electrotechnical device, but there were
computing blocks shown (multipliers, dividers,
summators, integrators, functional blocks) instead of
electrotechnical components. They symbolized
mathematical operations, which were applied on
physiological quantities. Connecting wires between
Figure 1: Dr. Arthur C. Guyton, with
blocks represented complicated feedback connections
medical
students discussing his computer
of physiological quantifiers? Blocks were divided to
model
of cardiovascular system.
eighteen groups, which have represented separate
physiological subsystems. The central subsystem
symbolized circulation dynamics – to which other blocks were connected (kidney, tissue fluid,
electrolytes, hormonal control and autonomous nervous regulation) via feedback connections..
2
Schematic Diagram Instead of Verbal Description
The article described a large-scale model of the circulatory system regulation in wider
perspective: The respiratory system is integrated into other subsystems of the organism that influence
its function. Instead of giving the reader a set of mathematic equations, the article uses fully equivalent
graphical representation. This syntax graphically illustrates the mathematical relationships in the form
of the above mentioned blocks. The description of the model was given in the form of a principal
graphical chart only (which was, however, fully illustrative), explicatory comments and reasoning
behind the given formulas were very brief, e.g.: “Blocks 266 through 270 calculate the effect of cell
pO2, autonomic stimulation, and basic rate of oxygen consumption by the tissues on the actual rate of
oxygen consumption by the tissues.” Such a formulation required full concentration, as well as some
physiological and mathematical knowledge for the reader to understand the meaning of the formalized
relationships between the physiological entities. Later, in 1973, and in 1975 Arthur C. Guyton
published monographs [7,8], where he explained most of the concepts in more length.
Guyton’s model represents the first large-scale mathematical description of the body's
interconnected subsystems and their functioning. It was indeed a turning point – the impetus to start
1
Technical Computing Prague 2007. 15th Annual Conference Proceedings. Prague, 2007
Figure 2: Overall regulation model of Circulation - original scheme by A.C.Guyton et al., 1972.
Reprinted, with permission, from the Annual Review of Physiology, Volume 34 (c)1972 by Annual
Reviews www.annualreviews.org
the research in the field known as integrative physiology. Using the system analysis of the
physiological regulation, the model was for the first time in history able to depict the simultaneous
dynamics of the circulatory, excretory, respiratory and homeostatic regulation.
The group of A. C. Guyton kept upgrading and extending the model later on, and upon request
they even provided the FORTRAN source code of the model realization to the ones interested. In
1982, the “Human” model appeared [4], representing yet another milestone in the simulation model
development. It gave the possibility to simulate a number of pathological conditions on a virtual
patient (cardiac, respiratory, kidney failure, etc.) and the therapeutic influence of various drugs,
infusions of electrolytes, blood transfusion, etc. Furthermore, the effect of the artificial organ use on
normal physiological functions could have been simulated (artificial heart, artificial ventilator,
dialysis, etc.). Its current interactive web implementation is available from
this
addresshttp://venus.skidmore.edu/human.
The latest work results from Guyton's colleagues and students are Quantitative Circulatory
Physiology and Quantitative Human Physiology simulators [1]. Models can be downloaded from this
address http://physiology.umc.edu/themodelingworkshop/.
3
Pioneer of the Systemic Approach in Physiology
Arthur C. Guyton (Fig. 1) was among the pioneers of system analysis in the inquiry of
physiological regulation. He introduced many fundamental concepts regarding short and long time
regulation of the circulation and its connection with the regulation of circulating volume, osmolarity
and ionic composition of bodily fluids. He worked up a great many original experimental procedures –
for instance, he was the first one to measure the value of pressure in the interstitial fluid. However, he
was not only an innovative experimenter, but also a brilliant analyst and creative synthesizer. He was
able to draw out new conclusions for the dynamics of processes in the body from the experimental
2
ISBN 987-80-7080-658-6, CD ROM Proceedings, http://www.humusoft.cz/akce/matlab07
results and thus explain the physiological basis of a number of regulatory processes in the organism as
a whole. Guyton’s research has shown, for example, that it is not only the heart as a pump that
controls the cardiac output; but that an equally important roles are played by the regulation of tissue
perfusion, dependent on the oxygen supply, as well as on the filling of the vessels and the compliance
of great veins. It was A.C. Guyton who proved that the long-term regulation of blood pressure is done
by kidneys [9].
When you study the dynamism of regulatory processes, verbal description and
common sense are often not sufficient. Prof. Guyton realized this already in the mid sixties, when
he studied the factors influencing blood pressure. Hence, he has searched a more exact way of
expressing relationships; first using connected graphs and finally also computer models. He created
his first computer models, together with his long-term colleague Thomas Coleman, in 1966. As an
erudite physiologist and a hand-minded person at the same time, he was engaged in biomedical
engineering in times, when this specialization did not yet officially exist.
Remarkably, Guyton did not intend to engage in theoretical medicine at first. His original aim
was to work in the clinical field. After he graduated from Harvard University in 1943, he began his
surgical internship at Massachusetts General Hospital. His surgical carrier was interrupted by war. He
was called into the Navy. However, he worked in bacteriological warfare research during most of this
period. After the war, he returned to the surgery, but only for a short while. In 1946, overworked, he
suffered a bout of poliomyelitis that left serious consequences – paralysis of the left arm and leg had
bound him either to a wheelchair or crutches for the rest of his life. However, his creative spirit did not
leave him in this period of hardship, and he invented an electric wheelchair controlled by “a joystick”,
as well as a special hoist for easy transfer of disabled people from bed to the wheelchair. Later, he
received a Presidential Citation for his invention. The physical handicap ended Guyton’s carrier in
cardiac surgery and steered him into the theoretical research. In spite of having job offers at Harvard
University, he returned back to his hometown Oxford, Mississippi, where he first taught pharmacology
at a two-year medical school; however, not long after that, he became head of the Department of
Physiology at The University of Mississippi. He established a world famous physiological school in
what used to be a rather provincial institute (on an American scale). Here, he wrote his world-famous
textbook of physiology, originally a monograph that has seen its eleventh edition already, as well as
more than 600 articles and 40 other books. He has trained many generations of medical students and
more than 150 Ph.D. students. In 1989, he passed on the leadership of the institute to his disciple J.E.
Hall and as a professor emeritus devoted himself to research and teaching. He died tragically in an
automobile accident in 2003.
4
Fixing Errors in Guyton's Chart
Guyton was among the first proponents of the formalized description of physiological reality.
Formalization means converting a purely verbal description of a relevant array of relationships into a
description in the formalized language of mathematics. Guyton's diagram from 1972 (Fig 2) is a
formalized description of results of one of the first significant systemic analysis of physiological
functions.
Graphic notation for description of quantitative and structural relations in physiological systems
suggested by Guyton was adopted by other authors in the seventies and eighties. For example, in 1977
[2] they used a slightly modified Guyton's notation in their monograph, covering the system analysis
of interconnection between physiological regulation systems, [11] formulated, in Guyton's notation,
their model of overall regulation of body fluids, etc.
Later on, means of simulation development tools were used for graphic notation of the structure
of physiological regulation relations, for example; Simulink by the Mathworks company or open
source free software package for teaching physiological modelling and research JSIM [16, 17] (see
http://www.physiome.org/jsim/), or recently, graphic means of expression of simulation language
Modelica [5].
Simulink diagrams are very similar to the thirty five year old notation used in the original model
of A.C.Guyton. Therefore we decided to revive the old model by means of a modern software
instrument. We tried to keep the resemblance identical as it was in the original pictorial diagram - the
layout, the disposition of wires and the quantity labels are the same.
3
Technical Computing Prague 2007. 15th Annual Conference Proceedings. Prague, 2007
5
QAO
5
+
5
QAO
5
+
6
DVS
0
QVO
6
DVS
0
QVO
3.257
VVS
3.257
VVS
Corrected
Figure 3: The error in the Circulatory Dynamics subsystem.
The realization of the old diagram is not as smooth as it might seem at first sight, because, there
are errors and omissions in the original scheme. In a hand-drawn picture, it does not matter so much,
because the overall meaning is still valid (most of the errors are present just on the paper, not in the
original FORTRAN implementation). However, if we try to bring the model to life in Simulink, the
errors show up. The model either behaves inadequately or even becomes unstable, values start to
oscillate and the model complex collapses. There were a few errors – changed signs, a multiplier
instead of a divider, changed connection between blocks, missing decimal point, wrong initial
conditions, etc. – but it was enough for a wrong functioning of the model. Being acquainted with
physiology and system analysis, we could have avoided the mistakes with a little effort.
An easily detectable error in the diagram is, for instance, wrong marking of flow direction in the
summation block no. 5 in subsystem Circulatory Dynamics (Fig 3). It is obvious, that the rate of
increase in systemic venous vascular blood volume (DVS) is the subtraction (not the summation)
between all rates of inflows and rates of outflows. Inflow is a blood flow from systemic arterial system
– its rate is denoted as QAO, outflow rate from systemic veins is a blood flow rate from veins into the
right atrium (QVO). The rate
change of filling of the
vascular system as the blood
volume changes (VBD) is
calculated from the difference
between summation of overall
capacity of vascular blood
compartments
and
blood
+
volume – therefore VBD is the
outflow rate and not the inflow
rate, and in the summator it
must have a negative sign.
+
Corrected
Figure 4: The error in the Non-Muscle Oxygen Delivery subsystem.
4
In subsystem NonMuscle Oxygen Delivery,
there is a wrong depiction of
connection in integrative block
no. 260 (Fig.4). If the model
was programmed exactly as
depicted in the original
ISBN 987-80-7080-658-6, CD ROM Proceedings, http://www.humusoft.cz/akce/matlab07
VIE
1.5
337
HKM
HM2
1600
HMK
336
40
HM
RC1
331
+
VIE
1.5
337
+
0
332
RCD
VIE
1.5
337
HKM
HKM
1600
HM2
HMK
336
40
0
332
0
40
-
RCD
40
+
-
+
-
90
HMK
50
RC1
331
0.8 HM2
336
HM
+
40
HM
Corrected (A)
Corrected
Corrected (B)
Figure 5: The errors in the Red Cells and Viscosity subsystem.
diagram, the value of non-muscle venous oxygen saturation (OSV) would constantly rise and the
model would become unstable very quickly. Besides, there would be an algebraic loop in the model.
Correction is simple, input to summator no. 258 is the value of OSV, and therefore it is sufficient to
move feedback input to summator behind the integrator as it is indicated in the picture.
Small and simple subsystem Red Cells and Viscosity includes two errors (Fig 5). The first is
visible at first sight. It is obvious that the rate of change of red cell mass (RCD) is the subtraction (not
the summation) between red cell mass production rate (RC1) and red cell mass destruction rate (RC2).
The second error is obvious as well. During calculation of a portion of the blood viscosity caused by
red blood cells (VIE) from value of hematocrit (HK) according to the diagram, the viscosity would
have to constantly rise, because the value of quantity HM2 would incessantly rise (HK is the input to
the integrator). According to the diagram, the value of a variable HM2 is equal to 1600 - in a stable
situation and under normal conditions. If we divide this value by a constant parameter HKM
(=0.000920), we should arrive at a normal value VIE. Normal value VIE should be 1.5 (formulated as
a ratio to viscosity of water). We can find out, by simple calculation, that it is not so, and we will
arrive at the correct calculation if we multiply the value HM2 by constant HKM instead of using
division. Thus it is obvious, that block no. 337 should be a multiplier unit and not a dividing unit. In
order to have the value of a variable HM2 in stable situation constant (and under normal conditions
equal to value 1600), the input to integrator must have zero value (block no. 336). Therefore, it is
apparent, that the depiction of feedback has been omitted in the diagram. The corrected diagram is
shown in picture 6 as "Corrected (A)". Viscosity is proportionate to hematocrit and the integrator acts
here as a dampening element. It can be from the experimental data that dependence of viscosity of
blood on hematocrit is not linear proportionate [7]. Therefore in a later realization of the model
(according to source text in Fortran language) the relation between hematocrit (HK) and portion of
blood viscosity was caused by red blood cells (VIE) formulated as follows:
VIE =
HM
( HMK − HM ) HKM
5
(1)
Technical Computing Prague 2007. 15th Annual Conference Proceedings. Prague, 2007
1
AHC
185
158A
.3333
183
1
AH
.14
184
+
1
AHC
185
158A
.14
.3333
183
AH
1
184
+
Corrected
Figure 6: The error in the Antidiuretic Hormone Control subsystem.
Where:
and
HMK = 90
HKM = 5.3333
which is shown in a diagram in fig. 6, marked as Corrected (B). If we compare this picture with the
original chart, the integrator no. 336 is replaced with dividing and summator units (and the value of
HKM constant is quite different). Maybe, this exact structure should have been originally drawn in the
original diagram, and (by mistake, the integrator was drawn instead of divider and summator) a label
HKM on the left side next to integrator no. 336 indicates this situation.
An error in Antidiuretic Hormone Control subsystem is not visible at first sight (Fig. 6).
According to graphic diagram, the following should hold true:
During stable conditions, according to data on the graphic diagram under normal conditions,
the values should be: :
0.333 AH = 1 ,
AHC = 1 .
Then the integrator 185 will have no zero value and the system will not be in stable condition.
Where is the error?
AH*0.3333 is a normalized rate of antidiuretic hormone creation (ratio of current rate of
creation according to the norm). AHC is a normalized concentration of this hormone (according to the
norm). How is the normalized concentration of substance from normalized rate of substance creation
calculated? The classic compartment approach will answer our question.
In subsystems of conducting ADH creation, aldosterone and angiotensin are calculated in the
model from the rate of hormone inflow (normalized as a relative number according to the norm) and
hormone concentration (again normalized as a relative number according to the norm).
6
ISBN 987-80-7080-658-6, CD ROM Proceedings, http://www.humusoft.cz/akce/matlab07
We come out of a simple compartment approach - into a whole-body compartment inflow the
hormone at the rate Fi (it is synthesised) and outflows at the rate Fo. Quantity of hormone M in wholebody compartment depends on the balance between inflow and outflow of the hormone.
Fi − Fo =
dM
.
dt
(2)
Rate of depletion of hormone Fo is proportional to its concentration c:
Fo = k c .
(3)
Concentration of hormone c depends on overall quantity of hormone M and on the capacity of
distribution area V:
M
.
V
(4)
k M dM
=
.
V
dt
(5)
c=
Thus after inserting:
Fi −
Provided that the capacity of distribution area V is constant, we will substitute ratio k/V for
constant k1:
k1 =
k
.
V
(6)
We arrive at:
Fi − k1 M =
dM
.
dt
(7)
In the model, Guyton calculated the concentration of hormone c0 normalized as a ratio of
current concentration c to its normal value cnorm:
c0 =
c
cnorm .
(8)
At invariable distribution area V ratio of concentrations is the same as a ratio of current overall
quantity of hormone M to overall quantity of hormone under normal conditions Mnorm:
c
M
=
cnorm M norm
c0 =
.
(9)
If we formulate the rate of flows in a normalized way (as a ratio to normal rate), then under
normal conditions:
Fi = 1 ,
dM norm
=0.
dt
Therefore:
1 − k1 M norm = 0 .
(10)
Normal quantity of hormone Mnorm will be:
M norm =
1
k1 .
(11)
Hence, the relative concentration of hormone c0 can be formulated:
c0 =
M
= k1 M .
M norm
(12)
c0
k1 .
(13)
Thus:
M=
7
Technical Computing Prague 2007. 15th Annual Conference Proceedings. Prague, 2007
After inserting into differential equation we arrive at:
⎛c ⎞
d ⎜⎜ 0 ⎟⎟
k
c
Fi − k1 0 = ⎝ 1 ⎠ ,
k1
dt
(14)
i.e.:
⎛ 1 ⎞ dc
Fi − c0 = ⎜⎜ ⎟⎟ 0 .
⎝ k1 ⎠ dt
(15)
(Fi − c0 )k1 = dc0 .
(16)
Thus:
dt
According to this equation, the normalized concentration of the hormone c0 is calculated from
the normalized inflow of the hormone Fi. In original Guyton's chart, the normalized concentration of
aldosterone and angiotensin is calculated in this way. In case of ADH, there is an error in the chart.
The normalized rate of inflow in case of ADH:
Fi = 0.3333 AH .
(17)
The normalized concentration of the hormone is:
c0 = AHC ,
(18)
Coefficient k1 = 0.14 .
Instead of (Fi − c0 )k1 =
dc0
dc
, there is a graphic representation of relation Fi − c0 k1 = 0 .
dt
dt
Correct relation in case of ADH should be:
(0.3333 AH − AHC )0.14 = dAHC .
dt
(19)
This relation corresponds to a correct part of diagram shown in fig. 6
Quoted examples of errors in the original graphic depiction of Guyton's model do not mean at
all that the actual implementation of the model did include the above-mentioned errors. The model
was implemented in Fortran language and it functioned flawlessly. What was incorrect was only the
graphic depiction of the mathematical relations that did not correspond to the model.
If somebody implemented the model exactly according to the depiction, without thinking over
and understanding the meaning of mathematical relations between physiological quantities, then such
a model would not function correctly on a computer.
It is interesting, that this complicated schematic diagram was many times overprinted in several
publications and nobody made an effort to fix these errors. After all, at the time, when picture schemes
were created, no appropriate application had existed yet – pictures arose like a complicated drawing –
and to handle redoing such a complicated drawing isn’t so easy. Maybe the authors didn't even want to
correct the errors – the ones who took the pain over the analysis of the model easily uncovered the
diagrams mistakes, the ones who just wanted to blindly copy, failed.
After all, at that time, the authors even used to send round the program source files in Fortran
language, so if somebody wanted to just test the behaviour of the model, s/he did not have to program
anything (at the most they had to routinely convert the Fortran program into other programming
languages).
5
Results
After the correction of errors in the original Guyton's chart, we realized its Simulink
implementation. In the Simulink diagram, we tried to maintain the same distribution of all the
individual elements, as in the original diagram.
8
ISBN 987-80-7080-658-6, CD ROM Proceedings, http://www.humusoft.cz/akce/matlab07
The only difference is in the graphic shapes of the individual elements - e.g. in Simulink, the
multiplier/ divider is represented as a square unlike the "piggy" symbol in Guyton's notation (See Fig.
7). The integrator does not have the sign of integral on itself but the expression "1/ s" (being related to
the transcription of Laplace transformation).
In the Simulink model, we also used switches, by which we could couple or uncouple individual
subsystems and control loops.
Resultant chart of Simulink model is depicted in Fig 8.
We can transform individual physiological subsystems of the model into the form of Simulink
subsystems. The graphic chart of the whole model looks rather better arranged (Fig. 9). Then the
diagram of the model resembles the interconnected network of electronic chips – instead of electric
signals; however, there is a flow of information in individual conductors - data of the model.
Physiological subsystems are represented by "simulation chips" – conductors with input data are
connected to their individual input, and signals with information about the value of individual
physiological quantities are distributed from their output “pins” to other “simulation chips”.
Models formulated through the network of "simulation chips" are also the appropriate tools for
team collaboration between branches of study [13]. Such a chart is much more legible also for an
experimental physiologist who does not have to understand the complicated mathematical structure of
a computational network inside a "simulation chip", however s/he understands the structure and
functions of physiological relations. S/he can study the behaviour of a model in individual simulation
chips on virtual displays and oscilloscopes, which are standard components of the Simulink
environment.
In fig. 10, there is a Simulink implementation of a Guyton-Coleman model from 1986,
formulated with the help of interconnected "simulation chips". When the reader compares it to a
previous picture, s/he can imagine how the model has expanded in the past 14 years.
NON-MUSCLE OXYGEN DELIVERY
260
02M
OSV
168
269
xo
0.7
POV
270
5
258
+
-
259
261
AOM
1
1
s
57.14
+
268
262
POT
+
257
RDO
2688
512
2
lower limit 50
267
263
POV
5
u^3
P40^3
DOB
256
264
266
P4O
MO2
8.0001
265
2400
u^3
271
POT^3
1
s
255
xo
271
1
BFN
HM
272
upper limit 8
POT
P1O
0.00333
OVA
QO2
3
1
BFN
POT
4
AOM
Figure 7: The pictorial block scheme of the original A.C.Guyton's model on the left and the model
block diagram in the Simulink software tool. Analogically positioned and numbered blocks represent
the same mathematical operations. Multipliers and dividers: blocks 255, 257, 259, 261, 263, 268 ,272,
270 ; sum blocks: 256, 258, 262, 264, 266, 269; integrator blocks: 260 a 271; function blocks (cubic
function): 265 a 267; high level saturation: between blocks 272 and 286, low level saturation:
between blocks 265 and 180. The switches can either be set to receive the input values from other
subsystems, or directly from the user, thus disconnecting the block from the rest of the model.
9
Technical Computing Prague 2007. 15th Annual Conference Proceedings. Prague, 2007
.
NON-MUSCLE OXYGEN DELIVERY
MUSCLE BLOOD FLOW CONTROL AND PO2
260
OSV
168
269
237
239
5
PK1
258
PK3
u^3
238
236
QOM
198.7
BFM
5
231
P2O
2400
x
1 o
s
200
P4O
235
8
Xo
P2O
upper limit 8
224
271
POT^3
1
s
HM
xo
271
8.0001
60
P3O
242
PVO
BFN
223
1
u^3
P3O^3
233
250
244
OVA
POM
200
QO2
0.00333
RMO
57.14
234
40
POT
1
1
272
upper limit 8
P1O
232
OSA
255
lower limit .005
251
248
241
2400
u^3
POE
1
7.983
MO2
265
252
AOM
1
DVS
5
8.0001
0.08
PM5
PMO
0.5
2.859
249
8
VPF
POT
PDO
243
122
2.8
8
1
253
247
0.7
256
264
1
0.25
-1
1
s xo
OVA
225
DOB
1
PM4
257
40
2688
263
P40^3
266
0.15
246
5
OVA
POV
RDO
lower limit 50
AMM
1
s xo
u^2
PM1^2
2500
230
40
512
267
254
02A
226
262
POT
AU
1
lower limit .001
229
RMO
245
PMO
800
227
5
268
PM3
240
PK2
259
0.7
POV
270
228
BFM
1
xo
261
AOM
1
1
s
57.14
02M
512
EXC
HM
40
1
0.0125
PVO
40
8
0.9999
1
NON-MUSCLE OXYGEN DELIVERY
VASCULAR
STRESS
RELAXATION
MUSCLE BLOOD FLOW CONTROL AND PO2
260
OSV
168
237
239
PK1
258
PK3
230
POV
238
198.7
lower limit 50
u^3
236
QOM
BFM
263
5
225
DOB
1
s
235
271
HM
xo
271
1
s
31.67
VV7
203
GF3
223
VVE
0.5
250
244
PDO
243
512
EXC
RFN
CNA
142
213
207
214
222
0.025
2.5
177
PRA
0
CNX
178
179
1
s
AH7
AHM
1
1.2
CNE
10
PPC
0.0007
2
181
REK
28
AHY
180
AHZ
RFN
100
1
184
lower limit 3
139
0.001
1.2
AOM
0.9864
0.14
AH
CNR
RBF
RBF
AUM
0.9999
AMM
0.3333
CN8
1.2
RFN
1
1
s
183
182
0.1024
201
lower limit 0.35
PVO
AH1
158A
NOD
176
1
175
CNY
lower limit 0
40
1
40
AHC
185
0.0785
187
10u
CNZ
6
AM
AHM
1
249
8
upper limit 15.0
lower limit 0.4
1.2
ARF
195
0.3
122
HM
0.0125
6
AH2
6
AHM
NOD
221
AAR
186
AH4
0.9996
0.1
215
1.5
0.08
PM5
VPF
189
AHM
216
1
GP3
1
PMO
0.5
2.859
8
188
1
220
211
APD
202
POM
2.8
8
210
1
1
u^3
P3O^3
233
TVD
0.009
AM
1
s xo
VIM
196
200
POT
GF4
GF3
197
OVA
QO2
0.00333
191
0.0009964
219
algebraic
loop
breaking
VIM
0.01028
VV1
62
1
P3O
242
0
190
0.01
0.301
60
PVO
lower limit 0
Z11
AHM
5
234
BFN
TVD
4
Z10
217
1
8.0001
1
40
POT
OSA
255
194
STH
8.25
1
1
1000
63
VV7
251
248
241
RMO
57.14
193
1
STH
0.001022
GLP
VV6
VV2
lower limit .005
61
272
upper limit 8
33
POE
1
DVS
232
0.001
TRR
209
PPC
51.66
1
POT ^3
P1O
252
P2O
upper limit 8
AAR
198
VUD
lower limit 0.0003
0.8
18
AOM
1
8
Xo
7.983
224
u^3
0
247
2400
xo
5
192
POT
8
VUD
212
SRK
P2O
0.7
231
200
2400
218
GFR
208
AAR
0.25
256
264
265
THIRST AND DRINKING
206
0.125
0.00781
PFL
VV7
-1
MO2
8.0001
1
253
199
PM4
1
s xo
OVA
P40^3
P4O
266
GFN
205
1
s
64
5
257
40
1
200
65
EVR
512
267
0.15
KIDNEY DYNAMICS AND EXCRETION
RR
1
246
OVA
2688
AMM
1
s xo
u^2
PM1^2
2500
40
RDO
254
02A
226
262
POT
AU
1
lower limit .001
229
5
RMO
245
PMO
800
227
5
268
PM3
240
PK2
259
0.7
POV
270
228
BFM
1
xo
261
AOM
1
1
s
57.14
02M
269
AOM
0.9864
AMM
AM
1
1
AU
AH8
1
lower_limit_0
1
NON-MUSCLE LOCAL BLOOD FLOW CONTROL
40
POV
277
278
POB
276
274
275
POD
273
ARM
0.9387
1
s
xo
AK1
POK
lower limit 0.2
1
1
40
1
s
xo
lower limit 0.5
30.5
20
RAR
0.1
1
AUM
PAM
34
AUM
POC
287
283
286
100
284b
0.495
0.3
1
1
xo
VAS
1
PA
VAE
100
8
VVS
0.0825
0
1
0.4
PLA
Z12
QLO
1
107
DAU
AUK
AUB^3
304
50
RVM = f(PP2)
RPT
AU2
QRN
QRN = f(PRA)
Z8
309
0
19
15.18
PLA
23
6
RPT
QPO
21
AUJ
AUN calculation
0.005
PRA
GP1
14
DPL
316
1
1
s
8.154e-006
110
VID
GPD
0
CKI
VTL
GP2
VPA
0.0048
314
312
AUV
0.9993
AUL
VV9
PIF
84
3.159
AU
313
0.3
VIF
PTS
GPD
VVR
2.95
318
8
70
2.949
AUH
1
1
0.9998
PPA
150
0.4667
0.55
0.5
AUM
AVE
0.9997
1
s
0.000225
138
151
VIE
0
0.0003
152
AU
0.5
143
DFP
PLF
1
2-(0.15/u)
PPI = 2 - (0.15/VPF)
333
57600
0.0125
142
xo
0.1
VPF
40
93
94
PGC
PGR
0.01252
334
344
1
349
5
VRC
VRC
117
99
CNA
118
NED
0.25
119
xo
2130
0.1
1
s
NAE
CNA
142.1
142
NID
PGH
1
2
xo
1
s
1
1
HPL
xo
1
s
HMD
HPR
STH
0.1
1
VG
1
RKC
RC2
CHY^2
PGP
HMD
100
VPF
REK
u^2
PG2
95
PIF
upper limit 1
PTC
-1.154e-008
1
s
0.00042
NOD
1
s
57600
348
343
VB
DFP
0
126
116
HM
40
0.0000058
124
CKE
125
96
V2D
xo
1
0.4
335
PPI
141
1
1
HEART RATE AND STROKE VOLUME
1
352
HPR
347
342
HM
2
VRC
PFI
1
DHM
1
336b
2
xo
11
HMD
5
123
KOD
1
s
140
5
KE
120
98
HPL
90
RCD
144
0.0003
1
s
xo
75
0.013332
u^0.62 5 PP3^0.1
u^0.625 PA4^0.62 5
HMK
332
PPO
CPF
0
0.00014
122
KED
KID
11.4
VGD
100
HM2
336
321
40
AM
97
RC1
2
PRA
121
0.0028
(u/12)^2
PTT
PLF
PLF 145
PPI
322
323
324
140
xo
PTT = (VTS/12)^2
331
POS
139
32
327
325
2850
KE1
CKE
5
6
0.0025
351
KIR
127
0.013
350
345
PP3
346
341
128
129
KIE
1
KCD
1
s
85
POT
15
1
340
PPA4
0.5333
POS
PPC
HR
100
1
464e-7
PPD
130
113
101
VTS
330
-9.648e-008
148
PPN
PCP
SVO
337
POY
0.375
PPD
QLO
HSR
HSL
lower limit 0.2375
147
AVE
AUTONOMIC CONTROL
11.98
PA
PPA
KCD
VG
VG
8
15
100
1.5
3550
GPR
86
VTS
338
xo
1
10
PTS = f(VIF)
VIM
0.333
0.4
xo
1
s
88
0
12
339
1
VPF
VIC
1
s
1
s
xo
0.999
VIM
POT
329
PO2
PPR
149
137
135
xo
25
KI
112
8.25
146
15
0.9994
PO1
CPN
CPP
28
136
AUH
PPC
320
0
134
131
171
xo
0
0
VVR
0.7
319
-6.3
1
s
PLA
AUD
315
AUY
1
0.01
VIC
VID
12
CCD
CNA
VID
87
20
0
133
132
111
0.0005
83
VTC
CIRCULATORY DYNAMICS
1
0.15
326
VIF
0.002
xo
VTD
0.21
0.85
0.07026
xo
12
IFP
AUJ^AUZ
AU9
328
103
DPI
0.1
0.09477
0.38
0.30625
15
1
1
s
v
u
104
102
PRA
1
s
VPA
xo
311
15
QRO
VPE
PPA
AUZ
310
1
AU
1
ALDOSTERONE CONTROL
DPC
0.04
VRA
18
20
22
PGL
AU8
AUN
AUN
PIF
lower limit 4
QPO
PPA
xo
PTT
20
0.25
170
xo
109
CPI
-6.334
20
-4
1
s
AMC
lower limit 6
9
1
s
PR1
0
169
60
166
KN1
CNA
0.04
PRA
VRA
1
1
s
PTC
xo
AUH
AUB
105
AMT
AMR
200
165
CKE
5
142
13
PPA
0.00352
7.8
CPI
0.1
0
AMP = f(PA)
106
PIF
20.18
108
DPL
5
DRA
15
1
51
AUH
0.026
308
0.0005
305
0
PLD
0.004
lower limit 5
0.002
PTC
0
PP2
0
VTL
5.045
12
QRO
16
52
PL1
AM1
DPL
VTL
HMD
HMD
RVM
lower limit 0
0.0357
20
57
PLA
0.03791
0.001879
HPR
1.4
RPV
AUB calculation
SVO
QVO
1
55
1
0.4
DLA
24
AUN CALCULATION
317
171
-0.017
168
AMP
HSR
1
56
307
1
303
AU6
301
AUB CALCULATION
AUM
AUH
50
PP1
QLN = f(PLA)
xo
302
when PA1<50: AUN=6
when 20>PA1<50: AUN=0.2*(50-PA1)
when PA1>=50: AUC=0
AM2
AM3
167
PA
100
48
RPA
20
-4
1
s
VLA
AUC
when PA1<40: AUB=1.85718
AUB
when 40>PA1<170: AUB=0.014286*(170-PA1)
when PA1>=170: AUB=0
19.8
10u
11
49
sqrt
0
AUC
AUC calculation
u^3
172
AM5
164
1
RVM
53
VLA
25
AUC CALCULATION
CPA
54
QLN
26
A1B
173
174
AM
1
ANM
1
2.738
15
VLE
0.1
295
8
EXC
PA1
AM
RVG
47
28
20.039
0.9984
QRF
4
P2O
296
1.24
PA1
PR1
PVS
0.6
QLN
44
27
when PA1<40: AUC=1.2
when 40>PA1<80: AUC=0.03*(80-PA1)
when PA1>=80: AUC=0
10
QLO
260
0
293
3
297
EXE
ANGIOTENSIN CONTROL
DPC
VP
0.002
45
46
0
1
8
POQ
0.03824
20
3
3.002
VTL
LVM = f(PA2)
100
294
298
DPC
0.04
VP
1
s
0
0.01453
PLA
15
ANT
71
xo
3
DFP
158
0.1
PVS
8
upper limit 8
PA
lower limit 4
152
VRA
PA2
LVM
PLA
POT
POQ
5
VPA
157
AN1
ANM
74
VPD
VUD
VLA
58
156
155
CNE
CPI
70
0.001
VB
1.4
1
QLN
1
10
154
CNA
CP1
TVD
0.001
VVS
59
HSL
LVM
HMD
HPL
5.07
QLO
291
CPP
142
1
s xo
ANC
(1.2/u)^3
(1.2/RFN)^3
10
75
60
VAS
8
74
PC^3
1.6283e-007
PA
29
5
159
RFN
1.2
69.76
CPK
QAO
0.042
153a
CNE
PPC
160
AN2
10u
153b
0.4
u^3
0.001879
VTC
PVS
QLO
PA1
73
0.002
5
3.7
CV
VAS3
DAS
292
28
161
AN3
4.0
REK
CPP
PTC
PVS
lower limit 0.0001
VVE
QVO
3.3
lower limit 0.7
210
16.79
9
VV8
0.3
VVS
AN5
1.004
xo
VTC
xo
3.25
2.8
PPC
69
-6.3
3.774
7
1
s
BFN
QVO
30
PA1
CFC
0.007
2.95
DVS
2
PGS
xo
0.85
AR3
1
s
32
1
s
if (POD<0) {POJ=PODx3.3}
POZ
289
RSN
33
lower limit 0.3
A3K
VVR
6
VBD
162
163
1
ANM
ANM
1
s
VP
PIF
PVS
5
2.859
0.00355
31
0.33
11520
288
VP
0
QAO
BFN
CPP
PRP
72
4
PA
POJ
62
61
2
VV7
0.3216
RBF
1
284
0.04
80
70
68
VRC
VVE
BFM
100
16.79
VB
RVS
DPP
0.00047
PC
5.002
17
1.011
DPL
DLP
LPK
CPR
17
1.2
AUM
PC
VB
5
2.781
PAM
DP0
78
77
85
17
PC
0.007
0
67
PVS
3.7
79
PPD
PVG
BFN
39
17
RAR
1
66
1.6379
0
2.8
41
CN2
ANTIDIURECTIC HORMONE CONTROL
RVS
1
s xo
0.2
0.0212
RV1
2.9
BFM
PGS
CAPILLARY MEMBRANE DYNAMICS
2.9
41A
RV1
43
1
3
37
PON
AR2
42
CN7
1.79
RVS
RSM
AUM
RAM
VIM
VIM
A2K
1
1
38
AMM
VIM
RAM
96.3
35
ANU
1.6
ARM
AR3
AR1
36
ANU
1
279
280
algebraic
loop
breaking
40
1
1
290
POA
281
282
285
AVE
lower limit 0.95
ARM
POR
0.06
1
AR1
ANM
1
57
HYL
PTS
89
90
91
VIC
PIF
92
0.0125
VPF
114
115
VEC
CHY
39.97
VTW
PRM
-5.9
3
VP
VTW
24.2
1
12
VTS
0.0125
PULMONARY DYNAMICS AND FLUIDS
LIST OF VARIABLES
AAR-afferent arteriolar resistance [torr/l/min]
AHM-antidiuretic hormone multiplier, ratio of normal effect
AM-aldosterone multiplier, ratio of normal effect
AMC-aldosterone concentration
AMM-muscle vascular constriction caused by local tissue control, ratio to resting state
AMP-effect of arterial pressure on rate of aldosterone secretion
AMR-effect of sodium to potassium ratio on aldosterone secretion rate
AMT-time constant of aldosterone accumulation and destruction
ANC-angiotensin concentration
ANM-angiotensin multiplier effect on vascular resistance, ratio to normal
ANN-effect of sodium concentration on rate of angiotensin formation
ANP-effect of renal blood flow on angiotensin formation
ANT-time constant of angiotensin accumulation and destruction
ANU-nonrenal effect of angiotensin
AOM-autonomic effect on tissue oxygen utilization
APD-afferent arteriolar pressure drop [torr]
ARF-intensity of sympathetic effects on renal function
ARM-vasoconstrictor effect of all types of autoregulation
AR1-vasoconstrictor effect of rapid autoregulation
AR2-vasoconstrictor effects of intermediate autoregulation
AR3-vasoconstrictor effect of long-term autoregulation
AU-overall activity of autonomic system, ratio to normal
AUB-effect of baroreceptors on autoregulation
AUC-effect of chemoreceptors on autonomic stimulation
AUH-autonomic stimulation of heart, ratio to normal
AUK-time constant of baroreceptor adaptation
AUL-sensitivity of sympathetic control of vascular capacitance
AUM-sympathetic vasoconstrictor effect on arteries
AUN-effect of CNS ischemic reflex on auto-regulation
AUV-sensitivity control of autonomies on heart function
AUY-sensitivity of sympathetic control of veins
AUZ-overall sensitivity of autonomic control
AVE-sympathetic vasoconstrictor effect on veins
AlK-time constant of rapid autoregulation
A2K-time constant of intermediate autoregulation
A3K-time constant of long-term autoregulation
A4K-time constant for muscle local vascular response to metabolic activity
BFM-muscle blood flow [l/min]
BFN-blood flow in non-muscle, non-renal tissues [l/min]
CA-capacitance of systemic arteries [l/torr]
CCD-concentration gradient across cell membrane [mmol/l]
CHY-concentration of hyaluronic acid in tissue fluids [g/l]
CKE-extracellular potassium concentration [mmol/l]
CKI-intracellular potassium concentration [mmol/l]
CNA-extracellular sodium concentration [mmol/l]
CNE-sodium concentration abnormality causing third factor effect [mmo/l]
CPG-concentration of protein in tissue gel [g/l]
CPI-concentration of protein in free interstitial fluid [g/l]
CPN-concentration of protein in pulmonary fluids [g/l]
CPP-plasma protein concentration [g/l]
CV-venous capacitance [l/torr]
DAS-rate of volume increase of systemic arteries [l/min]
DFP-rate of increase in pulmonary free fluid [l/min]
DHM-rate of cardiac deterioration caused by hypoxia
DLA-rate of volume increase in pulmonary veins and left atrium [l/min]
HEART HYPERTROPHY OR DETERIORATION
RED CELLS AND VISCOSITY
DLP-rate of formation of plasma protein by liver [g/min]
DOB-rate of oxygen delivery to non-muscle cells [ml O2/min]
DPA-rate of increase in pulmonary volume [l/min]
DPC-rate of loss of plasma proteins through systemic capillaries [g/min]
DPI-rate of change of protein in free interstitial fluid [g/min]
DPL-rate of systemic lymphatic return of protein [g/min]
DPO -rate of loss of plasma protein [g/min]
DRA-rate of increase in right atrial volume [l/min]
DVS-rate of increase in venous vascular volume [l/min]
EVR-postglomerular resistance [torr/l]
EXC-exercise activity, ratio to activity at rest
EXE-exercise effect on autonomic stimulation
GFN-glomerular filtration rate of undamaged kidney [l/min]
GFR-glomerular filtration rate [l/min]
GLP-glomerular pressure [torr]
GPD-rate of increase of protein in gel [l/min]
GPR-total protein in gel [g]
HM-hematocrit [%]
HMD-cardiac depressant effect of hypoxia
HPL-hypertrophy effect on left ventricle
HPR-hypertrophy effect on heart, ratio to normal
HR-heart rate [beats/min]
HSL-basic left ventricular strength
HSR-basic strength of right ventricle
HYL-quantity of hyaluronic acid in tissues [g]
IFP-interstitial fluid protein [g]
KCD-rate of change of potassium concentration [mmol/min]
KE-total extracellular fluid potassium [mmol]
KED-rate of change of extracellular fluid potassium concentration [mmol/min]
KI-total intracellular potassium concentration [mmol/l]
KID-rate of potassium intake [mmol/min]
KOD-rate of renal loss of potassium [mmol/min]
LVM-effect of aortic pressure on left ventricular output
MMO-rate of oxygen utilization by muscle cells [ml/min]
M02--rate of oxygen utilization by non-muscle cells [ml/min]
NAE-total extracellular sodium [mmol]
NED-rate of change of sodium in intracellular fluids [mmol/min]
NID-rate of sodium intake [mmol/min]
NOD-rate of renal excretion of sodium [mmol/min]
OMM-muscle oxygen utilization at rest [ml/min]
OSA-aortic oxygen saturation
OSV-non-muscle venous oxygen saturation
OVA-oxygen volume in aortic blood [ml O2/l blood]
OVS-muscle venous oxygen saturation
O2M-basic oxygen utilization in non-muscle body tissues [ml/min]
PA-aortic pressure [torr]
PAM-effect of arterial pressure in distending arteries, ratio to normal
PC-capillary pressure [torr]
PCD-net pressure gradient across capillary membrane [torr]
POP-pulmonary capillary pressure [torr]
PDO-difference between muscle venous oxygen PO2 and normal venous oxygen PO2 [torr]
PFI-rate of transfer of fluid across pulmonary capillaries [l/min]
PFL-renal filtration pressure [torr]
PGC-colloid osmotic pressure of tissue gel [torr]
PGH-absorbency effect of gel caused by recoil of gel reticulum [torr]
PGL-pressure gradient in lungs [torr]
PGP-colloid osmotic pressure of tissue gel caused by entrapped protein [torr]
PGR-colloid osmotic pressure of interstitial gel caused by Donnan equilibrium [torr]
PIF-interstitial fluid pressure [torr]
PLA-left atrial pressure [torr]
TISSUE FLUIDS, PRESSURES AND GEL
PLD-pressure gradient to cause lymphatic flow [torr]
PLF-pulmonary lymphatic flow [torr]
PMO-muscle cell PO2 [torr]
POD-non-muscle venous PO2 minus normal value [torr]
POK-sensitivity of rapid system of autoregulation
PON-sensitivity of intermediate autoregulation
POS-pulmonary interstitial fluid colloid osmotic pressure [torr]
POT-non-muscle cell PO2 [torr]
POV-non-muscle venous PO2 [torr]
POY-sensitivity of red cell production
POZ-sensitivity of long-term autoregulation
PO2-oxygen deficit factor causing red cell production
PPA-pulmonary arterial pressure [torr]
PPC-plasma colloid osmotic pressure [torr]
PPD-rate of change of protein in pulmonary fluids
PPI-pulmonary interstitial fluid pressure [torr]
PPN-rate of pulmonary capillary protein loss [g/min]
PPO-pulmonary lymph protein flow [g/min]
PPR-total protein in pulmonary fluids [g]
PRA-right atrial pressure [torr]
PRM-pressure caused by compression of interstitial fluid gel reticulum [torr]
PRP-total plasma protein [g]
PTC-interstitial fluid colloid osmotic pressure [torr]
PTS-solid tissue pressure [torr]
PTT-total tissue pressure [torr]
PGV-pressure from veins to right atrium [torr]
PVG-venous pressure gradient [torr]
PVO-muscle venous PO2 [torr]
PVS-average venous pressure [torr]
QAO-blood flow in the systemic arterial system [l/min]
QLN-basic left ventricular output [l/min]
QLO-output of left ventricle [l/min]
QOM-total volume of oxygen in muscle cells [ml]
QO2-non-muscle total cellular oxygen [ml]
QPO-rate of blood flow into pulmonary veins and left atrium [l/min]
QRF-feedback effect of left ventricular function on right ventricular function
QRN-basic right ventricular output [l/min]
QRO-actual right ventricular output [l/min]
QVO-rate of blood flow from veins into right atrium [l/min]
RAM-basic vascular resistance of muscles [torr/l/min]
RAR-basic resistance of non-muscular and non-renal arteries [torr/l/min]
RBF-renal blood flow [l/min]
RC1-red cell production rate [l/min]
RC2-red cell destruction rate [l/min]
RCD-rate of change of red cell mass [l/min]
REK-percent of normal renal function
RFN-renal blood flow if kidney is not damaged [l/min]
RKC-rate factor for red cell destruction
RM0-rate of oxygen transport to muscle cells [ml/min]
RPA-pulmonary arterial resistance [torr/l/min]
RPT-pulmonary vascular resistance [torr/l/min]
RPV-pulmonary venous resistance [torr/l/min]
RR-renal resistance [torr/l/min]
RSM-vascular resistance in muscles [torr/l]
RSN-vascular resistance in non-muscle, n/minon-renal tissues [torr/l/min]
RVG-resistance from veins to right atrium [torr/l/min]
RVM-depressing effect on right ventricle of pulmonary arterial pressure
RVS-venous resistance [torr/l/min]
SR-intensity factor for stress relaxation
SRK-time constant for stress relaxation
ELECTROLYTES AND CELL WATER
STH-effect of tissue hypoxia on salt and water intake
SVO-stroke volume output [l]
TRR-tubular reabsorption rate [l/min]
TVD-rate of drinking [l/min]
VAS-volume in systemic arteries [l]
VB-blood volume [l]
VEC-extracellular fluid volume [l]
VG-volume of interstitial fluid gel [l]
VGD-rate of change of tissue gel volumes [l/min]
VIB-blood viscosity, ratio to that of water
VIC-cell volume [l]
VID-rate of fluid transfer between interstitial fluid and cells [l/min]
VIE-portion of blood viscosity caused by red blood cells
VIF-volume of free interstitial fluid [l]
VIM-blood viscosity (ratio to normal blood)
VLA-volume in left atrium [l]
VP-plasma volume [l]
VPA-volume in pulmonary arteries [l]
VPD-rate of change of plasma volume [l]
VPF-pulmonary free fluid volume [l]
VRA-right atrial volume [l]
VTC-rate of fluid transfer across systemic capillary membranes [l/min]
VTD-rate of volume change in total interstitial fluid [l/min]
VTL-rate of systemic lymph flow [l/min]
VTW-total body water [l]
VUD-rate of urinary output [l/min]
VV7-increased vascular volume caused by stress relaxation [l]
VVR-diminished vascular volume caused by sympathetic stimulation [l]
VVS-venous vascular volume [l]
Z8-time constant of autonomic response
Figure 8: Guyton's overall regulation model of Circulation - implementation in Matlab/Simulink. The layout
and block numbering is exactly the same as in the original Guyton's scheme (Fig. 2). The difference is, that
this scheme is also a fully functional simulation model.
10
ISBN 987-80-7080-658-6, CD ROM Proceedings, http://www.humusoft.cz/akce/matlab07
NON-MUSCLE OXYGEN DELIVERY
MUSCLE BLOOD FLOW CONTROL AND PO2
0.01251
39.96
HM
40
198.5
VPF
0.0125
8.005
OVA
200
MUSCLE BLOOD FLOW CONTROL AND PO2
VPF
HM
39.96
198.5
8
NON-MUSCLE OXYGEN DELIVERY
OVA
200
POT
HM
INTPUTS:
HM-hematocrit [%]
OVA-oxygen volume in aortic blood [ml O2/l blood]
BFN-blood flow in non-muscle, non-renal tissues [l/min]
AOM-autonomic effect on tissue oxygen utilization
OVA
HM
40
1.019
BFM
1
OUTPUTS:
POT-non-muscle cell PO2 [torr]
POV-non-muscle venous PO2 [torr]
BFN
2.8
40
1
BFN
EXC
POV
0.9982
8
P2O
8
P2O
0.9982
OUTPUTS:
OVA - oxygen content of arterial blood
[ml O2 STPD/l blood]
AOM
P2O AOM - autonomic effect on tissue oxygenation
EXC
AMM - muscle vascular constriction caused by logical tissue control
[multiplifier, ratio to normal]
BFM
2.857
OVA
INTPUTS:
VPF - volume of free fluid in the pulmonary interstitium
HM - hematocrit [%]
BFM - blood flow in muscles
[l/min]
EXC - Effect of excercise on the metabolic usage
of oxygen by the muscles [ratio to resting state]
AU - overall activity of autonomic system
POT
1
AOM
0.9996
0.9879
40
POV
1
AMM
AU
1
AOM
1
AU
AMM
AOM
Muscle Blood Flow Control And pO2
NON-MUSCLE OXYGEN DELIVERY
NON-MUSCLE OXYGEN DELIVERY
THIRST AND DRINKING
KIDNEY DYNAMICS AND EXCRETION
MUSCLE BLOOD FLOW CONTROL AND PO2
7.999
100
0.01251
39.99
HM
40
8
NON-MUSCLE OXYGEN DELIVERY
MUSCLE BLOOD FLOW CONTROL AND PO2
OVA
200
OVA
HM
40
POT
HM
INTPUTS:
HM-hematocrit [%]
OVA-oxygen volume in aortic blood [ml O2/l blood]
BFN-blood flow in non-muscle, non-renal tissues [l/min]
AOM-autonomic effect on tissue oxygen utilization
1.013
BFM
1
OUTPUTS:
POT-non-muscle cell PO2 [torr]
POV-non-muscle venous PO2 [torr]
BFN
40
1
BFN
EXC
POV
1
27.99
PPC
28
0.01041
8
VVE
0.3
VV7
VIM
1
0
1
VIM
OUTPUT:
VV7 - increased vascular volume caused by stress relaxation [l]
1
1
AOM
REK
REK
Vascular Stress Relaxation
0.9873
1.003
INTPUTS:
PA - aortic pressure [torr]
PPC - plasma colloid osmotic pressure [torr]
VIM - blood viscosity (ratio to normal blood
[torr min/ll]
REK - percent of normal renal function [ratio to normal]
CNE - sodium concentration abnormability
causing third factor effect [mmol/l]
AUM - sympathetic vasoconstrictor effect
on arteries [ratio of normal effect]
AHM - antidiuretic hormone [ratio of normal effect]
AM - aldosterone multiplier [ratio of normal effect]
0.9988
INTPUT:
VVE - VVE - excess blood (stressed) volume in the veins [l]
P2O
1
AMM
AU
0.001
0
AHM
TVD
1.201
Thirst And Drinking
RBF
1.2
RBF
OUTPUTS:
VUD - rate of urinary output [l/min]
RBF- renal blood flow [l/min]
RFN - renal blood flow if kidney is not damaged [l/min]
NOD - rate of renal excretion of sodium [mmol/min]
CNE
10
1
AU
1
1
STH
9.834
40
POV
AOM
1
0.9995
VUD
KIDNEY DYNAMICS AND EXCRETION
PPC
VASCULAR STRESS RELAXATION
0.3219
STH
INTPUT:
POT - non muscle cells PO2 [torr]
AHM - antidiurectical hormone effect to non renal
vascular resistance, multiplifier
(ratio to normal effect)
OUTPUT:
STH - salt appetite multiplifier factor
[ratio to normal]
TVD - rate of intake of fluid by mouth
AHM
TVD
or otherwise [l/min]
VUD
0.001
7.982
P2O
CNE
AMM
AOM
1.005
POT
8
POT
OVA
INTPUTS:
VPF - volume of free fluid in the pulmonary interstitium
HM - hematocrit [%]
BFM - blood flow in muscles
[l/min]
EXC - Effect of excercise on the metabolic usage
of oxygen by the muscles [ratio to resting state]
AU - overall activity of autonomic system
OUTPUTS:
OVA - oxygen content of arterial blood
[ml O2 STPD/l blood]
AOM
P2O AOM - autonomic effect on tissue oxygenation
EXC
AMM - muscle vascular constriction caused by logical tissue control
[multiplifier, ratio to normal]
BFM
2.861
2.8
0.0009778
PA
VASCULAR STRESS RELAXATION
200
39.99
POT
198.7
PA
100
OVA
VPF
HM
THIRST AND DRINKING
198.7
VPF
0.0125
7.999
1.201
RFN
1.002
Muscle Blood Flow Control And pO2
NON-MUSCLE OXYGEN DELIVERY
1
1.2
AAR - afferent arteriolar resistance [torr min/l]
EVR - postglomerular resistance [torr min/l]
RR - renal resistance [torr min/l]
GLP - glomerular pressure [torr]
GFN - glomerular filtration rate of undamaged kidney [l/min]
GFR - glomerular filtration rate [l/min]
AUM
AUM
0.9995
RFN
ANGIOTENSIN CONTROL
AHM
1
1.003
0.09917
AHM
NOD
0.9925
AM
1
0.1
1
NOD
AU
AU
ANTIDIURECTIC HORMONE CONTROL
0.09827
AM
Kidney Dynamics and Excretion
PRA
0
0.9995
AHM
OUTPUT:
AHM - antidiurectic hormone multiplifier,
ratio of normal effect
142.2
AHM
CNA
142
NON-MUSCLE LOCAL
BLOOD FLOW CONTROL
INTPUT:
AU - overall activity of autonomic system,
ratio to normal
PRA - right artial pressure
CNA - extracellural sodium contrentration
1
PRA
CNA
Antidiurectic Hormone Control
CIRCULATORY DYNAMICS
0.9399
NON MUSCLE LOCAL BLOOD FLOW CONTROL
INTPUT:
POT - non-muscle cells PO2 [torr]
40
POV
40
POV
0.9399
OUTPUT:
ARM - vasoconstrictor effect of local blood flow
autoregulation in non-muscle tissues
[ratio to normal]
ARM
1.6
ARM
ARM
1.013
BFM
0.9988
1
1
ARM
VIM
1
VIM
Non-Muscle Local Blood Flow Control
BFM
ANGIOTENSIN CONTROL
1.002
2.784
AUM
1
RVS
2.9
AUM
0.9985
CAPILLARY MEMBRANE DYNAMICS
RVS
3.775
0.9873
2.784
1.001
0.3219
INTPUTS:
ARM - vasoconstrictor effect of all types of autoregulation
VIM - blood viscosity (ratio to normal blood)
AUM - sympathetic vasoconstrictor effect on arteries
ANM - angiotensin multiplier effect on vascular resistance, ratio to normal
AMM - muscle vascular constriction caused by local tissue control, ratio to resting state
AVE - sympathetic vasoconstrictor effect on veins
RBF - renal blood flow [l/min]
PC - capillary pressure [torr]
VVR - diminished vascular volume caused by sympathetic stimulation [l]
VV7 - increased vascular volume caused by stress relaxation [l]
AUH - autonomic stimulation of heart, ratio to normal
HMD - cardiac depressant effect of hypoxia
HPL - hypertrophy effect on left ventricle
VB - blood volume [l]
RBF
RBF
AUTONOMIC CONTROL
16.82
PC
17
PC
2.948
1.003
VVR
2.95
PA
VV7
0
VV7
1.001
2.948
POT
INTPUTS:
PA - systemic arterial pressure torr
POT - non-muscle cell PO2 [torr]
P20 EXC - Effect of excercise on the metabolic usage of oxygen
by the muscles [ratio to resting state]
AUZ - overall sensitivity of autonomic control [ratio to normal]
VVR
AUH
1
2.95
AUH
1
VVR
P2O
8
P2O
OUTPUTs:
AU - overall activity af autonomic system
[ratio to normal]
AUH - autonomic multilier effect on the heart output
[ratio to normal]
VVR - basic volume of venous tree(maximum volume
at zero pressure) [l]
AUM - autonomic multipllier effect on arterial resistance
[ratio to normal]
AVE - autonomic multipllier effect on venous resistance
[ratio to normal]
3.7
PVS
PIF
5
PTC
5
100
PTC
-3.722e-007
DFP
0
DFP
2.861
TVD
BFN
TVD
VTL
27.99
ALDOSTERONE CONTROL
PPC
PLA
PA
PPC
5.001
CPI
0.001902
CKE
5
0.9925
AM
OUTPUT:
AM - aldosterone multiplier, ratio of normal effect
1
AM
CKE
VTC
142.2
0.002
DPL
0.04
0
INTPUT:
ANM - angiotensin multiplier effect on vascular resistance,
ratio to normal
PA - aortic pressure [torr]
CKE - extracellural potassium concentration
CNA - extracellural sodium concentration
PA
100
28
PPD
0.0385
1
HPR
100
20.4
CPI
0.01395
1
ANM
ANM
HSL
Autonomic Control
0.9985
70
-1.524e-006
0
PPD
15
20
1
ALDOSTERONE CONTROL
69.97
CPP
1
PPA
HSL
AVE
0.04
DPC
CPP
15.19
PPA
HSR
1
0.03842
DPC
VTL
0.002
VB
1
HSR
1.001
AVE
3
VP
0.001887
2.8
1
EXC
EXC
3.001
VP
OUTPUTS:
PC - systemic capillary pressure [torr]
PPC - plasma colloid osmotic pressure [torr]
VTC - toral rate of movement of fluid out of systemic capillaries[l/min]
VB - blood volume
CPP - plasma protein concentration
DPC - rate of loss of plasma protein through systemic capillaries
0.001
0.001
HPL
5.001
5
5.101
QLO
VB
AUM
PIF
PA
BFN
AUM
1
CAPILLARY MEMBRANE DYNAMICS
INTPUTS:
PTC - colloid osmotic pressure of the tissue gel [torr]
VTL - rate of return of fluid from the interstitium to the
blood through the lymph [l/min]
TVD - rate of intake of fluid by mounth or otherwise [l/min]
RVS - venous resistance
BFN - blood flow in non-muscle, non renal tissues
PVS - average venous pressure
VRC - volume of red blood cell
VUD - rate of urinary output
DFP - rate of increase in pulmonary free field
PIF - intersticial fluid pressure
PPD - rate od change of protein in pulmonary fluids
CPI - concentration of protein in free intersticial fluid
VP - plasma volume [l]
DPL - rate of systemic lymphatic return of protela
VRC
-6.334
-6.3
1
1
HPL
1.002
2
2
VRC
AUH
1
Angiotensin Control
0
PRA
100
AUH
10
CNE
CNA
5
PVS
PRA
QLO
PA
HMD
7.982
9.834
CNE
CNA
142
VB
3.775
VB
HMD
1
1.001
1
ANM
OUTPUTS:
ANM - angiotensin multilier factor on vascular resistance
[ratio to normal]
CNE - sodium concentration abnormality causing third factor effect
142.2
BFN
2.8
BFN
0.09827
5.075
OUTPUTS:
BFM - muscle blood flow [l/min]
RVS - venous resistance [torr/l/min]
PVS - average venous pressure [torr]
VVE - excess blood (stressed) volume in the systemic veins [l]
PRA - right atrial pressure [torr]
QLO - output of left ventricle [l/min]
PA - aortic pressure [torr]
BFN - blood flow in non-muscle, non-renal tissues [l/min]
PRA - right atrial pressure [torr]
PLA - left atrial pressure [torr]
AUTONOMIC CONTROL
7.999
8
POT
ANM
5.001
0.3
VVE
0.01041
1
AU
RFN
2.861
VVE
VVR
AU
RVS
CIRCULATORY DYNAMICS
1.201
1.2
PC
RVS
2.9
AVE
1
AVE
PA
ANGIOTENSIN CONTROL
RFN
1.2
17
PVS
INTPUTS:
REK - percent of normal renal function
[ratio to normal]
RFN - renal blood flow if kidney is not damaged [l/min]
CNA - extracellural sodium concentration
1.201
PC
VUD
3.7
16.82
VUD
0.001
PVS
AMM
1
AMM
100
0.9985
REK
0.0009778
ANM
100
1
REK
ANM
1
VTC
DPL
PLA
CNA
142
Capillary Membrane Dynamics
HPR
CNA
Circulatory Dynamics
Aldosterone Control
TISSUE FLUIDS, PRESSURES AND GEL
ELECTROLYTES AND CELL WATER
HEART HYPERTROPHY OR DETERIORATION
0.001887
PULMONARY DYNAMICS AND FLUIDS
VTL
0.001902
HEART RATE AND STROKE VOLUME
RED CELLS AND VISCOSITY
15.19
AU
1
-3.722e-007
PPA
15
0
0.01395
1
HEART RATE AND STROKE VOLUME
0.09827
PRA
0
INTPUTS:
AUR - overall activity of autonomic system
[ratio to normal]
HMD - cardiac depresant effect of hypoxia, shock
and other factors [ratio to normal]
PRA - right atrial pressure [torr]
QLO - output of left ventricle [l/min]
OUTPUTS:
SVO - stroke volume [l]
PULMONARY DYNAMICS AND FLUIDS
PLA
0
HMD
1
HMD
PLA
SVO
0.07019
27.99
PPC
28
INTPUTS:
PPA - pulmonary arterial pressure [torr]
PLA - left atrial pressure [torr]
PPC - plasma colloid osmotic pressure [torr]
CPP - plasma protein concentration
VPF
5
PPC
PPD
70
QLO
INTPUTS:
PA - systemic arterial pressure [torr]
PPA - pulmonary arterial pressure [torr]
HSL - basic strenght or left ventricle [ratio to normal]
POT - Non muscle cells PO2 [troo]
HSR - basic strenght or right ventricle [ratio to normal]
OUTPUTS:
HPR - hypertrophy effect of right heart [ratio to normal]
HPL - hypertrophy effect of left heart [ratio to normal]
HMD - cardiac depresant effect of hypoxia, shock
7.999
40
8
HM
POT
DPC
ELECTROLYTES AND CELL WATER
HPL
NOD
0.1
NOD
PTC
1.005
5
PTC
OUTPUTs:
PTC - total colloid osmotic pressure of the tissue gel]
VTL - lymph flow rate [l/min]
DPL - rate of return of protein to the circulatin by way of the lymph [g/min]
CPI - concentration pf protein in the interstitium [g/l]
VTS - total interstitial fluid volume [l]
20.4
STH
1
STH
0.01251
CPI
20
VPF
0.0125
CPI
VPF
POT
11.96
1
1
HSR
HMD
0
VID
INTPUTS:
AM - aldosterone multiplier, ratio of normal effect
REK - percent of normal renal function
[ratio to normal]
NOD - rate of excretion of sodium in the urine [mmol/min]
STH - salt appetite multiplier factor [ratio to normal]
VTS - systemic interstitial fluid volume [l]
VP - plasma volume [l]
VPF - pulmonary interstitial fluid volume [l]
5.001
OUTPUTS:
VID - rate of fluid transfer between interstitial fluid and cells [l/min]
CKE - extracellular potassium concentration [mmol/l]
CNA - extracellular sodium concentration [mmol/l]
VTW - total body water [l]
CKE
5
CKE
142.2
CNA
142
CNA
3.001
VTS
7.527e-006
HMD
PPD
CPP
DPC
0.04
Red Cells And Viscosity
0
CPP
INTPUTS:
VTC - rate of fluid transfer across systemic intersticial fluid
DPC -rate of influx protein into the interstitial fluid from plasma [g/min]
VID - rate of fluid transfer between interstitial fluid and cells
0.04
1
HPL
1
HM
69.97
QLO
HSL
39.99
VB
VB
-1.524e-006
5.075
5.101
HEART HYPERTROPHY OR DETERIORATION
PPA
2
2
VRC
0.09917
DPL
TISSUE FLUIDS, PRESSURES AND GEL
PPA
15
VIM
OUTPUT:
VIM - blood viscosity [ratio to normal]
HM - hematocrit [%]
VRC - volume of red blood cells []
5.001
PRA
5
1
RED CELLS AND VISCOSITY
INTPUT:
POT - non-muscle cell PO2 [torr]
VB - volume of blood [l]
VRC
0.0125
REK
REK
0.04
HPR
POT
8
POT
0.01251
VPF
OUTPUTs:
DFP - rate of change of free fluid in the lungs [l/min]
VPF - volume of free fluid in the pulmonary interstitium [l/min]
PPD - rate of loss of protein through the pulmonary capillary
membrane [g/min]
0
VID
1
DPL
1
VIM
DFP
AU
7.527e-006
VID
0.0385
VTC
HPR
15.19
7.999
VTC
0.002
1
PA
0.9988
DFP
PPA
AM
AM
VTL
PA
100
1.003
0.9925
1
0.002
100
12
3
VTS
VP
VP
11.96
-6.334
VTW
VID
Heart Rate and Stroke Volume
12
PIF
Pulmonary Dynamics and Fluids
-6.3
Heart Hypertrophy or Deterioration
VTS
PIF
Electrolytes and Cell Water
Tissue Fluids, Pressures and Gel
Figure 9: Guyton's overall regulation model of Circulation - implementation in Matlab/Simulink using
Simulink subsystem blocks as "simulation chips".
Simulink implementation of the (corrected) Guyton's model made by us is available for
download from the address http://physiome.cz/Guyton to anyone interested. At the same address, our
Simulink implementation of a much complex sequel of the model from 1986 can be found too.
Further, there is also a detailed description of all mathematical relations used with their reasoning
(however, for the present time it is in the Czech language only).
6
From Simulink Diagram to Simulation Games During Physiological Teaching
We use Simulink implementation of Guyton's model as an educational tool to teach physiology
to undergraduate and postgraduate students at the Czech Technical University (ČVUT). This structure
of Simulink diagram (in a form of "simulation chips") is however, too abstract for medical students. It
is ideal, if their teaching models have the form of schematic pictures to which they are accustomed, for
example from the Atlas of Physiology [18]. Unlike the book, these pictures can be interactive, and
11
39.95
VTW
VTS
Technical Computing Prague 2007. 15th Annual Conference Proceedings. Prague, 2007
195.5
NON MUSCLE O2 DELIVERY
OVA
INTPUTS:
OVA - oxygen content of arterial blood
[ml O2 STPD/l blood]
BFN - blood flow in non-muscle and non-renal tissues
[l/min]
HM - hematocrit [%]
AOM - autonomic effect on tissue oxygenation
[ratio to normal]
O2M - basic oxygen utilisation in non-muscle cells
[ml O2 STPD/min]
2.669
BFN
40
HM
OUTPUTS:
OSV - non-muscle venous oxygen saturation [%]
POV - non muscle venous PO2 [torr]
POT - non muscle cell PO2 [torr]
DOB - rate of oxygen delivery to non-muscle cells
[ml O2 STPD/min]
MO2 - rate of oxygen utilisation by non-muscle tissues
[ml O2 STPD/min]
QO2 - non-muscle total cellular oxygen
[ml O2 STPD]
1.025
AOM
164.5
O2M
0.6632
OSV
ARM
OUTPUT:
ARM - vasoconstrictor effect of local blood flow
autoregulation in non-muscle tissues
[ratio to normal]
0.809
240
0.9915
VPF
BFM
168.2
PULMONARY O2 DELIVERY
40
DOB
RMO
1
PO2DEF
PO2DFF
150
OSA
INTPUTS:
VPF - volume of free fluid in the pulmonary interstitium [l/min]
DOB - non-muscle oxygen usage[ml/min]
RMO - muscle oxygen usage [ml/min]
PO2DEF - normalised difussion coecficient for oxygen
through the pulmonary membrane [at norma PO2DEF=1]
PO2MAB - ambient oxygen pressure [torr]
HM - hematocrit
61.53
HM
1.025
AOM
OUTPUTs:
OSA - arterial oxygen saturation
OVA - arterial blood oxygen content [ml O2/l blood]
PO2AMB
PO2AMB
60
OVA
OUTPUTS:
OVS - muscle venous oxygen saturation [%]
PVO - muscle venous PO2 [torr]
PMO - muscle cell PO2 [torr]
RMO - rate of oxygen delivery to muscles
[ml O2 STPD/min]
MMO - rate of oxygen utilisation by muscles
[ml O2 STPD/min]
QOM - muscle total cellular oxygen
[ml O2 STPPD]
OMM
OMM
1
HM
EXC
EXC
40
Pulmonary O2 Delivery
80.3
HR
PPA
1.652
RPA
INTPUTS:
PPA - pulmonary arterial pressure [torr]
PLA - left atrial pressure [torr]
QPO - rate of blood flow into pulmonary veins and left atrium [l/min]
-0.4086
1.43
RPV
PLA
3.082
RPT
OUTPUTS:
RPA - pulmonary arterial resistance [torr min/l]
RPV - pulmonary venous resistance [torr min/l]
RPT - total pulmonary vascular resistance [torr min/l]
PVP - pulmonary venous pressure [torr]
0.05863
SVO
QPO
PPA
10.81
PVP
Heart Rate and Stroke Volume
Resistances in the Pulmonary Circulation and Pulmonary Venous Pressure
Myogenic Autoregulation
1.009
PRA
INTPUTS:
OVA - oxygen content of arterial blood
[ml O2 STPD/l blood]
BFN - blood flow in muscles
[l/min]
HM - hematocrit [%]
AOM - autonomic effect on tissue oxygenation
[ratio to normal]
OMM - basic oxygen utilisation in muscles
[ml O2 STPD/min]
EXC - Effect of excercise on the metabolic usage
of oxygen by the muscles [ratio to resting state]
OUTPUTS:
HR - heart rate [beats/min]
SVO - stroke volume [l]
THE VOLUME RECEPTOR FEEDBACK MECHANISM
2321
QO2
MUSCLE O2 DELIVERY
OVA
INTPUTS:
AUR - autonomic stimulation of heart rate
[ratio to normal]
HMD - cardiac depresant effect of hypoxia, shock
and other factors [ratio to normal]
PRA - right atrial pressure [torr]
QLO - output of left ventricle [l/min]
QLO
TENSGN
Delivery of Oxygen to the Non-muscleTtissues
195.5
0.9775
OUTPUT:
MYOGRS - myogenic autoregulation effect on vascular resistance
TENSGN
in muscle and in non-renal tissue [multiplier, ratio to normal]
1
Non-muscle Local Blood Flow Control
168.6
MO2
PRA
HMD
MYOGRS
MYOGTAU
MYOGTAU
RESISTANCES IN THE PULMONARY CIRCULATION
AND PULMONARY VENOUS PRESSURE
AUR
MYOGENIC AUTOREGULATION
INTPUTS:
PA - systemic arterial pressure [torr]
PC - capillary pressure [torr]
MYOGTAU - time delay factor of myogenic response
(in normal condition TENSTC= 240 min)
TENSGN - factor of effectiveness of myogenic response
17.67
PC
POT
168.2
DOB
PA
0.9625
INTPUT:
POT - non-muscle cells PO2 [torr]
7.728
POT
O2M
0.0118
14.1
HEART RATE AND STROKE VOLUME
99.85
NON MUSCLE LOCAL BLOOD FLOW CONTROL
37.9
POV
0.6667
OV S
0
MUSCLE LOCAL BLOOD FLOW CONTROL
38.09
PVO
INTPUT:
PMO - muscle cells PO2 [torr]
7.754
PMO
0
PMO
ATRRFBM
0.9503
AMM
OUTPUT:
AMM - vasoconstrictor effect of local blood flow
autoregulation in muscles
[ratio to normal]
61.53
INPUTS:
AH7
PRA - riight atrial pressure [torr]
ATRVHBM - sensitivity controller of volumereceptor feedback effect
on change of basic of venous system
[ATRVFB=AH7*ATRRVBM, no effect = 0]
ATRRFBM - sensitivity controller of volumereceptor feedback effect
on nonmuscle arterial resistance
[ATRRFB=AH7*ATRRFBM, no effect = 0]
ATRV FBM
ATRVFBM
0.905
OSA
0
0.809
4.708
PPA
1
PPA
AUH
OSA
HSR
Muscle Local Blood Flow Control
HSR
PA
61.5
HEART HYPERTROPHY OR DETERIORATION
QAO
2397
QOM
PPA
Delivery of Oxygen to the Muscles
0.1
HSR
HSR
1
HSL
HSL
HSL
RIGHT HEART PUMPING
PRA
ATRRFB
The volume receptor feedback mechanism
RMO
MMO
PA
14.1
ATRVFB
OUTPUTS:
AH7 - effect of right atrial volume receptor reflex on ADH
secretion [relative additive factor, normal value = 0]
ATRVFB - change in basic volume of venous system
caused by atrial volume receptor feedback
ATRRFB - multiplier factor for the effect on muscle and
ATRRFBM
non-renal vacular resistance of feedback from the atrial
stretch receptors [multiplier, ratio to resting state]
HPR
HPR
INTPUTS:
PA - systemic arterial pressure [torr]
QAO - blood flow in the systemic arteriel system [l/min]
PPA - pulmonary arterial pressure [torr]
HSR - basic strenght or right ventricle [ratio to normal]
HSL - basic strenght or left ventricle [ratio to normal]
POT - Non muscle cells PO2 [troo]
HPR
HMD
1.001
HMD
QLO
1
HPL
INTPUTS:
QRO
PRA - right atrial pressure [torr]
PPA - pulmonary arterial pressure [torr]
AUH - autonomic stimulation of heart [ratio to normal]
OSA - oxygen hemoglobin saturation
HSR - basic strenght or right ventricle [ratio to normal]
HPR - hypertrophy effect of heart [ratio to normal]
HMD - cardiac depressant effect of hypoxia. shock
QRN
and other factors [ratio to normal]
QLO - output of left ventricle [l/min]
QLN - normalised output of the left heart [l/min]
LEFT HEART PUMPING
PLA
INTPUTS:
QLO
PLA - left atrial pressure [torr]
PA - systemic arterial pressure [torr]
AUH - autonomic stimulation of heart [ratio to normal]
AUH
OSA - oxygen hemoglobin saturation
HSL - basic strenght or left ventricle (ratio to normal)
HPL - hypertrophy effect of left heart [ratio to normal]
OSA
QLN
HMD - cardiac depressant effect of hypoxia, shock
and other factors [ratio to normal]
PA
PA
6.965
HSL
OUTPUTS:
QRO - actual right ventricular output [l/min]
QRN - normalised right ventricular output [l/min]
RVM
RVM - depressing effect on right ventricle of pulmonary
arterial pressure [ratio to normal]
4.46
OUTPUTS:
QLO - actual left ventricular output [l/min]
QLN - normalised lwft ventricular output [l/min]
LVM - depressing effect on left ventricle of pulmonary LVM
arterial pressure [ratio to normal]
HPL
HMD
QLN
1.005
Left Heart Pumping
Right Heart Pumping
OUTPUTS:
HPR - hypertrophy effect of right heart [ratio to normal]
HPL - hypertrophy effect of left heart [ratio to normal]
HMD - cardiac depresant effect of hypoxia, shock
4.708
HSL
1.012
HPL
HMD
HMD
4.46
POT
1
4.708
Heart hypertrophy or deterioration
HM
99.85
2.915
DFP
AUTONOMIC CONTROL OF THE CIRCULATION
VPF
PULMONARY FLUID DYNAMICS
PLA
72
7.728
POS
19.97
PPI
-10.71
OUTPUTs:
DFP - rate of change of free fluid in the lungs [l/min]
VPF - volume of free fluid in the pulmonary interstitium [l/min]
PFI
PCP - pulmonary capillary pressure [torr]
POS - osmotic pressure in pulmonary interstitial fluid pressure [torr]
PPI - pulmonary interstitial fluid pressure [torr]
PLF
PFI - rate of fluid filtration out of pulmonary capillary [l/min]
PLF - pulmonary lymph flow rate [l/min]
CPN - concentration of protein in pulmonary interstitial fluid [g/l]
PPN - protein leakage rate through the pulmonary capillary membrane [g/min] CPN
CPP
PPR - total quantity of protein in pulmonary interstitial fluid [g]
PPD - rate of loss of protein through the pulmonary capillary
membrane [g/min]
POT
7.754
INTPUTS:
PA - systemic arterial pressure torr
POT - non-muscle cell PO2 [torr]
PMO - muscle cells PO2 [torr]
EXC - Effect of excercise on the metabolic usage of oxygen
by the muscles [ratio to resting state]
ANUBR - direct effect of angiotensin on vasomotor center
["virtual" torr]
AUZ - overall sensitivity of autonomic control [ratio to normal]
PMO
1
8.664e-005
0
49.93
0.004965
0.5892
PPR
0.9143
1.167
1
CPF
OUTPUTs:
AU - overall activity af autonomic system
[ratio to normal]
AUH - autonomic multilier effect on the heart output
[ratio to normal]
AUR - autonomic multilier effect on heart rate
EXC
[ratio to normal]
VVR - basic volume of venous tree(maximum volume
at zero pressure) [l]
AUP - autonomic multipllier effect on ADH hormone excretion etc.
[ratio to normal]
ANUBR
AOM - autonomic multipllier effect on tissue oxygen utilisation
[ratio to normal]
AUM - autonomic multipllier effect on arterial resistance
[ratio to normal]
AVE - autonomic multipllier effect on venous resistance
AUZ
[ratio to normal]
ANU
0.0007524
-0.2
VV6
INTPUTS:
VVE - excess blood volume in the veins [l]
1.05
ANY
ANY
V V6
AUR
VV E
1.167
V VR
OUTPUTS:
VV6 - increased venous vascular volume
caused by long time stress realaxation [l]
VV7 - - increased venous vascular volume
caused by short time stress realaxation [l]
99.85
INPUTS:
VVR - normal maximum volume of blood
in the venous system at zero pressure [l]
ANU - nonrenal effect of angiotensin [ratio to normal]
ANY - sensitivity of large veins to effect of angiotensin
[normal value = -0.2 l/unit of angiotensin]
VV6, VV7 - changes in basic volume of venous system
cauused by stress relaxation [l]
ATRVFB - change in basic volume of venous system
caused by atrial volume receptor feedback
VENOUS STRESS RELAXATION
AUH
2.915
8.891e-005
PPN
0.0003
AU
PA
0.1393
PCP
INTPUTS:
PPA - pulmonary arterial pressure [torr]
PLA - left atrial pressure [torr]
PPC - plasma colloid osmotic pressure [torr]
CPF - pulmonary capillary filtration coeffitient [l/min/torr]
PPC
CPP
UNSTRESSED SYSTEMIC VENOUS VOLUME
V VR
PPA
0
VV7
QLO
VVS0
OUTPUT:
VVS0 - the maximum volume ov venous system at zero volume
(so called unstressed venous volume) [l]
PA
0.0006392
PPD
VAS0
VAS0
0.1
VRA0
VRA0
0.30625
VPA0
Effect of stress relaxation on basic venous volume
96.3
0.01242
RAR
1.142
1.142
AUM
1
1.035
AVE
0.9143
Autonomic Contorl of the Circulation
1
Pulmonary Fluid Dynamics
1
0.9503
0.9625
4.017
1
SYSTEMIC CAPILLARY PRESSURE
96.65
VPA0
0.4
VLA0
VLA0
0.00355
CAS
CAS
0.0825
CV
CV
0.005
CRA
CRA
0.0048
CPA
CPA
0.01
CLA
BFN
INTPUTS:
PVS - average of systemic venous pressure [torr]
BFN - blood flow in non-renal and non-muscle tissues [l/min]
RVS - resistance in small veins [torr min/l]
RVS
OUTPUT:
PC - systemic caplillary pressure [torr]
AV E
RSM
3.082
RPT
2.856
RR
RV S
VIM
ANUV N
1
0
14.1
-0.4086
PLA
0.8495
VAS
3.277
VVS
0.3314
VV E
VRA
FIS
0.104
VPA
0.3739
VLA
0.3959
4.708
4.708
2.669
0.9915
1.047
0
21.04
4.246
0.7535
7.119
MCP
FIS
PC
0.809
PPA
4.708
RSN
OUTPUTS:
RSN - vascular resistance in non-muscle and non-renal tissues [torr min/l]
RSM - vascular resistrance in muscles [torr min/l]
RVS - resistance in small veins [torr min/l]
1.035
17.67
PC
4.017
PRA
OUTPUTS:
QAO
PA - arterial (aortic) pressure [torr]
PVS - average venous pressure [torr]
QVO
PRA - right atrial pressure [torr]
PPA - pulmonary arterial pressure [torr]
QPO
PLA - left atrial mpressure [torr]
VAS - volume in systemic arteries [l]
VVS - systemic venous vascular volume [l]
BFN
VVE - excess blood volume in the veins [l]
VRA - right atrial volume [l]
BFM
VPA - volume in pulmonary arteries [l]
VLA - volume in left atrium [l]
RBF
QAO - blood flow in the systemic arteriel system [l/min]
QVO - rate of blood flow from veins into right atrium [l/min]
QPO - rate of blood flow into pulmonary veins and left atrium [l/min] FISFLO
BFN - blood flow in non muscle and non renal tissues [l/min]
BFM - blood flow in muscles [l/min]
RTP
RBF - renal blood flow [l/min]
FISFLO - blood flow through a fistula [l/min]
VT0
RTP - total systemic peripheral resistance [torr min /l]
VT0 - total unstressed blood volume [l]
VE0 - total excess volume of blood in the vasculature [l]
VE0
MCP - mean circulatory pressure [torr]
CLA
RVSM
PVS
2.669
BFN
35.9
INTPUTS:
PA - systemic arterial pressure [torr]
RAM - basic vascular resistance of muscles [torr min/l]
RSN
RAR
RAR - basic vascular resistance of non-muscle and non-renal
tissues [torr min/l]
MYOGRSMYOGRS - myogenic autoregulation effect on vascular resistance
in muscle and in non-renal tissue (multiplier, ratio to normal)
AUM - sympathetic vasoconstrictor effect on arteries
AUM
in muscle and non-renal tissues
[multiplier factor, ratio to normal]
VIM - blood viscosity [ratio to normal]
VIM
ANU - nonrenal effect of angiotensin [ratio to normal]
AHM - antidiuretic hormone effect to non renal vascular
resistance, multiplier (ratio to normal effect)
ANU
ATRRFB - multiplier factor for the effect on muscle and
non-renal vacular resistance of feedback from the atrial
RSM
AHMR
stretch receptors [multiplier, ratio to resting state]
AMM - muscle vascular constriction caused by local
tissue control [multiplier, ratio to resting state)
ATRRFB ARM - the degree of vasoconstrictor effect of autoregulation in
non-muscle and non-renal tissues [multilier, ratio to normal]
RVSM - basal systemic venous multiplier causes basal vascular
AMM
stretch in the venous system [ratio to normal]
AVE - multiplier factor for the effect of the autonomic nervous system
ARM
on venous resistance [ratio to basal effect]
ANUVN multiplier factor for the effect of angiotensin
on venous resistance [ratio to normal]
RVSM
PC - systemic caplillary pressure [torr]
RAM
RAM
30.52
1.009
1.025
AOM
RESISTANCES IN THE SYSTEMIC CIRCULATION
Unstressed volume in systemic venous tree
1.167
AUP
AUZ
CPF
0.495
PVS
INPUTS:
VB - blood volume [l]
QRO - actual right ventricular output l/min]
QLO - output of left ventricle [l/min]
VVS0 - unstressed venous systemic vascular volume [l]
VVE - excess volume (stressed volume) in systemic veins [l]
VAS0 - unstressed volume in systemic arteries [l]
VRA0 - unstressed right atrial volume [l]
VPA0 - unstressed volume in pulmonary arteries [l]
VLA0 - unstressed volume in left atrium and pulmonary veins [l]
CAS - capacitance of systemic arteries [l/torr]
CV - capacitance of venous systemic volume [l/torr]
CRA - capacitance of right atrium [l/torr]
CPA - capacitance of pulmonary arteries [l/torr]
CLA - capacitance of left atrium and pulmonary veins [l/torr]
RSN - vascular resistance in non-muscle and non renal
tissues [torr min /l]
RSM - vascular resistance in muscles [torr min /l]
RPT -pulmonary vascular resistance [torr min /l]
RR - total renal resistance [torr min /l]
( VIM - blood viscosity (ratio to normal blood)
FIS - conductance fot the fistula [l/min/torr]
QRO
ATRVFB
PA
CIRCULATORY DYNAMICS - FLOWS AND PRESSURES
VB
PA
2.945
V VS0
V V7
Circulatory Dynamics - Flows And Pressures
17.67
Resistances in the Systemic Circulation
2.856
Systemic Capillary Pressure
99.85
GBL
PVS
50.07
AAR
GFR
INTPUTS:
PAR - renal perfusion pressure[torr]
RFN - renal blood flow if kidney is not damaged [l/min]
AAR - resistance in afferent arteriole
[torr min/ll]
HM - hematocrit
PPC - plasma colloid osmotic pressure [torr]
PXTP - back pressurein proximal tubule [torr]
GFLC - glomerular filtration coefficient [l/torr/min]
REK - percent of normal renal function [ratio to normal]
RFN
50.07
AAR
40
HM
91.54
30.53
RR
REK
GLOMERULUS
1.047
1.047
RFN
OUTPUTS:
PAR - renal perfusion pressure [torr]
RFN - renal blood flow if kidney is not damaged [l/min]
RBF - renal blood flow [l/min]
RR - renal resistance [torr min/l]
RR
PPC
8
GLFC
GFLC1
Renal Perfusion
INTPUTS:
CNA - Extracellular sodium concentration [mmol/l]
GFN - glomerular filtration rate if kidney
is not damaged [l/min]
CNA
0.1246
OUTPUTS:
RNAUG1 - macula densa feedback signal
[ratio to normal effect]
NAPT1 - delivery of sodium to the macula densa area
[ratio to normal value]
GFN
GLPC
33.45
THE CONTROL FUNCTIONS OF ANGIOTENSIN
REK
ANXM
INTPUTS:
NAPT1 - delivery of sodium to the macula densa area
[ratio to normal value]
REK - percent of normal renal function [ratio to normal]
ANXM - controls of degree of hypertrophy of the juxtaglomerulal
apparatus [0 = no hypertrophy]
ANG - excess of angiotensin concentration caused by infusion
[ratio to normal level of angiotensin]
ANUBRM - sensitivity contoller for the effect of angiotensin
of the baroreceptor system
ANUVM - sensitivity controller for the multiplier factor
of the systemic veins
1
0.9714
NAPT1
0
ANM
5.991
INTPUTS:
NAPT1 - delivery of sodium to the macula densa area
[ratio to normal]
RFAB - the multiplier factor for the effect of renal hemodynamics
on reabsorbtion of sodium and potassium
in the distal tubule collecting duct
[ratio to normal]
VUDN - rate of urinary output if kidney is not damaged [l/min]
AMNA - aldosterone for control of sodium reabsorbtion
[ratio to normal effect]
AHM - antidiuretic hormone
[ratio to normal effect]
REK - percent of normal renal function [ratio to normal]
DIURET - effect of diuretic on the distal tubule collecting duct
[ratio to normal - without diuretics]
1.494
ANG
VUDN
0.9527
AMNA
MYOGRSAA
0.9969
TENSGN
1
OUTPUT:
MYOGRSAA - myogenic autoregulation effect on vascular resistance
in afferent arteriole [multiplier, ratio to normal effect]
REK
TENSG
Myogenic Autoregulation of Afferent Arteriole
ANUBRM
ANUBRM
0
1
1.494
1.047
PERITUBULAR CAPILLARIES
CKE
DIURET
ALD
OUTPUTS:
AMK - effect of aldosterone on potassium secretion [ratio to normal]
AMNA - aldosterone for control of sodium reabsorbtion
AMC - aldosterone concentration [ratio to normal]/n
NADT
0.5803
DTNAI
0.9714
Peritubular Capillaries
ANM
0.9803
40
0.9783
AMC
RNAUG1
AUP
0.9714
ANM
99.85
PA
0.905
AH7
0
ADH
ADH
0
AHC1
1.05
ANM
AHC1
1.142
VIM
1
RNAUG1
0
EFARF
1
REK
VUDN
PLURC
0.1246
GFN
OUTPUT:
AAR - afferent arteriolar resistance [torr l/min]
0.1353
NODN
0.06686
EAR
1.16e-005
RC2
0
VP
3
VP
VIM
OUTPUTS:
VRC - volume of red blood cells [l]
VB - volume of blood [l]
HM - hematocrit [%]
RC1 - red cells production rate [l/min]
RC2 - red cells destruction rate [l/min]
RFN
1.2
RFN
REK
1
2
Red cells production and destruction
CPP
OUTPUTs:
PPC - plasma colloid osmotic pressure [torr]
DPC - rate of influx of protein into interstitial fluid from plasma [g/min]
CPP - plasma protein concentration [g/l]
DPL - net rate of protein exchange between liver and plasma [g/min]
72.93
40
1
BLOOD VISCOSITY
HM
-0.007738
INTPUT:
HM - hematocrit [%]
V IM
OUTPUT:
VIM - blood viscosity [ratio to normal]
DPR
DPR
Plasma Protein Dynamics
Blood viscosity
0.24
7.728
URFORM
41.48
KODN
THIRST,DRINKING AND SALT APPETITE
POT
0.06686
ANM
0
DR
1
0.06686
KOD
DR
INTPUTS:
POT - non-muscle cell PO2 [torr]
AHC1 - antidiuretic hormone concentration factor
in the circulating body fluids [ratio to normal]
ANM - angiotensin multilier effect to vascular resistance [ratio to normal]
AMK - effect of aldosterone on potassium secretion [ratio to normal]
DR - forced input of fluid over and above the natural drinking desire
(it may be used for intravenous infusion as well) [l/min]
STHENABLED - switching variable:
if STHENABLED<=0, then STH is not calcultated and STH=1
TVDENABLED - switching variable:
if TVDENABLED <=0 then TVD is not calculated and TVD=DR
STHENABLED
STHENABLED
-2.687
PGH
1
TV DENABLED
UREA
0.2387
UREA AND WATER EXCRETION
INTPUTS:
PLURC - concentration of urea in body fluids [mmol/l]
GFN - glomerular filtration rate if kidney is not damaged [l/min]
NADT - the normalized delivery of sodium to the distal tubular system
[ratio to normal]
NODN - sodium excretion rate if kidney is not damaged [mmol/min]
KODN - potassium excretion rate if kidney is not damaged [mmol/min]
DTNAI - rate of sodium entry into the distal tubular system [mmol/min]
AHM - antidiuretic hormone [ratio to normal]
REK - percent of normal renal function [ratio to normal]
V TS
UROD
VUDN
0.001962
278.6
V PF
0.1
STH
1.005
NOD
-4.683
0.06
5.687
KID
KID
0.06686
KOD
VIF
0.6012
VG
11.41
TSP
278.7
0.9803
TSP0
AMK
TSP0
0.001962
NID
NID
1
OUTPUTS:
UROD - urea excretion rate [mmol/min]
VUDN - rate of urinary output if kidney id not damaged [l/min]
VUDN - rate of urinary output [l/min]
VP
0.09873
23.2
Interstitial Tissue Fluids, Pressures and Gel Dznamics
ACLK
ALCLK
25
PLUR
4.002
160
0.00119
0.004256
VTL
OUTPUTs:
PGH - hydrostatic pressure in tissue gel [torr]
PTC - total colloid osmotic pressure of the tissue gel]
PTT
DPC
VTL - lymph flow rate [l/min]
DPL - rate of return of protein to the circulatin by way of the lymph [g/min]
CPI - concentration pf protein in the interstitium [g/l]
PIF
PTT - total interstitial tissue pressure [torr]
PIF - pressurte in the free interstitial fluid [torr]
PTS - solid tissue pressure [torr]
PTS
VIF - free interstitial fluid volume[l]
VG - tissue gel volume[l]
TSP - total interstitial tissue proteins [g]
OUTPUTS:
PLURC - concentration of urea in body fluids [mmol/l]
PLUR - total body urea content[mmol/l]
PLURCNORM
Urea
TVD
OUTPUTS:
STH - salt appetite multiplier factor [ratio to normal]
TVD - actual rate of fluid intake [l/min]
Thirst, Drinking and Salt Appetite
INTERSTITIAL TISSUE FLUIDS, PRESSURES AND PROTEIN DYNAMICS
INTPUTS:
VTS - total interstitial fluid volume [l]
DPL
DPC -rate of influx protein into the interstitial fluid from plasma [g/min]
TSP0 - initial value of total interstitial tissue proteins [g]
PLURC
INTPUTS:
URFORM - rate of urea metabolic production [mmol/min]
UROD -rate of urea excretion[mmol/min]
VTW - total body water volume [l]
PLURCNORM - normal value of urea concentration in body fluids [4 mmol/l]
V TW
TVDENABLED
34.08
0.2387
4
PLURCNORM
V TS
CKU
0.5776
1
UROD
2.088
STH
10.5
PTC
OUTPUTS:
KODN - potassium excretion rate if kidney is not damaged [mmol/min]
KOD - potassium excretion rate [mmol/min]
CKU - concentration of potassium in urine [mmol/l]
4.002
AHM
VIM
1.003
0.7953
KODN
OUTPUT:
AAR - afferent arteriolar resistance [torr l/min]
INTPUTS:
AARK - normal resistance in efferent arteriole [torr min/l
RNAUG1 - macula densa feedback signal
to efferent arteriole [ratio to normal]
EAFRF - sensitivity contoller of macula densa feedback signal
to efferent arteriole
ANM - angiotensin multiplier effect on vascular resistance
[ratio to normal]
VIM - blood viscosity [ratio to normal blood]
OSA
RED CELLS PRODUCTION AND DESTRUCTION
INTPUTS:
OSA - arterial oxygen saturation [ratio to full saturation]
VP - plasma volume [l]
VIM - blood viscosity [ratio to normal blood]
RFN - renal blood flow (if kidney is not damaged) [l/min]
REK - fraction of normal kidney mass [ratio to normal]
PPD
Capillary Membrane Fluid Dynamics
Potassium Excretion
ANM
0.9714
LPPR
DLP
CPI
1
The control Functions of Antitiuretic Hormone
1.494
EARK
EARK
ANM
0.03
LPPR
0.9856
VTSN
50.07
EFFERENT ARTERIOLE
43.333
EFARF
AHRM
V TSREL
VTSN
0.004489
POTASSIUM EXCRETION
INTPUTS:
CKE - extracellular potassium concentration [mmol/l]
CNA - extracellular sodium concentration [mmol/l]
NADT - the normalized delivery of sodium to the distal tubular system
[ratio to normal]
DTNAI - rate of sodium entry into the distal tubular system [mmol/min]
ANM - angiotensin multilier effect to vascular resistance [ratio to normal]
AMK - effect of aldosterone on potassium secretion [ratio to normal]
RFAB - the multiplier factor for the effect of renal hemodynamics
on reabsorbtion of sodium and potassium
in the distal tubule collecting duct
[ratio to normal]
REK - percent of normal renal function [ratio to normal]
VUDN - rate of urinary output if kidney is not damaged [l/min]
0.001962
AAR
Afferent Arteriole
ANM
1
AHRM
AHMRM
AHMRM
INTPUTS:
AARK - normal resistance in afferent arteriole [torr min/l]
RNAUG1 - macula densa feedback signal [ratio to normal]
AUM - sympathetic vasoconstrictor effect on arteries
[ratio to normal]
ANM - angiotensin multiplier effect on vascular resistance
[ratio to normal]
VIM - blood viscosity [ratio to normal blood]
0.5776
AHMR
11.98
0.003815
RC1
68.97
CNU
AUM
AHM
OUTPUTS:
AHC1 - antidiuretic hormone concentration
in the circulating body fluids [ratio to normal]
AHM - antidiuretic hormone multiplier [ratio to normal effect]
AHMR - effect of antidiuretic on systemic arterial resistance
[ratio to normal effect]
ANUBRM - sensitivity contoller for the effect of angiotensin
of the baroreceptor system
ANUVM - sensitivity controller for the multiplier factor
of the systemic veins
0.1353
NOD
VPN
RFAB
MYOGRSAA
0.9969
0.9714
INTPUTS:
CNA - Concentration of sodium in extracelullar fluid [mmol/l]
AUP - autonomic multipllier effect on ADH hormone excretion etc.
[ratio to normal]
ANM - angiotensin multiplier effect [ratio to normal]
PA - systemic arterial pressure [torr]
H7 - effect of right atrial volume receptor reflex on ADH
secretion [relative additive factor, normal value = 0]
AHMRM - sensitivity coefficient for the effect of ADH
on systemic arterial resistance.
AFFERENT ARTERIOLE
AARK
AARK
ANM
0.7953
THE CONTROL FUNCTIONS OF ANTIDIURETIC HORMONE
CFC
HM
1.152e-005
0.1009
URFORM
1.161
0.9527
The control Functions of Aldosterone
CNA
3
AHC1
CNA
20.65
AMNA
142.2
1.167
VID
CFC
VPN
5.068
142.2
RCPRS
AMK
0
ALD
DFP
VID
0.01167
HM
PLASMA PROTEINS DYNAMICS
INTPUTS:
VP - plasma volume [l]
VTCLP - rate of leakage of whole plasma through
DPC
the capillary membrane [l/min]
DPL - rate of return of protein to the circulation through the lymph [g/min]
CPI - concentration of protein in the interstitium [g/l] [torr]
LPPR - rate of production of protein by the liver [g/min]
CPI
PPD - rate of loss of protein through the pulmonary capillary
membrane [g/min]
DPR - rate of loos of protein through the kidney [g/min]
DPL
DIURET
CKE
OUTPUTS:
RFAB - the multiplier factor for the effect of renal hemodynamics
on reabsorbtion of sodium and potassium
in the distal tubule collecting duct
[ratio to normal]
RCPRS - renal capillary pressure around the tubular systewm [torr]
GLPC
AMK
INTPUTS:
ANM - angiotensin multiplier effect on vascular resistance
[ratio to normal value]
CKE - extracelullar fluid potassium concentrastion [mmol/l]
ALD - rate of infusion of aldosterone
[relative to normal rate of aldosterone secretion]
VUD
0
0.1353
5
VTCLP
RFAB
47.44
0.9803
THE CONTROL FUNCTIONS OF ALDOSTERONE
5.068
0.001962
2.267e-006
0.5803
NODN
VB
30.53
0.0006743
12.01
Sodium Excretion
INTPUTS:
RFN - renal blood flow if kidney is not damaged [l/min]
GLPC - average glomerular plasma colloid osmotic pressure [torr]
RFN
The control Functions of Angiotensin
0.9714
TVD
DTNAI
OUTPUTS:
NADT - the normalized delivery of sodium to the distal tubular system
[ratio to normal]
DTNAI - rate of sodium entry into the distal tubular system [mmol/min]
NODN - sodium excretion rate if kidney is not damaged [mmol/min]
NOD - sodium excretion rate [mmol/min]
CNU - concentration of sodium in urine [mmol/l]
0.7395
ANUVM1
ANM
0.5776
0.00119
1.161
NADT
AHM
1
OUTPUTS:
ANM - angiotensin multilier factor on vascular resistance [ratio to normal]
ANUV N
ANU - angiotensin multilier factor on peripheral
arteriolar resistance [ratio to normal]
ANUBR - angiotensin multilier factor for the effect in controlling
the sensitivity of the baroreceptor system[ratio to normal]
ANUVM - angiotensin multilier factor for the constriction
ANC
of systemic veins [ratio to normal]
ANC
ANC - angiotensin concentration in blood [ratio to normal]
ANUV M
0
INTPUTS:
PAR - renal perfusion pressure [torr]
PC - capillary pressure [torr]
MYOGTAU - time delay factor of myogenic response
(in normal condition TENSTC= 240 min)
TENSGN - factor of effectiveness of myogenic response
MYOGTAU
MYOGTAU1
ANUBR
1
0
ANG
RFAB
0.001962
MYOGENIC AUTOREGULATION OF AFFERENT ARTERIOLE
PAR
0
VTL
NAPT1
PFL
VRC
VP
PPC
INTPUTS:
PC - systemic capillary pressure [torr]
VTCLP
PGH - hydrostatic pressure in the tissue gel [torr]
PPC - plasma colloid osmotic pressure [torr]
PTC - colloid osmotic pressure of the tissue gel [torr]
VTL - rate of return of fluid from the interstitium to the
blood through the lymph [l/min]
VTS
TVD - rate of intake of fluid by mounth or otherwise [l/min]
VUD - loss of fluid into the urine [l/min]
DFP - loss of fluid from the pulmonary capillaries [l/min]
VID - rate of transfer of fluid into the cells [l/min]
CFILTR
CFC - capillary filtration coefficient [l/min/torr]
(normal value CFC=0.01167)
VPN - normal value of plasma volume [l]
VTSN - normal value of interstitital fluid volume [l]/n
OUTPUTS:
VTC
VP - plasma volume [l]
VTS - total interstitial fluid volume [l]
VTCPL - rate of leakage of whole plasma through
the capillary membrane [l/min]
CFILTR - rate of filtration from the systemic capillaries [l/min]
V PREL
VTC - toral rate of movement of fluid out of systemic capillaries[l/min]
VPR - plasma volume [ratio to normal]
VTS - total interstitial fluid volume [ratio to normal]
PTC
Glomerulus
99.85
ANU
240
VP
CAPILLARY MEMBRANE FLUID DYNAMICS
PPC
10.5
SODIUM EXCRETION
ANM
0.9143
ANU
PC
-2.687
0.004256
1.01
1.01
1
REK
2
17.67
1.05
RNAUG1
Macula densa
REK
ANXM
1.01
NAPT1
2.957
0.1246
47.44
PGH
PXTP
0.0208
0.1246
GFN
GLP
OUTPUTS:
GFR - glomerular filtration rate [l/min]
GFN - glomerular filtration rate if kidney is not damaged [l/min]
GLP - glomerular pressure [torr]
GLPC - average glomerular plasma colloid osmotic pressure [torr]
PFL - net pressure gradient in glomerulus [torr]
PXTP
1.047
RBF
MACULA DENSA
142.2
PAR
PAR
INTPUTS:
PA - systemic arterial pressure[torr]
GLB - pressure drop in renal artery
caused renal arterial constriction [torr]
PVS - average systemic venous pressure [torr]
AAR - resistance in afferent arteriole
[torr min/ll]
EAR - resistance in efferent arteriole
[torr min/ll]
REK - percent of normal renal function [ratio to normal]
41.48
EAR
99.85
99.85
RENAL PERFUSION
PA
0
GLB
V ICNorm
ECF AND ICF ELECTROLYTES AND VOLUMES
INTPUTS:
VP - plasma volume [l]
VTS - systemic interstitial fluid volume [l]
VPF - pulmonary interstitial fluid volume [l]
NID - normal rate of sodium intake [mmol/min]
STH - salt appetite multiplier factor [ratio to normal]
NOD - rate of excretion of sodium in the urine [mmol/min]
KID - rate of intake of potassium [mmol/min]
KOD - rate of excretion of potassium in the urine [mmol/min]
AMK - aldosterone multiplier factor for the effect of aldosterone
on the transport of potassium
through the cell membrane [ratio of normal effect]
ACLK - sensitivity control of the effect of the aldosterone
on cellular membrane transport
of potassium [ratio of normal effect]
VICnorm - normal value of the intracellular fluid volume [l]
OUTPUTS:
VEC - volume of extracellular fluid [l]
VIC - volume of intracellular fluid [l]
VTW - total body water [l]
VID - rate of fluid transfer between interstitial fluid and cells [l/min]
NAE - total extracellular sodium content [mmol]
CNA - extracellular sodium concentration [mmol/l]
CKE - extracellular potassium concentration [mmol/l]
KI - total intracellular potassium content [mmol]
CKI - intracellular potassium concentration [mmol/l]
KCD - rate of transferof potassium from the interstitial fluid
into the intracellular fluid [mmol/min]
VEC
VIC
14.98
24.99
VTW
39.97
VID
-0.001555
NAE
2131
CNA
142.2
CKE
KI
5.068
3549
CKI
142
KCD
-0.05811
VICnorm
VUD
Extracellular and Intracellular Fluid Electrolytes and Volumes
REK
Efferent Arteriole
Urea and Water Excretion
Fig 10. Simulink implementation of a Guyton-Coleman model from 1986.
models running in the background can enable students to "play" with this physiological subsystem and
monitor its response to various inputs.
Simulation models in the background of teaching programs are therefore very effective
educational tools that facilitate the comprehension of complex regulation relations in the human
organism and pathogenesis of their malfunction.
From the pedagogical perspective it is advantageous, according to our experiences, if we allow
disconnection of individual regulation loops temporarily, and study reaction of the individual
subsystems separately, which contributes to better understanding of the dynamics of physiological
regulations [12].
During the creation of teaching applications with the use of simulation games, it is necessary, on
one hand, to resolve the creation of the simulation model, and on the other hand the creation of our
own simulator. These are two different tasks, whose effective solution facilitates the use of various
developmental tools [14].
During the creation of simulation models it is advantageous to use developmental tools
designated for creating and identification of simulation models – for example Matlab/Simulink from
the Mathworks company. In this environment, we have also created a special library of physiological
models - Physiology Blockset for Matlab/Simulink, open source software library. 1st Faculty of
Medicine, Charles University, Prague, available at http://physiome.cz/simchips.
Creating simulation models is closely related to issues of creating formalized description of
biological reality, which is the content of the worldwide PHYSIOME project [3, 10].
Creating our own teaching simulators is done in the environment of classic developmental tools
for computer programmers (for example Microsoft Visual Studio, etc.) and tools facilitating the
creation of interactive animated pictures, used in user interface of teaching programs (for example
Adobe Flash, Adobe Flex). The future probably lies in simulators available on the web and on the
accessibility of e-learning educational environment [15, 19]..
12
ISBN 987-80-7080-658-6, CD ROM Proceedings, http://www.humusoft.cz/akce/matlab07
7 From Simulation Games to Medical Simulators
Thirty five years ago, when A. C. Guyton et al. published his large-scale model, the only
possibility to study the behaviour of the model was on large computers that often occupied an entire
room. Nowadays it is possible to run even very sophisticated models on a PC. Moreover, today’s
technology allows us to add on a graphical attractive user-friendly interface to these models.
From the technological standpoint there are no obstacles that would prevent PCs from running
learning simulators for practicing medical decision-making. The basis for a pilot's simulator during
training pilots is the model of the plane. Similarly, one of the prerequisites when creating a medical
simulator is the extensive simulation model of a human organism. This simulation model must include
all significant physiological subsystems – circulation, respiration, kidney function, water, osmotic and
electrolyte homeostasis, acid-base regulation, etc. – which have to be interconnected into the model.
Therefore, now is the time of a renaissance in the formation of large integral models of human
organism, and of the concept of integrative physiology, that Guyton came up with years ago. At the
present time the practical fulfillment is being achieved.
For example, at the present time, Thomas Coleman, one of the co-authors of the legendary
article by prof. Guyton from 1972 [6], together with Guyton’s disciples, created a simulator
Quantitative Human Physiology (QHP), whose theoretical basis is a new mathematical model of
integrative human physiology which contains more than 4000 variables of biological interactions. A
review
edition
of
this
simulator
is
freely
available
for
download
at
http://physiology.umc.edu/themodelingworkshop/.
The simulator consists of two software packages.
The first is the equation solver, named QHP 2007.EXE. This is the executable file, prepared for
the Windows operating system (2000, xp, Vista).
The second is an XML document that defines the model, the solution control and the display of
results. This document is distributed over a large number of small files in the main folder and several
subfolders. The XML schema used is described in a preliminary fashion in another section of this
modeling workshop.
The XML document is parsed at program startup. Parsing progress is displayed in the status bar
at the bottom of the program’s main window.
All of the XML files are both machine and human readable. You only need a text editor (such as
Notepad, WordPad).
Unfortunately, the orientation in the structure of such a large model is difficult, due to a large
number of variables (more than 4000).
Standardized notation of the model structure in XML is easily understandable for the machine,
but for a human it is necessary to provide a graphic depiction of the structure of the physiological
regulation relations.
Thus, the suggestions that prof. Guyton et al. sparked, thirty five years ago, by his legendary
article (the concept of integrative physiology, the creation of large-scale models of physiological
subsystems interconnected in an integrative way, and an effort to graphically depict the structure of
physiological regulation relations), nowadays return in a new form and with new possibilities.
References
[1] S. R. Abram, Hodnett, B. L., Summers, R. L., Coleman, T. G., Hester R.L.: Quantitative
Circulatory Physiology: An Integrative Mathematical Model of Human Physiology for medical
education. Advannced Physiology Education, 31 (2), 202-210, 2007.
[2] N. M. Amosov, Palec B. L., Agapov, B. T., Jermakova, I. I., Ljabach E. G., Packina, S. A.,
Solovjev, V. P.: Theoretical Research of Physiological Systems (in Russian). Kiev: Naukova
Dumka, 1977
[3] J. B. Bassingthwaighte: Strategies for the Physiome Project. Annals of Biomedical Engeneering
28, 1043-1058, 2000
13
Technical Computing Prague 2007. 15th Annual Conference Proceedings. Prague, 2007
[4] T. G. Coleman, Randall, J. E.: HUMAN. A Comprehensive Physiological Model. The Physiologist
26, 15-21, 1982
[5] P. Fritzson: Principles of Object-Oriented Modelling and Simulation with Modelica 2.1, WileyIEEE Press, 2003
[6] A. C. Guyton, Coleman T. A. , & Grander H. J.: Circulation: Overall Regulation. Annual Review
of Physiology, 41, 13-41, 1972.
[7] A. C. Guyton, Jones C. E., Coleman T. A.: Circulatory Physiology: Cardiac Output and Its
Regulation. Philadelphia: WB Saunders Company, 1973
[8] A. C. Guyton, Taylor, A. E, Grander, H. J.: Circulatory Physiology II: Dynamics and Control of
the Body Fluids. Philadelphia: WB Saunders Company, 1975.
[9] Guyton A. C.: The Suprising Kidney-Fluid Mechanism for Pressure Control – Its Infinite Gain!.
Hypertension, 16, 725-730, 1990.
[10]
P. J. Hunter, Robins, P., Noble D.: The IUPS Physiome Project. Pflugers Archive-European
Journal of Physiology, 445,1–9, 2002.
[11]
N. Ikeda, Marumo F. , Shirsataka M.: A Model of Overall Regulation of Body Fluids. Annals
of Biomedical Engeneering, 7, 135-166, 1979.
[12]
J. Kofránek, Anh Vu, L. D., Snášelová, H., Kerekeš, R., Velan, T.: GOLEM – Multimedia
Simulator for Medical Education. In Patel, L., Rogers, R., Haux R. (Eds.). MEDINFO 2001,
Proceedings of the 10th World Congress on Medical Informatics. London: IOS Press, 1042-1046,
2001, available at http://physiome.cz/Guyton.
[13]
J. Kofránek, Andrlík, M., Kripner, T., Mašek, J.: From Simulation Chips to Biomedical
Simulator. In Amborski K, Meuth H, (eds.): Modelling and Simulation 2002, Germany 2002,
Proceeding of 16th European Simulation Multiconference, Germany, Darmstadt, 431-436, 2002,
available at http://physiome.cz/Guyton.
[14]
J. Kofránek, Andrlík M., Kripner T., Stodulka P.: From Art to Industry: Development of
Biomedical Simulators. The IPSI BgD Transactions on Advanced Research 2. 62-67, 2005,
available at http://physiome.cz/Guyton.
[15]
J. Kofránek, Matoušek, S., Andrlík, M., Stodulka, P. Wünsch, Z. Privitzer, P., Hlaváček, J.,
Vacek O.: Atlas of Physiology - Internet Simulation Playground. In Proceedings of EUROSIM
2007, Ljubljana, Vol. 2. Full Papers (CD). (B. Zupanic, R. Karba, S. Blažič Eds.), University of
Ljubljana, MO-2-P7-5, 1-9, 2007, available at http://physiome.cz/Guyton.
[16]
J. A. Miller, Nair, R. S., Zhang, Z., Zhao, H.: JSIM: A JAVA-Based Simulation and
Animation Environment, In Proceedings of the 30th Annual Simulation Symposium, Atlanta,
Georgia, 31-42, 1997.
[17]
G. M. Raymond, Butterworth E, Bassingthwaighte J. B.: JSIM: Free Software Package for
Teaching Physiological Modeling and Research. Experimental Biology 280, 102-107, 2003.
[18]
S. Silbernagl, Lang, F.: Color Atlas of Pathophysiology, Stuttgart: Thieme Verlag, 2000.
[19]
P. Stodulka, Privitzer, P., Kofránek, J., Tribula, M., Vacek, O.: Development of WEB
Accessible Medical Educational Simulators. In Proceedings of EUROSIM 2007, Ljubljana, Vol. 2.
Full Papers (CD). (B. Zupanic, R. Karba, S. Blažič Eds.), University of Ljubljana, MO-3-P4-2, 16, 2007, available at http://physiome.cz/Guyton.
Acknowledgement
This research was supported by MŠMT aid grant No. 2C06031 and BAJT servis s.r.o company.
Jiří Kofránek, M.D., Ph.D.
Laboratory of Biocybernetics,
Dept. of Pathophysiology,
1st Faculty of Medicine,
Charles University, Prague
U Nemocnice 5, 128 53 Praha 2,
Czech Republic
e-mail: kofranek@email.cz
14

Similar documents