高斯—牛顿迭代法
高斯—牛顿迭代法

高斯—牛顿迭代法高斯-牛顿迭代法是一种重要的数值解方法,它为解决复杂的非线性方程提供了一种有效的途径。
它结合了高斯原理和牛顿法的优势,利用高斯消元方法解出方程的一个精确解,从而有效地解决复杂的非线性方程组。
首先,我们来看看高斯-牛顿迭代法的基本思想。
很显然,这种迭代法是基于高斯原理以及牛顿法的思想。
根据高斯原理,可以得到每一个未知数的一个精确解。
而牛顿法则通过更新未知数的近似值,使得这个近似解更接近真实的解。
在这种思路的指导下,我们引入了高斯-牛顿迭代法,它具有非常高的效率和准确率。
其次,我们来看看高斯-牛顿迭代法的步骤以及具体实现过程。
高斯-牛顿迭代法的步骤主要有四步:首先,通过高斯消元算法求解出精确解;接着,通过求解线性方程组的近似解来更新未知数的初值;第三步,对更新的初值求解线性方程组,同时也计算出该近似解的梯度;最后,运用牛顿法更新未知数的近似值,并重复上述的求解步骤,直到收敛。
另外,在实际使用高斯-牛顿迭代法时,我们还需要考虑一些实际问题,例如对于牛顿迭代中未知数的初值选取,以及求解过程中收敛度控制等等。
不同的初值会影响最终求解过程的收敛速度和收敛精度,而牛顿法的收敛率又受到梯度的影响,因此,在实际应用中,需要考虑如何选择初值以及如何控制收敛度,这些问题都是高斯-牛顿迭代法内容中非常重要的一部分。
最后,我们来看看高斯-牛顿迭代法在实际应用中的一些典型案例。
在压力容器复合结构分析中,需要求解压力容器复合结构的有限元方程组,这其中含有大量非线性方程,而高斯牛顿迭代法可以有效地求解这样的问题;此外,高斯-牛顿迭代法也可以应用于组合优化的求解中,这类优化问题包括多目标优化、非线性约束优化等;另外,高斯牛顿迭代也可以用于求解动力系统中牛顿欧拉方程,如轨道飞行器动力学模型中的牛顿欧拉方程等。
总之,高斯-牛顿迭代法是一种有效的数值解方法,它结合了高斯原理和牛顿法的优势,可以有效地解决复杂的非线性方程组,而且具有收敛性好、效率高、准确率高的特点。
高斯—牛顿迭代法

高斯牛顿法高斯—牛顿迭代法的基本思想是使用泰勒级数展开式去近似地代替非线性回归模型,然后通过多次迭代,多次修正回归系数,使回归系数不断逼近非线性回归模型的最佳回归系数,最后使原模型的残差平方和达到最小。
高斯—牛顿法的一般步骤为:(1)初始值的选择。
其方法有三种,一是根据以往的经验选定初始值;二是用分段法求出初始值;三是对于可线性化的非线性回归模型,通过线性变换,然后施行最小平方法求出初始值。
(2)泰勒级数展开式。
设非线性回归模型为:i=1,2,…,n (3-68)其中r为待估回归系数,误差项~N(0, ),设:,为待估回归系数的初始值,将(3-68)式在g点附近作泰勒展开,并略去非线性回归模型的二阶及二阶以上的偏导数项,得(3-69)将(3-69)式代入(3-68)式,则移项:令:则:i=1,2,…,n用矩阵形式表示,上式则为:(3-70)其中:(3)估计修正因子。
用最小平方法对(3-70)式估计修正因子B,则:(3-71)设g为第一次迭代值,则:(4)精确度的检验。
设残差平方和为:,S为重复迭代次数,对于给定的允许误差率K,当时,则停止迭代;否则,对(3-71)式作下一次迭代。
(5)重复迭代。
重复(3-71)式,当重复迭代S次时,则有:修正因子:第(S+1)次迭代值:四、应用举例设12个同类企业的月产量与单位成本的资料如下表:表3-9 间接代换法计算表企业编号单位产品成本(元)月产量1 2 3 4 5 6 7 8 91011121601511141288591757666606160101620253136404551566065(注:资料来源《社会经济统计学原理教科书》第435页)试配合适当的回归模型分析月产量与单位产品成本之间的关系。
解:(1)回归模型与初始值的选择。
根据资料散点图的识别,本数据应配合指数模型:对指数模型两边取对数,化指数模型为线性回归模型,然后施行最小平方法求出初始值。
即:则上述指数模型变为:对分别求反对数,得,带入原模型,得回归模型:高斯—牛顿迭代法初始回归模型:残差平方和:(2)泰勒级数展开式。
jacobi,高斯,牛顿迭代

实验二:迭代法求解方程组姓名:徐烨学号:08072105时间:2010-11-17一、实验目的利用jacobi 迭代法和gauss-seidei 迭代法求解线性方程组,利用newton 迭代法求解非线性方程组。
在求解过程中,利用这三种方法的迭代原理,根据迭代法的求解流程,写出三种迭代法的迭代格式,学习三种迭代法的原理和解题步骤,并使用matlab 软件求解方程。
在实验过程中,分别取不同的初值进行求解,并做结果分析,解怒同德方程来比较这三种迭代方法的利弊。
二、实验步骤newton 迭代法⒈newton 迭代原理考虑非线性方程f(x)=0,求解她的困难在于f 是非线性函数。
为克服这一困难,考虑它的线性展开。
设当前点为Xk, 在Xk 处的Taylor 展开式为f ()x ≈f ()()()k k k x x x f x -'+令上式右端为0.解其方程得到()()k k k k x f x f x x '-=+1 ⋅⋅⋅=1,0k 此式就称为Newton 公式。
2. newton 迭代法的matlab 实现function x=newton(fname,dfname,x0,e,N)%用途:牛顿迭代法解非线性方程组分f(x)=0%fname 和dfname 分别表示f(x)及其到函数的M 函数句柄或内嵌函数的表达式%x0为迭代初值,e 为精度%x 为返回数值解,并显示计算过程,设置迭代次数上线N 以防发散if nargin<5,N=500;endif nargin<4,e=le-4;endx=x0;x0=x+2*e;k=0;fprintf('It.no=%2d x%[2d]=%12.9f\n',k,k,x)while abs(x0-x)>e&k<Nk=k+1;x0=x;x=x0-feval(fname,x0)/feval(dfname,x0);fprintf('It.no=%2d x[%2d]=%12.9f\n',k,k,x) endif k==N,fprintf('已达到迭代次数上限');end在试验中,我用这种方法求f(x)=x3-3*x-1=0的解①初值为2时,新建一个文件,输入:fun=inline('x^3-3*x-1');dfun=inline('3*x^2-3');x=newton(fun,dfun,2,0.5e-6)即可得此方程的解为:It.no= 0 xIt.no= 1 x[ 1]= 1.888888889It.no= 2 x[ 2]= 1.879451567It.no= 3 x[ 3]= 1.879385245It.no= 4 x[ 4]= 1.879385242x =1.879385241571817e+000②初值为5时,新建一个文件,输入:fun=inline('x^3-3*x-1');dfun=inline('3*x^2-3');x=newton(fun,dfun,5,0.5e-6)即可得此方程的解为:It.no= 0 xIt.no= 1 x[ 1]= 3.486111111It.no= 2 x[ 2]= 2.562343095It.no= 3 x[ 3]= 2.075046554It.no= 4 x[ 4]= 1.902660228It.no= 5 x[ 5]= 1.879777024It.no= 6 x[ 6]= 1.879385355It.no= 7 x[ 7]= 1.879385242x =1.879385241571826e+000③初值为8时,新建一个文件,输入:fun=inline('x^3-3*x-1');dfun=inline('3*x^2-3');x=newton(fun,dfun,8,0.5e-6)即可得此方程的解为:It.no= 0 xIt.no= 1 x[ 1]= 5.423280423It.no= 2 x[ 2]= 3.754505841It.no= 3 x[ 3]= 2.719579123It.no= 4 x[ 4]= 2.148629510It.no= 5 x[ 5]= 1.920654127It.no= 6 x[ 6]= 1.880593045It.no= 7 x[ 7]= 1.879386323It.no= 8 x[ 8]= 1.879385242It.no= 9 x[ 9]= 1.879385242x =1.879385241571817e+000gauss-seidel 实验过程1.gauss-seidel 迭代原理将方程组Ax=b (设n i a n ,2,1;0⋅⋅⋅=≠)化成等价方程组:)(1∑≠-=ij j i i i i x a b a x j i ),2,1(n i ⋅⋅⋅= 采用迭代格式: ⎪⎪⎭⎫ ⎝⎛--=∑∑-=+=++111111i j n i j k jij k j ij i ij k i x a x a b a x ()n i ⋅⋅⋅⋅=,2,1 2.gauss-seidel 迭代法的matlab 实现function x=jacobi(A,b,x0,emg,N)% A 是线性方程组的系数矩阵% b 是值向量% x0是迭代初始向量% N 是迭代上限,诺迭代次数大于>N,则迭代失败% emg 是控制精度% 用gauss-seidei 迭代法求解线性方程组Ax=b 的解%k 表示迭代次数%x 表示用迭代法求得的解线性方程组的近似解if nargin<5N=500;else N=N;endn=length(b);x1=zeros(n,1);x2=zeros(n,1);x1=x0;k=0;r=max(abs(b-A*x1));while r>emgfor i=1:nsum=0;for j=1:nif i~=jsum=sum+A(i,j)*x1(j);endendx2(i)=(b(i)-sum)/A(i,i);endr=max(abs(x2-x1));x1=x2;k=k+1;if k>Nwarning('迭代次数达到上限!');return;endendx=x1;在试验中,我用此方法求①A1=922282217 ,b=6810的线性方程组的解 新建一个文件,输入:A=[7 1 2;2 8 2;2 2 9];b=[10 8 6]';x0=[0 0 0]';emg=10^(-6);x=gaussseidel(A,b,x0,emg)可得此方程的解为:x =1.269406363593758e+0006.210045136516440e-0012.465753606121330e-001改变此初值为x0=[1 2 3]’时,可得此方程的解为:x =1.269406358870516e+0006.210045989420114e-0012.465753427083272e-001②A2=32-1-1-102-2-2-10 ,b=15.01的线性方程组的解 新建一个文件,输入:A=[10 -2 -2;-2 10 -1;-1 -2 3];b=[10 8 6]';x0=[0 0 0]';emg=10^(-6);x=gaussseidel(A,b,x0,emg)即可得此方程的解为:x =2.067226785332675e+0001.588235242744889e+0003.747899090274151e+000改变此初值为x0=[4 5 6]’时,可得此方程的解为:x =2.067226982320636e+0001.588235338736795e+0003.747899219931409e+000jacobi 迭代法的实验过程1.jacobi 迭代原理将方程组Ax=b (设n i a n ,2,1;0⋅⋅⋅=≠)化成等价方程组:)(1∑≠-=ij j i i i i x a b a x j i ),2,1(n i ⋅⋅⋅= 采用迭代格式:⎪⎪⎭⎫ ⎝⎛-=∑≠+111j k j ij i ii k i x a b a x ()n i ⋅⋅⋅=,2,1 2.Jacobi 迭代法的matlab 实现function x=jacobi(A,b,x0,emg,N)% A 是线性方程组的系数矩阵% b 是值向量% x0是迭代初始向量% N 是迭代上限,诺迭代次数大于>N,则迭代失败% emg 是控制精度% 用jacobi 迭代法求解线性方程组Ax=b 的解%k 表示迭代次数%x 表示用迭代法求得的解线性方程组的近似解if nargin<5N=500;else N=N;endn=length(b);x1=zeros(n,1);x2=zeros(n,1);x1=x0;k=0;r=max(abs(b-A*x1));while r>emgfor i=1:nsum=0;for j=1:nif i~=jsum=sum+A(i,j)*x1(j);endendx2(i)=(b(i)-sum)/A(i,i);endr=max(abs(x2-x1));x1=x2;k=k+1;if k>Nwarning('迭代次数达到上限!');return;endendx=x1;在实验中,我用此方法求①A1=922282217 ,b=6810的线性方程组的解,这样可以比 这两种方法的优越性新建一个文件,输入:A=[7 1 2;2 8 2;2 2 9];b=[10 8 6]';x0=[0 0 0]';emg=10^(-6);x=jacobi(A,b,x0,emg)即可得此方程的解为:x=1.269406606540146e+0006.210048051684348e-0012.465755635845312e-001改变此初值为x0=[1 2 3]’时,可得此方程的解为:x =1.269406576962693e+0006.210047721178078e-0012.465755330013612e-001②A2=32-1-1-102-2-2-10 ,b=15.01的线性方程组的解 新建一个文件,输入:A=[10 -2 -2;-2 10 -1;-1 -2 3];b=[10 8 6]';x0=[0 0 0]';emg=10^(-6);x=jacobi (A,b,x0,emg)即可得此方程的解为:x =2.067226548410933e+0001.588235036073759e+0003.747898577034409e+000改变此初值为x0=[4 5 6]’时,可得此方程的解为:x =2.067227297951090e+0001.588235601041707e+0003.747899852657807e+000三、实验分析由Jacobi 的迭代公式可以看到,在计算机上使用该法线性方程组时,x(m)分量必须保存到x(m+1)的分量全部复出后才不再需要。
牛顿迭代法的函数逼近和拟合

牛顿迭代法的函数逼近和拟合在数学和计算机科学中,函数逼近(function approximation)和拟合(function fitting)是重要的问题之一,它们涉及到如何用已知数据或函数来找出与之近似的函数形式。
而牛顿迭代法是一种常用的数值计算方法,可以被广泛地应用在函数逼近和拟合中。
一、牛顿迭代法简介牛顿迭代法是一种求解方程的方法,其本质是一种迭代算法,可以通过给出一个函数在某点的值以及该点的导数,迭代地求出函数的零点或者极值点。
其基本公式为:$$x_{n+1}=x_n-\frac{f(x_n)}{f'(x_n)}$$其中,$f(x_n)$表示函数在点$x_n$处的函数值,$f'(x_n)$表示函数在点$x_n$处的导数,$x_{n+1}$是通过迭代算法得到的新的近似解。
在使用牛顿迭代法时,需要注意函数的光滑性和局部收敛性,如果函数不光滑或者在某些点处导数为零,那么迭代可能会导致发散或者收敛速度极慢。
二、牛顿迭代法在函数逼近中的应用在函数逼近中,如果我们已知一些数据点$(x_i, y_i)$,并且想要找到一个函数$f(x)$,可以用这些数据点来拟合函数,那么可以使用牛顿迭代法来实现。
具体的方法如下:1.首先定义一个函数$g(x)$,它满足$g(x_i)=y_i$;2.然后利用牛顿迭代公式,给出$f(x)$的递归式:$$f(x_{n+1})=f(x_n)+\frac{g(x_n)-f(x_n)}{g'(x_n)}$$其中,$g(x)$是一个在点$(x_i, y_i)$处值为$y_i$,在其他点处为零的光滑函数。
3.重复进行上述迭代,直到得到一个满足精度要求的近似解。
通过牛顿迭代法的函数逼近方法,我们可以得到在数据点上的逼近函数,这个函数可以用来进行插值和外推等操作,同时也可以作为一个简单的近似模型来使用。
三、牛顿迭代法在函数拟合中的应用除了函数逼近,牛顿迭代法还可以用于函数拟合,这里的函数拟合指的是通过一些给定的函数基,将一个在某些点处已知函数值的函数表示为基函数线性组合的形式。
python高斯-牛顿迭代法 -回复

python高斯-牛顿迭代法-回复题目:Python高斯牛顿迭代法解析- 优化非线性问题摘要:高斯牛顿迭代法是一种用于求解非线性方程组的优化算法。
本文将介绍高斯牛顿迭代法的原理和使用Python实现的步骤。
我们将以一个简单的实例来说明算法的应用,并解释其背后的数学原理。
最后,我们将讨论高斯牛顿迭代法的优势和局限性。
引言:高斯牛顿迭代法是一种被广泛使用的数值优化算法,用于解决非线性问题。
不同于求解线性方程组的高斯消元法,高斯牛顿迭代法专门用于求解非线性问题。
它的应用领域涵盖了各个科学和工程领域,如计量经济学、计算机视觉和机器学习。
本文将详细介绍高斯牛顿迭代法的原理和实现步骤。
我们将以一个简单的实例来演示算法的工作原理,并对其数学背后的原理进行解析。
一、高斯牛顿迭代法原理高斯牛顿迭代法的目标是通过迭代的方式逼近方程组的根。
为了便于理解,我们以一个简单的二次曲线拟合问题为例。
假设我们有一组观测数据点(xi,yi),我们希望通过一个二次曲线y = a * x^2 + b * x + c来拟合这些数据。
我们的目标是找到最佳的参数a、b 和c,使得拟合曲线与观测数据点的差异最小。
为了达到这个目标,我们可以定义一个误差函数E(a,b,c)来衡量拟合曲线和观测数据点之间的差异。
常见的误差函数有平方和误差函数,即E(a,b,c) = Σ(yi - (a * xi^2 + b * xi + c))^2。
我们的目标是最小化误差函数,即找到使得E(a,b,c)最小的a、b和c。
高斯牛顿迭代法通过迭代的方式逼近最佳参数。
二、高斯牛顿迭代法步骤1. 初始化参数:初始化a、b和c的初始值。
2. 计算雅可比矩阵:雅可比矩阵是误差函数对参数的偏导数矩阵。
对于二次曲线拟合问题,雅可比矩阵J可以表示为:J = [∂E/∂a, ∂E/∂b, ∂E/∂c]3. 计算梯度向量:梯度向量是误差函数在当前参数值处的梯度,即导数。
梯度向量g可以表示为:g = [∂E/∂a, ∂E/∂b, ∂E/∂c]4. 计算海森矩阵:海森矩阵是误差函数对参数的二阶偏导数矩阵。
§3.2非线性经济计量模型

主要内容
一、非线性单方程计量经济学模型概述 二、非线性普通最小二乘法 三*、非线性最大似然法
一、非线性单方程计量经济学 模型概述
1、解释变量非线性问题 2、可以线性化的包含非线性参数的问题 3、不可线性化的包含非线性参数的问题
1、解释变量非线性问题
模型中参数是线性的,而其中一个或者多个变
( 0) ( 0) (1) ( 0) (1) (1) ( 0)
3、牛顿-拉夫森迭代法
(1)直接对非线性模型的残差平方和展
开泰勒级数 (2)取泰勒级数的二阶近似值,而不是 一阶近似值
y i f xi , u i
牛顿-拉夫森迭代法
n
残差平方和泰勒级数二阶近似
ˆ ˆ S yi f xi ,
(0)高斯-牛顿迭代法思路
1、给定被估计参数的初始值 2、在初始值处展开泰勒级数,取一阶近似,
牛顿迭代法、二分法,定点法的区别与联系

牛顿迭代法、二分法,定点法的区别与联系牛顿迭代法牛顿迭代法,它是牛顿在17世纪提出的一种在实数域和复数域上近似求解方程的方法。
多数方程不存在求根公式,因此求精确根非常困难,甚至不可能,从而寻找方程的近似根就显得特别重要Newton法是求解方程f(x)=0的最著名的和最有效的数值方法之一,其基本思想可以是将方程转化为线性方程来求解,设f(x)连续可微,则将函数f(x)在x k点处进行taylor展开,即如果,取taylor展开式的线性部分近似代替f(x),得到f(x)=0的近似方程,将此方程的根记作x k+1,则得到这就是Newton迭代公式迭代函数为不动点迭代将方程f(x)=0改写成等价方程则方程的根又称为函数的不动点.为了求的不动点,取一个初始近似值x0,用迭代格式,k=1,2产生序列{x k},这种迭代法我们称之为不动点迭代,或简单迭代又称为迭代函数.假设一个迭代法产生的序列{x k},k=0,1,2,,收敛,,X*是方程f(x)=0的一个解.区间对分法区间对分法是求解方程f(x)=0的一种直观而又简单的迭代法,它是建立在介值定理的理论基础之上的,第一个取值点取在含优区间的1/2处,然后逐渐逼近最优值的单因素试验设计方法。
联系都是用来近似求方程根的方法,利用数列收敛于方程的根。
在应用方面,区间对分法可用来求根的初始近似值,以供其它对初始值要求严格的迭代法使用,牛顿法和不定点迭代法都有局限性,收敛有方向性,如果初始值选的不恰当,则方程不收敛,也就不能得到方程的根。
另外,方程f(x)=0和x=是等价的,于是Newton迭代公式也属于不动点迭代。
区别对分法每次50%的区间舍弃,试验选值跨跃的幅度过大,会使对分法漏掉了最佳值。
从此误差估计式看出,近似解的误差下降速度较慢.但此方法比较简单,且安全可靠.在实际应用中,.需要注意的是此方法只能求单实根,而不能求复根或偶数重根.在牛顿迭代和不动点迭代中,对不动点方程x=,它导出的迭代过程有可能发散,也可能收敛得非常缓慢,注意到x=x和x=都是不动点方程,它们的加权平均h(x)=也是不动点方程,而h(x) 和有完全相同的不动点。
牛顿迭代法

xn
x exp(x)-1 1 0 -1 0 0.5 x 1
(n = 0, 1, · · · · · )
f=inline('x*exp(x)-1'); f1=inline('(x+1)*exp(x)'); x0=0.5;er=1;k=0; while er>0.00001 x=x0-f(x0)/f1(x0); er=abs(x-x0) x0=x;k=k+1 end
( x ) f ( x ) f ( x ) /[ f ( x )] 0
* * * * 2
f ( x ) ( x ) * f (x )
* *
所以, Newton迭代法至少平方收敛。
9/26
例2. 求 f(x)=xex – 1= 0 在 x0=0.5 附近的根 解: f ( x) (1 x)e x 迭代格式为
收敛到的牛顿迭代初值点集合收敛到的牛顿迭代初值点集合收敛到的牛顿迭代初值点集合2526由于现代意义上的标准化是在资本主义企业里发展起来的资本家所关心的是标准化的应用效果不可能支持企业里的标准化工作者去从事理论研究
牛顿(Newton)迭代法 平方根算法求 初值: x1=1.5
(n = 1,2,· · · · · )
17/26
f ( x1 ) x2 x1 ( x1 x0 ) f ( x1 ) f ( x0 ) f ( xn ) xn 1 xn ( x n x n 1 ) f ( x n ) f ( x n 1 ) ( n =1,2,· · · · · · ·)
例2.8 确定悬链线方程
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
高斯牛顿法
高斯—牛顿迭代法的基本思想是使用泰勒级数展开式去近似地代替非线性回归模型,然后通过多次迭代,多次修正回归系数,使回归系数不断逼近非线性回归模型的最佳回归系数,最后使原模型的残差平方和达到最小。
高斯—牛顿法的一般步骤为:
(1)初始值的选择。
其方法有三种,一是根据以往的经验选定初始值;二是用分段法求出初始值;三是对于可线性化的非线性回归模型,通过线性变换,然后施行最小平方法求出初始值。
(2)泰勒级数展开式。
设非线性回归模型为:
i=1,2,…,n (3-68)
其中r为待估回归系数,误差项~N(0, ),设:
,为待估回归系数的初始值,将(3-68)式在g点附近作泰勒展开,并略去非线性回归模型的二阶及二阶以上的偏导数项,得
(3-69)
将(3-69)式代入(3-68)式,则
移项:
令:
则:i=1,2,…,n
用矩阵形式表示,上式则为:(3-70)
其中:
(3)估计修正因子。
用最小平方法对(3-70)式估计修正因子B,
则:(3-71)
设g为第一次迭代值,则:
(4)精确度的检验。
设残差平方和为:
,S为重复迭代次数,对于给定的允许误差率K,当时,则停止迭代;否则,对(3-71)式作下一次迭代。
(5)重复迭代。
重复(3-71)式,当重复迭代S次时,则有:修正因子:
第(S+1)次迭代值:
四、应用举例
设12个同类企业的月产量与单位成本的资料如下表:
表3-9 间接代换法计算表
企业编号单位产品成
本(元)
月产量
1 2 3 4 5 6 7 8 9
10
11
12
160
151
114
128
85
91
75
76
66
60
61
60
10
16
20
25
31
36
40
45
51
56
60
65
(注:资料来源《社会经济统计学原理教科书》第435页)
试配合适当的回归模型分析月产量与单位产品成本之间的关系。
解:(1)回归模型与初始值的选择。
根据资料散点图的识别,本数据应配合指数模型:对指数模型两边取对数,化指数模型为线性回归模型,然后施行最小平方法求出初始
值。
即:
则上述指数模型变为:
对分别求反对数,得,带入原模型,
得回归模型:
高斯—牛顿迭代法
初始回归模型:
残差平方和:
(2)泰勒级数展开式。
先对指数模型中的a和b分别求偏导数。
然后用泰勒级数展开指数模型,移项整理得(注:参见(3-69)、(3-70)式):160-150.5866 0.82545 1535.0316
151-134.2148 0.73571 2189.0282
114-124.3015 0.68137 2534.1796
128-112.9332 0.61905 2878.0110
85-100.6550 0.55175 3180.7400 a
91- 91.4493 = 0.50128 3355.9387
75- 84.6948 0.46246 3453.4052
76- 76.9488 0.42180 3529.7593 b
66- 68.5829 0.37594 3565.4701
60- 62.3104 0.34156 3556.9658
61- 57.7081 0.31633 3529.5468
60-52.4302 0.28740 3473.9702
(3-72)
(3)估计修正因子。
解(3-72)式矩阵,得:
a 12.09660288
=
b -0.00180342
第一次迭代值:
a1 a0 a 194.5266
= + =
b1 b0 b 0.9792
第一次迭代回归模型:
(4)精确度的检验。
残差平方和:
给定误差率K=10,则:
作下一次迭代。
(5)重复迭代。
将a1 代入(3-71)式作第二次迭代。
得估计修正因子:b1
a 0.647654043
=
b -0.000066948
第二次迭代值:
a2 a1 a 195.1743
= + =
b2 b1 b 0.9791
第二次迭代回归模型:
残差平方和:
误差率:
误差率达到要求,停止迭代。
表3-10计算结果比较
平方法的不足。
其缺陷是计算量较大,但随着电子计算机的日益普及,这点计算就显得微不足道了。