1. 研究目的与意义(文献综述)
robocode是2001年7月在美国ibm的webalphaworks上公开的机器人(其图形为坦克的形状)战斗仿真引擎。与通常玩的游戏不同的是:参赛者必须利用对机器人进行编程,给机器人涉及智能来自动指挥它,而不是由键盘,鼠标简单的控制。robocode是一种有趣的竞赛性编程,使用几行简单的代码,就能让你创建一个活生生的机器人,一个真正的在屏幕上与其他机器人互相对抗的机器人。你可以看到他在屏幕上四处疾驰。机器人配有雷达和火炮,选手在躲避对手进攻的同时攻击对手,并以此较量得分的多少。它把java语言完善的结合在一起,支持java平台同时也支持robocode的运行。开发者们可创建自己的机器人,把它放到这个平台上,同其他开发者们创建的机器人对手在这个平面上进行战斗。由于在创建机器人的过程中需要加入用户自己独特的策略代码,因此在战场中你会见到以进攻为重点的机器人,同时也会有以防守为重点的机器人。开发者们通过每一次的战斗经历,来了解对手机器人的长处,在不改变机器人自身特点的情况下,去吸收对手机器人的长处来不断的完善自己的机器人,才能使自己的机器人在战场中立于不败之地。可以说robocode的诞生为智能系统的研究提供了一个很好的理论联系实际的实验平台。
开发robocode,是一个极佳的学习java语言的过程,是学习基本语法的好途径:类,方法,事件处理等等。之后,要进一步提高机器人的“智力”水平,仅需要使用更好的策略:如何躲避对手的攻击等。逐渐我会创建更多的类来应对更多情况,随着自己的机器人越来越优秀,自己的编程能力也逐渐越来越高了。
robocode最能吸引编程者投入开发的原因就是有趣,编程者在考虑到机器人躲避炮弹,以及高精度的攻击时,能学习到继承,事件处理和内部类。但它不仅仅是一个教学工具,因为它可以算是一种游戏,让编程者在学习玩robocode得到乐趣时,学会了java,这真的是一种难得的体验,把游戏风潮变成了教学工具。
2. 研究的基本内容与方案
robocode平台内部主要有战斗管理模块,用户界面模块,战斗图形生成系统模块。战斗管理模块负责战斗运行过程的控制。用户界面模块对用户设置比赛的各项参数进行保存以及运行比赛,并提供交互界面。战斗图形生成系统模块提供了对机器人,雷达扫描线,炮弹爆炸的生成功能。且三个模块之间又存在一定的交互。
1)研究的基本内容:熟悉robocode的历史以及研究背景,掌握java开发平台进行robocode开发的技术要点,研究最简单机器人的算法与结构功能,并了解robocode的进化算法。分析各类机器人优缺点,为自创机器人打下基础,并进行不断测试,找出提高战斗力的性能的要点。
2)目标:掌握robocode二次开发技术,分析不同种类机器人性能差异,进行自创机器人的制作并改善。
3. 研究计划与安排
第01周调研、查阅文献,搜集与论文相关的资料;
第02周明确研究内容,阅读相关文献、撰写开题报告;
第03周查阅并翻译外文资料;
4. 参考文献(12篇以上)
[1].王立鹏.浅析java编程中异常处理的方法与技巧[j].科技致富向导,2012,23:320
[2].张桂珠刘丽陈爱国java面向对象程序设计(第2版)北京邮电大学出版社
[3].毕广吉.java程序设计实例教程[m].北京:冶金工业出版社,2007年
课题毕业论文、开题报告、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。