【问题标题】:solve quadratic programming for matrix instead of vectors求解矩阵而不是向量的二次规划
【发布时间】:2018-01-11 20:16:59
【问题描述】:

我正在研究一个二次规划问题。

所以我得到了两个矩阵 A 和 B(实际上是时间序列),我想找到矩阵 X,s.t.在 X 包含所有正值的条件下,A*X 最接近 B。 (所以X可以看成一个权重矩阵)

由于这是一个最小化问题,并且 X 有限制,我正在考虑使用二次规划。具体来说,我的目标是通过以下方式找到 X:

min sum (A*X - B).^2,   that is:

min sum 1/2 X^t * (A^t*A) * X - (B^t*A) * X
s.t. X is positive

这种形式似乎与 QP 问题非常相似:

1/2 x^t*Q*x + c^t*x
s.t. A*x < b

我的问题是:

My X is a matrix instead of a vector in QP.
Is there a variant of QP for this problem? Am I right to head to QP?

How to represent the limitation on X positive?

如果您能具体了解 R 函数,那就太好了。

非常感谢!

【问题讨论】:

  • 哪些维度? mat-mul 是否可以代数计算? QP 非常普遍,并且大多数情况下只有半正定 QP 是可行的(解决全局选择;凸)。创建标准格式并不难,但尚不清楚它是否是正确的工具/方法。这听起来像是矩阵分解,可能是NMF,其中有特殊算法可用。但即使是 NMF 通常也是非凸的。所以:要更加精确和正式!
  • @sascha 非常感谢您的回复!由于 X 需要由非负值组成,因此 mat-mul 不起作用。其实我也在考虑NMF,但是当权重手动设置为正时,损失函数总是无限的,而惩罚也无济于事。我想这是因为负数被强制为零。这就是我考虑QP的原因。对于矩阵的维度,假设 A 是 t * m,B 是 t * n,X 是 m * n。
  • 我绝对误解了这里的任务。 NMF 是一项非常不同的任务。欧文的答案看起来是正确的。
  • @sascha 是的 LP 工作得很好。还是谢谢你!

标签: matrix optimization linear-algebra minimization quadratic-programming


【解决方案1】:

这应该是凸的并且可以使用 QP 算法直接解决。我经常将其重写为:

 min sum((i,k),d^2(i,k))
 d(i,k) = sum(j, a(i,j)*x(j,k)) - b(i,k)
 x(j,k) ≥ 0, d(i,k) free

这显然是凸的(对角线 Q 矩阵)。在某些情况下,这种形式可能比将所有内容都放在目标中更容易解决。从某种意义上说,我们使问题变得不那么非线性。您也可以通过使用不同的规范作为 LP 解决此问题:

 min sum((i,k),abs(d(i,k)))
 d(i,k) = sum(j, a(i,j)*x(j,k)) - b(i,k)
 x(j,k) ≥ 0, d(i,k) free

 min sum((i,k),y(i,k))
 -y(i,k) ≤ d(i,k) ≤ y(i,k)
 d(i,k) = sum(j, a(i,j)*x(j,k)) - b(i,k)
 x(j,k) ≥ 0, y(i,k) ≥ 0, d(i,k) free

【讨论】:

  • 非常感谢!我也觉得这是我希望做的。我正在尝试使用第三种形式的 LP,但得到了巨大的矩阵。还在尝试...
  • 我只是对第一个 QP 和第二个具有绝对值的 LP 感到困惑。我正在使用 R 包,但 QP 仅提供矩阵形式,不适用于元素平方和求和。对于绝对值,LP 也不可能。您是否碰巧知道可以处理这些的任何软件包或其他工具?非常感谢!
  • (1) R 下的大多数或所有 QP 算法都使用矩阵接口。这并不总是很容易使用,但对于这个问题应该不会太糟糕。 (2) abs() 函数在第三个模型中被线性化(继续阅读)。 (3) OMPR 包允许对 LP 和 MIP 模型进行代数公式化。
  • 是的,我一直在使用 LP。我刚刚得到了非常好的结果。谢谢!!
  • @hansolo 同样的事情:对所有组合求和i,j
猜你喜欢
  • 1970-01-01
  • 2012-09-03
  • 2023-03-30
  • 2013-09-04
  • 1970-01-01
  • 2022-10-14
  • 1970-01-01
  • 2017-06-13
  • 1970-01-01
相关资源
最近更新 更多