AIIDE 2019 - what bots wrote data
For the AIIDE 2019 main tournament, I looked in each bot’s write directory to see what files it wrote, if any, and in its AI directory to see if it had prepared data for any opponents. The usual disclaimers apply: A bot does not necessarily use the data it writes. Preparation for specific opponents is not necessarily in the form of data in the AI directory, it might be in code.
| # | bot | info |
|---|---|---|
| 1 | Locutus | The learning files look just like last year’s. Locutus also has pre-learned data for all but 2 of its opponents (DaQin and AITP), plus a number of bots that did not compete. |
| 2 | PurpleWave | The learning files have an initially chosen strategy followed by a sequence of “fingerprinted” enemy strategies. (PurpleWave also has specific preparation for its opponents, but that’s in code rather than data.) |
| 3 | BananaBrain | A learning file for each opponent in the form of brief records of results. Each record consists of date+time, map, BananaBrain’s strategy (“PvZ_9/9gate”), the opponent’s recognized strategy (“Z_10hatch”), a floating point number that I haven’t discovered the meaning of, and the game result. Cool data, I want to analyze it. There is also pre-learned data for 7 of the tournament opponents. |
| 4 | DaQin | Learning files straight from its parent Locutus (very similar to Steamhammer files). There is no visible pre-learned data (in a quick check I also found no opponent-specific code). |
| 5 | Steamhammer | Opponent model files unchanged from last year. Also prepared data for 9 of the tournament opponents. |
| 6 | ZZZKBot | Carried over from last year. Learning files for each opponent with detailed but hard-to-interpret information about each game. |
| 7 | Microwave | One file per opponent listing Microwave’s strategies, with win and loss counts for each limited to a max of 10. Microwave deliberately forgets history. This part is the same as last year. New is a “history” file for each opponent, with a one-line record of data about each game. Also pre-learned files for 8 tournament opponents plus many other bots. The author said in a comment that there may be errors in the learning data due to code bugs. |
| 8 | Iron | Nothing. |
| 9 | XiaoYi | Learning files like its parent SAIDA, for each defeat, internal error, or timeout. |
| 10 | McRave | 2 files for each opponent, one with strategy information for all games similar to last year, and an “info” file which seems to include some kind of build order or unit count information about only one game. |
| 11 | UAlbertaBot | Carried over from past years. For each opponent, a file listing strategies with win and loss counts for each. |
| 12 | AITP | Opponent model files straight from Steamhammer. AITP is a Steamhammer fork. |
| 13 | BunkerBoxeR | Nothing. |
Virtually all bots recorded data about their games and opponents. Only holdover Iron and newcomer BunkerBoxeR chose to ignore history. Most bots from #7 Microwave on up also had prepared data about predictable opponents. Learning is now an expected feature. To aspire to a high finish, you pre-train against your opponents. And ideally come up with a trick that your opponents cannot prepare for, like Locutus’s defensive opening with zealot drop.
I already have scripts to parse most of these learning files. I’ll write a new one for BananaBrain.
Comments
McRave on :
The info file logs what my bot did, what I estimated the enemy to do and what units total were made throughout the game by both sides.
I coded it in a way that it doesn't work properly in tournaments, but works fine on ladders. I'll have to update that going forward.
Johan de Jong on :
Jay Scott on :