Live data from Hacker News

A Survey of RTS Game AI Research and Competition in StarCraft (2013) [pdf]

webdocs.cs.ualberta.ca

11–20 of 28 posts

Re: A Survey of RTS Game AI Research and Competition in StarCraft (2013) [pdf]

#12
post #6

Earlier quoted context omitted.

Yes. Here's a video[0] of the winner in 2014 StarCraft AI Competition against one of the better human player. More can be found at their official website[1] under Media/Files tab. [0] https://www.youtube.com/watch?v=DQI1wyRmeUQ [1] http://webdocs.cs.ualberta.ca/~cdavid/starcraftaicomp/

AI tries to defend with siege tanks against airborne mutalisks??

Yes that was dumb. Should have basetraded (attacked with the tanks to force retreat (buy time and build towers) or destroy zerg base or 2 if the zerg keeps attacking).

Re: A Survey of RTS Game AI Research and Competition in StarCraft (2013) [pdf]

#13
post #9

Glad to see the scene is still alive and well. Back when it was picking up I made a Ruby client to one of the server based BWAPI clients, I built a really neat Ruby API to it too. Unfortunately I invested so much time at that point the actual 'AI' I made just 6-pooled the opponent, in just 44 lines though[1]! Lately the release of mruby made me think maybe I should try again :) (mruby seriously reduces the amount of…

I used the python BWAPI client. I recently tried to get back into it but it seemed a lot more buggy and BWAPI wouldn't run on my newer Windows PC. :/

It was a lot of fun. Figuring out a base layout was the most difficult part for me. I ended up using the random function and placing buildings around my main base at random offsets. Didn't get too far with that, haha.

Re: A Survey of RTS Game AI Research and Competition in StarCraft (2013) [pdf]

#14
post #6

Earlier quoted context omitted.

Yes. Here's a video[0] of the winner in 2014 StarCraft AI Competition against one of the better human player. More can be found at their official website[1] under Media/Files tab. [0] https://www.youtube.com/watch?v=DQI1wyRmeUQ [1] http://webdocs.cs.ualberta.ca/~cdavid/starcraftaicomp/

AI tries to defend with siege tanks against airborne mutalisks??

I guess it was caught off guard and started panicking. Typical for human players as well.

Re: A Survey of RTS Game AI Research and Competition in StarCraft (2013) [pdf]

#15
post #9

Glad to see the scene is still alive and well. Back when it was picking up I made a Ruby client to one of the server based BWAPI clients, I built a really neat Ruby API to it too. Unfortunately I invested so much time at that point the actual 'AI' I made just 6-pooled the opponent, in just 44 lines though[1]! Lately the release of mruby made me think maybe I should try again :) (mruby seriously reduces the amount of…

I used the python BWAPI client. I recently tried to get back into it but it seemed a lot more buggy and BWAPI wouldn't run on my newer Windows PC. :/ It was a lot of fun. Figuring out a base layout was the most difficult part for me. I ended up using the random function and placing buildings around my main base at random offsets. Didn't get too far with that, haha.

Yeah, silly problems like that really made being competitive with established AI's or even players hard. Just an AI that sets up a base properly and manages to build a proper army at the right timings but without any strategic insight into the opponent or even micro-decision making (which unit targets which opponent) will still do very decently, just because all the boiler plate is so much work not many AI's get to the actually being 'intelligent' part.

Re: A Survey of RTS Game AI Research and Competition in StarCraft (2013) [pdf]

#16
post #6

Earlier quoted context omitted.

Yes. Here's a video[0] of the winner in 2014 StarCraft AI Competition against one of the better human player. More can be found at their official website[1] under Media/Files tab. [0] https://www.youtube.com/watch?v=DQI1wyRmeUQ [1] http://webdocs.cs.ualberta.ca/~cdavid/starcraftaicomp/

AI tries to defend with siege tanks against airborne mutalisks??

Building these AI's is actually a lot of work. They're usually built by a single or a few persons, in their spare time or perhaps as a college course. Most time is spent making sure your bot actually plays the game. Very little if any at all time is spent making the bot smart enough to deal with situations like this. In this case, obviously there's a bug where the bot is not dealing property with aerial attacks. A human player would have given up or made a suicide attack the second those mutas landed as he realized he missed a turret at his main.

Re: A Survey of RTS Game AI Research and Competition in StarCraft (2013) [pdf]

#17

Earlier quoted context omitted.

Seems the TvZ part of the bot could be improved by getting up turrets in time. Maybe they could get the bot to do a statistical analysis of builds they are likely to face in each match-up and use a build order that counters it.

Well, if you build enough to be safe against just about everything, your build will lose against any build which is properly executed. If you play the numbers and just have set builds which counter the most popular builds you might face, the human will pretty quickly figure out what the AI is doing and adapt their own build. One of the most common and basic techniques in Starcraft is to bait another player into think…

It's also good to note that in any tournament setup, the players would be in a best of 3 or best of 5. That means there's some meta-gaming going on as well. (Will the player go Muta 2 times in a row? or won't they? What did they do in the past?)

Re: A Survey of RTS Game AI Research and Competition in StarCraft (2013) [pdf]

#18
post #16
post #6

Earlier quoted context omitted.

AI tries to defend with siege tanks against airborne mutalisks??

Building these AI's is actually a lot of work. They're usually built by a single or a few persons, in their spare time or perhaps as a college course. Most time is spent making sure your bot actually plays the game. Very little if any at all time is spent making the bot smart enough to deal with situations like this. In this case, obviously there's a bug where the bot is not dealing property with aerial attacks. A hu…

Very well said. I've started a few month ago on an AI/Bot for 0AD an open source game. Scripting language is JavaScript running on SpiderMonkey. So far I've accumulated thousands of locs, learned a lot about writing fast code against a specific engine and have barely more than a framework. But I still remember the moment the bot did it's first baby steps and actually build a structure to train some scouts and started exploring the map.

Also it became a decent exercise in dealing with abstraction. The code base just explodes if you do not follow DRY - strictly.

Re: A Survey of RTS Game AI Research and Competition in StarCraft (2013) [pdf]

#19
post #7

I don't know any games besides chess and tic tac toe where a bot have been able to beat a good player ...

Your research is out of date, then. :) Even the game of Go, thought to be the hardest for computers, now has bots at the 6-dan (stronger than >99% of humans will ever be) level.

Re: A Survey of RTS Game AI Research and Competition in StarCraft (2013) [pdf]

#20

Earlier quoted context omitted.

Seems the TvZ part of the bot could be improved by getting up turrets in time. Maybe they could get the bot to do a statistical analysis of builds they are likely to face in each match-up and use a build order that counters it.

Well, if you build enough to be safe against just about everything, your build will lose against any build which is properly executed. If you play the numbers and just have set builds which counter the most popular builds you might face, the human will pretty quickly figure out what the AI is doing and adapt their own build. One of the most common and basic techniques in Starcraft is to bait another player into think…

> Well, if you build enough to be safe against just about everything, your build will lose against any build which is properly executed.

No one mentioned being safe against just about everything, just the important timing attacks (such as 3-hatch muta), which are known to be a big part about Starcraft. If you're going a build order that gets you straight-up killed by one of the most popular build orders, something is going wrong. Even if the enemy timing hits 5s before you get turrets up, your build should have a fallback e.g. marines in the base to hold off mutas until turrets complete, which is what a lot of progamers do off a 4-rax opening. Your (x-2) minutes statement seems to assume that AI builds can't cut corners and are forced to play the safest build possible every game.

> Since even the top humans are able to trick each other in these manners, you'd basically need general/strong AI to be able to compete.

This flies in the face of game theory, which is focused on solving exactly the problem you deem impossible to solve without strong AI. In 2008, poker bots (researched by the same university, the University of Alberta) have been able to defeat human experts in limit heads-up poker [1].

Perhaps the problem statement the researchers are working with is different from the one I'm envisioning. Maybe they are training their bots with only replays from other bots, rather than with replays from the top players in the world which constitute what we currently regard to be optimal play. I am thinking that the researchers may overlap with the poker research group, which suggests that the entire project is more focused on using superior game theory as the winning condition rather than exploiting areas where the computer is already known to be better than the human e.g. micro (giving hundreds of units unique instructions) and macro (sending build commands to buildings on the clock). The former is shown in the wraith vs. hydralisk video [2]. This may not work as well as in poker and may not yield as impressive games in the short-term as focusing on micro and macro, but the research is definitely fascinating!

[1] http://poker.cs.ualberta.ca/man-machine/

[2] https://www.youtube.com/watch?v=NcjQhig88wE

Post reply on HN