非线性最小二乘曲线拟合的线性化探究.docx
- 文档编号:24431023
- 上传时间:2023-05-27
- 格式:DOCX
- 页数:17
- 大小:110.88KB
非线性最小二乘曲线拟合的线性化探究.docx
《非线性最小二乘曲线拟合的线性化探究.docx》由会员分享,可在线阅读,更多相关《非线性最小二乘曲线拟合的线性化探究.docx(17页珍藏版)》请在冰豆网上搜索。
非线性最小二乘曲线拟合的线性化探究
非线性最小二乘曲线拟合的线性化探究
摘要:
利用非线性最小二乘法的基本思想,总结非线性特征曲线拟合的方法,包括指数
曲线拟合法,饱和指数曲线拟合法,双曲线拟合法以及这些方法的应用。
关键字:
最小二乘法非线性指数拟合法matlab
在自然科学、社会科学等领域内,人们常常希望掌握某种客观存在的变量之间的函数
关系,通过实验、观测和社会调查获得大量的数据后,从这些数据中总结出所需要的函数关
系。
这类问题就是曲线拟合问题。
非线性最小二乘曲线拟合法,就是利用非线性最小二乘法的基本思想和一些典型的非
线性特征曲线来实现预测的方法。
以下首先介绍线性最小二乘法的基本思想。
然后,尝试使
用非线性特征曲线拟合法,包括指数曲线拟合法,饱和指数曲线拟合法以及双曲线拟合法。
通过一些现实生活中我们所遇到的问题,禾惋这些拟合法作简单预测。
般的最小二乘法逼近
在科学实验的统计方法研究中,往往要从一组实验数据(xi,yi)(i=0,1,2,,,m)中寻
找自变量x与因变量y之间的函数关系y=Fx。
由于观测数据往往不准确,因此不要求
y=F(x经过所有点(Xi,yi),而只要求在给定点Xi上误差6i=F(Xj)-yi(i=0,1,2,,,m)按某种标准最小。
若记6=(&◎,…,»T,就是要求向量6的范数||61|最小。
如果用最大范数,计算上困难较大,通常就采用Euclid范数罔|2作为误差度量的标准。
关于最小二乘法的一般的提法是:
对于给定的一组数据(xi,yi)(i=0,1,2,,,m),要
求在函数空间即-span…中找一个函数y二S”x,使误差平方和
mmm
(1)
(2)
I卜||2八.:
i=為[S”xi"i-yA二刃n丫[S*、';-*\
i=ei尹i亠
这里Sx=a0;0X-a!
■';X•an「nx(nvm)。
这就是一般的最小二乘逼近,用几何语言说,就称为曲线拟合的最小二乘法。
用最小二乘法求拟合曲线时,首先要确定Sx的形式。
这不是单纯数学问题,还与所
研究问题的运动规律即所得观测数据(xi,yi)有关;通常要从问题的运动规律及给定数据
描图来确定SXi的形式,并通过实际计算选出较好的结果一一这点将从下面的例题得到说
这里wX_0是a,b1上的权函数,它表示不同点Xi,fxi处的数据比重不同,例如,
wXi可表示在点Xi,fXi处重复观测的次数。
用最小二乘法求拟合曲线的问题,就是在
形如
(2)式的Sx中求一函数y=S”x,使式(3)取得最小。
它转化为求多元函数
i
i-0
f,「k1=為wXifXi匚Xi广dk,k=0,1,…,n,
可改写为
n
'、\, j=0 此方程称为法方程。 它也可写成矩阵形式 「0,「0「0,人…「0,「n 伴®0)(%,%)…(%®) G=一_*-, [_件4。 )件®)…(半n®) 由于轧,%,…,轧线性无关,故|g|ho,方程组(6)存在唯一的解 ak=akk=0,1,,n, 从而得到函数fx的最小二乘解为 Sx二a。 「°xa;】xajx。 可以证明,这样得到的S”x对于任何形如式 (2)的Sx,都有 mm VWXiS”Xi—fx「i二wxiI.SXi];-fXif, izQi=0 故S”x确是所求最小二乘解。 二、非线性最小二乘曲线拟合问题 所谓线性最小二乘指的是在选定可取函数类(即由一组基函数生成的函数空间)后, 待定参数全部线性,最常见就是多项式曲线拟合(以一次、二次、三次、四次函数等低次为多见),有一些情况下实际问题得出的数据分布(散点图)需以指数、双曲线、饱和指数等 类型函数去拟合,这时有的待定参数非线性,我们依然以误差向量的二范数最小为原则,因 之称为非线性最小二乘拟合,这其中有部分非线性模型可以通过变量代换、取对数等手段转 变为线性模型,从而用线性拟合进行处理。 对于一个实际的曲线拟合问题,一般先按观测值在直角坐标平面上描出散点图,看一 看散点同哪类曲线图形接近,然后选用相近的曲线拟合方程,再通过适当的变量替换转化为 线性拟合问题,按线性拟合解出后再还原为原变量所表示的曲线拟合方程。 以下列举几类经适当变换化为线性拟合求解的曲线拟合方程及变换关系。 曲线拟合方程 变换关系 变换后线性拟合方程 b y=ax y=lny,x=1nx y=a+bx(a=1na) y=ax»+c X=XL y=ax+c x y-ax+b _1_1y=—,x=_yx y=a+bx 1 y= ax+b -1y=— y y=b+ax 1 y=2ax+bx+c -1y=一y —2 y=ax+bx+c x y=2ax+bx+c xy=一y y=ax2+bx+c 在科学实验和生产实践中,如何找到更符合实际情况的数据拟合,一方面要根据专业知 识和经验来确定经验曲线的近似公式,另一方面要根据散点图的分布形状及特点来选择适当 的曲线拟合这些数据。 当散点图接近于直线,宜采用线性函数y=abx拟合;当散点图分 布接近于抛物线,可采用二次多项式y=abxcx2拟合;当散点图分布特点是开始曲线 x 上升较快随后逐渐变慢,宜采用双曲线型函数y二——或指数型函数y二aex;当散点 a+bx y=ae等函数拟合。 三、通过具体的实例来进一步认识如何将非线性拟合化为多项式拟合。 1•指数曲线拟合 (1)基本特征 设已知一批数据点xk,fk,根据经验和观察,这批数据点的分布大致为指数曲线, 满足关系式 SX]=aebx,(2.1.1) 其中a和b是待定常数,试用最小二乘法确定拟合曲线Sx。 由于对这种非线性拟合函数模型直接采用最小二乘法不方便,所以对式(2.1.1)两边 取对数并将其化为线性模型 Ux=ABx,(2.1.2) 其中 Ux=lgSx,A=lga,B=blge. Ux(即lgSx)对数 不难明白,用Sx对数据点xk,fk爲作最小二乘拟合,相当于用据点xk,lgfk: J乍最小二乘拟合,即有 NN .」22 Zlgfk-U(Xk}=瓦Qgfk—a—BXk)=min k土k4 N 2 仍记Q=為]lgfk一A-Bx是关于A和B的函数,于是A和B应满足 k土 =0. ;: Q ;: A 于是有 不难看出,上式相当于直接套用线性拟合规化方程(6)的结果。 求解式(2.1.3)得A和B,从而得到a和b,求的指数拟合曲线Sx。 (2)实例分析 有一批实验数据如表1.2.1所示: 表1.2.1实验数据 Xk 1 2 3 4 5 6 7 8 f(Xk) 15.3 20.5 27.4 36.6 49.1 45.6 87.8 117.6 需要用最小二乘法建立数据点所符合的经验公式。 于是按前面所述方法,先将元数据点绘图, 选定Sx=aebx作为拟合曲线的模型;再将原数据点转化为如表1.2.2所示的数据: . 表1.2.2转化后的数据 Xk 1 2 3 4 5 6 7 8 u(Xk)=igfk 1.1847 1.3118 1.4378 1.5635 1.6911 1.8169 1.9435 2.0704 对转化后的数据点用 Ux[=ABx 作最小二乘拟合。 据式(2.1.3)列出方程组 '8A十36B=13.0197, 36A+204B=23.9003. 解得A=1.0584,B=0.1265,由此可得a=11.4393,b=0.2912.最后可求得拟合曲线为 2•双曲线拟合 (1)基本特征 对于数据点Xk,fk: 吕,若取用双曲线函数 1 S(x) X Sx x-,ax亠b 作拟合函数,作变换 11 Z=_, S(x)x 得到线性模型 Uz=abz。 于是原曲线拟合问题转化为用线性函数U(z)=a+bz对数据点(zk,Uk)――也就是对 数据点 的最小二乘拟合问题。 这样,便可写出关于线性模型拟合的方程组 产NN aN+b送Zk=瓦Uk, (2.1.1) kJk-1 NNN a'Zkb'z'八UkZk• kAk-1k-1 (2)实例分析 例二 在某化学反应里,根据实验所得生成物的浓度与时间关系如表(2.2.1),求浓度y与 时间t的拟合曲线y=ft。 t(分) 1 2 3 4 5 6 7 8 f(t).10』 4.00 6.40 8.00 8.80 9.22 9.50 9.70 9.86 t(分) 9 10 11 12 13 14 15 16 f(t)・10』 10.00 10.20 10.32 10.42 10.50 10.55 10.58 10.60 从数据表略可看出,浓度随t增加而增加。 开始浓度增加较快,后来逐渐减弱,到一 定时间就基本稳定在一个数值上,即当t—;•狀时,y趋于某个常数,故有一水平渐近线。 选取数学模型为双曲函数 t y= at+b 其中a,b待定参数。 显然, 作变换,令 -1-1- y二—,t二_,y=a亠btyt 及变换求得), 于是问题化为,已知数据ti,yii(i=1,一,m(由数据ti,fti=1,…,m 寻求a,b使 其中y=a-bt为线性模型,取基1,门。 得到数学模型 t y= 80.6621t+161.6822 3•幕函数拟合法 (1)基本特征 对于数据点xk,fk: 生,若取用幕函数 Sx二ax& 作拟合函数,取对数后为 lgSx=lgabIgx。 令U=lgSx,A=lga,z=lgx, 的最小二乘拟 于是原曲线拟合问题转化为用线性函数Uz=Abz对数据点igxk,lgfk 合问题。 这样,便可写出方程组 AN+b送IgXk=送lgfk, k_1k丄 NNN A'IgXkb'lgXk]: : _[IgXk・lgfk k-1k-1k-J 解出A和B,得到a和b,最后便可获得所求的Sx。 (2)实例分析 例三、给定如下数据表321 x 0.15 0.4 0.6 1.01 1.5 2.2 2.4 2.7 y 4.4964 5.1284 5.6931 6.2884 7.0989 7.5507 7.5106 8.0756 x 2.9 3.5 3.8 4.4 4.6 5.1 6.6 7.6 y 7.8708 8.2403 8.5303 8.7394 8.9981 9.1450 9.5070 9.9115 在坐标纸上作出数据的散点图,试利用幕函数拟合法作拟合曲线,并用matlab程序实现。 MATLA程序如下: x=: 0.15,0.4,0.6,1.01,1.5,2.2,2.4,2.7,2.9,3.5,3.8,4.4,4.6,5.1,6.6,7.6: y= : 4.4964,5.1284,5.6931,6.2884,7.0989,7.5507,7.5106,8.0756,7.8708,8.2403,8.5303, 8.7394,8.9981,9.1450,9.5070,9.9115: c=polyfitlogx,logy,1 运行结果为 c二 0.20931.8588 若设所拟合的幕函数为gx二上: •,则由程序的运行结果知 P 1.8588 二e=6.4160, 因此幕函数形式为 0.2093 二6.416x 幕函数曲线如图所示 4•饱和指数曲线拟合法 主要具有下述两个 实践证明,各种事物的生长过程或成长过程均具有一定基本的共性, 特征: (1)发展的全过程科粗略分为三个阶段: 首先是萌芽阶段,此时,事物处于初生或 初创时期,进展比较缓慢;其次是发展阶段,此时在数量上出现明显的增长,且往往有一个 高速发展或突破性进展的事情;最后阶段是饱和阶段,此时的发展越来越慢,趋于淘汰。 (2)发展中存在一个上线或极限,制约着每一个具体发展的全过程。 基于这两个事物共同的基本特征,为了尽可能准确地拟合实际中各种各样的具体的事物 发展过程,便提出了有关描述“事物发展”的曲线拟合方法(又称为生长模型法),其中, 饱和指数曲线拟合法以及皮尔(pearl)曲线拟合法和是比较具有代表性的方法。 (1)基本特征 饱和指数曲线的数学表达式为: x y=k-ab(4.1.1) 其中,k,a,b为待求参数,满足k•0,a•0,0: : : b: : : 1。 当Xr时,y—;k,称 y=k为饱和指数曲线的渐开线(或饱和值)。 通常用“三组法”来估计算式(4.1.1)中的参数,以下简介之。 设系统实测3n组数据为: i,yii=0,1/,3n-1(4.1.2)将(4.1.2)中的数据分别带入(4.1.1),得 y0=k—ab y^=k-ab (4.1.3) 疋, 曰有方程组(4.1.4)便可求得k,a,b的值: ——b-1 a八! y? y-2 (bnj) 厂n kJ b-1 \yab1nlb—1 (2)实例分析 ■0,a•0,0: : : b: : : 1基本条件, 饱和指数曲线目前还不能够判 据略)。 得出b=1.2868,不在饱和指数曲线要求满足k 反映出中国目前网民的速度还是在快速增长的发展阶段, 断出何时进入饱和阶段,也无法计算出它的极限值。 四、非线性最小二乘问题的应用一一确定人口增长模型中的参数 1.问题 下表是美国1790-1980年人口统计表,试做如下工作: 年份 1790 1800 1810 1820 1830 1840 1850 人口/百万人 3.9 5.3 7.2 9.6 12.9 17.1 23.2 年份 1860 1870 1880 1890 1900 1910 1920 人口/百万人 31.4 38.6 50.2 62.9 76.0 92.0 106.5 年份 1930 1940 1950 1960 1970 1980 人口/百万人 123.2 131.7 150.7 179.3 204.0 226.5 (1)试用指数增长模型(Malthus人口模型⑴),按三段时间(1790-1850年,1850-1910 年,1910-1980年)分别确定其增长率r。 (2)利用阻滞增长模型(Logistic人口模型 (2)),重新确定固有增长率r和最大容量N,作图,并分析计算结果误差,再利用该模型预测1990年美国人口总数。 2.求解过程 首先考虑第一个问题。 由Malthus人口模型⑴,令 rt x二Ae 因此 lnx=lnA-rt 可用线性拟合计算人口增长率。 输入 t=0: 10: 60; x二: 3.95.37.29.612.917.123.2]; p=polyfitt,logx,1;p p1就是此段的人口增长率为2.96%。 类似地可以计算出第二段的人口增长率为2.28%,第三 段的人口增长率为1.29%。 F图绘出分段Malthus人口增长模型曲线,其中图中“+”号位置是人口实际数据的散点图。 再考虑第二个问题。 由于Logistic人口模型⑺无法化成线性(或多项式)模型,因此采用非线性最小二乘方法。 令非线性模型为 Pl 1p2e」3t 输入 t=0: 10: 190; x=: 3.95.37.29.612.917.123.231.438.650.2•… 62.976.092106.5123.2131.7150.7179.3204.0226.5: ; f二inline'p1./1p (2)exp-p3■t','p','t'; p=lsqcurvefitf,300,50,0.02,t,x; t_pre二200;x_pre二p1./1p2exp: [「p3t_preii; 由此得到最大容量p (1)=360.356(百万),人口固有增长率p(3)=2.34%以及1990 年美国总人口的预测值241.77(百万)。 下图绘出Logistic人口增长模型曲线,其中图中“+”号位置是人口实际数据的散点图。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 非线性 最小 曲线拟合 线性化 探究