【发布时间】:2014-03-25 03:15:49
【问题描述】:
考虑以下问题:
查找:
x_1, x_2, x_3 > 0这样67.5 = 60*x_1 + 90*x_2 + 120*x_3 60 = 30*x_1 + 120*x_2 + 90*x_3
有没有办法在 Python 中解决这个方程?也许是scipy.nnls()?
【问题讨论】:
-
我认为这是非负最小二乘问题。请给你有价值的cmets
-
您有三个变量(x_1、x_2 和 x_3),但只有两个方程。就目前而言,它们的解集将等效于由两个方程的平面相交形成的“线”。换句话说,目前有无限多的解决方案。
-
@voithos 是的,它有无限多的解决方案。但我听说仍然发现我们可以使用最小二乘拟合在确定的系统下找到该解决方案。在我的情况下,我需要非负最小二乘解决方案。请参阅stackoverflow.com/questions/16365723/… 以获取参考。谢谢你的评论
标签: python numpy scipy linear-algebra