220 likes | 392 Views
Distributed computation and parameter estimation on identification of physiological systems. Tomáš Kulhánek 1,2 Jan Šilar 1 Marek Mateják 1 Pavol Privitzer 1 Jiří Kofránek 1 Martin Tribula 1 1 First Faculty of Medicine, Charles University, Prague 2 CESNET z.s.p.o.
E N D
Distributed computation and parameter estimation on identification of physiological systems Tomáš Kulhánek 1,2 Jan Šilar 1 Marek Mateják 1 Pavol Privitzer 1 Jiří Kofránek 1 Martin Tribula 1 1 First Faculty of Medicine, Charles University, Prague 2 CESNET z.s.p.o. VPH 2010, Brussels, 30th September -1st October 2010
Distributed computation and parameter estimation on identification of physiological systems Computational models Estimation algorithm Identification of parameters Measured (measurable) Searched (computed, estimated) Distributed (GRID) computing approach
CESNET National research and education network operator in Czech Republic Department of network application – application in medicine
Laboratory of biocybernetics and computer aided teaching - Institute of Patophysiology, 1st Faculty of Medicine, Charles Univerzity, Prague - Atlas - web based education simulators and presentations - Acausal modeling of physiological systems
Models of physiological systems Cardiac Output and Its Regulation
Cardiac Output and Its Regulation Measured(measurable, guessed) parameters: Pthorax PSystemicArteries ... Searched parameters: RSystemicVeins,Rsystemic,RPulmonary Elasticity C, Initial volume V0 Parameters of the models
Identification of physiological system Make custom model for specific patient Some parameters cannot be measured: can be computed – estimated Identification: measured parameters and estimated parameters match the model. Optimization methods: Simplex method, Genetic algorithm (CMA-ES), ... Model evaluation library: .NET, C++, Java
Computation system model evaluation from given parameters = 1 iteration ~ 1 second Optimization method for the model Cardiac output and it's regulation (5 parameters)~ 20 000 iterations ~ 20 000 seconds = 5 hours 33 minutes Optimization method for more complex model (6 parameters)~ 200 000 iterations • ~200 000 seconds = 2 days 7 hours
Parallel computation system Parallelize some iterations -> reduce number of serial steps ~ 1000 iterations Theoretically: 1000 seconds = 16 minutes vs. 5 hours 33 minutes Practically: 1000 x (1 parallel iteration + parallelization overhead)
Computation system - BOINC Computation service – SOAP web service BOINC – desktop grid - volunteer computing grid (like seti@home) DC-API – SZTAKI desktop grid API based upon BOINC Computation nodes – BOINC clients
Computation system conclusion 1 Parallelization overhead time (1-60 seconds per iteration) BOINC computation model • Employed computers in laboratory and virtual computers in cloud build on high speed network (1GBit/s) • Pull model – client asks for new task in reasonable time – preparation for computing (increases overhead time in the begining) • Easy to establish and mantain
future development Employ GRID offered by NGI based on gLite (or Globus) • Enhance computation web service • Push model – computation node is scheduled by the master task CPU (4cores) + GPU (400+ cores) computing • nVidia TESLA
Thank you for your attention This work was supported by grant FR CESNET 2009 number 361 Tomáš Kulhánek tomaton@centrum.cz