作者 |
王静文 李媛 邱虹坤 |
丛书名 |
出版社 |
机械工业出版社* |
ISBN |
9787111692867 |
简要 |
简介 |
内容简介 本书是为计算机博弈竞赛爱好者而撰写,主要介绍了计算机博弈的基本原理,介绍了计算机博弈程序开发中常用的算法,包括极大极小算法、α-β算法、期望搜索算法、UCT算法和Q学习算法等,并介绍了以α-β算法为基础的一些常用的变种算法和提高搜索效率的方法。 本书以目前我国开展的中国大学生计算机博弈大赛暨中国锦标赛为基础,给出了包括亚马逊棋、点格棋、桥牌等7个博弈游戏的算法与实现案例,涵盖了完备信息和非完备信息两大部分计算机博弈的内容,每个案例各有特色,对不同博弈游戏的估值均有详细介绍。 阅读本书的读者应具有一定C或C++基础。本书可以作为人工智能或智能计算等相关专业的教材,也可以作为计算机博弈爱好者的参考用书。 |
目录 |
前言 第1章概述 11计算机博弈概述 12国际计算机博弈锦标赛 13中国大学生计算机博弈大赛暨 中国锦标赛 第2章计算机博弈基础 21计算机博弈的基本原理 211基本原理 212计算机博弈的搜索方法 213递归 214回溯 22常用搜索算法与示例 221极大极小算法 222用极大极小法实现井字棋游戏 223α-β剪枝算法 224期望搜索算法 225迭代加深 226PVS算法 23估值函数的设计 231估值函数设计概述 232估值函数设计示例 233布局与估值 234估值函数的调整方法 24置换表 25UCT算法 251Monte Carlo算法 252Monte Carlo树搜索 253UCT算法概述 26Q学习算法 261强化学习 262Q学习算法与示例 第3章亚马逊棋的设计与实现 31简介 32规则 33搜索算法 34估值函数设计 341领地的估值 342棋子灵活度的估值 35程序的设计与实现 351棋盘表示与数据处理 352估值函数中的Dji(a)的实现 353搜索算法的实现 354走法生成器的实现 第4章点格棋的设计与实现 41简介 42规则 43点格棋的基本原理 431基本概念 432基本理论 44搜索算法 45估值函数设计 46程序的设计与实现 461基本结构 462点格棋的数据表示 463估值模块和搜索模块的实现 第5章六子棋的设计与实现 51简介 52规则 53估值分析 531以棋型为基础的分析方法 532以“路”为基础的分析方法 54估值函数设计 541基于棋型的估值函数设计 542基于“路”的估值函数设计 55程序的设计与实现 551软件的基本结构 552棋盘数据表示 553走法生成器 554开局库的使用 555估值函数的实现 556搜索算法的实现 557走法生成器的实现 558置换表与哈希表 第6章苏拉卡尔塔棋的设计与实现 61简介 62规则 63算法分析 64估值函数设计 641棋子位置分析 642吃子路径分析 643棋子的灵活度分析 644棋局估值 65程序的设计与实现 651软件的基本结构 652棋盘数据与棋盘位置价值 653走法生成模块的实现 第7章西洋跳棋的设计与实现 71简介 72规则 73估值分析 74程序的设计与实现 741程序的基本结构 742棋盘数据表示 743走法生成模块的实现 744估值函数的实现 745搜索算法的实现 第8章桥牌的设计与实现 81简介 82规则 83桥牌博弈程序的关键技术 831抽样的设计 832双明手求解器 833优化抽样的算法实现 84程序的设计与实现 841桥牌博弈系统架构 842博弈平台的设计与实现 843AI引擎的设计与实现 第9章德州扑克的设计与实现 91简介 92规则 93博弈树的设计 94估值函数的设计 95专家系统和专家知识库的 设计 96程序的设计与实现 961德州扑克博弈系统架构 962搜索模块 963估值模块 附录 附录A中国大学生计算机博弈 大赛 暨中国锦标赛部分 项目规则 附录B桥牌AI引擎的核心 部分源码 参考文献 |