当前位置:首页 > 嵌入式 > 嵌入式软件
[导读]基于牛角棋的博弈电路系统设计

摘要:机器博弈是人工智能领域的重要应用之一。以牛角棋博弈为载体,介绍了人机博弈系统中机器博弈引擎和人机接口的设计思想,重点论述了招法生成模块、搜索控制模块和局面评估模块在SoPC系统中的实现方案。在基于NiosⅡ设计的SoPC系统中实现了固定深度的深度优先的负极大值算法并且使用α-β剪枝技术对博弈树进行优化。实验结果表明所设计的博弈电路系统实现了牛角棋人机博弈功能,机器给出招法的时间和效果达到高水平博弈棋手的水准。
关键词:牛角棋;机器博弈;片上可编程系统;人工智能

0 引言
    机器博弈是人工智能学科的一个重要研究方向,被称为人工智能领域的“果蝇”,是检验人工智能发展水平的一个重要方面。国内外研究专用博弈集成电路系统的成果还较少,基本上都是采用高性能或多CPU的计算机来实现,使系统像大型服务器那样庞大。因此,本文以牛角棋为载体,进行机器博弈算法硬件实现技术的研究,使用片上可编程系统(System on a Programmable Chip,SoPC)开发了完整的牛角棋的双人博弈系统。进而为开发体积小、实时性能高的机器博弈专用硬件板卡系统进行探索。

1 牛角棋博弈软件设计
1.1 系统总体结构
    
根据牛角棋博弈系统的功能需求分析,将系统进行模块划分,系统总体功能结构如图1所示。


1.2 招法生成
    
招法生成模块提供了在局面中选出所有可行招法的功能,从而为正确地展开博弈树提供了支持。
1.2.1 牛角棋的数字化描述
    
为了让计算机下棋,首先就要将所有的棋局元素,包括棋盘、棋子、棋局、着法、规则、知识等通过数字化(编码)成为数据元素,而各种数据元素再以特定的关系构成相应的数据结构进行存储和处理。
    牛角棋的棋盘和棋子编码如图2所示。12个棋位编码为0~11,红子用0表示,两黑子分别用1和2表示。这样初始棋局便可有两种形式的表示:
    (1)棋位向量(0,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,2);
    (2)棋子向量(11,10,0)。

[!--empirenews.page--]
1.2.2 招法的形式化描述
    
用表示红蓝3枚棋子在第n步时的棋位,第n步时刻的棋位向量的形式化描述为状态Sn:
    
    式中qn+1为第n+1时刻的招法。
    由于红子走子方向不受限制,可上可下,可横走,只能走向空位,不得跳跃。所以红方棋子可以表述为:
    
    蓝方的棋子走棋方向受到限制,只能上不能下,可以横走,只能走向空位,不得跳跃。故蓝方的两枚棋子可以描述为:
    
1.2.3 预置表招法生成
    
预置表可看作一个可快速检索到满足某些简单条件的、预先生成的招法列表的知识库。
    对照图2棋盘的编码方式,参照牛角棋的规则,一种预置招法表的设计方案如图3所示。


    preTable是三维的预置表,其中的两个高维度分别代表了2个条件:
    (1)棋子的颜色是什么;
    (2)棋子处在什么位置上。
    在明确上述两个条件的具体值之后,就可以获得全部可行着法的列表。由于预置表是频繁访问的数据,所以,预置表占用的空间不应太大,而且执行时应以能够载入内存为宜,所以针对具体棋类还须因地制宜地采用一些技巧。
1.3 搜索控制
    
在解决机器博弈问题中,搜索是机器博弈的核心,他控制着系统各个模块的调用,他效率的高低直接影响搜索的速度,是决定整个博弈系统棋力高低的首要因素。
    首先,他调用招法生成模块,对当前局面产生所有可能的招法并将产生的招法保存到招法列表中。然后,判断当前局面是否有获胜方,如果有获胜方返回当前局面的估值;否则再判断是否是叶子节点,如果是叶子节点,调用估值模块对当前局面进行估值并将其返回;如果不是叶子节点则按照当前招法走一步棋并且调用自身将刚生成的节点展开,此过程一直持续下去直到分出胜负或者搜索到叶子节点。接着,按照走法将当前局面撤销,退到没有走棋时的局面。然后判断是否需要剪枝。以上过程反复执行,将庞大的博弈树一层一层展开以搜索最佳招法,并将其输出。
    在NiosⅡ系统中,使用递归调用的方式来实现搜索算法,使用负极大值算法(Negamax algorithm),并且采用固定深度的深度优先搜索,同时配合α-β剪枝技术来搜索最佳招法。
1.4 局面评估
    
对叶子结点所对应的局面打分是估值函数的职责,通过对局面的量化值来表示局面的好坏,而博弈树的其他节点的值则通过算法从叶子节点返回得到。函数的输入是待评估的函数,输出是一个数值。
    博弈树的叶子结点是需要调用估值函数加以估值的结点。而博弈树的中间结点和根节点的分值,均可利用极大极小原理从叶子节点的取值倒推出来。除了残局阶段,搜索树中的大部分叶子结点,都是未分胜负的结点,需要估值函数对该局面做出评价,并以数值的形式反映优劣程度。一般地,将所有特征的取值的加权和作为估值函数值。局面p的估值函数V(p),一般形式如下:
    
    式中:fi表示特征;wi表示权值。
    需要注意到是,对于负极大值算法中叶子节点的估值必须对那一方走棋敏感,评估模块设置使能信号,在搜索状态机发出评估使能信号后,评估模块立即对当前局面进行评估并在一定的延时后返回局面的评估值。如果评估使能信号无效,评估模块的输出保持在高阻态,不对局面进行评估。
[!--empirenews.page--]
2 牛角棋博弈系统硬件设计
    
本系统的处理器为NiosⅡ嵌入式软核处理器。NiosⅡ是Altera公司提出的数字系统SoPC解决方案,使得处理器可配置到可编程逻辑器件之中,因此被称为软核处理器。NiosⅡ软核处理器与常见的微控制器相似,它们都是在一个芯片上包含了处理器、存储器、以及输入/输出电路等功能模块。相对于微控制器,NiosⅡ软核处理器最大的特点为它是一种软核、可配置的系统。软核表示处理器的目标器件只有在下载设计文件后才具备处理器的功能;可配置意味着处理器系统的组成和性能可以根据需要进行调整。另外,系统还包含计时模块和PLL分频模块,硬件系统主要包括NiosⅡ快速型内核、SDRAM、三态桥(tristate bridge)cfi控制器、sysid和并行输入输出(pio)。对系统的各个模块添加和配置完成之后,可以使用SoPC Builder自动配置各个模块的的地址和系统的中断。

3 测试结果
    
该设计采用的开发板为A1tera公司的DE2 FPGA开发板,板上的FPGA为CycloneⅡ系列,芯片的型号为EP2C35F672C2。
    SoPC系统配置完成以后,在原理图中将系统各个模块的硬件系统进行连接,生成硬件系统原理图。之后,对系统进行综合、时序分析等操作,完成硬件系统的调试。接着对FPGA的引脚进行锁定,然后将硬件系统全编译生成FPGA配置文件用于配置FPGA。在使用QuartusⅡ将SoPC系统硬件配置到FPGA之后即可在NiosⅡIDE中对系统的软件进行在线调试。
    博弈树的搜索最大层数设置为15层,对系统重新进行编译成功以后将FPGA配置文件和软件一起下载到FPGA上进行验证,图4为验证过程中的一些局面。其中(a)为游戏开始时的局面,蓝方2枚棋子和红方棋子的棋位分别为11,10,0,图中显示的是十六进制,此时机器等待用户选择走棋方;(b)为游戏过程中的一个局面,此时蓝方2枚棋子和红方棋子的棋位分别为9,6,4;(c)是游戏结束时的局面,此时红子被蓝子憋在牛角尖处无法移动,蓝方获胜,LEDG7闪亮。


    在SoPC系统中,设置的最大搜索层数为15层。从上面的结果可以看出,每个局面搜索时间最大为2 s,满足系统设计是的性能要求:最大搜索深度大于10层;每个局面最大搜索时间最大不超过3 s。针对系统的智能性和速度方面的测试结果如表1所示。选10个人每人做10次实验,共计100次实验,对实验结果进行综合分析得到数据如表1所示。
    从上面结果可以看出:系统的智能性还有待提高,这主要是为了使系统搜索更快而降低搜索层数导致的结果。

4 结语
    
本文以牛角棋的博弈过程为研究载体,论述了机器博弈系统的设计和实现过程。实验结果表明本文方法具有较好的智能性和实时性。随着现代集成技术的发展,FPGA的规模和速度不断提高。更加丰富的逻辑资源和嵌入了RAM块,使得利用FPGA技术设计复杂度很高的棋类博弈系统(如中国象棋)成为可能。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

上海2024年5月13日 /美通社/ -- 5月8日,浦东新区国资委组织陆家嘴集团等9家区属企业与立邦中国召开合作交流会,旨在贯彻落实浦东新区区委、区政府工作要求,进一步放大进博会溢出带动效应,持续扩大区属企业与进博会重...

关键字: BSP 数字化 自动化立体仓库 智慧园区

上海2024年5月13日 /美通社/ -- 在数字化时代,高效的税务管理和ERP系统成为企业发展的关键。为了满足这一需求商应信息科技与Exact Software 易科软件就金四全电票税系统与ERP系统集成及商务合作建立...

关键字: AC 软件 BSP 数字化

北京2024年5月13日 /美通社/ -- 5月11日,鲲鹏昇腾开发者大会2024期间,华为举办"昇思AI框架及大模型技术论坛",软通动力数字基础设施与集成事业部总经理谢睿受邀出席、软通动力...

关键字: AI 模型 BSP 精度

2023/24 财年收入降至 15.50 亿欧元(上一年同期:17.91 亿欧元) 调整后息税折旧摊销前利润率为 24.8% 居林和莱奥本的半导体封装载板生产将于 2024/25 财年末开始 2024/...

关键字: BSP 半导体封装 印制电路板 汽车

上海2024年5月14日 /美通社/ -- 固特异 SightLine 智能轮胎技术解决方案荣获中国电子行业主流媒体《中国电子报》颁发的 2024 汽车芯片优秀产品奖。本次获奖是对固特异研发成果的高度认可。固特异致力于引...

关键字: 汽车芯片 轮胎 BSP SI

慕尼黑2024年5月9日 /美通社/ -- TÜV南德意志集团(以下简称"TÜV南德")持续保障安全、可靠及可持续发展。作为全球化的服务提供商,TÜV南德2023年全年营收达约31亿欧元,首次突破30亿欧元大关,同比增长...

关键字: BSP 可持续发展 数字化 人工智能

凭借深度学习技术和SmartBid产品,百度国际MediaGo获得美国商业奖认可 旧金山2024年5月6日 /美通社/ -- 第22届美国商业奖(American Business Award®)近日发布获奖名...

关键字: MEDIA GO SMART BSP

上海2024年4月17日 /美通社/ -- 在2024 F1中国站即将拉开帷幕之际,高端全合成润滑油品牌美孚1号今日举办了品牌50周年庆祝活动。三届F1年度车手总冠军马克斯•维斯塔潘也亲临现场,共同庆祝这一里程...

关键字: BSP 汽车制造 行业标准 产品系列

北京2024年4月17日 /美通社/ -- 2024年4月13日,由北京康盟慈善基金会主办的"县域诊疗,规范同行"——肿瘤诊疗学术巡讲项目首站在广州隆重召开。本次会议邀请全国多位肺癌领域专家和县域同道...

关键字: AI技术 医疗服务 BSP 互联网

海口2024年4月16日 /美通社/ -- 4月14日,在中法建交60周年之际,科学护肤先锋品牌Galenic法国科兰黎受邀入驻第四届中国国际消费品博览会(以下简称"消博会")法国馆。Galenic法...

关键字: NI IC BSP ACTIVE
关闭
关闭