2048视频游戏的最佳可接受启发式函数是什么?请提供初始状态和下一状态的示例,并说明如何计算评估函数的值?
回答:
要将一个启发式函数标记为“最佳”几乎是不可能的(如果不是完全不可能的话)。
我想到的一个想法是,将当前状态的启发式函数评估为该状态下所有瓦片的最大值。然后,具有更高值的状态被认为更接近目标(“更接近”)。
这种方法是可接受的,因为它永远不会低于实际值(那将意味着当前的最大值不是最大值,而这是不可能的)。
可能,你可以扩展这个启发式函数,例如:考虑当前最大值的位置,其(最多)4个邻居是否有相同的值以便它们可以合并?但这需要更多的复杂性来保持其可接受性。