怎么在matlab求解Logistic模型中的三个参数?

将Logistic模型的方程变为y=a/(1+exp^(b-c*k)),y=(59.3707 ,64.1860,68.4081,74.1428, 80.8853,85.1350 ,86.4426 , 90.7789, 92.4478 , 93.8826 ),k=(1,2,3,4,5,6,7,8,9,10),怎么求出参数a,b,c的值。感谢!

题主的Logistic模型中的a,b,c三个参数如何求解?可以按下列步骤计算:

第一步:将已知值赋值给k,y变量

k=[。。。];

y=[。。。];

第二步:根据数学模型,自定义其函数

fun=@(p,k)p(1)./(1+exp(p(2)-p(3)*k));

第三步:初定p0的初值

p0=[100 0 0.2]

第四步:使用nlinfit函数求解拟合系数p,p(1)—a,p(2)—b,p(3)—c

[p,r] = nlinfit(k,y,fun,p0);

第五步:计算拟合值

y1=fun(p,k)

第六步:使用plot函数,绘制原始数据与拟合数据的对比图

plot(k,y,'ro',k1,y1,'k.-')

legend('原始数据','拟合数据')

xlabel('k'),ylabel('y')

运行上述代码,可以得到如下结果。

温馨提示:答案为网友推荐,仅供参考
相似回答