UCT算法初探

又是一年高考出分时,感慨颇多。
两年前的我高考失利,比平时成绩差了许多,所谓的“一定能上一本A”也成了一个笑话,固然是抹不去的伤痛,高考是我前二十年受到的最大的一次打击,可以说是唯一的一次打击,只能说 ,太顺了不好。
幸好学的是喜欢的专业,至少不会厌烦,程序的创新、调试总是充满惊喜。生活总要继续,高考画上了前二十年的残缺的句号,总不能影响未来十年的黄金拼搏期。以前老师总是说,高考是一个选择,选择和更优秀的人在一起,无论在哪一个圈子,总有优秀的人,也许在别人眼中,我也是其一,,只有努力,表里如一,比他们更好。

感慨结束、今天正事:继续学习UCT

总结一下知网一篇关于UCT论文:
UCT算法分成四个部分:
a 选择节点
b 展开节点
c 棋局模拟
d 回馈更新

a 若有未被访问过的子节点,则优先以随机方式选择其中一个子节点然后执行模拟棋局 -> c, 否则继续使用节点选择公式UCB1选择子节点。当被选中的子节点为叶节点并且这个子节点被访问的次数未达到指定的次数时,则选择该子节点落子然后 ->c .当被选中的子节点为叶节点并且这个节点被访问的次数达到指定的次数,则需先展开该子节点,否则重复此步骤直到找到被访问的次数未达到指定的次数或未被访问过的叶节点为止。

b 展开
当节点为叶节点并且该节点被访问的次数达到指定的次数时,进行展开子节点。展开时对候选步做筛选,去除不合适的候选步,再将筛选后的候选步展开成子节点并随机选择其中一个节点。

c棋局模拟
当被选择的叶节点落子后执行模拟棋局,在模拟中检查是否有棋串少于四气,若有则尝试逃跑,如果有符合简单的模式库的棋型,执行库模式匹配,攻击少气的棋串,都没有就随机。

d回馈更新
将模拟棋局的结果回溯到更新游戏树节点的信息

你可能感兴趣的:(【014】井字棋)