Improving the performances of clinical trial simulations in Simulo using compiled code
Nicolas Luyckx, Quentin Leirens
SGS Exprimo
Objectives:
In R, dynamic linked models (DLL's) have been proved to increase the speed of repetitive tasks, such as clinical trial simulations (CTS). Since its first release in 2012, ordinary differential equations (ODE’s) in Simulo have always been specified with pure R code and solved using the package deSolve [1]. Recently, an attempt to use a compiled version of the drug model has been developed. Additionally, improvements allowing to reduce the number of interruptions during the solver integration routine have been considered and implemented. To quantify the gain of performance in Simulo, we evaluated execution times of four different drug models and study designs.
Methods:
Two main modifications have been implemented resulting in a new version of Simulo:
1) Model structural equations are now defined in C code. For backwards compatibility purposes and for user comfortability, a Java-based converter was developed to translate any ODE and structural model equation from R into C code. Given that the syntax of those programming languages is very similar when defining drug model equations, the translation algorithm complexity was rather limited. Unit tests validated the conversion and usual R mathematical symbols, operators as well as functions used in pharmacometrics can be interpreted automatically.
2) The way observations were handled was also completely reviewed. They can now be either of type ‘solver output’ or ‘event-based’. With the first type of observations, values are directly transmitted to the solver. Consequently, the integration routine automatically determines itself when to store data and it results in less interruptions. With the second type, the solver is more often stopped to execute the ‘event-variability’ section and to trigger conditional events.
For an objective comparison, four different Simulo study implementations were used to benchmark Simulo Expert 7.2 [2], the latest version in production that includes parallel execution features, against Simulo 8.0, the new compiled version prototype. Each model selected for the evaluation explored specific features that can have a different effect on the speed. The Integrated Glucose Insulin (IGI) model [3] contains control mechanism between ODE’s. The Viral Kinetic (VK) model [4] exhibits compartments that can have very different scales in their amount values. A PKPD Sunitinib model [5] including interrupting events has been implemented and used to assess conditional events. A PKPD Sunitinib with overall survival model [6] [7] examines longer simulation periods.
In each case, 20 replicates of 500 subjects were simulated with parallelization over 8 CPUs in both Simulo versions. The full time of simulation (setup, execution and result concatenation) has been used for the comparison.
Results:
Details about model specificities and execution times in each Simulo version are summarized in Table 1.
Table 1 - Comparison of model features and speed improvement
Model |
Integrated Glucose Insulin (IGI) model |
Viral Kinetic (VK) model |
Sunitinib PKPD with conditional events |
Sunitinib PD with survival runs |
Description |
Glucose Insulin model with control mechanisms |
2-cpt PK model + Viral kinetic model |
2-cpt PK model + Platelet count (PC) model |
Modeling of biomarkers + tumour growth inhibition + survival model in GIST treatment |
Number of ode’s |
9 |
6 |
9 |
9 |
Absolute tol. / Relative tol. |
1E-6 / 1E-6 |
1E-6 / 1E-6 |
1E-6 / 1E-6 |
1E-8 / 1E-8 |
Simulation length |
8 weeks |
2 days |
36 weeks |
104 weeks |
Number of doses |
56 |
10 |
168 |
~500 |
Number of observations |
20 |
400 |
36 |
~100 |
Number of observed variables |
2 |
5 |
3 |
23 |
Interrupting events |
/ |
/ |
Every day (suspend dosing if PC too low) |
Every hour |
Runtime in 7.2 |
2258s |
614s |
2421s |
1254s |
Runtime in 8.0 |
134s |
111s |
327s |
253s |
Speed improvement |
17x |
5.5x |
7.5x |
5x |
IGI, VK, Sunitinib PKPD with conditional events and Sunitinib PKPD with survival runs respectively 17, 5.5, 7.5 and 5 times faster than the reference Simulo Expert 7.2. On overall, the speed increase tends to be higher for complex studies containing a high number of ODE’s and/or observations.
Conclusions:
The compiled version shows a significant increase on the simulation time varying from a 5 to 17 fold factor in the Simulo studies used in the benchmark. This version allows to provide faster simulations results evaluating complex clinical study designs and to help take early decisions during drug development process. The integrated Liveview takes also benefit from this speed improvement, making Simulo more convenient to work with as standalone application while exploring your drug model.
References:
[1] http://desolve.r-forge.r-project.org/
[2] Leirens Q, Faelens R, Gisleskog PO, et al. PAGE 26 2017. Abstr 7331 [www.page-meeting.org/?abstract=7331]
[3] Petra M. Jauslin, Nicolas Frey and Mats O. Karlsson. Modeling of 24-Hour Glucose and Insulin Profiles of Patients with Type 2 Diabetes. J Clin Pharmacol (2011) 51: 153-64
[4] Phylinda L. S. Chan, Philippe Jacqmin, Marc Lavielle, Lynn McFadyen and Barry Weatherley. The use of the SAEM algorithm in MONOLIX software for estimation of population pharmacokinetic pharmacodynamic-viral dynamics parameters of maraviroc in asymptomatic HIV subjects. J Pharmacokinet Pharmacodyn (2011) 38:41–61
[5] Koshravan R et Al. Population Pharmacokinetic/Pharmacodynamic Modeling of Sunitinib by Dosing Schedule in Patients with Advanced Renal Cell Carcinoma or Gastrointestinal Stromal Tumor. Clin Pharmacokinet (2016) 55:1251–1269
[6] Hansson E.K. 2011. Pharmacometric models for Biomarkers, Side Effects and Efficacy in Anticancer Drug Therapy. Acta Universitatis Upsaliensis.
[7] Hansson et. al. (2013) PKPD Modeling of VEGF, sVEGFR-2, sVEGFR-3, and sKIT as Predictors of Tumor Dynamics and Overall Survival Following Sunitinib Treatment in GIST. CPT Pharmacometrics Syst Pharmacol, 20;2:e84.