TityusAM by PEZ
I decided to discontinue development of AdaptiveMovement
in a mini. I couldn't fit my ideas within the codesize limit without sacrifice of either important functionality or my code clarity principles. I made a small tweak. Changed the colors and now freeze this bot under the name of Paolo
It's a Tityus
with experimental AdaptiveMovement
. (Segmented adaptive movement at that.) Since everyone is doing adaptive movement these days, I decided it was time for a MiniBot
with this feature. If the first attempts doesn't work out, don't blame AM or that it doesn't fit in a mini. It's probably just me who have simplified it too far or not tuned it correctly.
- January 10 2003 - Version 0.8.3 released
- Raiko seemed to gain by reducing the number of guess factor slots. I'll try that too.
- Tuned AdaptiveMovement.
- Comes packaged with 50 rounds worth of data on a lot of RoboRumble participants.
- January 9 2003 - Recalling version 0.8.2
- I obviously didn't get it right this time. I think it might perform slightly, slightly worse than the same bot without the adaptive feature. That's just a theory.
- Reference general: Rank #8, rating 1826
- Reference mini: Rank #5, rating 1816
- January 8 2003 - Version 0.8.2 released
- It's the first version really. I tried to keep the version number in sync with Tityus but got it wrong...)
Please test it: http://www.robocoderepository.com/BotDetail.jsp?id=1947
Why two Tityuses?
I'm releasing it in parallell with Tityus
at the moment. That's because this AM movement is experimental. Naturally, if this bot is successful it will replace Tityus.
Comments and questions welcome as always
It's funny the way I sometimes decide to release a version of a bot or not. With the first version of TityusAM
I tested it against a known head-on targeter and a bot I made for the purpose of testing my adaptive movement, GF1. When it seemed to do about the right thing against those I threw RoboGrapherBot
at it and tuned the adaptiveness somewhat to get a neater profile. Then i tested against the GF0 and GF1 bots again. Still seemed about right. So I then picked the latest version of Shadow
2.21 (since it had just elbowed Tityus
down a step on the ranking). I only tested 100 rounds, but TityusAM
won clearly. Hey, it wins against #3, a bot that only loses against two other bots; #1 and #2. It must be the best bot I have ever created. Yeah, right. It's a good bot. Very good. Three weeks ago I would have printed the ranking table and saved for my wall-paper collection. But now, it's clearly not as good as it's sibling. It still beats Shadow though. I'm not sure if it does it in the long run, but in 100 round battles and shorter it has an edge. That's pretty cool! Maybe I can tune the adapter better and still win against Shadow, that would be something to write home about. Watch out for the next version of TityusAM
! -- PEZ
It doesn't beat Shadow in 1000 rounds, I tested ;). Btw, I found a third bot that beats Shadow 2.11 over 1000 rounds, can you guess the package name? Yep, pez.clean.Swiffer, your multimode with mirror movement in the mix must confuse my gun. Anyway, Shadow is probably not a good adaptive movement tester, since it doesn't have a GF gun. I'm sure it's all about fine tuning, this "adaptive" trend makes it even harder to optimise a movement, you get many new variables to tweak. I was very lucky to have quickly found a way to make it adaptive (read: dodge simple guns) without braking too much of the original movement, but I think I'm still far away from a true intelligent adaptive movement. Shadow 2.11 is basically Shadow 2.15 without it's HeadOnTargeting problem bots... -- ABC
I tested too and it was a tie, with some points in favour for TityusAM. Adaptive movement should be strong against non-statistical targeting too I think. Any learning targeting method should have problems when a bot changes guess factors. I have, from my day 1 of Robocoding, always thought of targeting as a bearing issue only. But Shadow has a very fast learning gun so it might be less vulnerable. At least we can't draw the conclusion that Shadow is weak against AdaptiveMovement from a wrongly tuned or, in the worst case, wrongly designed implementation. =) I tested against Shadow to see that the movement wasn't entirely broken. Which it isn't obviously. So Swiffer beats Shadow, huh? That gladdens a bot daddy's heart to hear! -- PEZ
Just to settle the issue I ran 100000 rouds on my work PC over the weekend:
1st: pez.mini.TityusAM 0.8.2 740109 235050 47010 408394 49629 25 0 4718 5291
2nd: abc.Shadow 2.21 729814 264550 52910 363969 48280 104 0 5315 4701
I guess we can call it a tie. And also draw the conclusion that certain types and certain tuning of AdaptiveMovement
works against Tron
Less than 1% advantage over 10k rounds is probably the closest tie I have ever seen :). Anyway, of course AdaptiveMovement works against my gun too, it's just that it is probably not the "average" gun these days. You can get very good results against the "average" (GF) gun and lose badly against mine (or the other way around). I believe I'm very close to a perfectly flat movement in my latest development efforts, I can now precisely control the output of SmogPainter/FloodGrapher? at will, the only thing keeping me from publishing a bot that has a chance in the CurveFlatteningChallenge is the fact that it loses almost 40/60 against Shadow 2.15/2.21, while still performing slightly better against other top bots (beats Raiko, f.e.). It's probably the adaptive part that I didn't get exactly right yet, I'll keep searching... ;) -- ABC
Now I'm envious. -- PEZ