最速下降法求解线性代数方程组_第1页
最速下降法求解线性代数方程组_第2页
最速下降法求解线性代数方程组_第3页
最速下降法求解线性代数方程组_第4页
最速下降法求解线性代数方程组_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上最速下降法求解线性代数方程组要求:对于给定的系数矩阵、右端项和初值,可以求解线性代数方程组一、最速下降法数学理论在基本迭代公式中,每次迭代搜索方向取为目标函数的负梯度方向,即,而每次迭代的步长取为最优步长,由此确定的算法称为最速下降法。为了求解问题,假定我们已经迭代了次,获得了第个迭代点。现在从出发,可选择的下降方法很多,一个非常自然的想法是沿最速下降方向(即负梯度方向)进行搜索应该是有利的,至少在邻近的范围内是这样。因此,去搜索方向为.为了使目标函数在搜索方向上获得最多的下降,沿进行一维搜索,由此得到第个跌带点,即,其中步长因子按下式确定, . (1)显然,令就可以

2、得到一个点列,其中是初始点,由计算者任意选定。当满足一定的条件时,由式(1)所产生的点列必收敛于的极小点。二、最速下降法的基本思想和迭代步骤已知目标函数及其梯度,终止限和.(1) 选定初始点,计算;置.(2) 作直线搜索:;计算.用终止准则检验是否满足:若满足,则打印最优解,结束;否则,置,转(2)(3) 最速下降法算法流程图如图所示.结束 终止准则满足? 选定开始三、最速下降法的matlab实现function x,n=twostep(A,b,x0,eps,varargin) %两步迭代法求线性方程组Ax=b的解if nargin=3    eps= 1.0e-

3、6;    M = 200;elseif nargin<3    error    returnelseif nargin =5    M = varargin1;end D=diag(diag(A);    %求A的对角矩阵L=-tril(A,-1);      %求A的下三角阵U=-triu(A,1);       %求A的上三

4、角阵B1=(D-L)U;B2=(D-U)L;f1=(D-L)b;f2=(D-U)b;x12=B1*x0+f1;x =B2*x12+f2;n=1;                  %迭代次数while norm(x-x0)>=eps    x0 =x;    x12=B1*x0+f1;    x =B2*x12+f2; &

5、#160;  n=n+1;    if(n>=M)        disp('Warning: 迭代次数太多,可能不收敛!');        return;    endendfunction x,n= fastdown(A,b,x0,eps) %最速下降法求线性方程组Ax=b的解if(nargin = 3)    eps = 1.0

6、e-6;endx=x0;n=0;tol=1;while(tol>eps)                       %以下过程可参考算法流程    r = b-A*x0;    d = dot(r,r)/dot(A*r,r);    x = x0+d*r;    tol = norm(x-x0);    x0 = x;    n = n + 1;end

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论