稳定有效地求解大噪声多项式方程

时间:2015-12-17 23:00:18

标签: algorithm performance computational-geometry polynomial-math large-data

假设给出了多项式方程组

F_1(X_1,...,X_K)= 0

...

F_N(X_1,...,X_K)= 0,

其中k <1000且n~20000。这里假设多项式方程的参数是有噪声的,因此由于系统超定,我们不能期望找到单个解(X_1,...,X_k)。 我现在正在寻找一种有效的算法(或者可能已经实现,理想情况下在R中),我可以用它来解决上述维度的噪声多项式系统。

1 个答案:

答案 0 :(得分:1)

一种方法是找到单个多项式f_1()^ 2 + f_2()^ 2 + .... f_n()^ 2的最小值。由于方形,只有当每个单独的f_i()接近零时,它才会很小。如果可以对噪声进行建模,使得计算f_i()时得到的误差是正态分布的,并且对于所有f_i()具有相同的方差,则这也具有良好的统计特性。

不幸的是,你说错误在多项式的参数中。假设您获得X_i,并且您需要找到多项式系数中的误差。你可以通过找到多项式的每个系数的小修正来做到这一点,这使得答案变为零,选择修正以最小化它们的平方和。您可以为每个多项式单独执行此操作。因为X_i是已知的,所以这相当于最小化校正的平方和,受限于校正中的线性函数提供的值足够大以使多项式产生零。我认为你可以使用拉格朗日乘数解决这个问题,如果你这样做,并采取解决方案,看看这个解决方案的校正平方和是什么,你得到的答案是约束的平方在线性函数上,除以线性约束系数的平方和,在这种情况下,由假定的X_i的值产生。

如果您现在使用此函数并尝试通过选择X_i来最小化它,那么您将最小化有理函数的总和,每个f_i()一个。如果f_i()都具有相似的形式,则除数将全部相同,这可能会使其变得不那么可怕。也许您可以使用打包的数字微型计算机找到最小值。一个可能的出发点是我在第一段中提到的更简单问题的解决方案 - 最小值为f_1()^ 2 + f_2()^ 2 + ...