Schur Complement(舒尔补)

Schur Complement(舒尔补)

SLAM基础——舒尔补介绍

1、定义

定义 M = [ A B C D ] M=\begin{bmatrix}A&B\\C&D\end{bmatrix} M=[ACBD],若 A A A可逆,则 Δ A = D − C A − 1 B \Delta A=D-CA^{-1}B ΔA=DCA1B称为 A A A关于 M M M的舒尔补;

D D D可逆,则 Δ D = A − B D − 1 C \Delta D=A-BD^{-1}C ΔD=ABD1C称为 D D D关于 M M M的舒尔补。

2、性质

M = [ A B C D ] = [ I 0 C A − 1 I ] [ A 0 0 Δ A ] [ I A − 1 B 0 I ] M − 1 = [ A B C D ] − 1 = [ I − A − 1 B 0 I ] [ A − 1 0 0 Δ A − 1 ] [ I 0 − C A − 1 I ] = [ A − 1 + A − 1 B Δ A − 1 C A − 1 − A − 1 B Δ A − 1 − Δ A − 1 C A − 1 Δ A − 1 ] M=\begin{bmatrix}A&B\\C&D\end{bmatrix}=\begin{bmatrix}I&0\\CA^{-1}&I\end{bmatrix}\begin{bmatrix}A&0\\0&\Delta A\end{bmatrix}\begin{bmatrix}I&A^{-1}B\\0&I\end{bmatrix}\\ M^{-1}=\begin{bmatrix}A&B\\C&D\end{bmatrix}^{-1}=\begin{bmatrix}I&-A^{-1}B\\0&I\end{bmatrix}\begin{bmatrix}A^{-1}&0\\0&\Delta A^{-1}\end{bmatrix}\begin{bmatrix}I&0\\-CA^{-1}&I\end{bmatrix}\\=\begin{bmatrix}A^{-1}+A^{-1}B\Delta A^{-1}CA^{-1}&-A^{-1}B\Delta A^{-1}\\-\Delta A^{-1}CA^{-1}&\Delta A^{-1}\end{bmatrix} M=[ACBD]=[ICA10I][A00ΔA][I0A1BI]M1=[ACBD]1=[I0A1BI][A100ΔA1][ICA10I]=[A1+A1BΔA1CA1ΔA1CA1A1BΔA1ΔA1]

M = [ A B C D ] = [ I B D − 1 0 I ] [ Δ D 0 0 D ] [ I 0 D − 1 C I ] M − 1 = [ A B C D ] − 1 = [ I 0 − D − 1 C I ] [ Δ D − 1 0 0 D − 1 ] [ I − B D − 1 0 I ] = [ Δ D − 1 − Δ D − 1 B D − 1 − D − 1 C Δ D − 1 D − 1 + D − 1 C Δ D − 1 B D − 1 ] M=\begin{bmatrix}A&B\\C&D\end{bmatrix}=\begin{bmatrix}I&BD^{-1}\\0&I\end{bmatrix}\begin{bmatrix}\Delta D&0\\0&D\end{bmatrix}\begin{bmatrix}I&0\\D^{-1}C&I\end{bmatrix}\\ M^{-1}=\begin{bmatrix}A&B\\C&D\end{bmatrix}^{-1}=\begin{bmatrix}I&0\\-D^{-1}C&I\end{bmatrix}\begin{bmatrix}\Delta D^{-1}&0\\0&D^{-1}\end{bmatrix}\begin{bmatrix}I&-BD^{-1}\\0&I\end{bmatrix}\\=\begin{bmatrix}\Delta D^{-1}&-\Delta D^{-1}BD^{-1}\\-D^{-1}C\Delta D^{-1}&D^{-1}+D^{-1}C\Delta D^{-1}BD^{-1}\end{bmatrix} M=[ACBD]=[I0BD1I][ΔD00D][ID1C0I]M1=[ACBD]1=[ID1C0I][ΔD100D1][I0BD1I]=[ΔD1D1CΔD1ΔD1BD1D1+D1CΔD1BD1]

Δ A = D − C A − 1 B \Delta A=D-CA^{-1}B ΔA=DCA1B, Δ D = A − B D − 1 C \Delta D=A-BD^{-1}C ΔD=ABD1C

3、应用

(1)解方程组

[ A B C D ] [ x 1 x 2 ] = [ b 1 b 2 ] \begin{bmatrix}A&B\\C&D\end{bmatrix}\begin{bmatrix}x_1\\x_2\end{bmatrix}=\begin{bmatrix}b_1\\b_2\end{bmatrix} [ACBD][x1x2]=[b1b2]

法1: D − 1 , Δ D − 1 D^{-1},\Delta D^{-1} D1,ΔD1存在

[ x 1 x 2 ] = [ Δ D − 1 ( b 1 − B D − 1 b 2 ) D − 1 ( b 2 − C x 1 ) ] \begin{bmatrix}x_1\\x_2\end{bmatrix}=\begin{bmatrix}\Delta D^{-1}(b_1-BD^{-1}b_2)\\D^{-1}(b_2-Cx_1)\end{bmatrix} [x1x2]=[ΔD1(b1BD1b2)D1(b2Cx1)]

法2: A − 1 , Δ A − 1 A^{-1},\Delta A^{-1} A1,ΔA1存在

[ x 1 x 2 ] = [ A − 1 ( b 1 − B x 2 ) Δ A − 1 ( b 2 − C A − 1 b 1 ) ] \begin{bmatrix}x_1\\x_2\end{bmatrix}=\begin{bmatrix}A^{-1}(b_1-Bx_2)\\\Delta A^{-1}(b_2-CA^{-1}b_1)\end{bmatrix} [x1x2]=[A1(b1Bx2)ΔA1(b2CA1b1)]

(2)联合概率分解

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Schur Complement是一种将一个大的矩阵分解为子矩阵的方法,并且可以将不等式化简为矩阵形式。 假设有一个不等式约束条件 $Ax \leq b$,其中 $A$ 是一个 $m \times n$ 的矩阵,$x$ 是一个 $n \times 1$ 的向量,$b$ 是一个 $m \times 1$ 的向量。 我们可以引入一个额外的变量 $s$,并将不等式约束条件转化为一个等式约束条件: $$ Ax + s = b \\ s \geq 0 $$ 其中,$s$ 是一个 $m \times 1$ 的向量,表示松弛变量。 然后,我们可以将 $A$ 分解为如下形式: $$ A = \begin{bmatrix} A_{11} & A_{12} \\ A_{21} & A_{22} \end{bmatrix} $$ 其中,$A_{11}$ 是一个 $k \times k$ 的矩阵,$A_{12}$ 是一个 $k \times (n-k)$ 的矩阵,$A_{21}$ 是一个 $(m-k) \times k$ 的矩阵,$A_{22}$ 是一个 $(m-k) \times (n-k)$ 的矩阵。 然后,我们可以将 $s$ 分解为如下形式: $$ s = \begin{bmatrix} s_1 \\ s_2 \end{bmatrix} $$ 其中,$s_1$ 是一个 $k \times 1$ 的向量,$s_2$ 是一个 $(m-k) \times 1$ 的向量。 现在,我们可以将原始的约束条件转化为如下形式: $$ \begin{bmatrix} A_{11} & A_{12} \\ A_{21} & A_{22} \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \end{bmatrix} + \begin{bmatrix} s_1 \\ s_2 \end{bmatrix} = b $$ 其中,$x_1$ 是一个 $k \times 1$ 的向量,$x_2$ 是一个 $(n-k) \times 1$ 的向量。 现在,我们可以利用 Schur Complement 将约束条件化简为如下形式: $$ A_{11} x_1 + A_{12} x_2 + s_1 = b_1 \\ A_{21} x_1 + A_{22} x_2 + s_2 = b_2 \\ s_1 \geq 0 $$ 其中,$b_1$ 是一个 $k \times 1$ 的向量,$b_2$ 是一个 $(m-k) \times 1$ 的向量。 现在,我们可以利用 $s_1 \geq 0$ 的条件,将约束条件进一步化简为如下形式: $$ \begin{bmatrix} A_{11} & A_{12} \\ A_{21} & A_{22} \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \end{bmatrix} + \begin{bmatrix} s_1 \\ 0 \end{bmatrix} = \begin{bmatrix} b_1 \\ b_2 \end{bmatrix} $$ 现在,我们可以将上述等式约束条件转化为一个矩阵形式: $$ \begin{bmatrix} A_{11} & A_{12} \\ A_{21} & A_{22} \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \end{bmatrix} - \begin{bmatrix} b_1 \\ b_2 \end{bmatrix} \begin{bmatrix} I & 0 \\ 0 & 0 \end{bmatrix} \begin{bmatrix} s_1 \\ 0 \end{bmatrix} \leq \begin{bmatrix} 0 \\ 0 \end{bmatrix} $$ 其中,$I$ 是一个 $k \times k$ 的单位矩阵。 这样,我们就将原始的不等式约束条件化简为了一个矩阵形式,可以用线性规划算法求解。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值