上回我们说到,高斯老哥用消元法解线性方程,大致步骤呢就是给系数矩阵消元,运气好点呢直接整出上三角系数矩阵,得到方程组的唯一解,运气不行呢,消着消着发现整不出上三角,这时就得再讨论方程是有多解还是无解。

这里所说的"运气"呢其实可以根据行列式啊,Ax=0是否有解啊判断得到,具体操作可以看看我聊消元法的那一篇文章。

但是,高斯消元法存在一个问题,就是它是给人做的,比如给第一行乘个倍数加到另一行,或者将矩阵的两行交换个位置,这些我们手写计算当然没什么问题,但是你让计算机做它就不能忍了,计算机没那么多判断的能力,它就想要一种统一的计算模式和计算次数。ok,那我们就来聊一聊计算机是怎么做这些操作的,顺便我们能够知道为什么有很多科学家对矩阵乘法性能的提高有着孜孜不倦的追求。

我们先以一种抽象的方式来看看矩阵和列向量相乘,比如

根据第一节所说,系数方阵的三个列向量为三维空间中的三个独立向量,用它们可以组成三维空间的任一向量,[x,y,z]分别为这三个向量的扩展倍数,假如我想知道一倍的[1,2,4]与三倍的[3,7,8]的和向量是什么,只需要给[x,y,z]赋值[1,3,0]就可以了,即

那么如果我想知道

[1,2,4]向量与

负三倍的[1,2,4]与一倍的[3,7,8]的和向量以及

负四倍的[1,2,4]与一倍的[4,5,9]的和向量

的组合是什么,就可以运算

将计算过程及结果整理一下就可以得到

此时我们会惊奇得发现居然消元了,第一行居然消元了!只不过在列方向,高斯消元法需要的是在行方向做消元,那如果我对行向量能做一些求和之类的操作问题不就解决了吗。而这你也不需要担心,因为有数学大佬已经帮你总结好了,即

根据消元步骤先根据pivot1给23行消元,即

再根据pivot2给第三行消元,即

再将最后一行变为1

以上我们将消元的过程变为了矩阵乘法,我猜这就是计算机做消元的方法,当然,在消元过程中有时要用到两行交换位置的情况,我们也可以利用矩阵乘得到,比如交换矩阵的前两行

我们将上述给原矩阵做变换的矩阵叫做初等变换矩阵,初等变换矩阵的逆矩阵非常好求,逆矩阵的定义为AA^{-1}=E,而初等变换矩阵正是E经过了简单的运算得到的。比如将第一行乘4并加到第二行的变换矩阵,只要从第二行中减去第一行的4倍就变回了单位阵,也就得到了逆矩阵。,即

而交换两行的变换阵的逆矩阵是它本身

那么更一般的矩阵求逆怎么做呢(已知矩阵可逆),要不怎么说数学家牛逼呢,Gauss-Jordan法使求逆完全可以通过消元来解决,就是这二位

他们表示,假如你想求一个逆矩阵啊,先给原矩阵旁边整一个单位阵,然后给第一个矩阵开始消元,消元过程中单位阵做同样的变换,当原来的矩阵变为单位阵时,单位阵就是原矩阵的逆矩阵,首先是Gauss的消元法创造上三角矩阵

然后jordan说你把这个上三角再倒着消元成单位阵就得到逆矩阵啦

不放心的话拿到matlab里验证一下就ok了。

我们可以看到,化简求逆都是经过矩阵乘来运算,这种较为统一的运算过程可是把计算机爽死了,我们说的解方程啊,矩阵求逆啊到这里都变成了矩阵的乘法运算,而矩阵乘不仅仅只有这一点应用,在空间中一个向量的放大,缩小,平移,旋转都是通过乘矩阵的方式来实现,所以在矩阵乘这个计算上一点点的优化都可能使软件性能发生巨大变化,这也就回答了文章开始的问题,为什么有那么多人不断追求矩阵乘运算性能的提高。微小的改变却能导致巨大的性能变化,这可能就是算法之美吧。

怎么用计算机求逆矩阵,计算机是怎么求解线性方程的(矩阵乘和求逆)相关推荐

  1. 求逆矩阵计算机方法,求逆矩阵的快速方法(用于编程).pdf

    求逆矩阵的快速方法(用于编程) ? ? 1 2 2 2 Ρ Ρ Ρ Ρ Ρ ? Α Α Α Α Α Α 3 Α Β Β Β 3 Α Β Α Β Α Β Α Β Β Β Β 第 20 卷第 1 期 大 ...

  2. 高职计算机基础教案ppt,计算机数学基础 高职计算机大类专业基础 郭宝玉 PPT计算机数学基础 第2章.ppt...

    计算机数学基础 高职计算机大类专业基础 郭宝玉 PPT计算机数学基础 第2章.ppt (53页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.90 积分 ...

  3. 求根计算机在线,在线一元方程求解计算工具-一元函数自动求解在线计算器

    一元函数自动求解在线计算工具 牛顿法是求解的核心方法,它的维基百科的定义为:牛顿法是一种在实数域和复数域上近似求解方程的方法.方法使用函数f(x)的泰勒级数的前面几项来寻找方程f(x)=0的根.简言之 ...

  4. 选主元的高斯-约旦(Gauss-Jordan)消元法解线性方程组/求逆矩阵

    选主元的高斯-约当(Gauss-Jordan)消元法在很多地方都会用到,例如求一个矩阵的逆矩阵.解线性方程组(插一句:LM算法求解的一个步骤),等等.它的速度不是最快的,但是它非常稳定(来自网上的定义 ...

  5. 选主元的高斯-约当(Gauss-Jordan)消元法解线性方程组和求逆矩阵

    选主元的高斯-约当(Gauss-Jordan)消元法在很多地方都会用到,例如求一个矩阵的逆矩阵.解线性方程组(插一句:LM算法求解的一个步骤),等等.它的速度不是最快的,但是它非常稳定(来自网上的定义 ...

  6. 徐文尚计算机控制系统,【计算机控制系统 徐文尚】_计算机控制系统 徐文尚参考资料-毕业论文范文网...

    棉纺质量控制的计算机控制系统分析 摘要]计算机辅助生产(puterassistantmanufacture)和控制(puterassistan. 计算机控制系统在电力行业的应用分析 用分析[j].广东 ...

  7. 华中科技大学计算机学院的班级,华中科技大学计算机学院数据结构(计算机专业)...

    <数据结构>试卷 (A 卷) 2010 -2011 年度第二学期计算机学院 班级______ 学号___________ 姓名_________ 考试时间:2011年 月 日 考试形式:闭 ...

  8. 利用计算机进入,1、在第四代计算机期间内,计算机的应用逐步进入到()

    1.在第四代计算机期间内,计算机的应用逐步进入到() (14页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.90 积分 1.在第四代计算机期间内,计算 ...

  9. 【计算机组成原理】计算机系统结构笔记:合集

    200803本篇是郑纬民<计算机系统结构>的读书笔记,欢迎各位路过指正!今天把九章全部更新完毕啦. 0. 分章节目录 [计算机组成原理]计算机系统结构笔记(1):基本概念 [计算机组成原理 ...

最新文章

  1. KafkaOffsetMonitor 安装
  2. 功夫熊孟军贤:如何拿到10万种子用户,创业的经验分享
  3. 在PPT的时候,发现用Python十几行代码就可以实现Logo换色
  4. Kotlin when 流程判断
  5. 模板缓冲_模板缓冲以及如何使用它可视化体积相交
  6. minecraft服务器_如何启动自己的Minecraft服务器进行多人游戏
  7. 产品经理经验谈100篇(二)-数据分析应用,如何构建指标体系?
  8. Linux多网口绑定配合华为5700 eth-trunk技术,提高网络性能
  9. 精通Android自定义View(十二)绘制圆形进度条
  10. 祥林嫂形容哪类人?祥林嫂比喻什么样的人物?
  11. oracle之sqlloader
  12. 实用软件工程(张海藩)课后答案
  13. 西门子1200PLC(入门)1
  14. 斯特林数 java实现_斯特林数
  15. 腾讯北大合作的稀疏大模型训练加速方案HET入选国际顶会VLDB
  16. xamp环境搭建Pikachu实验环境搭建
  17. 安卓html调色器,5个超棒的在线配色神器
  18. keil 增加 芯片包_国内首家!平头哥刚刚宣布开源RISCV内核MCU芯片设计平台
  19. qt android图片自适应大小,Qt on Android:怎样适应不同的屏幕尺寸
  20. android 截屏需要权限,安卓App要权限还会偷删截屏?专治流氓App神器

热门文章

  1. RecycleView 二级列表(多级列表)
  2. echarts设置x轴字体不同颜色
  3. 论“学而不思则罔,思而不学则殆.“
  4. 洛谷 P4408 [NOI2003] 逃学的小孩(树的直径)
  5. iOS 图标上的数字
  6. 第 46 届 ICPC 国际大学生程序设计竞赛亚洲区域赛(上海)(热身赛(A/B) + 正式赛(D/E))
  7. windows下忘记mysql密码,跳过登录进入mysql解决方案
  8. PhantomJS+Selenium爬取淘宝
  9. 苹果屏幕尺寸_搭载 mini LED 屏幕的 iPad Pro 要来了?!
  10. 《MATLAB语音信号分析与合成(第二版)》:第8章 基音周期的估算方法