稳定高效地求解大噪声多项式方程
Posted
技术标签:
【中文标题】稳定高效地求解大噪声多项式方程【英文标题】:Solve large noisy polynomial equation stably and efficiently 【发布时间】:2016-03-24 14:07:22 【问题描述】:假设给定一个多项式方程组
f_1(X_1,...,X_k)=0
...
f_n(X_1,...,X_k)=0,
其中 k
【问题讨论】:
你能告诉更多关于多项式的形状吗?它们是如何建造的? 【参考方案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 + ...
【讨论】:
非常感谢您的回复。最小化 f_1()^2 + f_2()^2 + .... f_n()^2 的想法听起来很有希望。不幸的是,我无法理解您进一步的大纲,所以我非常感谢您能以更具体的方式简要解释它们,也许是在一些玩具示例中。 您还知道找到 f_1()^2 + f_2()^2 + .... f_n()^2 最小值的最佳算法是什么?有一些适当的实施吗? 有用于最小化的数值例程,实际上还有专门用于最小二乘最小化的数值例程,例如commons.apache.org/proper/commons-math/userguide/…以上是关于稳定高效地求解大噪声多项式方程的主要内容,如果未能解决你的问题,请参考以下文章