当前位置:文档之家› 第7章 非线性模型参数估值

第7章 非线性模型参数估值

第7章 非线性模型参数估值
第7章 非线性模型参数估值

第7章 非线性模型参数估值

7.1 引言

数学模型是观测对象各影响因素相互关系的定量描述。在获得实验数据并做了整理之后,就要建立数学模型。这一工作在科学研究中有着十分重要的意义。 人们选用的模型函数可以是经验的,可以是半经验的,也可以是理论的。模型函数选定之后,需要对其中的参数进行估值并确定该估值的可靠程度。对于线性模型,待求参数可用线性最小二乘法求得,即用前一章中介绍的确定线性回归方程的方法。对于非线性模型,通常是通过线性化处理而化为线性模型,用线性最小二乘法求出新的参数,从而再还原为原参数。这种方法在处理经验模型时,简便易行,具有一定的实用价值。但要注意到,这样做是使变换后的新变量y '的残差平方和(即剩余平方和)最小,这并不能保证做到使原变量y 的残差平方和也达最小值。因此,得到的参数估计值就不一定是最佳的估计值。可见在求理论模型的参数时,这种线性化的方法尚有其不足之处。此外,还有些数学模型无法线性化,所以用线性化的方法是行不通的。为此,需要一种对非线性模型通用的(不管是经验模型还是理论模型,不管这个模型能否线性化),能够得到参数最佳估计值的参数估计方法。

在工程中,特别是在化学工程中的数学模型大多是非线性、多变量的。设y ?为变量x 1,x 2,…,x p ,的函数,含有m 个参数b 1,b 2,…,b m ,则非线性模型的一般形式可表示为:

=y ?f (x 1,x 2,…,x p ;b 1,b 2,…,b m ) (7.1) 或写为 ),(?b x f y

= (7.2) 式中x 为p 维自变量向量,b 为m 维参数向量。

设给出n 组观测数据

x 1 ,x 2 ,… ,x n y 1 ,y 2 ,… ,y n

我们的目的是由此给出模型式(7.2)中的参数b 的最佳估计值。可以证明,这个最佳估计值就是最小二乘估计值。

按最小二乘法原理,b 应使Q 值为最小,即

∑==-=n

i i i y

y Q 12min )?( 或写成 ∑==-=n

i i i f y Q 1

2min )],([b x (7.3)

现在的问题是根据已知的数学模型和实验数据,求出使残差平方和最小,即

目标函数式(7.3)取极小值时的模型参数向量b 。这显然是一个最优化的数学问题,可以采用逐次逼近法求解。这种处理方法实质上是逐次线性化法或某种模式的搜索法。在下面各节中将介绍几个适用方法。

7.2 高斯——牛顿法

高斯——牛顿法是非线性最小二乘法的最基本方法。其基本思想是把非线性模型函数在一局部范围内进行泰勒一阶展开,作为原函数的线性近似,代入目标函数则成为线性最小二乘法,因为它有解析解,所以可求出它的精确的极小值,以此点作为下一次线性近似的出发点。这样反复采用同样方法逐次逼近真正的极小点,从而得到最佳的估计参数向量b 。所以此法实质是逐次线性化法。 参数估计的目标函数为式(7.3)。求解参数向量b 的思路是这样的,先给定初值b (0),然后一次次修正

)()()1(k k k Δb b +=+ (7.4) 式中角标k 代表迭代回次,Δ(k )代表第k 次的修正量,每次修正须保证Q 值下降,这样一步步逼近目标函数的极小值min Q ,最后得到b 的解。

为确定Δ,对非线性函数,在初值点b (0)处进行泰勒一阶展开得:

∑=??+≈+m

j j j i i i b f f f 1)0()

0()0(Δ),(),(b x Δb x (7.5)

或简记为 ∑=???+≈m

j j j

i i

i b f f f 1)

0()

0( (7.6)

代入式(7.3),得 ∑∑==???--=n

i m

j j j

i i

i b f f y Q 1

21)0()

0(][ (7.7) 当b (0)给定后,)0(i f 和]/[)0(j i b f ??都是自变量x 的函数,根据实验点均可计算求得。因此目标函数化为对未知的Δ的线性函数,并可用线性最小二乘法求得Q (Δ)的极小点。

由极值条件0)/(=??ΔQ ,对式(7.7)求导数,并令其为零,得

∑∑===?????---n i m j k i j j i

i i b f b f f y 11)0()0()0(0][2 (k=1,2,…,m)

由此得

∑∑∑===??-=?????n

i m

j n

i k

i

i i j k i j i b f f y b f b f 111)0()0()0()

0()

( (k=1,2,…,m) (7.8) 令

?

?

?

?

??

?

?

?

?

?????????????????????????????????????=m n n n m m b f b f b f b f b f b f b f b f b f )0(2)0(1

)0()0(22)0(21

)0(2

)0(12

)0(11)

0(10A (7.9) )0(i i i f y r -= (7.10) ],,,[21n T r r r ?=r (7.11)

代入式(7.8)则有

r A ΔA A T

T 000= (7.12) 令

00A A A T = (7.13) r A D T 0= (7.14)

则有线性方程组

D A Δ= (7.15)

解之便得Δ,从而代入式(7.4),得到修正的b 。经过反复迭代直至Δ的值很小,满足误差要求为止,这时的b 即为所求。 以上计算过程归纳如下: (1)人为地给定初值b (0)

(2)求偏导值j i b f ??/)0(,构成矩阵0A ; (3)计算并构成向量r ;

(4)计算并构成矩阵A 和向量D ; (5)求解线性方程组得到Δ; (6)按式(7.4)修正b ;

(7)若Δ满足误差要求则结束,否则返回步骤(2)。

在求解过程中之所以需要反复地迭代和修正,是因为泰勒级数展开式(7.6)只是近似的式子,故得到的b 也是近似的。

高斯——牛顿法对初值的要求是比较严格的,若初值选取不当,很可能得不到结果,即“发散”。 7.3 单纯形法及其Excel 程序

高斯——牛顿法或麦夸特法都需要一阶导数矩阵0A ,当函数关系复杂时,就会给运算带来很大的困难。这时可以采用不需要利用一阶导数矩阵的单纯形法。

我们的目的是寻求一组参数b 使目标函数Q 值为最小,寻求到的b 值称为最优估计值,简称最优值。

单纯形法的思路是先算出若干点处的目标函数值,然后进行比较,从它们之间的大小情况来判断函数的变化趋势,按照一定的模式确定搜索方向。这个模式就是利用单纯形进行反射、扩张、压缩和收缩等方法进行搜索,不断形成新的单纯形,直到单纯形缩得很小时,便得到最优值。 那么,什么是单纯形呢?所谓单纯形就是一定的空间中的最简单的图形。如二维空间(平面上),单纯形为三角形,三维空间为四面体,m 维空间为由m +1个顶点而构成的最简单的图形。如果m +1个顶点的距离都相等,则称为正规的单纯形,简称正单纯形。

为了讨论的方便,把式(7.3)表示为

)(b Q Q = (7.22) 下面给出单纯形法的计算步骤及公式。

1.初始单纯形的生成

给定初始点

T m b b b ],,,[210?=b (7.23)

其余几个点为

???

?

?

??

+?++=???+?++=+?++=T m m T m T m p b q b q b q b p b q b q b q b p b ],,,[],,,[],,,[21212211b b b (7.24)

式中

???

?

?

??

-+=-++=

h m m q h m m m p 211211 (7.25)

式中h 为单纯形边长,一般取0.5≤h ≤15。对于二维情况,有

h q h p m 2588.0,9659.0,2=== 这样形成的初始单纯形为正单纯形。

2.反射

计算单纯形各顶点的目标函数值

)(i i Q Q b = (i=0,2,…,m ) (7.26) 比较这m +1个点的目标函数值的大小,先找出Q 的最大、最小及次最大点的b 值,分别记为H b 、L b 、G b 即

)(max )(i H H Q Q Q b b == (i =0,1,…,m ) (7.27) )(min )(i L L Q Q Q b b == (i =0,1,…,m ) (7.28) )(max )(i G G Q Q Q b b == (i =0,1,…,m ;i ≠H ) (7.29) 计算除H b 外m 个点的重心,即反射中心C b ,即

∑=-=m

i H i C m 0

)(1b b b (7.30)

求出H b 的反射点R b ,即

)(H C C R b b b b -+=α(7.31) 式中α为反射系数,一般为对称反射,取α=1。

3.扩张

计算反射点的目标函数值

)(R R Q Q b = (7.32)

若R Q

)(H R H E b b b b -+=μ (7.33) 式中μ>1,称为扩张系数,一般取μ=1.2~2.0。

计算扩张点的目标函数值

)(E E Q Q b = (7.34) 若E Q

E S E S Q Q ==,b b (7.35) 否则扩张失败。令

R S R S Q Q ==,b b (7.36)

总之,总可得一新点S b ,用S b 代替H b 构成新的单纯形返回第二步,再次搜索。

4.压缩和收缩

若R Q ≥G Q ,则反射失败,进行压缩。令

)(H R H S b b b b -+=λ (7.37) 式中0<λ<1和λ≠0.5,λ称为压缩系数,一般取λ=0.25或0.75,若λ=0.5,则S b =C b ,造成降维。计算

)(S S Q Q b = (7.38)

若S Q

若S Q ≥G Q ,则反射压缩都失败,则要进行收缩。收缩的公式为

2/)()()()1(k L k i k i b b b +=+ i =0,1,…,m (7.39)

式中上角标k 表示计算i b 的次数。以)1(+k i b 代替i b 构成新的单纯形返回第二步再次搜索。

5.收敛要求 继续上述过程,直至

12

1)(ε<+-∑=m Q Q m

L i

i (7.40)

22

)(ε<-∑=m

Q Q m

i

i (7.41)

为止。式中1ε、2ε为充分小的正数。

单纯形法需要的总搜索步数较多,但每一步计算中除计算一次目标函数值外,只是一些简单的代数运算。若使用计算机,运算时间就能大大缩短。单纯形法对初值的要求不是很严,即使所选用的初值远离真值也可以收敛。这一点是单

纯形法的突出优点。关于初始单纯形边长的选取,需根据具体问题由经验给出。 在使用单纯形法进行参数估值时应注意下面几个问题:

第一,估计参数开始时,单纯形的边长应与估计的参数具有相近的数量级,保证参数估计有较大的空间。

第二,当一次估计找不到最佳参数值时,可把当前估计的参数值作为初值,接着再估计。单纯形的边长将随着参数接近最佳值而缩小。

第三,如果有多个参数要同时估计,并且它们的数量级不同,最好对参数进行数量级转换,使估计的参数的数量级接近。例如估计下式 )1(21x b e b y --=

中的参数1b 和2b ,若已知1b 的数量级为210,而2b 的数量级为110-,估计前把上式改写成

)1(100021x b e b y --'=

即令13110b b '?=,这样1b '的数量级也变成为110-,使1b '和2b 具有相同的数量级,可同时估计出1b '和2b ,然后再求出1b 。这样,单纯形的边长和参数1b '、2b 可同步接近最佳值。

7.4 非线性模型参数估值的Excel “规划求解”法

前面介绍的几种方法,当用到直接在工作表输入公式的方法编程时,如果对Excel 软件了解不深,则是有一定难度的。而直接用Excel 的工具——“规划求解”就简单多了。本小节就介绍这种方法。 7.5.1 基本原理

在7.1节已经说过,非线性模型参数估值要解决的问题是:根据已知的数学模型和实验数据,求出目标函数式(7.3)最小时的模型参数向量b 的值。解决这个问题的方法是采用逐次逼近的最优化方法求解。而用Excel 工具——“规划求解”,可以直接解决这一问题。

Excel 的工具——“规划求解”的功能是,返回可变单元格的一组数据和目标单元格的值。利用这一功能解决非线性模型参数估值时,首先在Excel 工作表中给定b 的初值、目标函数的Excel 公式,然后使用工具——“规划求解”,设置好其中的参数,点击“求解”,可以非常快速地求出满足目标函数最小时的模型参数向量b 的值。

7.5.2 Excel 工具——“规划求解”简介

1.安装“规划求解”

打开Excel 工作簿后,在工具菜单中如果没有“规划求解”,此时可参照1.11节,安装“加载宏”。安装完毕后,即可使用“规划求解”工具了。此时操作:工具→“规划求解”,将显示“规划求解参数”对话框,再点击选项,又显示“规划求解选项”对话框,下面将介绍这两个对话框。

2.“规划求解”参数对话框

在这里设置“规划求解”的所有参数。

(1)设置目标单元格

在此指定目标单元格(放置目标函数所在单元格的引用)。经求解后,这个单元格将获得某一特定数值、最大值或最小值。这个单元格必须包含公式。

(2)等于

在此指定是否需要对目标单元格求取最大值、最小值或某一指定数值。如果需要指定数值,请在右侧“编辑”框中键入。对于非线性模型参数估值问题,在此指定最小值或指定“值为”选项并在右侧“编辑”框中键入“0”。

(3)可变单元格

在此指定可变单元格(单个或多个单元格)。求解时对其中的数值不断进行调整,直到满足约束条件,并且在“设置目标单元格”编辑框中指定的单元格达到目标值。可变单元格必须直接或间接与目标单元格相联系。

(4)约束

在此列出了当前的所有约束条件。

(5)添加

显示“添加约束”对话框。

(6)更改

显示“改变约束”对话框。

(7)删除

删除选定的约束条件。

(8)求解

对定义好的问题进行求解。

(9)关闭

关闭对话框,不进行“规划求解”。但保留通过“选项”、“添加”、“更改”或“删除”按钮所做的修改。

(10)选项

显示“规划求解选项”对话框。在其中装入或保存“规划求解”模型,并对求解运算的高级属性进行设定。

(11)全部重设

清除“规划求解”中的当前设置,将所有的设置恢复为初始值。

3.“规划求解”选项对话框

在本对话框中,可以设定“规划求解”过程的一些高级属性、装入或保存“规划求解”定义,以及为线性或非线性规划设置参数。每一选项都有默认设置,可以满足大多数情况下的要求。

(1)最长运算时间

在此设定求解过程的时间。可输入的最大值为32767(秒),默认值为100(秒),

可以满足大多数小型“规划求解”要求。

(2)迭代次数

在此设定求解过程中迭代运算的最多次数,限制求解过程的时间。可输入的最大值为32767,默认值为100次,可满足大多数小型“规划求解”要求。

(3)精度

在此输入用于控制求解精度的数字,以确定约束条件单元格中的数值是否满足目标值或上下限。精度值必须为小数(0 到1 之间),输入的数值越小,精度越高。例如0.0001 比0.01 精度高。

(4)允许误差

在此输入满足整数约束条件的目标单元格求解结果与最佳结果间的允许百分偏差。这个选项只应用于具有整数约束条件的问题。设置的允许误差值越大,求解过程就越快。

(5)收敛度

在此输入收敛度数值,当最近5次迭代时,目标单元格中数值的变化小于“收敛度”编辑框中设置的数值时,“规划求解”停止运行。收敛度只应用于非线性规划问题,并且必须由一个在0(零) 和1 之间的小数表示。设置的数值越小,收敛度就越高。例如,0.0001 表示比0.01 更小的相对差别。收敛度越小,“规划求解”得到结果所需的时间就越长。

(6)采用线性模型

当模型中的所有关系都是线性的,并且希望解决线性优化问题时,选中此复选框可加速求解进程。

(7)显示迭代结果

如果选中此复选框,每进行一次迭代后都将中断“规划求解”,并显示当前的迭代结果。

(8)自动按比例缩放

当输入和输出值数量差别很大时,可以使用此功能。

(9)假定非负

对于在“添加约束”对话框的“约束值”编辑框中没有设置下限的可变单元格,假定其下限为0(零)。

(10)估计

指定在每个一维搜索中用来得到基本变量初始估值的逼近方案。

正切函数,使用正切向量线性外推。

二次方程,用二次函数外推法,提高非线性规划问题的计算精度。

(10)导数

指定用于估计目标函数和约束函数偏导数的差分方案。

向前差分,用于大多数约束条件数值变化相对缓慢的问题。

中心差分,用于约束条件变化迅速,特别是接近限定值的问题。虽然此选项要求更多的计算,但在“规划求解”不能返回有效解时也许会有帮助。通常选定此选项,可以提高解的精度。

(11)搜索

指定每次的迭代算法,以确定搜索方向。

牛顿法,用准牛顿法迭代需要的内存比共轭法多,但所需的迭代次数少。

共轭法,比牛顿法需要的内存少,但要达到指定精度需要较多次的迭代运算。当问题较大或内存有限,或单步迭代进程缓慢时,用此选项。

7.5.3 程序33——“规划求解”法

打开一个新工作簿,以“程序33”为文件名存盘,

命名:

选中E7单元格,然后命名。

_B1=$E$3_X3=$G7

_B2=$F$3_X4=$H7

_B3=$G$3_X5=$I7

_B4=$H$3B0=$D$3

_B5=$I$3Q=SUMSQ($B:$B)

_X1=$E7YG=_B1*LN(_X1)+_B2*_X2^2

_X2=$F7

公式清单:

E4:=Q

A7:=IF(LEN(D7)=0,"",ROW()-ROW($A$6))

B7:=IF(LEN(D7),D7-C7,"")

C7:=IF(LEN(D7),YG,"") 选中A7:C7,向下填

充至行208

使用“规划求解”操作:

工具→规划求解,出现“规划求解”对话框,接着按下面的步骤操作:

(1)在“设置目标单元格”的编辑框中输入$E$4;

(2)在“等于”的右侧选中“最小值”;

(3)在“可变单元格”的编辑框中输入$D$3:$L$3,然后点击“选项”,出现“规划求解选项”对话框;

(4)在“导数”选项中选中“中心差分”;

(5)在“搜索”选项中选中“共轭法”后点击“确定”,这时又回到“规划求解选项”对话框;

(6)点击“求解”,很快显示“规划求解结果”对话框,点击“确定”即可。存盘结束。

显示结果:

见图7-5。

说明:

本程序在用于其他不多于5个参数的非线性模型参数估值时,先在数据区输

入数据,接着按实际模型修改命名YG ,然后操作:工具→规划求解,出现“规划求解”对话框,点击“求解”,出现“规划求解结果”对话框,点击“确定”即可。对于多于5个参数的非线性模型参数估值问题,可参照本程序稍加修改即可。

习题七

1 已知数学模型和观测数据如下:

2

2211ln ?x b x b y +=

1i x 1.00 1.00 1.00 2.72 2.72 2.72 2i x 0.00 1.00 2.00 0.00 1.00 2.00 i y 0.00 3.00 12.00 2.00 5.00 14.00 要求Δ≤0.01,初值T ]2,1[)0(=b 。

2 用下表中的实验数据,试用单纯形法对方程

22/11?x b e x b y

-= 中的参数1b 和2b 进行估值。取T ]1,1[)0(=b ,ε=0.01。

非线性模型参数估计的遗传算法

滨江学院 毕业论文(设计)题目非线性模型参数估计的遗传算法 院系大气与遥感系 专业测绘工程 学生姓名李兴宇 学号200923500** 指导教师王永弟 职称讲师 二O一三年五月二十日

- 目录- 摘要 (3) 关键词 (3) 1.引言 (3) 1.1 课题背景 (3) 1.2 国内外研究现状 (4) 1.3 研究的目的和意义 (4) 1.4 论文结构 (5) 2.遗传算法简介 (5) 2.1 遗传算法的起源 (5) 2.2 遗传算法的基本思想 (6) 2.2.1 遗传算法求最优解的一般步骤 (7) 2.2.2 用技术路线流程图形式表示遗传算法流程 (7) 2.3 遗传算法的基本原理及设计 (8) 2.3.1 适应度设计 (8) 2.3.2 遗传算子操作 (9) 3.遗传算法的应用实例 (9) 3.1 非线性模型参数估计 (10) 3.2 实例分析 (10) 4.结语 (12) 参考文献 (12) 英文题目 (14) - 1 -

- 2 - 致谢 (15)

非线性模型参数估计的遗传算法 李兴宇 南京信息工程大学滨江学院测绘工程专业,南京 210044 摘要:关于非线性模型计算中的参数估计是十分棘手的问题,为此常常将这样的问题转化成非线性优化问题解决,遗传算法作为一种具有强适应性的全局搜索方法而被频繁的应用于非线性系统参数估计的计算当中,本文介绍了遗传算法及其理论基础,阐述了遗传算法在非线性模型参数估计中的应用的起源和发展,引入实例说明了遗传算法在非线性模型参数估计的实际运用中的实现,并概述了基于遗传算法的非线性参数模型估计具体解算过程,将使用遗传算法得到的结果与其他算法的解算结果进行比较,结果表明:遗传算法是一种行之有效的搜索算法,能有效得到全局最优解,在今后的研究中值得推广。 关键词:遗传算法非线性模型参数估计应用 1.引言 1.1课题背景 当前科学技术的发展和研究已经进入了进入各个领域、多个学科互相交叉、互相渗透和互相影响的时代,生命科学的研究与工程科学的交叉、渗透和相互补充提高便是其中一个非常典型的例子,同时也表现出了近代科学技术发展的一个新的显著特点。遗传算法研究工作的蓬勃发展以及在各个领域的广泛应用正是体现了科学发展过程的的这一明显的特点和良好的趋势。 非线性科学是一门研究复杂现象的科学,涉及到社会科学、自然科学和工程技术等诸多领域,在测绘学的研究中,尤其是在测量平差模型的研究和计算过程中,大量引入的都是非线性函数方程模型,而对于非线性模型的解算,往往过程复杂。遗传算法的出现为研究工作提供了一种求解多模型、多目标、非线性等复杂系统的优化问题的通用方法和框架。 对于非线性系统的解算,传统上常用的方法是利用其中参数的近似值将非线性系统线性化,也就是线性近似,测绘学中通常称之为线性化,经过线性化之后,将其视为线性模型并利用线性模型的解算方法得到结果,这就很大程度的简化了解算步骤,减少了工作量,但同时会带来新的问题,运用这种传统方法得到的数据结果存在的误差较大、精度不足等问题。利用线性近似方法对非线性模型进行参数估计,精度往往取决于模型的非线性强度。 - 3 -

非线性回归分析

SPSS—非线性回归(模型表达式)案例解析 2011-11-16 10:56 由简单到复杂,人生有下坡就必有上坡,有低潮就必有高潮的迭起,随着SPSS 的深入学习,已经逐渐开始走向复杂,今天跟大家交流一下,SPSS非线性回归,希望大家能够指点一二! 非线性回归过程是用来建立因变量与一组自变量之间的非线性关系,它不像线性模型那样有众多的假设条件,可以在自变量和因变量之间建立任何形式的模型非线性,能够通过变量转换成为线性模型——称之为本质线性模型,转换后的模型,用线性回归的方式处理转换后的模型,有的非线性模型并不能够通过变量转换为线性模型,我们称之为:本质非线性模型 还是以“销售量”和“广告费用”这个样本为例,进行研究,前面已经研究得出:“二次曲线模型”比“线性模型”能够更好的拟合“销售量随着广告费用的增加而呈现的趋势变化”,那么“二次曲线”会不会是最佳模型呢? 答案是否定的,因为“非线性模型”能够更好的拟合“销售量随着广告费用的增加而呈现的变化趋势” 下面我们开始研究: 第一步:非线性模型那么多,我们应该选择“哪一个模型呢?” 1:绘制图形,根据图形的变化趋势结合自己的经验判断,选择合适的模型 点击“图形”—图表构建程序—进入如下所示界面:

点击确定按钮,得到如下结果:

放眼望去, 图形的变化趋势,其实是一条曲线,这条曲线更倾向于"S" 型曲线,我们来验证一下,看“二次曲线”和“S曲线”相比,两者哪一个的拟合度更高! 点击“分析—回归—曲线估计——进入如下界面

在“模型”选项中,勾选”二次项“和”S" 两个模型,点击确定,得到如下结果: 通过“二次”和“S “ 两个模型的对比,可以看出S 模型的拟合度明显高于

常见非线性回归模型

常见非线性回归模型 1.简非线性模型简介 非线性回归模型在经济学研究中有着广泛的应用。有一些非线性回归模型可以通 过直接代换或间接代换转化为线性回归模型,但也有一些非线性回归模型却无 法通过代换转化为线性回归模型。 柯布—道格拉斯生产函数模型 y AKL 其中L和K分别是劳力投入和资金投入, y是产出。由于误差项是可加的, 从而也不能通过代换转化为线性回归模型。 对于联立方程模型,只要其中有一个方程是不能通过代换转化为线性,那么这个联立方程模型就是非线性的。 单方程非线性回归模型的一般形式为 y f(x1,x2, ,xk; 1, 2, , p) 2.可化为线性回归的曲线回归 在实际问题当中,有许多回归模型的被解释变量y与解释变量x之间的关系都不是线性的,其中一些回归模型通过对自变量或因变量的函数变换可以转化为

线性关系,利用线性回归求解未知参数,并作回归诊断。如下列模型。 (1)y 0 1e x (2)y 0 1x2x2p x p (3)y ae bx (4)y=alnx+b 对于(1)式,只需令x e x即可化为y对x是线性的形式y01x,需要指出的是,新引进的自变量只能依赖于原始变量,而不能与未知参数有关。 对于(2)式,可以令x1=x,x2=x2,?,x p=x p,于是得到y关于x1,x2,?, x p 的线性表达式y 0 1x12x2 pxp 对与(3)式,对等式两边同时去自然数对数,得lnylnabx ,令 y lny, 0 lna, 1 b,于是得到y关于x的一元线性回归模型: y 0 1x。 乘性误差项模型和加性误差项模型所得的结果有一定差异,其中乘性误差项模型认为yt本身是异方差的,而lnyt是等方差的。加性误差项模型认为yt是等 方差的。从统计性质看两者的差异,前者淡化了y t值大的项(近期数据)的作用, 强化了y t值小的项(早期数据)的作用,对早起数据拟合得效果较好,而后者则 对近期数据拟合得效果较好。 影响模型拟合效果的统计性质主要是异方差、自相关和共线性这三个方面。 异方差可以同构选择乘性误差项模型和加性误差项模型解决,必要时还可以使用 加权最小二乘。

非线性模型参数估计的EViews操作

非线性模型参数估计的EViews 操作 例3.5.2 建立中国城镇居民食品消费需求函数模型。根据需求理论,居民对食品的消费需求函数大致为: ()01,,f P P X Q =。 其中,Q 为居民对食品的需求量,X 为消费者的消费支出总额,P1为食品价格指数,P0为居民消费价格总指数。 表3.5.1 中国城镇居民消费支出及价格指数 单位:元 资料来源:《中国统计年鉴》(1990~2007) 估计双对数线性回归模型μββββ++++=031210n n n P L LnP X L Q L 对应的非线性模型: 3 21 1ββ βP P AX Q = 这里需要将等式右边的A 改写为0 e β。取0β,1β,2β,3β的初值均为1。

Eviews操作: 1、打开EViews,建立新的工作文档:File-New-Workfile,在Frequency选择Annual,在Start date输入“1985”,End date输入“2006”,确认OK。 2、输入样本数据:Object-New Object-Group,确认OK,输入样本数据。 图1 3、设置参数初始值:在命令窗口输入“param c(1) 1 c(2) 1 c(3) 1 c(4) 1”,回车确认。 4、非线性最小二乘法估计(NLS):Proc-Make Equation,在NLS估计的方程中写入Q=EXP(C(1))*X^C(2)*P1^C(3)*P0^C(4),方程必须写完整,不能写成Q C(1) X P1 P0。确定输出估计结果:

图2 NLS注意事项: 1).参数初始值: 如果参数估计值出现分母为0等情况将导致错误,解决办法是:手工设定参数的初始值及范围,比如生产函数中的c(2)肯定是介于0-1之间的数字。 eviews6.0中并没有start 的选项,只有iteration的次数和累进值得选择。只能通过param c(1) 0.5 c(2) 0.5来设置。 2).迭代及收敛 eviews用Gauss Seidel迭代法求参数的估计值。迭代停止的法则:基于回归函数或参数在每次迭代后的变化率,当待估参数的变化百分比的最大值小于事先给定的水平时,就会停止迭代。当迭代次数到了迭代的最大次数时也会停止,或者迭代过程中发生错误也会停止。

第7章 非线性模型参数估值

第7章 非线性模型参数估值 7.1 引言 数学模型是观测对象各影响因素相互关系的定量描述。在获得实验数据并做了整理之后,就要建立数学模型。这一工作在科学研究中有着十分重要的意义。 人们选用的模型函数可以是经验的,可以是半经验的,也可以是理论的。模型函数选定之后,需要对其中的参数进行估值并确定该估值的可靠程度。对于线性模型,待求参数可用线性最小二乘法求得,即用前一章中介绍的确定线性回归方程的方法。对于非线性模型,通常是通过线性化处理而化为线性模型,用线性最小二乘法求出新的参数,从而再还原为原参数。这种方法在处理经验模型时,简便易行,具有一定的实用价值。但要注意到,这样做是使变换后的新变量y '的残差平方和(即剩余平方和)最小,这并不能保证做到使原变量y 的残差平方和也达最小值。因此,得到的参数估计值就不一定是最佳的估计值。可见在求理论模型的参数时,这种线性化的方法尚有其不足之处。此外,还有些数学模型无法线性化,所以用线性化的方法是行不通的。为此,需要一种对非线性模型通用的(不管是经验模型还是理论模型,不管这个模型能否线性化),能够得到参数最佳估计值的参数估计方法。 在工程中,特别是在化学工程中的数学模型大多是非线性、多变量的。设y ?为变量x 1,x 2,…,x p ,的函数,含有m 个参数b 1,b 2,…,b m ,则非线性模型的一般形式可表示为: =y ?f (x 1,x 2,…,x p ;b 1,b 2,…,b m ) (7.1) 或写为 ),(?b x f y = (7.2) 式中x 为p 维自变量向量,b 为m 维参数向量。 设给出n 组观测数据 x 1 ,x 2 ,… ,x n y 1 ,y 2 ,… ,y n 我们的目的是由此给出模型式(7.2)中的参数b 的最佳估计值。可以证明,这个最佳估计值就是最小二乘估计值。 按最小二乘法原理,b 应使Q 值为最小,即 ∑==-=n i i i y y Q 12min )?( 或写成 ∑==-=n i i i f y Q 1 2min )],([b x (7.3) 现在的问题是根据已知的数学模型和实验数据,求出使残差平方和最小,即 目标函数式(7.3)取极小值时的模型参数向量b 。这显然是一个最优化的数学问题,可以采用逐次逼近法求解。这种处理方法实质上是逐次线性化法或某种模式的搜索法。在下面各节中将介绍几个适用方法。

非线性模型参数估计方法步骤

EViews非线性模型参数估计方法步骤 1.新建EViews工作区,并将时间序列X、P1和P0导入到工作区; 2.设定参数的初始值全部为1,其方法是在工作区中其输入下列命令 并按回车键 param c(1) 1 c(2) 1 c(3) 1 c(4) 1 3.估计非线性模型参数,其方法是在工作区中其输入下列命令并按 回车键 nls q=exp(c(1))*x^c(2)*p1^c(3)*p0^c(4) 4.得到结果见table01(91页表3. 5.4结果)(案例一结束) Dependent Variable: Q Method: Least Squares Date: 03/29/15 Time: 21:44 Sample: 1985 2006 Included observations: 22 Convergence achieved after 9 iterations Q=EXP(C(1))*X^C(2)*P1^C(3)*P0^C(4) Coefficient Std. Error t-Statistic Prob. C(1) 5.567708 0.083537 66.64931 0.0000 C(2) 0.555715 0.029067 19.11874 0.0000 C(3) -0.190154 0.143823 -1.322146 0.2027 C(4) -0.394861 0.159291 -2.478866 0.0233 R-squared 0.983631 Mean dependent var 1830.000 Adjusted R-squared 0.980903 S.D. dependent var 365.1392 S.E. of regression 50.45954 Akaike info criterion 10.84319 Sum squared resid 45830.98 Schwarz criterion 11.04156 Log likelihood -115.2751 Hannan-Quinn criter. 10.88992 Durbin-Watson stat 0.672163 (92页表3.5.5结果)(案例二过程) 5.新建EViews工作区,并将时间序列X、P1和P0导入到工作区;

非线性系统模型参数估计的算法模型

非线性系统模型参数估计的算法模型 摘要:针对非线性系统模型的多样性,提出了适用于多种非 线性模型的基于粒子群优化算法的参数估计方法。计算结果表明,粒子群优化算法是非线性系统模型参数估计的有效工具。 关键词:粒子群优化算法;非线性系统;参数估计;优化abstract: aiming at the diversity of nonlinear system model, it is proposed in this article a parameter estimation method based on particle group optimization algorithm that is applicable to a variety of nonlinear models. the result shows that the particle group optimization algorithm for parameter estimation of nonlinear system model is an effective tool. key words: particle group optimization algorithm;nonlinear system; parameter estimation; optimization 0 引言 非线性系统广泛地存在于人们的生产生活中,但是,目前我们对非线性系统的认识还不够深入,不能像线性系统那样,把所涉及的模型全部规范化,从而使辩识方法也规范化。非线性模型的表达方式相对比较复杂,目前还很少有人研究各种表达方式是否存在等效关系,因此,暂时还没有找到对所有非线性模型都适用的参数模型估计方法[1]。如果能找到一种不依赖于非线性模型的表达方式的 参数估计方法,那么,也就找到了对一般非线性模型系统进行参数

一般非线性预测模型参数优化的数值方法

《预测》1997年第1期 ?理论与方法研究? 一般非线性预测模型参数优化的数值方法Ξ 金菊良 杨晓华 储开凤 郦建强 (河海大学 210098) (南京水文水资源所 210024) 摘 要 本文提出了处理一般非线性预测模型参数优化问题的一种通用数值方法——加速基 因算法。该法与其他常用方法的计算结果比 较,优化效果均好于传统方法。 关键词 基因算法 非线性预测模型 参数优化 1 引言 非线性预测模型参数优化(估计)的传统方法存在两方面的不足,一是对模型结构(如可线性化、可微)作了限定[1,2],二是方法受参数优化准则形式制约(如目标规划法、松驰算法)[3],而对实际预测环境、预测目标缺乏足够的考虑,致使其适用性不强,影响了实际预测效果。基于自然选择和自然基因机制的基因算法(Genetic A lgo rithm,简称GA)突破了对模型结构是否线性、连续、可微等各种限制,同时可不受优化准则形式、优化参数数目、约束条件等的束缚,直接在优化准则值的引导下进行全局自适应参数优化,简便实用,是目前处理参数优化问题的一种通用的数值方法。这种方法已引起工程界的广泛应用和研究[4,5]。 我们在应用GA时发现,GA对各种实际预测模型参数变化区间的大小变化的适应能力较差,计算量大,算法自身参数设置技术目前尚无明确准则指导。但利用优秀个体逐步调整模型参数变化区间,可形成一种称为加速基因算法(A ccelerati on Genetic A lgo rithm,简称A GA)的新方法。经大量数值试验和实际应用,表明A GA对GA有明显改进。下面给出A GA的原理、步骤、算法参数设置准则。 2 加速基因算法的原理、步骤及其参数设置 不失一般性,设一般非线性预测模型为p-1阶多项式,模型参数优化准则为极小化下式 f=6m i=1 c1+c2x i+…+c p x p-1i-y i q(1)式中,{c j}为p个待优化参数;{(x i,y i)}为m对自变量、因变量的观测数据;任意实常数q为1时即为最小一乘准则,为2时为最小二乘准则,等等,视实际预测要求而定。 加速基因算法包括如下8步。 步1:模型参数变化空间的离散和二进制编码。设编码长度为l,把模型每个参数的变化区间等分成2l-1个子区间,于是模型参数变化空间被离散成(2l)p个参数格网点。GA中称每个格网点为个体,它对应模型p个参数的一种可能取值状态,并用p个l二进制数表示。这样,模型p个参数的取值状态、格网点、p个二进制数建立了一一对应关系。算法的模型参数优化工作将主要对这些二进制数进行操作运算。 步2:初始父代个体群的随机生成。从上述(2l)p个格网点中均匀随机选取n个点作为初始父代个体群。 步3:父代个体的适应能力评价。把第i个个体代入式(1)得相应的优化准则值f i,f i越小则该个体的适应能力越强。 步4:父代个体的概率选择。把已有父代个体按优化准则值f i从小到大排序。称排序后最前面的几个个体为优秀个体(群)。构造与f i值成反比的函数p i且满足p i>0和p1+p2+…p n=1。从这些父代个体中以概率p i选择第i个个体,共选择两组各n个个体。 步5:父代个体的杂交。由上得到的两组个体两两配对成为n对双亲。将每对双亲的二进制数的任意一段值互换,得到两组子代个体。 步6:子代个体的变异。任取上步中的一组子代个体,将它们的二进制数的任意一段值依某概率(即变异率)进行翻转(原值为0的变为1,反之变为0)。 步7:进化迭代。由上步得到的n个子代个体作为新的父代,算法转入步3进入下一次进化过程,重新评价、选择、杂交和变异,如此循环往复,使优秀个体逼近最优点。 ? 9 4 ? Ξ收稿日期:1996-11-11

相关主题
文本预览
相关文档 最新文档