曲线拟合实例.docxVIP

  • 9
  • 0
  • 约1.02万字
  • 约 12页
  • 2024-03-04 发布于辽宁
  • 举报

例如:

已知数据队列buf=【5410。。。。。】

x取值1:nn是队列长度

函数f(x)=a+b*sin(c*x+d).

avg是队列平均值

abcd为参数a范围(2/3,1)*avg

b范围(0,1/3)*avg

c的范围(0,24*pi)

d(0,2*pi)

1、 首先定义目标函数

functiony=ga_curfit(x)

globalydatan

t=1:n;

y=0;

fori=1:n

y=y+(ydata(i)-(x(:,1)+x(:,2).*sin(x(:,3).*t(i)+x(:,4))))2/n;

end

y=sqrt(y);

end

2、 把数据b.txt放在工作空间目录中然后再命令窗口中输入

clear

globalydatan

formatlonggloadb.txtydata=b;

n=length(ydata);

avg=sum(ydata)/n;

LB=[2/3*avg000];

UB=[1*avg1/3*avg24*pi2*pi];

nvars=4;

options=gaoptimset;

options=gaoptimset(options,PopulationSize,300);

options=gaoptimset(options,CrossoverFraction,0.8)

文档评论(0)

1亿VIP精品文档

相关文档