Bot Name: Locutus Bot Race: Protoss Author Name(s): Bruce Nielsen Affiliation(s): Independent Nationality(s): Denmark Occupation(s): Software Engineer (These will be listed on the competition website) Bot URL: https://github.com/bmnielsen/Locutus Personal URL: N/A Affiliation URL: N/A Questions about your bot (please answer as many as you can, especially Q 1-3) Q: What is the overall strategy/strategies of your bot? Why did you choose them? Locutus can play a variety of strategies, but generally sticks to macro-heavy strategies using low-tech units. The focus of my development so far has been on the fundamentals, so Locutus lacks the smarts to use higher-tech units well. Q: Did you incorporate any of the following AI techniques in your bot? If you did, please be as specific as possible a) Search-Based AI (Path-Finding, A*, MiniMax, MCTS, etc) Yes, pathfinding is used for generating and detecting walls. b) Offline Machine Learning (Supervised or Unsupervised, but not RL) No c) Offline Reinforcement Learning No d) Online Learning of any kind (Including competition file IO for strategy selection) Yes, Locutus keeps track of past results and attempts to both predict the enemy strategy and based on that + past results decide on the best opening. e) Influence Maps No f) Custom Map Analysis Yes, in the form of using the BWEM and BWTA libraries. g) Hard-coded or rule-based strategy / tactics Yes, basically everything is based on either the fixed opening build order or rule-based reactions (e.g. enemy has cloak tech -> get mobile detection). h) Analysis of bots from previous competitions / hard-coded specific bot counter strategies Yes, training data for the bots carried over from last year is included (generated by just running lots of games and copying the learning files). Ximp gets its own specific build order. i) Any techniques not mentioned here Q: How did you become interested in Starcraft AI? I stumbled across the weekly SSCAIT cast, became a regular viewer, and eventually couldn’t resist making my own bot. Q: How long have you been working on your bot? Approx. 8 months Q: About how many lines of code is your bot? 135000 Q: Why did you choose the race of your bot? It was my favourite when I played. Q: Did you use any existing code as the basis for your bot? If so, why, and what did you change? Yes, Locutus is based on Steamhammer and additionally uses the BWEM and BWEB libraries. The main reason for this was to get started more quickly, without having to spend a lot of time on the basic scaffolding. I’ve changed parts of pretty much everything, especially in regards to macro decisions and openings. Q: What do you feel are the strongest and weakest parts of your bot's overall performance? Strongest: macro and overall stability Weakest: inflexibility in army control, lack of high tech units Q: If you competed in previous tournaments, what did you change for this year's entry? N/A Q: Have you tested your bot against humans? If so, how did it go? Antiga has played against it a couple of times and generally did not have problems beating it. I have not done any specific vs. human optimizations. Q: Any fun or interesting stories about the development / testing of your bot? Q: Any other projects you're working on that you'd like to advertise? Optional Opinion Questions: Q: What is your opinion on the current state of StarCraft AI? How long do you think before computers can beat humans in a best-of-7 match? It's moving forward at a good pace, but without a revolutionary use of ML I don't think we will threaten pro human players soon. We are also nearing the point where support for StarCraft: Remastered will be a requirement for human vs. bot play, as humans generally do not play 1.16.1 any more (and it is difficult to switch back). So I hope that something will happen in that space soon. Q: What do you feel is the biggest hurdle (technological or otherwise) in improving your bot's AI? Right now it is just a question of time, there are always lots of things to do. Further into the future when there is hopefully machine learning involved, there may be technological hurdles (access to training data & hardware). Q: Which bots are the most interesting to you and why? I'm very interested in seeing what the CherryPi team has come up with, as I expect they have been working hard on getting machine learning to work. I also like bots like McRave that can do a lot of things well. AIIDE Specific Question: Q: Do you feel that the current format of iterated round-robin win percentage is a good indicator of bot skill ranking? If not, how would you change it? Yes, in general I think it is a good format.