# Towards Adaptive Gamification: A Method Using Dynamic Player Profile and a Case Study
## 5 Adaptive Method Evaluation  
### Simulation System  
We assume that an adaptive gamification strategy works if the game element proposed to the users fit their \"real\" player profile at any time \(t\). Considering that we simulate the player using a bot, in the following, we note the \"real\" profile of the bot as \(RPT_{0}\), and its player type rating at time \(t\) as \(PR^{(t)}\). We also assume that the bot's real player type does not change over time, \(RPT_{t}=RPT_{0}\), in such a way that we can measure the convergence of our algorithm to a particular player type. The values of \(RPT_{0}\) come from a dataset containing user types HEXAD test results ([[https://gamified.uk/UserTypeTest2016/user-type-test-results.php](https://gamified.uk/UserTypeTest2016/user-type-test-results.php)]([https://gamified.uk/UserTypeTest2016/user-type-test-results.php](https://gamified.uk/UserTypeTest2016/user-type-test-results.php)), accessed on \(1\) November 2021), where 42,782 tests were carried out, obtaining average type scores for all the modalities of players. We selected the eleven most representative modalities (see Table _Summary_ in previous URL) and their corresponding average type scores (see also Table _Average Type Scores_). For instance, the Achiever modality appears in 12% of tests and its average scores are \(RPT_{0}=(0.12,\ 0.18,\ 0.20,\ 0.16,\ 0.16,\ 0.17,\ 0.0)\) meaning 12% disruptor, 18% free spirit, 20% achiever, 16% player, 16% socializer, 17% philanthropist, and 0% non-player. Bearing in mind that a real user would either reliably (accurately) or unreliably (inaccurately) answer the HEXAD questionnaire at the beginning of the gamified experience, our bot simulates users' responses accurately or somewhat randomly. Therefore, we define \(PR^{(0)}\) as being close to \(RPT_{0}\) (\(RPT_{0}\simeq PR^{(0)}\)) or far away from (\(RPT_{0}\
eq PR^{(0)}\)). To do so, if the reliability is low, the bot rating \(PR^{(0)}\) is the furthest non-null scores from \(RPT_{0}\) in Table _Average Type Scores_. Otherwise, if the reliability is high, the bot takes its \(PR^{(0)}\) as \(RPT_{0}\). Note that when the bot simulates accurate responses to the questionnaire, it is desirable that the value of \(PR^{(t)}\) remains close to \(RPT_{0}\), while when it simulates inaccurate answers, it is convenient that \(PR^{(t)}\) converges to \(RPT_{0}\) when \(t\rightarrow\infty\). Figure 7 shows the real profile of the bot and its initial player type rating, \(PR^{(0)}\), computed far from or the same as \(RPT_{0}\) in function of whether the questionnaire was reliably (accurately) or unreliably (inaccurately) \"answered\" respectively. Note that this figure is the counterpart of Figure 5 for the simulations using bots. The bot simulates the interaction with the game elements (recall interaction indexes, \(S^{(t)}\), and \(\tau^{(t)}_{i}\), \(n^{(t)}_{i},o^{(t)}_{i}\) as input data of \(s^{(t)}_{i}\) in the bottom left of Figure 2, and Equation 6). Figure 7: Bot’s player type initial rating, \(PR^{0}\), versus real bot’s player type. To do so, we used two variables: the time between two consecutive interactions, \(\top_{i}^{(t)}\), and the opinion, \(\Theta_{i}^{(t)}\), defined as  
\[\top_{i}^{(t)} =-9.5(GM_{i}\cdot RPT_{0})+10 \tag{10}\] \[\Theta_{i}^{(t)} =\frac{1}{5}\ \text{round}\big{(}4(GM_{i}\cdot RPT_{0})+1\big{)} \tag{11}\]  
where \(i\) corresponds to the game element (\(ge_{i}\)) selected by the method. Thus:  
* If the game element (\(ge_{i}\)) fits the real bot's profile (\(RPT_{0}\)), the bot interacts more frequently than otherwise. Therefore, \(\top_{i}^{(t)}\) reflects this behavior by taking values from 0.5 (frequent interactions) to 10 (longer time between interactions);
* Regarding \(n_{i}^{(t)}\), we consider that the bot interacts once every \(\top_{i}^{(t)}\);
* The opinion can be calculated in a similar way using \(\Theta_{i}^{(t)}\). Figure 8 shows the main characteristics of the simulation system.