首页 > 其他分享 >Ax=b 可解性与解的结构

Ax=b 可解性与解的结构

时间:2025-01-23 22:20:38浏览次数:1  
标签:begin right end symbfit 解性 bmatrix Ax 结构

\(\symbfit{A}\symbfit{x}=\symbfit{b}\) 可解性与解的结构

​ 在上一节说明了利用消元法求解\(\symbfit{A}\symbfit{x}=\symbfit{0}\),这一节在此基础上分析\(\symbfit{A}\symbfit{x}=\symbfit{b}\symbfit{A}\symbfit{x}=\symbfit{b}\),以及可解性与解的结构。

​ 仍使用上一节的例子,假设\(\symbfit{A}=\begin{bmatrix}1&2&2&2\\2&4&6&8\\3&6&8&10\end{bmatrix}\)。

​ 那么增广矩阵\(\begin{bmatrix}\symbfit{A}&\symbfit{b}\end{bmatrix}=\begin{bmatrix}1&2&2&2&b_1\\2&4&6&8&b_2\\3&6&8&10&b_3\end{bmatrix}\)

​ 利用消元法,最终可以变换为:

\[\begin{bmatrix} 1& 2& 2& 2& b_1\\ 0& 0& 2& 4& b_2-2b_1\\ 0& 0& 0& 0& b_3-b_2-b_1\\ \end{bmatrix} \]

​ 这样便得到了方程组有解的一个必要条件:\(b_3-b_2-b_1=0\)。(根据线性方程组和矩阵的联系不难得出)

​ 如果假设\(\symbfit{b}=\begin{bmatrix}1 \\5 \\6\end{bmatrix}\),那么上述矩阵就变成:

\[\begin{bmatrix} 1& 2& 2& 2& 1\\ 0& 0& 2& 4& 3\\ 0& 0& 0& 0& 0\\ \end{bmatrix} \]

​ 下面便对可解性与解的结构进行说明:

可解性Solvability):

  1. \(\symbfit{A}\symbfit{x}=\symbfit{b}\)有解当且仅当\(\symbfit{b}\in\symbf{C}\left(\symbfit{A}\right)\)成立。(即\(\symbfit{b}\)必须是\(\symbfit{A}\)各列的线性组合);
  2. 如果\(\symbfit{A}\)各行的线性组合得到零行(一行的元素全是0),那么\(\symbfit{b}\)中元素的同样组合必然也是0。

​ 这两条是等价的,即满足其中任意一条,则方程组有解。

​ 下一个是求\(\symbfit{A}\symbfit{x}=\symbfit{b}\)的所有解(即解的结构):

  1. 只求一个特定的解,即特解\(\symbfit{x}_p\):将所有自由变量设为0,然后解出\(\symbfit{A}\symbfit{x}=\symbfit{b}\)中的主变量;

​ 在上例中,\(x_2=0\),\(x_4=0\),解得\(x_1=-2\),\(x_3=3/2\),\(\symbfit{x}_p=\begin{bmatrix}-2 \\0 \\3/2\\ 0\end{bmatrix}\)。

  1. 加上零空间中的任意\(\symbfit{x}_n\);
  2. \(\symbfit{x} = \symbfit{x}_p + \symbfit{x}_n\)。

​ 其正确性可以用矩阵乘法的(右)分配率简单证明:因为已知

\[\symbfit{A}\symbfit{x}_p=\symbfit{b} \\ \symbfit{A}\symbfit{x}_n=\symbfit{0} \\ \]

​ 那么有:

\[\symbfit{A}\left(\symbfit{x}_p + \symbfit{x}_n\right)=\symbfit{b} \]

​ 即,对于方程组某解,其与零空间内任意向量之和仍为解。而且第一步中求解出的特解\(\symbfit{x}_p\)并不在矩阵\(\symbfit{A}\)的零空间中(\(\symbfit{b}\neq\symbfit{0}\)),因此可以保证这是所有解。其次,也可以证明任取的特解(前提是\(\symbfit{b}\neq\symbfit{0}\)且特解不在\(\symbfit{A}\)的零空间中)与零空间向量的和包含了其他的特解:

​ 假设有特解\(\symbfit{x}_1\)与\(\symbfit{x}_2\),那么有\(\symbfit{A}\symbfit{x}_1=\symbfit{b}\)和\(\symbfit{A}\symbfit{x}_2=\symbfit{b}\),即\(\symbfit{A}\left(\symbfit{x}_1 - \symbfit{x}_2\right)=\symbfit{0}\),那么就说明向量\(\left(\symbfit{x}_1 - \symbfit{x}_2\right)\)在\(\symbfit{A}\)的零空间中,那么\(\symbfit{x}_2\)就可以由\(\symbfit{x}_1\)与\(\left(\symbfit{x}_1 - \symbfit{x}_2\right)\)的线性组合得到。

​ 在上例中,由于上一节已经解出\(x_n=c_1\begin{bmatrix}-2\\1\\0\\0\end{bmatrix}+c_2\begin{bmatrix}2\\0\\-2\\1\end{bmatrix}\),那么\(x = \symbfit{x_p}=\begin{bmatrix}-2 \\0 \\3/2\\ 0\end{bmatrix} + x_n=c_1\begin{bmatrix}-2\\1\\0\\0\end{bmatrix}+c_2\begin{bmatrix}2\\0\\-2\\1\end{bmatrix}\)。

​ 这个在几何上可以理解为零空间(直线、平面等)沿着特解的方向与大小做了平移。


​ 下面将\(\symbfit{A}\symbfit{x}=\symbfit{b}\)的解与\(r\left(\symbfit{A}\right)\)联系起来:

​ 对于秩为\(r\)的\(m \times n\)大小的矩阵\(\symbfit{A}\)有\(r\leq m\)且\(r \leq n\)。首先考虑满秩full rank)即\(r\)取最大的情况,又分为列满秩、行满秩和行列皆满秩三种情况,最后考虑不满秩的情况。

  1. 列满秩(\(r = n < m\)):

    所有列都有主元,没有自由变量,\(N\left(\symbfit{A}\right) = \symbfit{0}\)(因为没有自由变量赋值,\(\symbfit{R}\symbfit{x}=\symbfit{0}\)只有零向量符合)。

    此时\(\symbfit{A}\)消元后\(\symbfit{R}=\begin{bmatrix}\symbfit{I}\\\symbfit{0}\end{bmatrix}\)。

    此时\(\symbfit{A}\symbfit{x}=\symbfit{b}\)的解:\(\symbfit{x} = \symbfit{x}_p\),该线性方程组有唯一解或无解(有无解得看其是否满足可解性)。

  2. 行满秩(\(r = m < n\)):

    自由变量仍是\(n - r\)个。

    此时\(\symbfit{A}\)消元后\(\symbfit{R}=\begin{bmatrix}\symbfit{I}&\symbfit{F}\end{bmatrix}\)。

    此时无论\(\symbfit{b}\)取什么,\(\symbfit{A}\symbfit{x}=\symbfit{b}\)都有解,因为不存在零行的情况。此时\(\symbfit{A}\symbfit{x}=\symbfit{b}\)有无穷多解。

  3. 行列皆满秩(\(r = m = n\)):

    此时\(\symbfit{A}\)消元后\(\symbfit{R}=\symbfit{I}\)。

    结合行满秩和列满秩的结论,不难得出无论\(\symbfit{b}\)取什么,\(\symbfit{A}\symbfit{x}=\symbfit{b}\)都有解,且是唯一解。

  4. 不满秩(\(r < m\),\(r < n\)):

    此时\(\symbfit{A}\)消元后\(\symbfit{R}=\begin{bmatrix}\symbfit{I}&\symbfit{F}\\\symbfit{0}&\symbfit{0}\end{bmatrix}\)。

    此时\(\symbfit{A}\symbfit{x}=\symbfit{b}\)的解:无解(不满足可解性)或无穷多解(\(\symbfit{x} = \symbfit{x}_p + \symbfit{x}_n\))。

标签:begin,right,end,symbfit,解性,bmatrix,Ax,结构
From: https://www.cnblogs.com/zzzwwwqqq/p/18688708

相关文章

  • 选择结构:if 和 switch 的使用
      C语言是结构化的程序设计语言,这里的结构包括顺序结构、选择结构和循环结构,而这三种结构也恰恰组合成了我们日常生活中面临的所有事情。本文将介绍这三种结构中的选择结构,它主要通过if语句、switch语句来实现。关于if  在C语言中,if引导的分支语句用于根据条......
  • 数据结构3——栈的顺序与链式存储
    前言经过前面对线性表的顺序存储结构和链式存储结构的熟悉,那么面对接下来栈的这两种存储结构也应该得心应手了。其实接下来的栈、队列、树、图结构都是基于线性表的顺序、链式存储结构构建的。栈结构在网页跳转、游戏页面等场景中常用到,其“先进后出”“后进先出”的数据访......
  • 循环结构程序设计
    循环语句1、用while语句实现循环1.1while语句的一般形式如下1.2流程图如下1.3while循环举例2、用do-while语句实现循环2.1do-while语句的一般形式和执行过程2.2流程图如下3、for循坏3.1for语句的一般形式和执行过程3.2流程图如下3.3for循环语句举例4、循环语......
  • 如何系统优化MySQL【表结构优化、索引优化】(上篇)
    ......
  • JAVA与数据结构-线性表
    目录一.线性表的概念二.线性表的关系及分类三.数组与顺序表四.链表1.静态链表(链表的的数组底层实现)2.循环链表3.双向链表五.栈1.栈的概念2.栈的底层实现3.共享空间栈4.逆波兰表达式(后缀表达式)5.栈与递归 六.队列1.队列概念2.队列的底层实现3.循环队列七.链......
  • 测试工程师效率提升系列第二篇:测试用例管理自动化——从 Excel 到结构化数据
    在测试工程师的日常工作中,测试用例管理是一个重要环节。很多团队仍然依赖于Excel表格来管理测试用例,包含用例描述、步骤、预期结果等内容。然而,这种方式存在以下痛点:难以复用:Excel文件往往是静态的,无法直接与自动化脚本关联。易出错:人工更新用例容易遗漏或引入错误,特......
  • CloseMaxScript6 资源文件之 dll as mse
    概述将dll作为mse文件使用filein就能载入dll文件,简化交付、简化调用同时也是兼容3dmax2026新运行时的方案之一打包脚本fnbuild=( globalCmxs6Publisher,Cmxs6SettingsModel globalcmxs6_cli_mode=true localcurDir=getFilenamePath(getThisScriptFilename())......
  • 初步认识数据结构
    初步认识数据结构本文章可以帮助你初步的去认识数据结构1.什么是数据结构官方定义:在计算机科学中,数据结构是一种数据组织,管理和存储的格式。它是相互之间存在一种或者多种特定关系的数据元素集合。数据在计算机科学中,数据是所有能输入计算机并被计算机程序处理的符号的......
  • 如何利用openssl定义新的数据结构
        依赖openssl实现国密相关的结构时,虽然openssl中也有类似结构定义,但因为oid的差异、国密算法支持度不高等原因导致无法直接使用openssl接口,这时就需要自定义数据结构。实战:依据GMT0033定义时间戳响应//定义数据结构typedefstructSignerInfo_st{ASN1_INTEG......
  • Python · Jax | 在 python 3.8 上安装 jax,运行 offline RL 的 IQL
    致谢师兄的jax环境,完全按照师兄的conda_env.yml配置的(如何导出其他环境的conda_env.yml:Conda|如何(在新服务器上)复制一份旧服务器的conda环境,Linux服务器)目录01安装各种库02安装jax03安装dm_controlmetaworldd4rl04测试05各种库的参考版本首先,新建一个con......