数学建模之数据拟合
+ a3>0
+ +
+
f=a1+a2x+a3x2
+
+ +
a3<0
+
+
f=a1+a2/x +
+++ +
+ f=ae-bx + a,b>0 + ++
f=aebx +
++ +
+ a,b>0
14
非线性最小二乘拟合的线性化
如下非线性拟合函数可以线性化:
(1)双曲线 1 a b
y
x
(2)幂函数曲线 y=a x b , 其中 x>0,a>0
数学建模
拟合篇
1
目的
1、了解数据拟合的基本内容; 2、学习用Matlab软件求解拟合问题;
内容
1、拟合问题引例及基本理论;
2、用数学软件求解拟合问题; 3、应用实例; 4、实验作业;
2
拟合
1. 拟合问题引例 2.拟合的基本原理
3
拟合问题引例1
已知热敏电阻数据:温度t(0C) 20.5 32.7 51.0 73.0 95.7 电阻R() 765 826 873 942 1032
(2)
i1 k 1
问题归结为:求 a1,a2, …,am 使 J(a1,a2, …,am) 最小。
11
最小二乘法的求解:预备知识
超定方程组:方程个数大于未知量个数的方程组
r11a1
r12a2
r1m am
y1
(n m)
rn1a1 rn2a2 rnmam yn
即 Ra=y
r11 r12 其中 R
rn1 rn2
r1m , rnm
a1
a
,
am
y1
y
yn
注:超定方程一般是不存在解的矛盾方程组。
n
如果有向量 a 使得 (ri1a1 ri2a2 rimam yi )2 达到最小, i 1
则称 a 为上述超定方程的最小二乘解。
12
最小二乘法的求解:预备知识
所以,根据多元函数取得极值的必要条件,曲线拟合的最
(1)
其中 a1,a2, …,am 为待定系数。
第二步:以最小二乘准则确定a1,a2, …,am ,即使n个点(xi , yi)
处yi与f(xi) 的差i 的平方和最小 。
n
n
记 J (a1, a2,L , am )
2 i
[ f (xi ) yi ]2
i 1
i 1
nm
[ ak rk (xi ) yi ]2
总之, 函数插值与曲线拟合都是要根据一组数据构造一个函 数作为近似,由于近似的要求不同,二者的数学方法上是完全 不同的。
实例:下面数据是某次实验所得,希望得到x和 f之间的关系。
x 1 2 4 7 9 12 13 15 17 f 1.5 3.9 6.6 11.7 15.6 18.8 19.6 20.6 21.1
求血药浓度随时间的变化规律c(t).
2
1020
半 直对 角数坐坐标标系系下下的的散散点点图图
18
16
14
12
1
10 10
8
6
4
100
2 0
1
2
3
4
5
6
7
0
1
2
3
4
5
6
7
MATLAB(aa1)
c(t) c0ekt c, k为待定系数
5
8 8
曲线拟合问题的提法
已知一组(二维)数据,即平面上 n个点(xi,yi) i=1,…,n, 寻 求一个函数(曲线)y=f(x), 使 f(x) 在某种准则下与所有数 据点最为接近,即曲线拟合得最好。
下面我们看一下插值和拟合的异同: MATLAB(cn) 7
25
20
curve fit
15
nearest
10
5
0 0 2 4 6 8 10 12 14 16 18
曲线拟合与最临近插值进行比较
8
25
20 curve fit
15 linear
10
5
0 0 2 4 6 8 10 12 14 16 18
曲线拟合与线性插值进行比较
13
线性最小二乘拟合 f(x)=a1r1(x)+ …+amrm(x)中 函数{r1(x),…,rm(x)}的选取 1. 通过机理分析建立数学模型来确定 f(x);
2. 将数据 (xi , yi) i=1, …,n 作图,通过直观判断确定 f(x):
f=a1+a2x +
++
++
f=a1+a2x+a3x2 +
(3)指数曲线 y=a ebx 其中参数 a>0.
(4)倒指数曲线 y=aeb / x 其中 a>0,
(5)对数曲线 y=a+blnx,x>0
(6)S
型曲线
y
a
1 bex
15
用MATLAB解拟合问题
1、线性最小二乘拟合 2、非线性最小二乘拟合
16
用MATLAB作线性最小二乘拟合
1. 作多项式f(x)=a1xm+ …+amx+am+1拟合,可利用已有程
求600C时的电阻R。
1100
因此可以设
1000
R=at+b
900
a,b为待定系数
800
700
20
40
60
80
100
4
拟合问题引例2
已知一室模型快速静脉注射下的血药浓度数据(t=0注射300mg) t (h) 0.25 0.5 1 1.5 2 3 4 6 8
c (g/ml) 19.21 18.15 15.36 14.10 12.89 9.32 7.45 5.24 3.01yBiblioteka ++
+
+
+
(xi +i,yi)
+
+
n
误差平方和: i 2 i 1 尽可能小!
y=f(x) +
其中 i =yi -f(xi )
x
6
拟合与插值的关系
问题:给定一批数据点,需确定满足特定要求的曲线或曲面 解决方案: •若要求所求曲线(面)通过所给所有数据点,就是插值问题; •若不要求曲线(面)通过所有数据点,而是要求它反映对象整 体的变化趋势,这就是数据拟合,又称曲线拟合或曲面拟合。
序:
a=polyfit(x,y,m)
输出拟合多项式系数 a=[a1,…,am,am+1] (数组)
输入同长度 的数组x, y
拟合多项式次数,特 别m=n-1时,所得多 项式为插值多项式!
9
25
20
curve fit
15
spline
10
5
0 0 2 4 6 8 10 12 14 16 18
曲线拟合与样条插值进行比较
10
线性拟合问题的解法—最小二乘法的基本思路,
第一步:先选定一组函数 r1(x), r2(x), …,rm(x), m<n, 令
f(x)=a1r1(x)+a2r2(x)+ …+am rm(x)
小二乘法要解决的问题,就转化为求以下超定方程组最小二乘
解的问题。
Ra=y
(3)
其中
r1 ( x1 ) rm ( x1 )
R
,
r1 ( xn ) rm ( xn )
a1
a
,
am
y1
y
yn
定理:当RTR可逆时,超定方程组(3)存在最小二乘解,
且就是方程组
RTRa=RTy 的解:a=(RTR)-1RTy