奇异值分解法计算广义逆#甄选.

上传人:ba****u 文档编号:170591296 上传时间:2022-11-21 格式:DOCX 页数:6 大小:26.92KB
返回 下载 相关 举报
奇异值分解法计算广义逆#甄选._第1页
第1页 / 共6页
奇异值分解法计算广义逆#甄选._第2页
第2页 / 共6页
奇异值分解法计算广义逆#甄选._第3页
第3页 / 共6页
点击查看更多>>
资源描述
奇异值分解法计算广义逆#精选.奇异值分解法计算广义逆线性最小二乘问题的广义逆求解(丁梁波 整理)对于任意的mxn方程组:Ax二b其中 A =a11 a1nx=x1b=b1am1 amnxnbm如果m = n,只要n方阵A非奇异,就有逆阵a一 1,从而得到解x二A-ib。然而,对于m丰n的一般情况,A是长方 阵,就没有通常的逆阵。不过它仍然可以有相应于特定方程类型的几种形式的广义逆矩阵,其中适于任何 情况的广义逆叫做Penrose广义逆,记为a +。于是,方程的解可以为:x = A+b由奇异值分解(SVD)可以将a分解为:A 二 USVt其中U,V分别为m ,n阶正交阵这样A的广义逆A +可表示为:A + 二 VZ-iUt其中Z-1 =Z-1r01E-1 =r0-1r这样我们可以看出,完成A的奇异值分解后,求解A的广义逆就变得很简单,从而可以方便地求出方程组的 最小二乘解。下面我们说明对矩阵进行奇异值分解的方法和步骤。通常情况下我们考虑mn时矩阵a的奇异值分解,因为当mn时,可以将n-m行补零使其成为方阵后再进 行分解。这样我们就将矩阵A的奇异值分解分为两大步,若干小步如下:一用 Householder 变换将 A 约化为双对角矩阵。具体步骤如下:1. 以A的第1列作为V,取i=l,按下列式子构造Householder矩阵Q 式中H为Q,为了方便以后的说明我们还用H表示ii(1)H = I -iUJI2,v ,,v ) T2i+1mz 2其中,u = (0,0,,v + sign(v ) v(z)iiiv(i)i i+1| = (g v2)1/22 k k = i2. 将Q左乘A得到矩阵Q A,并以Q A的第1行作为v,取i=2,按(1)式构造Householder矩阵H ,右1 1 1 2乘QA得到QAH。1 1 23. 取QA H的第2列为v, i=2,按(1)式构造Householder矩阵Q,左乘QA H,得到Q QA H,并将1 2 2 1 2 2 1 2计算Q Q将其存入Q。2 1 14. 取Q QA H的第2行为v, 1=3,按(1)式构造Householder矩阵H ,右乘Q QA H ,得到Q QA H H ,21232122123并将 H H 存入 H。2325. 依次类推,计算出QQQAH HH为双对角矩阵,并将QQQ存入到Q中,H HH存入到n n-1123n-1n n-11123n-1H 中。2QQ QAHn n-1H H 为双对角矩阵记为:3n-1p1Y2p2pn-1Yn pn需要注意的是:当m = n时,只计算到QQAH HHn-1 1 2 3 n-2二用原点位移QR算法进行迭代,计算所有的奇异值,并最终结合(一)计算出出U和V。1. 按下式列旋转矩阵 H2)0H=0式中c = g /r1r =揖 2 +g21 2g = P2 -C1 i 1(g =pY2122 )- 1n-12C = P2 +Y 2 + P2 +Y2 n nn -1并将计算 BH02. 按下式构造列旋转矩阵+ Y 2 - P 2 -y 2 ) + 4丫 2丫 2 12n n -1 n -1n n -1cs-s cQ1=1并计算 Q BH103. 构造列旋转矩阵c - s sc1并计算Q BHH以及HH1 0 1 0 14. 构造列旋转矩阵1 _c sQ2-s c11并计算Q Q BHH以及Q Q2 1 0 1 2 15. 按类似(3), (4)的方法构造列旋转矩阵,并计算相应的新矩阵QQ Q BHH H ,直到i=n,并记i2101i-1Q i = Q Q Q , H i = H H H , B 二 Qi 二 QQ BH H H1 n 2 1 1 0 1n-11 1 n 2 1 0 1n-1即 B 二 Q i BH i1 1 16. 判断B的次对角线元素是否在误差范围内可以认为是0若是则分解完毕,若否,则将B作为上面的B11重复步骤1, 2, 3, 4, 5, 6。直到B可以近似看作是对角阵。k即:B 二 Qk-iBHk-ikk-1 k-1 k-1记 Q = Qk-i2Qi ,k-i2 iH 二 HiH2 Hk-ii 2k-i则B的对角线元素就是矩阵A的奇异值,即a二uzvt中的丫已经求得,从上面的过程中我们可以将A按下面 k的式子进行分解:A 二 QQB HHik对比 A 二 UZVt ,U 二 QiQV 二 HtHt2这样我们就完成了矩阵A的奇异值分解,由于U和V都是正交阵,我们能够得到A的广义逆a +,从而可以根据下列公式计算方程组的最小二乘解:程序说明:程序共有一个主程序MAIN.FOR和三个主要功能子程序:MAIN.FOR主要功能有:方程组的初始化,输出系数矩阵及其广义逆、广义逆法的最小二乘解以及逆的逆对方法进行验证。BMUAV.FOR程序的核心部分,奇异值分解程序,输入系数矩阵,输出分解后的U, V, 丫 AGMIV.FOR计算广义逆a +以及方程组的最小二乘解BGINV.FOR仅计算广义逆a+ 另外还有一个奇异值分解的辅助小程序 SSS.FOR如有侵权请联系网站删除感谢您使用本店文档 您的满意是我们永恒的追求! (本句可删)
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!