[Home]Dookious/DookiSaber

Robo Home | Dookious | Changes | Preferences | AllPages

Showing revision 37
Dookious's gun is called DookiSaber. (I don't care if it's cheesy! =) )There's nothing particularly unique about it, but it's a pretty good GuessFactor gun that is coming along quite nicely. Here, I'll give some descriptions about Dookious's gun, and also track its scores in the TargetingChallenge2K6 and RRGunChallenge.

(Not every version will have its scores here, because not every version is a gun update, and not every version lasts long enough to make it worth running the test. All the important gun versions get tested, though.)


RRGunChallenge

Version Battles RR Rating Date Comments
1.06 1,220 1884 5/29/2006 First significant improvement to DookiSaber in a while; 10+ points ahead of Dookious 0.98, which used 1.0 gun
1.043 1,080 1873 4/30/2006
1.0 1,053 1869 4/19/2006 This gun update resulted in a 7 point jump for Dookious.
0.965 1,172 1861 4/14/2006
0.96 1,096 1866 4/11/2006


TC2K6 500 rounds

Version BFly CC Chk Cig Cya DM FM Grb RMB Tig Non-Surf Surf Total Seasons
1.06 99.99 68.67 94.49 87.96 79.08 96.04 90.85 92.36 91.88 91.46 93.18 83.43 89.28 1
0.98 99.63 70.85 94.39 88.56 78.93 95.62 93.17 92.79 89.87 91.51 93.27 83.92 89.53 1
0.965 99.98 69.77 93.12 89.88 77.09 95.38 94.28 92.51 92.12 92.93 94.03 83.23 89.71 2
0.91 99.97 71.72 93.52 86.59 78.96 95.61 91.25 92.39 93.32 90.91 93.19 83.78 89.42 3
0.88 99.92 71.26 91.88 85.61 76.89 95.20 91.73 92.65 92.89 92.14 93.00 83.04 89.02 1
0.87 99.95 69.52 94.27 87.49 77.85 95.38 92.57 91.77 92.52 90.80 93.28 83.11 89.21 5
0.82 99.97 69.39 91.82 85.28 74.11 94.58 90.62 92.79 92.12 91.34 92.56 81.67 88.20 4
0.816 99.86 68.09 91.82 82.41 72.89 94.82 89.97 89.48 92.54 92.17 91.51 81.24 87.41 1
0.813 99.86 68.99 90.38 83.40 74.41 94.70 90.72 92.02 91.36 88.75 92.01 80.63 87.46 3
0.81 99.75 69.71 86.74 84.04 75.45 92.08 91.75 93.52 92.24 92.78 92.23 81.17 87.81 1
0.80 99.79 68.89 87.70 82.56 71.84 94.58 90.49 91.28 91.79 91.42 91.75 79.96 87.03 10
0.78 99.65 67.27 89.24 83.43 71.71 92.37 87.85 89.45 87.33 88.73 90.01 79.24 85.70 1
0.76 99.99 66.23 85.33 76.70 72.76 92.13 89.08 88.32 89.29 88.10 89.25 78.11 84.79 1
0.72 99.89 68.93 88.22 80.91 76.17 90.15 87.53 88.00 89.42 93.48 89.32 81.70 86.27 1
0.70 99.65 67.19 88.82 79.95 76.37 92.18 87.43 88.22 88.01 88.79 89.24 80.29 85.66 3
0.65 99.34 67.23 89.30 78.90 74.96 90.47 88.23 85.54 89.04 90.66 88.59 80.54 85.37 1
0.611 99.32 67.71 88.19 78.96 78.6 92.08 89.48 85.89 87.25 84.27 88.83 79.69 85.18 1


TC2K6 FastLearning

Version BFly CC Chk Cig Cya DM FM Grb RMB Tig Non-Surf Surf Total Seasons
0.98 99.82 69.36 88.71 83.45 78.96 93.32 93.49 89.67 88.49 90.80 91.37 81.96 87.61 25
0.965 99.70 70.45 87.26 83.69 75.84 93.29 92.55 89.57 88.76 90.50 91.26 81.01 87.16 50
0.88 99.81 69.97 87.50 82.84 77.75 91.78 93.20 89.86 89.66 90.96 91.19 81.55 87.33 50
0.87 99.51 69.44 86.15 81.73 77.58 91.77 93.11 88.87 90.52 89.11 90.92 80.57 86.78 50
0.82 99.64 69.43 86.47 79.16 74.51 91.21 90.22 87.78 89.40 90.22 89.57 80.16 85.80 25
0.816 99.22 70.82 85.70 80.11 73.38 91.82 92.29 88.78 89.32 90.70 90.26 80.15 86.22 50
0.813 99.49 68.63 83.59 79.53 74.25 91.97 92.97 87.82 89.68 90.43 90.24 79.23 85.84 50
0.80 99.47 69.38 82.61 80.33 72.66 92.10 92.26 89.09 89.23 91.01 90.41 78.92 85.81 50
0.78 98.51 68.49 80.12 78.50 72.61 89.78 90.29 84.49 84.00 89.50 87.60 77.68 83.63 30
0.775 99.32 69.34 82.43 80.55 75.85 90.19 87.61 82.26 83.46 89.40 87.23 79.26 84.04 11
0.76 98.16 67.74 82.36 77.93 72.90 89.49 91.33 84.40 85.31 88.78 87.77 77.95 83.84 15
0.72 98.67 68.49 82.70 79.21 74.09 88.10 90.90 83.36 87.46 91.97 87.95 79.31 84.49 15
0.70 98.13 69.26 82.00 77.55 73.08 89.81 91.82 84.99 85.88 87.45 88.03 77.95 84.00 15
0.65 98.11 68.35 83.73 76.45 73.94 88.65 92.51 84.59 84.81 87.64 87.52 78.42 83.88 15
0.611 98.01 67.25 80.30 76.30 71.96 89.98 90.53 83.11 84.48 81.60 87.07 75.28 82.35 15


DookiSaber uses two guns in a VirtualGuns array. The "Main Gun" is designed for most RoboRumble opponents, while the "AntiSurfer Gun" is designed to hit WaveSurfers (of course) and other adaptive movements. Virtual Bullets are synchronized with real bullets, as opposed to being fired every tick; if the rating for the Main Gun is above a certain point, there is a bias against selecting the AntiSurfer gun when comparing ratings. The ratings use RollingAverages with a rolling depth of 250, or somewhere around 10 rounds.

The general purpose gun uses all waves to collect data, both virtual and fire-time (synched with a real bullet) waves. The virtual waves are weighted less, but since this gun is generally geared towards non-AdaptiveMovement, the weight is still 1/5 for virtual waves. The rolling depth is very high, and it essentially won't roll the stats at all in a normal match.

The AntiSurfer gun uses the same segmentations as the Main Gun, but they may diverge again in the future (as they have in some previous versions.) This gun initially only used firing waves, but now it also uses non-firing waves with a weight of 1/50. It uses a very low rolling depth (currently 3.) The idea is that as a WaveSurfer changes his movement choice for a given segment, all previous data Dookious collected is now becoming inaccurate. It also registers negative GuessFactor hits when a real bullet hits the enemy, to try and simulate (to some degree) how a WaveSurfer adapts to that situation. All in all, I'd say Dookious has one of the strongest AntiSurfer guns in the rumble, but I think there's still a lot of room for improvement in this area.


Once I got to the point that I completely understood WaveSurfing and GuessFactorTargeting - though my implementations were still quite buggy - I started to peek at the source code for some other tanks, particularly CassiusClay. I learned a lot from the Bee gun, particularly about segmentation methods for certain data, but also about general code structure for a tank. Major props go to PEZ for a tank that has taught me a lot. I should also give an honorable mention to Jamougha, whose Raiko gun I took a peek at when working on the TargetingChallenge2K6. I was quite amazed that what seemed like such a simple set of segments could yield such an excellent gun; and I think that was an important thing to learn.

Formal credit needs to go to Paul Evans for being the inventor of GuessFactorTargeting, as well as PEZ for the introduction (although perhaps not solely) of VirtualGuns.


Comments

I'm running the FastLearning benchmark at home right now for 0.813; I'll be very interested to see how it turns out. -- Voidious

Version 0.82 is ditching the 0.81 - 0.816 segmentations and going back to 0.80, and I'll work from there. (Version 0.80 ranked 4-5 points higher than 0.816 and everything else between.) The dev version is using 0.80's gun segmentations, the new AntiSurfer / VirtualGuns stuff introduced in 0.816, and some small (but good) tweaks to the aiming code itself. -- Voidious

While the change in 0.91 is not huge in the TC scores, I do see a good reason to use the precise calculations of GF1 and GF-1 in the gun... In a WaveSurfing movement with PrecisePrediction, you are already only considering the scores of bins that you can actually get to; but in a gun, depending on various factors, what is considered the correct bearing to aim at may actually be an impossible bearing for the enemy to get to. I am sure that's a rare situation, but if the TC scores are the same or better (which they clearly are), it seems advantageous to just make sure that never happens. -- Voidious


Robo Home | Dookious | Changes | Preferences | AllPages
Edit revision 37 of this page | View other revisions | View current revision
Edited May 30, 2006 4:23 EST by Voidious (diff)
Search: