2017-01-30 12 views
0

我寫以下優化代碼:在Scipy中使用SLSQP時,如何爲'eps'選擇合適的值?

guess = [1/6] * 6 
bounds = [(0.0,1.0)] * 6       
cons = {'type': 'eq', 'fun': lambda x: 1 - sum(x)} 
result = minimize(function, guess, (instrument, sample),\ 
    bounds=bounds, method='SLSQP', tol=0.01, constraints=cons,\ 
    options={'disp': False ,'eps' : 1e-2}) 

結果應該是長度爲6的向量,其中每一值是0<x<1sum(x) = 1

我已經設置了0.01的容差,我相信這意味着優化器將在最小值的1%內終止。

我很困惑的是'eps'的術語。我不完全確定它的含義,或者它與容差設置的關係。我如何選擇一個合理的價值,以及過高或過低的後果是什麼?

回答

0

那麼,根據docseps是用於雅可比行列式的數值近似的

步長。

再有什麼你會發現在這個wikipedia article部分頗有些具體指導一個很好的價值「實際考慮使用浮點運算」

相關問題