向 iminuit fitter 添加约束

Adding constraints to iminuit fitter

我正在尝试为我遇到的一个非常复杂的最小化问题添加约束,但我不确定如何实现它,即使在阅读了文档之后也是如此。

我有一个简单的例子,如果得到回答将帮助我解决原来的问题。这是代码:

from iminuit import Minuit
def f(x,y,z):
    return (x-1.)**2 +(y-2*x)**2 + (z-3.*x)**2 -1.

    m=Minuit(f, x=.5, error_x=0.2, limit_x=(0.,1.), y=0.,limit_y=
   (0.,1.), print_level=1)

m.migrad();

我想添加一个约束,比如 x+y=1。

谢谢

我自己的问题的答案是不要费心使用 minuit。将 scipy.optimize 与方法 SLSQP 一起使用。它内置了等式和不等式约束方法。