GravityWave

From Robowiki
Revision as of 21:25, 11 June 2009 by J Litewski (talk | contribs) (→‎What I'm Working On: added branches)
Jump to navigation Jump to search
GravityWave
Author(s) Jacob Litewsk
Extends AdvancedRobot
Current Version alpha2

Basic Information

Bot Name
GravityWave
Author
Jacob Litewski
Extends
AdvancedRobot
What's special about it?
It's my attempt at a semi-good Wave Surfing movement
Great, I want to try it. Where can I download it?
Currently, there isn't a download link
How competitive is it?
Against DustBunny 3.8, without shooting, does fairly well. The current results are:
1st	hackhalotwo.GravityWave	30167 (74%)	23900	4800	0	0	1366	102	480	20	0
2nd	mld.DustBunny 3.8	10368 (26%)	1000	200	8926	166	76	0	20	480	0
This is the newest test against RaikoMX:
1st	jam.RaikoMX 0.32	52184 (73%)	9350	1870	38938	2025	1	0	187	313	0
2nd	hackhalotwo.GravityWave	19159 (27%)	15600	3130	0	0	373	56	313	187	0


The tests I do are here.

Strategy

How does it move?
Using BasicSurfer as a base for the WaveSurfer. In Version alpha2, it uses a hacked together 2D segmentation array based on Distance from the enemy (in 13 increments) (meaning [(int)(distance/100)][BINS]). I'm planning on making this a 3D array to store the enemy's gun power depending on the distance (or [(int)(power)][(int)(distance/100)][BINS]).
How does it fire?
It's a non-firing robot
How does it dodge bullets?
The BasicSurfer detection algorithm with a hacked together 2D Segmented BIN
How does the melee strategy differ from One-on-one strategy?
Not sure, never tested it.
How does it select a target to attack/avoid in melee?
First one seen I guess
What does it save between rounds and matches?
It saves between rounds currently. I'm testing and working out the bugs for saving the Segmented Array between matches.

Additional Information

Where did you get the name?
GravityWave is basically a mix of WaveSurfing and Anti-Gravity.
Can I use your code?
It will be in GITS when a good stable version comes out
What's next for your robot?
work on fixing and perfecting the movement
Does it have any White Whales?
Not currently
What other robot(s) is it based on?
Voidious's BasicSurfer

What I'm Working On

Bin Smoothing
I'm working on implementing a Bin Smoothing function that runs every x ticks to reduce or hinder small spikes. I'm thinking every 200 ticks will be enough.
Waves
I'm working on implementing a better Wave detection script. My first feat is moving all the Wave detection functions from the robot and puting them in their own class.
Wall Smoothing
I'm working on implementing a better Wall Smoothing function. This is most likely going to come after I finish up the new Wave function.
Segmentation -- Current Project
I'm working on implementing a 3D (possibly 4D...) Segmented BIN Array in the [power][distance/100][BIN] fassion.
Finished and Tested 2D Segmented BIN Array
Testing saving and loading of Segmented Data
2D Segmented Array Load Finished
2D Segmented Array Save Finished