网站大量收购闲置独家精品文档,联系QQ:2885784924

I基于的手机围棋游戏的设计 I2).docVIP

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
6 张国平等:基于 J2ME 的手机围棋游戏的设计 第 41 卷 图 2 LCDUI 体系结构 Bound )在 Tree Search 上的应用。而 UCB 本来是为了解决 吃角子老虎机问题( Bandit Problem )而产生的。 UCB 公式 表示如下(也称为 UCB1) [ 8~9 ] : 珡 X j + 2logn T j ( n 槡 ) (1 ) 珡 X j 是第 j 台机器到目前为止的平均收益; T j ( n )是第 j 台 机器被测试的次数; n 是所有机器目前被测试的总次数。 让式( 1 )的值最大的机器将是下一个被选择的机器。前项 即为此台机器的过去表现,后项则是调整参数。 而 UCB1-TUNED 是相对于 UCB1 实验较佳的配置策 略 [1 0] 。 UCB1-TUNED 的公式如下 V j ( s )= 1 g ∑ s Y=1 珡 X 2 j , ( ) Y - 珡 X 2 j , S + 2logn 槡 g (2 ) 珡 X j + logn T j ( n ) min 1 4 , V j ( T j ( n 槡{ } )) (3 ) 让式( 3 )的值最大的机器将是下一个被选择来测试的 机器。 UCT( UCB for Tree Search )其 实 就 是 把 UCB1 或 UCB1-TUNED (统称为 UCB )等公式运用于 Tree Search 上 的一个方法。 4.1.2 UCT 算法的流程设计 UCT 算法的流程大致分为如下四个部分: 1 )选择节点,在游戏树中选择子节点; 2 )展开节点,生成新的子节点; 3 )棋局模拟,执行模拟的棋局; 4 )回馈更新,将模拟棋局的结果以回溯方式更新游戏 树节点的信息。 UCT 算法的具体流程示意图如图 3 所示。 4.2  软件关键功能模块设计和实现 4.2.1  进度条的设计 进度条是玩家启动程序后显示的第一个界面。这个界 面由两个 paint ()方法来实现, paintlogo2 (g )和 paint3 (g , 20, 250, 100* (n um) /4 0, 20, 30, 230, 30, 30, 200 );前者是绘 制进度上方的图片,后者是绘制进度和进度条上边的数字。 在进度显示的过程中向 JVM 建议垃圾回收,资源的回收由 JVM 垃圾回收机控制。进度要由线程来控制显示。 4.2.2  提子模块的设计 把无气之子提出盘外的手段叫提子。提子功能是自动 实现的。无轮是玩家还是计算机提子都可以实现还可以判 断哪个地方不可以下子。用 Vector dots 来存储在棋盘上 的所有棋子。保存所有已下的棋子,包括在棋盘上的所有 棋子和被提掉的,若某一次落子没有造成提子,则 Vector dots 中保存的就是这个棋子;若某一次落子造成了提子,则 Vector dots 中保存的就是一个 Vector ;这个 Vector 中包括 所有被这个棋子提掉的棋子即棋子本身。 图 3 UCT 流程示意图 4.2.3  让子模块的设计 让子是只有玩家和计算机都可以拥有的功能,在进行 游戏之前点击让子按钮,在玩家和计算机让子的文本框中 的一个文本框中写入让子数,让子数不能超过四子,若超过 会出现警告,警告框会在 3s 后自动消失,之后会返回填写 输入让子数的界面。输入让子数后点击保存,若是计算机 就会出现比让子数目的棋子多一个棋子在棋盘上,若是玩 家会出现让子数目的棋子在棋盘上。 4.2.4  悔棋模块的设计 悔棋是只有玩家可以拥有的功能,点击一次可以悔棋一 次,最多可以悔棋五步。最初的时候是不能悔棋的。栈数据 结构存储最后十步棋,由于栈是后进先出,很符合悔棋的功 能。点击悔棋玩家和计算机同时去掉一个子。将保存的该 棋子设置为空,棋子数减去 2 ,由画布将这些棋子去掉。 4.2.5  自定义棋盘模块的设计 手机围棋游戏定义了四种棋盘大小,分别是: 7×7; 9× 9; 15×15; 19×19 。具体表示如下:当 choice.getSelectedIn- dex ()的值为 0 ,表示棋盘的大小为 7×7 ;若为 1 表示棋盘 的大小为 9×9 ;若为 2 表示棋盘的大小为 15×15 。若为 3 表示棋盘的大小为 19×19。 5  软件部分运行结果 图 4  进度显示界面图    图 5  下棋界面图 图 6  悔棋后的界面图    图 7  游戏设置界面图摘   要   论文以围棋游戏为基础,采用当前移动领域比较流行的 J2ME 技术和 LCDUI 技术,实现了人机对战游戏,游戏设计过程中对 提子功能、游戏对战、加载棋盘、自定义棋盘设置等核心技术作了详细的分析和设计,游戏在 Sony Ericsson 模拟器环境上进行了仿真实验

文档评论(0)

huhongjun + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档