…………还是不对……如果是真的估价函数c()可以这样,但是使用的是评估函数^c(),这个函数不一定具有离目标越近,函数值就越小的特点……所以这样很容易就无解了……
比如选择评估函数是“每个数码到最终位置需要走的步数”,则原始状态132458769评估为6+0
,它的两个子状态:
l 1+6 132458796
u 1+6 132459768
居然都大于6……
如果这里都不选,那么自然就无解了,如果任意选一个,因为是递归算法,那么在以后也是同样在相同层数的子状态里面选择,如果这样,那么加上去的层数就没有意义了:因为这个层数唯一的意义就是和参加比较的母状态进行比较……
郁闷……后天考试,我先复习再说,这个东西考试完了再说。
比如选择评估函数是“每个数码到最终位置需要走的步数”,则原始状态132458769评估为6+0
,它的两个子状态:
l 1+6 132458796
u 1+6 132459768
居然都大于6……
如果这里都不选,那么自然就无解了,如果任意选一个,因为是递归算法,那么在以后也是同样在相同层数的子状态里面选择,如果这样,那么加上去的层数就没有意义了:因为这个层数唯一的意义就是和参加比较的母状态进行比较……
郁闷……后天考试,我先复习再说,这个东西考试完了再说。