OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3964|回复: 3

燕山大学第四届DIY达人赛二等奖作品:betago

[复制链接]

1

主题

1

帖子

0

精华

新手入门

积分
9
金钱
6
注册时间
2016-5-8
在线时间
0 小时
发表于 2016-5-8 17:12:20 | 显示全部楼层 |阅读模式
3金钱

作品背景:


“α狗”是“Alpha Go”,智能计算系统。“α”是第一个希腊字母,代表了开始,一个人工智能时代的开始,为了顺应科技潮流,我们设计并实现了βGo的五子棋的人机对战
设计思路:

(1)初始化:首先,建立盘面数组Table[15][15]、
             棋型表Computer[15][15][4]
             Player[15][15][4];
(2)主循环控制模块:主要担当一个调度者的角色。
(3)玩家下子:在Table[15][15]数组的相应地方记录‘2’,以        
  表明该子是玩家下的。
(4)盘面分析填写棋型表:人工智能算法的根本依据!
(5)电脑下子:现在要作的就是让电脑知道在哪一点下子了。其中
最简单的计算方法,就是遍历棋型表Computer[15][15][4]和Play
er[15][15][4]找出其中数值最大的一点,在该点下子即可。
(6)胜败判定:务须多言,某方形成五子连即获胜;


心得体会:
这次制作人机对战五子棋,从一横一竖的棋盘制作,到键盘鼠标控制棋子下落,最终达到MFC的界面优化。从简单的人人对战判断输赢,到最终实现人机对战,甚至运用极大极小算法设置计算机智力等级。一行行代码,一次次编译失败,一次次调试,我们收获了C的乐趣,体会了编程的魅力。
未来展望:
当然还有太多的需要改进和提升的地方了,我们暂时还没有实现悔棋和添加残局的功能,希望在以后的学习中能够实现。



betago.zip

14.32 MB, 下载次数: 824

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

558

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
164883
金钱
164883
注册时间
2010-12-1
在线时间
2099 小时
发表于 2016-5-11 21:56:52 | 显示全部楼层
回复

使用道具 举报

0

主题

6

帖子

0

精华

新手上路

积分
48
金钱
48
注册时间
2013-6-3
在线时间
5 小时
发表于 2016-5-14 17:11:14 | 显示全部楼层
楼主厉害啊,βgo不错。
DIYer
回复

使用道具 举报

24

主题

695

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1665
金钱
1665
注册时间
2016-4-29
在线时间
266 小时
发表于 2016-5-18 22:18:40 | 显示全部楼层
以前写过,但因某些原因难产了,关于棋谱功能,一个格子三种状态,黑,白,空,建一个对应所有格子的二维数组,这个二维数组就是棋谱
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-5-24 07:36

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表