Robo Home | MovementChallenge2K7 | Changes | Preferences | AllPages

I would like to see a new movement challenge. And I think it should be more like WaveSurfing/DevilFISHChallenge and WaveSurfing/BarracudaChallenge: the reference bots should move. A good movement needs to get field position, and getting good field position is WAY different with a moving bot than a stationary one. Also, I'm not so sure about the reference bot always firing power 3 bullets. Any thoughts? We should have a mix of bots that fight close & far, as well as a mix of targeting techniques. Reflecting the climate of the rumble should be the main goal in the selection of reference bots. Are you guys in? -- Simonton

I'm down =) I agree that the MovementChallenge is a lot further from reflecting RoboRumble rating than the TargetingChallenge is and that a format change might help. It can certainly only get so close to truly reflecting RoboRumble rating, but I think it could be a lot closer. Do we have a common / fixed gun for this one, then? -- Voidious

No, I was still thinking that the challenger gets no gun. Otherwise we would be tweaking our movement to compliment that gun, not necessarily evade bullets. -- Simonton

Consider this, though: staying far away is always good if you have no gun, but it has pros and cons if you also have a gun, since you'll hit and be hit more often if you stay close. -- Voidious

I agree, both have thier bonuses, enemy robots generally react to gun-fire. Though the Enemy Robot, they fire whatever they fire (and move however they move). --Chase-san

Wow, that's a neat "Edit Conflict" feature in the wiki. Except that it failed my consciousness check (4 * 10 = 40, right?). Anyway ...

Well, I agree you would be tuning your movement to complement a certain gun to whatever degree, but I'm not sure how much that actually matters. I don't believe I've ever seen evidence of movement A + gun A being better than movement B + gun A but movement A + gun B being worse than movement B + gun B. In 1v1, we all use about the same bullet power with some type of learning gun - I think we'd be better off tuning to complement a basic GF gun with power 1.9 bullets than tuning to complement a wide variety of guns that most of us don't use. Just throwing my thoughts out there, though, I'm cool with whatever is agreed upon. We could also just use RandomTargeting or something. -- Voidious

Note: I don't think Dookious would perform better against a RandomTargeting gun than SittingDuck would do ;-) . I am interested though. My ideas for this challenge are kinda the same as Simontons, with some additions. First of all the referencebots should fire a mix of 3.0/1.9 power bullets without energy management. To reflect the rumble, the simpler targeters would fire 3.0, the more sophisticated 1.9. The movement of the referencebots could 'simulate' enemyfire if necessary (on tick 30, 43, 56, 69 etc), to provide a more real movement. I would also like a 'dumb' rammer in, kinda like bbo.RamboT. The idea of 4 guns with 6 movements I dont like, just choose some interesting combinations and thats it. The idea still is that the challenger does not fire, is it? -- GrubbmGait

I think the challenger should run a rather simple GF gun(Raiko's, la normale?), I never knew 1.9 was the defacto(used from 1.6 to 2 myself). At any rate, that gives the enemy something to dodge, and makes them move, however, should we force the reference bot to use a certain power bullet, such as 3? -- Chase-san

Note: I think Dookious would perform worse against a RandomTargeting gun than SittingDuck would do, because Dookious is moving and therefore it covers a greater area where it could be hit :P . I like the idea of having different targeting methods compared with different movement modes. I would propose some random moving bot (or a Surfer, which simulates enemy fire, like GrubbmGait said) as a basic movement for all reference bots. This movement must be fast (from the calculation prospect) and with at least two modes (close/great distance to enemy). I could think of the following combinations:

Part I (to measure the correctness of the challenger at all distances/situations):

Part II (to measure the learning skills):


Maybe you guys misunderstood me - I meant RandomTargeting could be used as the common gun that all challengers used, since the most important aspect to me is that you hit more often when you're closer to the enemy. I didn't mean we should try to dodge RandomTargeting. =) Good thoughts from everyone, though, I'll try and brainstorm a bit more myself too. -- Voidious

Yeah, I think we're coming up with a decent challenge here. I think I like the idea of RandomTargeting (just because you all use GF guns doesn't mean I should have to tune to them :) ). I'm still not sure about firepower. Maybe the reference bots could alternate between 3 and 1.9 on a per-turn basis? Or some of them could use some standard energy managment - that's probably a better idea. Something like getEnergy() / 16, and/or 900 / getDistance() (just because those are my two favorites - we should actually pick something that reflects the rumble well). But we definitely want to make sure our movements work well at a range of firepowers.

Also, I really like the idea of including a RamBot. -- Simonton

Additionally we could turn on challenger-fire only vs. one or two reference bots, in order to test the distancing code. I like the idea of having different reference bot categories to test different parts of the movement. --Krabb

Yeah, I guess I've pretty much settled on a simple learning gun as the best alternative, myself. I buy the idea that GF vs. PM isn't going to make all that much difference, and I think we need something stronger than random targeting to be realistic. If some of the reference bots' movements are stronger than the common gun, and some are weaker, that should give us the opportunity to tweak distancing appropriately. As for whether we fire in every pairing of the challenge, I vote yes. That should make it easiest to automate running the challenge, and again I think the stronger/weaker choices take care of distancing appropriately. I'm all for running some tests to see if firing affects scoring in a bad way - what kind of tests would that be? -- Simonton

I was thinking of some nice kinds of bots to use for this challenge and here is what i've come up with (all bots should use some kind of energy management

Wave Surfing Part

Anti Pattern matching part

Curve Flattening

-- Gorded

This list looks good to me. Except I'm not sure why we need a stationary PM? Perhaps if people want to test their randomness with a stationary competitor they can continue with the existing PM challenge? Also, the original movement challenge had agressive/linear, right? I guess it's no problem to duplicate that, though, since it's just for one reference bot. And again, I agree, having them use energy management sounds right. Wouldn't the lightly segmented GF gun be part of the Curve Flattening part of the challenge, though? -- Simonton

Well, the conversation obviously died, so I guess it must be time for voting. Let me piece together what seems to be the ideas & bots so far. Anyone can add more suggestions for 1 week, then we'll add columns for voting? Sound decent? That would mean we start voting Friday, July 6th. -- Simonton

Reference Targeting / Movement Bot Simonton Voidious Skilgannon Chase-san GrubbmGait Krabb Starrynte Total Votes
Aggressive / Head On X X 2
Aggressive / Linear DevilFISH 0
Splinter X X X X X 5
Aggressive / Simple GF X X X X X X 6
Aggressive / PM 0
Aggressive / Simple Gun VG X X 2
Passive / Head On HawkOnFire X X X X X X X 7
Barracuda 0
Passive / Linear X X 2
Passive / Circular X 1
Passive / PM Waylander X X X X X X 6
Passive / Simple Gun VG X X X X X 5
Stationary / PM 0
Top Rumble Bots Shadow, DT X X X X X X 6
Ramming RamboT X X X X X X X 7

Reference Firepower Simonton Voidious Skilgannon Chase-san GrubbmGait Krabb Starrynte
Simple ones fire 3.0, advanced fire 1.9 X X X
getEnergy() / 16
900 / e.getDistance()
Simple ones fire 3.0, advanced use their advanced system X X X X

Challenger Targeting Bot Simonton Voidious Skilgannon Chase-san GrubbmGait Krabb Starrynte
Simple GF Raiko X X X X X
Simple PM (a la Waylander) X
Head On WSCA :) X
Reverse Head On

Challenger Targeting Part II Simonton Voidious Skilgannon Chase-san GrubbmGait Krabb Starrynte
Challenger always fires X X X X X X
Challenger only fires against some bots X

Challenger Firepower Simonton Voidious Skilgannon Chase-san GrubbmGait Krabb Starrynte
Raiko's X X X X X X X
getEnergy() / 16
900 / e.getDistance()

Hmm - ok then. Let's commence voting. Vote for as many as you'd like in each category, for now. -- Simonton

Ok, we've finally got a second vote in here. I don't know why we always end up having these votes when there's a lull in RoboWiki activity! =) Let's leave this up for a bit, I'm sure we'll get some more votes. I added 1.9 and 3.0 to challenger firepower, by the way, just because they seemed like reasonable options. -- Voidious

I've added a simple pattern matcher to the challenger's targeting method -- Waylander uses symbolic without any folding or anything, and I can tweak it to make it both fast and pluggable. -- Skilgannon

Raiko is the old standby, its been used in many challenges already for its gun. Its tried and true. Not to mention fast. --Chase-san

There is a loooong discussion about what gun the challenger should use on this page, too, if you're interested =) ... Raiko would seem a good choice to fulfill the "Simple GF", but I don't think that was ever really said. It is used in the RRGunChallenge and is definitely a very good choice. (Though it's interesting that Raiko always gets the spotlight when the gun was based off of PEZ's Tityus! ;)) -- Voidious

Finally entered my choices, a new assignment and a two-week vacation does not help to be active here . . . -- GrubbmGait

How about we set a voting deadline of August 24th (next Friday) for this? I think we have a good outline going so far; it'd be fun to start testing against an MC2K7. Then we could just decide how many bots to include and go ahead with finalizing this. Anyone disagree with that plan? -- Voidious

Is it Friday yet? -- Simonton

OK! I say we use 3 top rumble bots & those with votes 5 & higher above. That totals 8 bots in the challenge:

The challenger will fit itself with Raiko's gun. I'll start working on putting some of this together. Does anyone have any good suggestions for the bots without names yet? -- Simonton

Waylander should be modified to prevent the StopAndGo, otherwise it will throw away its first round against Raiko's gun. Just set flat=true at the top. Simple GF+aggressive is rare, maybe a modified version of FloodMini? -- Skilgannon

DevilFISH is the only really aggressive movement I know of, so fitting it with the gun from GFTargetingBot or some such might be the solution to bullet #3; altering a basic RandomMovement (pick your favorite top MicroBot here =)) to have a really close preferred distance would also do the trick. I believe it was passive+VG that was voted in, not passive+GF, right? I hope you don't mind me changing it in the list there; GrubbmGrb (possibly w/modified firepower) fits that bill well, I think. I'm just throwing this out as a question: do we want to use a simple rammer like RamboT, or something more substantial like MaxRisk? (When MaxRisk first came out, it exposed a serious flaw in my handling of rammers and cleaned Dooki's clock, for what it's worth...) Pros & cons each way, I think. -- Voidious

Not quite "pre"-chat:

What do y'all think of this breakdown for scoring? Are the categories good, to have their averages averaged for the overall score? --Simonton

I found a serious bug in Waylander 0.1.10. When it tries to remove the oldest data from its StringBuilder?, it removes the most recent instead. This should affect AM bots more than others, because after 15000 ticks it doesn't learn anything new for the next round. I strongly suggest it gets changed for 0.1.14. Sorry about that. -- Skilgannon

Quick question (without actually testing myself)... I was thinking, for some reason, that this challenge would only be 35-rounds. The 500 and 35-round variants make sense just fine, but does Waylander slow down drastically (as many PMs do) as you get up in rounds? This is a key reason we used Che for MC2K6. -- Voidious

Oops - I forgot one of the reference bots in the zip. Fixed. -- Simonton

Hey wait - isn't it GrubbmGrb we want? The one with VirtualGuns of simple targeters? -- Voidious

Oh, ok. Sure. Dang those so-close-to-the-same-names-that-I-can't-pronounce. -- Simonton

Is the zip ready yet? --Starrynte

	double tmpb = getHeadingRadians() + enemy.getBearing() - enemy.getHeading() + 0.5*PI;
	if (enemy.getSpeed( CIRC) < 0) tmpb -= PI;
	return( getHeadingRadians() + enemy.getBearing() + Math.atan2(Math.cos(tmpb) * Math.abs(enemy.getSpeed( CIRC)), 14 + Math.sin(tmpb)));

I checked GrubbmGrb and I have two remarks about its behaviour. First it starts with its StopAndGo movement, while that movement is disabled on the other bots. Secondly, it does not always fire 3.0. The CT-gun adjusts the bulletpoer to prevent shooting into the wall. If you change the lines mentioned below GrubbmGrb will behave as expected.

comment out lines 790 and 794-799
That should do the trick. -- GrubbmGait

AHHHHHHHHHHHHHHHHHHHHHHHHHHHH! I will NEVER get this right! Ok, there's a new zip now. Again. We'll see if it takes any more to get it right. -- Simonton

Robo Home | MovementChallenge2K7 | Changes | Preferences | AllPages
Edit text of this page | View other revisions
Last edited September 8, 2007 14:03 EST by Simonton (diff)