Response Surface Analysis of Propofol-Remifentanil using the Curve-Fitting Toolbox
Contents
The aim of this demo is to characterize the "complete spectrum of interaction" between opiods and hypnotics, using propofol and remifentanil as drug class prototypes [1]. 4 different surrogate drug effects measures for analgesia and hypnosis were used to understand the analgesic and sedative effects combined drug action – these are tibial pressure algometry, electrical tetany, response to laryngoscopy and an alertness/sedation score. The effects were modelled using the following drug interaction model.
References: [1] Kern SE, Xie G, White JL, Egan TD. Opioid-hypnotic synergy. Anesthesiology 2004; 100: 1373–81.
close all, clear all, clc
Import response data
ResponseData.xls contains measures of surrogate drug effects at various concentration combinations of propofol and reminfentanil. Import the data as a dataset object.
data = dataset('xlsfile', 'ResponseData.xls');
Characterize the response surfaces for 4 surrogate effects
Use the drug interaction model published in [1] to characterize the response surface for each of the 4 measured effects - Algometry, Tetany, Sedation and Laryingoscopy.
EffectName = {'Algometry' 'Tetany' 'Sedation' 'Laryingoscopy'};
for i = 1:length(EffectName)
[fitresults(i), gof(i)] = myCreateSurfaceFit(data.Propofol, data.Remifentanil, data.(EffectName{i}), EffectName{i}) ; %#ok<SAGROW>
disp([' Model for ', EffectName{i}, ' is '])
disp(fitresults{i})
disp('... and GOF is ')
disp(gof(i))
end
Model for Algometry is
General model:
ans(x,y) = combinedEffect(x,y, IC50A, IC50B, alpha, n)
Coefficients (with 95% confidence bounds):
IC50A = 4.148 (4.123, 4.173)
IC50B = 9.042 (8.969, 9.116)
alpha = 8.499 (8.313, 8.684)
n = 8.293 (8.136, 8.451)
... and GOF is
sse: 0.0842
rsquare: 0.9991
dfe: 393
adjrsquare: 0.9991
rmse: 0.0146
Model for Tetany is
General model:
ans(x,y) = combinedEffect(x,y, IC50A, IC50B, alpha, n)
Coefficients (with 95% confidence bounds):
IC50A = 4.544 (4.522, 4.567)
IC50B = 21.22 (21.04, 21.4)
alpha = 14.94 (14.67, 15.21)
n = 6.132 (6.055, 6.209)
... and GOF is
sse: 0.0537
rsquare: 0.9993
dfe: 393
adjrsquare: 0.9993
rmse: 0.0117
Model for Sedation is
General model:
ans(x,y) = combinedEffect(x,y, IC50A, IC50B, alpha, n)
Coefficients (with 95% confidence bounds):
IC50A = 1.843 (1.838, 1.847)
IC50B = 13.7 (13.67, 13.74)
alpha = 1.986 (1.957, 2.015)
n = 44.27 (42.56, 45.98)
... and GOF is
sse: 0.0574
rsquare: 0.9994
dfe: 393
adjrsquare: 0.9994
rmse: 0.0121
Model for Laryingoscopy is
General model:
ans(x,y) = combinedEffect(x,y, IC50A, IC50B, alpha, n)
Coefficients (with 95% confidence bounds):
IC50A = 5.192 (5.177, 5.207)
IC50B = 37.77 (37.58, 37.97)
alpha = 19.67 (19.48, 19.86)
n = 37 (35.12, 38.87)
... and GOF is
sse: 0.1555
rsquare: 0.9982
dfe: 393
adjrsquare: 0.9982
rmse: 0.0199
Assessment of model predictions
Evaluate the surface fit at certain characteristic drug-combination to verify that the model prediction are sensible.
valData = dataset('xlsfile', 'ValidationData.xls'); % Evaluate surface at concentration in validation data valData.Algometry = fitresults{1}(valData.Propofol, valData.Remifentanil) ; valData.Tetany = fitresults{2}(valData.Propofol, valData.Remifentanil) ; valData.Sedation = fitresults{3}(valData.Propofol, valData.Remifentanil) ; valData.Laryingoscopy = fitresults{4}(valData.Propofol, valData.Remifentanil) ; valData
valData =
Propofol Remifentanil Algometry Tetany Sedation Laryingoscopy
0 0 0 0 0 0
2 0 0.0023506 0.0064789 0.97402 4.6985e-016
5 0 0.8247 0.64245 1 0.19851
10 0 0.99932 0.99213 1 1
0 1 1.1725e-008 7.3143e-009 4.6611e-051 4.4779e-059
0 2 3.6786e-006 5.1298e-007 9.8995e-038 6.1345e-048
0 4 0.0011528 3.5977e-005 2.1025e-024 8.4039e-037
2 2 0.98106 0.70638 1 0.0015253
5 2 0.99998 0.99795 1 1
10 2 1 0.99997 1 1