TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

2015 AIIDE Starcraft AI Competition – Report and Results

156 pointsby 2Pacalypse-over 9 years ago

11 comments

solicodeover 9 years ago
While I was watching some of these replays, I was thinking to myself of all the things a bot needs to keep track of and all the things it could potentially try, and it just seemed so overwhelming. There are just too many things you can try, and your resources are limited.<p>StarCraft is a very, very deep game. It seems like it would be very easy to waste time on paths that lead to no real gains. And that rather than using interesting AI techniques, the most important thing might in fact be the StarCraft knowledge of the author. And how good they are at distilling the game down to the parts that is going to yield the biggest returns.<p>Also, StarCraft has very distinct early, mid, and late stages to the game. Focusing only on the early game, and going with a single strategy eliminates a ton of complexity. If you spend all your time on getting an all-or-nothing rush perfected, you&#x27;ve essentially &quot;skipped&quot; all the sophisticated techniques some of the other authors spent their time creating for the mid and late stages. In fact, it seems like some authors did just this and were quite successful.<p>But even an all-or-nothing rush has a surprising amount of depth, and perfecting that would be a quite a feat. The biggest thing being micromanagement&#x2F;unit control and knowing what to target first (this is actually very hard). If you don&#x27;t perfect that, beating a pro doesn&#x27;t seem like it would be even remotely possible.<p>I was a huge StarCraft BW fan, and it&#x27;s the only game where I got to the point where I could sometimes hold my own against pro players. I&#x27;m tempted to try BWAPI. Creating a full bot seems like a huge amount of work that I probably don&#x27;t have time for, but creating a unit control AI sounds like it would be fun. I remember there used to be micromanagement custom game maps that people used to create (basically a series of situational challenges where you have a bunch of units and you could face other human players 1v1). Doing a competition for that as well would be pretty cool I think.
评论 #10641241 未加载
narsilover 9 years ago
The faq links for each bot are interesting. The author of the bot ranked first (Tscmoo) doesn&#x27;t think the bot uses any interesting AI techniques or algorithms: <a href="https:&#x2F;&#x2F;dl.dropboxusercontent.com&#x2F;u&#x2F;23817376&#x2F;Starcraft&#x2F;AIIDE&#x2F;2015&#x2F;survey&#x2F;Tscmoo.txt" rel="nofollow">https:&#x2F;&#x2F;dl.dropboxusercontent.com&#x2F;u&#x2F;23817376&#x2F;Starcraft&#x2F;AIIDE...</a><p>&gt; My bot has a variety of different strategies that it can execute. The strategy to execute is chosen randomly using weights, and the weights are adjusted based on previous match results. It&#x27;s pretty simple but I guess it could be called learning.<p>The top 3 bots are independent entries, and beat the bots using learning algorithms such as UCB1 from research institutions. The author of the bot ranked second does think that other bots that minimized hand-crafted solutions would be more interesting: <a href="https:&#x2F;&#x2F;dl.dropboxusercontent.com&#x2F;u&#x2F;23817376&#x2F;Starcraft&#x2F;AIIDE&#x2F;2015&#x2F;survey&#x2F;ZZZKBot.txt" rel="nofollow">https:&#x2F;&#x2F;dl.dropboxusercontent.com&#x2F;u&#x2F;23817376&#x2F;Starcraft&#x2F;AIIDE...</a>
评论 #10640986 未加载
评论 #10641821 未加载
评论 #10641017 未加载
omniover 9 years ago
For anyone who thinks this looks fun but isn&#x27;t a huge fan of C++ or Java, I made a Clojure API that wraps the Java version. <a href="https:&#x2F;&#x2F;github.com&#x2F;thieman&#x2F;korhal" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;thieman&#x2F;korhal</a> Previous HN discussion here: <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=7050325" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=7050325</a>
评论 #10641590 未加载
Zolomonover 9 years ago
Would be interesting to get your hands on a large set of replays from a lot of gosu players and run some machine learning offline prior to each map for the current match map.<p>Would be fun to experiment with the data and see if it would be possible to infer game tactics from professional players and &quot;simulate&quot; those against another bot based on the current game state.
评论 #10642684 未加载
评论 #10642060 未加载
krasi0over 9 years ago
Some more useful links for those who are interested to learn more:<p>BWAPI GitHub page [0]<p>StarCraft Broodwar AI development Wiki[1]<p>The obligatory IRC channel where we discuss random topics concerning AI development[2]<p>[0] <a href="https:&#x2F;&#x2F;github.com&#x2F;bwapi&#x2F;bwapi" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;bwapi&#x2F;bwapi</a><p>[1] <a href="http:&#x2F;&#x2F;www.starcraftai.com&#x2F;wiki&#x2F;Main_Page" rel="nofollow">http:&#x2F;&#x2F;www.starcraftai.com&#x2F;wiki&#x2F;Main_Page</a><p>[2] <a href="http:&#x2F;&#x2F;webchat.freenode.net&#x2F;?channels=BWAPI" rel="nofollow">http:&#x2F;&#x2F;webchat.freenode.net&#x2F;?channels=BWAPI</a>
sclangdonover 9 years ago
Slightly off-topic but I find the BWAPI more interesting than the AI aspects. Does anyone have any further reading regarding this kind of thing?
评论 #10642672 未加载
lifeisstillgoodover 9 years ago
If anyone remembers Asimov&#x27;s &#x27;I, Robot&#x27; series, it ended with Machines (was that the exact name?) taking on the centralised planning of the whole globe, quietly removing recalcitrant humans from the supply chain, and apparently benefiting all humanity.<p>That problem is the AI problem these game designers are trying to tackle.<p>Just seems interesting...
nickpsecurityover 9 years ago
The obvious solution here is pattern matching. Whether traditional machine learning or NN&#x27;s, certain situations need dedicated pattern matching looking for them constantly with some probability and algorithm to decide how to act on that. Other areas for improvement, too. Here&#x27;s some suggestions:<p>1. Human players use scouts to counter fog of war followed by looking at build patterns to determine likely strategy. Spotting strategy should be easy for pattern matching. They also often micro the scout to (a) disrupt mining or (b) keep it alive for as long as possible. This should be similarly easy.<p>Note: Units damaged from a prior battle can also be used as scouts and simply not factored into further combat.<p>2. Simulations should be done using most likely combos of units for each strategy against most likely combos of opponents&#x27; units. This should be done for macro and micro. Patterns here will be used in the micro-engine. Bonus against machines: use unlikely combinations that prove effective in simulations.<p>3. Combat analysis should be a global thing that factors into overall goals. That the human player moved units from one base to another should never surprise an AI. The AI should&#x27;ve shifted some or all defence to that base immediately with use of fast-moving scouts (eg zerglings) to track opponents if they run.<p>4. Building laying and build order heuristics should be datamined from top players while attached to specific strategies. No one size fits all. Have two for each: one ideal, optimized build order; a heuristic, on-the-fly set if an attack or change throws off the plan.<p>5. Identify the common strategy changes that happen as a result of what enemy does. Simulate likely situations with units or build orders for those. Identify heuristics for safe transition. Will help for adaptation.<p>6. Put as many human strategies in there as possible from the A-listers, both specifically and generically.<p>Those are where I&#x27;d start on improving the situation, esp against human players. However, I think an even more interesting line of research is augmenting human players with an AI to efficiently execute their strategy. One that constantly assesses, micro&#x27;s, follows build orders, etc. Basically never misses a step. More practical for real-world applications.
FanaHOVAover 9 years ago
Really interesting, I started playing on SC2 so I&#x27;m not sure about the dynamics of BW but I wonder how the lack of micro skews the results. For example a fast reaper push hopping on&#x2F;off the enemy base can&#x27;t probably be done by a bot. Terrans are also much easier to automate, while Zergs require microing with injections, etc are the demos uploaded anywhere?
评论 #10641225 未加载
评论 #10641102 未加载
评论 #10642073 未加载
d0mover 9 years ago
That&#x27;s really cool. Is there a tldr of the AI strategies used ? Are some of the bots using neural network?
评论 #10642145 未加载
评论 #10641249 未加载
Havocover 9 years ago
Surprisingly high number of &quot;Random Race&quot; bots. I&#x27;d have thought that gives a fairly limited advantage against an AI while being a significant disadvantage in the programming side (i.e. AI needs to be good at 3 things).
评论 #10641815 未加载