我试图尽量减少(全球)使用公共变量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