Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2009-10-12, 23:33   #1
slgu
高级会员
 
注册日期: 2007-06-24
年龄: 70
帖子: 188
声望力: 21
slgu 正向着好的方向发展
默认 回复: 【求助】matlab最小二乘法拟合参数的问题

在除以x的除号之前和x的次方之前均应加点
如:+53802.86163./x.^5*a(1)
另外,lsqcurvefit需要提供合适的初值,该问题的初值(当然也是全局最优值)为:
a=[-57520553.8546, 3228117792.34, -117811454472.0, 2.72684332529*10^12, (-3.57337185144)*10^13, 2.00235291354*10^14]

至于用模型:
fx=(a(1)*3+a(3)+2*8-3*9)*3*x+(a(2)*2-a(1) -2*8+3*9)*x.^2.*exp(-a(3)*x)+a(4);
该问题的初值(当然也是全局最优值)为:
a=[3.5499265666, 1231.6352114, 0.312407226836, 189.873867617]
slgu 当前离线   回复时引用此帖
旧 2009-10-14, 01:14   #2
wlxydgq
初级会员
 
注册日期: 2008-04-27
年龄: 45
帖子: 5
声望力: 0
wlxydgq 正向着好的方向发展
默认 回复: 【求助】matlab最小二乘法拟合参数的问题

引用:
作者: slgu 查看帖子
另外,lsqcurvefit需要提供合适的初值,该问题的初值(当然也是全局最优值)为:
a=[-57520553.8546, 3228117792.34, -117811454472.0, 2.72684332529*10^12, (-3.57337185144)*10^13, 2.00235291354*10^14]
再问问高人,根据什么来选初值呢?有什么规律吗?
wlxydgq 当前离线   回复时引用此帖
旧 2009-10-14, 07:47   #3
slgu
高级会员
 
注册日期: 2007-06-24
年龄: 70
帖子: 188
声望力: 21
slgu 正向着好的方向发展
默认 回复: 【求助】matlab最小二乘法拟合参数的问题

初值的选定比较困难,尤其是对复杂非线性问题,很难事先就能给出合适的初值。对我而言,我编制了一个曲线曲面拟合的通用程序,无需考虑初值问题,在绝大多数情况下效果还不错。
slgu 当前离线   回复时引用此帖
旧 2009-10-14, 17:06   #4
wlxydgq
初级会员
 
注册日期: 2008-04-27
年龄: 45
帖子: 5
声望力: 0
wlxydgq 正向着好的方向发展
默认 回复: 【求助】matlab最小二乘法拟合参数的问题

引用:
作者: slgu 查看帖子
初值的选定比较困难,尤其是对复杂非线性问题,很难事先就能给出合适的初值。对我而言,我编制了一个曲线曲面拟合的通用程序,无需考虑初值问题,在绝大多数情况下效果还不错。

高人呀,我曾经想过用循环替代的方法,可是不行。
可不可以给我说说你的程序的思路呢,可以的话,发到我的邮箱吧:[email protected].

另外,再问一个问题,在拟合参数的时候,如果是好几组参数都满足条件呢?我这个程序就是有好几组。
wlxydgq 当前离线   回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 16:07


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.