archive by month
Skip to content

AIIDE 2018 - what Microwave learned

Microwave uses UCB and keeps its learning data in the same file format as UAlbertaBot, one file per opponent listing on each line an opening, a count of wins, and a count of losses. It’s a simple format that is also used outside the UAlbertaBot family. Microwave adds a twist: It does not allow the count of wins or the count of losses to exceed 10. I’m not sure what the exact update rule is without reading the code, but the effect is that only the more recent game results are remembered. It’s appropriate if the enemy is expected to be learning too, and to change its strategy rapidly so that Microwave has to keep adapting.

Microwave plays different strategies against each race. Against Terran it has 7, against Protoss and Zerg 8, and against random 6. UAlbertaBot was the only random opponent. The strategies partly overlap. For example, 10Hatch9Pool9gas is played against both terran and protoss, while 9HatchMain8Pool8Gas is played only against zerg. The table has big blank spaces full of unplayed strategies. Maybe I should have sorted it by race, instead of by rank?

#bottotal10Hatch9Pool9gas12Pool3HatchPoolHydra5HatchGasHydra5Pool9HatchMain8Pool8Gas9Pool9PoolExpo9PoolHatch9PoolLurker9PoolSpeed9PoolSpeedLing9PoolSunkenOverpoolOverpoolSpeedZvT_12HatchHydraZvT_12HatchLurkerZvT_12HatchMutaZvZ_Overpool11Gas
#1saida0-70  0%0-10 0%---0-10 0%-0-10 0%--0-10 0%-----0-10 0%0-10 0%0-10 0%-
#2cherrypi0-80  0%-0-10 0%--0-10 0%0-10 0%--0-10 0%-0-10 0%-0-10 0%-0-10 0%---0-10 0%
#3cse0-80  0%0-10 0%-0-10 0%0-10 0%0-10 0%------0-10 0%---0-10 0%0-10 0%0-10 0%-
#4bluebluesky0-80  0%0-10 0%-0-10 0%0-10 0%0-10 0%------0-10 0%---0-10 0%0-10 0%0-10 0%-
#5locutus1-80  1%1-10 9%-0-10 0%0-10 0%0-10 0%------0-10 0%---0-10 0%0-10 0%0-10 0%-
#6isamind0-80  0%0-10 0%-0-10 0%0-10 0%0-10 0%------0-10 0%---0-10 0%0-10 0%0-10 0%-
#7daqin0-80  0%0-10 0%-0-10 0%0-10 0%0-10 0%------0-10 0%---0-10 0%0-10 0%0-10 0%-
#8mcrave7-68  9%1-10 9%-1-10 9%0-5 0%1-8 11%------1-10 9%---1-10 9%0-5 0%2-10 17%-
#9iron0-70  0%0-10 0%---0-10 0%-0-10 0%--0-10 0%-----0-10 0%0-10 0%0-10 0%-
#10zzzkbot24-37  39%-5-8 38%--0-2 0%9-10 47%--9-10 47%-0-1 0%-0-1 0%-0-1 0%---1-4 20%
#11steamhammer57-15  79%-10-2 83%--6-7 46%1-2 33%--10-2 83%-10-0 100%-0-1 0%-10-1 91%---10-0 100%
#13lastorder24-21  53%-0-1 0%--10-2 83%0-1 0%--2-4 33%-0-1 0%-10-6 62%-1-3 25%---1-3 25%
#14tyr15-13  54%2-3 40%-0-1 0%3-4 43%10-1 91%------0-1 0%---0-1 0%0-1 0%0-1 0%-
#15metabot41-13  76%10-2 83%-8-3 73%0-1 0%0-1 0%------10-1 91%---1-2 33%2-3 40%10-0 100%-
#16letabot26-18  59%4-5 44%---1-2 33%-10-0 100%--8-5 62%-----0-1 0%0-1 0%3-4 43%-
#17arrakhammer27-22  55%-7-8 47%--10-0 100%0-1 0%--0-1 0%-3-4 43%-5-4 56%-2-3 40%---0-1 0%
#18ecgberht38-18  68%0-1 0%---10-0 100%-0-1 0%--1-2 33%-----10-7 59%10-0 100%7-7 50%-
#19ualbertabot50-10  83%----10-1 91%-0-1 0%10-0 100%10-4 71%---10-4 71%10-0 100%-----
#20ximp27-15  64%2-3 40%-0-1 0%0-1 0%0-1 0%------10-0 100%---5-6 45%0-1 0%10-2 83%-
#21cdbot46-13  78%-10-0 100%--0-1 0%1-2 33%--4-5 44%-10-3 77%-1-2 33%-10-0 100%---10-0 100%
#22aiur48-15  76%1-2 33%-10-1 91%7-5 58%0-1 0%------9-3 75%---1-2 33%10-1 91%10-0 100%-
#23killall40-5  89%-10-0 100%--0-1 0%10-0 100%--0-1 0%-10-0 100%-10-1 91%-0-1 0%---0-1 0%
#24willyt34-10  77%4-5 44%---0-1 0%-0-1 0%--0-1 0%-----10-2 83%10-0 100%10-0 100%-
#25ailien28-32  47%-9-10 47%--1-4 20%0-1 0%--3-6 33%-0-1 0%-10-2 83%-5-7 42%---0-1 0%
#26cunybot67-1  99%-10-0 100%--10-0 100%0-1 0%--10-0 100%-10-0 100%-7-0 100%-10-0 100%---10-0 100%
#27hellbot74-0  100%10-0 100%-10-0 100%6-0 100%10-0 100%------8-0 100%---10-0 100%10-0 100%10-0 100%-
overall-  42%35-101 26%61-39 61%29-66 31%16-66 20%79-113 41%21-28 43%10-23 30%10-0 100%48-43 53%9-28 24%43-20 68%38-65 37%53-31 63%10-0 100%38-26 59%38-101 27%42-82 34%62-94 40%32-20 62%

The total column tells how successful Microwave was in recent games against each opponent. You might want to compare the percentages against the overall win rates from the official crosstable; they sometimes vary curiously. When the recorded results were less successful than the total results, it suggests that Microwave may have forgotten too much (though it could be random fluctuation). For example, Microwave scored 80% against LetaBot overall, but 59% in the recent games in this table.

The overall row tells how successful each opening was in recent games. Every opening was successful against some opponents, so there were no useless strategies. The body of the table, from #10 ZZZKBot and down, is full of strong contrasts, meaning that there was a big difference between the successful and unsuccessful openings against each opponent. That suggests that learning must have been useful.

Trackbacks

No Trackbacks

Comments

Jay Scott on :

Oops, there is an error. The loss counts in the overall row are incorrect, though I think the percentages are right. I’ll correct it tomorrow.

MicroDK on :

Thanks for the analysis! I am not sure Microwave can beat the top 9 bots with new openings. My bot needs better playing skills like runbys, drops, muta harass etc...

MicroDK on :

Also, since I am using UCB, I need to keep the amount of openings to 5-8. In a long tournament like CIG and AIIDE I could ad up to 15 openings per race but in SSCAIT it just takes forever. I consider a similar approach as Steamhammer saving opponent info for each game and trying to find a counter for it. Against fast rushers and bots that play the same strategy, it needs fewer games to find the correct counter.

Jay Scott on :

Observation: A few openings did not contribute, but dragged down results. They turned out to never be the best available opening against any opponent except against opponents which Microwave scored 0% or 100% against. If I read the table carefully enough, they are 3HatchPoolHydra, 9PoolLurker, and ZvT_12HatchHydra.

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.