用多项式模型进行数据拟合实验报告(附代码)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验题目: 用多项式模型进行数据拟合实验 1 实验目的

本实验使用多项式模型对数据进行拟合,目的在于:

(1)掌握数据拟合的基本原理,学会使用数学的方法来判定数据拟合的情况; (2)掌握最小二乘法的基本原理及计算方法; (3)熟悉使用matlab 进行算法的实现。

2 实验步骤

2.1 算法原理

所谓拟合是指寻找一条平滑的曲线,最不失真地去表现测量数据。反过来说,对测量 的实验数据,要对其进行公式化处理,用计算方法构造函数来近似表达数据的函数关系。由于函数构造方法的不同,有许多的逼近方法,工程中常用最小平方逼近(最小二乘法理论)来实现曲线的拟合。

最小二乘拟合利用已知的数据得出一条直线或曲线,使之在坐标系上与已知数据之间的距离的平方和最小。模型主要有:1.直线型2.多项式型3.分数函数型4.指数函数型5.对数线性型6.高斯函数型等,根据应用情况,选用不同的拟合模型。其中多项式型拟合模型应用比较广泛。

给定一组测量数据()i i y x ,,其中m i ,,3,2,1,0Λ=,共m+1个数据点,取多项式P (x ),使得

min )]([020

2=-=∑∑==m

i i i

m i i y x

p r ,则称函数P (x )为拟合函数或最小二乘解,此时,令

∑==n

k k

k n x a x p 0

)(,使得min ])([02

002=⎪⎪⎭

⎫ ⎝⎛-=-=∑∑∑===m

i n k i k

i k m

i i i n y x a y x p I ,其中

n a a a a ,,,,210Λ为待求的未知数,n 为多项式的最高次幂,由此该问题化为求),,,(210n a a a a I I Λ=的极值问题。

由多元函数求极值的必要条件:0)(200

=-=∂∂∑∑==m i j i n

k i k i k i x y x a a I

,其中n j ,,2,1,0Λ= 得到:

∑∑∑===+=n k m

i i j i k m

i k

j i

y x a x

)(,其中n j ,,2,1,0Λ=,这是一个关于n a a a a ,,,,210Λ的线

性方程组,用矩阵表示如下所示:

⎥⎥⎥

⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡⎥⎥⎥⎥⎥⎥⎥⎥⎦

⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡

+∑∑∑∑∑∑∑∑∑∑∑=====+==+====m i i n i m i i i m i i n m

i n i m

i n i

m

i n i m

i n i m

i i

m i i

m

i n i

m

i i

y x y x y a a a x x

x x x

x

x x m 00010020

10

0102000

1M M

Λ

M M

M Λ

Λ 因此,只要给出数据()i i y x ,,数据点个数m ,所要拟合的参数n ,就可求出未知数据阵

),,,,(210n a a a a Λ

2.2 实验步骤

(1)根据已知数据(ch3 huaxuefy.m ),绘制出数据的散点图,如图1所示: 注:x 从1开始取值,值与值间隔为1。y 取文件ch3 huaxuefy.m 中的数据。

图1 已知数据散点图

(2)计算矩阵⎥⎥⎥⎥

⎥⎥⎥⎥⎦

⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡

+=∑∑∑∑∑∑∑∑==+==+====m

i n i m

i n i

m

i n i m

i n i m

i i

m i i

m

i n i m

i i x x

x x x

x

x x m A 020

10

1020

M M

M Λ

Λ,该矩阵为(n+1)*(n+1)矩阵。 (3)计算矩阵⎥⎥⎥⎥⎥

⎥⎥⎦

⎢⎢⎢⎢⎢⎢⎢⎣⎡=∑∑∑===m i i n i m i i i m i i y x y x y B 00

0M 。

(4)写出正规方程,求出n a a a a ,,,,210Λ。

(5)绘制出数据拟合后的曲线图。分别取n=6,n=8,n=10,n=11,n=12,n=13,n=14,曲线图如下

所示:

图2 n=6时拟合曲线

图3 n=8时拟合曲线

图4 n=10时拟合曲线

图5 n=11时拟合曲线

图6 n=12时拟合曲线

图7 n=13时拟合曲线

3 实验结果分析

通过运用最小二乘法对多项式模型进行数据拟合处理,获得n 次多项式及其系数

n a a a a ,,,,210 。分别取多项式次数n=6,n=8,n=10,n=11,n=12,n=13,n=14绘制拟合曲线,观察

曲线图可知,对于最高次数不同的多项式,拟合结果是不一样的,即对于数据的逼近程度是不相同的。随着n 的增大,曲线拟合效果变好;当n=10时,达到最好拟合效果;n 继续增大,曲线拟合效果又变差。因此,对于相同的数据,并不是多项式的次数n 越高,拟合程度就越好。

4 实验结论

通过实际做实验,得出了如下结论:离散数据点,可以采用多项式模型进行拟合,通过最小二乘法可以求得其最优多项式。此外,还得出一个结论:对于数据拟合,并不是多项式次数越高,拟合就越逼近。对此现象,在数值分析的参考书中找到了原因,这是龙格现象,即对于一个等间距节点的高次插值多项式,不收敛于插值函数。

相关文档
最新文档