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: [email protected] 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: [email protected] 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: [email protected], [email protected] 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: [email protected] 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: [email protected] Tomáš Nikl UK v Praze, 1.lékařská fakulta, Centrum podpory elektronické výuky Kateřinská 32, 128 01 Praha 2 e-mail: [email protected] 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: [email protected] 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: [email protected] 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 [email protected] (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 [email protected] (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 [email protected] (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 [email protected] (Petr Stodulka), [email protected] (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: [email protected] 14