Dynamic Difficulty Adjustment

One of the important questions that needs to be answered during a game development process is how to keep the game engaging for a wide spectrum of players and for a long time. The “interestingness” of a game depends on many different parts such as the storyline, the right amount of interaction, the attractive presentation, etc. The perceived difficulty of the game also contributes to the time that any given player spends playing it. Games that are too easy or too difficult become boring or frustrating fast. To get the difficulty “right” the developer needs not only to balance all the game parameters, but also to cater for players with very different skill levels. Providing a game with an ability to automatically scale the difficulty depending on the current player would make the games more engaging over longer time. While a few commercial games boast about having such a system and the results of several machine learning techniques applied to dynamic difficulty adjustment (DDA) problem have been published, to the best of our knowledge it has not been researched as a general learning problem. There is a belief that providing players with a personalised, adaptive experience can sustain their attention and keep their interest for longer [2, 3]. One useful way to create a personalized game is to implement a DDA system. We aim at creating a mechanism to allow developing games that provide challenges of the “right” difficulty, i.e., such that players are stimulated but not overburdened. For that, we investigate how DDA can be formulated and solved as a learning problem. A general technique for this problem has natural applications in the huge markets of computer and video games but can also be used to improve the learning rates when applied to serious games. This work is about the design of a DDA system that is driven by the following requirements: • Universality: The resulting system should be applicable to as many games as possible, independently of their type, structure, or features; • Non-intrusiveness: If desired, the resulting system should work in a transparent way, in real-time, not requiring an interaction with players; • Feasibility: There should be guarantees about the resulting system’s performance. The main part of the thesis is organized into three chapters, each of these dealing with the same question but applying to different and progressively more difficult settings. Here in brief are some of the main contributions. First, we start with a precisely defined world of board games and describe a DDA heuristic. Specifically, we propose that in a setting with opponents of the same kind and clearly defined ‘moves’, the DDA mechanism chooses the next move based on the quality of a player’s moves so far. We describe the experiments demonstrating the power of this heuristic, but also go in a particular detail about its limitations. Next, we drop the assumptions about the nature of a game or opponents and require only that players have an ability to adjust the difficulty in real time. A much wider group of games fits this description. The main part of this chapter is about a learning algorithm that utilizes the data collected during the playtesting phases to construct a model or a set of models of players. After the models are created, any new player is provided with a difficulty adjustment that is specified by his or her model.