我正在尝试使用skopt中的gp_minimize来实现优化。然而,我的目标函数需要一些对象来处理,类似于这样:
def objective(optimisation_parameters, trees):
trees.manipulate(optimisation_parameters)
trees.shake()
return trees.count_fallen_fruits()def optimise():
trees = [tree.Tree() for _ in range(0,5)]
res = gp_minimize(objectiv,space,...,args = trees)有什么(适当的)方法来做这件事吗?我有几个想法:
谢谢
发布于 2021-11-03 11:04:01
你的想法2是常见的选择。它在这个例子中得到了应用。
基于代码片段的划痕可能如下所示:
trees = [tree.Tree() for _ in range(0,5)]
def objective(optimisation_parameters):
trees.manipulate(optimisation_parameters)
trees.shake()
return trees.count_fallen_fruits()
res = gp_minimize(objective, space, ...)https://stackoverflow.com/questions/68482878
复制相似问题