Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 人工智能 > 进化计算
进化计算 A discussion board for Evolutionary Computation.
回复
 
主题工具 显示模式
旧 2009-04-23, 13:20   #1
luckeey
初级会员
 
注册日期: 2009-04-23
年龄: 51
帖子: 4
声望力: 0
luckeey 正向着好的方向发展
问题 要求使用三角函数对其进行拟合

下面是一个离散时间序列的样本数据:
40、5、6、8、3、2、3、1、2、1、3、3、13、7、18、4、9、11、3、56、20、64、6、29、17、9、2、23、6、2、29、13、4、2、3、11、15、12、2、8、29、19、12、9、1、25、14、30、5、9、1、15、13、5、15、23、21、7、18、13、44、46
要求使用三角函数对其进行拟合,按要求采用 f(x)=a*sin(b*n+w)+c 对其进行拟合,n 为数据序列的序号(1、2、3、4、5 ……62 )建立如下方程组

40=a*sin(b*1+w)+c+E1
5=a*sin(b*2+w)+c+E 2
6=a*sin(b*3+w)+c+E 3
8=a*sin(b*4+w)+c+E 4
3=a*sin(b*5+w)+c+E 5
2=a*sin(b*6+w)+c+E 6
……
44=a*sin(b*61+w)+c+E 61
46=a*sin(b*62+w)+c+E 62

求解系数a、b、w ,c 使得 E1至E62的平方和(e1平方+e2平方+……+e62平方)最小.

哪位同学能帮我解啊
luckeey 当前离线   回复时引用此帖
旧 2009-04-25, 08:49   #2
anbcjys
高级会员
 
注册日期: 2008-09-14
年龄: 43
帖子: 351
声望力: 24
anbcjys 正向着好的方向发展
默认 回复: 要求使用三角函数对其进行拟合

引用:
作者: luckeey 查看帖子
下面是一个离散时间序列的样本数据:
40、5、6、8、3、2、3、1、2、1、3、3、13、7、18、4、9、11、3、56、20、64、6、29、17、9、2、23、6、2、29、13、4、2、3、11、15、12、2、8、29、19、12、9、1、25、14、30、5、9、1、15、13、5、15、23、21、7、18、13、44、46
要求使用三角函数对其进行拟合,按要求采用 f(x)=a*sin(b*n+w)+c 对其进行拟合,n 为数据序列的序号(1、2、3、4、5 ……62 )建立如下方程组

40=a*sin(b*1+w)+c+E1
5=a*sin(b*2+w)+c+E 2
6=a*sin(b*3+w)+c+E 3
8=a*sin(b*4+w)+c+E 4
3=a*sin(b*5+w)+c+E 5
2=a*sin(b*6+w)+c+E 6
……
44=a*sin(b*61+w)+c+E 61
46=a*sin(b*62+w)+c+E 62

求解系数a、b、w ,c 使得 E1至E62的平方和(e1平方+e2平方+……+e62平方)最小.

哪位同学能帮我解啊
用遗传算法吗 .
__________________
qq604443022
anbcjys 当前离线   回复时引用此帖
旧 2009-04-25, 14:36   #3
大学生
初级会员
 
注册日期: 2008-11-25
年龄: 39
帖子: 16
声望力: 17
大学生 正向着好的方向发展
默认 回复: 要求使用三角函数对其进行拟合

应该不太难的一道题嘛,目标函数已知,约束就是等式约束,对a、b、w、c进行编码,按遗传算法正常操作就可以了。
大学生 当前离线   回复时引用此帖
旧 2009-06-01, 07:32   #4
luckeey
初级会员
 
注册日期: 2009-04-23
年龄: 51
帖子: 4
声望力: 0
luckeey 正向着好的方向发展
难过 回复: 要求使用三角函数对其进行拟合

我等了这么久还没有答案啊!急急!
luckeey 当前离线   回复时引用此帖
旧 2009-06-06, 13:35   #5
jianxia174
初级会员
 
注册日期: 2009-06-06
帖子: 3
声望力: 0
jianxia174 正向着好的方向发展
默认 回复: 要求使用三角函数对其进行拟合

直接用matlab带的gatool工具箱就可以实现了,先转换出E1至E62的平方和的表达式,作为fitness,直接进行求解就可以了呀!
jianxia174 当前离线   回复时引用此帖
旧 2009-07-10, 01:03   #6
zhaishaozhuo
初级会员
 
注册日期: 2009-02-04
年龄: 36
帖子: 1
声望力: 0
zhaishaozhuo 正向着好的方向发展
默认 回复: 要求使用三角函数对其进行拟合

我初步试了一下数据,发现根本不符合你给的三角函数规律,无论怎么计算效果都很差,你给的函数有问题(或许应该用这样的三角函数拟合a1*sin(x)+a2*sin(2x)+...),建议你先对数据进行FFT看一下频域分布再确定如何拟合。
zhaishaozhuo 当前离线   回复时引用此帖
旧 2009-11-06, 15:36   #7
luckeey
初级会员
 
注册日期: 2009-04-23
年龄: 51
帖子: 4
声望力: 0
luckeey 正向着好的方向发展
默认 回复: 要求使用三角函数对其进行拟合

对于这样的序列数据,有什么最好的拟合办法,
请各位仁兄高抬贵手,帮个忙。
luckeey 当前离线   回复时引用此帖
旧 2010-03-06, 16:42   #8
greensim
普通会员
 
注册日期: 2008-10-06
年龄: 25
帖子: 53
声望力: 18
greensim 正向着好的方向发展
默认 回复: 要求使用三角函数对其进行拟合

此问题直观上看是一个非线性超定方程组,可以把它看做优化问题,用相应的算法求解(如遗传算法),也可将其看做非线性参数估计,用相应的算法求解,如泰勒级数展开最小二乘。
__________________
算法设计、代写程序,欢迎访问GreenSim团队主页→
http://blog.sina.com.cn/greensim
greensim 当前离线   回复时引用此帖
回复


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

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



所有时间均为北京时间。现在的时间是 21:05


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