任务描述
本关任务:学习人工智能博弈算法中的 AlphaBeta 剪枝技巧,并基于 MinMax 算法编程实现如下图博弈树最优值问题的求解。
博弈树的输入形式为字符串:[A, [B, (E, 3), (F, 12), (G, 8)], [C, (H, 2), (I, 4), (J, 6)], [D, (K, 14), (L, 5), (M, 2)]]
,其中 [] 里的第一项为结点名称,后面的 [] 或 () 为子结点,而 () 里边则为叶子结点名称及其值。通过 Python 中的 ast.literal_eval 模块可以将该字符串数据解析为数据在 Python 数据类型里本应该存在的形式,在本例子中即为列表和元组,使用方法可见文件目录中的 testAlphaBeta.py 文件。<