数模实验第四版数据拟合与模型参数估计_第1页
数模实验第四版数据拟合与模型参数估计_第2页
数模实验第四版数据拟合与模型参数估计_第3页
数模实验第四版数据拟合与模型参数估计_第4页
数模实验第四版数据拟合与模型参数估计_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数学模型实验实验报告 4学院:河北大学工商学院 专 业:电气七班 姓 名:李青青 学号:2012484098 实验时间:2014/4/15 实验地点:B3-301一、实验项目 :数据拟合与模型参数估计二、实验目的和要求a. 了解数据拟合的原理和 Matlab 中的有关命令。Polfit :MATLAB 函数:p=polyfit(x,y,np,s= polyfit(x,y,n说明:x,y 为数据点, n 为多项式阶数,返回 p 为幂次从高到低的多项式系数 向量 p 。 x 必须是单调的。矩阵 s 用于生成预测值的误差估计。 (见下一函数 polyval多项式曲线求值函数:polyval( 调用格

2、式:y=polyval(p,xy,DELTA=polyval(p,x,s说明:y=polyval(p,x为返回对应自变量 x 在给定系数 P 的多项式的值。y,DELTA=polyval(p,x,s 使用 polyfit 函数的选项输出 s 得出误差估计 Y DELTA 。 它假设 polyfit 函数数据输入的误差是独立正态的, 并且方差为常数。 则 Y DELTA将至少包含 50%的预测值。Polyvalpolyval 函数的主要功能是多项式的估值运算,其语法格式为 y = poly val(p,x,输入变量 p 是长度为 n+1的向量,各元素是依次按降幂排列的 多项式的系数, 函数返回的

3、是那次多项式 p 在 x 处的值, x 可以是一个数, 也可以是一个矩阵或者一个向量 , 在后两种情况下, 该指令计算的是在 X 中 任意元素处的多项式 p 的估值。polyvalm 的主要功能是用于 matlab 中多项式求值。 其语法格式为 y=polyvalm(a , A ,其中 a 为多项式行向量表示, A 为指定矩阵。Lsqlin约束线性最小二乘函数 lsqlin格式 x = lsqlin(C,d,A,b %求在约束条件 下,方程 Cx = d的最小二 乘解 x 。x = lsqlin(C,d,A,b,Aeq,beq %Aeq、 beq 满足等式约束 ,若没有不 等式约束,则设 A=

4、 , b= 。x = lsqlin(C,d,A,b,Aeq,beq,lb,ub %lb、 ub 满足 , 若没有等式约束, 则 Aeq= , beq= 。x = lsqlin(C,d,A,b,Aeq,beq,lb,ub,x0 % x0为初始解向量,若 x 没有 界,则 lb= , ub= 。x = lsqlin(C,d,A,b,Aeq,beq,lb,ub,x0,options % options为指定优 化参数lsqcurvefit最常见的调用格式如下:X = LSQCURVEFIT(FUN,X0,XDATA,YDATA.其中 FUN 为一个函数,已 M 文件或匿名函数存在。若 FUN 以 M

5、 文件形式存在, 那么 FUN 在调用语句中的格式为:(x,xdata FUN(x,xdata,c.(x,xdata中分别表示待求参数, xdata 表示的是自变量 ,c 是可以传递到函数里面的常数。 Lsqnonlin :lsqnonlin 解决非线性最小二乘问题,包括非线性数据拟合问题 而不是计算的值 f (x (平方和,需要用户定义函数 lsqnonlin 求向量值 函数然后,在矢量的术语,你可以重申这一优化问题其中 x 是一个向量和 f (x 是一个函数,返回一个向量值。X = lsqnonlin(乐趣, X0开始在点 X0并找到一个最小的有趣的功能描述 的平方和。快乐应该返回一个向量

6、值不值的平方和。(算法隐含和广场的乐 趣(X 。X = lsqnonlin(乐趣, X0, LB , UB 定义了一组上下对 X 设计变量的范围, 所以,解决方案总是在范围 x UB 的 LB 。X = lsqnonlin(乐趣, X0, LB , UB ,选项最大限度地减少结构中的优化 选项指定的选项。使用 optimset 设置这些选项。通过空矩阵的 LB 和 UB 如 果没有界限的存在。【 X , resnorm = lsqnonlin( 返回 x 的平方范数的剩余价值的总和 (意 思:(X 。 2。【 X , resnorm ,残余 = lsqnonlin(返回剩余的娱乐价值观(x 在

7、解 xx = lsqnonnegx = lsqnonneg(C , D 返回向量 x 的最小范数(C * XD受 x = 0。 C 和 D 必须是真实的。x = lsqnonneg(C , D , x0 X0使用为出发点,如果所有的 X0 = 0;否 则,则使用默认值。默认的出发点是原点(默认是用来当 X0 = = 或只有两 个输入参数提供。x = lsqnonneg(C , D , X0,选项最大限度地减少在结构优化参数指定的 选项。你可以使用 optimset 函数定义这些参数。 lsqnonneg 使用这些选项 的结构域:displayLevel 显示。”“不显示输出;最后的“仅显示最终

8、的输出;“通知” (默认显示输出只有当函数不 converge.tolxtermination 公差对 X【 X , resnorm = lsqnonneg(返回的平方范数的剩余价值:规范(C * XD 2b. 练习模型参数估计三、实验内容根据美国人口从 1790年到 1990年间的人口数据(如下表,确定人口指数 增长模型和 Logistic 模型中的待定参数,估计出美国 2010年的人口,同时画出拟合效果的图形。 表 1 美国人口统计数据 提示:指数增长模型:rte x t x 0(=Logistic 模型:(011mrtm x x t x e x -=+- 解:模型一 :指数增长模型。 M

9、althus 模型的基本假设下,人口的增长率为常 数,记为 r ,记时刻 t 的人口为 (t x ,(即 (t x 为模型的状态变量且初始时刻的人口为 0x ,因为 =00(x x rxdt dx 由假设可知 0( rt x t x e = 经拟合得到:x(t = x0ert ln x(t = ln x0 + rt y = ln x(t , a1 = r , a2 = ln x0 y = a1t + a2 r = a1 , x0 = ea2 程序: t=1790:10:1980; x(t=3.9 5.3 7.2 9.6 12.9 17.1 23.2 31.4 38.6 50.2 62.9 76

10、.0 92.0 106.5 123.2 131.7 150.7 179.3 204.0 226.5 ; y=log(x(t;a=polyfit(t,y,1 r=a(1,x0=exp(a(2 x1=x0.*exp(r.*t; plot(t,x(t,r,t,x1,b 结果:a = 0.0214 r= 0.0214 x0= 1.2480e-016 所以得到人口关于时间的函数为: x(t = x0e0.0214t ,其中 x0 = 1.2480e-016, 输入:t=2010; x0 = 1.2480e-016; x(t=x0*exp(0.0214*t 得到 x(t= 598.3529。 即在此模型下

11、到 2010 年人口大约为 598.3529 106 。 -36.6198 第6页 / 共9页 350 300 250 200 150 100 50 0 1780 1800 1820 1840 1860 1880 1900 1920 1940 1960 1980 模型二:阻滞增长模型(或 Logistic 模型) 由于资源、环境等因素对人 口增长的阻滞作用,人口增长到一定数量后,增长率会下降,假设人口的增 长率为 x 的减函数,如设 r ( x = r (1 - x / xm ,其中 r 为固有增长率 (x 很小 时 , xm 为人口容量(资源、环境能容纳的最大数量), 于是得到如下微分 x

12、dx = rx(1 - xm 方程: dt x(0 = x 0 建立函数文件 curvefit_fun2.m function f=curvefit_fun2 (a,t f=a(1./(1+(a(1/3.9-1*exp(-a(2*(t-1790; 在命令文件 main.m 中调用函数文件 curvefit_fun2.m % 定义向量(数组) x=1790:10:1990; y=3.9 5.3 7.2 9.6 12.9 17.1 23.2 31.4 38.6 50.2 62.9 76 . 第7页 / 共9页 92 106.5 123.2 131.7 150.7 179.3 204 226.5 2

13、51.4; plot(x,y,*,x,y; % 画点,并且画一直线把各点连起来 hold on; a0=0.001,1; % 初值 % 最重要的函数,第 1 个参数是函数名(一个同名的 m 文件定义),第 2 个参数是初值,第 3、4 个参数是已知数据点 a=lsqcurvefit(curvefit_fun2,a0,x,y; disp(a= num2str(a; % 显示结果 % 画图检验结果 xi=1790:5:2020; yi=curvefit_fun2(a,xi; plot(xi,yi,r; % 预测 2010 年的数据 x1=2010; y1=curvefit_fun2(a,x1 hold off

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论