[Home]History of Dookious/DookiSaber

Robo Home | Changes | Preferences | AllPages


Revision 47 . . (edit) November 29, 2006 6:52 EST by Voidious
Revision 46 . . (edit) November 11, 2006 0:25 EST by Voidious [Dookious 1.161 fast learning details]
Revision 37 . . (edit) May 30, 2006 4:23 EST by Voidious [some 1.06 info]
  

Difference (from prior major revision) (minor diff, author diff)

Changed: 1,81c1
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
#REDIRECT Dookious/DookiLightning?

Robo Home | Changes | Preferences | AllPages
Search: