当使用最陡的爬山搜索时,当你到达一个无限循环时会发生什么——也就是说,你发现你自己在同两个州之间来回走动,因为它们都是彼此最好的接班人?
例如,在下图中,(J)
将转到(K)
,反之亦然。
如果我在编程的话,我想我会在访问过的州上挂上某种旗帜,这样我就知道我是否在重访同一个州。然而,文档中没有提到这一点(即here,here)关于最陡的爬山算法。
最佳答案
如果是纯粹的爬山,那么你忽略了没有进步的动作,也就没有周期如果它应该找到全局最优,那么应该有一些其他的机制来逃避局部极大值(随机移动,重启,等等)。
关于algorithm - 寻找具有最陡峭爬坡功能的路径,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32936285/