我試圖儘量減少(全球)使用公共變量3個功能,我想將它們組合成一個功能,並最大限度地減少使用L-BFGS-B
(我需要設置變量邊界),但它已經證明很難平衡每個參數與權重,即當一個被最小化時,另一個不會。我還試圖用SLSQP
方法,儘量減少其中的一個,同時設置其他作爲約束條件,但制約因素往往被忽略/不符合。 這裏有什麼需要儘量減少,所有的數學都在meritscalculation
和meritoflength
,meritofROC
,,heightorderreturned
作爲全局值從計算返回。蟒蛇優化多種功能與常見的變量
def lengthmerit(x0):
meritscalculation(x0)
print meritoflength
return meritoflength
def ROCmerit(x0):
meritscalculation(x0)
print meritofROC
return meritofROC
def proximitymerit(x0):
meritscalculation(x0)
print meritofproximity+heightorder
return meritofproximity+heightorder
我希望所有的人都使用通用X0(含邊界)爲自變量,以儘量減少,是有辦法做到這一點?
是的,這就是我想做的事,所以這基本上是包括權重進入優化過程,讓計算機來平衡它,對嗎?而且每個'merit()'函數(粗略的爲1000)的順序也有很大的區別,這是如何影響a,b,c的界限的?它仍然是'[0.1,inf]'還是別的?無論如何,我現在正在測試這種方法,非常感謝你的努力,你一直是最有幫助的 – dilyar