当使用Steepest Hill Climbing Search时,当你达到无限循环时会发生什么 - 也就是说,你发现自己在相同的两个状态之间来回走动,因为它们都是彼此最好的继承者?
例如,在下图中,(J)
将反复转到(K)
,反之亦然。
如果我正在编程它,我想我会在访问状态上放置某种标志,所以我知道我是否会重新访问同一个。但是,关于最速爬坡算法的文件(即here,here)中没有提到这一点。
答案 0 :(得分:3)
如果它是纯粹的爬山,那么你会忽略非改善动作,并且没有循环。如果它应该是找到全局最优,那么应该有一些其他机制来逃避局部最大值(随机移动,重启等)。