gpt4 book ai didi

python - 如何在 DEAP 中测试收敛性(帕累托前沿的平滑度)

转载 作者:太空宇宙 更新时间:2023-11-04 00:40:33 47 4
gpt4 key购买 nike

在 DEAP 算法 ( see documentation here ) 中,我注意到我们需要指定代数 (NGEN)。有人告诉我,如果帕累托曲线是平滑的,就可以实现收敛。

可以通过在统计数据中指定“平滑度”值来监控收敛。但是,我仍然对如何定义“平滑度”感到困惑。例如,考虑 Knapsack problem specified here .在这个例子中我们如何监控平滑度?一般来说,我如何监控 DEAP 中的收敛?

最佳答案

您可以使用日志统计信息来监控各种措施。只需将“平滑度”定义为可观察值,并在达到所需值后立即停止迭代。

def smoothness(pop):
pareto = tools.ParetoFront()
pareto.update(pop)
return xxx # <-- need to fill you measure here

stats = tools.Statistics()
stats.register("smoothness", smoothness)

如果您使用 deap 进行符号回归,您可能想看看 https://github.com/Ambrosys/glyph .不过,它仍处于早期阶段。 Glyph 目前构建在 deap 之上,并试图隐藏样板代码。您也可以设置自定义中断条件:https://github.com/Ambrosys/glyph/blob/master/glyph/application.py#L131

关于python - 如何在 DEAP 中测试收敛性(帕累托前沿的平滑度),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42102536/

47 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com