AIIDE 2020 - Microwave versus BananaBrain
This is the last matchup I can analyze this way without writing more parsing code. McRave did ask for more in a comment, though, so I may do that. All the matchups have featured BananaBrain.
Microwave plays a large number of strategies, so I put it on the left side. Blue is good for Microwave, red is good for BananaBrain.
microwave strategies versus bananabrain strategies
overall | PvZ_10/12gate | PvZ_1basespeedzeal | PvZ_2basespeedzeal | PvZ_4gate2archon | PvZ_5gategoon | PvZ_9/9gate | PvZ_9/9proxygate | PvZ_bisu | PvZ_neobisu | PvZ_sairdt | PvZ_sairgoon | PvZ_sairreaver | PvZ_stove | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
overall | 58/150 39% | 5/17 29% | 3/19 16% | 4/11 36% | 4/9 44% | 4/7 57% | 5/11 45% | 5/12 42% | 4/14 29% | 4/10 40% | 5/10 50% | 6/11 55% | 4/9 44% | 5/10 50% |
10Hatch9Pool9gas | 0/2 0% | - | - | - | 0/1 0% | 0/1 0% | - | - | - | - | - | - | - | - |
10HatchMain9Pool9Gas | 0/1 0% | - | - | - | - | - | - | - | 0/1 0% | - | - | - | - | - |
11HatchTurtleHydra | 0/1 0% | - | - | - | - | - | - | - | - | 0/1 0% | - | - | - | - |
12Hatch | 0/1 0% | 0/1 0% | - | - | - | - | - | - | - | - | - | - | - | - |
12PoolMain | 22/43 51% | 0/5 0% | 0/9 0% | 2/2 100% | 3/3 100% | 3/3 100% | 0/1 0% | 1/3 33% | 2/2 100% | 3/3 100% | 0/3 0% | 2/3 67% | 4/4 100% | 2/2 100% |
12PoolMuta | 0/1 0% | 0/1 0% | - | - | - | - | - | - | - | - | - | - | - | - |
1HatchMuta_Sparkle | 0/1 0% | - | - | - | - | - | - | 0/1 0% | - | - | - | - | - | - |
2HatchMuta | 1/5 20% | - | - | 1/1 100% | - | - | 0/1 0% | - | 0/1 0% | - | - | - | 0/1 0% | 0/1 0% |
3HatchHydraBust | 0/1 0% | - | - | - | - | - | - | - | 0/1 0% | - | - | - | - | - |
3HatchHydra_BHG | 0/1 0% | - | - | 0/1 0% | - | - | - | - | - | - | - | - | - | - |
3HatchLingBust | 2/6 33% | - | 0/1 0% | 0/1 0% | - | - | 1/1 100% | 0/1 0% | - | - | - | 1/1 100% | - | 0/1 0% |
3HatchMuta | 0/1 0% | - | - | - | - | - | - | - | - | 0/1 0% | - | - | - | - |
3HatchPoolHydraExpo | 0/1 0% | 0/1 0% | - | - | - | - | - | - | - | - | - | - | - | - |
4HatchBeforeGas | 0/1 0% | - | - | - | - | - | - | - | - | - | - | 0/1 0% | - | - |
4HatchPoolHydra | 0/2 0% | - | 0/1 0% | 0/1 0% | - | - | - | - | - | - | - | - | - | - |
4PoolHard | 2/6 33% | - | 1/1 100% | 0/1 0% | - | - | 1/1 100% | - | 0/1 0% | - | - | - | - | 0/2 0% |
4PoolSoft | 0/1 0% | - | 0/1 0% | - | - | - | - | - | - | - | - | - | - | - |
6Pool | 0/1 0% | - | 0/1 0% | - | - | - | - | - | - | - | - | - | - | - |
7Pool | 0/1 0% | - | - | - | - | - | - | - | - | - | 0/1 0% | - | - | - |
8Pool | 0/1 0% | - | - | - | - | - | - | - | - | 0/1 0% | - | - | - | - |
8PoolHydraRush8D | 0/1 0% | 0/1 0% | - | - | - | - | - | - | - | - | - | - | - | - |
9PoolGasHatchSpeed8D | 12/18 67% | 2/2 100% | 2/2 100% | - | 1/2 50% | 0/1 0% | 1/1 100% | 0/2 0% | 1/1 100% | 1/1 100% | 1/1 100% | 1/2 50% | 0/1 0% | 2/2 100% |
9PoolHatchGasSpeed7D | 0/1 0% | - | - | - | 0/1 0% | - | - | - | - | - | - | - | - | - |
9PoolHatchGasSpeed8D | 17/32 53% | 3/4 75% | 0/1 0% | 1/1 100% | 0/1 0% | 0/1 0% | 2/4 50% | 4/5 80% | 1/5 20% | 0/1 0% | 4/4 100% | 2/2 100% | 0/2 0% | 0/1 0% |
9PoolSpeed | 0/3 0% | 0/1 0% | - | - | 0/1 0% | - | - | - | - | - | - | 0/1 0% | - | - |
9PoolSpeedLing | 1/5 20% | - | - | - | - | - | 0/1 0% | - | 0/1 0% | - | - | 0/1 0% | 0/1 0% | 1/1 100% |
9PoolSunkHatch | 0/1 0% | - | - | 0/1 0% | - | - | - | - | - | - | - | - | - | - |
Overpool | 0/1 0% | 0/1 0% | - | - | - | - | - | - | - | - | - | - | - | - |
OverpoolSpeed | 0/3 0% | - | 0/1 0% | 0/1 0% | - | - | - | - | 0/1 0% | - | - | - | - | - |
ZvP_10Hatch9Pool | 1/3 33% | - | 0/1 0% | 0/1 0% | - | 1/1 100% | - | - | - | - | - | - | - | - |
ZvP_11Hatch10Pool | 0/1 0% | - | - | - | - | - | - | - | - | 0/1 0% | - | - | - | - |
ZvZ_Overgas9Pool | 0/1 0% | - | - | - | - | - | - | - | - | 0/1 0% | - | - | - | - |
ZvZ_Overpool11Gas | 0/2 0% | - | - | - | - | - | 0/1 0% | - | - | - | 0/1 0% | - | - | - |
This table looks even more scattered than yesterday’s BananaBrain-Dragon table, but to me it tells a story of duelling learning algorithms. Microwave found a few builds that countered BananaBrain’s preferred play, and BananaBrain did not shift its responses far enough to entirely squelch them.
microwave as seen by bananabrain
microwave played | # | bananabrain recognized |
---|---|---|
10Hatch9Pool9gas | 2 | 2 Z_10hatch |
10HatchMain9Pool9Gas | 1 | 1 Z_10hatch |
11HatchTurtleHydra | 1 | 1 Z_12hatch |
12Hatch | 1 | 1 Z_12hatch |
12PoolMain | 43 | 36 Z_12pool | 5 Z_10hatch | 2 Z_unknown |
12PoolMuta | 1 | 1 Z_10hatch |
1HatchMuta_Sparkle | 1 | 1 Z_unknown |
2HatchMuta | 5 | 5 Z_12hatch |
3HatchHydraBust | 1 | 1 Z_12hatch |
3HatchHydra_BHG | 1 | 1 Z_10hatch |
3HatchLingBust | 6 | 6 Z_12hatch |
3HatchMuta | 1 | 1 Z_12hatch |
3HatchPoolHydraExpo | 1 | 1 Z_12hatch |
4HatchBeforeGas | 1 | 1 Z_12hatch |
4HatchPoolHydra | 2 | 2 Z_12hatch |
4PoolHard | 6 | 6 Z_4/5pool |
4PoolSoft | 1 | 1 Z_4/5pool |
6Pool | 1 | 1 Z_4/5pool |
7Pool | 1 | 1 Z_9pool |
8Pool | 1 | 1 Z_9pool |
8PoolHydraRush8D | 1 | 1 Z_9pool |
9PoolGasHatchSpeed8D | 18 | 15 Z_9pool | 3 Z_overpool |
9PoolHatchGasSpeed7D | 1 | 1 Z_9pool |
9PoolHatchGasSpeed8D | 32 | 29 Z_9pool | 3 Z_overpool |
9PoolSpeed | 3 | 2 Z_9poolspeed | 1 Z_9pool |
9PoolSpeedLing | 5 | 5 Z_9poolspeed |
9PoolSunkHatch | 1 | 1 Z_9pool |
Overpool | 1 | 1 Z_overpool |
OverpoolSpeed | 3 | 3 Z_overpool |
ZvP_10Hatch9Pool | 3 | 3 Z_10hatch |
ZvP_11Hatch10Pool | 1 | 1 Z_12hatch |
ZvZ_Overgas9Pool | 1 | 1 Z_12pool |
ZvZ_Overpool11Gas | 2 | 2 Z_overpool |
BananaBrain was accurate at reading Microwave’s initial build. Lumping 11 hatch with 12 hatch is fine, they’re very similar. 12 pool can be difficult to distinguish from 10 hatch, if you scout it late after the second hatchery finishes. It would be useful to better separate 9 pool from overpool, which are significantly different in effect, but it requires close attention to detail. Overall, highly accurate readings with only one wide miss, seeing the overgas 9 pool as 12 pool—and that is a ZvZ build that is extremely rare in ZvP.
It makes quite a contrast with yesterday’s BananaBrain-Dragon analysis, where BananaBrain barely recognized terran builds.
bananabrain as seen by microwave
bananabrain played | # | microwave recognized |
---|---|---|
PvZ_10/12gate | 17 | 13 HeavyRush | 3 Unknown | 1 NakedExpand |
PvZ_1basespeedzeal | 19 | 14 Unknown | 5 HeavyRush |
PvZ_2basespeedzeal | 11 | 4 NakedExpand | 3 Turtle | 3 SafeExpand | 1 HeavyRush |
PvZ_4gate2archon | 9 | 4 NakedExpand | 4 SafeExpand | 1 HeavyRush |
PvZ_5gategoon | 7 | 6 NakedExpand | 1 HeavyRush |
PvZ_9/9gate | 11 | 9 HeavyRush | 2 Unknown |
PvZ_9/9proxygate | 12 | 6 HeavyRush | 6 Unknown |
PvZ_bisu | 14 | 6 SafeExpand | 4 NakedExpand | 2 Turtle | 1 HeavyRush | 1 Unknown |
PvZ_neobisu | 10 | 4 NakedExpand | 3 SafeExpand | 2 Turtle | 1 HeavyRush |
PvZ_sairdt | 10 | 8 Unknown | 2 HeavyRush |
PvZ_sairgoon | 11 | 7 NakedExpand | 1 SafeExpand | 1 Turtle | 1 Unknown | 1 HeavyRush |
PvZ_sairreaver | 9 | 4 SafeExpand | 3 NakedExpand | 2 Turtle |
PvZ_stove | 10 | 7 Unknown | 3 HeavyRush |
Microwave borrowed Steamhammer’s rather crude classification of enemy plans (which was still far in the future when Microwaved forked from Steamhammer). It was intended to be minimal, just enough to allow for basic reactions, to hold the fort until I could raise enough troops to make a sally. Microwave’s recognitions look similar to Steamhammer’s, with the right general tendency but many sloppy variations (which I think are due mostly to weak scouting, with a contribution from overlapping recognition rules).
It’s striking that some recognitions—of dubious accuracy—are dark blue in stark contrast to their neighbors. It gives me the impression that Microwave makes use of the recognized enemy plan, in some cases to good effect. It suggests that more accurate recognition, if the reactions are also good, could be a major improvement.
Comments