数学中的线性 方程 组是由一组或多组涉及相同未知数的线性方程构成的集合。可以表示为 。其中 为线性方程组的系数。线性方程组的矩阵表示为 。
线性方程组的解通常分为无解、有唯一解和有无穷多解三种情况,可以根据其系数矩阵化简得到的 阶梯形矩阵 判断。数学上,可以用 克莱姆法则 或矩阵消元法求解 ,无解的 方程 如果是超定 方程组 ,可以通过 最小二乘法 求近似解。对于阶数较大的线性方程组,可以通过迭代法求解 。在几何上, 方程 组的解是方程所表示的点、线、面的 相交 部分,以 向量 表示,就是向量 可以落在 的列向量张成的空间中 。
线性方程组构成了线性代数的基础,这门学科在现代数学的多个领域都有广泛应用。求解这些方程的计算方法在数值线性代数中占据重要地位,对工程、物理、 化学 、 计算机科学 和 经济学 等领域有着显著影响 。非线性 方程组 可以通过线性化近似为 线性系统 ,这是一种在构建 数学模型 或进行 计算机模拟 时简化问题的有效方法 。有程序包LAPACK、BLAS、 MATLAB 等可以帮助计算高阶的线性方程组 。
定义
一次方程 是包含变量 的形如 的方程,其中b与系数 是 实数 或 复数 ,通常是已知数, 下标 n可以是任意正整数。 线性 方程 组 是由一个或几个包含相同变量 的线性方程组成的 。表示如下。
当 等于零时,将该 方程组 称为齐次线性方程组;当 不全为零时,将该方程组称为非齐次线性方程组或一般线性方程组 。
一个线性方程组包含的主要信息可以表示如下。设
, , ,
则线性 方程 组可表示为矩阵形式 ,称这样的方程为矩阵方程 。 称为系数矩阵。矩阵的维数说明它包含的行数和列数。若m、n是正整数, 矩阵是一个有m行n列的数的矩形阵列。
包含系数和 的矩阵称为线性方程组的 增广矩阵 ,表示为
。
线性方程组的解
线性 方程 组的解是一组数 ,用这组数分别代替 时,所有方程的两边相等。 方程组 所有可能的解的集合称为线性方程组的解集,若两个线性方程组有相同的解集,则这两个线性方程组称为等价的 。
线性方程组的解有如下三种情况:无解、有唯一解、有无穷多解。若方程组有解,则称这个方程组是相容的,否则为不相容 。
根据方程组的系数矩阵,可以简单判断线性方程组解的情况,这种方法称为 高斯 (Gauss)—约当(Jordan)算法,求解流程如下图所示。假设阶梯型 方程 组有n个未知量,它的 增广矩阵 有r个非零行, 有n+1列,若阶梯型方程组中出现“ (b是非零数)”这种方程,则方程组无解。若不出现“ (b是非零数)”这种 方程 ,此时 ,把 经过初等变换化成简化行 阶梯形矩阵 , 也有r个非零行,从而有r个 主元 。当 时, 方程组 有唯一解。当 时,方程组有无穷解。非阶梯形方程组可以经过初等变换转化为阶梯形 。
根据线性 方程 组未知量的个数n与方程的个数m的关系,可将方程组分类为:适定方程组 ( ):存在着唯一的一组解; 欠定方程组 ( ):方程有无穷解;超定 方程 组 ( ):方程无解,但可以求出其近似解 。
求解方法
克莱姆法则
一个包含n个未知数,n个方程的线性方程组
其系数 行列式 记为 ,即
克莱姆 (Cramer)法则:如果线性方程组的系数矩阵的 行列式 ,则线性方程组有解,并且解是唯一的。此时 。其中 是把 行列式 中第j列元素依此用 方程组 右端的 常数 代替后得到的n阶行列式,即 。
克莱姆法则 包含三个结论: 方程组 有解,解是唯一的,解由上述方法给出 。用克莱姆法则求解线性方程组需要方程的个数等于未知量的个数、系数矩阵的 行列式 不等于零。理论上需要计算 个n阶 行列式 ,通常工作量较大,所以该法则很少用于具体求解 。
矩阵消元法
线性方程组的初等变换
以上三种变换称为线性方程组的初等变换。经过一系列初等变换变成的简化阶梯形方程组与原线性方程组同解 。线性方程组的初等变换对应系数矩阵的变换初等行变换。即 方程组 , 经过初等变换化为 ,则 与 同解 。
消元法
将线性方程组经过初等变换,消元成简化阶梯型方程组,可以求得线性方程组的解。对于齐次线性方程组 ,常将 经过初等变换化为易于求解的 ,然后解方程组 。对于非齐次线性方程组 ,可以将 增广矩阵 进行初等行变化,然后求解 。
以如下 方程 为例,演示线性方程组的具体求解 。
①经过一系列初等变换,上述 方程组 可以化简为行 阶梯形矩阵 。
②写出以 为系数矩阵的线性方程组并移项得:
取两组数 解得一个基础解系:
,
松弛求解
当 方程 个数大于未知量个数时,方程称为超定 方程组 ,无解,但可以求解近似解。在把 方程 数据进行拟合时,常遇到此类问题。设 是 矩阵, 是给定的m维 向量 ,寻求一个n维向量 使得 。更精确地讲,选择 以极小化残量 范数 的平方, 。这就是最小二乘问题,可以通过QR分解法(QR 矩阵分解 )求解 。
数值分析方法
在实际应用中,许多大型线性 方程组 来自差分化 偏微分方程 ,消元法所需的工作量和储存量都是不够的,因此人们开发了迭代法来简化运算。对称线性 方程 的求解以简单迭代和共轭 梯度 算法为代表。还有广义最小残量法(Generalized minimal residual method,GMRES) 、双共轭梯度稳定法 (Biconjugate gradient stabilized method,BiCGSTAB)等方法用于求解 非对称 线性方程组 。
对线性 方程 直接进行求解并不十分适合,一个好的近似解需要很多次迭代。通常可以用预优方程组 来代替原来的方程组,并把迭代法用于新的 方程 组。不需要构造矩阵 ,只要能计算 和给定 向量 的乘积 。
称为预优矩阵,可以使用 的 对角矩阵 和 的上(或下) 三角矩阵 等易于求解的矩阵。或通过不完全Cholesky分解等方法构造预优矩阵 。
简单迭代
给定初始猜测 ,计算残量 ,解 求出 。对 置 ,计算 ,解 求出 。
按照预优矩阵 的不同,当 等于 的 对角线 矩阵,称它为Gauss-Seidel迭代法;当 ,式中 是 的对角线矩阵, 是 的严格下三角矩阵, 是为加速收敛选择的参数,此时称为逐次超松弛(Successive Over Relaxation,SOR)方法 。
共轭梯度算法
共轭梯度(Conjugate Gradient,CG)算法通常用于求解对称正定问题。给定初始猜测 ,计算 ,并置 。对于 计算 。置 ,这里 。计算 。置 ,这里 。
共轭梯度法 在n步内总能求出精确解。因此这种算法实际上被认为是解线性 方程 组的直接方法。在此基础上,对具有对称正定预优矩阵的对称正定问题,可以用预优共轭 梯度 (Preconditional Conjugate Gradiem,PCG)算法求解 。
几何解释
在解析几何的意义上,一个 方程 可以表示为一个直线、平面或一个 超平面 。每个方程的解都在其对应的直线、平面或超平面上,一个方程组的解就在各个 方程 组的解 相交 的交点、平面或超平面的交线上 。
以 二元一次方程组 为例,线性方程组三种解的情况列于下图 。
对于超定方程组,以二元一次方程组为例,用几何意义表示其近似解,为最接近各个交点、误差最小的一点 。
线性方程组表示形式的几何意义
从 向量 角度,如果对线性方程组引入列向量,那么原线性方程组可以改写为 向量 方程 组 。向量方程求解的意义就是求出向量 被向量组 线性表示的系数 ,向量 方程 是否有解就是向量 能否被向量组 所线性表示,线性表示系数唯一就是方程组有唯一解,不唯一则表示 方程 组有无穷多解 。
由矩阵线性变换的意义出发,解线性 方程 组就是寻找哪些 向量 可以被一个已知的矩阵 变换为一个已知的 向量 。 方程 组有唯一解就是只有一个向量被变换为向量 ,有无穷多解就是可以有一个一根直线上的向量族或一个平面上的向量族被变换成向量 。
对于超定方程组,向量 不在 的列向量空间 中,可以在列空间中找到替代向量求解,这个替代向量要求在误差要求的范围内可以接受。例如,可以选择向量 向列空间投影得到的向量 作为替代向量 。
消元法的几何解释
以二元 方程 组为例。对于 方程 组
从列 向量 的角度,重写 方程 组为 向量 方程 :
,定义 向量 , , 。将 向量 分别以 的 倍数 放大或缩小后,两 向量 之和与 重合,此时也就得到了 方程 的解 。
具体地,对于 方程 两边,如果同时点乘向量 的 正交 向量 ,就可以消去 项,也就消去了未知元 。即得到 , 。
同理,如果两边同时点乘 向量 的正交向量 ,可以消去未知元 ,可得 , 。
应用
线性方程组构成了线性代数的基础,在工程、物理学、 计算机科学 、 经济学 、 化学 和互联网等领域有着广泛的应用。例如,在经济学中,可以用于求解列昂惕夫“投入-产出”模型;在化学领域中,可以对 化学方程式 进行配平;在互联网领域,可以用于对 网络流 进行计算。线性差分方程可以帮助研究随时间变化的 动力系统 ,广泛应用于 生态学 、 工程技术 等领域 ,如对大气湍流进行模拟计算 。非线性 方程 组可以通过线性化近似为 线性系统 ,这是一种在构建 数学模型 或进行 计算机模拟 时简化问题的有效方法 。