正定矩阵的相关性质,凸锥

xiaoxiao2021-03-01  23

一般来说(实数范围内),正定矩阵必是对称矩阵,但对称矩阵不一定就是正定矩阵(主子式也必须全为正)。 一个 n × n n\times n n×n 的实对阵矩阵 S n S^n Sn 为半正定矩阵,当且仅当其对所有的非零向量 z z z,都满足: z T S n z ≥ 0 z^TS^nz\geq 0 zTSnz0

实对称矩阵 S n S^n Sn 的维数为 n ( n + 1 ) / 2 n(n+1)/2 n(n+1)/2, 因为它有 n ( n + 1 ) / 2 n(n+1)/2 n(n+1)/2 个变量(就是矩阵上三角中的元素)( t r ( z T S n z ) = z T S n z tr(z^TS^nz)=z^TS^nz tr(zTSnz)=zTSnz

S + n S^n_+ S+n 表示半正定矩阵, S + + n S^n_{++} S++n 表示正定矩阵。凸优化书中的表示: S + n = { X ∈ S n ∣ X ⪰ 0 } S + + n = { X ∈ S n ∣ X ≻ 0 } S^n_+=\{X\in S^n\mid X\succeq 0\}\\ S^n_{++}=\{X\in S^n\mid X\succ 0\} S+n={XSnX0}S++n={XSnX0}

对于任意实数矩阵 X X X X T X X^TX XTX 为半正定矩阵;半正定矩阵对角线上的元素都大于等于零。

1. 半正定矩阵都可以三角分解( Cholesky 分解)

S + n = L L T S^n_+=LL^T S+n=LLT 其中 L L L 是一个下三角矩阵,并且对角线上全是正实数

2. 任意矩阵与其转置的乘积 A A T AA^T AAT 总是半正定矩阵

x T A A T x = ( A T x ) T A T x = A T x ⋅ A T x ≥ 0 x^TAA^Tx=(A^Tx)^TA^Tx=A^Tx\cdot A^Tx\geq 0 xTAATx=(ATx)TATx=ATxATx0 一个一维向量自己的内积总是大于等于零的

3. 特征根全部非负

这个证明要用到对角矩阵可对角化的性质,对于任意一个对角矩阵 A A A,一定存在一个正交矩阵 Q Q Q,以及对角线矩阵 ∧ \land ,使得

A = Q T ∧ Q A=Q^T\land Q A=QTQ

x T A x = x T Q T ∧ Q x = ( x Q ) T ∧ ( x Q ) \begin{aligned} x^T Ax&=x^TQ^T\land Qx\\ &=(xQ)^T\land (xQ) \end{aligned} xTAx=xTQTQx=(xQ)T(xQ)

y = x Q y=xQ y=xQ,显然 y y y 是一个列向量,则(令 ∧ \land 中的对角线为特征根):

x T A x = y T ∧ y = ∑ λ i y i 2 \begin{aligned} x^T Ax&=y^T\land y\\ &=\sum\lambda_iy_i^2 \end{aligned} xTAx=yTy=λiyi2

就能证明了。

4. 主子式非零

5. 半正定矩阵是一个凸锥

半正定矩阵实际是给出了几个约束条件的函数 例如 X = [ x y y z ] ∈ S + n X=\left[\begin{array}{cc} x & y\\ y& z \end{array}\right]\in S^n_+ X=[xyyz]S+n 等价于下面三个约束条件: x ≥ 0 , z ≥ 0 , x z − y 2 ≥ 0 x\geq 0, z\geq 0, xz-y^2\geq 0 x0,z0,xzy20

因为对任意两点 A A A, B B B ∈ S + n \in S^n_+ S+n 以及任意 θ 1 , θ 2 > 0 \theta_1, \theta_2>0 θ1,θ2>0,都有 z T ( θ 1 A + θ 2 B ) z = θ 1 z T A z + θ 2 z T B z ≥ 0 z^T(\theta_1 A+\theta_2 B)z=\theta_1z^TAz+\theta_2z^TBz\geq 0 zT(θ1A+θ2B)z=θ1zTAz+θ2zTBz0

所以 θ 1 A + θ 2 B ∈ S + n \theta_1 A+\theta_2 B\in S^n_+ θ1A+θ2BS+n

可以理解为对任意两个点 A , B A, B A,B θ 1 A + θ 2 B \theta_1 A+\theta_2 B θ1A+θ2B 仍然满足那些约束条件(可以举两个点 ( x 1 , y 1 , z 1 ) (x_1, y_1, z_1) (x1,y1,z1), ( x 2 , y 2 , z 2 ) (x_2, y_2, z_2) (x2,y2,z2) 推出来)。

上面三个约束条件生成的图像如下:

function DefiniteCone ezmesh(@(x,z)sqrt(x.*z),[0,1],[0,1]) hold on ezmesh(@(x,z)-sqrt(x.*z),[0,1],[0,1]) xlabel('x'); ylabel('z'); zlabel('y') title('y^2=xz'); view([53,26]); end

从图中可见该正定矩阵是一个凸锥。(画图时用除法时生成的图像很怪,因此只能用平方根了)

转载请注明原文地址: https://www.6miu.com/read-3450293.html

最新回复(0)