我正在尝试使用模拟退火为我的n个女王提出算法。网上有通用算法,但是当我看到它时,我无法理解它是如何工作的。我的节点只有关于板上命中数的值。我怎样才能使用模拟退火算法。什么是“温度”,“时间表”?
请帮我理解这一点。 感谢
答案 0 :(得分:3)
温度是一个数字,表示您接受不会改善解决方案的移动的可能性。你从高温开始(=非常可能接受非改善动作)并慢慢演变成低温(=非常不可能接受非改善动作)。
我花了好几次尝试让模拟退火正确。实际上,当我终于开始工作时,我感觉就像这样:
禁忌搜索是工艺:每一次改变都会让它变得更好。模拟退火是一门艺术:一次改变会造成或破坏它。
您可以找到我的实现here(OptaPlanner的一部分,java,开源)。