当问题的机理非常不清楚难以直接利用其他知识来建模时,一个较为

Download Report

Transcript 当问题的机理非常不清楚难以直接利用其他知识来建模时,一个较为

第三章 经验模型
经验模型和数据拟合
当问题的机理非常不清楚难以直接
利用其他知识来建模时,一个较为自
然的方法是利用数据进行曲线拟合,找
出变量之间的近似依赖关系即函数关系。
经验模型
当问题的机理非常不清楚难以直接利用其它知识来
建模时,一个常见的方法就是利用已有数据进行曲线拟
合,找出变量之间函数关系的近似表达式,我
们称之为经验公式。通过经验公式建立的模
型称为经验模型。
经验模型区别于其它类型模型的特点是它的建立不
需要根据问题机理去提出假设,它只是建模者对数据分
析所做的经验判断。建模者要首先对照数据特点
根据自己的经验判断该函数关系应当用哪类
函数中的一个来近似表达,两者的偏差不会
太大。其后,只需在此类函数中找出在某种
意义下偏差最小的一个即可。
建立经验模型的一般步骤为:
(1)将数据画在某坐标系中,观察这些点的分布,
根据经验判定哪类函数作为近似表达式较为合
适
(2)然后确定函数中的参数,使经验公式与数据的
相符性在某种意义下最好
(3)最后,对公式做试用检验,考察其造成的误差
是否在可接受的范围内,若不能接受,则需要
修正经验公式,重新建模。
建立经验公式较为常用的方法有最小二
乘法和插值方法。
(最小二乘法)
假设经过测量得到的n组数据列表如下:
xi
yi
0
1
2
3
4
5
6
7
27.0 26.8 26.5 26.3 26.1 25.7 25.3 24.8
将这些数据画在平面直角坐标系中,见散点图
2-10。从图上可看出,这些点的分布大致在一条直
线附近,于是我们根据经验判断y=f(x)是线性函
数,并设f(x)=ax+b,其中a,b 为待定常数。
27.5
27
26.5
26
25.5
25
24.5
24
0
1
2
3
4
图3-1
5
6
7
常数a,b如何选定呢?我们当然希望 y  ax  b 经过所有
的数据点,即对于每个
yi  (axi  b)  0 ,但此式
x i ,能有
一般是不成立的
我们只能要求 yi 与 axi  b的偏差 yi  (axi  b),(i  1, 2, , n) ,都
y  ax  b 

很小。那么所有偏差之和
最小能否保证每个
偏差都很小呢?显然不行,因为偏差有正有负,求和时有
可能会互相抵消从而将偏差掩盖起来。若要求偏差的绝对
n
值之和  yi  axi  b 很小的话,虽然可以避免这种相互
i 1
抵消,但函数不具备连续的导函数,不利于进一步的讨
论。为避免上述两种情况的产生,我们一般都采用以误差
n
2




y

ax

b

i
i
的平方和i 1
达到最小的方法来保证总体偏差较
小。这种选择参数a、b的方法叫做最小二乘法。
n
i 1
i
i
n
  y  ax
 b 
2
是一个二元函数,由多元微积分知
识,为使它取到最小,只需令其对变量、的一阶偏
导数均为零,解相应的二元一次方程组即可,据此,
不难求得:
i 1
i
i


n

xi  x y i  y


a  i 1 n
2

x

x


i
i

1



b  y  ax


其中
1 n
x   xi
n i 1

1 n
y   yi
n i 1

例1 (刀具的更换)
用自动化机床连续加工某零件,由于刀具损坏等原因会生
产出次品,但实际情况是,当发现刀具已坏时,利用这把
坏刀具也许已经生产了若干个次品。如果我们能在平时生
产中留意一下,掌握刀具磨损的规律,在其坏掉之前就将
它更换下来,也许可以减少因出次品而造成的损失。为此,
我们做了这样一个实验,每隔一小时,测量一次刀具的厚
度,得到后面表格中的数据,其中
x i :刀具使用时间(单位:小时)
yi :刀具厚度(单位:毫米)。
Xi
Yj
0
1
2
3
4
5
6
7
27.0 26.8 26.5 26.3 26.1 25.7 25.3 24.8
经拟合,我们可得经验公式
为 y  f ( x)  0.3036x  27.125 ,其图形见图211。假如我们发现在刀具的厚度为10mm时
损坏的概率极大,那么我们只需
令 f ( x)  10 ,得 x  55.964 ,即当刀具使用了
近56个小时之后,刀具的厚度将变为10mm。因此
我们可以考虑使用刀具55或56个小时后更新刀具
(注:这里我们没有考虑更换刀具的费用。如果
刀具较为昂贵,还应求解一个优化问题),已确
定怎样做可以使总费用最省。
27.5
27
26.5
26
25.5
25
24.5
0
1
2
3
4
图3-2
5
6
7
8
例2 (地高辛的使用)
地高辛是用来治疗心脏病的一种药物。医生在开处方
时必须写明用药量,要便保持血液中地高辛的浓度,使之
既高于有效水平以保持药效,又不至于超过安全用药水平
而导致危险,为此,医生必须研究地高辛在血液中的衰减
率。假定地高辛在血液中的初始剂量为0.5mg(毫克),
经过检测得到下表的数据如下:
表3
X
0
Y 0.50
0
1
2
3
4
5
6
7
8
0.345 0.238 0.164 0.113 0.078 0.054 0.037 0.026
其中x表示使用初始剂量之后的天数,而则表示某特
定病人血液中剩余的地高辛含量。根据表中的数据,我们
想建立y与之x间的关系。
将上述数据点画在x-y平面上,(如图2-12所示)显
然这些点并不在任何一条直线的附近,不能使用我们前述
的最小二乘法,但根据经验,这些数据好像在一条指数函
数图形的附近,因此我们考虑是否用指数函数来拟合y与x
之间的关系
对y取对数得 x  ln y 对照表:
表4
x
0
1
2
3
4
5
6
7
8
ln y
0.693
1.064
1.435
1.808
2.180
2.551
2.919
3.297
3.650
0.5
0.45
0.4
0.35
0.3
0.25
0.2
0.15
0.1
0.05
0
0
1
2
3
4
图3-3
5
6
7
8
再将数据画在x-y平面上,如图2-13所示,
这次你就会发现这些点几乎就分布在一条直线的
附近了,令这条直线的方程为 ln y  ax  b ,并用
a  0.371
最小二乘法求得
,b  0.693
故可令ln y  0.371x  0.693 ,即 y  0.5e
0.371 x
,
此即我们希望得到的关系式。此方程图形与原散
点图的对照图可见图2-14。若地高辛的有效水平
为0.0055mg,令0.0055得12.16。因此我们考虑服
药12天之后补充药物。
-0.5
0.5
0.45
-1
0.4
-1.5
0.35
0.3
-2
0.25
-2.5
0.2
0.15
-3
0.1
-3.5
0.05
-4
0
1
2
3
4
图3-4
5
6
7
8
0
0
1
2
3
4
图3-5
5
6
7
8
最小二乘法的使用需要对各种常用函数的图形有大致
ln y
的了解,也需要一定的技巧,如例2.2中对y取对数后x与
构成线性关系。有时,需要对x、y均取对数值得到新的数
据 (ln x, ln y);观察新的数据点是否满足线性关系,若满
a
b
y

e

x
ln
y

a

b
ln
x
足用最小二乘拟合为
,即
来拟合,
此时y是x的幂函数。有时也需要对、之一取倒数值或二者
均取倒数值得到新的数据
1
( , y)
x
1
( x, )
y
1 1
( , )
x y
观察新的数据点是否近似满足线性关系,假如基本满
足再用线性函数拟合。
例3 体重与身高的 关系
我们希望建立一个 体重与身高之间的关系式,不难看出两者
之间的关系不易通过机理的分析得出,不妨可以采取 统计
方法,用数据来拟合出与实际情况较为相符的经验公式。
0.75 0.86
0.96
1.08
1.12 为
身高 h(米)
此,我们先作一番抽样调查,测量了十五个不同高度的人的
10
12
15
17
20
体重 w(公斤)
体重,列成了
下表,在抽样时,各高度的人都需经适当挑选,
既不要太胖也不要太瘦。
1.26 1.35
1.51
1.55
1.60
身高 h(米)
将表中的数画 到h-w平面上,你会发现这些数据分布很接近某
35
41
48
50
体重 w(公斤) 27
一指数曲线。为此, 对h和w均取对数,令x=lnh,y=lnw,将
(x
i, y
i)再画到x-y平面中去(i=1,…,15),这次你会发现这
1.63 1.67
1.71
1.78
1.85
身高
h(米)
些点几乎就分布在一条直线附近,令此直线的 方程为
54
59
66
75
体重 w(公斤) 51
y=ax+b,用最小二乘法求
得a≈2.3,b≈2.82,故可取
y=2.32x+2.84,即lnw=2.32lnh+2.84,故有w=17.1h2.32
1 1
x y
比如,若 ( , ) 满足线性关系
,则原先的变量x、y满足双曲函数
1
1
a
y
x
y
x
ax  b
如果的数据点 ( x, y )明显地分布在一条抛物线附近,
我们还可以用二次函数去拟合曲线,采用最小二乘法,我
们类似可以导出求参数a 、 b、c的公式,但公式较为复杂,
好在现在许多数学软件中均有专用的最小二乘拟合命令,
利用这些命令,几乎可以拟合所有类型的函数,我们所做
的只是输入数据点和想要的拟合函数类型表达式,马上就
可以得到结果,这给我们带来了很大的便利。
(插值法)
在使用最小二乘法时,我们并未要求得到的拟合曲线
一定要经过所有的样本点,而只是要求总偏差最小。然
而,当实际问题(如某地区人口统计)要求拟合曲线必须
经过样本点时,我们则一般选取多项式函数让其通过这些
点,但在样本点数量较多时,这样的曲线有可能弯曲得太
多,解决的方法就是将样本点就近分组,对每一分组用较
低次数的多项式来近似表示,即使用分段插值法。普通插
值法的使用有可能使曲线在连接点处出现尖角,导致数学
上的不可导(不光滑)现象。根据实际问题的不同需要,
可采用只要求过样本点的拉格朗日插值法、牛顿插值法
等,也可以采用既要求过插值点(即样本点)又对插值点
处的导数有所要求的样条(Spline)插值,甚至还有对插
值曲线的凹凸性也有要求的B样条插值法。
本书不准备详细介绍这些细致的插值方法,只是提请
读者注意,在建立经验模型时,插值法也是可以使用的数
学工具之一。对插值法感兴趣的读者可以查阅相关书籍。