An Empirical Study of Machine Learning Algorithms Applied to Modeling Player Behavior in a "First Person Shooter" Video Game
Benjamin Geisler · 2002
Abstract. Modern video games present many challenging applications for artificial intelligence. Agents must not only appear intelligent but must also be fun to play against. In the video game genre of the first person shooter an agent must mimic all the behaviors of a human soldier in a combat situation. The standard opponent in a “first person shooter ” uses a finite-state machine and a series of hand coded rules. Drawbacks of this system include a high level of predictability of opponents and a large amount of work manually programming each rule. Modern advances in machine learning have enabled agents to accurately learn rules from a set of examples. By sampling data from an expert player we use these machine learning algorithms in a first person shooter. With this system in place, the programmer has less work when hand coding the combat rules and the learned behaviors are often more unpredictable and life-like than any hardwired finite state machine. This thesis explores several popular machine learning algorithms and shows how these algorithms can be applied to the game. The empirical study includes decision trees, Naïve Bayes classifiers, neural networks, and neural networks trained using boosting and bagging methods. We show that a subset of AI behaviors can be learned by player modeling using machine learning techniques. Under this system we have successfully been able to learn the combat behaviors of an expert player and apply them to an agent in a modified version of the video game Soldier of Fortune 2. The following tasks were learned: speed of acceleration, direction of movement, direction of facing, and jumping. We evaluate both empirically and aesthetically which learner performed the best and make recommendations for the future. We also have created a system which uses these learned behaviors in a finite-state system within the game at real time. I.