数学实验4-曲线拟合

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
x2=[62.9;76.0;92.0;106.5;123.2;131.7;150.7;179. 3;204.0;226.5];
lnx1=log(x1); lnx2=log(x2);
a12=sum(t1);a11=10;a21=a12;a22=sum(t1.^2); d1=sum(lnx1);d2=sum(lnx1.*t1); A=[a11,a12;a21,a22];D=[d1;d2]; ab=inv(A)*D; disp('a=');disp(ab(1)); disp('b=');disp(ab(2)); for i=1:10
y = ax + b 线性模型
如何确定a,b?
一、曲线拟合
1 曲线拟合问题的提法:
已知一组(二维)数据,即平面上的 n 个点(xi , yi ), i =1,2, ",n, xi 互不相同,寻求一个函数(曲线)y = f (x),
使 f (x) 在某种准则下与所有数据点最为接近,即曲线拟合
得最好,如图:
年份 1790 1800 1810 1820 1830 1840 1850 1860 1870 1880
人口 3.9 5.3 7.2 9.6 12.9 17.1 23.2 31.4 38.6 50.2
(百万)
年份 1890 1900 1910 1920 1930 1940 1950 1960 1970 1980
y
确定f(x)使得
δ i + ( xi , yi )
n
n
∑ ∑ δ
2 i
=
[ f ( xi ) − yi ]2
++
+ y = f (x)
i =1
i =1
达到最小
+
+
+
+
0
最小二乘准则
x
2. 用什么样的曲线拟合已知数据?
1.画图观察; 2.理论分析
常用的曲线函数系类型:
直线: y = a1 x + a2
从而得到人口数与年份的函数关系为
y = 15x − 27754 线性预测模型
把x=1999代如,估算出1999年的人口数为 y=1252.1(百万)=12.52亿
1999年实际人口数量为12.6亿。
三、人口预测的Malthus模型
英国人口学家Malthus根据百余年的人口统计资
料,于1798年提出了著名的人口自然增长的指数增
解:
设 x(t ) = ea+bt
ln( x) = a + bt
问题转化为求参数 a,b 使得
10
∑ J (a,b) = (a + bti − ln xi )2 i =1
取得最小值.其中,ti 表示年份,xi = x(ti ) 表示人口数量。
∑ ∑ ∑ ∑ ∑ 解方程组:
⎧1 ⎪⎪ 2 ⎪⎨1 ⎪⎩ 2
长模型。
基本假设 : 人口(相对)增长率 r 是常数
x(t) ~时刻t 的人口, t=0时人口数为x0
⎪⎧dx ⎨ dt
=
rx,
⎪⎩ x(0) = x0
⇒ x(t) = x0ert
指数增长模型
实际中,常用 ⇔ x(t ) = ea+bt ⇔ ln x(t ) = a + bt
例1
美国1790年-1980年每隔10年的人口记录
xx1(i)=exp(ab(1)+ab(2)*t1(i)); end for i=1:10
xx2(i)=exp(ab(1)+ab(2)*t2(i)); end plot(t1,x1,'r*--',t1,xx1,'b+-', t2,x2,'g*--',t2,xx2,'m+-');
实验9 人口预测与数据拟合
1、学会用MATLAB软件
实验目的 进行数据拟合
2、掌握在最小二乘意 义下数据拟合的理论和 方法.
3、通过对实际问题的 分析和研究,初步掌 握建立数据拟合数学 模型的方法
实验问题
据人口统计年鉴,知我国从1949 年至1994年人口数据资料如下: (人口数单位为:百万)
年份 人口数 年份 人口数
人口 62.9 76.0 92.0 106.5 123.2 131.7 150.7 179.3 204.0 226.5
(百万)
1. 由前100年的数据求出美国的人口增长Malthus模型。 2. 预测后100年(每隔10年)的人口状况。 3. 根据预测的人口状况和实际的人口数量,讨论人 口模型的改进情况。
多项式: y = a1 x m + " + am x + am+1
双曲线(一支):
y
=
a1 x
+
a2
指数曲线: y = a1ea2x
3 拟合函数组中系数的确定
以f ( x) = a1 x + a2为例, 即确定a1,a2使得
n
n
∑ ∑ J (a1,a2 ) =
δ
2 i
=
[a1 xi + a2 ) − yi ]2达到最小。
∂J ∂a ∂J ∂b
= =
10a ⎜⎛ 10 ⎝ i=1
+ ti
⎜⎛ ⎝
10 i =1
ti
⎟⎞a + ⎜⎛
⎠⎝
⎟⎞b ⎠

10 i =1
ln
xi
10 i =1
ti2
⎞⎟b ⎠

10 i =1
=0
(ln xi
)ti
=0
即得参数a,b 的值.
% prog41.m %
% This program is to predict the number of population %
பைடு நூலகம்
i =1
i =1
为此,只需利用极值的必要条件 ∂J = 0(k = 1,2)得到关 ∂ak
于 a1 , a2 的线性方程组,
∑ ⎧ n
⎪⎪ ⎨
i
=1 n
2[a1 xi
+
a2 ) −
yi ]xi
=
0
∑ ⎪
⎪⎩
i =1
2[a1 xi
+
a2 ) −
yi ] =
0
⇒ a1 ,a2
二、人口预测线性模型
对于开始提出的实验问题, 代如数据,计算得 a1 = 15,a2 = −27754
format long
t1=[1790;1800;1810;1820;1830;1840;1850;1860;187 0;1880];
t2=[1890;1900;1910;1920;1930;1940;1950;1960;197 0;1980];
x1=[3.9;5.3;7.2;9.6;12.9;17.1;23.2;31.4;38.6;50 .2];
1949 541.67 1974 908.59
1954 1959 602.66 672.09
1979 1984 975.42 1034.75
1964 1969 704.99 806.71
1989 1994 1106.76 1176.74
(1)在直角坐标系上作出人口数的图象。
(2)建立人口数与年份的函数关系,并估算1999年 的人口数。
相关文档
最新文档