Download it from the RobocodeRepository: https://www.robocoderepository.com/BotDetail.jsp?id=2416
Which means this bots floats like a butterfly and stings like a bumble-bee. =)
An alligator floating like a butterfly and stinging like a bumble-bee? :-) -- Jonathan
If it was an alligator it would instead just bite, roll and drown its enemies. =) -- PEZ
/BumbleBee reminds me of DuelistMicroMkII's gun. --David Alves
Yeah, from the descriptions they sound very similar! Though you talk about your gun as a PatternMatching gun. I think of B/umbleBee as purely StatisticalTargeting. Most StatisticalTargeting guns are 1-length matchers, aren't they? Or 2-length when they deal with acceleration maybe. I might be wrong here, but I think Cigaret's gun is similar to our two guns as well. -- PEZ
Here's the distinction: GF guns break all possible situations into segments and then look for the segment that the opponent is currently in. PM guns look at a the history of recent moves and try to find a time in the past that the enemy has moved in a similar way. GF guns break things up into discrete chunks whereas PM guns try to find the most similar previous state. DuelistMicroMkII and /BumbleBee are a cross between the two because they only look at the current enemy state like a GF gun would, but then they find the most similar previous state (like a PM gun) rather than looking in a specific segment. TronsGun also seems similar, incidentally. I count acceleration as being part of the "current enemy state". "State matcher" is probably a good name for this type of gun, since it works like a PM gun but operates on the current enemy state instead of operating on patterns of enemy moves. --David Alves
Like all my micro and nanobots, DuelistMicroMkII includes source, so feel free to take a look at the gun. I was going to match on more factors than the 2 I use, but I ran out of space. --David Alves
Your distinction is very different from mine. Whether it's a GF gun or not is only dependent on if it uses GFs for the actual aiming or not. Instead of storing heading and velocity in the log for replay, /BumbleBee simply stores the GF, just like Bee does. The difference between Bee and BumbleBee is only on how they store the data. Bee decides beforehand what segmentations to use. /BumbleBee makes the decision later. /BumbleBee could build up the same buffers on the fly as Bee does continously. The matching part is similar between the two guns. If BumbleBee is a state matcher, so is Bee. If Bee is a StatisticalTargeting, so is /BumbleBee. -- PEZ
What would you call DuelistMicroMkII? --David Alves
Haven't looked at the code yet. I'll do that first and then answer you. -- PEZ
OK. So now I have checked. It's even more similar to Cigaret's gun than /BumbleBee is. But it's still a StatisticalGun? I would say. You store the diff-angle and the current target direction instead of the GF. And you only find the best match instead of the best matches like I do. Otherwise it's the same. It's a StatisticalGun? that only uses one sample of the statistics. =) But a few simple changes would enable it to use more samples. Even though I suspect you'd have a hard time staying a micro then... -- PEZ
I wouldn't call a single match gun a StatisticalGun?, there are no statistics involved. A traditional GF gun and a MultipleChoice PM are statistical guns. The difference between a pattern matcher and a "state matcher" is in what you match, PM involves a time series while (traditional) GF guns don't. When you include time-sice-something in a GF gun, the distinction blurs. -- ABC
Which would mean Bee is in that blurred zone? Your definition of Statistical vs PM leaves Cigaret and DuelistMicroMkII without any home in either. They are not statistical (since they only look at the best macthing sample) and they are not PM (since they don't include a time series). What I am beginning to think here is that PM and statistical has all the time been the wrong categorizations. -- PEZ
There are a lot of different ways you can look at a gun. The PM and GF distinction was good enough when the two main (good) gun types were either statistical gf-based or best match PM-based. These days there are a lot of different combinations of gun characteristics, it's very hard to classify them all in just two separate groups. I would call Cigaret (and others, like DuelistMicroMkII) a GF-based best match gun. -- ABC
Yes, but since it's entirely possible to make a GF based PatternMatching gun and also make it MultipleChoice between several matches the whole distinction is uninteresting to divide guns with. The word pattern-matching doesn't anywhere state that it involves a time series. It's just one axis over which to build patterns. -- PEZ
Agreed, almost every gun can be said to be PatternMatching... So, find a better name for time series matching... :) -- ABC
Hey PEZ, I noticed that sometimes Ali doesn't finish off a disabled opponent. Probably doesn't cost it much in rating points, but just letting you know. --wcsv
Thanks. What I will do if I start working with this gun again is to make it use Bee for all descisions like that. Only the data storage and processing will be different. That should make it possible for me to plug this gun into CC's VirtualGuns array too, should I fancy. -- PEZ