数值分析作业-曲线拟合的最小二乘法
《数值分析》实验报告
课题八: 曲线拟合的最小二乘法
姓 名: 学 号: 专 业: 学 院:
一、实验课题:曲线拟合的最小二乘法
从随机的数据中找出其规律性,给出其近似表达式的问题,在生产实践和科学实验中大量存在,通常利用数据的最小二乘法求得拟合曲线。
在某冶炼过程中,根据统计数据的含碳量与时间关系,试求含碳量与时间t 的拟合曲线。
二、理论意义和实用价值。
如果已知函数f(x)在若干点xi(i=1,2,…,n) 处 的值y i , 便可根据插值原理来建立插值多项式作为f(x)的近似。但在科学实验和生产实践中,往往会遇到这样一种情况,即节点上的函数值并不是很精确的,这些函数值是由实验或观测得到的数据,不可避免地带有测量误差,如果要求所得的近似函数曲线精确无误地通过所有的点(xi ,y i ), 就会使曲线保留着一些测试误差。当个别数据的误差较大时, 插值效果显然是不理想的。此外, 由实验或观测提供的数据个数往往很多, 如果用插值法, 势必得到次数较高的插值多项式,这样计算起来很烦琐。
所以我们设想:在大量的随机数据X (X 1、X 2、X 3……X n) 与Y(y1、y 2、……y n), 从看似无规律的这两组离散数据中,找到一条一条曲线Y=F(x),使数据点均在离此曲线的上方或下方不远处, 它既能反映数据的总体分布, 又不至于出现局部较大的波动, 更能反映被逼近函数的特性, 使求得的逼近函数与已知函数从总体上来说其偏差按某种方法度量达到最小, 这就是曲线拟合最小二乘法。 在对给出的实验(或观测) 数据作曲线拟合时, 一般希望各实验(或观测) 数据与拟合曲线的偏差的平方和最小, 这就是最小二乘原理。
曲线拟合不要求曲线通过所有已知点, 而是要求得到的近似函数能反映数据的基本关系。此外,由于实验或观测提供的数据个数往往很多,如果用插值法,势必得到次数较高的插值多项式,这样计算起来很麻烦,缺乏实用价值,所以从某些意义上来说, 在解决实际问题的过程中,曲线拟合更具有实用价值。
三、计算过程
将给定数据作散点图,始图所示,选择形如S 1(X)=a 1(x)+a2(x2)+a3(x3) 作为拟
合曲线,这里∅ x =span(1,x, x 2, x 3)
设f (x ) ∈C [a , b ], Φ=span {ϕ0, , ϕn }⊂C [a , b ], ϕ0, , ϕn 是
正交函数族,则
*
⎤⎡(f , ϕ0) ⎤⎤⎡a 0 ⎡(ϕ0, ϕ0)
⎢⎥⎢*⎥⎢(f , ϕ) ⎥(ϕ1, ϕ1) ⎢1⎥⎥ ⎢a 1⎥ = ⎢ ⎢⎥⎢ ⎥⎢ ⎥
⎥⎢*⎥⎢⎥ ⎢(ϕ, ϕ) (f , ϕ) a n n ⎦⎢n ⎦⎣⎣n ⎥⎦⎣
* a k =(f , ϕk ) /(ϕk , ϕk ), (4.8)
n n
(f , ϕk ) ** s n (x ) =∑a k ϕk (x ) =∑ϕk (x ) . (4.9)2
k =0k =0||k ||2 均方误差 ||δ(x ) ||= ||f (x ) -s *(x ) ||=(f (x ) -s *(x ), f (x )) 1/2
n
2
n
2
n
⎛⎫⎛(f , ϕk ) (f , ϕk ) 2
⎪ =(f , f ) -(ϕ, f ) =||f ||-∑∑k 222⎪ k =0||ϕk ||2k =0||ϕk ||2⎝⎭⎝
根据以上公式求出:a 0=0.000 a1=-0.0052 ,a 2=0.2634 a3=0.0178
n
n
12
2
⎫⎪⎪. ⎭
12
所求的拟合曲线为S 1(X)=-0.0052X+0.2634x2+0.0178x3
若取S 2(X)=a0+a1(x)+a2(x2)
求出a 0=-0.0024 a1=0.2037 ,a 2=0.2305 所求的S 2(X)=-0.0024+0.2037x+0.2305x2
四、曲线拟合图
五、结构程序设计
x=0:5:55
y=[0 1.27 2.16 2.86 3.44 3.87 4.15 4.37 4.51 4.58 4.02 4.64]; xnum=length(x); plot(x,y,'o'),hold on;
pi=polyfit(x,y,3) pj=polyfit(x,y,2) newx=0:0.1:55;
newyi=polyval(pi,newx); newyj=polyval(pj,newx);
yi=polyval(pi,x) yj=polyval(pj,x)
erri=yi-y
errj=yj-y
plot(x,erri,'.r'),hold on; plot(x,errj,'*b'),hold on;
S_erri=sum(erri.^2) S_errj=sum(errj.^2)
plot(newx,newyi,'r',newx,newyj,'b'),grid off,hold off;
x =
0 5 10 15 20 25 30 35 40 45 50 55 pi =
0.0000 -0.0052 0.2634 0.0178 pj =
-0.0024 0.2037 0.2305 yi =
Columns 1 through 8
0.0178 1.2087 2.1646 2.9113 3.4745 3.8800 4.1536 4.3211 Columns 9 through 12
4.4082 4.4407 4.4444 4.4450 yj =
Columns 1 through 8
0.2305 1.1894 2.0293 2.7502 3.3521 3.8349 4.1987 4.4435 Columns 9 through 12
4.5693 4.5760 4.4637 4.2324 erri =
Columns 1 through 8
0.0178 -0.0613 0.0046 0.0513 0.0345 0.0100 0.0036 -0.0489 Columns 9 through 12
-0.1018 -0.1393 0.4244 -0.1950 errj =
Columns 1 through 8
0.2305 -0.0806 -0.1307 -0.1098 -0.0879 -0.0351 0.0487 0.0735 Columns 9 through 12
0.0593 -0.0040 0.4437 -0.4076 S_erri = 0.2583 S_errj = 0.4720
六、结果讨论和分析
最小二乘意义下的曲线拟合, 由于方程比较简单, 实际中应用广泛, 特别是因为任何连续函数至少在一个较小的邻域内可以用多项式任意逼近, 因此用多项式作数据拟合, 有它的特殊重要性。从而在许多实际问题中, 不论具体函数关系如何, 都可用多项式作近似拟合, 但用多项式拟合时, 当n 较大时(n≥7), 其法方程的系数矩阵的条件数一般较大, 所以往往是病态的, 因而给求解工作带来了困难。