Robo Home | CurveFlatteningChallenge | Changes | Preferences | AllPages

Well, first test, over 500 rounds, this is how a slightly tweaked version of Teancum's new movement does:
1st: pe.SandboxDT 1.91		57282	11700	2340	38574	4667	0	0	235	265	0
2nd: kawigi.sbf.TeancumPassive	15943	13250	2650	0	0	43	0	266	234	0
Index: 27.8%

Do I observe correctly that DT doesn't save data for matches when he's not in normal mode? -- Kawigi

Yes for reference (and challenge) purposes DT does not use, or save statistics on opponents (It saves people having to delete the data file before each run for their best score). DT does learn during the match so a 1000 round match is more difficult than a 100 round match) -- Paul Evans

1st: pe.SandboxDT 1.91	68183	15800	3160	42903	6320	0	0	316	184	0
2nd: rz.GlowBlowAPMRMC	11040	9200	1840	0	0	0	0	184	316	0
index: 16.19%
shame on me. but I have to say that this is the same version I got the APMCIndex. I think I can get a better overall-index if I'd take the movement of the development version of GlowBlowAPM. -- rozu

Made an improvement that could globally improve all the Flood bots (except Nano), and it did even better :-) The nice thing is that it did just as good against the PatternMatcherBot:

1st: pe.SandboxDT 1.91		53523	10450	2090	36805	4177	0	0	209	291	0
2nd: kawigi.sbf.TeancumPassive	17498	14550	2910	0	0	38	0	291	209	0
index: 32.7
Not bad? I might make an 'indexing' version of FloodMini to debug against, too, as he's how I've done curve-flattening tweaking in the recent past. -- Kawigi

DT's score - bot1 is the reference, bot 2 is the challenger:

1st: pe.SandboxDT 1.91 (1)	103946	18650	3730	74107	7459	0	0	373	627	0
2nd: pe.SandboxDT 1.91 (2)	37623	31350	6270	0	0	3	0	627	373	0
--Paul Evans

Frankie 0.9.1mc:

Index 14.72%. Very dissapointing. I must go back to the drawing board with this. -- PEZ

1st: pe.SandboxDT 1.91		66406	14900	2980	42570	5956	0	0	298	202	0
2nd: cx.micro.AshRMC 0.7	12120	10100	2020	0	0	0	0	202	298	0

It is very dissapointing too.~;-[ -- iiley

But mine is more dissapointing. =) -- PEZ

1st: pe.SandboxDT 1.91	        63079	13750	2750	41086	5492	0	0	275	225	0
2nd: cx.micro.SparkRMC 0.6	13500	11250	2250	0	0	0	0	225	275	0

hehe~~,Spark is better.But Frankie's APMC score is very good,PEZ. -- iiley

Yes, and that's strange, because I have really tried making the movement effective against DT and not cared about pattern matchers. Maybe I should do a Pooh-bear thing and do an APM movement instead. =) -- PEZ

Another attempt, this is the same one as is posted for APMChallenge, too (at 37.29% there):

1st: pe.SandboxDT 1.91		52107	9550	1910	36838	3808	0	0	191	309	0
2nd: kawigi.sbf.TeancumPassive	18674	15450	3090	0	0	134	0	309	191	0
Index: 35.84
Staying about even on both fronts ;-) And here's how FloodMini's movement basically does:
1st: pe.SandboxDT 1.91			58837	12600	2520	38690	5027	0	0	252	248	0
2nd: kawigi.sbf.FloodMiniPassive	14931	12400	2480	0	0	51	0	248	252	0
Index: 25.38
And I'm working on tweaking FloodHT's movement for flatness at long distances, here's what it is now:
1st: pe.SandboxDT 1.91		50253	9300	1860	35380	3713	0	0	186	314	0
2nd: kawigi.sbf.FloodRMC2	18913	15700	3140	0	0	73	0	314	186	0
Index: 37.64
-- Kawigi

whoah! that's quite impressive ... and another second place for Paul ;-) Good job Kawigi! -- Vic

Hummm - do you want to try over 1000 rounds? -- Paul Evans

Does that really make such a difference? How many rounds would SandboxDT need to be ready learning? Personally i wouldn't have minded if SandboxDT started with a full data set of the challenger...-- Vic

Can't quite do that, since I'm in the process of mangling it further. Next time I'll do one, just to make you happy :-) That one came from a version of FloodRMC? that FloodMini identified as a tree-stump profile, from about -.3 to +.4. One nice thing about using FloodMini to test is it goes faster (probably because he only has one gun) :-) -- Kawigi

Ok, here's the current maglation. The profile (according to FloodMini, again) is less tree-stump-ish, but a little broader:

1st: pe.SandboxDT 1.91		102081	18400	3680	72656	7345	0	0	368	632	0
2nd: kawigi.sbf.FloodRMC2	38080	31600	6320	0	0	160	0	632	368	0
Index: 37.3
And, for greater consistency, 1000 rounds 2 did something similar:
1st: pe.SandboxDT 1.91		100016	18450	3690	70514	7361	0	0	369	631	0
2nd: kawigi.sbf.FloodRMC2	38050	31550	6310	0	0	190	0	631	369	0
Index 38.04 - ooh, I think I'll use that :-)
-- Kawigi

I'm impressed. Very impressed. You should probably use the lower index, because that's when DT's guns are working the best. Which brings me to answer Vics question on what difference it makes 500 or 1000 rounds. DT is a bit arbritrary in how fast it catches up with a movement. I ran a second 500 rounds with the same Frankie as above and only got an index of 12.3% then. (No, I won't use that, even though I should, I'm working on improving it instead.) Giving it 500 more rounds to figure removes some of the arbritrary quality of the index. But, I insist on using 500 rounds since DT takes forever to run on my machine. -- PEZ

You'll note that while the bullet damage in the second was lower than in the first, the survival rate was surprisingly basically the same (and it's actually one round worse in the second). My main point, though, is not that FloodRMC?'s movement is better than SandboxDT's, but rather that it currently has a comparable profile at long distances. -- Kawigi

Comfort for Paul: Second place is the best of the losers. =) -- PEZ

Could be a fluke or something, but it seems that the more rounds I run (past a certain point, which is around 300 or so), the better I do against a stationary SandboxDT:
1st: pe.SandboxDT 1.91		498900	89950	17990	355062	35898	0	0	1799	3201	0
2nd: kawigi.sbf.FloodRMC2	193086	160050	32010	0	0	1026	0	3201	1799	0
Index: 38.7
-- Kawigi

It's so impressing,Kawigi,i am thinking maybe one of Floods can beat SandboxDT now.~;] -- iiley

If DT's gun gets worse as time goes on it could be a bug - I'll have to investigate. -- Paul Evans

I don't have my usual 'learning' defense, on, either (I just stay far away, generally). I have a bug to hunt down in FloodMini's stat guns, as well, and if I fix it, I'll compare and see if I think something similar could have happened in DT. I'm guessing it's a rounding error or something? He observes a clear spike in a certain movement, and still loses to it for about 100 rounds. DT seems to take 30-50 rounds to figure out the same movement, and I don't have any idea why it should take so long. -- Kawigi

Frankie 0.9.2mc:

Index 16.34%. I don't know what to do about this. It might take a while before I get a 30+ index. -- PEZ

Hmmm... still not up to FloodMini in this category, how does Mako's movement do here? And what are you doing to evaluate your movement, using StatistRobot? You could consider using the FloodMiniStationary and grapher I uploaded with my "MCEntries" zip file on the repository. It seems like people should be able to effectively use it as a tweaking assistant, at least if you have some idea how to do stuff like "more on the right", "less at 0", or "more between the right and 0". And all the graphs are made so that the highest point is at the top, so you can see all the graphs well. -- Kawigi

Yes, StatistRobot. But I'll give FloodMiniStationary a good try now. Thanks! -- PEZ

Mako gets about equal results as Frankie here. I little bit better, if I can port the movement to Frankie it might be enough for me to climb a step in the combined index ladder. But it would feel like a step backwards so I'll keep trying with Frankie. -- PEZ

I just tested the latest Fractal and got an index of 6.2%. I'm so proud :) -- Vuen

Frankie 0.9.5:

Index 24.09%. Slow progress, but still progress. =) -- PEZ

I am running through the challenges now as I am trying to tune my movement profiles some. Here is a fist run of the new and improved Jekyl movement. Hopefully I will be able to tweak this enough to really get to an actual new release someday.

1st: pe.SandboxDT 1.91	124577	26950	5390	81489	10747	0	0	539	461	0
2nd: jekl.Jekyl	        27985	23050	4610	0	0	325	0	461	539	0
Index: 22.45%
I am not going to post this on the front page yet as I am not sure if this is the best I can do. -- jim

I'm starting now to test my robot agains the reference SandboxDT 1.91:
I set the bot as "reference" and I've disabled my firing
I get 0,7%
But I think that the CFC index will lead to a problem... if it happens that I beat the reference bot, (i have more point than him, I'll have an index higher than 100%... I know that it would be quite impossibile to beat the bot.. just in case -- Simonech

In the first challenge (PatternMatcherChallenge) it was required that you pass the 100% barrier to achive the challenge - so far we have only been able to make around 50% on this challenge but there is no reason why you should not be able to exceed 100% - go for it. -- Paul Evans

I am afraid CFC may not give you definitive answer about how flat is your movement. It will be just flattened with respect to DT 1.91 gun segmenting. My usual CFC index is rather low (24.5). Now in my experiments to make some poor-mans active-movement (to attempt to avoid places where opponent shoots most, so cheap try is to increase chances your bot go to such an offset when enemy bullet is fired and hang out there) I get higher CFC index (27-28) but it now loses badly to my reference enemies... -- Frakir

One of the problems with curve flattening is that it also flattens time! Some times you flatten your curve just to make your bot to show clear movement patterns when you unfold the bearing over time. -- Albert

Yeah... I found SandboxDT 2.11 movement is not so flat when your gun has some delta bearing segmenting: Lacrimas, Griffin (according to description it uses VertiLeach gun) can hit it allright -- Frakir

Though VertiLeach doesn't use delta bearing segmentation. But, Griffon does, and so does all my stat guns. Not that I have noticed that I can hit DT 2.11 though, quite the opposite. =) -- PEZ

Ouch, in VertiLeach condition you did registerAimFactor?(blah blah bearingDelta), didn't bother to scroll and check what bearingDelta means... --Frakir

No, I think you remember wrong. I do registerFactorVisits(factorArray, visitedIndex). Just before that I use bearingDelta to calculate what guess factor is visited. Verti uses ReducedDimensionalSegmentation using only the Y coordiniates of it's enemy. Actually I have just discovered that I still have bugs in that code. I have fixed them in the development version, but haven't yet tested if it makes Verti any stronger. -- PEZ

Heh... they're not bugs, they're features! -- Vuen

I'm almost agreeing here. =) In fact I can't see how the targeting works with that bug in place, but it does, which means maybe I was chewing mushrooms or something when I created the gun. -- PEZ

Jekyl's gun had some significant logical bugs until recently, and it did better against the Floods and against Cigaret I think before he fixed it. -- Kawigi

Yeah, maybe it is like Crippa says. "All characters in your bot code counts." Much like Dirk Gently's theory of "the fundamental interconnectedness of all things" (http://en.wikipedia.org/wiki/Dirk_Gently). =) -- PEZ

The mind has amazing powers. It is able to subconsciencely intrepret your true intentions without you even understanding what you did. At least thats what I keep telling myself. -- jim

Shadow has an index of over 50%, doesn't that mean it should be above the dotted line? -- Tango

That's my understanding. I'm moving it and people are free to change that if for some reason I'm wrong. -- Kuuran

WOW! What an incredible score ABC. You are a true King! -- PEZ

question: what's the index here?

1st: rz.Aleph		56467	46850	9370	0	0	247	0	937	63	0
2nd: pe.SandboxDT 1.91	50777	3150	630	45763	1234	0	0	63	937	0
-- rozu

Unless i'm very much mistaken it's 111.2%!!! Bloody hell rozu that's amazing!! --Brainfade

Way cool! Is it a dev version of Aleph or the one currently defending the Swiss colours? -- PEZ

it's the the dev version, though 0.33 would give nearly the same results. This is what AM is all about: you don't need to have a flat profile. the spikes should just be somewhere else then your opponent is currently firing. What I mean is, if the profile would be flatter DTs hitrate would be higher =). against DT 2.91 it looks different (its new gun is working :)). -- rozu

Well, the other problem is that you need to avoid GF1 like the plague against DT 1.91 if the BFT is too high (i.e.- if it's firing power-3 bullets at long distances). Like you said, 2.91 is 'fixed'. -- Kawigi

the result was reproducible so I posted the better one. I also moved the dotted line (100% means they have the same score...). Anyway how about a new MovementChallenge with the newest DT and Shadow (GF and PM). -- rozu

Great idea. Though I would include Raiko too since it's the strongest straight GF gun. -- PEZ

Sure, good idea. In this case we just need a Raiko in reference mode. -- rozu

Easy enough: http:/robocode/uploads/pez/jam.mini.RaikoMC_0.43.jar -- PEZ

Errr, wow! rozu you seriously need to work on targeting. :-) I get a CFC index around 65% and you're a fraction of a point above me, that's insane... Congrats! I really thought no-one would ever complete this challenge. -- Jamougha

thx. I'm not sure about the targeting here but you are probably right. If you don't mind I'll borrow Raikos gun for some tests to see where my work is needed. -- rozu

Feel free. If you can port the gun without breaking it at least. :-) It wasn't built with ease-of-use in mind. -- Jamougha

It's as easy as removing all movement from Raiko.java, stop subclassing AdvancedRobot and forward all the scanned robot event to this class. Also any robot method calls the gun needs to do must be delegated to the real robot. That's how I ported Aristocles gun to Marshmallow. Took about 5 minutes to get it to compile and work as well as it did in the original bot. -- PEZ

Is the challenger allowed to ram DT if it is disabled (this would influence the results alot)??? --deathcon

Well it's energy would be zero, so I guess you would get zero ram damage. And since you never fired, your ram bonus will be sero. So I'm not sure it would be too unbalancing... -- Jamougha

That might be true. But it is not allowed for the challenger to ram the reference bot. -- PEZ

Really? RaikoMX has a nast habit of ramming the opponent at the end of a round, though it's not intentional. I'll fix that the next time I do a CFC. -- Jamougha

Yep. The "addintional" conditions should state this. As you say it probably doesn't matter for your score. But any ramming code should be disabled. Ramming can contaminate an unprepared reference bots stats for instance. -- PEZ

But isn't that just good movement, contaminating the opponent's stats? :-) I guess it would happen more in a challenge than in a normal battle, though. -- Jamougha

Oh, yes, that's good movement. The traditional Marshmallow movement did lots of that stuff. It had methods like willLoose(), wilWin() and the like to decide when to start contaminating. I looked at the M movement code yesterday actually. It was a random movement but it tried to constrain it by never traveling beyond GF1 (or rather, when it thought it had reached GF1 it raised the probability for reverse). I thought it was ridiculous to even try and never appreciated that movement like I should have... And now WaveSurfing takes this ridiculous idea to its extreme and see what it can do! At least for the elite surfers. -- PEZ

Bloody brilliant that idea of "contamination"! Never thought ībout that... It can be very usefull. -- Axe

It's dangerous business though I think. Most good targeters are protected. Even micros like Aristocles checks for low power situations and doesn't update stats in that situation. -- PEZ

Hmmm. I obviously have started to get things working somewhat with WaveSurfing. Though it doesn't show for a bit in Pugilist performance. Must check my code for other bugs I guess... -- PEZ

Let me guess, "doesn't show for a bit" means "lower than a few other AM bots and higher than a few other AM bots" in this case? -- Kawigi

It means, lower ranked than P 1.3.1 which gets 17% in the challenge. I think I have some seriuos bug in P 1.4.2 that keeps its rating down. -- PEZ

I'd like to run this challenge for Toad but I can't find SandboxDT 1.91. Any idea where I can find it? --Florent

Targeting Challenge reference bots: http://robowiki.net/robocode/TCReferenceBots.zip . Cheers. --Corbos

Thanks, but the link is broken. --Florent

I'm not sure where I found it, but I threw it up on my web space for you for now... http://www.dijitari.com/void/robocode/pe.SandboxDT_1.91.jar -- Voidious

Thanks a lot, I'll run the challenge when my 1000 rounds APM challenge is finished (500 rounds took me an hour). --Florent

1	SandboxDT 1.91	35218	3900	780	28987	1550	0	0	79	421	0
2	Toad	        25836	21050	4210	0	0	501	75	422	78	0
index: 73,36% --Florent

I forgot to to disable the ramming at the end of the round in the previous results.

1	SandboxDT 1.91	36261	4100	820	29712	1629	0	0	89	411	0
2	Toad  	        24675	20550	4110	0	0	13	1	418	82	0
index: 68,04% --Florent

Data IO problems?

I just got a CFC index of 96% as an average over 5 seasons. But in Roboleagues output there were complaints about DT not always starting. Checking DT's output window I saw that it sometimes throws data io security exceptions. Anyone else seen that? Would the good 'ol -Dsun.io.useCanonCaches=false do the trick? I'll try that and leave it running over night. -- PEZ

As far as I know, that solves the SecurityException? bug. I thought DT didn't access files in reference mode, anyway? I dunno... In any case, I kinda consider this CFC obsolete since DT doesn't correctly process bullet times over 40. I get about 55% vs CC 1.9996bd, FYI :P -- Voidious

It didn't help putting that in the bat-file for roboleague. Probably DT still reads its datafile, but doesn't write it. The bullet time glitch in DT doesn't matter for CC since it doesn't exploit it. -- PEZ

I thought it was exploited any time a tank is more than 440 pixels away (40 ticks), which I'm pretty sure CC is a lot of the time in the MovementChallenge. Only some rounds make that possible, anyway. I've been using CassiusClay as my reference bot for CurveFlattening for several weeks, and only use DT to get the score to post here. -- Voidious

What I meant was that CC doesn't exploit it on purpose. Unlike Aleph. -- PEZ

Robo Home | CurveFlatteningChallenge | Changes | Preferences | AllPages
Edit text of this page | View other revisions
Last edited January 24, 2006 17:49 EST by PEZ (diff)