论文部分内容阅读
机器博弈是人工智能学科的一个重要研究方向,被称为人工智能领域的“果蝇”,是检验人工智能发展水平的一个重要方面。如今,机器博弈已经成为一个独立而重要,颇有发展前途的学术研究领域,但是它在中国起步较晚。国内外研究专用博弈集成电路系统的成果还较少,基本上都是采用高性能或多CPU的计算机来实现,使系统像大型服务器那样庞大。因此,本文以牛角棋为载体,进行机器博弈算法硬件实现技术的研究,进而为开发体积小、实时性能高的机器博弈专用硬件板卡系统进行探索。本文对牛角棋机器博弈技术进行了研究,并分别使用SOPC和有限状态机开发了完整的牛角棋的双人博弈系统。本文的工作主要在以下几个方面:首先对机器博弈基本搜索算法进行了研究,详细介绍了系统中使用到的极大极小、α-β剪枝、负极大值搜索等算法,并且分析了牛角棋博弈系统的招法生成、评估模块的解决方案。其次分别使用SOPC和有限状态机设计实现了牛角棋的二人对弈系统。基于SOPC的博弈系统使用了固定深度的深度优先的负极大值算法并且使用α-β剪枝技术对博弈树进行优化;而基于有限状态机的博弈系统则使用了基本极大极小算法,并且采用固定深度的深度优先搜索,配合α-β剪枝技术对博弈树进行优化。两种设计方法的共同点是包含的模块相同,都包含招法生成、搜索控制、评估和交互模块,但是使用的设计方法不同。最后对系统进行测试和分析测试结果,并且将两种设计结果进行比较。本设计采用的设计和仿真软件有Altera公司的FPGA开发平台Quartus Ⅱ、仿真软件Modelsim和SOPC开发软件Nios Ⅱ IED,硬件部分采用Altera公司的DE2开发板进行实现。开发板上的FPGA芯片型号为EP2C35F672C6。采用了JTAG下载方式,在开发板上进行调试和验证。在DE2开发板上实现了牛角棋的人机博弈。实验结果表明,本文实现的博弈算法工作稳定、实时性较好,可以为下一步开发专用的博弈硬件板卡系统提供技术基础。