archive by month
Skip to content

humans don’t understand bots

Igor Dimitrijevic’s comment on yesterday’s post reminded me: It’s difficult to understand much of a bot’s behavior by watching it.

Krasi0 is a good example. In the last several months I’ve watched the old veteran bot grow much stronger, returning to the top ranks. I can describe in general terms some things Krasi0 has improved at: It is more aggressive, it is better at protecting its workers from danger, it is smarter about where it sieges its tanks. (It also solved crashing bugs.) But I feel sure that the points that I’ve noticed are only the tip of the iceberg. There must be not only details but whole classes of behaviors that I did not pick up on at all—otherwise it could not have improved so much.

I guess humans don’t have the perceptual bandwidth to take it all in, at least not without the experience or prior knowledge to know what to look for. Starcraft play is too complicated for us to follow! I’m sure I could understand more if I studied replays closely.

I’ll take it as a reminder not to be too glib in drawing conclusions.

Speaking of glib conclusions about bot behavior, MaasCraft looks more interesting when it plays against more interesting opponents. I concluded earlier from watching 2014 replays that it mostly moved its army forward and back along the path between bases. Well, that’s what its opponents were doing too, so it may not have had much choice. Today’s bots try more complicated maneuvers, and today’s MaasCraft reacts with its own more complicated maneuvers. I’ve seen it (seemingly intentionally) split its army to trap stray units, for example. It reacts sensibly to multi-prong attacks.

MaasCraft is still scoring poorly, but now its tactical search is showing sparks of promise—I suspect due to changes in its opponents, not itself. As a reminder, LetaBot has a search descended from the same code, turned off in some versions but likely to be turned on in final versions.

Trackbacks

No Trackbacks

Comments

krasi0 on :

Nice blog post! I really enjoyed reading it.
With regards to my bot, you're on the right track. The main improvement I've made recently is to make it more aggressive. When it used to face the first generation of bots years ago, it was advantageous to be on the defensive, but nowadays the top bots tend to contain the opponent and then try to outmacro them, so a change was necessary. The rest is mostly bugfixes of the bot's sometimes erratic behaviour. Hopefully, I will have more time to devote to the AI and start making more substantial improvements in the future.

Keep up the good work with your analysis ;)

Jay Scott on :

Them’s some bug fixes! :-)

Interesting generalization about strategy shifts over the years. There’s a tension between the need to attack so you can win and the fact that, other things being equal, the prepared defender has an advantage. You’re pointing to a step taken in the evolution of strategy: Can’t win safely by just attacking, better build a macro advantage first. I read Krasi0’s answer as: If you press your army forward to stop me from expanding, your forward army is weaker and I’ll break it. Another possible answer is: If you keep your army forward then your bases are weak and I’ll bash them with drops. I want bots to try more answers!

krasi0 on :

The funny thing is that I've always been focusing on defending (keep in mind that I am discussing only bot vs bot matches here) against other bots and have become really good at it, e.g. fending off attacks for more than an hour while sitting at just two bases while the enemy has expanded all over the map. That said, my attacking skills and concepts feel kinda rusty now when more aggression and creativity is needed in order to stay in among the top 5.
If we focus on the purely strategic aspect of when to attack / defend as a Terran which is following my main build order (BO), I believe the golden mean would be something like the following: try to build up a siege tank + anti-air line which would defend the main base, the natural expansion and the closest second expansion. I guess I will have to construct a heat map of some sort (which would be Broodwar map dependent) highlighting hot spots where the enemy is likely to hit in an attempt to deny one of the expansions or in an attempt to stab at the main base from behind. Additionally, the possibility of a mass units (Lurkers, Siege Tanks, etc.) drop at the main base should be anticipated. Then once I build up some confidence in my army numbers, I could march on towards greater map control or go right for the kill depending on the perceived enemy weakness.

Jay Scott on :

That sounds like classic terran play. No bots are good at keeping their third and later bases safe, so it must be a good skill to work on next. Humans do it by maneuver and reaction... but that’s not much explanation, is it? :-)

Add Comment

E-Mail addresses will not be displayed and will only be used for E-Mail notifications.

To prevent automated Bots from commentspamming, please enter the string you see in the image below in the appropriate input box. Your comment will only be submitted if the strings match. Please ensure that your browser supports and accepts cookies, or your comment cannot be verified correctly.
CAPTCHA

Form options

Submitted comments will be subject to moderation before being displayed.