版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
01na01nann,b,...,b最小二法:%递推公式,更新p0=p2;forn=2:N-1%%递推最小二乘法K0=p0*X(n,:)'*inv(1+X(n,:)*p0*X(n,:)');%算KTheta_abs=Theta_abs+K0*(Y(n)-X(n,:)*Theta_abs);%计值Theta;p3=p0-K0*X(n,:)*p0;%计算Pp0=p3;%误差平方和最小Y1=X(n,:)*Theta_abs;%递推值J=(Y(n,:)-Y1)*(Y(n,:)-Y1)'if(J<err)%设定平方误差最小,跳出循环break;end;end对于y1
anb
引进后移算假定在初始条件0时z变换得到bbH11azzARX模型有:qbn上式可以改写ziiii上式改写为最小二乘格式对于(3)式的l
次观测构成一个线性方程组u(ku(k)2nZH.lll,ll
即精彩文档
llˆˆlˆTˆˆllˆˆlˆTˆˆlllllDzzz。取zzzNzzCzu2(1))1u2l)l(llb)取极小化准则函JlL
L
的估计
k,12Jkllllk对各参数求导,并令其结果等于零:
lllll
H,只要矩阵Hll
l
是满秩的,
HHl
l
则是正定的,使准则为极小的条件得到满足,最二估的推法RLS)最小二乘法,不仅占用大量内存,而且不适合于在线辨识,为了解决这个问题,把它转化为递推算法项kk(1)2(1))1u2l)l(llb)若PlllllllllllllhKll;hPIKhllll
Phlll
Ill
hPll加权递推最小二乘(RWLS):精彩文档
色噪声v(k)为噪声。Cz
wl实用标准wlTllllllhKll;l11lllIKTllll当噪声为有色噪声时,采用增广最小二乘法:其思路采用ARMA模型。在实际应用中噪声v(k)有两种形式:
1小乘拟[a,Jm]=lsqcurvefit(fun,a0,x,y);fun不支持句柄函数a0最优化的初始值,fun为数据原型函数。x=lsqcurvefit(fun,x0,xdata,ydata,lb,ub)lb≤x≤ub[x,norm,res,ef,out,lam,jac]=lsqcurvefit(@F,x0,t,y,v1,v2,opt,P1,P2,...)其中输出变量的含义为:1)x:最优解2)norm:误差的平方和3)res:误差向量4)ef:程序结束时的状态指示:·>0:收敛·0:函数调用次数或迭代次数达到最大值(该值在中指定)·<0:不收敛5)out:包含以下数据的一个结构变量·funcCount函数调用次数·iterations实际迭代次数·cgiterations实际PCG迭代次数(大规模计算用)·algorithm实际使用的算法·stepsize最后迭代步长(中等规模计算用)·firstorderopt一阶最优条件满足的情况(大规模计算用)6)lam:上下界所对应的Lagrange乘子7)jac:结果(x点)处的雅可比矩阵输入参数其中输入变量的含义为:·x0为初始解(缺省时程序自动取x0=0)·t,y:拟合数据·v1,v2:参数待求x的上下界·options:包含算法控制参数的结构线搜索方法(‘cubicpoly’quadcubic缺省值))可以设定的参数比较多,对lsqnonlin和,常用的有以下一些参数:精彩文档
实用标准文案Diagnostics是否显示诊断信息(或'off)Display显示信息的级别('off','iter','final,'notify)LargeScale是否采用大规模算法(或')缺省值为onMaxIter最大迭代次数函数计算的误差限TolX决策变量的误差限Jacobian目标函数是否采用分析阵('on',)MaxFunEvals目标函数最大调用次数LevenbergMarquardt搜索方向选用LM法‘on’),GN法(‘off缺省值)线搜索方法(‘cubicpoly’quadcubic缺省值))[|off][{on}off]例子1matlab实现对f
sin21
,设m
1首先编写m件f52利用sqcurvefit数调用m件m=4;k=0.4ydata=m*sin(o)+0.5*k*sin(2*o)./(1-(k^2*sin(o).^2)).^0.5;x0[0;0];[x,resnorm]lsqcurvefit(@lsq,x0,xdata,ydata)结果得到:x(1)==2nlinfitm=4;k=0.4;ydata=m*sin(o)+0.5*k*sin(2*o)./(1-(k^2*sin(o).^2)).^0.5;x0[0;0];例子用fminunc函;k1=13;k2=1.3;k3=9.1;xdata=0:pi/100:pi;ydata=k1*exp(k2*xdata)+k3*sin(xdata);F=@(x)norm(x(1).*exp(x(2).*xdata)+x(3).*sin(xdata)-ydata);[x,fr]=fminunc(F,[000])[x,fr]=fminsearch(F,[111])例子.2用遗传算法参数识别k1=13;k2=1.3;k3=9.1;xdata=0:pi/100:pi;精彩文档
实用标准文案ydata=k1*exp(k2*xdata)+k3*sin(xdata);F=@(x)norm(x(1).*exp(x(2).*xdata)+x(3).*sin(xdata)-ydata);[x,fval]=ga(F,3,[],[],[],[],[10;1;8],[20;10;15])%ee=norm(E);%使差方最原;者使使用r准例子.3利用multistart方法k1=13;k2=1.3;k3=9.1;xdata=0:pi/100:pi;ydata=k1*exp(k2*xdata)+k3*sin(xdata);F=@(x)norm(x(1).*exp(x(2).*xdata)+x(3).*sin(xdata)-ydata);ms=MultiStart;opts=optimset('Algorithm','interior-point','LargeScale','off');problem=createOptimProblem('fmincon','x0',[10,1,8],'objective',F,'lb',[1,0,1],'ub',[20,10,15],'options',opts);[xminm,fminm,flagm,outptm,manyminsm]=run(ms,problem,200)例子利用globalsearchk1=13;k2=1.3;k3=9.1;xdata=0:pi/100:pi;ydata=k1*exp(k2*xdata)+k3*sin(xdata);F=@(x)norm(x(1).*exp(x(2).*xdata)+x(3).*sin(xdata)-ydata);gs=GlobalSearch('Display','iter');opts=optimset('Algorithm','interior-point');problem=createOptimProblem('fmincon','x0',[10,1,8],'objective',F,'lb',[1,0,1],'ub',[20,10,15],'options',opts);[xming,fming,flagg,outptg,manyminsg]=run(gs,problem)例子利用multistartlsqcurvefitk1=13;k2=1.3;k3=9.1;xdata=0:pi/100:pi;ydata=k1*exp(k2*xdata)+k3*sin(xdata);ms=MultiStart;opts=optimset('Algorithm',problem=createOptimProblem('lsqcurvefit','x0',[10,1,8],'xdata',xdata,'ydata',ydata,'objective',@myfun,'lb',[1,0,1],'ub',[20,10,15],'options',opts);[xminm,fminm,flagm,outptm,manyminsm]=run(ms,problem,100)functiony=myfun(x,xdata)y=x(1).*exp(x(2).*xdata)+x(3).*sin(xdata);例子利用multistart和lsqnonlin(8s)k1=13;k2=1.3;k3=9.1;xdata=0:pi/100:pi;ydata=k1*exp(k2*xdata)+k3*sin(xdata);F=@(x)x(1).*exp(x(2).*xdata)+x(3).*sin(xdata)-ydata;精彩文档
实用标准文案ms=MultiStart;opts=optimset('Algorithm',problem=createOptimProblem('lsqnonlin','x0',[10,1,8],'xdata',xdata,'ydata',ydata,'objective',F,'lb',[1,0,1],'ub',[20,10,15],'options',opts);[xminm,fminm,flagm,outptm,manyminsm]=run(ms,problem,100)1.7利用matlabpoolparallel加速tic;k1=13;k2=1.3;k3=9.1;xdata=0:pi/100:pi;ydata=k1*exp(k2*xdata)+k3*sin(xdata);F=@(x)x(1).*exp(x(2).*xdata)+x(3).*sin(xdata)-ydata;ms=MultiStart('Display','iter','UseParallel','always');opts=optimset('Algorithm',matlabpoolopen2problem=createOptimProblem('lsqnonlin','x0',[10,1,8],'xdata',xdata,'ydata',ydata,'objective',F,'lb',[1,0,1],'ub',[20,10,15],'options',opts);[xminm,fminm,flagm,outptm,manyminsm]=run(ms,problem,100)time=toc;%47.3541s函模functiony=myfun(x,xdata)例子2多输入量)functionF=myfun(k,xdata)F=k(1)*xdata(:,1)+k(2)*xdata(:,2)+k(3)*xdata(:,3);xdata=[3.67.79.3;8.62.8;7.910.0]'ydata=k0例子(带参数限条件的M函数:FF代:k1=13;k2=1.3;k3=9.1;x=0:pi/100:pi;y=k1*exp(k2*x)+k3*sin(x);k0=[-1,-1,-1][k,resnorm]=lsqcurvefit(@myfun,k0,x,y,[5,0.1,2],[20,8,15])结果k=13.00001.30009.1000精彩文档
实用标准文案例子lsqnonli
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2023年自贡市公安局招聘交通警察警务辅助人员考试真题
- 2023年吉安市吉州区工商业联合会(商会)社会招聘考试真题
- 医院离职申请报告(8篇)
- 部门年度工作计划5篇格式
- 2024年服务顾问年终总结范文(26篇)
- 放射治疗模拟定位技术
- 医疗废物无害化处理项目申请报告
- 管理人员个人总结
- 入户门外开协议书范文
- 三人投资入股协议书
- 大学生劳动教育完整PPT全套教学课件
- 国网基建各专业考试题库大全-计划专业(考题汇总)
- 关于小学科学大单元教学设计的思考
- 模具加工计划进度表-05
- 数学新课程标准的核心概念有哪些?结合教学实践谈谈你的认识
- 红楼梦5000字论文
- 2022年龙川县特殊教育岗位教师招聘考试笔试试题及答案解析
- 夏商周考古课件 第3章 二里冈文化(1-3节)
- 城市绿地系统规划 第10章 其他绿地规划
- FZ/T 93043-2021棉纺并条机
- 二年级音乐节奏训练课-动起来教学教案
评论
0/150
提交评论