Abstract
This article presents a modified version of the multi-objective genetic algorithm NSGA II in order to find optimal opening strategies in the real-time strategy game StarCraft II. Based on an event-driven simulator capable of performing an accurate estimate of in-game build-times the quality of different build lists can be judged. These build lists are used as chromosomes within the genetic algorithm. Procedural constraints e.g. given by the Tech-Tree or other game mechanisms, are implicitly encoded into them. Typical goals are to find the build list producing most units of one or more certain types up to a certain time (Rush) or to produce one unit as early as possible (Tech-Push). Here, the number of entries in a build list varies and the objective values have in contrast to the search space a very small diversity. We introduce our game simulator including its graphical user interface, the modifications necessary to fit the genetic algorithm to our problem, test our algorithm on different Tech-Pushes and Rushes for all three races, and validate it with empirical data of expert StarCraft II players.
Similar content being viewed by others
Notes
©2010 Blizzard Entertainment, Inc. All rights reserved. Wings of Liberty is a trademark, and StarCraft and Blizzard Entertainment are trademarks or registered trademarks of Blizzard Entertainment, Inc. in the U.S. and/or other countries.
References
Beume N, Naujoks B, Emmerich M (2007) Sms-emoa: multiobjective selection based on dominated hypervolume. Eur J Oper Res 181(3):1653–1669
Cantú-Paz E (1998) A survey of parallel genetic algorithms. Calc. Parallèles 10(2):141–171
Churchill D, Buro M (2011) Build order optimization in Starcraft. In: Proceedings of AIIDE, pp 14–19
Davis L, Mitchell M (1991) Handbook of genetic algorithms. Van Nostrand Reinhold, New York
Deb K, Goel T (2001) Controlled elitist non-dominated sorting genetic algorithms for better convergence. In: Evolutionary multi-criterion optimization. Springer, Berlin, pp 67–81
Deb K, Pratap A, Agarwal S, Meyarivan T (2002) A fast and elitist multiobjective genetic algorithm: Nsga-ii. IEEE Trans Evol Comput 6(2):182–197
Dice L (1945) Measures of the amount of ecologic association between species. Ecology 26(3):297–302
Fernández-Ares A, Mora A, Merelo J, García-Sánchez P, Fernandes C (2011) Optimizing player behavior in a real-time strategy game using evolutionary algorithms. In: 2011 IEEE congress on evolutionary computation (CEC). IEEE, New York, pp 2017–2024
Fonseca C, Fleming P (1993) Genetic algorithms for multiobjective optimization: formulation discussion and generalization. In: Proceedings of the 5th international conference on genetic algorithms. Morgan Kaufmann, San Francisco, pp 416–423
Glover F, Laguna M (1998) Tabu search, vol 1. Springer, Berlin
Gmeiner B, Donnert G, Köstler H (2012) Optimizing opening strategies in a real-time strategy game by a multi-objective genetic algorithm. In: Research and development in intelligent systems, vol XXIX, pp 361–374
Goldberg D (1989) Genetic algorithms in search, optimization, and machine learning. Addison-Wesley, Reading
Gropp W, Lusk E, Skjellum A (1999) Using MPI: portable parallel programming with the message passing interface, vol 1. MIT Press, Cambridge
Haupt R (2000) Optimum population size and mutation rate for a simple real genetic algorithm that optimizes array factors. In: Antennas and propagation society international symposium, vol 2. IEEE, New York, pp 1034–1037. doi:10.1109/APS.2000.875398
Haupt R, Haupt S, Wiley J (2004) Practical genetic algorithms. Wiley Online Library
Horn J, Nafpliotis N, Goldberg D (1994) A niched Pareto genetic algorithm for multiobjective optimization. In: Proceedings of the first IEEE conference on evolutionary computation. IEEE world congress on computational intelligence. IEEE, New York, pp 82–87
Jensen M (2003) Reducing the run-time complexity of multiobjective eas: the Nsga-ii and other algorithms. IEEE Trans Evol Comput 7(5):503–515
Knowles J, Corne D (2000) Approximating the nondominated front using the Pareto archived evolution strategy. Evol Comput 8(2):149–172
Mauldin M (1984) Maintaining diversity in genetic search. In: Proceedings of the national conference on artificial intelligence, vol 247, p 250
Misevicius A (2004) An improved hybrid genetic algorithm: new results for the quadratic assignment problem. Knowl-Based Syst 17(2):65–73
Othman N, Decraene J, Cai W, Hu N, Low MYH, Gouaillard A (2012) Simulation-based optimization of Starcraft tactical AI through evolutionary computation. In: 2012 IEEE conference on computational intelligence and games (CIG). IEEE, New York, pp 394–401
Rathe EA, Svendsen JB (2012) Micromanagement in Starcraft using potential fields tuned with a multi-objective genetic algorithm. Ph.D. thesis, Norwegian University of Science and Technology
Shantia A, Begue E, Wiering M (2011) Connectionist reinforcement learning for intelligent unit micro management in Starcraft. In: The 2011 international joint conference on neural networks (IJCNN). IEEE, New York, pp 1794–1801
Synnaeve G, Bessiere P et al. (2011) A Bayesian model for plan recognition in rts games applied to Starcraft. In: Proceedings of AIIDE, pp 79–84
Togelius J, Preuss M, Beume N, Wessing S, Hagelbäck J, Yannakakis GN (2010) Multiobjective exploration of the Starcraft map space. In: Proceedings of the IEEE conference on computational intelligence and games (CIG), pp 265–272
Wall M (1996) A genetic algorithm for resource-constrained scheduling. Ph.D. thesis, Massachusetts Institute of Technology
Wang Z, Nguyen KQ, Thawonmas R, Rinaldo F (2012) Monte-Carlo planning for unit control in Starcraft. In: 2012 IEEE 1st global conference on consumer electronics (GCCE). IEEE, New York, pp 263–264
Zitzler E, Thiele L (1999) Multiobjective evolutionary algorithms: a comparative case study and the strength Pareto approach. IEEE Trans Evol Comput 3(4):257–271
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Köstler, H., Gmeiner, B. A Multi-objective Genetic Algorithm for Build Order Optimization in StarCraft II. Künstl Intell 27, 221–233 (2013). https://doi.org/10.1007/s13218-013-0263-2
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s13218-013-0263-2