首页 > 解决方案 > 在多项式上拟合具有不等式约束的多变量多项式

问题描述

我在二维域 (x,y) 中有实验性分散数据(图中绿色),我想用二维多项式拟合,例如:

其中 c0, c1,... 是多项式的系数。最重要的是,我有平等和不平等的约束:

我怎样才能做到这一点?我可以通过 c0、c1、c2、... 系数中的不等式来表达我在 f(x,y) 中的不等式吗?

我曾经最小化||Ax-B||scipy.optimize.minimize的最小二乘。,其中Ax是在实验点评估的多项式表达式,x是要优化的系数c0,c1,c2,...的向量,B是我的实验数据。我真的需要一些关于如何应用不等式约束的指导。

到目前为止我尝试了什么:

图片

标签: optimizationscipyregressioncurve-fittinginequality

解决方案


两种解决方案:

  • scipy.optimize.minimize要最小化的函数是某种 chi^2,但另外,如果不满足您的约束,则返回,这提供了np.inf硬边界。
  • 使用蒙特卡洛马尔可夫链方法。python中有很多实现。

推荐阅读