【发布时间】:2013-05-18 13:09:21
【问题描述】:
我有一个有点复杂的算法,需要将二次曲线拟合到一组点。该二次曲线由其参数化(u, v, f(u,v)) 给出,其中f(u,v) = au^2+bv^2+cuv+du+ev+f。
需要找到f(u,v) 函数的系数,因为我有一组恰好是该函数应该遵守的 6 个约束。问题是这组约束虽然产生了像A*x = b 这样的问题,但并不能完全保证唯一的解决方案。
因此,简而言之,我想使用 alglib 的工具以某种方式确定 A 的伪逆,或者直接找到最适合 x 向量的方法。
除了计算 SVD,在这个库中是否有更直接的算法可以解决最小二乘意义上的系统(同样,除了 SVD 或使用简单的inv(transpose(A)*A)*transpose(A)*b 公式解决一般最小二乘问题其中A不是方阵?
【问题讨论】:
标签: c++ numerical-methods alglib