| Literature DB >> 32063681 |
Theodosis Georgiou1, Yiannis Demiris1.
Abstract
Personalised content adaptation has great potential to increase user engagement in video games. Procedural generation of user-tailored content increases the self-motivation of players as they immerse themselves in the virtual world. An adaptive user model is needed to capture the skills of the player and enable automatic game content altering algorithms to fit the individual user. We propose an adaptive user modelling approach using a combination of unobtrusive physiological data to identify strengths and weaknesses in user performance in car racing games. Our system creates user-tailored tracks to improve driving habits and user experience, and to keep engagement at high levels. The user modelling approach adopts concepts from the Trace Theory framework; it uses machine learning to extract features from the user's physiological data and game-related actions, and cluster them into low level primitives. These primitives are transformed and evaluated into higher level abstractions such as experience, exploration and attention. These abstractions are subsequently used to provide track alteration decisions for the player. Collection of data and feedback from 52 users allowed us to associate key model variables and outcomes to user responses, and to verify that the model provides statistically significant decisions personalised to the individual player. Tailored game content variations between users in our experiments, as well as the correlations with user satisfaction demonstrate that our algorithm is able to automatically incorporate user feedback in subsequent procedural content generation.Entities:
Keywords: Adaptive modelling; Car racing game; Machine learning; Personalised gaming; Physiological models; Theory of flow; User modelling; User study
Year: 2017 PMID: 32063681 PMCID: PMC6994227 DOI: 10.1007/s11257-017-9192-3
Source DB: PubMed Journal: User Model User-adapt Interact ISSN: 0924-1868 Impact factor: 4.412
Fig. 1An overview of our personalised user modelling approach for evaluating a driver in car racing. Low level inputs are being converted to performance metrics using either the expert or the user’s “best” data. They are then transformed using Trace Theory through game related rules and significance weights into values representing variables from the concept of flow. Finally, the performance and state of the user, that is represented by these variables, are exploited to instruct how each segment path is going to be altered
Fig. 2a Our custom car simulator setup consisting of Vision Racer Seat with a force feedback steering wheel, pedals and three monitors to enhance the user’s immersion to the game. Two RGB-D cameras as well as an eye tracker was installed to capture the user’s physiological signals. b Screenshot from our customised track. c Track used for the experiments split manually into six segments
Game-related questions asked before and after the experiment
| ID | Questions | Options |
|---|---|---|
| Before the experiment | ||
| | How often do you play car racing games? | [Never, Occasionally, Frequently, Every Day] |
| | How would you rate yourself in car racing games? | [Beginner, Intermediate, Advanced, Expert] |
| After the completion of the experiment | ||
| | How would you rate yourself in the racing game you tried? | [Beginner, Intermediate, Advanced, Expert] |
| | How would you rate the path of the given track? | [Very Easy, Easy, Medium, Hard, Very Hard] |
| | As you loop through the track did you feel that you improved? | [Nothing at all, Little Bit, Quite a lot, Very Much] |
| | Did you feel tired during the experiment because of the lap repetition? | [Nothing at all, Little Bit, Quite a lot, Very Much] |
The raw variables collected for the user model, directly from the sensors
| Non-physiological | Physiological | ||
|---|---|---|---|
| User inputs | Game outputs | Eye tracker | RGB-D |
| 1. Braking | 4. Time of collisions | 10. Eye gaze (XY) | 13. Camera information |
| 2. Throttle | 5. Car XYZ position | 11. Eye position (XYZ) | 14. Depth (m) |
| 3. Steering (time) | 6. Speed (km/h) | 12. User presence (time) | 15. RGB video (time) |
| 7. Virtual orientation | |||
| 8. Lap No. | |||
| 9. Time | |||
The primitives of the lowest level of the user model extracted from the raw variables
| Non-physiological | Physiological | ||
|---|---|---|---|
| User inputs | Game outputs | Eye tracker | Head pose |
| 1. Average braking | 6. No. of collisions | 10. No. of blinks/s | 17. CN of HP |
| 2. Average throttle | 7. Car XYZ position | 11. Screen concentration | 18. CC of HP |
| 3. Average steering | 8. Position and speed | 12. CN of EG | 19. CN of HP and VO |
| 4. CN of user inputs | 9. (Segment time) | 13. CC of EG | 20. CC of HP and VO |
| 5. CC of user inputs | 14. CN of EG and VO | ||
| 15. CC of EG and VO | |||
| 16. Eye fixations | |||
CN cluster number, CC cluster centres, VO virtual orientation, EG eye gaze, HP head pose
Fig. 3a Comparison of optimal (blue—circles) and user’s (red—squares) path. b Optimal points (blue—circles) and user point (red—square) forming the vectors. (Color figure online)
Spearman correlation values of the performance metrics against segment time between user and expert data
| Metrics | Rho-value (user) | Rho-value (expert) |
|---|---|---|
| 1. Cluster number of eye gaze and virtual orientation | 0.37 | 0.35 |
| 2. Cluster centres of eye gaze and virtual orientation |
| 0.28 |
| 3. Cluster number of eye gaze | 0.27 | 0.19 |
| 4. Cluster centres of eye gaze | 0.31 | 0.14 |
| 5. No. of blinks/s | 0.27 | 0.17 |
| 6. Screen time | 0.28 | 0.17 |
| 7. No. of collisions/s |
|
|
| 8. Path with speed performance |
|
|
| 9. Path performance |
|
|
| 10. Cluster number of head pose and virtual orientation |
|
|
| 11. Cluster centres of head pose and virtual orientation |
| 0.38 |
| 12. Cluster number of head pose | 0.23 | 0.14 |
| 13. Cluster centres of head pose |
| 0.11 |
| 14. Cluster centres of user inputs |
|
|
| 15. Cluster number of user inputs |
|
|
| 16. Average braking | 0.21 | 0.25 |
| 17. Average throttle |
|
|
| 18. Average steering |
| 0.33 |
| 19. Eye Fixations | 0.20 | 0.17 |
All p values are . The closer the value is to 1 the closer the particular variable is more correlated to the segment time. As anticipated the physiological signals have on average lower significance to the time than the non-physiological. (Values are in bold)
Spearman correlation values of the performance metrics against each segment time between user and expert data
|
|
|
|
|
| ||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Metrics | Rho (user) | Rho (expert) | Rho (user) | Rho (expert) | Rho (user) | Rho (expert) | Rho (user) | Rho (expert) | Rho (user) | Rho (expert) |
| 1. CN of EG and VO | 0.32 | 0.36 | 0.37 | 0.28 |
| 0.34 | 0.25 | 0.27 |
|
|
| 2. CC of EG and VO | 0.39 | 0.33 |
| 0.23 |
|
| 0.30 | 0.24 |
| 0.37 |
| 3. CN of EG | 0.22 | 0.24 | 0.25 | 0.20 | 0.27 | 0.29 | 0.19 | 0.13 | 0.38 | 0.08 |
| 4. CC of EG | 0.33 | 0.18 | 0.32 | 0.20 | 0.31 | 0.16 | 0.21 | 0.19 | 0.39 | 0.21 |
| 5. No. of blinks/s | 0.23 | 0.18 | 0.24 | 0.04 | 0.28 | 0.22 | 0.30 | 0.23 | 0.29 | 0.23 |
| 6. Screen time | 0.27 | 0.23 | 0.28 | 0.01 | 0.27 | 0.25 | 0.30 | 0.26 | 0.31 | 0.15 |
| 7. No. of collisions/s |
|
|
|
|
|
| 0.25 | 0.23 |
|
|
| 8. Path with speed Perf. |
|
|
|
|
|
|
|
|
|
|
| 9. Path performance |
| 0.34 |
|
|
| 0.35 | 0.35 | 0.33 |
|
|
| 10. CN of HP and VO |
|
| 0.36 | 0.33 |
|
| 0.30 |
|
|
|
| 11. CC of HP and VO |
|
|
|
|
|
| 0.38 | 0.35 |
|
|
| 12. CN of HP | 0.26 | 0.31 | 0.27 | 0.29 | 0.19 | 0.23 | 0.06 | 0.04 | 0.31 | 0.36 |
| 13. CC of HP | 0.37 | 0.09 | 0.36 | 0.09 | 0.37 | 0.07 | 0.27 | 0.11 |
| 0.19 |
| 14. CC of user inputs |
|
|
|
|
|
| 0.31 | 0.04 |
|
|
| 15. CN of user inputs |
|
|
|
|
|
| 0.27 |
|
|
|
| 16. Average braking | 0.18 |
| 0.35 |
| 0.19 | 0.20 | 0.15 |
| 0.26 | 0.34 |
| 17. Average throttle |
|
|
|
|
|
| 0.36 |
|
|
|
| 18. Average steering |
| 0.25 |
|
|
| 0.33 | 0.32 | 0.16 |
|
|
| 19. Eye fixations | 0.20 | 0.22 | 0.18 | 0.23 | 0.20 | 0.02 | 0.15 | 0.11 | 0.25 | 0.23 |
Images show the path of each segment along with the expert’s trial. All p values are and therefore correlations are statistically significant. Correlations which are close to 0 show that the values obtained from the particular metric didn’t reveal any relationship to the improvement of segment time. (Values are in bold)
CN cluster number, CC cluster centres, VO virtual orientation, EG eye gaze, HP head pose
Spearman correlation of the model’s outcomes for three different group of variables; All, Physio, Non-Physio
| Figure ID | Metrics | All | Physio | Non physio |
|---|---|---|---|---|
|
| 1. LM percentage | 0.95 | 0.58 | 0.95 |
|
| 2. LM percentage optimal | 0.95 | 0.58 | 0.94 |
|
| 3. Spearman | 0.86 | 0.54 | 0.86 |
|
| 4. Spearman segments | 0.87 | 0.56 | 0.87 |
| 5. LM raw | 0.50 | 0.58 | 0.55 | |
|
| 6. LM raw optimal | 0.73 | 0.58 | 0.92 |
| 7. LM raw positive | 0.86 | 0.56 | 0.92 | |
|
| 8. LM raw positive optimal | 0.87 | 0.56 | 0.92 |
All correlations are statistically significant with p values
Fig. 4Outcomes of different models for group All. Between the models tested, LM Perc provides the best weights for a linear correlation between the combined metrics and the time performance. LM Perc and LM Perc Opt have identical correlations () since the latter only corrected some peaks in the values
Fig. 5Outcomes of different models for group Physio. Between the models tested, LM Perc provides the best weights for a linear correlation between the combined physio metrics and the time performance. LM Perc and LM Perc Opt have identical correlations () since the latter only corrected some peaks in the values
Fig. 6Outcomes of different models for group Non-Physio. Between the models tested, LM Perc provides the best weights for a linear correlation between the combined non-physio metrics and the time performance. LM Perc and LM Perc Opt have identical correlations () since the latter only corrected some peaks in the values
Weights of each performance metric in the All group, generated from the expert comparisons using the linear regression model constrained for positive value coefficients (LM Perc)
| Metrics | Segment 2 | Segment 3 | Segment 4 | Segment 5 | Segment 6 |
|---|---|---|---|---|---|
| 1. CN of EG and VO |
|
|
|
|
|
| 2. CC of EG and VO |
|
| 2.2e |
|
|
| 3. CN of EG | 1.8e |
| 5.8e |
|
|
| 4. CC of EG | 7.3e |
|
| 3.4e | 3.3e |
| 5. No. of blinks/s |
| 4.1e | 3.4e | 4.1e |
|
| 6. Screen time | 2.2e | 4.8e |
|
| 4.9e |
| 7. No. of collisions/s | 1.6e | 2.0e | 6.3e |
|
|
| 8. Path with speed Perf. |
|
|
|
|
|
| 9. Path performance | 6.0e | 3.5e | 2.0e |
| 1.6e |
| 10. CN of HP and VO |
|
|
|
|
|
| 11. CC of HP and VO |
|
|
| 1.4e |
|
| 12. CN of HP |
| 4.3e | 6.2e |
|
|
| 13. CC of HP |
| 2.5e |
|
| 2.4e |
| 14. CC of user inputs |
|
| 3.5e | 7.2e |
|
| 15. CN of user inputs |
|
|
|
|
|
| 16. Average braking | 2.6e |
| 1.1e |
|
|
| 17. Average throttle |
|
|
|
|
|
| 18. Average steering |
|
| 2.4e |
| 3.2e |
| 19. Eye fixations |
|
| 8.8e | 1.2e |
|
Table shows the amount of significance of a metric according to the segment’s path. Each column adds up to one. These values were used to derive our results in the expert model
CN cluster number, CC cluster centres, VO virtual orientation, EG eye gaze, HP head pose
Weights of each performance metric in the Physio group, generated from the expert comparisons using the linear regression model constrained for positive value coefficients (LM Perc)
| Metrics | Segment 2 | Segment 3 | Segment 4 | Segment 5 | Segment 6 |
|---|---|---|---|---|---|
| 1. CN of EG and VO |
|
|
|
|
|
| 2. CC of EG and VO |
|
|
|
|
|
| 3. CN of EG |
|
|
| 2.7e |
|
| 4. CC of EG | 1.5e |
| 1.5e | 1.2e | 9.6e |
| 5. No. of blinks/s |
| 8.0e |
|
|
|
| 6. Screen time | 2.3e | 6.6e |
| 2.0e | 2.6e |
| 7. CN of HP and VO |
|
|
|
|
|
| 8. CC of HP and VO |
|
|
|
|
|
| 9. CN of HP |
|
|
| 5.0e |
|
| 10. CC of HP | 2.1e | 6.0e | 3.2e | 3.8e |
|
| 11. Eye fixations |
|
| 2.6e | 1.4e |
|
Table shows the amount of significance of a metric according to the segment’s path. Each column adds up to one. These values were used to derive our results in the expert model
CN cluster number, CC cluster centres, VO virtual orientation, EG eye gaze, HP head pose
Weights of each performance metric in the Non physio group, generated from the expert comparisons using the linear regression model constrained for positive value coefficients (LM Perc)
| Metrics | Segment 2 | Segment 3 | Segment 4 | Segment 5 | Segment 6 |
|---|---|---|---|---|---|
| 1. Path with speed Perf. |
|
|
|
|
|
| 2. Path performance | 1.3e | 3.1e | 7.0e |
| 4.0e |
| 3. CC of user inputs |
|
| 1.3e | 6.5e |
|
| 4. CN of user inputs |
|
|
|
|
|
| 5. Average braking | 1.1e |
| 1.6e |
|
|
| 6. Average throttle |
|
|
|
|
|
| 7. Average steering |
|
| 1.1e |
| 1.9e |
| 8. No. of collisions/s | 6.5e | 8.6e | 6.4e |
|
|
Table shows the amount of significance of a metric according to the segment’s path. Each column adds up to one. These values were used to derive our results in the expert model
Fig. 7The two figures show how the area of the region of flow reduces between high and low Attention. The flow region defines the optimal region for user engagement. In the low attention case, the region of flow becomes narrower and the user model’s variables are compared between themselves than to the threshold parameters
Fig. 8a The outcome of the Segment Altering Decision algorithm depends on the values of Exploration, Experience and Attention and their assigned thresholds. b 3D Lattice of User Model showing the implicit space of the high level variables instructing the algorithm to change a particular segment. Colour coding of the decisions is respected between the two figures. (Color figure online)
Values of the various thresholds and parameters of the model
| Variable | Percentage |
|---|---|
| 1. | 20 |
| 2. | 20 |
| 3. | 40 |
| 4. | 40 |
| 5. | 50 |
| 6. | 50 |
For each segment s and each metric k is possible to use a different value, however in order to retrieve our results we used the same for all segments and metrics
User demographic profiling: static (Nos. 1–5) and game specific (Nos. 6–10) information analytics regarding the users in our experiment
| Analytics from 52 subjects | Results |
|---|---|
| 1. Age | 19–35 ( |
| 2. Driving years | 0–18 ( |
| 3. Gender | 87% men, 13% women |
| 4. Driving license | 83% yes, 17% no |
| 5. Game play frequency | 31% never, 52% occasionally, 15% frequently, 2% every day |
| 6. Track difficulty | 4% easy, 54% medium, 38% hard, 4% very hard |
| 7. Improvement | 1 nothing, 27 little, 14 a lot, 10 very much |
| 8. Fatigue | 24 nothing, 21 little, 6 a lot, 1 very much |
| 9. Pre self-rating | 21 beginners, 18 intermediates, 12 advanced, 1 expert |
| 10. Post self-rating | 25 beginners, 18 intermediates, 9 advanced |
We collected data from 52 subjects of broad range of ages, both genders and various skills in real driving and car game racing
Fig. 937% of the users changed their decision by only one level during self-rate before and after the experiment. Therefore, to be able to retrieve combined results from both of their responses, we re-evaluate each user into three groups
Fig. 10a Game play Frequency responses versus Self-Rate groups give statistically significant results using Kruskal–Wallis test (p value ). b Improved responses versus Self-Rate groups give statistically significant results using Kruskal–Wallis test (p value )
Chi-square table of algorithm variability (expert model) versus users reported skill shows statistically significant results ()
| Group: categories | Easy | Same | Challenging | Total |
|---|---|---|---|---|
| Beginner | 67 [42.54] | 68 [77.54] | 5 [19.92] | 140 |
| Intermediate | 12 [25.83] | 57 [47.08] | 16 [12.10] | 85 |
| Advanced | 0 [10.63] | 19 [19.38] | 16 [4.98] | 35 |
| Total | 79 | 144 | 37 | 260 |
Number in the squared parentheses indicate the expected value of each group in the particular category
Fig. 11a Boxplots of the average score of track altering decision of each user against their skill response. Kruskal–Wallis test shows statistically significant results: , . Whereas Spearman Correlation: , p value shows a strong positive correlation. b Boxplots of the average score Attention of each user against their response on fatigue. Kruskal–Wallis test shows statistically significant results: , . Spearman Correlation detects a negative correlation: , . c Boxplots of the average score on Experience of each user against their response on self-reported skill. Kruskal–Wallis test shows statistically significant results: , . Spearman Correlation gives a strong positive correlation: , . d Boxplots of the average score on Exploration of each user against their response on improvement. Kruskal–Wallis test shows statistically significant results: , . Whereas Spearman correlation shows a negative correlation: ,
Fig. 12a Comparison of the ordinal outputs between models using expert and user data comparisons. Wilcoxon signed rank (two-tailed) test gives and p value , as some of the outcomes shifted towards higher levels. b Outputs of high level variables of the two models using expert and user’s “best” data comparisons. The boundaries between the vertical lines indicate the results from different users. For all the variables and for each user, the trends are similar (some differ with a fixed bias per user). Therefore, the difference in results is because the model is overconfident for the abilities of each user and the particular thresholds chosen
Chi-square table of algorithm variability (User “best” model) versus users reported skill give statistically significant results (, )
| Group: categories | Easy | Same | Challenging | Total |
|---|---|---|---|---|
| Beginner | 30 [18.84] | 71 [71.27] | 11 [21.89] | 112 |
| Intermediate | 7 [13.79] | 57 [52.18] | 18 [16.03] | 82 |
| Advanced | 0 [4.37] | 12 [16.55] | 14 [5.08] | 26 |
| Total | 37 | 140 | 43 | 220 |
Number in the squared parentheses indicate the expected value of each group in the particular category
Fig. 13Boxplots of the average score of track altering of each user against their skill response. Kruskal–Wallis test shows statistically significant results: , . Spearman correlation is strongly positive: ,