主要内容gydF4y2Ba

sbiofitgydF4y2Ba

进行非线性最小二乘回归gydF4y2Ba

统计和机器学习工具箱™,优化工具箱™,gydF4y2Ba全局优化工具箱gydF4y2Ba建议对这个函数。gydF4y2Ba

描述gydF4y2Ba

例子gydF4y2Ba

fitResultsgydF4y2Ba= sbiofit (gydF4y2BasmgydF4y2Ba,gydF4y2BagrpDatagydF4y2Ba,gydF4y2BaResponseMapgydF4y2Ba,gydF4y2BaestiminfogydF4y2Ba)gydF4y2BaSimBiology模型的参数估计gydF4y2BasmgydF4y2Ba利用非线性最小二乘回归。gydF4y2Ba

grpDatagydF4y2Ba是一个gydF4y2BagroupedData对象gydF4y2Ba指定适合的数据。gydF4y2BaResponseMapgydF4y2Ba定义之间的映射模型组件和响应数据gydF4y2BagrpDatagydF4y2Ba。gydF4y2BaestimatedInfogydF4y2Ba是一个gydF4y2BaEstimatedInfo对象gydF4y2Ba,定义了模型中参数估计gydF4y2BasmgydF4y2Ba。gydF4y2BafitResultsgydF4y2Ba是一个gydF4y2BaOptimResults对象gydF4y2Ba或gydF4y2BaNLINResults对象gydF4y2Ba这些对象或一个向量。gydF4y2Ba

sbiofitgydF4y2Ba使用第一个可用的估计函数如下:gydF4y2BalsqnonlingydF4y2Ba(优化工具箱)gydF4y2Ba,gydF4y2BanlinfitgydF4y2Ba(统计和机器学习的工具箱)gydF4y2Ba,或gydF4y2BafminsearchgydF4y2Ba。gydF4y2Ba

默认情况下,每个组gydF4y2BagrpDatagydF4y2Ba分别适用,导致与参数估计。如果模型包含有效剂量和变体,它们被应用在模拟。gydF4y2Ba

例子gydF4y2Ba

fitResultsgydF4y2Ba= sbiofit (gydF4y2BasmgydF4y2Ba,gydF4y2BagrpDatagydF4y2Ba,gydF4y2BaResponseMapgydF4y2Ba,gydF4y2BaestiminfogydF4y2Ba,gydF4y2Ba剂量gydF4y2Ba)gydF4y2Ba使用指定的计量信息SimBiology剂量对象的一个矩阵gydF4y2Ba剂量gydF4y2Ba而不是使用模型的有效剂量gydF4y2BasmgydF4y2Ba如果有任何。gydF4y2Ba

例子gydF4y2Ba

fitResultsgydF4y2Ba= sbiofit (gydF4y2BasmgydF4y2Ba,gydF4y2BagrpDatagydF4y2Ba,gydF4y2BaResponseMapgydF4y2Ba,gydF4y2BaestiminfogydF4y2Ba,gydF4y2Ba剂量gydF4y2Ba,gydF4y2BafunctionNamegydF4y2Ba)gydF4y2Ba使用指定的评估函数gydF4y2BafunctionNamegydF4y2Ba。如果指定的功能不可用,发出一个警告和第一个可用的默认功能。gydF4y2Ba

例子gydF4y2Ba

fitResultsgydF4y2Ba= sbiofit (gydF4y2BasmgydF4y2Ba,gydF4y2BagrpDatagydF4y2Ba,gydF4y2BaResponseMapgydF4y2Ba,gydF4y2BaestiminfogydF4y2Ba,gydF4y2Ba剂量gydF4y2Ba,gydF4y2BafunctionNamegydF4y2Ba,gydF4y2Ba选项gydF4y2Ba)gydF4y2Ba使用指定的附加选项gydF4y2Ba选项gydF4y2Ba函数的gydF4y2BafunctionNamegydF4y2Ba。gydF4y2Ba

例子gydF4y2Ba

fitResultsgydF4y2Ba= sbiofit (gydF4y2BasmgydF4y2Ba,gydF4y2BagrpDatagydF4y2Ba,gydF4y2BaResponseMapgydF4y2Ba,gydF4y2BaestiminfogydF4y2Ba,gydF4y2Ba剂量gydF4y2Ba,gydF4y2BafunctionNamegydF4y2Ba,gydF4y2Ba选项gydF4y2Ba,gydF4y2Ba变体gydF4y2Ba)gydF4y2Ba适用于变量指定为对象gydF4y2Ba变体gydF4y2Ba而不是使用任何活动模型的变体。gydF4y2Ba

例子gydF4y2Ba

fitResultsgydF4y2Ba= sbiofit (_gydF4y2Ba名称,值gydF4y2Ba)gydF4y2Ba使用指定的一个或多个额外的选项gydF4y2Ba名称,值gydF4y2Ba对参数。gydF4y2Ba

例子gydF4y2Ba

(gydF4y2BafitResultsgydF4y2Ba,gydF4y2BasimdatagydF4y2Ba]= sbiofit (_)gydF4y2Ba还返回一个SimData对象的向量gydF4y2BasimdatagydF4y2Ba使用任何输入参数在前面的语法。gydF4y2Ba

请注意gydF4y2Ba

例子gydF4y2Ba

全部折叠gydF4y2Ba

背景gydF4y2Ba

这个例子展示了如何适应一个人的PK单舱模型配置文件数据和估算药动学参数。gydF4y2Ba

假设你有药物血浆浓度数据从一个人,想估计中央室和间隙的体积。假定药物浓度和时间剖面遵循monoexponential下降gydF4y2Ba CgydF4y2Ba tgydF4y2Ba =gydF4y2Ba CgydF4y2Ba 0gydF4y2Ba egydF4y2Ba - - - - - -gydF4y2Ba kgydF4y2Ba egydF4y2Ba tgydF4y2Ba ,在那里gydF4y2Ba CgydF4y2Ba tgydF4y2Ba 药物浓度在时间t,gydF4y2Ba CgydF4y2Ba 0gydF4y2Ba 是初始浓度,gydF4y2Ba kgydF4y2Ba egydF4y2Ba 是取决于间隙的消除速率常数和中央室的体积吗gydF4y2Ba kgydF4y2Ba egydF4y2Ba =gydF4y2Ba CgydF4y2Ba lgydF4y2Ba /gydF4y2Ba VgydF4y2Ba 。gydF4y2Ba

合成数据在这个示例使用以下模型,生成参数,和剂量:gydF4y2Ba

  • 单舱模型丸剂量和一阶消除gydF4y2Ba

  • 中央室的体积(gydF4y2Ba中央gydF4y2Ba)= 1.70升gydF4y2Ba

  • 间隙参数(gydF4y2BaCl_CentralgydF4y2Ba)= 0.55升/小时gydF4y2Ba

  • 常数误差模型gydF4y2Ba

  • 丸10毫克的剂量gydF4y2Ba

加载数据和可视化gydF4y2Ba

数据存储的表变量gydF4y2Ba时间gydF4y2Ba和gydF4y2Ba浓缩的gydF4y2Ba代表个人的血浆浓度的时间进程后静脉丸政府以13个不同的时间点。变量的单位gydF4y2Ba时间gydF4y2Ba和gydF4y2Ba浓缩的gydF4y2Ba分别小时毫克/升。gydF4y2Ba

负载(gydF4y2Ba“data15.mat”gydF4y2Ba)情节(data.Time data.Conc,gydF4y2Ba“b +”gydF4y2Ba)包含(gydF4y2Ba的时间(小时)gydF4y2Ba);ylabel (gydF4y2Ba的药物浓度(毫克/升)gydF4y2Ba);gydF4y2Ba

图包含一个坐标轴对象。坐标轴对象包含时间(小时),ylabel药物浓度(毫克/升)包含一行对象显示其值只使用标记。gydF4y2Ba

groupedData格式转换gydF4y2Ba

将数据集转换成gydF4y2BagroupedDatagydF4y2Ba对象,它是拟合函数所需的数据格式gydF4y2BasbiofitgydF4y2Ba以备后用。一个gydF4y2BagroupedDatagydF4y2Ba对象还允许您设置独立变量和组织变量名(如果存在的话)。设置的单位gydF4y2Ba时间gydF4y2Ba和gydF4y2Ba浓缩的gydF4y2Ba变量。单位是可选的,只有所需的gydF4y2BaUnitConversiongydF4y2Ba功能,该功能会自动匹配的物理量转换为一个一致的单位系统。gydF4y2Ba

gData = groupedData(数据);gData.Properties。VariableUnits = {gydF4y2Ba“小时”gydF4y2Ba,gydF4y2Ba毫克/升的gydF4y2Ba};gData.PropertiesgydF4y2Ba
ans =gydF4y2Ba结构体字段:gydF4y2Ba描述:“用户数据:[]DimensionNames:{“行”“变量”}VariableNames:{“时间”“浓缩的”}VariableDescriptions: {} VariableUnits:{“小时”“毫克/升”}VariableContinuity: [] RowNames: {} CustomProperties: [1 x1 matlab.tabular。CustomProperties] GroupVariableName:“IndependentVariableName:‘时间’gydF4y2Ba

groupedDatagydF4y2Ba自动设置的名称gydF4y2BaIndependentVariableNamegydF4y2Ba财产gydF4y2Ba时间gydF4y2Ba变量的数据。gydF4y2Ba

构造一个单舱模型gydF4y2Ba

使用内置的PK图书馆构建单舱模型丸加药和一阶消除消除速率取决于间隙和中央室的体积。使用gydF4y2BaconfigsetgydF4y2Ba对象单位转换。gydF4y2Ba

pkmd = PKModelDesign;pkc1 = addCompartment (pkmd,gydF4y2Ba“中央”gydF4y2Ba);pkc1。DosingType =gydF4y2Ba“丸”gydF4y2Ba;pkc1。EliminationType =gydF4y2Ba“linear-clearance”gydF4y2Ba;pkc1。HasResponseVariable = true;模型=构造(pkmd);configset = getconfigset(模型);configset.CompileOptions。UnitConversion = true;gydF4y2Ba

有关创建区划的PK模型使用SimBiology®内置库,明白了gydF4y2Ba创建药代动力学模型gydF4y2Ba。gydF4y2Ba

定义剂量gydF4y2Ba

定义一个丸的10毫克剂量在时间= 0。在设置不同的剂量计划的详细信息,请参见gydF4y2Ba剂量SimBiology模型gydF4y2Ba。gydF4y2Ba

剂量= sbiodose (gydF4y2Ba“剂量”gydF4y2Ba);剂量。TargetName =gydF4y2Ba“Drug_Central”gydF4y2Ba;剂量。开始时间= 0;剂量。一个米ount = 10; dose.AmountUnits =毫克的gydF4y2Ba;剂量。时间Units =“小时”gydF4y2Ba;gydF4y2Ba

响应数据映射到相应的模型组件gydF4y2Ba

中存储的数据包含药物浓度数据gydF4y2Ba浓缩的gydF4y2Ba变量。这些数据对应gydF4y2BaDrug_CentralgydF4y2Ba在模型中物种。因此,地图数据gydF4y2BaDrug_CentralgydF4y2Ba如下。gydF4y2Ba

responseMap = {gydF4y2Ba“Drug_Central =浓缩的”gydF4y2Ba};gydF4y2Ba

指定的参数估计gydF4y2Ba

这个模型的参数以适应中央室的体积(中央)和清除率(Cl_Central)。在这种情况下,为这些生物参数指定对数变换,因为他们限制是积极的。的gydF4y2BaestimatedInfogydF4y2Ba对象允许您指定参数变换,初始值和参数范围。gydF4y2Ba

paramsToEstimate = {gydF4y2Ba“日志(中央)”gydF4y2Ba,gydF4y2Ba“日志(Cl_Central)”gydF4y2Ba};estimatedParams = estimatedInfo (paramsToEstimate,gydF4y2Ba“InitialValue”gydF4y2Ba[1],gydF4y2Ba“界限”gydF4y2Ba,1 5;0.5 - 2);gydF4y2Ba

估计参数gydF4y2Ba

现在您已经定义了单舱模型,数据适合映射响应数据,参数估计,和剂量,使用gydF4y2BasbiofitgydF4y2Ba来估计参数。默认的估计函数gydF4y2BasbiofitgydF4y2Ba使用会改变取决于可用的工具箱。中使用函数拟合,检查gydF4y2BaEstimationFunctiongydF4y2Ba对应的结果对象的属性。gydF4y2Ba

fitConst = sbiofit(模型、gData responseMap estimatedParams,剂量);gydF4y2Ba

显示估计参数和阴谋的结果gydF4y2Ba

注意的参数估计不远了真值(1.70和0.55),用于生成数据。你也可以尝试不同的误差模型,看看他们是否可以进一步提高参数估计。gydF4y2Ba

fitConst.ParameterEstimatesgydF4y2Ba
ans =gydF4y2Ba2×4表gydF4y2Ba名字估计StandardError ________ _________________ __________范围* * *{“中央”}1.6993 0.034821 1 5 {‘Cl_Central} 0.53358 0.01968 0.5 - 2gydF4y2Ba
s.Labels。包含=gydF4y2Ba的时间(小时)gydF4y2Ba;s.Labels。YLabel =gydF4y2Ba的浓度(毫克/升)gydF4y2Ba;情节(fitConstgydF4y2Ba“AxesStyle”gydF4y2Ba,年代);gydF4y2Ba

图包含一个坐标轴对象。坐标轴对象包含2线类型的对象。一个或多个行显示的值只使用标记gydF4y2Ba

使用不同的误差模型gydF4y2Ba

尝试其他三个支持误差模型(比例、金宝app结合常数和比例误差模型和指数)。gydF4y2Ba

fitProp = sbiofit(模型、gData responseMap estimatedParams,剂量,gydF4y2Ba…gydF4y2Ba“ErrorModel”gydF4y2Ba,gydF4y2Ba“比例”gydF4y2Ba);fitExp = sbiofit(模型、gData responseMap estimatedParams,剂量,gydF4y2Ba…gydF4y2Ba“ErrorModel”gydF4y2Ba,gydF4y2Ba“指数”gydF4y2Ba);fitComb = sbiofit(模型、gData responseMap estimatedParams,剂量,gydF4y2Ba…gydF4y2Ba“ErrorModel”gydF4y2Ba,gydF4y2Ba“组合”gydF4y2Ba);gydF4y2Ba

用权重代替一个误差模型gydF4y2Ba

您可以指定权重作为一个数字矩阵,列数对应的响应。设置所有重量1等于常数误差模型。gydF4y2Ba

weightsNumeric = 1(大小(gData.Conc));fitWeightsNumeric = sbiofit(模型、gData responseMap estimatedParams,剂量,gydF4y2Ba“重量”gydF4y2Ba,weightsNumeric);gydF4y2Ba

或者,您可以使用一个函数处理,接受一个向量的预测响应值,并返回一个向量的权重。在这个例子中,使用一个函数处理,相当于比例误差模型。gydF4y2Ba

weightsFunction = @ (y) 1. / y ^ 2;fitWeightsFunction = sbiofit(模型、gData responseMap estimatedParams,剂量,gydF4y2Ba“重量”gydF4y2Ba,weightsFunction);gydF4y2Ba

比较信息模型选择标准gydF4y2Ba

比较loglikelihood、AIC和BIC值的每个模型最好看看哪些误差模型与数据的吻合程度。更大的可能性值表示相应的模型符合模型更好。AIC和BIC较小值更好。gydF4y2Ba

allResults = [fitConst fitWeightsNumeric、fitWeightsFunction fitProp, fitExp, fitComb);errorModelNames = {gydF4y2Ba“常数误差模型”gydF4y2Ba,gydF4y2Ba相同重量的gydF4y2Ba,gydF4y2Ba的权重比例gydF4y2Ba,gydF4y2Ba…gydF4y2Ba的比例误差模型gydF4y2Ba,gydF4y2Ba“指数误差模型”gydF4y2Ba,gydF4y2Ba…gydF4y2Ba“综合误差模型”gydF4y2Ba};LogLikelihood = [allResults.LogLikelihood] ';AIC = [allResults.AIC] ';BIC = [allResults.BIC] ';t =表(LogLikelihood、AIC, BIC);t.Properties。RowNames=errorModelNames; t
t =gydF4y2Ba6×3表gydF4y2BaLogLikelihood AIC BIC _________________ ____ ____常数误差模型3.9866 -3.9732 -2.8433 3.9866 -3.9732 -2.8433相等的权重比例重量-3.8472 11.694 12.824比例误差模型结合指数误差模型-3.8257 11.651 12.781 1.1984 1.6032 2.7331 3.9163 -3.8326 -2.7027误差模型gydF4y2Ba

基于信息标准,常数误差模型(或相等的权重)最适合的数据,因为它拥有最大的loglikelihood值和最小的AIC和BIC。gydF4y2Ba

显示估计的参数值gydF4y2Ba

显示每个模型的估计参数值。gydF4y2Ba

Estimated_Central = 0 (6,1);Estimated_Cl_Central = 0 (6,1);t2 =表(Estimated_Central Estimated_Cl_Central);t2.Properties。RowNames=errorModelNames;为gydF4y2Bai = 1:高度(t2) t2{我1}= allResults (i) .ParameterEstimates.Estimate (1);t2{我2}= allResults (i) .ParameterEstimates.Estimate (2);gydF4y2Ba结束gydF4y2Bat2gydF4y2Ba
t2 =gydF4y2Ba6×2表gydF4y2BaEstimated_Central Estimated_Cl_Central _________________ ____________________常数误差模型1.6993 - 0.53358 =重量1.6993 - 0.53358比例权重指数1.9045 - 0.51734 1.8777 - 0.51147比例误差模型误差模型1.7008 - 0.53271 1.7872 - 0.51701综合误差模型gydF4y2Ba

结论gydF4y2Ba

这个例子展示了如何估计PK参数,即中央室的体积和间隙参数的一个个体,通过拟合PK单舱模式配置文件数据。你每个模型的信息标准相比,估计的参数值不同的误差模型,看看哪种模式最解释数据。最终拟合结果显示两个常数和结合误差模型提供了最近的估计参数值用于生成数据。然而,常数误差模型是一个更好的模型表示loglikelihood, AIC和BIC信息标准。gydF4y2Ba

假设你有药物血浆浓度三个个人,您想要使用的数据估计相应的药代动力学参数,即中央和周边室的体积(gydF4y2Ba中央gydF4y2Ba,gydF4y2Ba外围gydF4y2Ba),清除率(gydF4y2BaCl_CentralgydF4y2Ba)和intercompartmental间隙(gydF4y2Ba12个gydF4y2Ba)。假定药物浓度和时间剖面遵循biexponential下降gydF4y2Ba CgydF4y2Ba tgydF4y2Ba =gydF4y2Ba 一个gydF4y2Ba egydF4y2Ba −gydF4y2Ba 一个gydF4y2Ba tgydF4y2Ba +gydF4y2Ba BgydF4y2Ba egydF4y2Ba −gydF4y2Ba bgydF4y2Ba tgydF4y2Ba ,在那里gydF4y2BaCgydF4y2BatgydF4y2Ba药物浓度在时间吗gydF4y2BatgydF4y2Ba,gydF4y2Ba一个gydF4y2Ba和gydF4y2BabgydF4y2Ba山坡上的相应指数下降。gydF4y2Ba

合成数据集包含药物血浆浓度数据以中央和周边隔间。生成的数据是使用两舱制模型与注入剂量和一阶消除。这些参数为每个单独的使用。gydF4y2Ba

中央gydF4y2Ba 外围gydF4y2Ba 12个gydF4y2Ba Cl_CentralgydF4y2Ba
个人1gydF4y2Ba 1.90gydF4y2Ba 0.68gydF4y2Ba 0.24gydF4y2Ba 0.57gydF4y2Ba
2个人gydF4y2Ba 2.10gydF4y2Ba 6.05gydF4y2Ba 0.36gydF4y2Ba 0.95gydF4y2Ba
个人3gydF4y2Ba 1.70gydF4y2Ba 4.21gydF4y2Ba 0.46gydF4y2Ba 0.95gydF4y2Ba

数据存储的表变量gydF4y2BaIDgydF4y2Ba,gydF4y2Ba时间gydF4y2Ba,gydF4y2BaCentralConcgydF4y2Ba,gydF4y2BaPeripheralConcgydF4y2Ba。它代表了时间的等离子体浓度测量在八个不同的时间点为中心和外围隔间后注入剂量。gydF4y2Ba

负载(gydF4y2Ba“data10_32R.mat”gydF4y2Ba)gydF4y2Ba

将数据集转换成gydF4y2BagroupedDatagydF4y2Ba对象所需的数据格式的拟合函数gydF4y2BasbiofitgydF4y2Ba以备后用。一个gydF4y2BagroupedDatagydF4y2Ba对象还允许您设置独立变量和组织变量名(如果存在的话)。设置的单位gydF4y2BaIDgydF4y2Ba,gydF4y2Ba时间gydF4y2Ba,gydF4y2BaCentralConcgydF4y2Ba,gydF4y2BaPeripheralConcgydF4y2Ba变量。单位是可选的,只有所需的gydF4y2BaUnitConversiongydF4y2Ba功能,该功能会自动匹配的物理量转换为一个一致的单位系统。gydF4y2Ba

gData = groupedData(数据);gData.Properties。VariableUnits = {gydF4y2Ba”gydF4y2Ba,gydF4y2Ba“小时”gydF4y2Ba,gydF4y2Ba毫克/升的gydF4y2Ba,gydF4y2Ba毫克/升的gydF4y2Ba};gData.PropertiesgydF4y2Ba
ans =结构体字段:描述:“用户数据:[]DimensionNames:{“行”“变量”}VariableNames: {“ID”“时间”“CentralConc”“PeripheralConc”} VariableDescriptions: {} VariableUnits: {1 x4细胞}VariableContinuity: [] RowNames: {} CustomProperties: [1 x1 matlab.tabular。CustomProperties] GroupVariableName:“ID”IndependentVariableName:“时间”gydF4y2Ba

创建一个格子图,显示了三个人的PK的概要文件。gydF4y2Ba

sbiotrellis (gDatagydF4y2Ba“ID”gydF4y2Ba,gydF4y2Ba“时间”gydF4y2Ba,{gydF4y2Ba“CentralConc”gydF4y2Ba,gydF4y2Ba“PeripheralConc”gydF4y2Ba},gydF4y2Ba…gydF4y2Ba“标记”gydF4y2Ba,gydF4y2Ba“+”gydF4y2Ba,gydF4y2Ba“线型”gydF4y2Ba,gydF4y2Ba“没有”gydF4y2Ba);gydF4y2Ba

使用内置的PK库来构建一个两舱制模型与注入剂量和一阶消除消除速率取决于间隙和中央室的体积。使用configset对象单位转换。gydF4y2Ba

pkmd = PKModelDesign;pkc1 = addCompartment (pkmd,gydF4y2Ba“中央”gydF4y2Ba);pkc1。DosingType =gydF4y2Ba“注入”gydF4y2Ba;pkc1。EliminationType =gydF4y2Ba“linear-clearance”gydF4y2Ba;pkc1。HasResponseVariable = true;pkc2 = addCompartment (pkmd,gydF4y2Ba“外围”gydF4y2Ba);模型=构造(pkmd);configset = getconfigset(模型);configset.CompileOptions。UnitConversion = true;gydF4y2Ba

假设每个人收到注入剂量= 0时,注入总额为100毫克的速度50毫克/小时。设置不同的给药策略的细节,请参阅gydF4y2Ba剂量SimBiology模型gydF4y2Ba。gydF4y2Ba

剂量= sbiodose (gydF4y2Ba“剂量”gydF4y2Ba,gydF4y2Ba“TargetName”gydF4y2Ba,gydF4y2Ba“Drug_Central”gydF4y2Ba);剂量。开始时间= 0;剂量。一个米ount = 100; dose.Rate = 50; dose.AmountUnits =毫克的gydF4y2Ba;剂量。时间Units =“小时”gydF4y2Ba;剂量。RateUnits =gydF4y2Ba“毫克/小时”gydF4y2Ba;gydF4y2Ba

数据包含测量等离子体浓度在中央和周边隔间。物种,这些变量映射到适当的模型gydF4y2BaDrug_CentralgydF4y2Ba和gydF4y2BaDrug_PeripheralgydF4y2Ba。gydF4y2Ba

responseMap = {gydF4y2Ba“Drug_Central = CentralConc”gydF4y2Ba,gydF4y2Ba“Drug_Peripheral = PeripheralConc”gydF4y2Ba};gydF4y2Ba

该模型的参数估计是中央和周边隔间的卷(gydF4y2Ba中央gydF4y2Ba和gydF4y2Ba外围gydF4y2Ba),intercompartmental间隙gydF4y2Ba12个gydF4y2Ba,清除率gydF4y2BaCl_CentralgydF4y2Ba。在这种情况下,指定log-transformgydF4y2Ba中央gydF4y2Ba和gydF4y2Ba外围gydF4y2Ba因为它们是约束是积极的。的gydF4y2BaestimatedInfogydF4y2Ba对象允许您指定参数变换,初始值和参数范围(可选)。gydF4y2Ba

paramsToEstimate = {gydF4y2Ba“日志(中央)”gydF4y2Ba,gydF4y2Ba的日志(外围)gydF4y2Ba,gydF4y2Ba“12”gydF4y2Ba,gydF4y2Ba“Cl_Central”gydF4y2Ba};estimatedParam = estimatedInfo (paramsToEstimate,gydF4y2Ba“InitialValue”gydF4y2Ba[1 1 1 1]);gydF4y2Ba

符合模型的所有数据汇集在一起,也就是说,估计参数的一组人。默认的估计方法gydF4y2BasbiofitgydF4y2Ba使用会改变取决于可用的工具箱。看到这估计函数gydF4y2BasbiofitgydF4y2Ba用于拟合,检查gydF4y2BaEstimationFunctiongydF4y2Ba对应的结果对象的属性。gydF4y2Ba

pooledFit = sbiofit(模型、gData responseMap estimatedParam,剂量,gydF4y2Ba“池”gydF4y2Ba,真正的)gydF4y2Ba
pooledFit = OptimResults属性:ExitFlag: 3输出:[1 x1 struct] GroupName:[]β:[4 x3表]ParameterEstimates: [4 x3表]:[24 x4x2双]COVB: [4 x4双]CovarianceMatrix: [4 x4双]R: [24 x2双]MSE: 6.6220上交所:291.3688重量:[]LogLikelihood: -111.3904 AIC: 230.7808 BIC: 238.2656教育部:44 DependentFiles: {1} x3细胞数据:[24 x4 groupedData] EstimatedParameterNames:{“中央”“外围”“12”的Cl_Central} ErrorModelInfo: [1 x3表]EstimationFunction:“lsqnonlin”gydF4y2Ba

拟合结果与原始数据的阴谋。虽然三个独立的情节生成,数据上使用相同的一组参数(也就是说,所有三个人有同样的安装线)。gydF4y2Ba

情节(pooledFit);gydF4y2Ba

估计为每个单独的一组参数,看看是否有任何改善参数估计。在这个例子中,因为有三个人,三套参数估计。gydF4y2Ba

unpooledFit = sbiofit(模型、gData responseMap estimatedParam,剂量,gydF4y2Ba“池”gydF4y2Ba、假);gydF4y2Ba

拟合结果与原始数据的阴谋。每个人是不同的安装(也就是说,每个安装是每个人特有的行)和每一行似乎适合个人数据。gydF4y2Ba

情节(unpooledFit);gydF4y2Ba

显示了结果的第一人。池的MSE是低于健康。其他两个人也如此。gydF4y2Ba

unpooledFit (1)gydF4y2Ba
ans = OptimResults属性:ExitFlag: 3输出:[1 x1 struct] GroupName: 1β:[4 x3表]ParameterEstimates: [4 x3表]:[8 x4x2双]COVB: [4 x4双]CovarianceMatrix: [4 x4双]R: [8 x2双]MSE: 2.1380上交所:25.6559重量:[]LogLikelihood: -26.4805 AIC: 60.9610 BIC: 64.0514教育部:12 DependentFiles: {1} x3细胞数据:[8 x4 groupedData] EstimatedParameterNames:{“中央”“外围”“12”“Cl_Central”} ErrorModelInfo: [1 x3表]EstimationFunction:“lsqnonlin”gydF4y2Ba

生成一个阴谋的残差随时间比较集中,未共享健康结果。图显示未共享符合残差小于汇集的符合预期。除了比较残差外,其他严格的标准可以用来比较拟合结果。gydF4y2Ba

t = [gData.Time; gData.Time];res_pooled = vertcat (pooledFit.R);res_pooled = res_pooled (:);res_unpooled = vertcat (unpooledFit.R);res_unpooled = res_unpooled (:);情节(t, res_pooledgydF4y2Ba“o”gydF4y2Ba,gydF4y2Ba“MarkerFaceColor”gydF4y2Ba,gydF4y2Ba' w 'gydF4y2Ba,gydF4y2Ba“markerEdgeColor”gydF4y2Ba,gydF4y2Ba“b”gydF4y2Ba)举行gydF4y2Ba在gydF4y2Ba情节(t, res_unpooledgydF4y2Ba“o”gydF4y2Ba,gydF4y2Ba“MarkerFaceColor”gydF4y2Ba,gydF4y2Ba“b”gydF4y2Ba,gydF4y2Ba“markerEdgeColor”gydF4y2Ba,gydF4y2Ba“b”gydF4y2Ba)反射= refline (0,0);gydF4y2Ba%的参考线代表零残留gydF4y2Ba标题(gydF4y2Ba“残差与时间”gydF4y2Ba);包含(gydF4y2Ba“时间”gydF4y2Ba);ylabel (gydF4y2Ba“残差”gydF4y2Ba);传奇({gydF4y2Ba“池”gydF4y2Ba,gydF4y2Ba未共享的gydF4y2Ba});gydF4y2Ba

这个例子展示了如何执行未共享估计使用连接池gydF4y2BasbiofitgydF4y2Ba。可以看出,未共享健康占变化由于特定学科研究,而且,在这种情况下,模型更适合数据。然而,汇集适合全民返回参数。如果你想估计全民参数同时考虑个体差异,使用gydF4y2BasbiofitmixedgydF4y2Ba。gydF4y2Ba

这个例子展示了如何估计范畴特定(如年轻人和老年人,男性和女性),细化和全民参数使用PK从多个个人配置文件数据。gydF4y2Ba

背景gydF4y2Ba

假设你有药物血浆浓度数据从30个人和想估算药动学参数,即中央和周边室的体积,间隙,intercompartmental间隙。假定药物浓度和时间剖面遵循biexponential下降gydF4y2Ba CgydF4y2Ba tgydF4y2Ba =gydF4y2Ba 一个gydF4y2Ba egydF4y2Ba - - - - - -gydF4y2Ba 一个gydF4y2Ba tgydF4y2Ba +gydF4y2Ba BgydF4y2Ba egydF4y2Ba - - - - - -gydF4y2Ba bgydF4y2Ba tgydF4y2Ba ,在那里gydF4y2Ba CgydF4y2Ba tgydF4y2Ba 是药物浓度在时间t,gydF4y2Ba 一个gydF4y2Ba 和gydF4y2Ba bgydF4y2Ba 山坡上的相应指数下降。gydF4y2Ba

加载数据gydF4y2Ba

这个合成数据包含时间的等离子体浓度的丸剂量(100毫克)后30个人在不同的时间测量中央和周边隔间。它还包含分类变量,即gydF4y2Ba性gydF4y2Ba和gydF4y2Ba年龄gydF4y2Ba。gydF4y2Ba

明确负载(gydF4y2Ba“sd5_302RAgeSex.mat”gydF4y2Ba)gydF4y2Ba

groupedData格式转换gydF4y2Ba

将数据集转换成gydF4y2BagroupedDatagydF4y2Ba对象,它是拟合函数所需的数据格式gydF4y2BasbiofitgydF4y2Ba。一个gydF4y2BagroupedDatagydF4y2Ba对象还允许您设置独立变量和组织变量名(如果存在的话)。设置的单位gydF4y2BaIDgydF4y2Ba,gydF4y2Ba时间gydF4y2Ba,gydF4y2BaCentralConcgydF4y2Ba,gydF4y2BaPeripheralConcgydF4y2Ba,gydF4y2Ba年龄gydF4y2Ba,gydF4y2Ba性gydF4y2Ba变量。单位是可选的,只有所需的gydF4y2BaUnitConversiongydF4y2Ba功能,该功能会自动匹配的物理量转换为一个一致的单位系统。gydF4y2Ba

gData = groupedData(数据);gData.Properties。VariableUnits = {gydF4y2Ba”gydF4y2Ba,gydF4y2Ba“小时”gydF4y2Ba,gydF4y2Ba毫克/升的gydF4y2Ba,gydF4y2Ba毫克/升的gydF4y2Ba,gydF4y2Ba”gydF4y2Ba,gydF4y2Ba”gydF4y2Ba};gData.PropertiesgydF4y2Ba
ans =gydF4y2Ba结构体字段:gydF4y2Ba描述:“用户数据:[]DimensionNames:{“行”“变量”}VariableNames: {“ID”“时间”“CentralConc”“PeripheralConc”“性”“年龄”}VariableDescriptions: {} VariableUnits:{”“小时”“毫克/升”毫克/升”“}VariableContinuity: [] RowNames: {} CustomProperties: [1 x1 matlab.tabular。CustomProperties] GroupVariableName:“ID”IndependentVariableName:“时间”gydF4y2Ba

的gydF4y2BaIndependentVariableNamegydF4y2Ba和gydF4y2BaGroupVariableNamegydF4y2Ba被自动设置为属性gydF4y2Ba时间gydF4y2Ba和gydF4y2BaIDgydF4y2Ba变量的数据。gydF4y2Ba

可视化数据gydF4y2Ba

显示响应数据为每个单独的。gydF4y2Ba

t = sbiotrellis (gDatagydF4y2Ba“ID”gydF4y2Ba,gydF4y2Ba“时间”gydF4y2Ba,{gydF4y2Ba“CentralConc”gydF4y2Ba,gydF4y2Ba“PeripheralConc”gydF4y2Ba},gydF4y2Ba…gydF4y2Ba“标记”gydF4y2Ba,gydF4y2Ba“+”gydF4y2Ba,gydF4y2Ba“线型”gydF4y2Ba,gydF4y2Ba“没有”gydF4y2Ba);gydF4y2Ba%调整图。gydF4y2Bat.hFig.Position (:) = (100 100 1280 800);gydF4y2Ba

图包含30个坐标轴对象。坐标轴对象1标题ID包含2线类型的对象。一个或多个行显示的值只使用这些对象标记代表CentralConc, PeripheralConc。坐标轴对象2 2 6包含标题ID类型的对象。一个或多个行显示的值只使用标记轴对象3标题ID 11包含2线类型的对象。一个或多个行显示的值只使用标记轴对象4标题ID 16包含2线类型的对象。一个或多个行显示的值只使用标记轴对象5标题ID 21包含2线类型的对象。一个或多个行显示的值只使用标记轴对象6标题ID 26包含2线类型的对象。一个或多个行显示的值只使用标记轴对象7标题ID 2包含2线类型的对象。一个或多个行显示的值只使用标记轴对象8标题ID 7包含2线类型的对象。 One or more of the lines displays its values using only markers Axes object 9 with title ID 12 contains 2 objects of type line. One or more of the lines displays its values using only markers Axes object 10 with title ID 17 contains 2 objects of type line. One or more of the lines displays its values using only markers Axes object 11 with title ID 22 contains 2 objects of type line. One or more of the lines displays its values using only markers Axes object 12 with title ID 27 contains 2 objects of type line. One or more of the lines displays its values using only markers Axes object 13 with title ID 3 contains 2 objects of type line. One or more of the lines displays its values using only markers Axes object 14 with title ID 8 contains 2 objects of type line. One or more of the lines displays its values using only markers Axes object 15 with title ID 13 contains 2 objects of type line. One or more of the lines displays its values using only markers Axes object 16 with title ID 18 contains 2 objects of type line. One or more of the lines displays its values using only markers Axes object 17 with title ID 23 contains 2 objects of type line. One or more of the lines displays its values using only markers Axes object 18 with title ID 28 contains 2 objects of type line. One or more of the lines displays its values using only markers Axes object 19 with title ID 4 contains 2 objects of type line. One or more of the lines displays its values using only markers Axes object 20 with title ID 9 contains 2 objects of type line. One or more of the lines displays its values using only markers Axes object 21 with title ID 14 contains 2 objects of type line. One or more of the lines displays its values using only markers Axes object 22 with title ID 19 contains 2 objects of type line. One or more of the lines displays its values using only markers Axes object 23 with title ID 24 contains 2 objects of type line. One or more of the lines displays its values using only markers Axes object 24 with title ID 29 contains 2 objects of type line. One or more of the lines displays its values using only markers Axes object 25 with title ID 5 contains 2 objects of type line. One or more of the lines displays its values using only markers Axes object 26 with title ID 10 contains 2 objects of type line. One or more of the lines displays its values using only markers Axes object 27 with title ID 15 contains 2 objects of type line. One or more of the lines displays its values using only markers Axes object 28 with title ID 20 contains 2 objects of type line. One or more of the lines displays its values using only markers Axes object 29 with title ID 25 contains 2 objects of type line. One or more of the lines displays its values using only markers Axes object 30 with title ID 30 contains 2 objects of type line. One or more of the lines displays its values using only markers

建立一个两舱制模式gydF4y2Ba

使用内置的PK库来构建一个两舱制模型与注入剂量和一阶消除消除速率取决于间隙和中央室的体积。使用gydF4y2BaconfigsetgydF4y2Ba对象单位转换。gydF4y2Ba

pkmd = PKModelDesign;pkc1 = addCompartment (pkmd,gydF4y2Ba“中央”gydF4y2Ba);pkc1。DosingType =gydF4y2Ba“丸”gydF4y2Ba;pkc1。EliminationType =gydF4y2Ba“linear-clearance”gydF4y2Ba;pkc1。HasResponseVariable = true;pkc2 = addCompartment (pkmd,gydF4y2Ba“外围”gydF4y2Ba);模型=构造(pkmd);configset = getconfigset(模型);configset.CompileOptions。UnitConversion = true;gydF4y2Ba

有关创建区划的PK模型使用SimBiology®内置库,明白了gydF4y2Ba创建药代动力学模型gydF4y2Ba。gydF4y2Ba

定义剂量gydF4y2Ba

假设每个人收到丸剂量100毫克的时间= 0。设置不同的给药策略的细节,请参阅gydF4y2Ba剂量SimBiology模型gydF4y2Ba。gydF4y2Ba

剂量= sbiodose (gydF4y2Ba“剂量”gydF4y2Ba,gydF4y2Ba“TargetName”gydF4y2Ba,gydF4y2Ba“Drug_Central”gydF4y2Ba);剂量。开始时间= 0;剂量。一个米ount = 100; dose.AmountUnits =毫克的gydF4y2Ba;剂量。时间Units =“小时”gydF4y2Ba;gydF4y2Ba

响应数据映射到相应的模型组件gydF4y2Ba

数据包含测量血浆浓度在中央和周边箱内。这些变量映射到适当的模型组件,gydF4y2BaDrug_CentralgydF4y2Ba和gydF4y2BaDrug_PeripheralgydF4y2Ba。gydF4y2Ba

responseMap = {gydF4y2Ba“Drug_Central = CentralConc”gydF4y2Ba,gydF4y2Ba“Drug_Peripheral = PeripheralConc”gydF4y2Ba};gydF4y2Ba

指定的参数估计gydF4y2Ba

指定的中央和周边隔间gydF4y2Ba中央gydF4y2Ba和gydF4y2Ba外围gydF4y2Ba,intercompartmental间隙gydF4y2Ba12个gydF4y2Ba和清关gydF4y2BaCl_CentralgydF4y2Ba作为参数估计。的gydF4y2BaestimatedInfogydF4y2Ba对象允许您选择指定参数变换,初始值和参数范围。因为两个gydF4y2Ba中央gydF4y2Ba和gydF4y2Ba外围gydF4y2Ba限制是积极的,为每个参数指定一个log-transform。gydF4y2Ba

paramsToEstimate = {gydF4y2Ba“日志(中央)”gydF4y2Ba,gydF4y2Ba的日志(外围)gydF4y2Ba,gydF4y2Ba“12”gydF4y2Ba,gydF4y2Ba“Cl_Central”gydF4y2Ba};estimatedParam = estimatedInfo (paramsToEstimate,gydF4y2Ba“InitialValue”gydF4y2Ba[1 1 1 1]);gydF4y2Ba

细化参数估计gydF4y2Ba

估计为每个单独的一组参数设置gydF4y2Ba“池”gydF4y2Ba名称-值对参数gydF4y2Ba假gydF4y2Ba。gydF4y2Ba

unpooledFit = sbiofit(模型、gData responseMap estimatedParam,剂量,gydF4y2Ba“池”gydF4y2Ba、假);gydF4y2Ba

显示结果gydF4y2Ba

画出拟合结果与原始数据为每个单独的(集团)。gydF4y2Ba

情节(unpooledFit);gydF4y2Ba

图包含30个坐标轴对象。坐标轴对象1标题30包含4线类型的对象。一个或多个行显示它的值只使用标记轴对象2与标题包含29日4线类型的对象。一个或多个行显示它的值只使用标记轴对象3标题28包含4线类型的对象。一个或多个行显示的值只使用标记轴对象4标题27包含4线类型的对象。一个或多个行显示的值只使用标记轴对象与标题26 5包含4线类型的对象。一个或多个行显示的值只使用标记轴对象与标题25 6包含4线类型的对象。一个或多个行显示的值只使用标记轴对象与标题24 7包含4线类型的对象。一个或多个行显示的值只使用标记轴对象与标题23 8包含4线类型的对象。一个或多个行显示的值只使用标记轴对象9与标题22包含4线类型的对象。 One or more of the lines displays its values using only markers Axes object 10 with title 21 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 11 with title 20 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 12 with title 19 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 13 with title 18 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 14 with title 17 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 15 with title 16 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 16 with title 15 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 17 with title 14 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 18 with title 13 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 19 with title 12 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 20 with title 11 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 21 with title 10 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 22 with title 9 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 23 with title 8 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 24 with title 7 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 25 with title 6 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 26 with title 5 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 27 with title 4 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 28 with title 3 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 29 with title 2 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 30 with title 1 contains 4 objects of type line. One or more of the lines displays its values using only markers

对于一个未共享健康,gydF4y2BasbiofitgydF4y2Ba总是返回一个对象为每个单独的结果。gydF4y2Ba

检查参数估计类依赖关系gydF4y2Ba

探索未共享是否有任何的参数估计,也就是说,如果一些参数相关的一个或多个类别。如果有任何类别的依赖性,它可能减少自由度的数量,通过估计这些参数的值。gydF4y2Ba

首先提取和类别ID值为每个IDgydF4y2Ba

catParamValues =独特(gData (: {gydF4y2Ba“ID”gydF4y2Ba,gydF4y2Ba“性”gydF4y2Ba,gydF4y2Ba“年龄”gydF4y2Ba}));gydF4y2Ba

将变量添加到表包含每个参数的估计。gydF4y2Ba

allParamValues = vertcat (unpooledFit.ParameterEstimates);catParamValues。中央=一个llParamValues.Estimate(strcmp(allParamValues.Name,“中央”gydF4y2Ba));catParamValues。外围=一个llParamValues.Estimate(strcmp(allParamValues.Name,“外围”gydF4y2Ba));catParamValues。12个=一个llParamValues.Estimate(strcmp(allParamValues.Name,“12”gydF4y2Ba));catParamValues。Cl_Central=一个llParamValues.Estimate(strcmp(allParamValues.Name,“Cl_Central”gydF4y2Ba));gydF4y2Ba

为每个类别阴谋每个参数的估计。gydF4y2BagscattergydF4y2Ba需要统计和机器学习的工具箱™。如果你没有它,使用其他替代绘图等功能gydF4y2Ba情节gydF4y2Ba。gydF4y2Ba

h =图;ylabels = [gydF4y2Ba“中央”gydF4y2Ba,gydF4y2Ba“边缘”gydF4y2Ba,gydF4y2Ba“12”gydF4y2Ba,gydF4y2Ba“Cl \ _Central”gydF4y2Ba];plotNumber = 1;gydF4y2Ba为gydF4y2Ba我= 1:4 thisParam = estimatedParam(我). name;gydF4y2Ba%的阴谋性范畴gydF4y2Ba次要情节(4 2 plotNumber);plotNumber = plotNumber + 1;gscatter(双(catParamValues.Sex), catParamValues。(thisParam) catParamValues.Sex);甘氨胆酸ax =;斧子。XTick = [];ylabel (ylabels (i));传奇(gydF4y2Ba“位置”gydF4y2Ba,gydF4y2Ba“bestoutside”gydF4y2Ba)gydF4y2Ba%的阴谋年龄类别gydF4y2Ba次要情节(4 2 plotNumber);plotNumber = plotNumber + 1;gscatter(双(catParamValues.Age), catParamValues。(thisParam) catParamValues.Age);甘氨胆酸ax =;斧子。XTick = [];ylabel (ylabels (i));传奇(gydF4y2Ba“位置”gydF4y2Ba,gydF4y2Ba“bestoutside”gydF4y2Ba)gydF4y2Ba结束gydF4y2Ba%调整图。gydF4y2Bah.Position (:) = (100 100 1280 800);gydF4y2Ba

图包含8轴对象。坐标轴对象1与ylabel中央包含2线类型的对象。一个或多个行显示的值只使用这些对象标记代表女性,男性。坐标轴对象2与ylabel中央包含对象类型的线。一个或多个行显示的值只使用这些对象标记代表老了,年轻了。坐标轴对象与ylabel外围3包含2线类型的对象。一个或多个行显示的值只使用这些对象标记代表女性,男性。坐标轴对象4 2 ylabel外围包含对象类型的线。一个或多个行显示的值只使用这些对象标记代表老了,年轻了。坐标轴对象5 2 ylabel Q12包含对象类型的线。 One or more of the lines displays its values using only markers These objects represent Female, Male. Axes object 6 with ylabel Q12 contains 2 objects of type line. One or more of the lines displays its values using only markers These objects represent Old, Young. Axes object 7 with ylabel Cl\_Central contains 2 objects of type line. One or more of the lines displays its values using only markers These objects represent Female, Male. Axes object 8 with ylabel Cl\_Central contains 2 objects of type line. One or more of the lines displays its values using only markers These objects represent Old, Young.

根据情节,似乎年轻个体倾向于有更高的中央和周边隔间(gydF4y2Ba中央gydF4y2Ba,gydF4y2Ba外围gydF4y2Ba比旧的个人(即卷似乎不同年龄组)。此外,男性较低间隙率(gydF4y2BaCl_CentralgydF4y2Ba为12个参数)比女性但相反的(也就是说,间隙和Q12似乎性别)。gydF4y2Ba

估计的参数gydF4y2Ba

使用gydF4y2Ba“CategoryVariableName”gydF4y2Ba财产的gydF4y2BaestimatedInfogydF4y2Ba在拟合对象指定使用哪个类别。使用gydF4y2Ba“性”gydF4y2Ba集团为间隙配合gydF4y2BaCl_CentralgydF4y2Ba和gydF4y2Ba12个gydF4y2Ba参数。使用gydF4y2Ba“年龄”gydF4y2Ba随着集团适合gydF4y2Ba中央gydF4y2Ba和gydF4y2Ba外围gydF4y2Ba参数。gydF4y2Ba

estimatedParam (1)。C一个teg或yV一个riableName =“年龄”gydF4y2Ba;estimatedParam (2)。C一个teg或yV一个riableName =“年龄”gydF4y2Ba;estimatedParam (3)。C一个teg或yV一个riableName =“性”gydF4y2Ba;estimatedParam (4)。C一个teg或yV一个riableName =“性”gydF4y2Ba;categoryFit = sbiofit(模型、gData responseMap estimatedParam,剂量)gydF4y2Ba
categoryFit = OptimResults属性:ExitFlag: 3输出:[1 x1 struct] GroupName:[]β:[8 x5表]ParameterEstimates: [120 x6表]:[240 x8x2双]COVB:[8×8双]CovarianceMatrix:[8×8双]R: [240 x2双]MSE: 0.4362上交所:205.8690重量:[]LogLikelihood: -477.9195 AIC: 971.8390 BIC: 1.0052 e + 03 DFE: 472 DependentFiles: {1} x3细胞数据:[240 x6 groupedData] EstimatedParameterNames:{“中央”“外围”“12”的Cl_Central} ErrorModelInfo: [1 x3表]EstimationFunction:“lsqnonlin”gydF4y2Ba

当配件按类别(或一组),gydF4y2BasbiofitgydF4y2Ba总是返回一个结果对象,而不是一个为每个类别的水平。这是因为雄性和雌性个体被认为是部分相同的优化使用相同的误差模型和误差参数,同样的年轻和年老的人。gydF4y2Ba

阴谋的结果gydF4y2Ba

情节的估计结果。gydF4y2Ba

情节(categoryFit);gydF4y2Ba

图包含30个坐标轴对象。坐标轴对象1标题30包含4线类型的对象。一个或多个行显示它的值只使用标记轴对象2与标题包含29日4线类型的对象。一个或多个行显示它的值只使用标记轴对象3标题28包含4线类型的对象。一个或多个行显示的值只使用标记轴对象4标题27包含4线类型的对象。一个或多个行显示的值只使用标记轴对象与标题26 5包含4线类型的对象。一个或多个行显示的值只使用标记轴对象与标题25 6包含4线类型的对象。一个或多个行显示的值只使用标记轴对象与标题24 7包含4线类型的对象。一个或多个行显示的值只使用标记轴对象与标题23 8包含4线类型的对象。一个或多个行显示的值只使用标记轴对象9与标题22包含4线类型的对象。 One or more of the lines displays its values using only markers Axes object 10 with title 21 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 11 with title 20 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 12 with title 19 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 13 with title 18 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 14 with title 17 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 15 with title 16 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 16 with title 15 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 17 with title 14 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 18 with title 13 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 19 with title 12 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 20 with title 11 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 21 with title 10 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 22 with title 9 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 23 with title 8 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 24 with title 7 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 25 with title 6 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 26 with title 5 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 27 with title 4 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 28 with title 3 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 29 with title 2 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 30 with title 1 contains 4 objects of type line. One or more of the lines displays its values using only markers

为gydF4y2BaCl_CentralgydF4y2Ba和gydF4y2Ba12个gydF4y2Ba参数,所有男性有相同的估计,和类似的女性。为gydF4y2Ba中央gydF4y2Ba和gydF4y2Ba外围gydF4y2Ba参数,所有年轻的个人有相同的估计,和同样的人。gydF4y2Ba

全民参数估计gydF4y2Ba

为了更好的比较结果,符合模型的所有数据汇集在一起,也就是说,估计参数的一组个人通过设置gydF4y2Ba“池”gydF4y2Ba名称-值对参数gydF4y2Ba真正的gydF4y2Ba。警告消息告诉你,这个选项会忽略任何范畴特定信息(如果存在的话)。gydF4y2Ba

pooledFit = sbiofit(模型、gData responseMap estimatedParam,剂量,gydF4y2Ba“池”gydF4y2Ba,真正的);gydF4y2Ba
警告:CategoryVariableName estimatedInfo对象的属性使用“汇集”选项时将被忽略。gydF4y2Ba

阴谋的结果gydF4y2Ba

拟合结果与原始数据的阴谋。虽然单独的情节是为每个生成,数据拟合使用同一组参数(也就是说,所有人有同样的安装线)。gydF4y2Ba

情节(pooledFit);gydF4y2Ba

图包含30个坐标轴对象。坐标轴对象1标题30包含4线类型的对象。一个或多个行显示它的值只使用标记轴对象2与标题包含29日4线类型的对象。一个或多个行显示它的值只使用标记轴对象3标题28包含4线类型的对象。一个或多个行显示的值只使用标记轴对象4标题27包含4线类型的对象。一个或多个行显示的值只使用标记轴对象与标题26 5包含4线类型的对象。一个或多个行显示的值只使用标记轴对象与标题25 6包含4线类型的对象。一个或多个行显示的值只使用标记轴对象与标题24 7包含4线类型的对象。一个或多个行显示的值只使用标记轴对象与标题23 8包含4线类型的对象。一个或多个行显示的值只使用标记轴对象9与标题22包含4线类型的对象。 One or more of the lines displays its values using only markers Axes object 10 with title 21 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 11 with title 20 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 12 with title 19 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 13 with title 18 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 14 with title 17 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 15 with title 16 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 16 with title 15 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 17 with title 14 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 18 with title 13 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 19 with title 12 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 20 with title 11 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 21 with title 10 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 22 with title 9 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 23 with title 8 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 24 with title 7 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 25 with title 6 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 26 with title 5 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 27 with title 4 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 28 with title 3 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 29 with title 2 contains 4 objects of type line. One or more of the lines displays its values using only markers Axes object 30 with title 1 contains 4 objects of type line. One or more of the lines displays its values using only markers

比较残差gydF4y2Ba

比较残差的gydF4y2BaCentralConcgydF4y2Ba和gydF4y2BaPeripheralConcgydF4y2Ba为每一个合适的反应。gydF4y2Ba

t = gData.Time;allResid (:,: 1) = pooledFit.R;allResid (:: 2) = categoryFit.R;allResid (:: 3) = vertcat (unpooledFit.R);h =图;responseList = {gydF4y2Ba“CentralConc”gydF4y2Ba,gydF4y2Ba“PeripheralConc”gydF4y2Ba};gydF4y2Ba为gydF4y2Bai = 1:2次要情节(2,1,我);oneResid =挤压(allResid(:,我,:));情节(t, oneResidgydF4y2Ba“o”gydF4y2Ba);refline (0,0);gydF4y2Ba%的参考线代表零残留gydF4y2Ba标题(sprintf (gydF4y2Ba“残差(% s)”gydF4y2Ba我,responseList {}));包含(gydF4y2Ba“时间”gydF4y2Ba);ylabel (gydF4y2Ba“残差”gydF4y2Ba);传奇({gydF4y2Ba“池”gydF4y2Ba,gydF4y2Ba“的”gydF4y2Ba,gydF4y2Ba未共享的gydF4y2Ba});gydF4y2Ba结束gydF4y2Ba%调整图。gydF4y2Bah.Position (:) = (100 100 1280 800);gydF4y2Ba

图包含2轴对象。坐标轴对象1标题残差(CentralConc),包含时间,ylabel残差包含4线类型的对象。一个或多个行显示的值只使用这些对象标记代表汇集,范畴特定,未共享。坐标轴对象2标题残差(PeripheralConc),包含时间,ylabel残差包含4线类型的对象。一个或多个行显示的值只使用这些对象标记代表汇集,范畴特定,未共享。gydF4y2Ba

如情节所示,未共享适应生产最适合的数据,因为它适合每个人的数据。这是预期的,因为它使用了最多的自由度。category-fit减少自由度的数量,通过拟合数据两类(性别和年龄)。因此,残差大于未共享健康,但仍小于population-fit,估计只有一个为所有个人设定的参数。category-fit可能是一个很好的妥协未共享和集中之间的拟合提供任何层次模型存在于您的数据。gydF4y2Ba

下面的例子使用了酵母heterotrimeric G蛋白模型和实验数据报告gydF4y2Ba[1]gydF4y2Ba。模型的详细信息,请参阅gydF4y2Ba背景gydF4y2Ba部分gydF4y2Ba扫描参数、参数估计和灵敏度分析在酵母Heterotrimeric G蛋白循环gydF4y2Ba。gydF4y2Ba

加载G蛋白模型。gydF4y2Ba

sbioloadprojectgydF4y2BagproteingydF4y2Ba

存储实验数据包含的时间进程的一部分积极的G蛋白。gydF4y2Ba

时间= [0 10 30 60 110 210 300 450 600)';GaFracExpt = [0 0.35 0.4 0.36 0.39 0.33 0.24 0.17 0.2) ';gydF4y2Ba

创建一个gydF4y2BagroupedDatagydF4y2Ba基于实验数据的对象。gydF4y2Ba

台=表(时间、GaFracExpt);grpData = groupedData(台);gydF4y2Ba

适当的模型组件映射到实验数据。换句话说,指示哪些物种模型对应于响应变量的数据。在这个例子中,地图的模型参数gydF4y2BaGaFracgydF4y2Ba实验数据的变量gydF4y2BaGaFracExptgydF4y2Ba从gydF4y2BagrpDatagydF4y2Ba。gydF4y2Ba

responseMap =gydF4y2Ba“GaFrac = GaFracExpt”gydF4y2Ba;gydF4y2Ba

使用一个gydF4y2BaestimatedInfogydF4y2Ba对象定义模型参数gydF4y2BakGdgydF4y2Ba作为一个参数估计。gydF4y2Ba

estimatedParam = estimatedInfo (gydF4y2Ba“kGd”gydF4y2Ba);gydF4y2Ba

执行参数估计。gydF4y2Ba

fitResult = sbiofit (m1, grpData、responseMap estimatedParam);gydF4y2Ba

查看估计的参数值gydF4y2BakGdgydF4y2Ba。gydF4y2Ba

fitResult.ParameterEstimatesgydF4y2Ba
ans =gydF4y2Ba1×3表gydF4y2Ba名字估计StandardError _________ ________ _________________ {‘kGd} 0.11307 - 3.4439 e-05gydF4y2Ba

假设你想把模型仿真结果使用估计的参数值。您可以重新运行gydF4y2BasbiofitgydF4y2Ba函数和指定可选的第二个返回输出参数,其中包含仿真结果,或使用gydF4y2Ba安装gydF4y2Ba方法检索结果而无需重新运行gydF4y2BasbiofitgydF4y2Ba。gydF4y2Ba

[yfit, paramEstim] =安装(fitResult);gydF4y2Ba

仿真结果。gydF4y2Ba

sbioplot (yfit);gydF4y2Ba

图包含一个坐标轴对象。坐标轴对象与标题和时间,包含时间,ylabel州包含7线类型的对象。这些对象代表G, Gd、Ga、RL, R, Gbg GaFrac。gydF4y2Ba

这个例子展示了如何估计滞后丸之前注射的时间和剂量使用单舱的持续时间模型。gydF4y2Ba

加载一个样本数据集。gydF4y2Ba

负载gydF4y2BalagDurationData.matgydF4y2Ba

图数据。gydF4y2Ba

情节(data.Time data.Conc,gydF4y2Ba“x”gydF4y2Ba)包含(gydF4y2Ba的时间(小时)gydF4y2Ba)ylabel (gydF4y2Ba“浓缩的(毫克/升)gydF4y2Ba)gydF4y2Ba

图包含一个坐标轴对象。坐标轴对象包含时间(小时),ylabel浓缩的(毫克/升)包含一行对象显示其值只使用标记。gydF4y2Ba

groupedData转换。gydF4y2Ba

gData = groupedData(数据);gData.Properties。VariableUnits = {gydF4y2Ba“小时”gydF4y2Ba,gydF4y2Ba毫克/升的gydF4y2Ba};gydF4y2Ba

创建一个单舱模型。gydF4y2Ba

pkmd = PKModelDesign;pkc1 = addCompartment (pkmd,gydF4y2Ba“中央”gydF4y2Ba);pkc1。DosingType =gydF4y2Ba“丸”gydF4y2Ba;pkc1。EliminationType =gydF4y2Ba“linear-clearance”gydF4y2Ba;pkc1。HasResponseVariable = true;模型=构造(pkmd);configset = getconfigset(模型);configset.CompileOptions。UnitConversion = true;gydF4y2Ba

添加两个参数代表了时间滞后的剂量和持续时间。滞后参数指定剂量接种前的时间间隔。时间参数指定的长度时间管理一剂。gydF4y2Ba

lagP = addparameter(模型,gydF4y2Ba“lagP”gydF4y2Ba);lagP。V一个lueUnits =“小时”gydF4y2Ba;durP = addparameter(模型,gydF4y2Ba“durP”gydF4y2Ba);durP。价值Units =“小时”gydF4y2Ba;gydF4y2Ba

创建一个剂量对象。设置gydF4y2BaLagParameterNamegydF4y2Ba和gydF4y2BaDurationParameterNamegydF4y2Ba剂量的属性名称的滞后和时间参数,分别。设置数量10毫克剂量用于生成数据量。gydF4y2Ba

剂量= sbiodose (gydF4y2Ba“剂量”gydF4y2Ba);剂量。TargetName =gydF4y2Ba“Drug_Central”gydF4y2Ba;剂量。开始时间= 0;剂量。一个米ount = 10; dose.AmountUnits =毫克的gydF4y2Ba;剂量。时间Units =“小时”gydF4y2Ba;剂量。LagParameterName =gydF4y2Ba“lagP”gydF4y2Ba;剂量。DurationParameterName =gydF4y2Ba“durP”gydF4y2Ba;gydF4y2Ba

物种模型映射到相应的数据。gydF4y2Ba

responseMap = {gydF4y2Ba“Drug_Central =浓缩的”gydF4y2Ba};gydF4y2Ba

指定滞后和时间参数作为参数估计。Log-transform参数。初始化它们2和设置上界和下界。gydF4y2Ba

paramsToEstimate = {gydF4y2Ba“日志(lagP)”gydF4y2Ba,gydF4y2Ba“日志(durP)”gydF4y2Ba};estimatedParams = estimatedInfo (paramsToEstimate,gydF4y2Ba“InitialValue”gydF4y2Ba2,gydF4y2Ba“界限”gydF4y2Ba[1 5]);gydF4y2Ba

进行参数估计。gydF4y2Ba

fitResults = sbiofit(模型、gData responseMap estimatedParams,剂量,gydF4y2Ba“fminsearch”gydF4y2Ba)gydF4y2Ba
fitResults = OptimResults属性:ExitFlag: 1输出:[1 x1 struct] GroupName:一组β:[2 x4表]ParameterEstimates: [2 x4表]J: [11 x2双]COVB: [2 x2双]CovarianceMatrix: [2 x2双]R: x1双[11]MSE: 0.0024上交所:0.0213重量:[]LogLikelihood: 18.7511 AIC: -33.5023 BIC: -32.7065教育部:9 DependentFiles: {1 x2细胞}数据:[11 x2 groupedData] EstimatedParameterNames: {“lagP”“durP”} ErrorModelInfo: [1 x3表]EstimationFunction:“fminsearch”gydF4y2Ba

显示结果。gydF4y2Ba

fitResults.ParameterEstimatesgydF4y2Ba
ans =gydF4y2Ba2×4表gydF4y2Ba名字估计StandardError界限说_________________ ______ {‘lagP} 1.986 0.0051568 1 5 {‘durP} 1.527 0.012956 - 1 5gydF4y2Ba
情节(fitResults)gydF4y2Ba

图包含一个坐标轴对象。坐标轴对象包含2线类型的对象。一个或多个行显示的值只使用标记gydF4y2Ba

输入参数gydF4y2Ba

全部折叠gydF4y2Ba

作为一个SimBiology SimBiology模型,指定gydF4y2Ba模型对象gydF4y2Ba。活动gydF4y2Baconfigset对象gydF4y2Ba仿真模型包含的解算器设置。任何积极应用剂量和变异模型在模拟除非另有指定使用gydF4y2Ba剂量gydF4y2Ba和gydF4y2Ba变体gydF4y2Ba分别输入参数。gydF4y2Ba

数据符合指定为一个gydF4y2BagroupedData对象gydF4y2Ba。gydF4y2Ba

时间变量必须定义的名称gydF4y2BaIndependentVariableNamegydF4y2Ba的属性gydF4y2BagrpDatagydF4y2Ba。例如,如果时间变量名gydF4y2Ba“时间”gydF4y2Ba,然后指定如下。gydF4y2Ba

grpData.Properties。IndependentVariableName =gydF4y2Ba“时间”gydF4y2Ba;gydF4y2Ba

如果测量的数据包含多个组,分组必须定义的变量名gydF4y2BaGroupVariableNamegydF4y2Ba的属性gydF4y2BagrpDatagydF4y2Ba。例如,如果分组变量名gydF4y2Ba“集团”gydF4y2Ba,然后指定如下。gydF4y2Ba

grpData.Properties。GroupVariableName =gydF4y2Ba“集团”gydF4y2Ba;gydF4y2Ba
通常指的是一组一组测量值,代表的是单一的时间进程,通常对应于一个特定的个人,或实验条件。gydF4y2Ba

请注意gydF4y2Ba

sbiofitgydF4y2Ba使用gydF4y2Ba分类gydF4y2Ba函数来确定组。如果任何组值转换为相同的值gydF4y2Ba分类gydF4y2Ba,那么这些观察被视为属于同一组。例如,如果一些观察没有组信息(即空字符向量gydF4y2Ba”gydF4y2Ba),然后gydF4y2Ba分类gydF4y2Ba将空特征向量gydF4y2Ba<定义>gydF4y2Ba,这些观察结果被视为一组。gydF4y2Ba

模型组件的映射信息gydF4y2BagrpDatagydF4y2Ba指定为一个特征向量,字符串,字符串向量,或单元阵列的特征向量。gydF4y2Ba

向量的每个字符或字符串是一个方程表达式,类似于SimBiology分配规则。它包含名称(或限定名称)的数量(物种、车厢或参数)或一个gydF4y2Ba可观测的gydF4y2Ba对象模型中gydF4y2BasmgydF4y2Ba,紧随其后的是性格gydF4y2Ba“=”gydF4y2Ba和一个变量的名字gydF4y2BagrpDatagydF4y2Ba。为了清楚起见,允许空白名称和之间gydF4y2Ba“=”gydF4y2Ba。gydF4y2Ba

例如,如果您有浓度数据gydF4y2Ba“浓缩的”gydF4y2Ba在gydF4y2BagrpDatagydF4y2Ba为一个物种gydF4y2Ba“Drug_Central”gydF4y2Ba,您可以指定如下。gydF4y2Ba

ResponseMap =gydF4y2Ba“Drug_Central =浓缩的”gydF4y2Ba;gydF4y2Ba

一个物种名称明确,使用限定名称,其中包括舱的名称。名字reaction-scoped参数,使用反应名称参数。gydF4y2Ba

如果模型组件名称或gydF4y2BagrpDatagydF4y2Ba变量名称不是一个有效的MATLABgydF4y2Ba®gydF4y2Ba变量名,用方括号把它围起来,如:gydF4y2Ba

ResponseMap =gydF4y2Ba”[1]中部。药物=(1浓缩的中部)'gydF4y2Ba;gydF4y2Ba

如果一个变量名称本身包含方括号,你不能在表达式中使用它来定义映射信息。gydF4y2Ba

发出一个错误如果任何(合格)名称匹配相同类型的两个组件。不过,您可以使用一个(合格)名称匹配不同类型的两个组件,和函数首先发现物种的名字,其次是隔间和参数。gydF4y2Ba

估计参数,指定为一个gydF4y2BaEstimatedInfo对象gydF4y2Ba或向量gydF4y2BaestimatedInfogydF4y2Ba对象定义了估计模型中的参数gydF4y2BasmgydF4y2Ba和其他可选信息,如他们的初始估计,转换,绑定约束和类别。金宝app支持转换是gydF4y2Ba日志gydF4y2Ba,gydF4y2Ba分对数gydF4y2Ba,gydF4y2BaprobitgydF4y2Ba。有关详细信息,请参见gydF4y2Ba参数转换gydF4y2Ba。gydF4y2Ba

您可以指定所有评估方法的范围。下界必须低于上限。有关详细信息,请参见gydF4y2Ba界限gydF4y2Ba。gydF4y2Ba

当使用gydF4y2BascattersearchgydF4y2Ba,您必须指定有限转化为每个参数估计范围。gydF4y2Ba

当使用gydF4y2BafminsearchgydF4y2Ba,gydF4y2BanlinfitgydF4y2Ba,或gydF4y2BafminuncgydF4y2Ba范围,目标函数返回gydF4y2Ba正gydF4y2Ba是否超出了界限。当你打开选项等gydF4y2BaFunValCheckgydF4y2Ba,优化可能错误估计期间如果超过了界限。如果使用gydF4y2BanlinfitgydF4y2Ba对雅可比矩阵,它可能报告警告被坏心肠的或无法估计如果最终结果过于接近。gydF4y2Ba

如果你不指定gydF4y2Ba池gydF4y2Ba名称-值对的论点,gydF4y2BasbiofitgydF4y2Ba使用gydF4y2BaCategoryVariableNamegydF4y2Ba的属性gydF4y2BaestiminfogydF4y2Ba决定是否必须估计为每个参数,组织类别,或全部个人作为一个整体。使用gydF4y2Ba池gydF4y2Ba选择覆盖任何gydF4y2BaCategoryVariableNamegydF4y2Ba值。对象的细节gydF4y2BaCategoryVariableNamegydF4y2Ba财产,看到gydF4y2BaEstimatedInfo对象gydF4y2Ba。gydF4y2Ba

请注意gydF4y2Ba

sbiofitgydF4y2Ba使用gydF4y2Ba分类gydF4y2Ba函数来识别团体或类别。如果任何组值转换为相同的值gydF4y2Ba分类gydF4y2Ba,那么这些观察被视为属于同一组。例如,如果一些观察没有组信息(即空字符向量gydF4y2Ba”gydF4y2Ba作为一个群体价值)gydF4y2Ba分类gydF4y2Ba将空特征向量gydF4y2Ba<定义>gydF4y2Ba,这些观察结果被视为一组。gydF4y2Ba

计量信息,指定为一个空数组(gydF4y2Ba[]gydF4y2Ba或gydF4y2Ba{}gydF4y2Ba),二维矩阵或细胞剂量对象的向量(gydF4y2BaScheduleDose对象gydF4y2Ba或gydF4y2BaRepeatDose对象gydF4y2Ba)。gydF4y2Ba

如果您省略了gydF4y2Ba剂量gydF4y2Ba输入,该函数适用于活动如果有任何剂量的模型。gydF4y2Ba

如果您指定输入为空gydF4y2Ba[]gydF4y2Ba或gydF4y2Ba{}gydF4y2Ba期间,没有剂量应用模拟,即使模型具有活跃的剂量。gydF4y2Ba

剂量对象的矩阵,它必须有一个单一行或一行每组输入数据。如果一行,相同的剂量在模拟应用于所有群体。如果它有多个行,每一行是应用于一个单独的组,在组出现在输入数据的顺序相同。允许多个列,这样您就可以对每组应用多个剂量对象。gydF4y2Ba

请注意gydF4y2Ba

R2021b,剂量在不再需要列有相同的配置。如果您以前创建的默认(虚拟)剂量填列,这些默认的剂量没有效果,表明没有剂量。gydF4y2Ba

剂量的细胞载体,它必须有一个元素或者一个元素每组输入数据。每个元素必须gydF4y2Ba[]gydF4y2Ba或一个向量的剂量。每个元素的细胞应用于一个单独的组,在组出现在输入数据的顺序相同。gydF4y2Ba

除了手动构建剂量使用对象gydF4y2BasbiodosegydF4y2Ba,如果输入gydF4y2BagroupedDatagydF4y2Ba对象有定量信息,您可以使用gydF4y2BacreateDosesgydF4y2Ba方法构建剂量。gydF4y2Ba

估计函数名,指定为一个字符或字符串向量。选择如下。gydF4y2Ba

  • “fminsearch”gydF4y2Ba

  • “nlinfit”gydF4y2Ba(统计和机器学习工具是必需的。)gydF4y2Ba

  • “fminunc”gydF4y2Ba(优化工具箱是必需的。)gydF4y2Ba

  • “fmincon”gydF4y2Ba(优化工具箱是必需的。)gydF4y2Ba

  • “lsqcurvefit”gydF4y2Ba(优化工具箱是必需的。)gydF4y2Ba

  • “lsqnonlin”gydF4y2Ba(优化工具箱是必需的。)gydF4y2Ba

  • “patternsearch”gydF4y2Ba(gydF4y2Ba全局优化工具箱gydF4y2Ba是必需的。)gydF4y2Ba

  • “遗传算法”gydF4y2Ba(gydF4y2Ba全局优化工具箱gydF4y2Ba是必需的。)gydF4y2Ba

  • “particleswarm”gydF4y2Ba(gydF4y2Ba全局优化工具箱gydF4y2Ba是必需的。)gydF4y2Ba

  • “scattersearch”gydF4y2Ba

默认情况下,gydF4y2BasbiofitgydF4y2Ba使用第一个可用的估计函数如下:gydF4y2BalsqnonlingydF4y2Ba(优化工具箱)gydF4y2Ba,gydF4y2BanlinfitgydF4y2Ba(统计和机器学习的工具箱)gydF4y2Ba,或gydF4y2BafminsearchgydF4y2Ba。相同的优先级适用于默认本地解决者选择gydF4y2BascattersearchgydF4y2Ba。gydF4y2Ba

支持方法的总结和合适的选项,看看金宝appgydF4y2Ba金宝app支持SimBiology的参数估计方法gydF4y2Ba。gydF4y2Ba

选择特定的评估函数,结构或指定gydF4y2BaoptimoptionsgydF4y2Ba对象。gydF4y2Ba

  • statsetgydF4y2Ba结构为gydF4y2BanlinfitgydF4y2Ba

  • optimsetgydF4y2Ba结构为gydF4y2BafminsearchgydF4y2Ba

  • optimoptionsgydF4y2Ba对象gydF4y2BalsqcurvefitgydF4y2Ba,gydF4y2BalsqnonlingydF4y2Ba,gydF4y2BafmincongydF4y2Ba,gydF4y2BafminuncgydF4y2Ba,gydF4y2BaparticleswarmgydF4y2Ba,gydF4y2Ba遗传算法gydF4y2Ba,gydF4y2BapatternsearchgydF4y2Ba

  • 结构体gydF4y2Ba为gydF4y2BascattersearchgydF4y2Ba

看到gydF4y2Ba默认选项估计算法gydF4y2Ba更多细节和默认选项与每个估计函数相关联。gydF4y2Ba

变异,指定为一个空数组(gydF4y2Ba[]gydF4y2Ba或gydF4y2Ba{}gydF4y2Ba)或变体对象的向量。gydF4y2Ba

如果你gydF4y2Ba

  • 忽略这个输入参数,应用积极的变异函数模型的,如果有任何。gydF4y2Ba

  • 这个输入指定为空,没有使用变体即使模型具有活跃的变体。gydF4y2Ba

  • 指定这个输入向量的变异,变异函数适用于指定的所有模拟和模型主动变异不习惯。gydF4y2Ba

  • 这个输入指定为一个向量的变异并指定gydF4y2Ba变体gydF4y2Ba名称-值参数,该函数适用于这个输入参数中指定的变量名称中指定应用的参数。gydF4y2Ba

名称-值参数gydF4y2Ba

指定可选的双参数作为gydF4y2BaName1 = Value1,…,以=家gydF4y2Ba,在那里gydF4y2Ba的名字gydF4y2Ba参数名称和吗gydF4y2Ba价值gydF4y2Ba相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。gydF4y2Ba

R2021a之前,用逗号来分隔每一个名称和值,并附上gydF4y2Ba的名字gydF4y2Ba在报价。gydF4y2Ba

例子:gydF4y2Ba“ErrorModel”、“常数”,“UseParallel”,真的gydF4y2Ba指定一个常数误差模型在参数估计和运行模拟并行。gydF4y2Ba

误差模型用于评估,指定为一个特征向量,字符串,字符串向量,单元阵列的特征向量,分类向量,或表。gydF4y2Ba

如果它是一个表,它必须包含一个变量是一个列向量误差模型的名字。的名字可以是单元阵列特征向量,字符串向量,或一个向量分类变量。如果表有超过一行,那么gydF4y2BaRowNamesgydF4y2Ba属性中指定的响应变量名称必须匹配的右手边gydF4y2BaResponseMapgydF4y2Ba。如果表不使用gydF4y2BaRowNamesgydF4y2Ba财产,gydF4y2BangydF4y2Ba相关的错误gydF4y2BangydF4y2Ba响应。gydF4y2Ba

如果您指定只有一个误差模型gydF4y2BasbiofitgydF4y2Ba估计误差参数的一组反应。gydF4y2Ba

如果你指定多个使用分类向量误差模型,字符串向量,或单元阵列特征向量,向量的长度或单元阵列必须匹配的响应gydF4y2BaResponseMapgydF4y2Ba。gydF4y2Ba

您可以指定多个误差模型只有如果你使用这些方法:gydF4y2BalsqnonlingydF4y2Ba,gydF4y2BalsqcurvefitgydF4y2Ba,gydF4y2BafmincongydF4y2Ba,gydF4y2BafminuncgydF4y2Ba,gydF4y2BafminsearchgydF4y2Ba,gydF4y2BapatternsearchgydF4y2Ba,gydF4y2Ba遗传算法gydF4y2Ba,gydF4y2BaparticleswarmgydF4y2Ba。gydF4y2Ba

四个内置误差模型是可用的。每个模型定义了错误使用标准意味着零和unit-variance(高斯)变量gydF4y2BaegydF4y2Ba,仿真结果gydF4y2BafgydF4y2Ba和一个或两个参数gydF4y2Ba一个gydF4y2Ba和gydF4y2BabgydF4y2Ba。gydF4y2Ba

  • “不变”gydF4y2Ba:gydF4y2Ba ygydF4y2Ba =gydF4y2Ba fgydF4y2Ba +gydF4y2Ba 一个gydF4y2Ba egydF4y2Ba

  • “比例”gydF4y2Ba:gydF4y2Ba ygydF4y2Ba =gydF4y2Ba fgydF4y2Ba +gydF4y2Ba bgydF4y2Ba |gydF4y2Ba fgydF4y2Ba |gydF4y2Ba egydF4y2Ba

  • “组合”gydF4y2Ba:gydF4y2Ba ygydF4y2Ba =gydF4y2Ba fgydF4y2Ba +gydF4y2Ba (gydF4y2Ba 一个gydF4y2Ba +gydF4y2Ba bgydF4y2Ba |gydF4y2Ba fgydF4y2Ba |gydF4y2Ba )gydF4y2Ba egydF4y2Ba

  • “指数”gydF4y2Ba:gydF4y2Ba ygydF4y2Ba =gydF4y2Ba fgydF4y2Ba ∗gydF4y2Ba 经验值gydF4y2Ba (gydF4y2Ba 一个gydF4y2Ba egydF4y2Ba )gydF4y2Ba

请注意gydF4y2Ba

  • 如果你指定一个误差模型,您不能指定权重除了常数误差模型。gydF4y2Ba

  • 如果你使用比例或综合误差模型在数据拟合,避免有时指定数据点的解决方案(仿真结果)是零或稳定状态是零。否则,你可能会遇到除零问题。建议您删除这些数据点的数据集。有关参数估计误差函数,看看gydF4y2Ba最大似然估计gydF4y2Ba。gydF4y2Ba

权值用于拟合,指定为一个空数组gydF4y2Ba[]gydF4y2Ba,真正积极的权重矩阵的列对应于反应的数量,或一个函数处理,接受一个向量的预测响应值,并返回一个向量的积极的权重。gydF4y2Ba

如果您指定一个错误模型,您不能使用重量除了常数误差模型。如果既不gydF4y2BaErrorModelgydF4y2Ba或gydF4y2Ba权重gydF4y2Ba指定,默认情况下,软件使用常数误差模型和权重相等。gydF4y2Ba

类属特异性的变体,指定为一个空数组(gydF4y2Ba[]gydF4y2Ba或gydF4y2Ba{}gydF4y2Ba),二维矩阵或细胞变异对象的向量。这些变异让你为特定群体在配件指定参数值。软件适用于这些变量或类属特异性的变异后活跃gydF4y2Ba变体gydF4y2Ba输入参数。如果该值是空的(gydF4y2Ba[]gydF4y2Ba或gydF4y2Ba{}gydF4y2Ba),没有与具体应用变异。gydF4y2Ba

矩阵变量的对象,必须是一个或必须匹配的行数的群体数量输入数据。的gydF4y2Ba我gydF4y2Bath排变体应用于仿真的对象gydF4y2Ba我gydF4y2Ba集团。应用变异从第一列到最后。如果这个矩阵只有一行的变体,它们适用于所有模拟。gydF4y2Ba

变异的细胞矢量对象,必须一个或细胞的数量必须匹配组输入数据的数量。每个元素必须gydF4y2Ba[]gydF4y2Ba或一个向量的变体。如果这个细胞向量只有一个细胞包含一个向量的变体,它们适用于所有模拟。如果向量有多个细胞,细胞的变异gydF4y2Ba我gydF4y2Bath细胞应用于模拟的gydF4y2Ba我gydF4y2Ba集团。gydF4y2Ba

除了手动构建变体使用对象gydF4y2BasbiovariantgydF4y2Ba,如果输入gydF4y2BagroupedDatagydF4y2Ba对象变量信息,您可以使用gydF4y2BacreateVariantsgydF4y2Ba构建变体。gydF4y2Ba

适合选择国旗适合每个个人或池所有个人数据,指定为一个数字或逻辑gydF4y2Ba1gydF4y2Ba(gydF4y2Ba真正的gydF4y2Ba)或gydF4y2Ba0gydF4y2Ba(gydF4y2Ba假gydF4y2Ba)。gydF4y2Ba

当gydF4y2Ba真正的gydF4y2Ba,软件执行适合所有个人或团体同时使用相同的参数估计,和gydF4y2BafitResultsgydF4y2Ba是一个标量结果对象。gydF4y2Ba

当gydF4y2Ba假gydF4y2Ba,软件适合每个小组或个人单独使用群体——或细化参数,和gydF4y2BafitResultsgydF4y2Ba结果是一个向量对象为每个组一个结果。gydF4y2Ba

请注意gydF4y2Ba

使用这个选项来覆盖gydF4y2BaCategoryVariableNamegydF4y2Ba的值gydF4y2BaestiminfogydF4y2Ba。gydF4y2Ba

国旗使并行,指定为一个数字或逻辑gydF4y2Ba1gydF4y2Ba(gydF4y2Ba真正的gydF4y2Ba)或gydF4y2Ba0gydF4y2Ba(gydF4y2Ba假gydF4y2Ba)。如果gydF4y2Ba真正的gydF4y2Ba和并行计算工具箱™是可用的,gydF4y2BasbiofitgydF4y2Ba金宝app支持多种级别的并行化,但一次只使用一个级别。gydF4y2Ba

对于一个未共享fit (gydF4y2Ba池gydF4y2Ba=gydF4y2Ba假gydF4y2Ba)为多个组,每个适合并行地运行。gydF4y2Ba

池符合(gydF4y2Ba池gydF4y2Ba=gydF4y2Ba真正的gydF4y2Ba),解算器级别的并行发生。换句话说,求解计算,如目标函数评价,并行地运行。gydF4y2Ba

有关详细信息,请参见gydF4y2Ba并行多参数估计gydF4y2Ba。gydF4y2Ba

国旗使用参数敏感性,以确定目标函数的梯度,指定为一个数字或逻辑gydF4y2Ba1gydF4y2Ba(gydF4y2Ba真正的gydF4y2Ba)或gydF4y2Ba0gydF4y2Ba(gydF4y2Ba假gydF4y2Ba)。默认情况下,它是gydF4y2Ba真正的gydF4y2Ba为gydF4y2BafmincongydF4y2Ba,gydF4y2BafminuncgydF4y2Ba,gydF4y2BalsqnonlingydF4y2Ba,gydF4y2BalsqcurvefitgydF4y2Ba,gydF4y2BascattersearchgydF4y2Ba方法。否则,它是gydF4y2Ba假gydF4y2Ba。gydF4y2Ba

如果它是gydF4y2Ba真正的gydF4y2Ba,总是使用的软件gydF4y2Ba日晷gydF4y2Ba解算器,不管你选择什么gydF4y2BaSolverTypegydF4y2Ba财产的gydF4y2BaConfigsetgydF4y2Ba对象。gydF4y2Ba

软件使用步骤复杂近似法计算参数敏感性。这样计算敏感性可以用来确定目标函数的梯度在提高拟合参数估计。的默认行为gydF4y2BasbiofitgydF4y2Ba是使用这样的敏感性来确定基于梯度每当算法梯度如果SimBiology模型支持灵敏度分析。金宝app对细节要求和灵敏度分析的模型,看看gydF4y2Ba敏感性分析在SimBiologygydF4y2Ba。gydF4y2Ba

国旗显示参数估计的进展,指定为一个数字或逻辑gydF4y2Ba1gydF4y2Ba(gydF4y2Ba真正的gydF4y2Ba)或gydF4y2Ba0gydF4y2Ba(gydF4y2Ba假gydF4y2Ba)。如果gydF4y2Ba真正的gydF4y2Ba,一个新的图打开包含块。gydF4y2Ba

情节显示对数似,为每个迭代终止准则和估计参数。这个选项不支持金宝appgydF4y2BanlinfitgydF4y2Ba。gydF4y2Ba

如果您使用的是优化工具箱函数(gydF4y2BafminuncgydF4y2Ba,gydF4y2BafmincongydF4y2Ba,gydF4y2BalsqcurvefitgydF4y2Ba,gydF4y2BalsqnonlingydF4y2Ba),图中还显示了gydF4y2Ba一阶最优性gydF4y2Ba(优化工具箱)gydF4y2Ba情节。gydF4y2Ba

对于一个未共享健康,情节上的每一行代表一个独立的个体。池适合,一行代表所有人。行消退当配合完成。故事情节也当您运行跟踪进展gydF4y2BasbiofitgydF4y2Ba(汇集和未共享符合)并行使用远程集群。有关详细信息,请参见gydF4y2Ba情节进展gydF4y2Ba。gydF4y2Ba

输出参数gydF4y2Ba

全部折叠gydF4y2Ba

估计的结果,作为一个返回gydF4y2BaOptimResults对象gydF4y2Ba或gydF4y2BaNLINResults对象gydF4y2Ba这些对象或一个向量。这两个结果对象的子类gydF4y2BaLeastSquaresResults对象gydF4y2Ba。gydF4y2Ba

如果函数使用gydF4y2BanlinfitgydF4y2Ba(统计和机器学习的工具箱)gydF4y2Ba,然后gydF4y2BafitResultsgydF4y2Ba是一个gydF4y2BaNLINResults对象gydF4y2Ba。否则,gydF4y2BafitResultsgydF4y2Ba是一个gydF4y2BaOptimResults对象gydF4y2Ba。gydF4y2Ba

未共享的合适,功能符合每组分别使用与具体参数,和gydF4y2BafitResultsgydF4y2Ba结果是一个向量对象与一个为每组结果对象。gydF4y2Ba

池适合,函数执行适合所有个人或团体同时使用相同的参数估计,和gydF4y2BafitResultsgydF4y2Ba是一个标量结果对象。gydF4y2Ba

如果不指定混合选项gydF4y2BaCategoryVariableNamegydF4y2Ba的值gydF4y2BaestimatedInfogydF4y2Ba对象都是gydF4y2Ba<一>gydF4y2Ba,gydF4y2BafitResultsgydF4y2Ba是一个单一的结果对象。这是相同的行为作为一个集合。gydF4y2Ba

如果不指定混合选项gydF4y2BaCategoryVariableNamegydF4y2Ba的值gydF4y2BaestimatedInfogydF4y2Ba对象都是gydF4y2Ba< GroupVariableName >gydF4y2Ba,gydF4y2BafitResultsgydF4y2Ba结果是一个向量对象。这是相同的行为作为一个未共享。gydF4y2Ba

在所有其他情况下,gydF4y2BafitResultsgydF4y2Ba是一个标量对象包含估计参数值所指定的不同群体或类别gydF4y2BaCategoryVariableNamegydF4y2Ba。gydF4y2Ba

仿真结果,作为一个向量的返回gydF4y2BaSimDatagydF4y2Ba对象代表每个团体或个人的仿真结果。gydF4y2Ba

如果gydF4y2Ba“池”gydF4y2Ba选择是gydF4y2Ba假gydF4y2Ba,然后每个模拟使用与具体参数值。如果gydF4y2Ba真正的gydF4y2Ba,那么所有模拟使用相同的参数值(全民)。gydF4y2Ba

美国报道gydF4y2BasimdatagydF4y2Ba中包含的州吗gydF4y2BaResponseMapgydF4y2Ba输入参数和任何其他州中列出gydF4y2BaStatesToLoggydF4y2Ba运行时选项的属性(gydF4y2BaRuntimeOptionsgydF4y2Ba)SimBiology模型gydF4y2BasmgydF4y2Ba。gydF4y2Ba

更多关于gydF4y2Ba

全部折叠gydF4y2Ba

最大似然估计gydF4y2Ba

SimBiologygydF4y2Ba®gydF4y2Ba最大似然法估计参数。而不是直接最大化似然函数,SimBiology构造一个等价的最小化问题。只要有可能,制定作为加权最小二乘估计(gydF4y2BaWLSgydF4y2Ba)优化,最小化加权残差的平方和。否则,估计是制定的最小化的负面的对数可能性(gydF4y2Ba附近gydF4y2Ba)。的gydF4y2BaWLSgydF4y2Ba制定往往收敛比gydF4y2Ba附近gydF4y2Ba配方,SimBiology可以利用专业gydF4y2BaWLSgydF4y2Ba算法,如Levenberg-Marquardt算法实现gydF4y2BalsqnonlingydF4y2Ba和gydF4y2BalsqcurvefitgydF4y2Ba。SimBiology使用gydF4y2BaWLSgydF4y2Ba当有一个常数误差模型,比例,或指数。SimBiology使用gydF4y2Ba附近gydF4y2Ba如果你有一个误差模型或多级误差模型相结合,也就是说,每个响应的模型有一个错误。gydF4y2Ba

sbiofitgydF4y2Ba金宝app支持不同的优化方法,通过制定gydF4y2BaWLSgydF4y2Ba或gydF4y2Ba附近gydF4y2Ba表达式来最小化的优化方法。为简单起见,每个表达式所示假定只有一个误差模型和一个响应。如果有多个响应,SimBiology之和表达式对应的误差模型给出响应。gydF4y2Ba

表达式被最小化gydF4y2Ba
加权最小二乘(gydF4y2BaWLSgydF4y2Ba)gydF4y2Ba 常数误差模型,gydF4y2Ba ∑gydF4y2Ba 我gydF4y2Ba NgydF4y2Ba (gydF4y2Ba ygydF4y2Ba 我gydF4y2Ba −gydF4y2Ba fgydF4y2Ba 我gydF4y2Ba )gydF4y2Ba 2gydF4y2Ba
的比例误差模型,gydF4y2Ba ∑gydF4y2Ba 我gydF4y2Ba NgydF4y2Ba (gydF4y2Ba ygydF4y2Ba 我gydF4y2Ba −gydF4y2Ba fgydF4y2Ba 我gydF4y2Ba )gydF4y2Ba 2gydF4y2Ba fgydF4y2Ba 我gydF4y2Ba 2gydF4y2Ba /gydF4y2Ba fgydF4y2Ba ggydF4y2Ba 米gydF4y2Ba 2gydF4y2Ba
指数的误差模型,gydF4y2Ba ∑gydF4y2Ba 我gydF4y2Ba NgydF4y2Ba (gydF4y2Ba lngydF4y2Ba ygydF4y2Ba 我gydF4y2Ba −gydF4y2Ba lngydF4y2Ba fgydF4y2Ba 我gydF4y2Ba )gydF4y2Ba 2gydF4y2Ba
对数字的重量,gydF4y2Ba ∑gydF4y2Ba 我gydF4y2Ba NgydF4y2Ba (gydF4y2Ba ygydF4y2Ba 我gydF4y2Ba −gydF4y2Ba fgydF4y2Ba 我gydF4y2Ba )gydF4y2Ba 2gydF4y2Ba wgydF4y2Ba ggydF4y2Ba 米gydF4y2Ba /gydF4y2Ba wgydF4y2Ba 我gydF4y2Ba
负对数似(gydF4y2Ba附近gydF4y2Ba)gydF4y2Ba 综合误差模型和多级误差模型,gydF4y2Ba ∑gydF4y2Ba 我gydF4y2Ba NgydF4y2Ba (gydF4y2Ba ygydF4y2Ba 我gydF4y2Ba −gydF4y2Ba fgydF4y2Ba 我gydF4y2Ba )gydF4y2Ba 2gydF4y2Ba 2gydF4y2Ba σgydF4y2Ba 我gydF4y2Ba 2gydF4y2Ba +gydF4y2Ba ∑gydF4y2Ba 我gydF4y2Ba NgydF4y2Ba lngydF4y2Ba 2gydF4y2Ba πgydF4y2Ba σgydF4y2Ba 我gydF4y2Ba 2gydF4y2Ba

变量定义如下。gydF4y2Ba

NgydF4y2Ba

数量的实验观察gydF4y2Ba

ygydF4y2Ba我gydF4y2Ba

的gydF4y2Ba我gydF4y2Bath实验观察gydF4y2Ba

fgydF4y2Ba 我gydF4y2Ba

的预测价值gydF4y2Ba我gydF4y2Bath观察gydF4y2Ba

σgydF4y2Ba 我gydF4y2Ba

标准偏差的gydF4y2Ba我gydF4y2Ba观察。gydF4y2Ba

  • 常数误差模型,gydF4y2Ba σgydF4y2Ba 我gydF4y2Ba =gydF4y2Ba 一个gydF4y2Ba

  • 的比例误差模型,gydF4y2Ba σgydF4y2Ba 我gydF4y2Ba =gydF4y2Ba bgydF4y2Ba |gydF4y2Ba fgydF4y2Ba 我gydF4y2Ba |gydF4y2Ba

  • 对于合并后的误差模型,gydF4y2Ba σgydF4y2Ba 我gydF4y2Ba =gydF4y2Ba 一个gydF4y2Ba +gydF4y2Ba bgydF4y2Ba |gydF4y2Ba fgydF4y2Ba 我gydF4y2Ba |gydF4y2Ba

fgydF4y2Ba ggydF4y2Ba 米gydF4y2Ba

fgydF4y2Ba ggydF4y2Ba 米gydF4y2Ba =gydF4y2Ba (gydF4y2Ba ∏gydF4y2Ba 我gydF4y2Ba NgydF4y2Ba |gydF4y2Ba fgydF4y2Ba 我gydF4y2Ba |gydF4y2Ba )gydF4y2Ba 1gydF4y2Ba NgydF4y2Ba

wgydF4y2Ba 我gydF4y2Ba

的重量gydF4y2Ba我gydF4y2Bath预测值gydF4y2Ba

wgydF4y2Ba ggydF4y2Ba 米gydF4y2Ba

wgydF4y2Ba ggydF4y2Ba 米gydF4y2Ba =gydF4y2Ba (gydF4y2Ba ∏gydF4y2Ba 我gydF4y2Ba NgydF4y2Ba wgydF4y2Ba 我gydF4y2Ba )gydF4y2Ba 1gydF4y2Ba NgydF4y2Ba

当您使用数字权重或加权函数,权重是假定为误差的方差成反比,也就是说,gydF4y2Ba σgydF4y2Ba 我gydF4y2Ba 2gydF4y2Ba =gydF4y2Ba 一个gydF4y2Ba 2gydF4y2Ba wgydF4y2Ba 我gydF4y2Ba 在哪里gydF4y2Ba一个gydF4y2Ba是常数误差参数。如果你使用重量,你不能指定一个误差模型除了常数误差模型。gydF4y2Ba

各种优化方法有不同要求的函数最小化。一些模型参数估计方法,独立地执行错误的估计模型参数。下表总结了误差模型和任何单独的公式用于误差模型参数的估计gydF4y2Ba一个gydF4y2Ba和gydF4y2BabgydF4y2Ba误差模型参数和吗gydF4y2BaegydF4y2Ba是标准的均值为0和unit-variance(高斯)变量。gydF4y2Ba

误差模型gydF4y2Ba 参数估计误差函数gydF4y2Ba
“不变”gydF4y2Ba:gydF4y2Ba ygydF4y2Ba 我gydF4y2Ba =gydF4y2Ba fgydF4y2Ba 我gydF4y2Ba +gydF4y2Ba 一个gydF4y2Ba egydF4y2Ba 一个gydF4y2Ba 2gydF4y2Ba =gydF4y2Ba 1gydF4y2Ba NgydF4y2Ba ∑gydF4y2Ba 我gydF4y2Ba NgydF4y2Ba (gydF4y2Ba ygydF4y2Ba 我gydF4y2Ba −gydF4y2Ba fgydF4y2Ba 我gydF4y2Ba )gydF4y2Ba 2gydF4y2Ba
“指数”gydF4y2Ba:gydF4y2Ba ygydF4y2Ba 我gydF4y2Ba =gydF4y2Ba fgydF4y2Ba 我gydF4y2Ba 经验值gydF4y2Ba (gydF4y2Ba 一个gydF4y2Ba egydF4y2Ba )gydF4y2Ba 一个gydF4y2Ba 2gydF4y2Ba =gydF4y2Ba 1gydF4y2Ba NgydF4y2Ba ∑gydF4y2Ba 我gydF4y2Ba NgydF4y2Ba (gydF4y2Ba lngydF4y2Ba ygydF4y2Ba 我gydF4y2Ba −gydF4y2Ba lngydF4y2Ba fgydF4y2Ba 我gydF4y2Ba )gydF4y2Ba 2gydF4y2Ba
“比例”gydF4y2Ba:gydF4y2Ba ygydF4y2Ba 我gydF4y2Ba =gydF4y2Ba fgydF4y2Ba 我gydF4y2Ba +gydF4y2Ba bgydF4y2Ba |gydF4y2Ba fgydF4y2Ba 我gydF4y2Ba |gydF4y2Ba egydF4y2Ba bgydF4y2Ba 2gydF4y2Ba =gydF4y2Ba 1gydF4y2Ba NgydF4y2Ba ∑gydF4y2Ba 我gydF4y2Ba NgydF4y2Ba (gydF4y2Ba ygydF4y2Ba 我gydF4y2Ba −gydF4y2Ba fgydF4y2Ba 我gydF4y2Ba fgydF4y2Ba 我gydF4y2Ba )gydF4y2Ba 2gydF4y2Ba
“组合”gydF4y2Ba:gydF4y2Ba ygydF4y2Ba 我gydF4y2Ba =gydF4y2Ba fgydF4y2Ba 我gydF4y2Ba +gydF4y2Ba (gydF4y2Ba 一个gydF4y2Ba +gydF4y2Ba bgydF4y2Ba |gydF4y2Ba fgydF4y2Ba 我gydF4y2Ba |gydF4y2Ba )gydF4y2Ba egydF4y2Ba 包含在最小化误差参数。gydF4y2Ba
权重gydF4y2Ba 一个gydF4y2Ba 2gydF4y2Ba =gydF4y2Ba 1gydF4y2Ba NgydF4y2Ba ∑gydF4y2Ba 我gydF4y2Ba NgydF4y2Ba (gydF4y2Ba ygydF4y2Ba 我gydF4y2Ba −gydF4y2Ba fgydF4y2Ba 我gydF4y2Ba )gydF4y2Ba 2gydF4y2Ba wgydF4y2Ba 我gydF4y2Ba

请注意gydF4y2Ba

nlinfitgydF4y2Ba只支持单一金宝app误差模型,而不是多级误差模型,也就是说,response-specific误差模型。综合误差模型,它使用一个迭代gydF4y2BaWLSgydF4y2Ba算法。对于其他误差模型,它使用gydF4y2BaWLSgydF4y2Ba算法如前所述。有关详细信息,请参见gydF4y2BanlinfitgydF4y2Ba(统计和机器学习的工具箱)gydF4y2Ba。gydF4y2Ba

默认选项估计算法gydF4y2Ba

下面的表总结了各种估计函数的默认选项。gydF4y2Ba

函数gydF4y2Ba 默认选项gydF4y2Ba
nlinfitgydF4y2Ba(统计和机器学习的工具箱)gydF4y2Ba

sbiofitgydF4y2Ba使用默认选项结构联系在一起gydF4y2BanlinfitgydF4y2Ba,除了:gydF4y2Ba

FunValCheck = '了'gydF4y2Ba
DerivStep = max (eps ^(1/3),最小值(1的军医,SolverOptions.RelativeTolerance))gydF4y2Ba,那里的gydF4y2BaSolverOptionsgydF4y2Ba属性对应于模型的活动gydF4y2Baconfigset对象gydF4y2Ba。gydF4y2Ba
fmincongydF4y2Ba(优化工具箱)gydF4y2Ba

sbiofitgydF4y2Ba使用默认选项结构联系在一起gydF4y2BafmincongydF4y2Ba,除了:gydF4y2Ba

显示= '了'gydF4y2Ba
FunctionTolerance = 1 e-6 * abs (f0)gydF4y2Ba,在那里gydF4y2Baf0gydF4y2Ba是目标函数的初始值。gydF4y2Ba
OptimalityTolerance = 1 e-6 * abs (f0)gydF4y2Ba,在那里gydF4y2Baf0gydF4y2Ba是目标函数的初始值。gydF4y2Ba
算法= ' trust-region-reflective 'gydF4y2Ba当gydF4y2Ba“SensitivityAnalysis”gydF4y2Ba是真的,或gydF4y2Ba“内点”gydF4y2Ba当gydF4y2Ba“SensitivityAnalysis”gydF4y2Ba是假的。gydF4y2Ba
FiniteDifferenceStepSize = max (eps ^(1/3),最小值(1的军医,SolverOptions.RelativeTolerance))gydF4y2Ba,那里的gydF4y2BaSolverOptionsgydF4y2Ba属性对应于模型活跃gydF4y2Baconfigset对象gydF4y2Ba。gydF4y2Ba
TypicalX = 1 e-6 * x0gydF4y2Ba,在那里gydF4y2Bax0gydF4y2Ba是一个数组的初步估计。gydF4y2Ba
fminuncgydF4y2Ba(优化工具箱)gydF4y2Ba

sbiofitgydF4y2Ba使用默认选项结构联系在一起gydF4y2BafminuncgydF4y2Ba,除了:gydF4y2Ba

显示= '了'gydF4y2Ba
FunctionTolerance = 1 e-6 * abs (f0)gydF4y2Ba,在那里gydF4y2Baf0gydF4y2Ba是目标函数的初始值。gydF4y2Ba
OptimalityTolerance = 1 e-6 * abs (f0)gydF4y2Ba,在那里gydF4y2Baf0gydF4y2Ba是目标函数的初始值。gydF4y2Ba
= '信赖域算法gydF4y2Ba当gydF4y2Ba“SensitivityAnalysis”gydF4y2Ba是真的,或gydF4y2Ba“拟牛顿”gydF4y2Ba当gydF4y2Ba“SensitivityAnalysis”gydF4y2Ba是假的。gydF4y2Ba
FiniteDifferenceStepSize = max (eps ^(1/3),最小值(1的军医,SolverOptions.RelativeTolerance))gydF4y2Ba,那里的gydF4y2BaSolverOptionsgydF4y2Ba属性对应于模型活跃gydF4y2Baconfigset对象gydF4y2Ba。gydF4y2Ba
TypicalX = 1 e-6 * x0gydF4y2Ba,在那里gydF4y2Bax0gydF4y2Ba是一个数组的初步估计。gydF4y2Ba
fminsearchgydF4y2Ba

sbiofitgydF4y2Ba使用默认选项结构联系在一起gydF4y2BafminsearchgydF4y2Ba,除了:gydF4y2Ba

显示= '了'gydF4y2Ba
TolFun = 1 e-6 * abs (f0)gydF4y2Ba,在那里gydF4y2Baf0gydF4y2Ba是目标函数的初始值。gydF4y2Ba
lsqcurvefitgydF4y2Ba(优化工具箱)gydF4y2Ba,gydF4y2BalsqnonlingydF4y2Ba(优化工具箱)gydF4y2Ba

需要优化工具箱。gydF4y2Ba

sbiofitgydF4y2Ba使用默认选项结构联系在一起gydF4y2BalsqcurvefitgydF4y2Ba和gydF4y2BalsqnonlingydF4y2Ba,除了:gydF4y2Ba

显示= '了'gydF4y2Ba
FunctionTolerance = 1 e-6 *规范(f0)gydF4y2Ba,在那里gydF4y2Baf0gydF4y2Ba是目标函数的初始值。gydF4y2Ba
OptimalityTolerance = 1 e-6 *规范(f0)gydF4y2Ba,在那里gydF4y2Baf0gydF4y2Ba是目标函数的初始值。gydF4y2Ba
FiniteDifferenceStepSize = max (eps ^(1/3),最小值(1的军医,SolverOptions.RelativeTolerance))gydF4y2Ba,那里的gydF4y2BaSolverOptionsgydF4y2Ba属性对应于模型活跃gydF4y2Baconfigset对象gydF4y2Ba。gydF4y2Ba
TypicalX = 1 e-6 * x0gydF4y2Ba,在那里gydF4y2Bax0gydF4y2Ba是一个数组的初步估计。gydF4y2Ba
patternsearchgydF4y2Ba(全局优化工具箱)gydF4y2Ba

需要gydF4y2Ba全局优化工具箱gydF4y2Ba。gydF4y2Ba

sbiofitgydF4y2Ba使用默认选项对象(gydF4y2BaoptimoptionsgydF4y2Ba)与gydF4y2BapatternsearchgydF4y2Ba,除了:gydF4y2Ba

显示= '了'gydF4y2Ba
FunctionTolerance = 1 e-6 * abs (f0)gydF4y2Ba,在那里gydF4y2Baf0gydF4y2Ba是目标函数的初始值。gydF4y2Ba
MeshTolerance = 1.0 e - 3gydF4y2Ba
AccelerateMesh = truegydF4y2Ba
遗传算法gydF4y2Ba(全局优化工具箱)gydF4y2Ba

需要gydF4y2Ba全局优化工具箱gydF4y2Ba。gydF4y2Ba

sbiofitgydF4y2Ba使用默认选项对象(gydF4y2BaoptimoptionsgydF4y2Ba)与gydF4y2Ba遗传算法gydF4y2Ba,除了:gydF4y2Ba

显示= '了'gydF4y2Ba
FunctionTolerance = 1 e-6 * abs (f0)gydF4y2Ba,在那里gydF4y2Baf0gydF4y2Ba是目标函数的初始值。gydF4y2Ba
MutationFcn = @mutationadaptfeasiblegydF4y2Ba
particleswarmgydF4y2Ba(全局优化工具箱)gydF4y2Ba

需要全局优化工具箱。gydF4y2Ba

sbiofitgydF4y2Ba使用下面的默认选项gydF4y2BaparticleswarmgydF4y2Ba算法,除了:gydF4y2Ba

显示= '了'gydF4y2Ba
FunctionTolerance = 1 e-6 * abs (f0)gydF4y2Ba,在那里gydF4y2Baf0gydF4y2Ba是目标函数的初始值。gydF4y2Ba
InitialSwarmSpan = 2000或8gydF4y2Ba;gydF4y2Ba2000年gydF4y2Ba估计参数没有改变;gydF4y2Ba8gydF4y2Ba在估计参数gydF4y2Ba日志gydF4y2Ba,gydF4y2Ba分对数gydF4y2Ba,或gydF4y2BaprobitgydF4y2Ba变换。gydF4y2Ba

scattersearchgydF4y2Ba 看到gydF4y2Ba分散搜索算法gydF4y2Ba。gydF4y2Ba

分散搜索算法gydF4y2Ba

的gydF4y2BascattersearchgydF4y2Ba方法实现了一种全局优化算法gydF4y2Ba[2]gydF4y2Ba解决一些挑战动态模型的参数估计,如收敛到局部最小值。gydF4y2Ba

算法概述gydF4y2Ba

该算法选择的一个子集点从最初的点。子集,有些点是最好的质量(即最低函数值)和一些随机选择。算法迭代评估分,探索不同的方向在各种解决方案,找到更好的解决方案。金宝搏官方网站在这个迭代步骤中,该算法用一个新的替换旧的解决方案更好的质量。迭代进行直到任何停止标准得到满足。然后运行一个地方解决最好的点。gydF4y2Ba

初始化gydF4y2Ba

开始分散搜索,算法首先决定所需的点总数(gydF4y2BaNumInitialPointsgydF4y2Ba)。默认情况下,总gydF4y2Ba10 *gydF4y2BaNgydF4y2Ba,在那里gydF4y2BaNgydF4y2Ba是估计的数量参数。它选择gydF4y2BaNumInitialPointsgydF4y2Ba点(行)gydF4y2BaInitialPointMatrixgydF4y2Ba。如果gydF4y2BaInitialPointMatrixgydF4y2Ba没有足够的点,算法调用函数中定义gydF4y2BaCreationFcngydF4y2Ba生成所需的附加分。默认情况下,拉丁超立方体抽样用于生成这些额外的点。该算法选择的一个子集gydF4y2BaNumTrialPointsgydF4y2Ba分gydF4y2BaNumInitialPointsgydF4y2Ba点。(一小部分gydF4y2BaFractionInitialBestgydF4y2Ba)的子集包含在质量上最好的点。剩下的点是随机选择的子集。gydF4y2Ba

迭代步骤gydF4y2Ba

子集的算法迭代点如下:gydF4y2Ba

  1. 定义hyper-rectangles大约每一对点通过使用相对素质(也就是说,函数值),这些点的测量偏差来创建这些矩形。gydF4y2Ba

  2. 评估一个新的解决方案在每个矩形。如果新的解决方案优于原方案,用新的替换原来的。gydF4y2Ba

  3. 超越战略适用于改进的解决方案和开发有前途的方向找到更好的解决方案。金宝搏官方网站gydF4y2Ba

  4. 运行在每个本地搜索gydF4y2BaLocalSearchIntervalgydF4y2Ba迭代。使用gydF4y2BaLocalSelectBestProbabilitygydF4y2Ba概率选择最好的点作为本地搜索的起点。默认情况下,这个决定是随机的,给予平等的机会来选择最好的点或一个随机点的点。如果新的解决方案优于旧的解决方案,取代旧的与新的。gydF4y2Ba

  5. 替换任何停滞点,不会产生任何新的超越后的解决方案gydF4y2BaMaxStallTimegydF4y2Ba秒和另一个从初始点。gydF4y2Ba

  6. 评估停止标准。停止迭代是否满足标准。gydF4y2Ba

然后算法运行本地解算器的最佳点。gydF4y2Ba

停止条件gydF4y2Ba

该算法迭代,直到它到达停止准则。gydF4y2Ba

停止选项gydF4y2Ba 停止测试gydF4y2Ba
FunctionTolerancegydF4y2Ba和gydF4y2BaMaxStallIterationsgydF4y2Ba

相对最好的目标函数值的变化在过去gydF4y2BaMaxStallIterationsgydF4y2Ba小于gydF4y2BaFunctionTolerancegydF4y2Ba。gydF4y2Ba

MaxIterationsgydF4y2Ba

的迭代次数达到gydF4y2BaMaxIterationsgydF4y2Ba。gydF4y2Ba

OutputFcngydF4y2Ba

OutputFcngydF4y2Ba可以停止迭代。gydF4y2Ba

ObjectiveLimitgydF4y2Ba

最好的目标函数值小于或等于一个迭代gydF4y2BaObjectiveLimitgydF4y2Ba。gydF4y2Ba

MaxStallTimegydF4y2Ba

最好的目标函数值没有改变gydF4y2BaMaxStallTimegydF4y2Ba秒。gydF4y2Ba

MaxTimegydF4y2Ba

函数运行时间超过gydF4y2BaMaxTimegydF4y2Ba秒。gydF4y2Ba

算法的选择gydF4y2Ba

算法使用您创建的选项gydF4y2Ba结构体gydF4y2Ba。gydF4y2Ba

选项gydF4y2Ba 描述gydF4y2Ba
CreationFcngydF4y2Ba

句柄函数创建所需的额外点算法。默认是特征向量gydF4y2Ba“汽车”gydF4y2Ba使用拉丁超立方体抽样。gydF4y2Ba

函数签名:gydF4y2Ba点= CreationFcn (s、N,磅,乌兰巴托)gydF4y2Ba,在那里gydF4y2Ba年代gydF4y2Ba采样点的总数,gydF4y2BaNgydF4y2Ba是估计的数量参数,gydF4y2Ba磅gydF4y2Ba是下界,gydF4y2Ba乌兰巴托gydF4y2Ba是上界。如果任何的输出函数超过界限,这些结果截断边界。gydF4y2Ba

显示gydF4y2Ba

水平显示返回到命令行中。gydF4y2Ba

  • “关闭”gydF4y2Ba或gydF4y2Ba“没有”gydF4y2Ba(默认)显示没有输出。gydF4y2Ba

  • “通路”gydF4y2Ba给出了迭代显示。gydF4y2Ba

  • “最后一次”gydF4y2Ba显示最终的输出。gydF4y2Ba

FractionInitialBestgydF4y2Ba

数字的标量gydF4y2Ba0gydF4y2Ba通过gydF4y2Ba1gydF4y2Ba。默认是gydF4y2Ba0.5gydF4y2Ba。这个数字的分数gydF4y2BaNumTrialPointsgydF4y2Ba被选为最佳的点gydF4y2BaNumInitialPointsgydF4y2Ba点。gydF4y2Ba

FunctionTolerancegydF4y2Ba

数字的标量gydF4y2Ba0gydF4y2Ba通过gydF4y2Ba1gydF4y2Ba。默认是gydF4y2Ba1 e-6gydF4y2Ba。解算器停止如果最佳目标函数的相对变化值在过去gydF4y2BaMaxStallIterationsgydF4y2Ba小于gydF4y2BaFunctionTolerancegydF4y2Ba。这个选项还用于删除重复的当地的解决方案。金宝搏官方网站看到gydF4y2BaXTolerancegydF4y2Ba获取详细信息。gydF4y2Ba

InitialPointMatrixgydF4y2Ba

初始点集(或部分)。gydF4y2Ba米gydF4y2Ba——- - - - - -gydF4y2BaNgydF4y2Ba真正的有限元矩阵,在那里gydF4y2Ba米gydF4y2Ba分和的数量吗gydF4y2BaNgydF4y2Ba是估计的数量参数。gydF4y2Ba

如果gydF4y2Ba米gydF4y2Ba< NumInitialPointsgydF4y2Ba,然后gydF4y2BascattersearchgydF4y2Ba创造了更多的点,这样总行数gydF4y2BaNumInitialPointsgydF4y2Ba。gydF4y2Ba

如果gydF4y2Ba米gydF4y2Ba> NumInitialPointsgydF4y2Ba,然后gydF4y2BascattersearchgydF4y2Ba使用第一个gydF4y2BaNumInitialPointsgydF4y2Ba行。gydF4y2Ba

默认的初始转换值存储在估计参数gydF4y2BaInitialTransformedValuegydF4y2Ba财产的gydF4y2BaEstimatedInfo对象gydF4y2Ba,也就是说,gydF4y2Ba(estiminfo.InitialTransformedValue)gydF4y2Ba。gydF4y2Ba

LocalOptionsgydF4y2Ba

选择当地的解决者。它可以是一个gydF4y2Ba结构体gydF4y2Ba(创建gydF4y2BaoptimsetgydF4y2Ba或gydF4y2BastatsetgydF4y2Ba(统计和机器学习的工具箱)gydF4y2Ba)或一个gydF4y2BaoptimoptionsgydF4y2Ba(优化工具箱)gydF4y2Ba对象,根据当地的解决者。默认是特征向量gydF4y2Ba“汽车”gydF4y2Ba使用默认选项的选择的解决一些gydF4y2Ba异常gydF4y2Ba。除了这些例外,以下选项限制时间在当地解决,因为它是反复调用:gydF4y2Ba

  • MaxFunEvalsgydF4y2Ba(评估函数允许的最大数量)=gydF4y2Ba300年gydF4y2Ba

  • 麦克斯特gydF4y2Ba(最大允许的迭代次数)=gydF4y2Ba200年gydF4y2Ba

LocalSearchIntervalgydF4y2Ba

正整数。默认是gydF4y2Ba10gydF4y2Ba。的gydF4y2BascattersearchgydF4y2Ba算法适用于解决当地的一个试验第一次迭代后,每一个点gydF4y2BaLocalSearchIntervalgydF4y2Ba迭代。gydF4y2Ba

LocalSelectBestProbabilitygydF4y2Ba

数字的标量gydF4y2Ba0gydF4y2Ba通过gydF4y2Ba1gydF4y2Ba。默认是gydF4y2Ba0.5gydF4y2Ba。这是选择最佳的点的概率作为本地搜索的起点。在其他情况下,一个审判的点是随机选择的。gydF4y2Ba

LocalSolvergydF4y2Ba

特征向量或字符串指定本地解决者的名字。金宝app支持方法gydF4y2Ba“fminsearch”gydF4y2Ba,gydF4y2Ba“lsqnonlin”gydF4y2Ba,gydF4y2Ba“lsqcurvefit”gydF4y2Ba,gydF4y2Ba“fmincon”gydF4y2Ba,gydF4y2Ba“fminunc”gydF4y2Ba,gydF4y2Ba“nlinfit”gydF4y2Ba。gydF4y2Ba

选择默认本地解决以下重点:gydF4y2Ba

  • 如果优化工具箱可用,解算器gydF4y2BalsqnonlingydF4y2Ba。gydF4y2Ba

  • 如果统计和机器学习工具可用,解算器gydF4y2BanlinfitgydF4y2Ba。gydF4y2Ba

  • 否则,解算器gydF4y2BafminsearchgydF4y2Ba。gydF4y2Ba

MaxIterationsgydF4y2Ba

正整数。默认是特征向量gydF4y2Ba“汽车”gydF4y2Ba代表gydF4y2Ba20 *gydF4y2BaNgydF4y2Ba,在那里gydF4y2BaNgydF4y2Ba是估计的数量参数。gydF4y2Ba

MaxStallIterationsgydF4y2Ba

正整数。默认是gydF4y2Ba50gydF4y2Ba。解算器停止如果最好的目标函数的相对变化值在过去gydF4y2BaMaxStallIterationsgydF4y2Ba迭代小于gydF4y2BaFunctionTolerancegydF4y2Ba。gydF4y2Ba

MaxStallTimegydF4y2Ba

积极的标量。默认是gydF4y2Ba正gydF4y2Ba。解算器停止如果gydF4y2BaMaxStallTimegydF4y2Ba秒已经过去了自从上次改善的最好目标函数值。在这里,时间是挂钟时间而不是处理器周期。gydF4y2Ba

MaxTimegydF4y2Ba

积极的标量。默认是gydF4y2Ba正gydF4y2Ba。解算器停止如果gydF4y2BaMaxTimegydF4y2Ba秒了搜索的开始。这里的时间意味着挂钟时间而不是处理器周期。gydF4y2Ba

NumInitialPointsgydF4y2Ba

正整数,gydF4y2Ba> = NumTrialPointsgydF4y2Ba。解算器生成gydF4y2BaNumInitialPointsgydF4y2Ba点之前选择试验的一个子集点(gydF4y2BaNumTrialPointsgydF4y2Ba为后续步骤)。默认是特征向量gydF4y2Ba“汽车”gydF4y2Ba代表gydF4y2Ba10 *gydF4y2BaNgydF4y2Ba,在那里gydF4y2BaNgydF4y2Ba是估计的数量参数。gydF4y2Ba

NumTrialPointsgydF4y2Ba

正整数,gydF4y2Ba> = 2gydF4y2Ba和gydF4y2Ba< = NumInitialPointsgydF4y2Ba。解算器生成gydF4y2BaNumInitialPointsgydF4y2Ba初始点选择一个子集审判之前点(gydF4y2BaNumTrialPointsgydF4y2Ba为后续步骤)。默认是特征向量gydF4y2Ba“汽车”gydF4y2Ba代表第一个偶数gydF4y2BangydF4y2Ba的gydF4y2Ba ngydF4y2Ba 2gydF4y2Ba −gydF4y2Ba ngydF4y2Ba ≥gydF4y2Ba 10gydF4y2Ba *gydF4y2Ba NgydF4y2Ba ,在那里gydF4y2BaNgydF4y2Ba是估计的数量参数。gydF4y2Ba

ObjectiveLimitgydF4y2Ba

标量。默认是gydF4y2Ba负gydF4y2Ba。解算器停止如果最好的迭代目标函数值小于或等于gydF4y2BaObjectiveLimitgydF4y2Ba。gydF4y2Ba

OutputFcngydF4y2Ba

函数处理或处理单元阵列的功能。输出函数可以读取迭代数据解算器和停止。默认是gydF4y2Ba[]gydF4y2Ba。gydF4y2Ba

输出函数签名gydF4y2Ba停止= myfun (optimValues状态)gydF4y2Ba,地点:gydF4y2Ba

  • 停止gydF4y2Ba是一个逻辑标量。设置为gydF4y2Ba真正的gydF4y2Ba解算器。gydF4y2Ba

  • optimValuesgydF4y2Ba是一个结构,它包含关于审判分字段的信息。gydF4y2Ba

    • bestxgydF4y2Ba是最好的解决方案点发现,对应的函数值gydF4y2BabestfvalgydF4y2Ba。gydF4y2Ba

    • bestfvalgydF4y2Ba是最好的(最低)目标函数值。gydF4y2Ba

    • 迭代gydF4y2Ba是迭代数。gydF4y2Ba

    • medianfvalgydF4y2Ba目标函数的平均值在所有当前审判点。gydF4y2Ba

    • stalliterationsgydF4y2Ba是上次的迭代次数的变化gydF4y2BabestfvalgydF4y2Ba。gydF4y2Ba

    • trialxgydF4y2Ba是一个矩阵点目前的审判。每一行代表一个点,等于的行数gydF4y2BaNumTrialPointsgydF4y2Ba。gydF4y2Ba

    • trialfvalsgydF4y2Ba审判是一个向量的目标函数值点。这是一个矩阵gydF4y2BalsqcurvefitgydF4y2Ba和gydF4y2BalsqnonlingydF4y2Ba方法。gydF4y2Ba

  • 状态gydF4y2Ba是一个特征向量为当前迭代的状态。gydF4y2Ba

    • “init”gydF4y2Ba——解决尚未开始进行迭代。输出函数可以使用这个状态打开的文件,或建立数据结构或情节后续迭代。gydF4y2Ba

    • “通路”gydF4y2Ba——解算器进行迭代。通常情况下,这种状态就是你的输出函数执行其工作。gydF4y2Ba

    • “完成”gydF4y2Ba——解决达到停止准则。您的输出函数可以使用这个状态来清理,比如关闭任何文件。gydF4y2Ba

TrialStallLimitgydF4y2Ba

正整数,默认值gydF4y2Ba22gydF4y2Ba。如果一个特定的试验并不会改善gydF4y2BaTrialStallLimitgydF4y2Ba迭代,取而代之的是另一个点。gydF4y2Ba

UseParallelgydF4y2Ba

逻辑信号并行计算目标函数。默认是gydF4y2Ba假gydF4y2Ba。gydF4y2Ba

XTolerancegydF4y2Ba

数字的标量gydF4y2Ba0gydF4y2Ba通过gydF4y2Ba1gydF4y2Ba。默认是gydF4y2Ba1 e-6gydF4y2Ba。这个选项定义了如何关闭两个点必须考虑它们相同的用于创建矢量当地的解决方案。金宝搏官方网站解算器计算两个点之间的距离gydF4y2Ba规范gydF4y2Ba欧氏距离。如果两个解决方金宝搏官方网站案gydF4y2BaXTolerancegydF4y2Ba彼此的距离,目标函数值gydF4y2BaFunctionTolerancegydF4y2Ba彼此的解决者认为他们是相同的。如果两个条件不满足,解算器报告的解决方案是截然不同的。金宝搏官方网站gydF4y2Ba

每一个潜在的局部最小值的报告,集合gydF4y2BaXTolerancegydF4y2Ba来gydF4y2Ba0gydF4y2Ba。少的报告结果,集gydF4y2BaXTolerancegydF4y2Ba更大的价值。gydF4y2Ba

并行多参数估计gydF4y2Ba

有两种方法可以使用并行计算参数估计。gydF4y2Ba

集gydF4y2Ba“UseParallel”gydF4y2Ba为真gydF4y2Ba

为使并行化gydF4y2BasbiofitgydF4y2Ba,设置名称-值对gydF4y2Ba“UseParallel”gydF4y2Ba来gydF4y2Ba真正的gydF4y2Ba。函数支持多种级别的并行化,金宝app但一次只使用一个级别。gydF4y2Ba

  • 对于一个未共享适合多个组(或个人),每组并行运行。gydF4y2Ba

  • 一池符合多个组使用一个平行的解算器选项,并行解算器级别的发生。也就是说,gydF4y2BasbiofitgydF4y2Ba集并行选择相应的估计方法(解决)gydF4y2Ba真正的gydF4y2Ba和目标函数的评价是并行执行的。例如,基于对梯度方法(如gydF4y2BalsqnonlingydF4y2Ba),梯度可能是并行计算。如果解决不是已经并行执行,然后模拟(不同的组)是并行运行。gydF4y2Ba

    如果你有一个单一的组和使用解决没有平行的选项,设置gydF4y2BaUseParallel = truegydF4y2Ba将运行在并行,但仍然运行模拟连续工人。因此,它不可能是有益的,使并行,因为工人所需的时间开销。这可能是快没有并行运行。gydF4y2Ba

使用gydF4y2BaparfevalgydF4y2Ba或gydF4y2BaparforgydF4y2Ba

你也可以叫gydF4y2BasbiofitgydF4y2Ba在一个gydF4y2BaparforgydF4y2Ba循环或使用gydF4y2BaparfevalgydF4y2Ba在一个gydF4y2Ba为gydF4y2Ba循环并行执行多个参数估计。建议您使用gydF4y2BaparfevalgydF4y2Ba因为这些并行估计异步运行。如果一个适合产生一个错误,它不影响其他适合。gydF4y2Ba

如果你想找到一个全球最低,您可以使用全球解决者,如gydF4y2BaparticleswarmgydF4y2Ba(全局优化工具箱)gydF4y2Ba或gydF4y2Ba遗传算法gydF4y2Ba(全局优化工具箱)gydF4y2Ba(gydF4y2Ba全局优化工具箱gydF4y2Ba是必需的)。然而,如果你想定义初始条件和运行符合并行,看到下面的例子,展示了如何使用两种gydF4y2BaparforgydF4y2Ba和gydF4y2BaparfevalgydF4y2Ba。gydF4y2Ba

模型和数据设置gydF4y2Ba

加载G蛋白模型。gydF4y2Ba

sbioloadprojectgydF4y2BagproteingydF4y2Ba

存储实验数据包含的时间进程的一部分积极的G蛋白gydF4y2Ba[1]gydF4y2Ba。gydF4y2Ba

时间= [0 10 30 60 110 210 300 450 600)';GaFracExpt = [0 0.35 0.4 0.36 0.39 0.33 0.24 0.17 0.2) ';gydF4y2Ba

创建一个gydF4y2BagroupedData对象gydF4y2Ba基于实验数据。gydF4y2Ba

台=表(时间、GaFracExpt);grpData = groupedData(台);gydF4y2Ba

适当的模型元素映射到实验数据。gydF4y2Ba

responseMap =gydF4y2Ba“GaFrac = GaFracExpt”gydF4y2Ba;gydF4y2Ba

指定的参数估计。gydF4y2Ba

paramToEstimate = {gydF4y2Ba“kGd”gydF4y2Ba};gydF4y2Ba

生成初始参数值gydF4y2BakGdgydF4y2Ba。gydF4y2Ba

rng (gydF4y2Ba“默认”gydF4y2Ba);iniVal = abs (normrnd(0.01, 1, 10日1));fitResultPar = [];gydF4y2Ba

平行池设置gydF4y2Ba

开始一个平行池使用本地配置文件。gydF4y2Ba

poolObj = parpool (gydF4y2Ba“本地”gydF4y2Ba);gydF4y2Ba
开始平行池(parpool)使用“本地”概要文件…连接到平行池(工人数量:6)。gydF4y2Ba

使用gydF4y2BaparfevalgydF4y2Ba(推荐)gydF4y2Ba

首先,定义一个函数处理,使用本地函数gydF4y2BasbiofitpargydF4y2Ba估计。确保功能gydF4y2BasbiofitpargydF4y2Ba定义的脚本。gydF4y2Ba

optimfun = @ (x) sbiofitpar (m1, grpData responseMap x);gydF4y2Ba

通过并行执行多个参数估计gydF4y2BaparfevalgydF4y2Ba使用不同的初始参数值。gydF4y2Ba

为gydF4y2Bai = 1:长度(iniVal) f (i) = parfeval (optimfun 1 iniVal(我));gydF4y2Ba结束gydF4y2BafitResultPar = fetchOutputs (f);gydF4y2Ba

总结每次运行的结果。gydF4y2Ba

allParValues = vertcat (fitResultPar.ParameterEstimates);allParValues。LogLikelihood = [fitResultPar.LogLikelihood] ';allParValues。RunNumber =(1:长度(iniVal)) ';allParValues。的名字=分类(一个llParValues.Name); allParValues.InitialValue = iniVal;%重新排列列。gydF4y2BaallParValues = allParValues(:[5 1 2 3 4) 6日);gydF4y2Ba%按照LogLikelihood行排序。gydF4y2Basortrows (allParValuesgydF4y2Ba“LogLikelihood”gydF4y2Ba)gydF4y2Ba
ans =gydF4y2Ba10×6表gydF4y2BaInitialValue RunNumber名字估计StandardError LogLikelihood _____ _____ _______ ________ _________________ _________________ 9 10 kGd kGd 3.5884 3.022 0.127 -1.2843 2.7794 2.779 0.029701 -1.2319 - 3 kGd 2.2488 2.2488 0.096013 -1.0786 - 2 6 kGd kGd 1.8439 1.844 0.28825 -0.90104 1.2977 1.2977 0.011344 -0.48209 - 4 kGd 0.54767 0.54776 0.0020424 1.5323 0.87217 0.65951 0.003583 0.9279 1 kGd 7 8 kGd kGd 0.42359 0.42363 0.0024555 2.6097 0.35262 0.35291 0.00065289 3.6098 - 5 kGd 0.32877 0.32877 0.00042474 4.0604gydF4y2Ba

定义本地函数gydF4y2BasbiofitpargydF4y2Ba执行参数估计使用gydF4y2BasbiofitgydF4y2Ba。gydF4y2Ba

函数gydF4y2Bafitresult = sbiofitpar(模型、grpData responseMap initialValue) estimatedParam = estimatedInfo (gydF4y2Ba“kGd”gydF4y2Ba);estimatedParam。InitialValue = InitialValue;fitresult = sbiofit(模型、grpData responseMap estimatedParam);gydF4y2Ba结束gydF4y2Ba

使用parforgydF4y2Ba

另外,您可以通过并行执行多个参数估计gydF4y2BaparforgydF4y2Ba循环。gydF4y2Ba

parforgydF4y2Bai = 1:长度(iniVal) estimatedParam = estimatedInfo (paramToEstimate,gydF4y2Ba“InitialValue”gydF4y2BainiVal(我));fitResultTemp = sbiofit (m1, grpData、responseMap estimatedParam);fitResultPar = [fitResultPar; fitResultTemp];gydF4y2Ba结束gydF4y2Ba

近平行池。gydF4y2Ba

删除(poolObj);gydF4y2Ba

参数估计与混合动力学gydF4y2Ba

sbiofitgydF4y2Ba金宝app支持全局优化方法,即gydF4y2Ba遗传算法gydF4y2Ba(全局优化工具箱)gydF4y2Ba和gydF4y2BaparticleswarmgydF4y2Ba(全局优化工具箱)gydF4y2Ba(gydF4y2Ba全局优化工具箱gydF4y2Ba需要)。改善优化结果,这些方法可以让你混合函数在全球解算器停止运行。混合函数使用返回的最后一点全球解算器作为其初始点。金宝app支持混合函数是:gydF4y2Ba

确保你的混合函数接受你的问题约束。也就是说,如果你的参数是有界的,使用一个合适的函数(如gydF4y2BafmincongydF4y2Ba或gydF4y2BapatternsearchgydF4y2Ba约束优化)。如果不是有界,使用gydF4y2BafminuncgydF4y2Ba,gydF4y2BafminsearchgydF4y2Ba,或gydF4y2BapatternsearchgydF4y2Ba。否则,gydF4y2BasbiofitgydF4y2Ba抛出一个错误。gydF4y2Ba

一个说明的例子,看到gydF4y2Ba使用sbiofit执行混合优化gydF4y2Ba。gydF4y2Ba

引用gydF4y2Ba

[1],t m。北野,H。,Simon, M. (2003). A quantitative characterization of the yeast heterotrimeric G protein cycle. PNAS. 100, 10764–10769.

[2]伽柏,一个。,B一个n遗传算法,J.R. (2015). Robust and efficient parameter estimation in dynamic models of biological systems. BMC Systems Biology. 9:74.

扩展功能gydF4y2Ba

版本历史gydF4y2Ba

介绍了R2014agydF4y2Ba