graduate capstone project breaking walls: developing a success f ul robot in roboc od e

23
Graduate Capstone Project Breaking Walls: Developing a Successful Robot in Robocode Chris Velez [email protected] Summer 2011 Advisor :Dr. Xiang Fu Committee Members: Dr. Habib Ammari, Dr. Chuck Liang 1

Upload: decker

Post on 23-Feb-2016

38 views

Category:

Documents


0 download

DESCRIPTION

Graduate Capstone Project Breaking Walls: Developing a Success f ul Robot in Roboc od e. Chris Velez [email protected] Summer 2011 Advisor :Dr. Xiang Fu Committee Members: Dr. Habib Ammari , Dr. Chuck Liang. Overview. Introduction Problem Algorithm Design Performance - PowerPoint PPT Presentation

TRANSCRIPT

Graduate Capstone Project Breaking Walls: Developing a Successful Robot in Robocode

Graduate Capstone ProjectBreaking Walls: Developing a Successful Robot in RobocodeChris [email protected] 2011Advisor :Dr. Xiang FuCommittee Members:Dr. Habib Ammari, Dr. Chuck Liang

1OverviewIntroductionProblemAlgorithmDesignPerformanceConclusion

2What is Robocode?Game where robots battle in an arenaRobots are controlled via Java programsBattles consists of 10 roundsA battle ends when robot is destroyed

3

Anatomy of a Robot

4

The ProblemGoal: Defeat the robotWalls

Walls is the top performing robot

Must create a robot to defeat Walls

5The WallsKiller RobotContribution: Creation of WallsKiller

WallsKiller defeats Walls in 1 on 1 combat.

Maintains a high level of performance

6What Does WallsKiller do?Implements a firing algorithm developed to hit Walls

Uses an erratic movement pattern to avoid enemy fire

7The AlgorithmTakes advantages of Walls predictable movements

Predicts the movements of the Walls robot

Uses quadratic equations

8Walls Behavior9

The Cosine RuleWill utilize rule and apply to the positions of Walls and Wallskiller

10Applying Cosine Rule11

AlphaBeta

DesignWallsKillerRobot

BattleData

FireControlSystem

FireCommand

QuadraticEqRoots

1213

WallsKillerRobotBase classControls movement and firing commandsBattle event handlers

14

BattleDataX,Y Coordinate dataDistance, heading and bearingEnemy heading, bearing and velocity

15

FireControlSystemImplements firing algorithmCalculates firing anglePasses information to FireCommand

16

FireCommandChoose whether or not to fireSet power of bulletsDetermines degrees to rotate gun

17

QuadraticEqRootsImplementes advanced mathematicsReturns data to FireControlSystem

18

PerformanceHit Rate 70%Average Remaining Health: 77 EnergyRobocode Score: 72%

19

ObservationsHit percentage under 100%

Walls turning

Improved evasion20

ConclusionSuccessful in 1-on-1 combat

Performance shows room for improvement

Needs improved movement algorithm

21ReferencesMathew Nelson, "Robocode", available at http://robocode.sourceforge.net/, retrieved 06/01/2009.

Parker S, Secrets from the Robocode Masters: Predictive Targeting, http://www.imb.com/developerworks/java/library/j-pred-targeting/ (2002)

Eisenstein, J.: Evolving robocode tank fighters. Technical Report AIM-2003-023, AI Lab, Massachuesetts Institute of Technology (2003)

F.N. Larsend, Robocode Scoring Available: http://robowiki.net/wiki/Robocode/Scoring (2010)

S.Li,Rockem sock em robocode!, http://www.ibm.com/developerworks/java/library/j-robocode/ (2002)

22References cont.Shichel S, Ziserman E, Sipper M,: GP-Robocode: Using genetic programming to evolve robocode players. Ben-Gurion University, Department of Computer Science.

Kobayashi K, Uchida Y, Wantabe K,: A study of Battle Stragety for Robocode. SIC Annual Conference, Fubuki University Japan (2003)

J.L Nielson and B.F Jensen, Modern AI for Games: Robocode. http://www.jonnielson.net/RoboReportOfficial.pdf, (2010)

J. Hong and S. Cho, Evolution of emergent behaviors for shooting game characters in Robocode, Evolutionary Computation, pp. 634-638, 2004

23