python中如何获得非方矩阵(非齐次)可能解中的一组正值解?

发布于 2022-09-02 20:17:47 字数 511 浏览 45 评论 0

M*N的非方阵矩阵(列多于行)应有无数个解,现今想求得其中一组正值解。
即符合下述方程的一组正值解。

2*x_1 + 3*x_2 + 9*x_3 +...+ 13*x_n = 12345.325514
3*x_1 + 5*x_2 + 6*x_3 +...+ 9*x_n = 93834.135
6*x_1 + 45*x_2 + 8*x_3 +...+ 0*x_n = 24125.13545
4*x_1 + 2*x_2 + 1*x_3 +...+ 0*dx_n = 124325.683

上述方程组中未知数的量是不定的,但大于4种。

在搜索到结果中求解方法是使用numpy库中linalg。
调用numpy.linalg.lstsq函数

numpy.linalg.lstsq(a,b)

可以矩阵方式求得其最小二乘法近似解,但解中可能有负数。
现今想求得一组满足上述非齐次线性方程的正值特解。
只要满足上述方程并为正值即可。
不胜感激。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文