我正在尝试使用scipy中的最小化函数来进行曲线拟合。
我有一个4参数方程,每个方程都有约束约束,我想添加 param1 与 param2 不同的约束(如果可能的话) param2 > param1 )。根据我的理解,我必须使用带有绑定和约束的scipy.optimize.minimize。但约束只能是相等(0)或不等(非负,> = 0)。
因此,如果我将约束函数设置为(params存储在数组中):
cons = {"type": "ineq", "fun": lambda x: x[1] - x[0]}
如果x [1]和x [0]相等,则不等式约束不适用。其实我真的不明白为什么没有“严格肯定”的约束......
解决方法可能是在这个“p [1] - p [0]”中添加一些非常小的残留物,但是不是最干净的解决方案吗?
干杯