如何计算项目_ _ _小号DP _( C⊙ X) . / CprojSDP(C⊙X)./C没有数字问题?

计算科学 浮点 半定规划 投影
2021-12-18 10:53:08

我有一个矩阵,X,它是对称的。我计划CXDX为半定锥。C是一个 Gramian 矩阵,其中一些元素接近于零,当然也是半定的,其中一行和一列等于零。D是一个矩阵,除了一列和一行等于零(与D)。两者都是对称的。投影后,我想获得X:=proj(CX)./C, (按元素除法)但有些值变得非常大,可能是因为矩阵中的相应元素C.

如何正确获取X?

1个回答

你得到非常大的数字绝非偶然。考虑

C=(21ϵ121ϵ12)
X=(111111111).
注意X有特征值{1,±2}C内有特征值2ϵ{22,2,2+2}; 这些并不接近单数。

但是,您可以计算出 projSDP(C.X)非常接近(进入范围内103+ϵ左右)矩阵

(0.1110.4740.1240.4742.1310.9690.1240.9692.007),
其中有一些非常非零的条目Cϵ的。