![李微-090214-最小二乘法实现拟合数据_第1页](http://file4.renrendoc.com/view/d4ed564597f7ae967baf673d397dd26d/d4ed564597f7ae967baf673d397dd26d1.gif)
![李微-090214-最小二乘法实现拟合数据_第2页](http://file4.renrendoc.com/view/d4ed564597f7ae967baf673d397dd26d/d4ed564597f7ae967baf673d397dd26d2.gif)
![李微-090214-最小二乘法实现拟合数据_第3页](http://file4.renrendoc.com/view/d4ed564597f7ae967baf673d397dd26d/d4ed564597f7ae967baf673d397dd26d3.gif)
![李微-090214-最小二乘法实现拟合数据_第4页](http://file4.renrendoc.com/view/d4ed564597f7ae967baf673d397dd26d/d4ed564597f7ae967baf673d397dd26d4.gif)
![李微-090214-最小二乘法实现拟合数据_第5页](http://file4.renrendoc.com/view/d4ed564597f7ae967baf673d397dd26d/d4ed564597f7ae967baf673d397dd26d5.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数值计算方法课程设计题目:用最小二乘法实现数据拟合学院:理学院班级:09-2学生姓名:李微学生学号:14指导教师:李文宇2011年12月19日
课程设计任务书姓名李微班级09-2学号14设计题目用最小二乘法实现数据拟合理论要点最小二乘的思想就是要使得观测点和估计点的距离的平方和达到最小•这里的“二乘”指的是用平方来度量观测点与估计点的远近(在古汉语中“平方”称为“二乘”),“最小”指的是参数的估计值要保证各个观测点与估计点的距离的平方和达到最小。设计目标用最小二乘法实现线性拟合和非线性拟合,且使近似曲线能尽量反应所给数据点的趋势,且使误差平方和最小。研究方法步骤1、分析题目2、查找数据及收集资料3、确定思路4、编写程序5、调试程序6、设计报告预期结果对任意给定的无规律的二维数据,都能用一个简单合理的数据进行拟合。计划与进步的安排第天:分析题目,确定需要查询的数据第二天:去图书馆或者边度文档收集资料第三天:整理资料,选出对自己有用的资料第四天:确定大致思路。列出编程提纲第五天:编写程序第六天:调试程序第七天:设计报告,做最后的检查#-正文正文1、理论依据最小二乘的思想就是要使得观测点和估计点的距离的平方和达到最小•这里的“二乘”指的是用平方来度量观测点与估计点的远近(在古汉语中“平方”称为“二乘”),“最小”指的是参数的估计值要保证各个观测点与估计点的距离的平方和达到最小.对于回归模型y=s(x),若(x,y)(i=l,2,3..m)为收集到的观测数据,则应该ii用来估计,这里是(x,S(X))(i=1,2,3..m)的估计值。它们之间距离的平方和ii就是工[S(x)—y]2。ii1进而最小二乘估计量就是使Mm2=Mm2=X52=z[S*(X)—2iii=0i=0y]2=min'S(x)珂=1—y]2i(*)达到最小值的参数。2、问题描述(1)线性拟合已知如下表格,怎样利用最小二乘法求出线性拟合曲线?x12345kyk—1.52.53.55.07.5(2)非线性拟合已知入戏表格,如何利用最小二乘法把非线性拟合转换成线性拟合,再进行拟合,并且写出拟合曲线?x12345kyk1.52.53.55.07.5Y=Inykk0.4054651180.9162907311.2527629681.6094379122.0149030213、问题分析(1)线性拟合分析给定一组测量数据{(x,y),i=o丄2,…,m},基于最小二乘原理,求得变量X和y之间的函数关系f(X,A),使它最佳地逼近已知数据。其中A=(a,aa)是一些待定参数。°1"通常把最小二乘法中的||2都考虑为加权平方和,即2卡II2=£3(x)(f(x)—y)22iiii二0其中,3(x)>=0是[a,b]上的权函数,它表示反应数据(x,y)在实验中所占数据的比重。iii选择参数A使得加权平方和最小,即求满足£3(x)(f*(x)—y)2iiim=min乙3(x)(f(x)—y)2,3(x)>=0iiii(**)…i=0i=0的f*(x)。要使(**)最小,它转换为求多元函数(x)—f(x)]2iii=0j=0的极小点(a*,a*…a*)问题。由求多远函数极值的必要条件,有mn=2乙3(x)[乙aV(x)一f(x)]V(x)=0ijjiikii=0j=0若记(v,V)=jk则m£3(x)V(x)V(x),ijikii=0w(x)f(x)9(x)三d(k=0,1,…,n),iikik可改写为=d可改写为=d(k=0,1,…,n).k(***)j=0此方程成为法方程。它也可以写成矩阵形式Ga其中a=(其中a=(a,a,…,a)T,01—(9,9)00(9,9)10n(9,901(9,9)11d=(d,d,…,d)T,01「…(9,90…(9,91由于90n,9•-9线性无关,故GI丰0,由于90n,9•-9线性无关,故GI丰0,方程组(***)存在唯一解1na=a*(i=l,2,3n),从而得到函数f(x)的最小二乘法解为S*(x)=a*9(x)+a*9(x)+…+a*9(x)0011nn可以证明,这样得到的对于任何多项式形式的S(x),都有为①(x)[S*(x)一f(x)]2<工①(x)*[S(x)一f(x)]2iiiii故S*(x)确实所求最小二乘解。(2)非线性拟合分析我们可通过变数变换将其化为线性模型。利用最小二乘线性拟合确定其系数,再利用逆变换给出原问题的曲线拟合函数。4、求解计算⑴线性拟合计算首先画出散点图,根据图形的散点分布,编写出线性拟合。>>x=[1:5];>>y=[1.5,2.5,3.5,5.0,7.5];>>plot(x,y,'*')>>p=plotfit(x,y,3)则绘制出的图为:编写程序,进行数据拟合M文件:functionc=lspolyl(x,y,M)n=length(x);B=zeros(1:M+1);F=zeros(n,M+1);fork=1:M+1F(:,k)=x'.A(k-1);endA=F'*F;B=F'*y';c=(A\B)';调用M文件:Lspoly1(x,y,1)ans=-0.35001.4500Lspoly1(x,y,2)ans=1.4000-0.05000.2500Lspoly1(x,y,3)ans=0.00001.9167-0.50000.0833lspolyl(x,y,4)ans=0.00001.9167-0.50000.08330.0000阶拟合多项式:y=-0.3500+1.4500x阶拟合多项式:y=1.4000-0.0500x+0.2500x2阶拟合多项式:y=0.0000-1.9167x-0.5000x2_0.0833x3阶拟合多项式:y=0.0000-1.9167x-0.5000x2_0.0833x3+0.0000x4⑵非线性拟合计算根据问题分析,我们建立回归模型y=aebx。然后把非线性多项式拟合模型转换为线性问题。我们对方程y=aebx取对数,得lny=lna+bx令Y=lny,A=Ina则原问题转化为解Y=A+bx的线性问题。即有y=aebx►-Y_A+bx取对数,并令Y=lny,A=lna,这样的话,问题则转换为以下数据,求A,b的问题。>>x=[1:5];>>y=[0.4054651180.9162907311.2527629681.6094379122.014903021];>>plot(x,y,'*')>>lspolyl(x,y,l)ans=0.06620.3912>>则A=0.0662,b=0.3912。Y=0.0662x+0.03912原拟合曲线为:y0.0662e0.3912x5、程序内容及其计算线性拟合中,我首先建立一个大M文件,该文件内容为:functionc=lspoly(x,y,M)n=length(x);B=zeros(1:M+1);F=zeros(n,M+1);fork=1:M+1F(:,k)=x'.A(k-1);endA=F'*F;B=F'*y';c=(A\B)';需要数据拟合的时候,就在matlab的工作区间调用这个文件。Lspoly1(x,y,2)的最后一个参数是你将要拟合函数的阶数。一般情况下拟合的阶数越大约接近准确值。但是在例子中我们可以看出当把阶数设为4时,四次项的系数为零,所以我们有时候没有必要把阶数设的过高。而对于非线性拟合的函数,过程将要麻烦一些,我们需要计算YIny的值,每一个k对应每一个Y的值。在程序的编写过程中线性拟合与非线性拟合没有区别。在拟合多项式时,我为了选出不同的阶数的精确度,编出一下程序:functionY=lspoly2(M)x=[0.1:0.1:0.9];y=[6.29896.34566.42236.52746.65926.81536.99367.19197.4082];C=(lspoly1(x,y,M))';%存放拟合多项式的系数n=length(x);X=zeros(n,M+1);fork=1:M+1X(:,k)=x'.A(k-1);endY=(X*C)';调用该函数:x=[1:5];y=[1.5,2.5,3.5,5.0,7.5];lspoly2(1)ans=6.17986.31996.46007.16067.30076.60026.74036.88047.0205lspoly2(2)ans=6.29326.34836.42776.53136.65936.81156.98817.18897.4141lspoly2(3)ans=6.29906.34546.42226.52766.65936.81536.99357.1919lspoly2(4)7.4083ans=6.29896.34556.42236.52756.65926.81526.99367.19207.4082对照准确结果,很明显四次多项式比三次多项式更准确。在一般数据比较多的情况下,我们可以选择6次或者十次拟合。6、结论最小二乘法是指使因变量估计值与实测值间的相对误差平方和为最小。在研究两个变量之间的关系时,我们可以直线代替两个变量的关系。通过此次课程设计,我把线性拟合的程序存入了计算机matlab软件中,我上网搜集了很多资料,最小二乘法原理在生活中有很多应用。所以我没有把原程序删除。是为了以后有需要的时候能够方便使用。然而实际工作中,变量间未必都有线性关系,如服药后血药浓度与时间的关系;疾病疗效与疗程长短的关系;毒物剂量与致死率的关系等常呈曲线关系。曲线拟合是指选择适当的曲线类型来拟合观测数据,并用拟合的曲线方程分析两变量间的关系。如果遇到这种情况,我们可以用回归分析的方法进行分析。当确定了描述两个变量之间的回归模型后,就可以使用最小二乘法估计模型中的参数,进而建立数学模型,然后通过MATLAB求解模型。通过本文实例模型(非多项式形式yaebx)的求解,我们学会了怎样从给定的二维数据出发,寻找一个简单合理的函数来拟合给定的一组看上去杂乱无章的数据。如何巧妙地运用最小二乘法解决数据拟合问题,这不仅对我们在今后的学习有一定的帮助,而且在生产实践、科学实验中也起到了一定的作用。7、参考文献JohnH.Mathews,KurtisD.Fink著,陈渝等译。NumericalMethodsUsingMATLAB(ThirdEdition)北京:电子工业出版社.张池平主编•计算方法•哈尔滨:哈尔滨工业大学出版社.王兵团,桂文豪著•数学实验基础•北京:北方交通大学出版社.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年劳务派遣合同及机密资料保护范本
- 2025年上海技术合作项目协议范本
- 2025年度个人用车申请雇佣协议范本
- 2025年中外合作企业经营合同示例
- 2025年严格保密协议土地利用
- 2025年演出代理合同范本
- 2025年人造石材供应与质量协议
- 2025年个人对公司财务资助的协议模板
- 2025年品牌策划权变动合同
- 2025年旅游资源共享合作授权协议
- 宠物医院员工手册
- 2024年高考英语读后续写高分宝典专题08读后续写肢体动作描写积累1(词-句-文)讲义
- 商业与公积金贷款政策
- 年兽的故事之The Legend of Nian
- 初中美术教学策略与方法
- 甲流护理查房病例
- 概率论与数理统计智慧树知到课后章节答案2023年下四川师范大学
- 2024届高考作文主题训练:时评类(含解析)
- 260吨汽车吊地基承载力验算
- 译林版英语小学四年级下册-课文翻译(英汉对照)
- Vue.js前端开发实战(第2版)全套完整教学课件
评论
0/150
提交评论