- 1、本文档共69页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
机器博弈中的数据结构
机器博弈中的数据结构 王骄 关于数据的几个概念 1、数据。是对客观事物的符号表示。在计算机科学是指所有能够输入到计算机中并能被计算机程序处理的符号集合。包括数值、文字、图像、图像、音频、视频等形式。 2、数据项。所谓数据项就是数据中具有独立含义的、不可再分割的最小数据单位。是客观实体一种特征的数据表示。 3、数据元素。是多个相关数据项的集,是一个客观实体多种特征的数据描述,是计算机程序中加工处理的基本单位。 数据结构:相互之间存在一种或多种特定关系的数据元素的集合。 数据结构 = 数据 + 关系 同一数据元素集合,所对应的关系不同,构成不同的数据结构。 数据结构包括逻辑结构和存储结构两个方面。 逻辑数据:是指对数据及其关系的抽象逻辑描述,对立与计算机,与机器实现无关。 集合结构:数据元素之间未定义任何关的松散集合。 线性结构:数据元素之间定义了次序关系的集合(全序集合),描述的是1对1关系。例如数组,链表,队列,栈 。 树形结构:数据元素之间定义了层次关系的集合(偏序集合),描述的是1对多关系。例如二叉树、平衡二叉树、查找树 。 图状结构:数据元素之间定义了网状关系的集合,描述的是多对多关系。 存储结构:是指数据结构在计算机存储器中的具体实现。存储结构与孤立的数据元素表示形式不同,数据结构中的数据元素不但要表示其本身的实际内容,还要表示清楚数据元素之间的逻辑结构。 顺序存储结构:特点是借助于数据元素的相对存储位置来表示数据元素之间的逻辑结构; 链式存储结构:特点是借助于指示数据元素地址的指针表示数据元素之间的逻辑结构; 散列存储结构:顺序+散列; 索引存储结构:顺序+索引。 一、数据结构 二、着法生成 三、评价函数 四、开局库 五、其它 一、数据结构 1.1象棋博弈问题的演化过程 1.2棋盘棋子编码 1.3棋盘空间状态的数字表示 1.4棋盘空间状态的布尔表示 1.5数据结构之间的对应关系 1.6其它相关表示方法 1.1象棋博弈问题的演化过程 棋局状态表示 通常我们使用状态集合来表示 n 时刻的棋局状态。即 1.2棋盘棋子编码 棋盘编码 棋子编码 棋子种类编码 棋子个体编码 棋子种类编码 棋子个体编码 1.3棋盘空间状态的数字表示 棋盘空间状态的数字表示--棋子索引数组 Chessman Index[33] = { INVALID, 49, 9, 89, 19, 79, 17, 77, 49, 59, 29, 69, 6, 26, 46, 66, 86, 40, 0, 80, 10, 70, 12, 72, 30, 50, 20, 60, 3, 23, 43, 63, 83} 棋盘空间状态的数字表示--映射数组 1.4棋盘空间状态的布尔表示 棋盘空间状态的布尔表示 (1) 比特棋盘 用于记录整个棋盘上的布尔条件。 这给计算机上的表示带来很大方便:12个字节,96位便可以表示一种条件(高6位为0)。 (2)路向行向比特向量 整数数组记录每行与每列的棋子分布状态 布尔条件 如果比特棋盘中对应某一格的位是“1”,那么这一格上的条件就是“真”;如果是“0”则对应的条件就是假。 布尔条件就是在“哪些格子上符合你所定义的条件”。 比如,“棋盘哪些位置有棋子?” “棋盘哪些位置有红棋棋子?” “棋盘哪些位置有车?” …… 这给计算机上的表示带来很大方便:3个字节,96位便可以表示一种条件(高6位为0)。 比特棋盘预置表法在着法生成中具有重要的地位,而且在评估中可以方便地判断棋子相互的联系和威胁。 表示初始局面下所有红子的比特棋盘 000000 0000001001 0000000101 0000001001 0000000001 0000001001 0000000001 0000001001 0000000101 0000001001 1.5数据结构之间的对应关系 1.6其它相关表示方法 其它形式编码 (1)FEN格式:局面的字符表示 (2)PGN格式:对局的字符表示 FEN格式编码 PGN格式棋谱 [Game Chinese Chess] [Event ?] [Site ?] [Date 2006.01.03] [Round ?] [Red unknown] [RedElo ] [Black Neuchess] [BlackElo ] [Result 0:1] [ECCO “2200] [Opening ?] [Variation ?] 1. 炮二平五 马8进7 2. 马二进三 车9平8 ……………… 二、中国象棋计
文档评论(0)