五子棋AI设计

本文介绍了作者在学习人工智能课程时,通过实现基于Alpha-Beta剪枝的Minimax搜索的五子棋AI,从入门到进阶的过程。首先创建了一个随机落子的简单AI,然后通过评估棋盘空位威胁程度,改进AI实现防守策略,提升AI的棋艺。

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.youkuaiyun.com/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

               
 

五子棋AI设计——从门外到门内不得不说的事儿1

分类: 人工智能 AI 五子棋 Naive   278人阅读  评论(0)  收藏  举报

这学期选了人工智能原理,上课的时候完全没搞懂老师要讲什么,所以听课听得云里雾里的,幸好有几个小实验,可以帮助理解人工智能的精髓。

第一个实验就是基于带alpha-beta剪枝的MinMax搜索的五子棋AI设计。好久没有写过MFC界面了,所以在pudn上down了几个例程,测试了一下,选了两个比较规范的工程作为开发的基础。

第一天:Naive AI——一个称不上AI的AI

比对着选好的工程进行复制,在复制的过程中删去一些暂时用不到的功能,就搞出了如下界面。


有了棋盘,让我们开始下棋吧。可是这是我还对五子棋的规则一知半解,是个门外汉。只好采用投石问路的方法,先来个简单的吧,随机生成合法落子位置。

首先将棋盘定义为一个整形的二维数组points[16][16],0表示空,1表示黑子,2表示白子。为什么是16,只是觉得用1-15比用0-14直观一些,其实模仿程序是这么定义的。

那么,什么样的位置是合法的呢?就是棋盘上满足points[i][j]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值