monolix4 monolix day2011
TRANSCRIPT
MONOLIX DAY
December 12th, 2011
La Maison de la Recherche, Paris
Schedule
9.15: MONOLIX 4: presentation & demos, Marc Lavielle (Inria, POPIX)
10.15: Lixoft, status & future plans, Jérôme Kalifa (Lixoft)
10.45: Pause
11.00: New challenges for MONOLIX
1. An overview of POPIX and DDMoRe activities, Marc Lavielle (Inria, POPIX)
2. New challenges in oncology, Benjamin Ribba (Inria, NUMED)
12.15: Buffet
13.45: MONOLIX Guidance Committee meeting
16.30: End of the MONOLIX Day
Some new features in MONOLIX 4
New graphics
New MLXTRAN
full project programming
complex PK models
(repeated) time-to-event models
Workflows
Convergence assessment
Batch mode and scripts
Some new features in MONOLIX 4
New graphics
New MLXTRAN
full project programming
complex PK models
(repeated) time-to-event models
Workflows
Convergence assessment
Batch mode and scripts
Some new features in MONOLIX 4
New graphics
New MLXTRAN
complex PK models
full project programming
(repeated) time-to-event models
Workflows
Convergence assessment
Batch mode and scripts
PK model The data
MLXTRAN for PK model
Example 1: oral administration, 1cpt, first order absorption
ID TIME AMT CONC
1 0 100 .
1 0.5 . 0.15
1 2 . 0.71
1 3 . 0.97
1 6 . 1.77
1 12 . 3.64
1 24 . 4.09
1 36 . 3.36
1 48 . 2.83
1 72 . 2.18
1 96 . 1.40
1 120 . 1.32
PK model The data MLXTRANFull ODE
ID TIME AMT CONC
1 0 100 .
1 0.5 . 0.15
1 2 . 0.71
1 3 . 0.97
1 6 . 1.77
1 12 . 3.64
1 24 . 4.09
1 36 . 3.36
1 48 . 2.83
1 72 . 2.18
1 96 . 1.40
1 120 . 1.32
MLXTRAN for PK model
Example 1: oral administration, 1cpt, first order absorption
$INPUTpsi = {ka, V, Cl}
$PKcompartment(amount=Ad)iv(dpt=1, cmt=1)
$EQUATIONddt_Ad = - ka*Ad ddt_Ac = ka*Ad - k*AcCc = Ac/V
$OUTPUT output = Cc
PK model The data MLXTRANFull ODE
MLXTRANBuilt-in functions
$INPUTpsi = {ka, V, Cl}
$PK compartment(amount=Ac)absorption(ka)elimination(k=Cl/V)Cc = Ac/V
$OUTPUT output = Cc
$INPUTpsi = {ka, V, Cl}
$PKcompartment(amount=Ad)iv(dpt=1, cmt=1)
$EQUATIONddt_Ad = - ka*Ad ddt_Ac = ka*Ad - k*AcCc = Ac/V
$OUTPUT output = Cc
ID TIME AMT CONC
1 0 100 .
1 0.5 . 0.15
1 2 . 0.71
1 3 . 0.97
1 6 . 1.77
1 12 . 3.64
1 24 . 4.09
1 36 . 3.36
1 48 . 2.83
1 72 . 2.18
1 96 . 1.40
1 120 . 1.32
MLXTRAN for PK model
Example 1: oral administration, 1cpt, first order absorption
PK model The data
$INPUTpsi = {ka, V, Cl}
$PK Cc = pkmodel(ka, V, Cl)
$OUTPUT output = Cc
ID TIME AMT CONC
1 0 100 .
1 0.5 . 0.15
1 2 . 0.71
1 3 . 0.97
1 6 . 1.77
1 12 . 3.64
1 24 . 4.09
1 36 . 3.36
1 48 . 2.83
1 72 . 2.18
1 96 . 1.40
1 120 . 1.32
MLXTRANFull ODE
MLXTRANBuilt-in functions
MLXTRAN for PK model
Example 1: oral administration, 1cpt, first order absorption
$INPUTpsi = {ka, V, Cl}
$PKcompartment(amount=Ad)iv(dpt=1, cmt=1)
$EQUATIONddt_Ad = - ka*Ad ddt_Ac = ka*Ad - k*AcCc = Ac/V
$OUTPUT output = Cc
PK model The data MLXTRANBuilt-in functions
$INPUT
psi = {Fr, Tk0, ka, V, Cl}
$PK
compartment(amount=Ac)
absorption(Tk0, p=Fr)
absorption(ka, Tlag=Tk0, p=1-Fr)
elimination(k=Cl/V)
Cc = Ac/V
$OUTPUT
output = Cc
MLXTRAN for PK model
Example 2: oral 1cpt, sequential zero order – first order absorptions
ID TIME AMT CONC
1 0 100 .
1 0.5 . 0.15
1 2 . 0.71
1 3 . 0.97
1 6 . 1.77
1 12 . 3.64
1 24 . 4.09
1 36 . 3.36
1 48 . 2.83
1 72 . 2.18
1 96 . 1.40
1 120 . 1.32
PK model MLXTRANBuilt-in functions
$INPUT
psi = {k12, k21, V, Vm, Km}
$PK
compartment(cmt=1, amount=Ac)
iv(dpt=1, cmt=1)
peripheral(k12, k21)
elimination(cmt=1, Vm, Km)
Cc = Ac/V
$OUTPUT
output = Cc
MLXTRAN for PK model
Example 3: IV bolus 2cpt, Michaelis Menten elimination
PK model MLXTRANBuilt-in functions
$INPUT
psi = {k12, k21, V, Vm, Km}
$PK
compartment(cmt=1, amount=Ac)
iv(dpt=1, cmt=1)
peripheral(k12, k21)
elimination(cmt=1, Vm, Km)
Cc = Ac/V
$OUTPUT
output = Cc
MLXTRAN for PK model
Example 3: IV bolus 2cpt, Michaelis Menten elimination
MLXTRANMixed ODE/Built-in functions
$INPUT
psi = {k12, k21, V, Vm, Km}
$PK
compartment(cmt=1, amount=Ac)
iv(dpt=1, cmt=1)
peripheral(k12, k21)
$EQUATIONddt_Ac = -Vm*Ac/(V*Km + Ac)Cc = Ac/V
$OUTPUT
output = Cc
PK model MLXTRANBuilt-in functions
$INPUT
psi = {k12, k21, V, Vm, Km}
$PK Cc = pkmodel(k12 , k21, V, Vm, Km)
$OUTPUT
output = Cc
MLXTRAN for PK model
Example 3: IV bolus 2cpt, Michaelis Menten elimination
MLXTRANMixed ODE/Built-in functions
$INPUT
psi = {k12, k21, V, Vm, Km}
$PK
compartment(cmt=1, amount=Ac)
iv(dpt=1, cmt=1)
peripheral(k12, k21)
$EQUATIONddt_Ac = -Vm*Ac/(V*Km + Ac)Cc = Ac/V
$OUTPUT
output = Cc
PK model
MLXTRAN for PK model
Example 4: multiple administrations & multiple compartments
PK model
ID TIME AMT CONC DPT
1 0 2 . 3
1 0.5 0 229 .
1 1 0 142 .
1 4 0 17.5 .
1 6 7 . 1
1 6.5 0 8.1 .
1 7 0 192 .
1 9 0 189 .
1 12 7 . 2
1 13 0 50 .
1 15 0 201 .
MLXTRAN for PK model
Example 4: multiple administrations & multiple compartments
PK model MCLBuilt-in functions
$INPUT
psi = {Tk01, F1, Tk02, F2, kl, k, V, Vm, Km}
$PK
compartment(cmt=1, amount=Al)
compartment(cmt=2, amount=Ac)
absorption(dpt=1 , cmt=1 , Tk0=Tk01 , p=F1)
absorption(dpt=2 , cmt=2 , Tk0=Tk02 , p=F2)
absorption(dpt=3 , cmt=2 )
elimination(cmt=1, k)
elimination(cmt=2, Vm, Km)
transfer(from=1, to=2, kt=kl)
Cc=Ac/V
$OUTPUT
output = Cc
ID TIME AMT CONC DPT
1 0 2 . 3
1 0.5 0 229 .
1 1 0 142 .
1 4 0 17.5 .
1 6 7 . 1
1 6.5 0 8.1 .
1 7 0 192 .
1 9 0 189 .
1 12 7 . 2
1 13 0 50 .
1 15 0 201 .
MLXTRAN for PK model
Example 4: multiple administrations & multiple compartments
Some new features in MONOLIX 4
New graphics
New MLXTRAN
complex PK models
full project programming
(repeated) time-to-event models
Workflows
Convergence assessment
Batch mode and scripts
$DATApath="%MLXPROJECT%/",file="warfarin_data.txt",headers={ID, TIME, DOSE, Y, YTYPE, COV, SEX},
$VARIABLEwt, lwt = log(wt/70) [use=cov]sex [use=cov, type=cat]
$INDIVIDUALdefault={distribution=logNormal, iiv=yes},Tlag, ka, V={covariate=lwt}, Cl, Imax={distribution=logitNormal, iiv=no}, C50, Rin, kout
$STRUCTURAL_MODELfile="mlxt:turnover2_mlxt",path="%MLXPROJECT%/libraryMLXTRAN",output={Cc, E}
$OBSERVATIONSConcentration = {type=continuous, prediction=Cc, error=comb1},Effect = {type=continuous, prediction=E, error=constant}
Full MLXTRAN for PK/PD model
Model Coding Language
$DATApath="%MLXPROJECT%/",file="warfarin_data.txt",headers={ID, TIME, DOSE, Y, YTYPE, COV, SEX},
$VARIABLEwt, lwt = log(wt/70) [use=cov]sex [use=cov, type=cat]
$INDIVIDUALdefault={distribution=logNormal, iiv=yes},Tlag, ka, V={covariate=lwt}, Cl, Imax={distribution=logitNormal, iiv=no}, C50, Rin, kout
$STRUCTURAL_MODELfile="mlxt:turnover2_mlxt",path="%MLXPROJECT%/libraryMLXTRAN",output={Cc, E}
$OBSERVATIONSConcentration = {type=continuous, prediction=Cc, error=comb1},Effect = {type=continuous, prediction=E, error=constant}
Full MLXTRAN for PK/PD model
Model Coding Language Task Execution Language
$TASKSglobalSettings={
settingsAlgorithms="%MLXPROJECT%/pkpd_algo.xmlx" ,settingsGraphics="%MLXPROJECT%/pkpd_graphics.xmlx",resultFolder="%MLXPROJECT%/pkpd_project" },
estimatePopulationParameters(initialValues={
POP_V = 10,POP_Cl = 0.1,POP_Imax = 0.5 }),
estimateFisherInformationMatrix( method={ linearization} ),
estimateIndividualParameters(method={ conditionalMean, conditionalMode} ),
estimateLogLikelihood( method={linearization, importanceSampling} )
Some new features in MONOLIX 4
New graphics
New MLXTRAN
complex PK models
full project programming
(repeated) time-to-event models
Workflows
Convergence assessment
Batch mode and scripts
$INPUT
psi = Hbase
$OBSERVATION
adverseEvent = {type=event, hazard=Hbase/365)
$OUTPUT
output = adverseEvent
MLXTRAN for Time-To-Event model
Example 1
constant hazard model
$INPUT
psi = Hbase
$OBSERVATION
adverseEvent = {type=event, hazard=Hbase/365)
$OUTPUT
output = adverseEvent
MLXTRAN for Time-To-Event model
Example 1
constant hazard model
$INPUT
psi = {ka, V, Cl, gamma}
$PKCc = pkmodel(ka, V, Cl)
$OBSERVATION
Hemorrhaging= {type=event, hazard=gamma*Cc)
$OUTPUT
output = {Cc, Hemorrhaging}
Example 2
Joint PK-RTTE model
$DATApath="%MLXPROJECT%/",file="pkrtte_data.txt",headers={ID,TIME,DOSE,Y,YTYPE,CENS},
$INDIVIDUALdefault={ distribution = logNormal, iiv = yes },ka, V, Cl, gamma
$STRUCTURAL_MODELfile="mlxt:pkrtte_mlxt",path="%MLXPROJECT%/libraryMLXTRAN",output={Cc, Hemorrhaging }
$OBSERVATIONSConcentration = { type=continuous, prediction=Cc, error=comb1},Hemorrhaging = { type=event}
Full MLXTRAN for joint PK-RTTE model
Model Coding Language
$DATApath="%MLXPROJECT%/",file="pkrtte_data.txt",headers={ID,TIME,DOSE,Y,YTYPE,CENS},
$INDIVIDUALdefault={ distribution = logNormal, iiv = yes },ka, V, Cl, gamma
$STRUCTURAL_MODELfile="mlxt:pkrtte_mlxt",path="%MLXPROJECT%/libraryMLXTRAN",output={Cc, Hemorrhaging }
$OBSERVATIONSConcentration = { type=continuous, prediction=Cc, error=comb1},Hemorrhaging = { type=event}
Full MLXTRAN for joint PK-RTTE model
Model Coding Language Task Execution Language
$TASKSglobalSettings={
settingsAlgorithms="%MLXPROJECT%/pkrtte_algo.xmlx" ,settingsGraphics="%MLXPROJECT%/pkrtte_graphics.xmlx",resultFolder="%MLXPROJECT%/pkrtte_project" },
estimatePopulationParameters(initialValues={
POP_ka = 1, POP_V = 10,POP_Cl = 0.1,POP_gamma = 0.005 }),
estimateFisherInformationMatrix( method={ stochasticApproximation} ),
estimateIndividualParameters(method={ conditionalMode } ),
Some new features in MONOLIX 4
New graphics
New MLXTRAN
full project programming
complex PK models
(repeated) time-to-event models
Workflows
Convergence assessment
Batch mode and scripts
Some new features in MONOLIX 4
New graphics
New MLXTRAN
full project programming
complex PK models
(repeated) time-to-event models
Workflows
Convergence assessment
Batch mode and scripts
Some new features in MONOLIX 4
New graphics
New MLXTRAN
full project programming
complex PK models
(repeated) time-to-event models
Workflows
Convergence assessment
Batch mode and scripts
Monolix Batch Modes
Running a single Monolix project through a shell with a simple command line
Under linux
monolix.sh –nowin –p myproject.mlxtran –f run
Under windows
monolix.bat –nowin –p myproject.mlxtran –f run
matlab –wait –nosplash –nodesktop –r “monolix(„-nowin‟,‟-p‟,‟myproject.mlxtran‟,‟-f‟,‟run‟,‟-destroy‟),exit”
Using the Matlab Version of Monolix
Using the Standalone version of Monolix
Monolix Batch Modes
Use PSMLX as a command line helper
Help user to run Monolix on numerous projects stored into a directory
; myconfig.ini
[path]
; matlab path
matlab=/opt/matlab
; monolix path
monolix=/opt/Monolix-4.1.0-matlab2009a-linux64/matlab/
[monolix]
; monolix version (here we do not use standalone)
standalone=false
[program-generic-options]
; number of instances of monolix run in same time
thread=4
perl toolsRunner.pl –tool=execute –config=myconfig.ini –input-directories=/home/gandalf/myprojects_dir/