如果我有两个矩阵,一个是大小MXN,另一个是大小为NXP,假设这些矩阵的乘积等于零,并且给定矩阵NXP的值,我怎样才能找到该矩阵的值矩阵MXN?
我知道其中一个可能的解决方案是零矩阵,但实际上我正在寻找一个非零矩阵。
由于 Abhishek S
答案 0 :(得分:2)
这称为Null Space。在您的情况下,订单是相反的。通过转置矩阵可以很容易地解决这个问题:
A * B = 0
B^T * A^T = 0^T
A^T = M(Null(B^T))
A = M(Null(B^T))^T
其中M(V)
是V
向量的任意线性组合的矩阵。
示例:强>
[ 4 4 8 ]
B = [ 2 7 2 ]
[ 5 3 5 ]
[ 7 5 4 ]
{ [ 87 ] }
Null(B^T) = { [ -40 ] }
{ [-216 ] }
{ [ 116 ] }
A = [ 87 -40 -216 116 ]
[ 0 0 0 0 ]
A * B = [ 0 0 0 ]
[ 0 0 0 ]
答案 1 :(得分:0)
因此,您正在寻找A B
为0
。诀窍在于,如果它为0,则对于任何可逆A C-1 D-1 E-1 E D C B
矩阵0
,N x N
也必须为C, D, E
。 (甚至更多。)
现在取B
并应用基本行操作将其转换为http://en.wikipedia.org/wiki/Row_echelon_form(这很容易做到。)这些操作中的每一个都可以通过乘以一个可逆矩阵来表示,该矩阵的反函数很容易计算(这只是反向行操作。)
一旦我们在行梯队形式中B
,所有可能的矩阵A
都很容易找到 - 每列都有0,或者每次有一个以上的非零条目导致另一个独立的向量会给你一个0.现在选择你的A
然后乘以所有的逆行操作(确保以正确的顺序执行!)来得出你的答案。