预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共35页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

实验13人口预测与数据拟合据人口统计年鉴,知我国从1949年至1994年人口数据资料如下:(人口数单位为:百万)如何确定a,b?1曲线拟合问题的提法:从几何上讲,并不要求曲线严格通过已知点,但要求曲线在各数据点和已知数据点之间的总体误差最小,通常称为数据拟合。数据插值2.用什么样的曲线拟合已知数据?例如3拟合函数组中系数的确定4用matlab软件进行数据拟合例也可以用inline命令定义函数a=polyfit(xdata,ydata,n)其中n表示多项式的最高阶数xdata,ydata为要拟合的数据,它是用向量的方式输入。输出参数a为拟合多项式y=anxn+…+a1x+a0的系数a=[an,…,a1,a0]。多项式在x处的值y可用下面程序计算。y=polyval(a,x)由于高次多项式曲线变化不稳定,所以多项式次数的选取不宜过高。例如2021/5/24编写程序调用matlab命令或者调用M函数也可以直接编写程序如下:clc;clf;x=1949:5:1994;y=[541.67,602.66,672.09,704.99,806.71,908.59,975.42,1034.75,1106.76,1176.74];plot(x,y,'r*','linewidth',2)grida11=10;a12=sum(x);a21=a12;a22=sum(x.^2);d1=sum(y);d2=sum(x.*y);A=[a11,a12;a21,a22];D=[d1;d2];ab=inv(A)*Dplot(x,g,'b-','linewidth',2)t=1949:5:2010;g=ab(1)+ab(2)*t;holdonplot(t,g,'b-','linewidth',2)y2000=ab(1)+ab(2)*2000y2005=ab(1)+ab(2)*2005y2010=ab(1)+ab(2)*2010axis([194520125001450])plot(2000,1295.3,'g*','linewidth',2)plot(2005,1306.28,'g*','linewidth',2)plot(2010,1370.5,'g*','linewidth',2)计算得仿真结果表明:线性模型在短期内基本上能比较准确地反映人口自然增长的规律,但长期预测误差较大。英国统计学家Malthus于1798年提出了一种关于生物种群繁殖的指数增长模型:假设种群数量的增长率与该时刻种群的个体数量成正比。解:计算得仿真结果表明:人口增加的指数模型在较短期内基本上能比较准确地反映人口自然增长的规律,但长期预测误差很大。四、人口预测的Logistic模型假设结果显示:Logistic模型在长期预测时基本上能比较准确地反映人口自然增长的规律,在2005,2010年较为吻合。五、人口预测的多项式模型例2:海底光缆线长度预测模型解:用12次多项式函数拟合光缆走势的曲线图如下%prog45.mThisprogramistofitthedatabypolynomial%formatlongt=linspace(0,20,21);x=linspace(0,20,100);P=[9.01,8.96,7.96,7.97,8.02,9.05,10.13,11.18,12.26,13.28,13.32,12.61,11.29,10.22,9.15,7.90,7.95,8.86,9.81,10.80,10.93];[a,s]=polyfit(t,P,12);yy=polyval(a,x);disp('yy=');disp(yy);plot(x,yy,'r*--',t,P,'b+-');L=0;fori=2:100L=L+sqrt((x(i)-x(i-1))^2+(yy(i)-yy(i-1))^2);enddisp('ThelengthofthelabelisL=');disp(L);上机任务THANKYOURATTENDING