使用python scipy.optimize.basinhopping的exp中出现溢出

使用python scipy.optimize.basinhopping的exp中出现溢出,python,overflow,exp,Python,Overflow,Exp,我正在使用scipy.optimize.basinhopping,以便将一个简单的指数函数(aexp(-btime))拟合到实际数据中。我尝试进行适当的初始猜测(对于a和b),但在某些迭代中(对于某些值,根据猜测)“exp溢出”会发生。我知道这是因为一个很大的答案要用exp来计算。顺便说一下,结果是绝对错误的。 是否有必要要求代码忽略那些包含猜测的错误,以防止输出中出现错误结果? +时间从0到e+06左右 感谢您的关心和帮助这是我的代码。运行后,我得到bk的一些值的溢出错误,因此ret的结果值是

我正在使用scipy.optimize.basinhopping,以便将一个简单的指数函数(aexp(-btime))拟合到实际数据中。我尝试进行适当的初始猜测(对于a和b),但在某些迭代中(对于某些值,根据猜测)“exp溢出”会发生。我知道这是因为一个很大的答案要用exp来计算。顺便说一下,结果是绝对错误的。 是否有必要要求代码忽略那些包含猜测的错误,以防止输出中出现错误结果? +时间从0到e+06左右
感谢您的关心和帮助

这是我的代码。运行后,我得到bk的一些值的溢出错误,因此ret的结果值是绝对错误的,与正确答案相差甚远(


一行代码胜过千言万语来描述它:)请分享你已经尝试过的东西。顺便说一句,欢迎。@vahdet嘿:)我做到了。
def model(bk):
    s = 0
    realData = data()
    modelData = []
    modelData.append(realData[0])
    for time in range(len(realData) - 1):
        x = realData[0] * np.exp((bk[0] * np.exp(bk[1]*time))*time)
        y = 1 - realData[0] + x
        i = x / y
        modelData.append(i)
        s+=np.abs(i-realData[time])

    return(s)
def optimize():
    bk0 = [1,-1]
    minimizer_kwargs = {"method" : "BFGS"}
    ret = basinhopping(model, bk0, minimizer_kwargs=minimizer_kwargs, niter=100)
    print(ret)

optimize()