强制停止优化

时间:2015-04-03 15:46:08

标签: python optimization scipy

以下功能只是为了表达问题,而不是真正的问题。 我有一个目标函数,我设置了终止阈值:

def objective(x,data1,data2):
    s=data1-x*data2
    if s<=threshold:
       sys.exit()
    else:
       return s

我使用其他功能进行优化:

def optimize(data1,data2):
x0=numpy.zeros(2)
result=scipy.optimize.minimize(objective,x0,
                  args=(data1, data2),
                  method='Nelder-Mead', options={'xtol': 1e-6, 'disp': True})
return result

问题是由于强制终止目标函数,优化不会返回正确的结果,即当脚本终止时值 result.x

不幸的是我无法提供原始功能,但是如果有人遇到类似的事情可能会帮助我。

0 个答案:

没有答案
相关问题