人工智能上机报告.doc

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
人工智能上机报告.doc

人工智能上机报告 项目: 班级: 学号: 姓名: 指导老师: 2013年6月 目录 一:实验项目 2 二:程序结构及相关内容介绍 2 三:程序运行界面及使用说明 2 四:主要代码 8 Chessboard.cs 8 Computer.cs 13 Rule.cs 18 Stone.cs 31 一: 1. 实验目的 理解和掌握博弈树的启发式搜索过程和α-β2. 实验环境 在微型计算机上,任选一种编程语言。 3. (1) 设计一个15行15列棋盘,要求自行给出估价函数,按极大极小搜索方法,并采用α-β剪枝技术。 (2) 采用人机对弈方式,对弈双方设置不同颜色的棋子,一方走完一步后,等待对方走步,对弈过程的每个棋局都在屏幕上显示出来。当某一方在横、竖或斜方向上先有5个棋子连成一线时,该方为赢。 (3) 提交1篇实验报告,以及完整的软件系统和相关文档,包括源程序和可执行程序。 二:结构及相关内容介绍 两个窗体:一个游戏进行的主界面orm 4,一个对游戏的说明: Form 4_1存在orms 文件夹中: 在文件夹ab 4 中添加了用于功能实现的类是hessboard.cs Computer.cs Rule.cs Stone.cs 在窗体控件的函数中调用这些类和函数,实现程序运行。 三:界面及使用说明 主窗体如下: 首先,在主窗体的enustrip 中点击“Lab4 棋” 呈现出游戏界面如下所示: 可以看出游戏共由:棋盘,棋子坐标,选择棋子,棋子位置记录及游戏设置、说明五部分组成。 在窗口的左上角,是游戏说明与设置部分: 点击“游戏”可以设置:决定是由玩家走第一步棋还是由电脑走第一步,在所选项前打钩即可,程序默认“玩家先”,如果选择了“电脑先” 则电脑随即在棋盘上安排第一个棋子。点击”关闭”会退出游戏,但是不结束整个程序的运行。 点击”帮助(H)“下拉菜单的第一项,会出现关于游戏的说明窗口:指导玩家进行游戏。 程序有记录坐标位置的功能,随着玩家的鼠标在棋盘上移动,”棋子坐标“一栏内的X,Y 坐标会随之变动,这只是后台记录数据的显示,在决定电脑下棋位置中有重要作用,玩家可以忽略此信息。 在选择棋子框中显示程序设定好的棋子。 玩家在决定放棋子的格点点击棋盘,会显示出玩家的棋子,计算机自动做出反应,游戏进行下去。 在此过程中,界面上历史记录一栏内会随时记录下黑白棋子的位置坐标: 游戏进行,直到白棋或黑棋首先达到五子连成一线,则系统显示获胜方: 整个游戏程序界面美观,设计人性化,操作方便。 四:主要代码 using System; using System.Collections.Generic; using System.Linq; using System.Text; using AI.Lab4; using System.Drawing; using System.Windows.Forms; namespace AI.Lab4 { class Chessboard { private int[,] arrchessboard = new int[15, 15]; //绘?制?的ì?对?象¨? private Graphics mg; //棋?子á¨?对?象¨? private Stone stone; //电ì?脑?对?象¨? private Computer computer; //判D断?当ì?à前??棋?子á¨?是o?黑¨2(true)是o?白??á(false) private bool stoneflag = true; //判D断?先¨¨手o?玩a?家¨°(ê?§是o?电ì?脑?(true)还1是o?人¨?(false),ê?先¨¨手o?下?黑¨2棋?)ê? private bool mplayfirstflag = false; //历¤¨2史o?¤记?录?堆?栈? private Stackstring mStarckHistory = new Stackstring(); /// summary /// 历¤¨2史o?¤记?录?属o?性? /// /summary public Stackstring Sta

文档评论(0)

xinshengwencai + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:5311233133000002

1亿VIP精品文档

相关文档