G-CSF PK-PD design evaluation

Overview

This example evaluates a G-CSF / filgrastim population design with PFIM, based on the PK-PD model of Krzyzanski et al. (Krzyzanski et al. 2010).

The model describes subcutaneous filgrastim with quasi-steady-state target-mediated drug disposition (TMDD) and a myelopoiesis cascade for absolute neutrophil count (ANC). The population Fisher information matrix (FIM) is evaluated for Design 1: three parallel arms (1, 3 and 10 µg/kg), 10 subjects per arm, dense PK and ANC sampling on days 1 and 7.

Objectives

  1. Evaluate the population FIM of Design 1 (ODE model, two responses, Combined2 residual error).
  2. Report relative standard errors (RSE %) for fixed effects, IIV and residual error.
  3. Display typical PK and ANC predictions (dense ODE re-simulation) together with SE / RSE bar charts.

The 11-state ODE FIM is expensive. During rendering, example04_execute.R reuses vignettes/data/vignette4_evaluation_populationFIM.RDS when present; otherwise it runs the evaluation. Set PFIM_GCSF_FORCE_RUN=true to ignore the cache. HTML Report() is rebuilt only when regenerating the FIM or when PFIM_VIGNETTE_REPORT=true.

Experimental design

Design 1 is a three-arm parallel study. Body weight is fixed at 75 kg so the administered amount is \(\mathrm{DOSE}\times\mathrm{WT}\). Seven daily subcutaneous doses are given at times \(0, 24, \ldots, 144\) h. Bioavailability FF enters the depot initial condition (ABS = FF * dose_ABS).

Arm \(n\) Dose Sampling
dose_1ugkg 10 1 µg/kg × 75 kg PK and ANC dense on days 1 and 7
dose_3ugkg 10 3 µg/kg × 75 kg same grid
dose_10ugkg 10 10 µg/kg × 75 kg same grid

PK samples on day 1: 0.167–24 h (22 points), repeated on day 7, plus 172, 192 and 216 h. ANC adds daily troughs on days 2–6 and a 240 h point. Later PK peaks are lower than the day-1 peak because of TMDD feedback: higher ANC clears G-CSF faster.

PK-PD model

Two observed responses:

Eleven ODE states: depot ABS, central CENT, nine bone-marrow transit compartments B1–B9, and blood neutrophils NB. Prefix Deriv_ identifies each right-hand side; the suffix must match the state name. Operators follow R (** for exponentiation).

The full right-hand sides are built by .pfimGcsfModelEquations() in example04_execute.R. The evaluation only needs the equation list, the algebraic PK output, and baseline initial conditions .pfimGcsfBaselineICs().

modelEquations = .pfimGcsfModelEquations()
outputs = list(RespPK = .pfimGcsfCp(), RespPD = "NB")

Model parameters

Inter-individual variability (\(\omega\)) is set only for the parameters that are estimated (nonzero \(\omega\)). Fixed \(\mu\) flags remove parameters from the FIM.

Parameter Description \(\mu\) \(\omega\) Fixed μ
FF Bioavailability 0.626 0 Yes
KA Absorption rate (h⁻¹) 0.642 0 No
KEL Elimination rate of free G-CSF (h⁻¹) 0.148 √0.312 No
VD Central volume (L) 2.56 √0.328 No
KD Equilibrium dissociation constant (ng/mL) 1.27 0 No
KINT Internalization rate (h⁻¹) 0.101 0 No
KSI Binding capacity (Rmax-related) 0.211 √0.224 No
KMT Neutrophil elimination from blood (h⁻¹) 0.0723 0 No
KTT Myeloid transit rate (h⁻¹) 0.0102 0 No
NB0 Baseline circulating ANC (10³/µL) 1.65 √0.298 No
SC1 G-CSF EC₅₀ for stimulation (ng/mL) 3.21 √0.803 No
SM1 Max. stimulation of production 34.3 √0.0128 No
SM2 Max. stimulation of maturation 32.3 0 No

FR, D2, KOFF, KBB1, SM3 and BAS are fixed and do not appear in the FIM.

modelParameters = list(
  ModelParameter(name = "KA",  distribution = LogNormal(mu = 0.642, omega = 0)),
  ModelParameter(name = "KEL", distribution = LogNormal(mu = 0.148, omega = sqrt(0.312))),
  ModelParameter(name = "VD",  distribution = LogNormal(mu = 2.56,  omega = sqrt(0.328))),
  # ... remaining parameters as in example04_execute.R
)

Residual error model

PFIM Combined2 stores residual standard deviations (sigmaInter, sigmaSlope). The variance form is

\[ V = \sigma_{\mathrm{inter}}^2 + (\sigma_{\mathrm{slope}}\, f)^2. \]

Response Term PFIM SD
RespPK proportional √0.253
RespPK additive 0, fixed
RespPD proportional √0.0227
RespPD additive √2.10
modelError = list(
  Combined2(output = "RespPK", sigmaInter = 0, sigmaSlope = sqrt(2.53e-01),
            sigmaInterFixed = TRUE),
  Combined2(output = "RespPD", sigmaInter = sqrt(2.10e+00),
            sigmaSlope = sqrt(2.27e-02))
)

Administration, sampling times, arms

WT = 75
dose_times = seq(0, 6 * 24, by = 24)

mk_arm = function(name, dose_ug_per_kg) {
  Arm(
    name = name, size = 10,
    administrations = list(Administration(
      outcome = "ABS", timeDose = dose_times,
      dose = rep(dose_ug_per_kg * WT, length(dose_times))
    )),
    samplingTimes = list(samplingPK, samplingPD),
    initialConditions = .pfimGcsfBaselineICs()
  )
}

design1 = Design(
  name = "gcsf_design1",
  arms = list(
    mk_arm("dose_1ugkg", 1),
    mk_arm("dose_3ugkg", 3),
    mk_arm("dose_10ugkg", 10)
  )
)

Population FIM evaluation

pfim_set_option(perf.fdLinearOnly = TRUE)

evaluationPop = Evaluation(
  name = "gcsf_design1",
  modelEquations = modelEquations,
  modelParameters = modelParameters,
  modelError = modelError,
  outputs = list(RespPK = .pfimGcsfCp(), RespPD = "NB"),
  designs = list(design1),
  fimType = "population",
  odeSolverParameters = list(atol = 1e-8, rtol = 1e-8)
)

evaluationPop = run(evaluationPop)
show(evaluationPop)
getRSE(evaluationPop)
*************************************** 
  Population Fisher Matrix 
*************************************** 

                        μ_KA        μ_KEL          μ_VD          μ_KD        μ_KINT         μ_KSI         μ_KMT        μ_KTT         μ_NB0         μ_SC1         μ_SM1        μ_SM2       ω²_KEL
μ_KA            3971.1311156 1186.9218298 -2.036910e+01   -43.0557970   13963.30995   -244.505941 -6.798335e+02    7174.6916   -7.09980650   12.44065292  1.916216e+00    0.1939741  0.000000000
μ_KEL           1186.9218298 3276.6125964  6.240750e+00  -156.3236244    9250.01901     -4.066780  2.179500e+03    8740.5620   -2.35299025    0.73943343  4.034423e-01    1.2497026  0.000000000
μ_VD             -20.3691010    6.2407503  1.143137e+01     3.8378322     -94.80479     46.860295 -3.208658e+00    -728.5192    0.47053982    0.09993536  2.053618e-04   -0.1446296  0.000000000
μ_KD             -43.0557970 -156.3236244  3.837832e+00   284.9748591   -6639.55813   -193.952738 -1.759877e+03    6329.5127   -1.59457642   -2.93350653 -6.571671e-01    1.2214591  0.000000000
μ_KINT         13963.3099523 9250.0190055 -9.480479e+01 -6639.5581293  280625.07795   2536.417058  7.140062e+04 -162853.1163  -13.80764317  128.70795076  4.117431e+01  -40.5458885  0.000000000
μ_KSI           -244.5059408   -4.0667795  4.686030e+01  -193.9527380    2536.41706   1757.093492  1.291056e+03  -35042.1221    7.95346612    9.43280439  2.382649e+00   -9.9768049  0.000000000
μ_KMT           -679.8334795 2179.5003307 -3.208658e+00 -1759.8765917   71400.62066   1291.055650  2.516249e+05 -102117.7445  402.89285135  277.64187376  2.988309e+01  110.7877980  0.000000000
μ_KTT           7174.6915719 8740.5619687 -7.285192e+02  6329.5127120 -162853.11626 -35042.122084 -1.021177e+05 1371025.1260 -261.47968877 -581.86254459  4.025250e+02 -125.4816343  0.000000000
μ_NB0             -7.0998065   -2.3529903  4.705398e-01    -1.5945764     -13.80764      7.953466  4.028929e+02    -261.4797   35.37313289   -0.50505033 -8.216462e-02    1.0780692  0.000000000
μ_SC1             12.4406529    0.7394334  9.993536e-02    -2.9335065     128.70795      9.432804  2.776419e+02    -581.8625   -0.50505033    3.20793111 -6.164331e-02   -0.1954826  0.000000000
μ_SM1              1.9162163    0.4034423  2.053618e-04    -0.6571671      41.17431      2.382649  2.988309e+01     402.5250   -0.08216462   -0.06164331  1.947301e+00   -1.9885161  0.000000000
μ_SM2              0.1939741    1.2497026 -1.446296e-01     1.2214591     -40.54589     -9.976805  1.107878e+02    -125.4816    1.07806922   -0.19548259 -1.988516e+00    2.4205231  0.000000000
ω²_KEL             0.0000000    0.0000000  0.000000e+00     0.0000000       0.00000      0.000000  0.000000e+00       0.0000    0.00000000    0.00000000  0.000000e+00    0.0000000 96.431122784
ω²_VD              0.0000000    0.0000000  0.000000e+00     0.0000000       0.00000      0.000000  0.000000e+00       0.0000    0.00000000    0.00000000  0.000000e+00    0.0000000  0.121067757
ω²_KSI             0.0000000    0.0000000  0.000000e+00     0.0000000       0.00000      0.000000  0.000000e+00       0.0000    0.00000000    0.00000000  0.000000e+00    0.0000000  0.001812156
ω²_NB0             0.0000000    0.0000000  0.000000e+00     0.0000000       0.00000      0.000000  0.000000e+00       0.0000    0.00000000    0.00000000  0.000000e+00    0.0000000  0.007300912
ω²_SC1             0.0000000    0.0000000  0.000000e+00     0.0000000       0.00000      0.000000  0.000000e+00       0.0000    0.00000000    0.00000000  0.000000e+00    0.0000000  0.008543976
ω²_SM1             0.0000000    0.0000000  0.000000e+00     0.0000000       0.00000      0.000000  0.000000e+00       0.0000    0.00000000    0.00000000  0.000000e+00    0.0000000  0.779939847
σ_slope_RespPK     0.0000000    0.0000000  0.000000e+00     0.0000000       0.00000      0.000000  0.000000e+00       0.0000    0.00000000    0.00000000  0.000000e+00    0.0000000 17.867806893
σ_inter_RespPD     0.0000000    0.0000000  0.000000e+00     0.0000000       0.00000      0.000000  0.000000e+00       0.0000    0.00000000    0.00000000  0.000000e+00    0.0000000  0.868053723
σ_slope_RespPD     0.0000000    0.0000000  0.000000e+00     0.0000000       0.00000      0.000000  0.000000e+00       0.0000    0.00000000    0.00000000  0.000000e+00    0.0000000  8.192692601
                    ω²_VD       ω²_KSI       ω²_NB0       ω²_SC1       ω²_SM1 σ_slope_RespPK σ_inter_RespPD σ_slope_RespPD
μ_KA            0.0000000 0.000000e+00 0.000000e+00  0.000000000 0.000000e+00       0.000000      0.0000000       0.000000
μ_KEL           0.0000000 0.000000e+00 0.000000e+00  0.000000000 0.000000e+00       0.000000      0.0000000       0.000000
μ_VD            0.0000000 0.000000e+00 0.000000e+00  0.000000000 0.000000e+00       0.000000      0.0000000       0.000000
μ_KD            0.0000000 0.000000e+00 0.000000e+00  0.000000000 0.000000e+00       0.000000      0.0000000       0.000000
μ_KINT          0.0000000 0.000000e+00 0.000000e+00  0.000000000 0.000000e+00       0.000000      0.0000000       0.000000
μ_KSI           0.0000000 0.000000e+00 0.000000e+00  0.000000000 0.000000e+00       0.000000      0.0000000       0.000000
μ_KMT           0.0000000 0.000000e+00 0.000000e+00  0.000000000 0.000000e+00       0.000000      0.0000000       0.000000
μ_KTT           0.0000000 0.000000e+00 0.000000e+00  0.000000000 0.000000e+00       0.000000      0.0000000       0.000000
μ_NB0           0.0000000 0.000000e+00 0.000000e+00  0.000000000 0.000000e+00       0.000000      0.0000000       0.000000
μ_SC1           0.0000000 0.000000e+00 0.000000e+00  0.000000000 0.000000e+00       0.000000      0.0000000       0.000000
μ_SM1           0.0000000 0.000000e+00 0.000000e+00  0.000000000 0.000000e+00       0.000000      0.0000000       0.000000
μ_SM2           0.0000000 0.000000e+00 0.000000e+00  0.000000000 0.000000e+00       0.000000      0.0000000       0.000000
ω²_KEL          0.1210678 1.812156e-03 7.300912e-03  0.008543976 7.799398e-01      17.867807      0.8680537       8.192693
ω²_VD          96.4111185 1.501672e+01 2.001819e-01  0.149257544 3.307127e-01       6.457008      0.6128612       2.418923
ω²_KSI         15.0167242 1.157098e+02 3.188220e-01  0.696509059 6.474389e+00      21.993134      1.1966022      15.044794
ω²_NB0          0.2001819 3.188220e-01 1.549261e+02  0.335554086 1.096557e+00       1.147716      1.2844870       4.533607
ω²_SC1          0.1492575 6.965091e-01 3.355541e-01 18.249985669 1.096434e+00       1.315882      0.8195170       8.313513
ω²_SM1          0.3307127 6.474389e+00 1.096557e+00  1.096434311 8.753110e+04      50.382840      8.4710336      43.458001
σ_slope_RespPK  6.4570079 2.199313e+01 1.147716e+00  1.315881531 5.038284e+01   10401.414719      5.7904536     104.906026
σ_inter_RespPD  0.6128612 1.196602e+00 1.284487e+00  0.819517001 8.471034e+00       5.790454    380.5603736    1719.216620
σ_slope_RespPD  2.4189227 1.504479e+01 4.533607e+00  8.313512679 4.345800e+01     104.906026   1719.2166196   48953.726924

*************************************** 
  Fixed effects (μ) 
*************************************** 

                μ_KA        μ_KEL          μ_VD          μ_KD        μ_KINT         μ_KSI         μ_KMT        μ_KTT         μ_NB0         μ_SC1         μ_SM1        μ_SM2
μ_KA    3971.1311156 1186.9218298 -2.036910e+01   -43.0557970   13963.30995   -244.505941 -6.798335e+02    7174.6916   -7.09980650   12.44065292  1.916216e+00    0.1939741
μ_KEL   1186.9218298 3276.6125964  6.240750e+00  -156.3236244    9250.01901     -4.066780  2.179500e+03    8740.5620   -2.35299025    0.73943343  4.034423e-01    1.2497026
μ_VD     -20.3691010    6.2407503  1.143137e+01     3.8378322     -94.80479     46.860295 -3.208658e+00    -728.5192    0.47053982    0.09993536  2.053618e-04   -0.1446296
μ_KD     -43.0557970 -156.3236244  3.837832e+00   284.9748591   -6639.55813   -193.952738 -1.759877e+03    6329.5127   -1.59457642   -2.93350653 -6.571671e-01    1.2214591
μ_KINT 13963.3099523 9250.0190055 -9.480479e+01 -6639.5581293  280625.07795   2536.417058  7.140062e+04 -162853.1163  -13.80764317  128.70795076  4.117431e+01  -40.5458885
μ_KSI   -244.5059408   -4.0667795  4.686030e+01  -193.9527380    2536.41706   1757.093492  1.291056e+03  -35042.1221    7.95346612    9.43280439  2.382649e+00   -9.9768049
μ_KMT   -679.8334795 2179.5003307 -3.208658e+00 -1759.8765917   71400.62066   1291.055650  2.516249e+05 -102117.7445  402.89285135  277.64187376  2.988309e+01  110.7877980
μ_KTT   7174.6915719 8740.5619687 -7.285192e+02  6329.5127120 -162853.11626 -35042.122084 -1.021177e+05 1371025.1260 -261.47968877 -581.86254459  4.025250e+02 -125.4816343
μ_NB0     -7.0998065   -2.3529903  4.705398e-01    -1.5945764     -13.80764      7.953466  4.028929e+02    -261.4797   35.37313289   -0.50505033 -8.216462e-02    1.0780692
μ_SC1     12.4406529    0.7394334  9.993536e-02    -2.9335065     128.70795      9.432804  2.776419e+02    -581.8625   -0.50505033    3.20793111 -6.164331e-02   -0.1954826
μ_SM1      1.9162163    0.4034423  2.053618e-04    -0.6571671      41.17431      2.382649  2.988309e+01     402.5250   -0.08216462   -0.06164331  1.947301e+00   -1.9885161
μ_SM2      0.1939741    1.2497026 -1.446296e-01     1.2214591     -40.54589     -9.976805  1.107878e+02    -125.4816    1.07806922   -0.19548259 -1.988516e+00    2.4205231

*************************************** 
  Variance components (ω², γ², σ) 
*************************************** 

                     ω²_KEL      ω²_VD       ω²_KSI       ω²_NB0       ω²_SC1       ω²_SM1 σ_slope_RespPK σ_inter_RespPD σ_slope_RespPD
ω²_KEL         96.431122784  0.1210678 1.812156e-03 7.300912e-03  0.008543976 7.799398e-01      17.867807      0.8680537       8.192693
ω²_VD           0.121067757 96.4111185 1.501672e+01 2.001819e-01  0.149257544 3.307127e-01       6.457008      0.6128612       2.418923
ω²_KSI          0.001812156 15.0167242 1.157098e+02 3.188220e-01  0.696509059 6.474389e+00      21.993134      1.1966022      15.044794
ω²_NB0          0.007300912  0.2001819 3.188220e-01 1.549261e+02  0.335554086 1.096557e+00       1.147716      1.2844870       4.533607
ω²_SC1          0.008543976  0.1492575 6.965091e-01 3.355541e-01 18.249985669 1.096434e+00       1.315882      0.8195170       8.313513
ω²_SM1          0.779939847  0.3307127 6.474389e+00 1.096557e+00  1.096434311 8.753110e+04      50.382840      8.4710336      43.458001
σ_slope_RespPK 17.867806893  6.4570079 2.199313e+01 1.147716e+00  1.315881531 5.038284e+01   10401.414719      5.7904536     104.906026
σ_inter_RespPD  0.868053723  0.6128612 1.196602e+00 1.284487e+00  0.819517001 8.471034e+00       5.790454    380.5603736    1719.216620
σ_slope_RespPD  8.192692601  2.4189227 1.504479e+01 4.533607e+00  8.313512679 4.345800e+01     104.906026   1719.2166196   48953.726924

********************************************* 
  Determinant, condition numbers and D-criterion 
 *********************************************** 

Determinant: 4.833743e+56 
D-criterion: 500.3243 
Condition number (fixed effects): 19670405 
Condition number (variance components): 4798.393 

*************************************** 
  Parameters estimation 
*************************************** 

Parameter               Value           SE     RSE(%)
μ_KA               0.6420000  0.021116261   3.289137
μ_KEL              0.1480000  0.020007804  13.518786
μ_VD               2.5600000  0.322665143  12.604107
μ_KD               1.2700000  0.104970938   8.265428
μ_KINT             0.1010000  0.003860719   3.822495
μ_KSI              0.2110000  0.041203487  19.527719
μ_KMT              0.0723000  0.002940078   4.066498
μ_KTT              0.0102000  0.001735777  17.017423
μ_NB0              1.6500000  0.177727482  10.771363
μ_SC1              3.2100000  0.669325581  20.851264
μ_SM1             34.3000000  2.843452279   8.289948
μ_SM2             32.3000000  2.475776746   7.664943
ω²_KEL            0.3120000  0.101851203  32.644616
ω²_VD             0.3280000  0.102890719  31.369122
ω²_KSI            0.2240000  0.093948373  41.941238
ω²_NB0            0.2980000  0.080344111  26.961111
ω²_SC1            0.8030000  0.234129307  29.156825
ω²_SM1            0.0128000  0.003380033  26.406507
σ_slope_RespPK      0.5029911  0.009808890   1.950112
σ_inter_RespPD      1.4491377  0.055888640   3.856683
σ_slope_RespPD      0.1506652  0.004927586   3.270554

[1] 500.3243

Relative standard errors

RSE (%) reported by PFIM for Design 1.

Fixed effects (\(\mu\))

Fixed-effect RSE (%) for Design 1.
Parameter Description RSE (%)
\(\mu_{\mathrm{KA}}\) Absorption rate 3.289
\(\mu_{\mathrm{KEL}}\) Elimination rate of free G-CSF 13.519
\(\mu_{\mathrm{VD}}\) Central volume 12.604
\(\mu_{\mathrm{KD}}\) Equilibrium dissociation constant 8.265
\(\mu_{\mathrm{KINT}}\) Internalization rate 3.822
\(\mu_{\mathrm{KSI}}\) Binding capacity (Rmax-related) 19.528
\(\mu_{\mathrm{KMT}}\) Neutrophil elimination from blood 4.066
\(\mu_{\mathrm{KTT}}\) Myeloid transit rate 17.017
\(\mu_{\mathrm{NB0}}\) Baseline circulating ANC 10.771
\(\mu_{\mathrm{SC1}}\) G-CSF EC50 for stimulation 20.851
\(\mu_{\mathrm{SM1}}\) Max. stimulation of production 8.290
\(\mu_{\mathrm{SM2}}\) Max. stimulation of maturation 7.665

Inter-individual variances (\(\omega^2\))

IIV variance (\(\omega^2\)) RSE (%) for Design 1.
Parameter Description RSE (%)
\(\omega^2_{\mathrm{NB0}}\) Baseline circulating ANC 26.961
\(\omega^2_{\mathrm{KEL}}\) Elimination rate of free G-CSF 32.645
\(\omega^2_{\mathrm{VD}}\) Central volume 31.369
\(\omega^2_{\mathrm{KSI}}\) Binding capacity (Rmax-related) 41.941
\(\omega^2_{\mathrm{SC1}}\) G-CSF EC50 for stimulation 29.157
\(\omega^2_{\mathrm{SM1}}\) Max. stimulation of production 26.407

Residual error (\(\sigma\))

Console and report rows are labelled \(\sigma_{\mathrm{slope/inter}}\) — the Value column is the SD, not the variance.

Residual-error SD and RSE (%) for Design 1.
Parameter Description Value (SD) RSE (%)
\(\sigma_{\mathrm{slope,PK}}\) PK proportional (SD) 0.5030 1.950
\(\sigma_{\mathrm{slope,ANC}}\) ANC proportional (SD) 0.1507 3.271
\(\sigma_{\mathrm{inter,ANC}}\) ANC additive (SD) 1.4491 3.857

Diagnostic plots

Overlay of the three dose groups (PK | ANC): ODE re-simulation on a dense \(0..t_{\max}\) grid. Sampling times are shown as points. SE and RSE bar charts follow.

plotOutcomesEvaluationModel
PFIM::plotSE(evaluationPop)
PFIM::plotRSE(evaluationPop)

References

Krzyzanski, Wojciech, Paweł Wiczling, Peter J. Lowe, Etienne Pigeolet, Markus Fink, Amin Berghout, and Stephan Balser. 2010. “Population Modeling of Filgrastim PK-PD in Healthy Adults Following Intravenous and Subcutaneous Administrations.” Journal of Clinical Pharmacology 50 (9 Suppl): 101S–112S. https://doi.org/10.1177/0091270010376966.