Clinical cardiovascular identification with limited data and fast forward simulation 6th IFAC SYMPOSIUM ON MODELLING AND CONTROL IN BIOMEDICAL SYSTEMS C. E. Hann1, J. G. Chase1, G. M. Shaw2, S. Andreassen3, B. W. Smith3 1Department of Mechanical Engineering, University of Canterbury, Christchurch, New Zealand of Intensive Care Medicine, Christchurch Hospital, Christchurch, New Zealand 3 Centre for Model-based Medical Decision Support, Aalborg University, Aalborg, Denmark 2 Department Diagnosis and Treatment • Problem: Cardiac disturbances difficult to diagnose – Limited data – Reflex actions • Solution: Minimal Model + Patient-Specific Parameter ID – – – – Interactions of simple models to create complex dynamics Primary parameters Identification must use common ICU measurements E.g. increased resistance in pulmonary artery pulmonary embolism, atherosclerotic heart disease • However: Identification for diagnosis requires fast parameter ID – Must occur in “clinical real-time” – Limits model and method complexity (e.g. parameter numbers, non-linearities, …) Heart Model D.E.’s and PV diagram V Q1 Q2 P P Q1 R1 Q1 1 2 L1 P P3 Q2 R2 Q 2 2 L2 P2 e(t ) Ees (V Vd ) (1 e(t )) P0 (e (V V0 ) 1), e(t ) e 80( t 0.375) 2 Fast Forward Simulation • Formulate in terms of Heaviside functions: V H (Q1 )Q1 H (Q2 )Q2 ( P P2 R1Q1 ) Q1 H ( H ( P1 P2 ) H (Q1 ) 0.5) 1 L1 ( P P3 R2Q2 ) Q 2 H ( H ( P2 P3 ) H (Q2 ) 0.5) 2 L2 H ( K (t )) 0, K (t ) 0 1, K (t ) 0 H ( K (t )) 1 1 1 1 tan K (t ) tan 1 2 K ( t ) • No looking for sign changes and restarting DE solver done automatically • E.g. filling (P1>P2, P2 ): H ( H ( P1 P2 ) H (Q1 ) 0.5) 1, P2 P1 , Q1 0 0, P2 P1 , Q1 0 (close on flow) Fast Forward Simulation • Ventricular interaction solve every time step (slow) e(t ) Ees, spt (Vspt Vd , spt ) (1 e(t )) P0, spt (e spt (Vspt V0,spt ) e(t ) Ees,lvf (Vlv Vspt ) (1 e(t )) P0,lvf (e lvf (Vlv V0,spt ) e(t ) Ees,rvf (Vrv Vspt ) (1 e(t )) P0,rvf (e Substitute: e • sptVspt asptVspt bspt , e 1) lvf Vlv 1) rvf (Vrv V0,spt ) 1) alvf Vlv blvf , e rvf Vrv arvf Vrv brvf Linear in Vspt Analytical solution very fast Method (20 Heart beats) CPU time (s) Event solver 101.9 First Heaviside 36.8 2.8 Simpler Heaviside 18.8 5.4 Simpler Heaviside + Vspt formula 3.1 Speed increase factor 32.9 Reflex Actions • • • • Vaso-constriction - contract veins Venous constriction – increase venous dead space Increased HR Increased ventricular contractility Varying HR as a linear function of DPao Simple interactions to create overall complex dynamic behaviour in the full system model Disease States • Pericardial Tamponade: – – • Pulmonary Embolism: – • Not enough oxygen to myocardium (e.g. from blocked coronary artery) Decrease: Ees,lvf, Increase: P0,lvf A more complex set of changes/interactions Septic shock: – – • Increase: Rpul Current Status: • Clinical results for Pulmonary Embolism • Simulated results for others Cardiogenic shock: – – • Build up of fluid in pericardium Decrease: dead space volume V0,pcd Blood poisoning Decrease: Rsys = systemic resistance Hypovolemic shock: – Severe decrease in total blood volume = sum of individual volumes A Healthy Human Baseline Output Value Volume in left ventricle 111.7/45.7 ml Volume in right ventricle 112.2/46.1 ml Cardiac output 5.3 L/min Max Plv 119.2 mmHg Max Prv 26.2 mmHg Pressure in aorta 116.6/79.1 mmHg Pressure in pulmonary artery 25.7/7.8 mmHg Avg pressure in pulmonary vein 2.0 mmHg Avg pressure in vena cava 2.0 mmHg Simulation of Disease States • Pericardial Tamponade Ppu – 7.9 mmHg CO – 4.1 L/min MAP – 88.0 mmHg • Pulmonary Embolism: Rpul increases as embolism induced ~60-75% change in mean value • All other disease states similarly capture physiological trends and magnitudes Integral Method - Concept x ax b sin( t ) c, x (0) 1 a 0.5, b 0.2, c 0.8 • Discretised solution analogous to measured data (simple example with analytical solution ) • Work backwards and find a,b,c • Current method – solve D. E. numerically or analytically 1.85 x (t ) 1.8 (ab cos t ba 2 sin t ca 2 c )) 1.75 1.7 - Find best least squares fit of x(t) to the data 1.65 x - Non-linear, non-convex optimization, computationally intense 1.6 q 1.55 1.5 P1 P2 R • integral method – reformulate in terms of integrals 1.45 1.4 12 1 ( eat ( a c ab ca 2 a 3 ) (a 1)a 2 – linear, convex optimization, minimal computation 13 14 15 16 time 17 18 19 Integral Method - Concept Integrate x ax b sin( t ) c, both sides from t0 to t ( t0 4 ) • t x dt t (ax b sin( t ) c) dt t t 0 0 x(t ) x(t0 ) a t x dt b t sin( t ) dt c t 1 dt • t t t 0 0 0 x(t ) x(t0 ) a t x dt b(cos( t0 ) cos(t )) c(t t0 ) t 0 Choose 10 values of t, between t0 4 and 6 form 10 equations in 3 unknowns a,b,c a tt x dt b(1 cos( ti )) c(ti t0 ) x (ti ) x (t0 ), i 1,,10 0 Integral Method - Concept tt x dt cos( t0 ) cos( t1 ) t1 t0 a x (t1 ) x (t0 ) b t x dt cos( t ) cos( t ) t t c x ( t ) x ( t ) 0 10 10 0 0 10 t 1 0 10 0 • Linear least squares (unique solution) Method Starting point CPU time (seconds) Solution Integral - 0.003 [-0.5002, -0.2000, 0.8003] Non-linear [-1, 1, 1] 4.6 [-0.52, -0.20, 0.83] Non-linear [1, 1, 1] 20.8 [0.75, 0.32, -0.91] • Integral method is at least 1000-10,000 times faster depending on starting point • Thus very suitable for clinical application Adding Noise & ID • • • Add 10% uniform distributed noise to outputs to identify Conservative value that is larger than what has been encountered clinically Sample at 100-200 Hz • Capture disease states, assume Ppa, Pao, Vlv_max, Vlv_min, chamber flows. Identifying Disease State Using All Variables - Simulated • • Pericardial Tamponade: Find all parameters, look for change in V0,pcd Change True value (ml) Optimized Value Error (%) First 180 176 2.22 Second 160 158 1.25 Third 140 138 1.43 Fourth 120 117 2.50 Fifth 100 100 0 • All other variables effectively unchanged from baseline Pulmonary Embolism: Find all parameters, look for change in Rpul Change True value (mmHg s ml-1) Optimized Value Error (%) First 0.1862 0.1907 2.41 Second 0.2173 0.2050 5.67 Third 0.2483 0.2694 8.50 Fourth 0.2794 0.2721 2.60 Fifth 0.3104 0.2962 4.59 • All other variables effectively unchanged from baseline Identifying Disease State Using All Variables - Simulated • • Cardiogenic shock: Find all parameters, look for change in [Ees,lvf, P0,lvf] Change True values Optimized Value Error (%) First [2.59,0.16] [2.61,0.15] [0.89,5.49] Second [2.30,0.19] [2.30,0.18] [0.34,4.39] Third [2.02,0.23] [2.02,0.21] [0.43,8.03] Fourth [1.73,0.26] [1.70,0.24] [1.48,9.85] Fifth [1.44,0.30] [1.43,0.27] [0.47,9.39] • All other variables effectively unchanged from baseline • All other variables effectively unchanged from baseline Septic Shock: Find all parameters, look for change in Rsys Change True value (mmHg s ml-1) Optimized Value Error (%) First 1.0236 1.0278 0.41 Second 0.9582 0.9714 1.37 Third 0.8929 0.8596 3.73 Fourth 0.8276 0.8316 0.49 Fifth 0.7622 0.7993 4.86 Identifying Disease State using All Variables - Simulated • Hypovolemic Shock: Find all parameters, look for change in total stressed blood volume Change True value (ml) Optimized Value Error (%) First 1299.9 1206.5 7.18 Second 1177.3 1103.7 6.26 Third 1063.1 953.8 10.28 (hmm!) Fourth 967.8 1018.9 5.28 Fifth 928.5 853.4 8.10 • All other variables effectively unchanged from baseline New for MCBMS! Clinical Results • • Pulmonary embolism induced in pigs (collaborators in Liege, Belgium) Identify changes in Rpul including reflex actions and all variables • • Use only: Pao, Ppa, min/max(Vlv, Vrv) to ID all parameters Far fewer measurements than in simulation Left Ventricle (30 mins) Right Ventricle (30 mins) Animal Model Results – PV loops Left Ventricle (120 mins) Left Ventricle (180 mins) Right Ventricle (120 mins) Right Ventricle (120 mins) Animal Model Results Over Time PV loops (Pig 2) Pulmonary resistance (Pig 2) Reflex actions (Pig 2) Septum Volume (Pig 2) Right ventricle expansion index (Pig 2) Rpul – All pigs Conclusions • Minimal cardiac model simulate time varying disease states – Accurately captures physiological trends and magnitudes – Accurately captures a wide range of dynamics – Fast simulation methods available • Integral-based parameter ID patient specific models – Simulation: ID errors from 0-10%, with 10% noise – Animal model: Pressures (Total Error) =2.22±2.17 mmHg (< 5%) Volumes (Total Error) = 2.37±2.01 ml (< 5%) • Identifiable using a minimal number of common measurements – Rapid ID method, easily implemented in Matlab – Rapid ID = Rapid diagnostic feedback • Future Work = septic shock (Dec 2006), and other disease states (2007) Acknowledgements Engineers and Docs Dr Geoff Chase Dr Geoff Shaw Belgium Dr Thomas Desaive The Danes The Honorary Danes Prof Steen Andreassen Dr Bram Smith Honorary Kiwis Christina Starfinger Questions ???