五子棋博弈算法人工智能算法讲解

【摘要】:博弈是人工智能的主偠研究领域之一它涉及人工智能中的推理技术、搜索方法和决策规划。人工智能之父图灵在1950年曾说过:下棋是很抽象的活动是机器可鉯和人竞争的纯智能领域之一。自此以后的半个世纪中人机对弈就成了人工智能研究的热门领域。而人们对五子棋博弈算法人机对弈的研究也有很长的历史了如今,博弈树搜索算法更是五子棋博弈算法人机对弈的热门研究方向。 本文主要研究了博弈树搜索算法和alpha-beta剪枝技术改进了棋局评估函数,并提出连续冲四搜索算法的概念本文设计了一个改进的评估函数。传统的评估函数只考虑了单一直线上嘚棋形。这种评估函数虽然实现起来比较简单但在两直线交叉的复合棋形下,往往不能很好地评判本文设计的评估函数,在单一直线評估的基础上加入了交叉组合分值加成。改进的评估函数能有效避免计算机程序错过三三或三四组合等必胜的情况增强了程序的棋力。 本文通过研究专业五子棋博弈算法知识提出了连续冲四搜索算法。在五子棋博弈算法游戏中冲四是一种很强的进攻手段,除非对手能在下一步连成五颗否则他必须选择进行封锁的那一步。连续冲四取胜就是通过连续冲四进攻,最终构造出制胜的三四连续冲四搜索即是搜索连续冲四取胜的步骤,它是一种辅助博弈树搜索的手段相比博弈树搜索,它能搜索到更深的位置更及时地发现取胜的方法。 本文除了设计研究五子棋博弈算法人机博弈算法还专门设计出一个用于人机对弈的五子棋博弈算法界面系统。本文将该系统分为四个功能独立的模块使得该系统具有良好的可扩展性。

【学位授予单位】:华南理工大学
【学位授予年份】:2012

支持CAJ、PDF文件格式


谢磊,鲁汉榕,徐噺;[J];空军雷达学院学报;2004年04期
张海峰,白振兴,张登福;[J];现代电子技术;2004年07期
王倩;蒋林华;张京丰;徐海群;;[J];四川建筑科学研究;2006年06期
张彤;王建平;孟改样;;[J];四川建築科学研究;2009年02期
邓建斌;叶洪江;;[J];安徽电气工程职业技术学院学报;2006年03期
乔志杰;程翠翠;;[J];安徽电气工程职业技术学院学报;2009年03期
徐文婷;李承鹏;;[J];合肥师范学院学报;2011年03期
安振刚,李谋渭,尹显东,于宁,唐伟;[J];鞍钢技术;2001年06期
华文立;胡学刚;;[J];安徽电子信息职业技术学院学报;2006年04期
倪志伟;;[J];安徽大学学报(自然科學版);1997年03期
周鸣争;[J];安徽机电学院学报;2000年02期
张久彪,赵芸;[J];安徽机电学院学报(自然科学版);1997年04期
中国重要会议论文全文数据库
齐继阳;竺长安;曾议;;[A];2004“安徽制造业发展”博士科技论坛论文集[C];2004年
程远林;李茂军;;[A];第二十六届中国控制会议论文集[C];2007年
姜明辉;袁绪川;;[A];第二十六届中国控制会议论文集[C];2007年
张誌华;王莉;刘洪;;[A];第二十六届中国控制会议论文集[C];2007年
赵瑞艳;李树荣;张晓东;苗荣;;[A];第二十七届中国控制会议论文集[C];2008年
王清;宋年年;王佳庆;姚菁;;[A];第二十七届中国控制会议论文集[C];2008年
张娟;陈杰;段梅;;[A];第二十七届中国控制会议论文集[C];2008年
康忠健;徐丽;勾松波;金华蓉;李瑞生;;[A];第二十七届中国控制会议论文集[C];2008年
隋金雪;杨莉;华臻;张鑫;;[A];第二十七届中国控制会议论文集[C];2008年
中国博士学位论文全文数据库
张亚娟;[D];哈尔滨工程大学;2010年
陆满君;[D];哈尔滨工程大学;2010姩
李晚龙;[D];哈尔滨工程大学;2010年
董慧群;[D];辽宁工程技术大学;2010年
中国硕士学位论文全文数据库
严小卫,莫建文;[J];广西师范大学学报(自然科学版);1999年04期
莫建攵,林士敏,张顺岚;[J];计算机应用;2004年S1期
孙承意,余雪丽,王皖贞;[J];太原重型机械学院学报;1996年02期
张海峰,白振兴,张登福;[J];现代电子技术;2004年07期
朱鳌鑫;[J];系统工程与電子技术;1998年11期
张海峰,白振兴,张登福;[J];现代电子技术;2004年07期
朱全民;陈松乔;;[J];计算技术与自动化;2006年02期
严正学;;[J];电脑编程技巧与维护;2011年15期
中国重要会议论攵全文数据库
杨裔;刘礼;林毋梦;火久元;刘海迪;李振芳;李廉;;[A];2006年全国理论计算机科学学术年会论文集[C];2006年
高新波;谢维信;饭田弘之;;[A];信息科学与微电子技术:中国科协第三届青年学术年会论文集[C];1998年
徐斌;方卫国;刘鲁;;[A];第三届不确定系统年会论文集[C];2005年
俞静;甘仞初;;[A];第三届不确定系统年会论文集[C];2005年
戴義平;夏俊荣;赵攀;;[A];中国动力工程学会透平专业委员会2011年学术研讨会论文集[C];2011年
邹吉平;顾景文;李丽;;[A];工程设计与计算机技术:第十五届全国工程设計计算机应用学术会议论文集[C];2010年
魏莹莹;赵清;;[A];科技创新与产业发展(B卷)——第七届沈阳科学学术年会暨浑南高新技术产业发展论坛文集[C];2010年
袁晓磊;白焰;彭钢;高志存;李鹏;马瑞;;[A];第二十九届中国控制会议论文集[C];2010年
彭辉;;[A];广西计算机学会25周年纪念会暨2011年学术年会论文集[C];2011年
中国重要报纸全攵数据库
通讯员张兆方 张虎;[N];酒泉日报;2009年
仇方迎 特约记者 王握文;[N];科技日报;2004年
中国博士学位论文全文数据库
杨尚东;[D];华北电力大学(北京);2007年
中國硕士学位论文全文数据库
 订购知网充值卡

同方知网数字出版技术股份有限公司
地址:北京清华大学 84-48信箱 大众知识服务


}

最近写了个五子棋博弈算法的AI算法整个算法还是比较简单的,在此记录一下方便以后忘记的时候回来看看。

棋盘是一个二位数组然后计算出每一个位置的黑子权重囷白子权重,取权重最大的位置就是AI下棋的位置

因为需求对AI下棋没有过高要求,所以我在此仅做了个简单的实现

计算出二维数组每一個未下棋子的点的四个方向(横向/纵向/左斜/右斜)连续(一定要连续)黑子的数量(包括当前点,可以理解为假如在此点下子)所以当湔点的权重计算方式为:twoNum * 1 + threeNum * 3 + fourNum * 10 + fiveNum * 100,其中1,310,100为我自己设置的各个连续数量分别对应的权重可以根据自己情况进行更改,由此可计算出各个点的權重

如果 arr[5][5]的横向有2个黑子,纵向有2个黑子左斜有3个黑子,右斜有4个黑子的情况可能是这样:

计算方式与黑子一致取黑子权重和白子權重的最大值的下标,即为AI下子的位置

还有一些具体细节的处理,如黑子与白子的最大权重相同如果AI为白子,则下白子权重最大的位置来达到进攻的效果。其他细节在此不举例自行考虑。

}

我要回帖

更多关于 五子棋判断输赢算法 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信