您好,欢迎光临本网站![请登录][注册会员]  
文件名称: 爱恩斯坦棋开发手册.pdf
  所属分类: 其他
  开发工具:
  文件大小: 557kb
  下载次数: 0
  上传时间: 2019-10-11
  提 供 者: qq_40******
 详细说明:爱恩斯坦棋开发文档,包括很详细的代码开发,是使用JAVA!爱恩斯坦棋介绍 爱恩斯坦棋,德语为 Ein Stein wurfelt nicht!,简称EWN,是德国的教授Ingo Althofer为纪念爱因斯坦相对论诞生100周年而发明的游戏,于2005年德国爱 因斯坦年官方展览。爱恩斯坦棋的德语直译为“爱因斯坦不投骰子!”,它的发明 来源于爱因斯坦说过的一句话:“我相信上帝不玩骰子”。 爱恩斯坦棋的棋盘由5×5大小的正方形棋位组成,且对弈方分别标记为红 方和蓝方,红蓝双方分别有标记为1~6号数字的棋子。双方走子前需要对棋盘布 局,布局位置如图1.1(a所示,红方的棋子可在棋盘左上角的六个棋位随意放置, 蓝方的棋子在右下角的六个棋位随意放置。 项[口 Xa (蓝3X(红6 蓝3红6 红3 蓝3)(红2 红2 蓝2 蓝5蓝1 蓝4X(蓝2蓝6 (a)初始布局(b)合法移动方向(c)到达角部位置(d)吃掉全部棋子 图1.1爱恩斯坦棋规则 完成棋盘布局后,双方轮流行棋,先行方即可以是红方也可以是蓝方。行棋 分为两个步骤:投骰子和走动棋子。 首先,行棋方投掷骰子,根椐骰子点数来确定本次行棋可走动的棋子。如果 棋盘上存在编号与骰子点数相同的棋子,则只能走动该棋子,否则可在大于或小 于骰子点数并且接近该点数的棋子中选择一个走动。例如在图1.1(b)中,假设投 掷到的骰子点数为3,蓝方只能走动蓝3棋子,红方可走动红2和红6中的仁意 个棋子 其次,行棋方走动指定的棋子。允许的移动方向如图1.1(b)所示,红方棋子 可向右方、下方、右下方走动,监方棋子可向左方、上方、左上方走动。每次行 棋只能走动一格棋位,且不允许眺格。如果目标棋位上存在棋子,则该棋子被移 出棋盘(即该棋子被吃掉),既可吃口方棋子也可吃对方棋子。 对弈获胜的方式有两条,满足任意一条即可获胜:第一,已方的棋子率先走 动到对方角部棋位,如图1.1(c)所示,蓝3走动到左上方顶点位置后获胜;第二, 己方率先吃掉对方全部棋子,如图1.1(d所示,蓝2吃掉红1后获胜。 中国大学生计算机博弈大赛对比赛时间和先后手进行了限制。甲乙双方共对 阵7局,第1、4、5局甲方先手,第2、3、6、7局乙方先手,先胜4局者为胜 (此为国赛规则,并非校赛规则)。每局每方限时4分钟,超吋判负。 环境配置与系统运行 2.1硬件环境 EWNavaSyetem可在个人电脑上进行开发,其硬件配置需求如表2.1所示。 表2.1硬件运行环境 硬件需求 推荐配置 CPU ntelR) CoreTM i3及以上CPU 内存大小 4GB及以上 硬盘大小 10GB以上 显示器分辨率 建议1920*1080 22软件环境 操作系统: Microsoft windows10、8、764位 编程语言:Java8 开发环境: Apache Maven36.0 开发工具(IDE): Eclipse Photon Release(4.8.0) 23项目导入 打开 clipse IDE编程工具,点击工具栏中的“文件”→“导入”按钮,会弹 出“导入”窗口。在该窗口中选择“ Maven”→“ Existing Maven Projects”选项 (最新的 Eclipse默认安装了 Apache maven工具,如果没有“ Maven”选项,则 需要手动安装 Maven或下载最新版 eclipse),并单击“下一步”,此时会弹出 “ Import maven Projects”窗口,如图2.1所示。之后,单击“ Browse..”按钮, 选择“ EWNJavaSystem”文件夹,并点“完成”按钮即可导入项目。导入后的 项目文件可在“包资源管理器”中查看,如图2.2所示。 包资源管理X四 Maven Projects Select Maver proje"1s A srr/ma n/jau p盟 ahu ewr Ruv! Diretvry国习我成果博平台建思坦WNay丬 D翻 ahu ewr. board 〓 ahu ewn, game M/ewn/pcm.xml ahu: n: C0.1-SNAPSIIOTjar 噩 abu ewr. record b E ahu ewn strategy. d ce Select Tree t H ahu cwr stratcgy evaluation Deselect ree b E ahu ewn strategy. initial t di ahu ewr, strategy,move 翻 ahu ewn,i p s src/test/java D副东统库2Sk-1 A project(s)to working sat 色du >Advanced targe 自 hs err pid 10048log 自 hs err pid5404l 自 newfile eld p。 mxl 图2.1 Maven项目导入 图22项目文件 24系统运行 木系统的执行入口位于 ahu ewn包的App类,运行Ap类后即可显示系统 界面,如图2.3所示 色安前大学 赛日期03.26:7 布局渐随机布局 :○红◎篮 二等 随机直仙值超等路 搜宾不衰C F测试:厂 对冶轮热C 红方O巩家日防○玩冢◎申 蓝方且轮C o旦脐玩家电 下 红 骰子01203C405 每楫 双堂数1 图23 EWNJavaSystem主界面 3系统使用说明 如图3.1所示,系统界面分为六个功能面板:棋盘显示面板、游戏控制面板、 数据显示面板、棋谱面板、簑略配冒面板和白动对弈面板。 安大学 2)(1 比费日期2019.0321 红巧 布后策机布局 棋盘显示实我° 数据显示和物 执行于旧2 估值 策略配置 搜突采度3 42 代久款 出行间 4)(5 铁代3 游戏空制 游戏控制 布同 t[RED] [BLUE ][null] 余轮数7 D:D2-1;E2-2;E3-3;I1 蓝力获胜化菜 红方获胜轮 图3.1功能面板分布 31棋盘显示面板 棋盘显示面板负责棋盘的显示和玩家下棋功能。由于爱恩斯坦棋分为布局和 行棋两个阶段,游戏开始后,该面板会显示初始的棋盘布局情况,布局结束后显 示当前的对弈棋盘。 如果用户在游戏控制面板中设置了“玩家布局”或“玩家走子”,那么用户 可以通过拖动棋子实现布局或走子。在“玩家布局”中,用户可以通过鼠标“拖 动”一方的所有棋子,并且被拖动的棋子可以覆盖目标位置上的棋子,以实现恢 复残局功能(如果对弈中途系统意外崩溃,可以恢复棋局)。在“玩家走子”中, 用户以能拖动符合规则的棋子,并且棋子只能拖动刭符合规则的棋位上。例如在 图3.1中,如果蓝方的骰子点数为2,那么用户只能拖动蓝2棋子到左、上、左 上方三个棋位上,蓝4和蓝5无法拖动。 3.2游戏控制面板 游戏控制面板负责控制对弈的进程,设置红蓝方“玩家、电脑”走子,以及 骰子点数 该面板右排第一个按钮为开始/重置按钮。游戏未开始时显示“布局”字样, 点击按钮后进入布局阶段,按钮显小“确认”字样,此时可以进行布局。布局完 成后点击“确认”进入行棋阶段,接钮显示“重置”字样。点击“重置”时直接 结束当前游戏,开始新游戏的布局阶段。第二个按钮为投骰子按钮,点击后可以 随杋生成一个骰子点数。第三个按钮为下棋按钮,如果是“电脑下棋”,则点击 下棋按钮后系统就会根据指定的策略行棋,如果是“玩家下棋”,用户可以拖动 符合规则的棋子,确认无误后点击下棋按钮即可行棋。第四个按钮为悔棋按钮, 点击一次悔一步棋,直至悔至初始布局棋盘。 游戏控制面板的左上方包含红蓝双方的人/机布局和人/机走子按钮组,用于 切换人-人、人-机、机-机对弈。左下方包含骰子点数按钮组,可以直接指定一个 骰了点数 33数据显示面板 该面板用于显示对弈的数据,能显示红蓝双方的走子策略数据(执行时间、 估值、搜索深度、迭代次数,详见 MoveStrategy类的APl文档)、比赛信息.(吋 间、地点、名称)、先手方和行棋方。 34棋谱面板 棋谱面板用于显示和保存棋谱,即对弈过程,棋谱格式参考2018国赛棋谱 标准(htp:/ computergames caal. cn/info/, newsl80708htm)。棋谱中的比赛吋间由 系统白动设置,比赛地点和名称在数据显示面板中手动输入 35策略配置面板 策略配置面板用于配置红蓝双方的队名、布局策略和走了策略 系统提供两种布局策略:随机布局和定布局ε随机布局是指六个棋子随机 敚置。固定布局中,用户需要手动输入6个数字1~6,并点击确认按钮。系统会 按从上往下,从左往右的顺序摆放棋子。例如:如果红蓝双方都输入:123456, 则生成的初始布局如图3.2所示。 123 4X5 6 23 4 5X6 图3.2固定布局策略的摆放顺序 系统提供三和走子策略:随机走子、直接佔值和自定乂策略,对应的界面如 图3.3所示。随机策略:在所有合法走法中随机选择一个走法进行行棋。直接估 值:模拟所有的合法走沄进行行棋,对行棋后得到的新棋盘进行佔值(给棋盘打 分),最终选择估值最髙的走法。估值方法有两种:随机估值和超级估值,超级 估值是系统为用户提供的接凵,用户可以自己设计估值函数(输入是一张棋盘, 输出是一个数字,详见 ahu ewn strategy evaluation. MySuperEvaluate类)。 系统提供的第三种超级策略是白定乂的策略接口,用户可以白己设计算法, 从合法走法中选择合适的走法(详见 ahuewn. strategy, move. MySuperMove类) 匯机直接估值超级策略随机直接估值超级策略随机直接估值超策暗 ◎随机估值 注:超级策略调用MyS perMove. getmove ○超级估值 超级估值会调用M ySuperEvaluate g evalue( (a)随机策略 (b)直接估值策略 (c)自定义策略 图3.3走子策略 36自动对弈面板 自动对弈面板可以实现机机对弈的自动化,可用于测试红蓝双方的胜率。如 果想使用此功能,用户需在“剩余对弈轮数”中输入自动对弈的轮数,并将红监 双方的“获胜轮数”清零(输入“0”)。点击“开始”按钮后,系统会设貿红监 方为“电脑布局”和“电脑下棋”,并自动地布局→下棋→布局→…,统计胜负情 况。自动对弈期间会自动切换先行方,可以随时点击“暂停”按钮暂停下棋。 自动对弈面板中的观察毫杪数用于控制自动对弈的速度,即两次行棋会间隔 一段时间,毫秒数设置范围:[0-200001 注:自动对弈期间不建议使用其他面板,可能会出错。 37对弈操作过程 一局对弈的完整操作过程如下: 输入比赛地点、名称; 输入红蓝方队名,选择布局策略和走子策略; 选择先手方; 设置红蓝双方是“玩家”还是“电脑”来布局/棋; 点击“布局”按钮,按3.1节所述并完成布局操作; 点击“确认”按钮,进入行棋阶段; 点击“投骰子”按钮或手动输入骰子点数: 如果“电脑”行棋,直接点击“下棋”按钮,完成行棋动作;如果“玩 家”行棋,按规则拖动棋子,确认无误后点击“卜棋”按钮,完成行棋 动作 返回第7步,直至游戏结束 行棋过程中,可以点击“悔棋”按钮悔一步棋,可以随时点击“重置”按钮 重置游戏,也可以随时调整双方的策略,随时设置“玩家”、“电脑”下棋 自动对弈的完整操作过程如下 输入比赛地点、名称 输入红蓝方队名,选择布局策略和走子策略:
(系统自动生成,下载前可以参看下载内容)

下载文件列表

相关说明

  • 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
  • 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度
  • 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
  • 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
  • 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
  • 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.
 相关搜索: undefined
 输入关键字,在本站1000多万海量源码库中尽情搜索: