如何在python中模拟MATLAB的lsqlin。



我的问题很简单,有没有一种简单的方法可以在python中实现MATLAB的lsqlin?因为,根据文件:

lsqlin约束线性最小二乘法。X=lsqlin(C,d,A,b(试图解决最小二乘问题
min 0.5*(NORM(CX-d((。^2服从AX<=bx其中C是m-by-n。

在scipy中有scipy.optimize.lsq_linear,但查看文档,它解决了:

最小化0.5*||A x-b||**2受制于lb<=x<=ub

所以我可以通过设置x<BA^-1和-inf是下界,但这不可能是最终解(如果不存在逆呢?(。我能用什么?

我找到了一个解决方案。我使用了cvxpy库(https://www.cvxpy.org/)。定义具有这种约束的最小二乘问题很容易。输出的分辨率不相等(在MATLAB中为2.3e-16,而在python中返回0(,但我认为这可能是一个很好的近似值。如果我发现如何提高分辨率,我会更新答案。

相关内容

  • 没有找到相关文章

最新更新