求助线性代数的问题【求助】

假设有三个列数相等但是行数不一定相等的矩阵A,B,C。A的行构成的子空间A1,A1的正交补空间为A2。同理有B1,B2;C1和C2。现在我需要这样的向量x(假设这样的x存... 假设有三个列数相等但是行数不一定相等的矩阵A,B,C。
A的行构成的子空间A1, A1的正交补空间为A2。同理有B1,B2;C1和C2。

现在我需要这样的向量x(假设这样的x存在),如果把x添加到A的末尾,可以让矩阵A的秩增加1。同样,如果放到B和C的末尾,也能增加B,C的秩。

我的问题是如何找出所有满足条件的x?或者直接找出一个满足条件但是里面含零元素最多(或者接近是最多的)也可以。

矩阵维数都很高,所以需要的是具体计算机的算法。也就是说,如果我给你矩阵A,B,C的值,根据你的答案就可以找出我需要的x。

最后祝进入了这个帖子的所有网友:春节愉快,身体健康!

谢谢~~

(我个人认为,这个应该不是简单的A2∩B2∩C2,因为这只是其中很小一部分满足条件的x而已。因为假设A的行向量分别为Ai,A2的基向量分别为A2j,那么x=(∑mi*Ai+∑nj*A2j)(其中mi和nj都是系数),只要nj不全部为零,都可以增加A的秩。而在A2∩B2∩C2这个集合中,是只有∑nj*A2j这部分,而忽略了∑mi*Ai的。)
再补充一下,我需要的是一个可实现的算法。计算的复杂度也不要太高,比如直接枚举出所有可能的向量一个一个检查这种,虽然原理上也可行,但是实际中计算复杂度肯定是不能承受的。
展开
wanjiebj2010
2011-01-27 · TA获得超过197个赞
知道答主
回答量:115
采纳率:100%
帮助的人:111万
展开全部
首先我不确定对不对啊,甚至我不确定有没有理解对你的问题。如果我理解对了,那么:
如果A、B、C的秩都等于各自的行数(设为条件1),那么将A、B、C从上到下拼起来形成一个大矩阵M=[A;B;C](Matlab表示矩阵的方法,应该明白吧?)如果M的秩等于它的行数(设为条件2),那么就再给M补充若干行0向量,使其成为方阵,记为M1=[A;B;C;0]。若果M已经是方阵了,就不必了。显然,M的行数不会大于列数(根据条件2)。下面开始对M1操作。将M1中C下面的0矩阵的第1行第1列变为1。如果M1的秩没有增加,则再将这个1还原为0(当然也可以不还原,随便),然后再把第1行第2列的0变为1,再看M1秩的是否变化……以此类推,直到将第1行的第n列变为1时,M1的秩增加了。这样就形成一个第n位是1,其它都是0的行向量,记为D1。然后对D1下面一行进行类似于生成D1的操作。只是注意在这一行操作时不需要从第1列开始,而是从第(n+1)列开始,所生成的行向量记为D2。以此类推,直到操作到大方阵的最后一行。上述的步骤需要操作的次数不会大于矩阵的列数,不知这样的复杂度你能否接受?上述操作结束后,会形成一个新的方阵Z=[A;B;C;D],其中D就是由原来的0矩阵变化而来的,D=[D1;D2;……Dm]。你所要求的X,就是Z的行向量的一部分线性组合(注意:不是所有线性组合!)。这一部分的线性组合必须满足:A、B、C、D,4个矩阵中至少有两个矩阵,其行向量的系数不全为0;或A、B、C的行向量系数全为0,而D的行向量系数不全为0。(编程时,你可以把它分为带有D的和不带有D的两类线性组合。)这样的每一个线性组合都是符合要求的X,而除此以外,不会有别的X。这样的X应该有无穷多个。程序上你可以通过生成随机数的方法找到任意多个。
如果条件1,2不都被满足,则需要删去一些行向量使1,2同时被满足,然后运行上面的算法。这等于是解一个新问题。这样的操作类似于消元,应该有成熟的算法,但我并不知道。我能想到的还是笨办法,逐一检查各个行向量,看删去它后秩有没有变化。对于为满足条件1而删去行,不必在去管它们。而为满足条件2而删去的行则比较麻烦。它们是不同的子空间的真子空间的和。它们的存在使问题的解集被扩大。解决的方法有,但是我觉得最容易的方法还是把解新问题得出的解回代到老问题中检验。不必检验所有的解。那些D矩阵中行向量不全是0的解是不用检验的,它们一定符合要求。此外,新问题不会漏掉老问题的解。
最后,需要说明,我是数学系的,对计算机的算法不在行,因此算法的细节上一定是粗糙的,大致的思路就是这样。线性代数对我来说也是比较久远的东西了,记得不是很清楚了,也许我已经犯了一些致命的错误。也许我写的这些所有的东西从一开始就是错的。
aris2002
2011-01-27 · TA获得超过2860个赞
知道小有建树答主
回答量:543
采纳率:0%
帮助的人:260万
展开全部
解系有两个,
一、令M=A1∪B1∪C1
N=A2∩B2∩C2≠空集
则解x=mM+nN
其中,行向量m=(m1,m2,……mk),k为矩阵M的列数,
行向量n=(n1,n2,……nl),l为矩阵N的列数
且m这任意行向量,n为任意非零行向量
比如,这里显然mM=∑mi*Mi其中Mi为M的行向量
注意,这里面不只是楼主的x=(∑mi*Ai+∑nj*A2j)
你将里面的Ai换成Bi或Ci也可行。
这就像过两直线方程L1,L2交点的直线系
k1*L1+k2*L2=0
m,n就像这里面的常数k1,k2一样是完全随机的。
如果你不想得出的方程与L1重合,只需要求k2≠0即可
同样,如果你想让解x能让三者秩均增加1,只要满足向量n≠0即可
我这里是按你用增加行数来增加秩的方式,如果用增加列的,按这种造解系。
若用计算机的话,这个应当亦算是很简化了。我写一下顺序
A-->A1,A2
B-->B1,B2
C-->C1,C2
M=A1∪B1∪C1
N=A2∩B2∩C2
r(M)=k,r(N)=l
随机k列行向量m;l列行向量n,只要n中元素不全为零即可
x=mM+nN
二,即,当A2∩B2∩C2=空集,或者不想取A2∩B2∩C2中元素(建议不要如此)时,
即选取
A'=A1∩B2∩C2
B'=A2∩B1∩C2
C'=A2∩B2∩C1
解系x=aA'+bB'+cC'
行向量a,b,c的列数的求法及其选择如第一种,且三者均不为零。
(或者全部的解是只要其中的两个不为零就行了)。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
潜扰龙阳ST
2011-01-26 · TA获得超过5786个赞
知道大有可为答主
回答量:1709
采纳率:100%
帮助的人:2612万
展开全部
一楼二楼都错了
首先,给A增加的x应该有这种形式x=a+b,a∈A1,b∈A2,其中a不是0向量
对B,C同理,证明就不写了
下面我给出构造最优解x的方法,这种方法是以你能快速算出A1,A2B1,B2,C1,C2为前提的

下面分若干种情况:
1.A2∩B2∩C2≠空集,
那么在A2∩B2∩C2中任选一个只有一个非0元的向量即可
(存在性可以从表示成梯矩阵后看出)

2.A2∩B2∩C2=空集,同时A2,B2,C2存在两个是相交的,不妨设A2∩B2≠空集
那么,C2∩A2=空集,C2∩B2=空集
此时在A2∩B2中任选一个只有一个非0元的向量a,
在C2中任选一个只有一个非0元的向量b,
取x=a+b

3.A2∩B2∩C2=空集,同时A2∩B2=空集,A2∩C2=空集,C2∩B2=空集,
在A2中任选一个只有一个非0元的向量a,
在B2中任选一个只有一个非0元的向量b,
在C2中任选一个只有一个非0元的向量c,
x=a+b+c
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-02-14
展开全部
一楼二楼都错了
首先,给A增加的x应该有这种形式x=a+b,a∈A1,b∈A2,其中a不是0向量
对B,C同理,证明就不写了
下面我给出构造最优解x的方法,这种方法是以你能快速算出A1,A2B1,B2,C1,C2为前提的

下面分若干种情况:
1.A2∩B2∩C2≠空集,
那么在A2∩B2∩C2中任选一个只有一个非0元的向量即可
(存在性可以从表示成梯矩阵后看出)

2.A2∩B2∩C2=空集,同时A2,B2,C2存在两个是相交的,不妨设A2∩B2≠空集
那么,C2∩A2=空集,C2∩B2=空集
此时在A2∩B2中任选一个只有一个非0元的向量a,
在C2中任选一个只有一个非0元的向量b,
取x=a+b

3.A2∩B2∩C2=空集,同时A2∩B2=空集,A2∩C2=空集,C2∩B2=空集,
在A2中任选一个只有一个非0元的向量a,
在B2中任选一个只有一个非0元的向量b,
在C2中任选一个只有一个非0元的向量c,
x=a+b+c ,,。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
嘉怡之吻
2011-01-26 · TA获得超过1.8万个赞
知道大有可为答主
回答量:4514
采纳率:0%
帮助的人:3378万
展开全部
与补空间一点关系都没有。问题等价于已知X1,X2,X3是X的线性子空间,求能使(Xi,a)张成的线性空间真包含Xi(i=1,2,3.)的所有a,a属于X。使(Xi,a)张成的线性空间真包含Xi的所有a等价于a属于Xi在X的余集(此余集与补空间全完是两码事)
所有的a应该就是他们3个的交。 在简单的运用集合的运算(德摩根公式)就可以得到,
结果为 X1UX2UX3然后再在X中取余集。 集合是无限个,不能用计算机一一列举出来的
X1=A1, X2=B2 ,X3=C3代入
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式