Pure Mathematics
Vol. 14  No. 04 ( 2024 ), Article ID: 84634 , 5 pages
10.12677/pm.2024.144110

Sherman-Morrison公式及其应用

梁国宏,冯军庆,宋修朝

空军工程大学基础部,陕西 西安

收稿日期:2024年2月2日;录用日期:2024年3月1日;发布日期:2024年4月16日

摘要

Sherman-Morrison公式是求矩阵之和的逆矩阵的一种特殊方法,在最优化BFGS算法和循环三对角线性方程组的求解等方面有着重要的应用。

关键词

Sherman-Morrison公式逆矩阵,BFGS算法,循环三对角线性方程组的求解

Sherman-Morrison Formula and Its Application

Guohong Liang, Junqing Feng, Xiuchao Song

Fundamentals Department, Air Force Engineering University, Xi’an Shaanxi

Received: Feb. 2nd, 2024; accepted: Mar. 1st, 2024; published: Apr. 16th, 2024

ABSTRACT

The Sherman Morrison formula is a special method for finding the inverse matrix of the sum of matrices. It has important applications in optimizing the BFGS algorithm and solving cyclic tridiagonal linear systems of equations.

Keywords:Sherman-Morrison Formula Inverse Matrix, BFGS Algorithm, The Solution of Recurrent Tridiagonal Linear Equation System

Copyright © 2024 by author(s) and Hans Publishers Inc.

This work is licensed under the Creative Commons Attribution International License (CC BY 4.0).

http://creativecommons.org/licenses/by/4.0/

1. 引言

Sherman-Morrison公式是一种用于求解线性方程组描述的方法,以Jack Sherman和Winifred J. Morrison命名的,可用于计算机科学领域,特别是通信、网络和信号处理中。

由于矩阵之和的逆不一定可逆,即使可逆,也没有统一的公式,Sherman-Morrison公式 [1] [2] 在线性代数中用来求解逆矩阵的一种特殊方法,可逆矩阵与某个列乘行的矩阵之和是一定可逆的,并用公式直接得到逆矩阵。在最优化BFGS算法和循环三对角线性方程组的求解等方面有着重要的应用。

可以用于增量计算矩阵的逆,从而节省存储空间和计算时间。比如,当需要计算一个大型矩阵的逆时,对矩阵逐步添加向量,从而逐步计算出矩阵的逆。

A R n × n 为可逆方阵, u , v R n 为列向量, 1 + v T A 1 u 0 ,需要求解线性方程 ( A + u v T ) x = b ,考虑求解两个方程: A y = b , A z = u ,有 y = A 1 b , z = A 1 u ,得

x + z v T x = y

注意到 v T x 是一个数,令 α = v T x ,有 x + z α = y ,两端左乘 v T ,即 v T x + v T z α = v T y ,故 α + v T z α = v T y ,得

α = v T y 1 + v T z = v T A 1 b 1 + v T A 1 u

x = y z α = A 1 b A 1 u v T A 1 b 1 + v T A 1 u

实际上,Sherman-Morrison公式在解线性方程有着重要的应用,即通过增加列向量来求解线性方程。

A R n × n 为可逆方阵,B是一个n维列向量,考虑线性方程

A X = B

解为

X = A 1 B

B = ( B , u ) ,即在B的右侧增加一个n维列向量u,则线性方程变为

A X = B

根据伴随矩阵,解为

X = A 1 B = A 1 ( B , u ) = ( A + u v T ) 1 ( B + u α )

其中 α = v T A 1 u 1 + v T A 1 u 。将解 X 表示为

X = A 1 B A 1 u v T A 1 1 + v T A 1 u A 1 B

于是

X = ( A 1 A 1 u v T A 1 1 + v T A 1 u ) B

可见,通过增加列向量u来解线性方程的解法。

2. Sherman-Morrison公式

A R n × n 为可逆方阵, u , v R n 为列向量,则 A + u v T 可逆充要条件为 1 + v T A 1 u 0 ,且当 A + u v T 可逆时,有 [3] [4]

( A + u v T ) 1 = A 1 A 1 u v T A 1 1 + v T A 1 u

证明(充分性)当时,

( A + u v T ) ( A 1 A 1 u v T A 1 1 + v T A 1 u ) = A A 1 + u v T A 1 A A 1 u v T A 1 + u v T A 1 u v T A 1 1 + v T A 1 u = E + u v T A 1 u v T A 1 + u v T A 1 u v T A 1 1 + v T A 1 u = E + u v T A 1 u ( 1 + v T A 1 u ) v T A 1 1 + v T A 1 u = E + u v T A 1 u v T A 1 = E

因此,当 1 + v T A 1 u 0 时,有

( A + u v T ) 1 = A 1 A 1 u v T A 1 1 + v T A 1 u

(必要性)当 u = 0 时,显然有 1 + v T A 1 u = 1 0 。当 u 0 时,用反证法证明该命题成立。假设 A + u v T 可逆时,但 1 + v T A 1 u = 0 时,有

( A + u v T ) A 1 u = u + u ( v T A 1 u ) = u ( 1 + v T A 1 u ) = 0

因为 A + u v T 可逆,故 A 1 u = 0 ,又因为 A 1 可逆,故 u = 0 ,此与假设 u 0 矛盾。因此,当 A + u v T 可逆时,但 1 + v T A 1 u 0 时,有 1 + v T A 1 u 0

3. Sherman-Morrison公式的应用

1) 当 A = E n 时的Sherman-Morrison公式

在Sherman-Morrison公式中,令 A = E n ,则有 E + u v T 可逆充要条件为 1 + v T u 0 ,且当 E + u v T 可逆时,有

( E + u v T ) 1 = E u v T 1 + v T u

再令 v = u ,则 1 + u T u > 0 ,因此, E + u T u 可逆,且

( E + u u T ) 1 = E u u T 1 + u T u

2) Sherman-Morrison公式在BFGS算法中的应用

Sherman-Morrison公式在BFGS算法中的应用,可用来求解BFGS算法中近似Hessian矩阵的逆。

在BFGS算法中,得到递推公式

B k + 1 = B k + q k q k T q k T p k B k p k p k T B k p k T B k p k

其中, p k = x ( k + 1 ) x ( k ) q k = f ( x ( k + 1 ) ) f ( x ( k ) )

H = B k + q k q k T q k T p k ,注意到 B k p k p k T B k p k T B k p k = 1 p k T B k p k ( B k p k ) ( B k p k ) T ,其中 p k T B k p k 为一个数,且 B k p k R n ,因此利用Sherman-Morrison公式,有

B k + 1 1 = ( H 1 p k T B k p k ( B k p k ) ( B k p k ) T ) 1 = H 1 H 1 ( 1 p k T B k p k ( B k p k ) ( B k p k ) T ) H 1 1 + ( 1 p k T B k p k ) ( B k p k ) T H 1 ( B k p k ) = H 1 + H 1 B k p k p k T B k p k T B k p k p k T B k H 1 B k p k H 1

对于 H 1 ,再次利用Sherman-Morrison公式,有

H 1 = ( B k + q k q k T q k T p k ) 1 = B k 1 B k 1 q k q k T q k T p k B k 1 1 + 1 q k T p k q k T B k 1 q k = B k 1 B k 1 q k q k T q k T p k B k 1 1 + 1 q k T p k q k T B k 1 q k = B k 1 B k 1 q k q k T B k 1 q k T p k + q k T B k 1 q k

H 1 的表达式代回 B k + 1 1 中,得到

B k + 1 1 = ( I p k q k T p k T q k ) B k 1 ( I p k q k T p k T q k ) + p k p k T p k T q k

3) Sherman-Morrison公式在循环三对角线性方程组的求解中的应用

下面介绍循环三对角线性方程组的求解。所谓循环三对角线性方程组,指的是系数矩阵为如下形式:

A = [ b 1 c 1 0 0 a 1 a 2 b 2 c 2 0 0 0 0 a n 2 b n 2 c n 2 0 0 a n 1 b n 1 c n 1 c n 0 0 a n b n ]

循环三对角线性方程组可写成 A x = d ,其中 d = ( d 1 , d 2 , , d n ) T

u = ( λ , 0 , 0 , , c n ) T v = ( 1 , 0 , 0 , , a 1 λ ) T ,且 A = A + u v T ,其中

A = [ b 1 λ c 1 0 0 0 a 2 b 2 c 2 0 0 0 0 a n 2 b n 2 c n 2 0 0 a n 1 b n 1 c n 1 c n 0 0 a n b n a 1 c n λ ]

A 为三对角矩阵。根据以上的理论知识,只需求解以下两个方程

A y = d , A z = u

这样就能根据 y , z 求出x。

总之,Sherman-Morrison公式给出了求矩阵之和的逆矩阵的一种特殊方法,在矩阵论中有着重要的应用,除此之外,在最优化BFGS算法和循环三对角线性方程组的求解等方面有着重要的应用。

文章引用

梁国宏,冯军庆,宋修朝. Sherman-Morrison公式及其应用
Sherman-Morrison Formula and Its Application[J]. 理论数学, 2024, 14(04): 53-57. https://doi.org/10.12677/pm.2024.144110

参考文献

  1. 1. 陈宝林. 最优化理论与算法[M]. 北京: 清华大学出版社, 2005.

  2. 2. 王景恒. 最优化理论与方法[M]. 北京: 北京理工大学出版社, 2019.

  3. 3. 袁亚湘, 孙文瑜. 最优化理论与方法[M]. 北京: 科学出版社, 1997.

  4. 4. Auslender, A. and Teboulle, M. (2003) Asymptotic Cones and Functions in Optimization and Variational Inequalities. Springer, New York.

期刊菜单