一、增广矩阵

 假设我们要求解方程$Ax=b$,其中矩阵$A$和$b$如下所示:

$A = \left[\begin{array}{llll}{1} & {2} & {2} & {2} \\ {2} & {4} & {6} & {8} \\ {3} & {6} & {8} & {10}\end{array}\right]$

$b = \left[\begin{array}{llll}{b_1}\\ {b_2}\\{b_3}\end{array}\right]$

 我们可以在矩阵$A$右侧加上一列b,得到:

$\left[\begin{array}{llll}{1} & {2} & {2} & {2} & {b_1} \\ {2} & {4} & {6} & {8}& {b_2} \\ {3} & {6} & {8} & {10}& {b_3}\end{array}\right]$

此即为增广矩阵:即A和b一块二考虑

二、可解性

 方程$Ax=b$可解的条件是:当$b$属于$A$的列空间( C(A) )时,也就是$b$是$A$的列向量的线性组合

 换一种说法:如果矩阵$A$各行的线性组合得到零,那么$b$分量执行相同的操作也必须得到零向量(参考上面的矩阵$A$)

 只有$b$满足了上面的条件,方程才有解

三、求$Ax=b$所有解

 第一步:求一个特解

  将所有自由变量设为0

  我们将增广矩阵进行消元后:

$\begin{array}{l}{\left[\begin{array}{}{1} & {2} & {2} & {2} & {b_{1}} \\ {0} & {0} & {2} & {4} & {b_{2}-2 b_{1}} \\ {0} & {0} & {0} & {0} &{b_{3}-b_{2}-b_{1}}\end{array}\right]} \\ {} \end{array}$

  方程有解的条件便是:$O=b_{3}-b_{2}-b_{1}$,假设$b=\left[\begin{array}{l}{1} \\ {5} \\ {6}\end{array}\right]$,则消元矩阵为:

$\begin{array}{l}{\left[\begin{array}{}{1} & {2} & {2} & {2} & {1} \\ {0} & {0} & {2} & {4} & {3} \\ {0} & {0} & {0} & {0} &{0}\end{array}\right]} \\ {}\end{array}$

  然后求出主变量:

   针对上面的例子,$x_2, x_4 = 0$,则求主变量过程简化为:

$x_{1}+2 x_{3}=1$
$2 x_{3}=3$

   于是一个特解为:$x_p = \left[\begin{array}{c}{-2} \\ {0} \\ {3/2} \\ {0}\end{array}\right]$

  还记得07)节中的零空间吗?可以去看看,于是我们的通解为:即特解和零空间(在假设的$b$的情况下)

$X = \left[\begin{array}{c}{-2} \\ {0} \\ {3/2} \\ {0}\end{array}\right]+C_{1}\left[\begin{array}{c}{-2} \\ {1}\\ {0} \\ {0}\end{array}\right]+ C_{2}\left[\begin{array}{c}{2} \\ {0} \\ {-2} \\ {1}\end{array}\right]$

注意:这里的特解是与$b$的值相关的

  那么为什么这样的组合可以组成方程的通解呢?原因如下:

$Ax_p = b$

$Ax_n = 0$

两者相加:$A(x_p + x_n) = b$

其中$x_p$是$b$给定下的特解,$x_n$是零空间,所以通解就是特解加零空间

  也就是:

四、秩(Rank)

 矩阵的秩等于矩阵的主元数。如果矩阵的秩为r,则必有r<=m且r<=n,下面讨论满秩(full rank)的情形:

 列满秩:r=n。每列都有主元,x的每一个分量都是主变量,没有自由变量。零空间N(A)之内只有零向量。方程无解或者有唯一解,如下

  为何列满秩时,零空间N(A)之内只有零向量?因为之前我们讲过零空间定义,该实例中满足$Ax=0$的$x$只有零向量,该实例中的列向量的线性组合无法得到零向量,所以列满秩时,零空间N(A)之内只有零向量。而该实例方程的通解就只剩下特解了,而特解取决于$b$,只有$b$正好是$A$列的线性组合时,方程才有唯一解

$A=\left[\begin{array}{ll}{1} & {3} \\ {2} & {1} \\ {6} & {1} \\ {5} & {1}\end{array}\right] \rightarrow\left[\begin{array}{ll}{1} & {0} \\ {0} & {1} \\ {0} & {0} \\ {0} & {0}\end{array}\right]=R$

 行满秩:r=m。每行都有主元,无论b取何值,方程Ax=b都有解。主变量r个,自由变量n-r个,如下

$A=\left[\begin{array}{llll}{1} & {2} & {6} & {5} \\ {3} & {1} & {1} & {1}\end{array}\right] \rightarrow\left[\begin{array}{llll}{1} & {0} & {*} & {*} \\ {0} & {1} & {*} & {*}\end{array}\right]=R$

 满秩r=m=n,矩阵可逆。零空间只有零向量,无论b取何值,方程$Ax=b$都有唯一解

$A=\left[\begin{array}{ll}{1} & {2} \\ {3} & {1}\end{array}\right] \rightarrow\left[\begin{array}{ll}{1} & {0} \\ {0} & {1}\end{array}\right]=R$

 综上:秩决定了方程组解的数量

08-求解Ax=b:可解性和解的结构的更多相关文章

  1. 介绍求解AX=b:可解性与解的结构

    前面用高斯消元法或矩阵LU分解求解线性方程组的解,主要是针对有唯一解(矩阵A可逆)的情况,下面进一步介绍线性方程组有多个解的情况下,解的求解.

  2. 求解Ax=b

    一 线性方程组 Ax=b 的解释 线性方程组 Ax=b,其中矩阵 A 尺寸为 m*n, 当 A 为方正时,可使用消元法判断解是否存在并求解.当 A 为长方形矩阵时,同样可使用消元法判断解存在情况并求解 ...

  3. 2021.08.09 P5658 括号树(树形结构)

    2021.08.09 P5658 括号树(树形结构) [P5658 CSP-S2019] 括号树 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 题意: 太长,在链接中. 分析及代码 ...

  4. 2021.08.09 P5018 对称二叉树(树形结构)

    2021.08.09 P5018 对称二叉树(树形结构) [P5018 NOIP2018 普及组] 对称二叉树 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 题意: 求一棵子树,关 ...

  5. 2021.08.06 P2441 角色属性树(树形结构)

    2021.08.06 P2441 角色属性树(树形结构) P2441 角色属性树 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 题意: 求离x最近的祖先y且(x,y)>1. ...

  6. MIT线性代数:8.求解Ax=b,可解性和结构

  7. matlab 求解 Ax=B 时所用算法

    x = A\B; x = mldivide(A, B); matlab 在这里的求解与严格的数学意义是不同的, 如果 A 接近奇异,matlab 仍会给出合理的结果,但也会提示警告信息: 如果 A 为 ...

  8. python求解ax² + bx + c = 0

    系数需满足条件: a,b不能同时为0 b2-4ac≠0 代码如下def quadratic(a, b, c): """ 返回ax² + bx + c = 0的 " ...

  9. MIT线性代数:7.主变量,特解,求解AX=0

随机推荐

  1. es关闭不使用的index、真正删除文档

    因为只要索引处于open状态,就会占用内存+磁盘: 如果将索引close,只会占用磁盘 Curl -XPOST ‘hadoop01:9200/index/_close’ ------ 在es中删除文档 ...

  2. [CSP-S模拟测试]:big(Trie树+贪心)

    题目描述 你需要在$[0,2^n)$中选一个整数$x$,接着把$x$依次异或$m$个整数$a_1~a_m$.在你选出$x$后,你的对手需要选择恰好一个时刻(刚选完数时.异或一些数后或是最后),将$x$ ...

  3. IDEA设置Ctrl+滚轮调整字体大小

    IDEA设置Ctrl+滚轮调整字体大小(转载)   按Ctrl+Shift+A,出现搜索框 输入mouse: 点击打开这个设置:勾选 点击ok,之后就可以通过Ctrl+滚轮 调整字体大小了.

  4. Django项目执行时No Module Named ' ' 问题的解决情况

    出现这种问题的情况大致都是因为该模块未安装,使用 pip install xxx 进行安装,即可解决此类问题. 出现ModuleNotFoundError: No module named 'rest ...

  5. Oracle12c ASMM和hugepage

    在Oracle 12c,测试发现默认并不启用AMM 特性,而是使用了ASMM.因为在X86 架构下的linux 平台中,配置hugepage时,也是需要关闭AMM,使用ASMM特性. AMM分配内存的 ...

  6. leetcode 258. 各位相加 (python)

    给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数. 示例: 输入: 38输出: 2 解释: 各位相加的过程为:3 + 8 = 11, 1 + 1 = 2. 由于 2 是一位数,所以 ...

  7. python-笔记(六)模块操作以及常用模块简介

    模块.包 什么是模块? 模块实质上就是一个python文件,它是用来组织代码的,意思是说把python代码写到里面,文件名就是模块的名称,例如:model.py model就是模块名称. 什么是包? ...

  8. Oracle数据备份与恢复

    为了保证数据库的高可用性,Oracle数据库提供了备份和恢复机制,以便在数据库发生故障时完成对数据库的恢复操作,避免损失重要的数据资源 丢失数据分为:物理丢失:操作系统的数据库主键(数据文件.控机文件 ...

  9. Spring命名空间引入方法

    spring 整合了各种工具,并且spring提供了对各种工具的xml scheme 的配置方式,简化了开发. 但是对于各种工具的xml命名空间的引入,我一直很郁闷,不知道应该怎样引入,今天经过摸索发 ...

  10. Node.js实战8:可用于压缩、加密的zlib。

    zlib是nodejs内置的模块,有deflate.inflate函数,使用的是gzip算法,可用于压缩和解压,也可用于数据加密.解密. 如下示例: var zlib = require(" ...