如何有效地计算具有不等式约束的总最小二乘

计算科学 线性代数 算法 高维
2021-12-10 00:47:32

我正在寻找一种有效的方法来计算在条件 其中是一个 n×m 矩阵,是一组 n 维向量。换句话说,目标是找到的列(在非负性约束下)定义的子空间到中每个点的正交距离的平方和最小。 是一个有大约 10 到 1000 个元素的有限集,并且

i=1|B||Axibi|2min
i,xi0,
ABBnmAABBn在 50 到 1000 的范围内,并且会相当小,即m10

2个回答

编辑:在清除评论中的一些符号混淆后重写。

其中是向量的数量。然后你的问题可以写成X=[x1,x2,xr]B=[b1,b2,br]r

minimizeA,X0||AXB||

这看起来很像非负矩阵分解问题的一个版本,称为半非负矩阵分解。有关示例,请参见此处。

您可以通过扩展平方项将其转换为标准形式的二次程序,然后分配总和(假设您的集合 B 是有限的)。然后,您可以使用其中一种标准求解器(有关几个选项,请参见维基百科页面底部的链接)。

如果您正在寻找更具体的建议,我建议您添加有关您的具体问题的更多详细信息,包括问题的大小(n 和 m 有多大),以及矩阵 A 是否有任何结构。