Here is what the classic protoss bot AIUR learned about each opponent over the course of CIG 2018. AIUR has not been updated in many years and has fallen behind the state of the art, but its varied strategies and learning still make it a tricky opponent in a long tournament. Seeing AIUR's counters for each opponent tells us something about how the opponent played. For past editions, see AIIDE 2017 what AIUR learned and what AIUR learned (AIIDE 2015).
This is generated from data in AIUR's final write
directory. There were 125 rounds and 5 maps, one 2-player and two each 3- and 4-player maps. For some opponents, all games were recorded, giving 25 games on the 2-player map and 50 games each on 3- and 4-player maps. For most opponents, fewer games were recorded. AIUR recorded 2932 games, and the results table lists 318 crashes for AIUR. 2932 + 318 = 3250, the correct total game count. Unrecorded games were lost due to crashes, and for no other reason.
First the overview, summing across all opponents.
overall | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 72 | 49% | 127 | 65% | 132 | 35% | 331 | 49% |
rush | 29 | 41% | 269 | 33% | 261 | 55% | 559 | 44% |
aggressive | 13 | 23% | 225 | 68% | 184 | 78% | 422 | 71% |
fast expo | 33 | 24% | 185 | 48% | 207 | 48% | 425 | 46% |
macro | 46 | 33% | 180 | 52% | 135 | 60% | 361 | 53% |
defensive | 141 | 75% | 314 | 73% | 379 | 55% | 834 | 65% |
total | 334 | 54% | 1300 | 56% | 1298 | 56% | 2932 | 56% |
- 2, 3, 4 - map size, the number of starting positions
- n - games recorded
- wins - winning percentage over those games
- cheese - cannon rush
- rush - dark templar rush
- aggressive - fast 4 zealot drop
- fast expo - nexus first
- macro - aim for a strong middle game army
- defensive - try to be safe against rushes
Looking across the bottom row, you can see that AIUR had a plus score on every size of map, and that it had to choose different strategies to do so well. It's a strong result for a bot which has essentially no micro skills and has not been updated since 2014. It does still have the best cannon rush of any bot, if you ask me.
#1 locutus | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 1 | 0% | 8 | 0% | 25 | 12% | 34 | 9% |
rush | 1 | 0% | 10 | 0% | 6 | 0% | 17 | 0% |
aggressive | 1 | 0% | 4 | 0% | 5 | 0% | 10 | 0% |
fast expo | 1 | 0% | 14 | 0% | 5 | 0% | 20 | 0% |
macro | 1 | 0% | 7 | 0% | 4 | 0% | 12 | 0% |
defensive | 1 | 0% | 7 | 14% | 5 | 0% | 13 | 8% |
total | 6 | 0% | 50 | 2% | 50 | 6% | 106 | 4% |
Even against the toughest opponents, AIUR can scrape a small edge with learning. Against Locutus, it pulled barely above zero, but got a few extra wins because it discovered that its cannon rush occasionally scores on 4-player maps. Results against PurpleWave below are similar. I suspect that if AIUR had played the cannon rush every game, Locutus would have adapted and nullified the edge. Maybe it did, and that’s why the edge is so small.
#2 purplewave | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 1 | 0% | 8 | 0% | 39 | 18% | 48 | 15% |
rush | 1 | 0% | 8 | 0% | 2 | 0% | 11 | 0% |
aggressive | 1 | 0% | 10 | 0% | 3 | 0% | 14 | 0% |
fast expo | 4 | 0% | 8 | 0% | 2 | 0% | 14 | 0% |
macro | 1 | 0% | 10 | 0% | 2 | 0% | 13 | 0% |
defensive | 3 | 0% | 6 | 0% | 2 | 0% | 11 | 0% |
total | 11 | 0% | 50 | 0% | 50 | 14% | 111 | 6% |
#3 mcrave | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 1 | 100% | 1 | 0% | 1 | 0% | 3 | 33% |
rush | 1 | 0% | 41 | 2% | 1 | 0% | 43 | 2% |
aggressive | 0 | 0% | 2 | 0% | 3 | 0% | 5 | 0% |
fast expo | 1 | 0% | 1 | 0% | 42 | 17% | 44 | 16% |
macro | 1 | 0% | 3 | 0% | 1 | 0% | 5 | 0% |
defensive | 1 | 0% | 2 | 0% | 2 | 0% | 5 | 0% |
total | 5 | 20% | 50 | 2% | 50 | 14% | 105 | 9% |
Against McRave, the choice is nexus first. McRave must have settled on a macro opening itself.
#4 tscmoo | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 11 | 27% | 1 | 0% | 1 | 0% | 13 | 23% |
rush | 1 | 0% | 1 | 0% | 3 | 0% | 5 | 0% |
aggressive | 1 | 0% | 11 | 9% | 1 | 0% | 13 | 8% |
fast expo | 5 | 20% | 33 | 15% | 1 | 0% | 39 | 15% |
macro | 1 | 0% | 2 | 0% | 22 | 14% | 25 | 12% |
defensive | 1 | 0% | 2 | 0% | 22 | 18% | 25 | 16% |
total | 20 | 20% | 50 | 12% | 50 | 14% | 120 | 14% |
Against the unpredictable Tscmoo, AIUR wavered before settling on an unpredictable set of answers. Notice that not all the strategies are well explored: If you win less than 1 game in 5, then playing an opening 3 times is not enough. If the tournament were much longer, AIUR would likely have scored higher because of its slow but effective learning.
#5 isamind | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 1 | 0% | 2 | 0% | 4 | 0% | 7 | 0% |
rush | 1 | 100% | 37 | 19% | 38 | 8% | 76 | 14% |
aggressive | 0 | 0% | 1 | 0% | 3 | 0% | 4 | 0% |
fast expo | 1 | 0% | 5 | 0% | 2 | 0% | 8 | 0% |
macro | 1 | 0% | 1 | 0% | 2 | 0% | 4 | 0% |
defensive | 1 | 0% | 4 | 0% | 1 | 0% | 6 | 0% |
total | 5 | 20% | 50 | 14% | 50 | 6% | 105 | 10% |
ISAMind may be based on Locutus, but unlike Locutus it is vulnerable to AIUR’s dark templar rushes. It’s a sign that it is not as mature and well tested.
#6 iron | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 1 | 0% | 1 | 0% | 5 | 0% | 7 | 0% |
rush | 1 | 0% | 26 | 19% | 2 | 0% | 29 | 17% |
aggressive | 0 | 0% | 2 | 0% | 2 | 0% | 4 | 0% |
fast expo | 1 | 0% | 1 | 0% | 31 | 10% | 33 | 9% |
macro | 1 | 0% | 19 | 5% | 4 | 0% | 24 | 4% |
defensive | 1 | 0% | 1 | 0% | 6 | 0% | 8 | 0% |
total | 5 | 0% | 50 | 12% | 50 | 6% | 105 | 9% |
#7 zzzkbot | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 4 | 0% | 2 | 0% | 2 | 0% | 8 | 0% |
rush | 4 | 0% | 4 | 0% | 1 | 0% | 9 | 0% |
aggressive | 3 | 0% | 2 | 0% | 1 | 0% | 6 | 0% |
fast expo | 3 | 0% | 3 | 0% | 1 | 0% | 7 | 0% |
macro | 7 | 0% | 5 | 0% | 4 | 0% | 16 | 0% |
defensive | 4 | 0% | 34 | 29% | 41 | 12% | 79 | 19% |
total | 25 | 0% | 50 | 20% | 50 | 10% | 125 | 12% |
4 pooler ZZZKBot is of course best countered by a defensive anti-rush strategy. Well, it helped, but the rush is too strong for AIUR to survive reliably. On the 2-player map, AIUR found no answer.
#8 microwave | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 2 | 0% | 2 | 0% | 1 | 0% | 5 | 0% |
rush | 1 | 0% | 27 | 7% | 1 | 0% | 29 | 7% |
aggressive | 1 | 0% | 1 | 0% | 1 | 0% | 3 | 0% |
fast expo | 1 | 0% | 2 | 0% | 1 | 0% | 4 | 0% |
macro | 1 | 0% | 1 | 0% | 9 | 22% | 11 | 18% |
defensive | 18 | 22% | 17 | 24% | 36 | 25% | 71 | 24% |
total | 24 | 17% | 50 | 12% | 49 | 22% | 123 | 17% |
Microwave apparently also played a rushy style versus AIUR. That’s interesting. I think that AIUR’s defensive strategy is good against pressure openings generally, so Microwave was likely playing low-econ but not necessarily fast rushes.
#9 letabot | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 1 | 0% | 1 | 0% | 1 | 0% | 3 | 0% |
rush | 1 | 0% | 1 | 0% | 3 | 33% | 5 | 20% |
aggressive | 0 | 0% | 3 | 33% | 1 | 0% | 4 | 25% |
fast expo | 1 | 0% | 41 | 49% | 43 | 49% | 85 | 48% |
macro | 1 | 100% | 3 | 33% | 1 | 0% | 5 | 40% |
defensive | 1 | 0% | 1 | 0% | 1 | 0% | 3 | 0% |
total | 5 | 20% | 50 | 44% | 50 | 44% | 105 | 43% |
Fast expo makes sense against LetaBot’s “wait for it... wait for it... here it comes!” one big smash.
#10 megabot | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 1 | 0% | 2 | 0% | 3 | 0% | 6 | 0% |
rush | 2 | 50% | 4 | 0% | 38 | 11% | 44 | 11% |
aggressive | 1 | 0% | 3 | 0% | 3 | 0% | 7 | 0% |
fast expo | 1 | 0% | 3 | 0% | 2 | 0% | 6 | 0% |
macro | 2 | 0% | 36 | 28% | 2 | 0% | 40 | 25% |
defensive | 18 | 94% | 2 | 0% | 2 | 0% | 22 | 77% |
total | 25 | 72% | 50 | 20% | 50 | 8% | 125 | 26% |
Why did MegaBot have so much more trouble on the 2-player map? According to the official per-map result table, MegaBot did fine overall on Destination (the one 2-player map), so its trouble came only against AIUR. Maybe I should watch replays and diagnose it.
#11 ualbertabot | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 1 | 0% | 1 | 0% | 1 | 0% | 3 | 0% |
rush | 2 | 0% | 43 | 37% | 2 | 0% | 47 | 34% |
aggressive | 1 | 0% | 2 | 0% | 1 | 0% | 4 | 0% |
fast expo | 1 | 0% | 2 | 0% | 1 | 0% | 4 | 0% |
macro | 18 | 33% | 1 | 0% | 1 | 0% | 20 | 30% |
defensive | 1 | 0% | 1 | 0% | 44 | 16% | 46 | 15% |
total | 24 | 25% | 50 | 32% | 50 | 14% | 124 | 23% |
#12 tyr | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 1 | 0% | 1 | 0% | 1 | 0% | 3 | 0% |
rush | 1 | 100% | 1 | 0% | 32 | 81% | 34 | 79% |
aggressive | 0 | 0% | 37 | 46% | 8 | 75% | 45 | 51% |
fast expo | 1 | 100% | 3 | 33% | 3 | 67% | 7 | 57% |
macro | 1 | 0% | 6 | 33% | 3 | 33% | 10 | 30% |
defensive | 1 | 0% | 2 | 0% | 3 | 33% | 6 | 17% |
total | 5 | 40% | 50 | 40% | 50 | 72% | 105 | 55% |
I suspect that Tyr suffered here because it is a jvm bot and could not write its learning file.
#13 ecgberht | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 1 | 100% | 38 | 89% | 2 | 50% | 41 | 88% |
rush | 1 | 100% | 1 | 0% | 43 | 67% | 45 | 67% |
aggressive | 0 | 0% | 4 | 75% | 1 | 0% | 5 | 60% |
fast expo | 1 | 100% | 1 | 0% | 2 | 0% | 4 | 25% |
macro | 1 | 0% | 3 | 67% | 1 | 0% | 5 | 40% |
defensive | 1 | 0% | 3 | 67% | 1 | 0% | 5 | 40% |
total | 5 | 60% | 50 | 82% | 50 | 60% | 105 | 70% |
#15 titaniron | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 1 | 0% | 1 | 0% | 2 | 50% | 4 | 25% |
rush | 1 | 0% | 1 | 0% | 3 | 33% | 5 | 20% |
aggressive | 0 | 0% | 42 | 79% | 42 | 88% | 84 | 83% |
fast expo | 1 | 0% | 1 | 0% | 1 | 0% | 3 | 0% |
macro | 1 | 100% | 2 | 50% | 1 | 0% | 4 | 50% |
defensive | 1 | 100% | 3 | 0% | 1 | 0% | 5 | 20% |
total | 5 | 40% | 50 | 68% | 50 | 78% | 105 | 71% |
TitanIron appears to have been too predictable. Notice that the winning strategy on most maps was never tried (without crashing) on the 2-player map. It might have won there too.
#16 ziabot | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 16 | 50% | 2 | 50% | 1 | 0% | 19 | 47% |
rush | 1 | 0% | 2 | 0% | 1 | 0% | 4 | 0% |
aggressive | 1 | 0% | 1 | 0% | 3 | 33% | 5 | 20% |
fast expo | 1 | 0% | 2 | 50% | 0 | 0% | 3 | 33% |
macro | 1 | 0% | 1 | 0% | 1 | 0% | 3 | 0% |
defensive | 3 | 33% | 42 | 69% | 44 | 57% | 89 | 62% |
total | 23 | 39% | 50 | 62% | 50 | 52% | 123 | 54% |
#17 steamhammer | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 1 | 0% | 1 | 0% | 1 | 0% | 3 | 0% |
rush | 3 | 67% | 4 | 75% | 9 | 100% | 16 | 88% |
aggressive | 3 | 100% | 17 | 100% | 15 | 100% | 35 | 100% |
fast expo | 2 | 0% | 2 | 0% | 2 | 50% | 6 | 17% |
macro | 1 | 100% | 10 | 100% | 1 | 0% | 12 | 92% |
defensive | 14 | 100% | 16 | 100% | 22 | 100% | 52 | 100% |
total | 24 | 83% | 50 | 92% | 50 | 94% | 124 | 91% |
#18 overkill | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 1 | 0% | 3 | 0% | 2 | 50% | 6 | 17% |
rush | 0 | 0% | 2 | 50% | 1 | 0% | 3 | 33% |
aggressive | 0 | 0% | 1 | 0% | 10 | 60% | 11 | 55% |
fast expo | 1 | 0% | 3 | 67% | 0 | 0% | 4 | 50% |
macro | 0 | 0% | 0 | 0% | 0 | 0% | 0 | 0% |
defensive | 16 | 88% | 41 | 90% | 37 | 78% | 94 | 85% |
total | 18 | 78% | 50 | 80% | 50 | 72% | 118 | 76% |
#19 terranuab | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 1 | 100% | 8 | 88% | 1 | 0% | 10 | 80% |
rush | 1 | 100% | 11 | 100% | 30 | 100% | 42 | 100% |
aggressive | 0 | 0% | 4 | 75% | 2 | 50% | 6 | 67% |
fast expo | 1 | 100% | 16 | 100% | 6 | 83% | 23 | 96% |
macro | 1 | 100% | 9 | 89% | 10 | 90% | 20 | 90% |
defensive | 1 | 100% | 2 | 50% | 1 | 0% | 4 | 50% |
total | 5 | 100% | 50 | 92% | 50 | 90% | 105 | 91% |
#20 cunybot | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 1 | 0% | 2 | 50% | 4 | 75% | 7 | 57% |
rush | 1 | 100% | 1 | 0% | 2 | 0% | 4 | 25% |
aggressive | 0 | 0% | 4 | 75% | 13 | 92% | 17 | 88% |
fast expo | 1 | 0% | 2 | 50% | 2 | 50% | 5 | 40% |
macro | 1 | 100% | 9 | 89% | 13 | 100% | 23 | 96% |
defensive | 1 | 100% | 32 | 100% | 15 | 100% | 48 | 100% |
total | 5 | 60% | 50 | 90% | 49 | 90% | 104 | 88% |
#21 opprimobot | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 1 | 100% | 12 | 100% | 6 | 83% | 19 | 95% |
rush | 1 | 100% | 5 | 100% | 7 | 100% | 13 | 100% |
aggressive | 0 | 0% | 7 | 100% | 4 | 100% | 11 | 100% |
fast expo | 1 | 100% | 11 | 100% | 17 | 100% | 29 | 100% |
macro | 1 | 100% | 8 | 100% | 7 | 100% | 16 | 100% |
defensive | 1 | 100% | 7 | 100% | 9 | 100% | 17 | 100% |
total | 5 | 100% | 50 | 100% | 50 | 98% | 105 | 99% |
#22 sling | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 1 | 0% | 1 | 0% | 1 | 0% | 3 | 0% |
rush | 1 | 100% | 5 | 100% | 2 | 50% | 8 | 88% |
aggressive | 0 | 0% | 13 | 100% | 13 | 100% | 26 | 100% |
fast expo | 1 | 100% | 7 | 100% | 10 | 100% | 18 | 100% |
macro | 1 | 100% | 8 | 100% | 11 | 100% | 20 | 100% |
defensive | 1 | 100% | 16 | 100% | 13 | 100% | 30 | 100% |
total | 5 | 80% | 50 | 98% | 50 | 96% | 105 | 96% |
#23 srbotone | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 1 | 0% | 2 | 50% | 1 | 0% | 4 | 25% |
rush | 1 | 100% | 9 | 100% | 3 | 67% | 13 | 92% |
aggressive | 0 | 0% | 13 | 100% | 16 | 100% | 29 | 100% |
fast expo | 1 | 100% | 10 | 100% | 8 | 100% | 19 | 100% |
macro | 1 | 100% | 7 | 86% | 6 | 100% | 14 | 93% |
defensive | 1 | 100% | 9 | 100% | 16 | 100% | 26 | 100% |
total | 5 | 80% | 50 | 96% | 50 | 96% | 105 | 95% |
#24 bonjwa | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 1 | 100% | 9 | 100% | 4 | 75% | 14 | 93% |
rush | 1 | 100% | 13 | 100% | 10 | 100% | 24 | 100% |
aggressive | 0 | 0% | 7 | 100% | 10 | 100% | 17 | 100% |
fast expo | 1 | 100% | 6 | 100% | 7 | 100% | 14 | 100% |
macro | 1 | 100% | 7 | 100% | 8 | 100% | 16 | 100% |
defensive | 1 | 100% | 8 | 100% | 11 | 100% | 20 | 100% |
total | 5 | 100% | 50 | 100% | 50 | 98% | 105 | 99% |
#25 stormbreaker | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 4 | 75% | 1 | 0% | 4 | 75% | 9 | 67% |
rush | 0 | 0% | 5 | 80% | 10 | 100% | 15 | 93% |
aggressive | 0 | 0% | 18 | 100% | 7 | 100% | 25 | 100% |
fast expo | 0 | 0% | 0 | 0% | 6 | 100% | 6 | 100% |
macro | 0 | 0% | 9 | 100% | 8 | 100% | 17 | 100% |
defensive | 20 | 100% | 17 | 100% | 15 | 100% | 52 | 100% |
total | 24 | 96% | 50 | 96% | 50 | 98% | 124 | 97% |
#26 korean | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 7 | 100% | 2 | 100% | 10 | 100% | 19 | 100% |
rush | 0 | 0% | 7 | 100% | 8 | 100% | 15 | 100% |
aggressive | 0 | 0% | 5 | 100% | 8 | 100% | 13 | 100% |
fast expo | 0 | 0% | 8 | 100% | 8 | 100% | 16 | 100% |
macro | 0 | 0% | 5 | 100% | 6 | 100% | 11 | 100% |
defensive | 14 | 100% | 23 | 100% | 10 | 100% | 47 | 100% |
total | 21 | 100% | 50 | 100% | 50 | 100% | 121 | 100% |
Well, if you win every game, learning cannot help.
#27 salsa | 2 | 3 | 4 | total |
| n | wins | n | wins | n | wins | n | wins |
cheese | 9 | 100% | 15 | 100% | 9 | 100% | 33 | 100% |
rush | 0 | 0% | 0 | 0% | 3 | 100% | 3 | 100% |
aggressive | 0 | 0% | 11 | 100% | 8 | 100% | 19 | 100% |
fast expo | 0 | 0% | 0 | 0% | 4 | 100% | 4 | 100% |
macro | 0 | 0% | 8 | 100% | 7 | 100% | 15 | 100% |
defensive | 15 | 100% | 16 | 100% | 19 | 100% | 50 | 100% |
total | 24 | 100% | 50 | 100% | 50 | 100% | 124 | 100% |
Comments
Bruce on :
Jay Scott on :
MicroDK on :
3HatchPoolHydra 10 3, 5Pool 10 1, 9PoolSpeedLing 10 8, 12HatchLurker 10 0, 12HatchMuta 10 0. The numbers are a relative win scores capped at 10. 10/8 means MW won the 10 out of the last 18 games. 10/0 means MW won 10 out of the last 10 games.