• No results found

Generieke architectuur voor de ontwikkeling van gepersonaliseerde, adaptieve serious games

N/A
N/A
Protected

Academic year: 2021

Share "Generieke architectuur voor de ontwikkeling van gepersonaliseerde, adaptieve serious games"

Copied!
147
0
0

Bezig met laden.... (Bekijk nu de volledige tekst)

Hele tekst

(1)

gepersonaliseerde, adaptieve serious games

Generieke architectuur voor de ontwikkeling van

Academiejaar 2019-2020

Master of Science in de industriële wetenschappen: informatica Masterproef ingediend tot het behalen van de academische graad van

Begeleider: ir. Stéphanie Carlier

Promotoren: prof. dr. ir. Filip De Turck, dr. ir. Femke De Backere

Studentennummer: 01604437

(2)
(3)

gepersonaliseerde, adaptieve serious games

Generieke architectuur voor de ontwikkeling van

Academiejaar 2019-2020

Master of Science in de industriële wetenschappen: informatica Masterproef ingediend tot het behalen van de academische graad van

Begeleider: ir. Stéphanie Carlier

Promotoren: prof. dr. ir. Filip De Turck, dr. ir. Femke De Backere

Studentennummer: 01604437

(4)

Voorwoord

Als eerste zou ik professor Filip De Turck willen bedanken om mij de mogelijkheid te geven om deze thesis te schrijven. Daarbij zou ik ook Femke De Backere en Stéphanie Carlier willen bedanken voor de tips en de geweldige begeleiding tijdens het schrijven van deze thesis. Verder wil ik ook mijn ouders bedanken om steeds in mij te blijven geloven en mij te steunen. Als laatste wil ik Lara bedanken om steeds voor mij te zijn en om me bij te staan tijdens het schrijven van deze thesis.

De auteur geeft de toelating deze masterproef voor consultatie beschikbaar te stellen en de-len van de masterproef te kopiëren voor persoonlijk gebruik. Elk ander gebruik valt onder de bepalingen van het auteursrecht, in het bijzonder met betrekking tot de verplichting de bron uitdrukkelijk te vermelden bij het aanhalen van resultaten uit deze masterproef.

(5)

Generieke architectuur voor de ontwikkeling van

gepersonaliseerde, adaptieve serious games

Vince Naessens

Promotoren: Prof. dr. ir. Filip De Turck, Dr. ir. Femke De Backere Begeleider: ir. Stéphanie Carlier

Faculteit ingenieurswetenschappen en architectuur Academiejaar 2019-2020

Abstract

In de laatste jaren is er een stijging merkbaar in de hoeveelheid serious games. Dit is te ver-klaren door de snelle technologische groei waardoor grotere hoeveelheden gegevens geanalyseerd en verwerkt kunnen worden. Omdat serious games betere resultaten vertonen wanneer ze zich aanpassen aan de capaciteiten van de gebruiker, zijn adaptiviteit en personalisatie twee belang-rijke aspecten. Helaas zijn niet veel serious games werkelijk adaptief en gepersonaliseerd, er wordt vaak gebruik gemaakt van een op voorhand bepaald verloop van het spel. Een generieke architectuur, die gebruikt kan worden voor de ontwikkeling van adaptieve en gepersonaliseerde serious games, bestaat nog niet, waardoor de ontwikkeling van nieuwe serious games trager ver-loopt. Dit onderzoek probeert zo een architectuur te ontwikkelen waarna deze getest wordt door de architectuur in een Flappy Bird serious game te implementeren. Resultaten tonen dat de generieke architectuur het spel adaptief en gepersonaliseerd kan maken. Alternatieve methodes voor adaptatie en personalisatie in de architectuur moeten nog verder getest worden.

(6)

Generic Architecture for the Design of

Personalised, Adaptive Serious Games

Vince Naessens, Author, prof. dr. ir. Filip De Turck, Promotor, dr. ir. Femke De Backere, Promotor, ir. St´ephanie Carlier, Mentor

Abstract— In the last few years, an increase in the amount of serious games on the market was noticeable. This is as a result of a fast technolog-ical growth which allows greater amounts of data to be processed and an-alyzed. Because serious games tend to yield better results when they adapt to the capabilities of the player, adaptivity and personalisation are impor-tant aspects. Unfortunately, not many serious games are truly adaptive and personalised. Only a predefined course of the game is often used. A generic system that can be used for the development of adaptive and personalised serious games does not exist either, which slows the development of new se-rious games. This research aims to develop such generic system after which it is tested by implementing it in a serious game version of Flappy Bird. Results have shown that the generic architecture can adapt and personalise serious games but further testing in possibilities for adaptation and person-alisation is required.

Keywords— serious games, generic architecture, adaptivity, personalisa-tion

I. INTRODUCTION

Serious games are games from which the primary goal is not to entertain people [1]. Instead, they try to enhance skills and knowledge in a wide range of domains. Thanks to vast techno-logical improvements which allow bigger amounts of data to be processed and the fact that computers and mobile devices be-come more and more accessible, an increase in the amount of serious games is noticeable [2, 3]. Serious games have proven to be useful in many domains, such as education, business and healthcare [4, 5]. Serious games in healthcare vary from mental health, which includes psychotherapy, to physical health, which includes fitness and physical rehabilitation.

In serious games, playtime is important because longer play-time results in more accurate calculations of the progress of the user [6]. However, playing the same game for a long time might bore or frustrate the user, resulting in the player not wanting to play the game anymore and thus not making progress. Because of this, the serious game should adapt its course according to the abilities of the user. Games tailored to the user, generally result in better performances of the user, making adaptability and per-sonalisation important aspects for a serious game [7, 4, 5]. The problem with contemporary serious games is that they are not always truly adaptive and personalised. They change difficulty with a predefined rate and do not include the experience of the user. Moreover, no architecture, which allows the development of adaptive and personalised serious games, exists. Therefore re-usability of code, that allows adaptivity in a serious game, is difficult. If a new adaptive serious game is to be developed, it often has to be build from scratch.

The aim of this research is to create a generic architecture which allows serious games to adapt and personalise their game flow to the abilities of the user. Components of the architecture should be able to be integrated in the existing serious games with as few changes to the original code as possible which means

there is no need to start from scratch. External sources like heart rate monitors or personal profiles should also be able to be used in the architecture for adaptation and personalisation. To support as many different serious games on different plat-forms as possible, modularity is important. The architecture will be tested by integrating it with a Flappy Bird serious game for physical rehabilitation after which the following hypotheses will be investigated:

• H1: The system allows the adaptation and personalisation of a serious game using a step-by-step plan without unnecessary changes to the original code

• H2: The system allows adaptation of a serious game using different adaptationmethods

• H3: The Flappy Bird serious game can be integrated in the system, resulting in adaptation and personalisation of the game, using external datasources such as a heart rate monitor and a personal profile.

First, adaptivity and personalisation are discussed in Section A, followed by the use of an adaptive engine in Section II-B. After this, serious games and rehabilitation will be further analysed in Section II-C. Finally, in Section II-D, the approach for this thesis is discussed.

II. RELATED WORK

In the following section, related work to adaptive and person-alised serious games is discussed. Aspects like adaptivity and personalisation will be covered after which serious games for health care will be discussed.

A. Adaptivity and personalisation

Serious games can be adapted to the abilities of the player by using information from the game and from the user. The information is analysed after which new settings for the game are selected. How the game can be adapted, depends on three aspects in which adaptivity can be divided. The first aspect is the method for adaptation of which three key methods are discussed below [8].

• Rule-based adaptation provides certain rules that, when sat-isfied, can perform various actions which determine the further course of the game.

• Plan-based adaptation can be seen as a collection of state-machines. Each plan is a state-machine from which, after a con-dition is met, active states can be selected to determine the fur-ther course of the game [9].

• Model-based adaptation is the most advanced method which provides a model for various game-elements. During the course of the game models are updated after which analysis can deter-mine the difficulty for the game [10]. Model based adaptation

(7)

can be achieved using artificial intelligence.

The second aspect is the time of adaptation resulting in online and offline adaptivity. Online, or realtime, adaptivity can adapt the game while it is being played. A constant stream of infor-mation is continuously received which means analysis should be fast. For offline adaptation all information of the game is anal-ysed after the game session, after which can be determined what the course for the next game session should be. Because infor-mation is only received after a session, more complex analysis can be used.

The last aspect is the place of adaptation from which site and offsite adaptation can be distinguished [11]. For on-site adaptation, the game as well as the system for adaptation are in the same location. No communication over the internet is required to exchange information between the game and the system for adaptation. On the other hand, using offsite adapta-tion, the game and the system for adaptation are not on the same location meaning exchanging of information requires an internet connection.

Personalisation is a form of adaptivity which focuses mainly on personal information and preferences of the user. Person-alisation can be realised manually as well as automatic. Man-ual personalisation is allowing the user to set his or her own preferences [12]. Automatic personalisation can be achieved by analysing the personal information of the user after which player-specific parameters can be set such as the best difficulty for the user. For this form of personalisation no input from the user is required [6].

B. Adaptive engine

Both adaptivity and personalisation can be achieved using an adaptive engine, also called an experience engine [13]. This engine will decide, based on analysis of information of the user and the game, how the game will advance. Tasks can be defined in advance after which the adaptive engine will select the most suitable task at a certain point in time. This is the most important component for adaptation in serious games since it will make all the decisions. Incorrect analysis will result in an incorrect adaptation of the game.

C. Serious games and rehabilitation

In serious games the primary goal is not to entertain the player but to achieve another goal which is determined by the type of serious game. They try to achieve this goal in a playful way, preferably without the user realizing it [1]. As stated earlier, to reach the goal in the most optimal way by letting the player perform better, the game should be adaptive and personalised [7, 4, 5]. Adaptivity and personalisation can be achieved by analysing information from the previously played games from which new tasks can be selected. Apart from adaptivity and per-sonalisation, serious games have other important aspects which increase playtime and thus result in more accurate calculations of the progress of the user [6].

Motivation ensures the user returns to the game regularly by using experience levels and by giving out rewards. Better re-wards tend to enable the player to explore his or her boundaries more [14]. The game should also be challenging enough to not

bore the player but should not be so difficult as to cause frustra-tion [6, 8]. A last aspect must ensure that the player can make progress. Releasing new levels and items regularly gives the player the feeling of making progress which enables the player to keep playing the game [14].

As stated earlier, serious games can be divided in different application domains. Those domains will be discussed in more detail in the following paragraph. A first domain in which the goal is to improve cognitive as well as physical skills, is edu-cation [15]. A second domain covers serious games for mental health, in which persuasive serious games and serious games for psychotherapy reside. Persuasive serious games try to convince the player about a certain viewing point while still enabling free thinking. In serious games for psychotherapy on the other hand, psychotherapy is attempted to be made as pleasant and effective as possible. A last domain are serious games for physical health in which games for physical rehabilitation as well as fitness re-side. Different types of physical rehabilitation can be identified, however, only the two in which serious games can be best ap-plied will be discussed [16]. Orthopedic rehabilitation covers abnormalities of the muscoskeletal system which includes the muscles, bones, joints, ligaments and tendons [17]. Neurologi-cal rehabilitation on the other hand covers abnormalities to the neurological system which can occur from neurological diseases like multiple sclerose and Parkinson’s as well as after incidents like a cerebral haemorrhage or a stroke [18]. For this purpose, a Flappy Bird serious game for shoulder rehabilitation will be developed.

D. Approach

The previous sections have shown that serious games exist in various domains and that its aspects can be achieved using various methods. Unfortunately, not all serious games are truly adaptive and personalised making them not as efficient as they could be. An adaptive engine can be used for this purpose but is often tightly bound to the game. An architecture that allows to develop new adaptive serious games, where no start from scratch is needed, does not exist either. A generic architecture could be the solution for these problems. Such architecture should take into account that many variations exist and thus should be as overarching and modular as possible. External sources like a heart rate monitor should be able to be used for automatic per-sonalisation. For the implementation of a heart rate sensor and for the testing of the architecture, simulations will be used in-stead of real sensors and real people. To test the integration of the architecture, a Flappy Bird serious game for shoulder reha-bilitation will be used.

III. AGENERIC ARCHITECTURE FOR ADAPTIVE SERIOUS GAME DEVELOPMENT

The goal of the architecture is to be able to make a serious game adaptive and personalised after implementing it in the game. Data from the game as well as information from ex-ternal sources, eg., a heart rate sensor, have to be able to be used for analysis in this generic system. Analysis can be per-formed using the different methods for adaptation after which new tasks for the game can be selected or analytics can be gener-ated. The different methods, locations and times for adaptation

(8)

should thus be taken into account while designing the architec-ture. Non-functional requirements like expandability, adaptabil-ity and scalabiladaptabil-ity were also taken into account because a more flexible architecture will result in easier development of serious games. Changes in the game or in a component of the architec-ture should not cause unnecessary changes in other parts of the game or architecture. Because the architecture is as generic as possible, all game-specific and external source specific data will be converted to a uniform objects.

The generic architecture, as shown in Figure 1, consists of four major components: the game, the interpreters, the integra-tor and the adaptive engine.

Each component contains multiple subcomponents depend-ing on the method, location or time of adaptation. The game should be able to send its information as well as be able to run tasks to change the course of the game. A subcomponent, the sender, was defined to handle the sending of information from the game. If onsite adaptation is used, this sender subnent will contain the observer design pattern, since all compo-nents are in the same location. When offsite adaptation is used, a system that sends information over the internet is used. When using communication over the internet, serialisation or encoding is sometimes necessary. Therefore the transformer subcompo-nent was defined which can encode, decode, serialize or serial-ize information. The game and external sources will send their information to the interpreters using these subcomponents. For each type of data, a different interpreter should be used.

The interpreters will receive information from the game and external sources. Therefore, the receiver subcomponent was de-fined. Depending on the location of adaptation, just like the sending, a transformer can be added. This time, it wil decode or deserialize the encoded or serialized information. After re-ceiving, and possibly transforming the data, the data is inter-preted using the interpreter subcomponent. This subcomponent will interpret the game or external source specific information to uniform objects. Interpretation will be different for each type of data. The newly interpreted uniform objects will be send to the integrator using the sender subcomponent. Since the interpreters and integrator are always in the same location, no transformation is required.

The integrator will receive the uniform objects from the in-terpreters after which it will select the correct operation of the adaptive engine, which can handle the type of the uniform ob-jects. Receiving the objects can again be done using the receiver subcomponent. If one adaptive engine does not suffice and mul-tiple instances of the adaptive engine are used, the integrator will

Fig. 1. A general overview of the architecture with its components

also select which adaptive engine will handle the uniform object at that time.

Uniform objects will enter the adaptive engine via a certain operation selected by the integrator. Each operation can handle a different type of uniform object. This operation will select the models in the adaptive engine that can process the type of uniform object. Multiple models can receive the same uniform object so multiple model analysis is possible. The use of models allows different methods and timings for adaptation after which it can generate new tasks for the game, which are collected in the adaptive engine. All collected tasks will be send to the inter-preters that interpret the uniform objects to game-specific tasks using the sender subcomponent. Again, a distinction is made between onsite and offsite adaptation. If offsite adaptation is used, a transformation, using the transformer subcomponent, is possible. If models generate analytic information, it can be send to interpreters that can interpret uniform objects containing an-alytic data.

IV. PROOF OF CONCEPT: FLAPPYBIRD

To test if the previously defined architecture suffices for the personalisation and adaptation of a serious game, a serious game for physical rehabilitation was made. Flappy Bird was chosen for its simple controls which could be converted to exercises. The following will discuss how Flappy Bird was transformed into a serious game after which will be discussed how the archi-tecture was integrated in the game.

A. Transformation into a serious game

The Flappy Bird game in Unity [19] was transformed to a se-rious game for physical rehabilitation using an Intel Realsense depth camera [20] and the Cubemos skeleton tracking SDK [21]. Using the camerafeed and the depth sensor data from the Re-alSense, a skeleton wireframe can be extracted using the Cube-mos skeleton tracking SDK. The locations of the joints of the skeleton can then be used to verify if the user performed the ex-ercise properly. For the Flappy Bird serious game, the lateral raise of the arm will be used as exercise [22]. If the user holds the arm horizontal, the bird will fly upwards. After the Flappy Bird implementation was transformed to a serious game, it had to be made adaptive and personalised for which the generic ar-chitecture was added to the game. The element of the game that will be adapted, is the speed of the bird. Therefor, a method called SetSpeed has been added to the game. This method will later be used as a task for the adaptive engine.

B. Implementation of the architecture

For the integration of the architecture in this serious game, offsite non-realtime adaptation with a rule based model will be used. Here, the score of the previous game, personal profile of the user and the heart rate at the end of the previous game, will be used to determine the tasks for the next game. For sending the messages over the internet, Apache Kafka [23] will be used. Because offsite adaptation is used and the game and adaptive system are completely separated, different technologies can be used. While the Flappy Bird game is written in C#, the adaptive system was written in Java using Spring Boot [24]. This allows for easy deployment of microservices which can be represented

(9)

by the components in the architecture. The uniform object will consist of four fields, describing the object: content will hold the information while contenttype will hold the type of information. The type-field will contain the type of uniform object, this can be a score, tasks, etc. A tag-field will be used to identify the uniform object as it passes trough the architecture.

Both the game and the heart rate simulation generate infor-mation, which is send to the interpreters over the internet using Kafka in the sender subcomponent. Before sending, a seriali-sation of the data occurs so that it can be transported and inter-preted easily. The interpreters that were used, called the Game-dataInterpreterand the HeartbeatsensorInterpreter both receive their information using the receiver subcomponent. Before in-terpreting the information, a deserialisation in the transformer subcomponent occurs. After interpreting the data to a uniform object, it is send to the DataIntegrator using the sender subcom-ponent of the interpreter. Both the interpreter and the integrator are on the same location so no communication over the internet is required and thus no transformation is needed. In this im-plementation, only one adaptive engine is used. Therefor the DataIntegratoronly has to select the appropriate operation of the adaptive engine and doesn’t have to select an adaptive en-gine. The information sent by the interpreters is received in the DataIntegratorusing the receiver subcomponent.

The adaptive engine in this implementation has one model called the TaskModel. The TaskModel is a model in which rule based adaptation occurs. Both the heart rate of the last game as well as the score from that game are used to determine what the speed of the next game will be, which means the adaptation is not realtime. To transport the uniform objects to the Taskmodel, three operations were added to the adaptive engine: ProcessS-core, ProcessHeartbeat and ProcessPlayersettings. All will re-ceive uniform objects containing the type of data they expect from the DataIntegrator. When the model decides on a new speed for the game, the new speed is packed as a task in a uni-form object which is then send by the sender subcomponent of the adaptive engine to the TaskInterpreter. Because the Task-Interpreteris a part of the game, the uniform object will travel over the internet. For this, before sending the task, the task is serialised in the transformer subcomponent of the adaptive en-gine.

When the TaskInterpreter receives the uniform object con-taining the task, it first has to be deserialised. After this, the uniform object can be interpreted to a method, after which the method can be called onto the Flappy Bird game. This will re-sult in the speed of the game to be changed from the adaptive engine after analysing the information from the previous game thus making the game adaptive. Because a personal profile with personal settings can be used, the game is made personal aswell. An overview of the architecture used in the Flappy Bird im-plementation with all its specific components, is shown in Figure 2.

V. EVALUATION SET-UP ANDRESULTS

To evaluate the architecture and to verify the hypotheses, tests were set up. All tests followed by their results will be covered in the following section.

Fig. 2. An overview of the architecture and its components for the Flappy Bird implementation

A. Step-by-step plan

The first test evolves around the integration of the generic system in a serious game. A step-by-step plan was constructed which was then used to integrate the architecture in another se-rious game for physical rehabilitation. A simple dinosaur game was implemented in which the same controls as the Flappy Bird serious game were used. The test for the non-functional require-ment of having as few changes to the original game as possible, is described later.

Results showed that the architecture could be implemented in the game using the step-by-step plan. The adaptive engine changed the difficulty depending on the score of the previous game.

B. Accuracy of adaptation

The next tests check if the adaptive engine of the architecture correctly adapts the game. For this, four series of 30 scoreresults were constructed. Random variation was given to each series to simulate real results of users. The series are discussed below. • The first series had an average constant score from which a slight increase of gamedifficulty was expected.

• In the second series there was an average increase in the scores. This would mean the player can keep up easily and a more drastic increase in difficulty was expected.

• The third series had an average decrease in the scores from which was expected that the engine would make the game easier. • Lastly a score with first an average increase followed by an av-erage decrease in scores was constructed. An increase followed by a decrease in difficulty was expected.

To test if the adaptive engine takes the heart rate values in to account, a simulation heart rate series was constructed aswell. This series consist of 180 heart rate values in which an increas-ing trend can be recognized. The last heartbeat rates are set to be too high for the user so, in combination with the score series, a more drastic decrease in difficulty for the last few games is expected.

For the second test, following results were obtained after sending the simulation series through the system:

• The average constant scores resulted in the adaptive engine making the game slightly more difficult troughout the series as expected.

• The average increasing scores resulted in a more rapid in-crease of difficulty than the average constant scores.

• For the average decreasing scores, the adaptive engine de-creased the difficulty.

• For the score series with the increase followed by the de-crease, the adaptive engine made the game more difficult after

(10)

which the adaptive engine made it easier again.

When the average increasing heart rates were sent into the sys-tem together with the average constant scores, the adaptive en-gine made the game drastically easier in the last few scores of which the results are visible in Figure 3. This went as expected since the last few heart rates in the heart rate series were above the defined maximum heart rate. On the left y-axis, the speed of the game is shown while the right y-axis shows the values of the heart rate.

C. Realtimeliness

To test how fast the architecture can react to certain values, a method for realtime adaptation was added to the model of the adaptive engine. Herewith the duration for adaptation can be measured, thus allowing the engine to be tested for speed. For this the durations from the offsite Flappy Bird game as well as the durations from the onsite dinosaur game are used. Because in Flappy Bird communication happens over the internet, longer durations are expected. To test the maximum throughput of the system, respectively 1, 3 and 5 simulations for scores were run at once in the same system.

Results showed that the offsite adaptation was on average 5 ms slower than onsite adaptation. By running multiple simula-tions at once, the difference was more noticeable. While the du-rations for onsite adaptation increased linearly, the dudu-rations for offsite adaptation increased almost exponentially. The results of this test are visible on Figure 4 on which the left y-axis holds the time of the onsite adaptation while the right y-axis holds those of offiste adaptation.

D. Invasiveness

Because a non-functional requirement of the architecture is to be as flexible as possible, the last tests measure how invasive the architecture is. For this, the amount of lines that changed in the game after implementing the architecture in Flappy Bird and the dinosaur game, were measured. When changing the model to allow realtime adaptation, the amount of lines that changed in other components of the game were also counted.

Results showed that, for the implementation of the architec-ture in the dinosaurgame, 25% of the code handling the scores was for sending the scores to the system. Most of those lines were the implementation of the interface of the sender subcom-ponent. The implementation of the task in the game added 16% to the code handling the speed of the dinosaur. For Flappy Bird, the sender and transformer subcomponents were added in

sep-Fig. 3. The adaptation of the speed (left y-axis) by the adaptive engine using the average constant score series in combination with the increasing heart rate simulations (right y-axis) for 30 games (x-axis).

Fig. 4. The responsetimes of onsite (left y-axis) and offsite (right y-axis) adap-tation of respectively 1, 3 and 5 simultaneous games

arate files. This means the controller for the Flappy Bird seri-ous game only required an additional 3% extra code from which most was for initialisation.

VI. DISCUSSION

The three hypotheses, that were formulated, were confirmed. The dinosaurgame was able to be made adaptive and person-alized using the step-by-step plan. The Flappy Bird serious game was able to support realtime as well as non-realtime adap-tation. The heart rate simulations, that were external sources, were added and allowed for a more personalised adaptation of the difficulty in the game. The use of real test subjects had prob-ably been better since their feedback would tell more about the performance of the system. For the heart rate sensor, a simula-tion was also used where a real heart rate sensor would probably have given more realistic results.

The system allowed a serious game to be made adaptive and personalised using different adaptation techniques varying in method, location and time. Hereby, the same components with similar implementations were used. This allowed for some com-ponents to be reused thanks to the uniform object, which ensures that the system does not depend on game-specific information. Thanks to the modularity of the system, a change in one compo-nent doesn’t necessarily result in changes in other compocompo-nents. The integrator allows the system to be scalable since multiple adaptive engines can be handled by the integrator. Games that generate a lot of information from multiple users can thus be handled.

The use of multiple external sources is supported by the archi-tecture as well. For the implementation only a simulation was used but after some changes in the interpreter, a real heart rate sensor should be able to be used. The architecture is not limited to only heart rate sensors, many other sources can be added for which interpreters should be provided.

For this research, only serious games for physical rehabilita-tion were used to test the system. The system should be generic enough to handle multiple types of serious games but that does not exclude the possibility that the currently defined compo-nents and subcompocompo-nents do not suffice for certain types of se-rious games. The implementations only covered an adaptation in speed afterall. Because of this, multiple ways of adapting the game and more complex types of personalisation should be tested to ensure that the architecture can handle multiple sorts of adaptations. It should be investigated whether these new adaptation- and complex personalisationtechniques require ad-justments to the system. On the other hand, thanks to the sender

(11)

and receiver subcomponents, adding new components can be done efficiently.

Finally, it should be mentioned that the speed and efficiency of the system highly depends on the programmer. An improp-erly implemented component can cause problems throughout the system. If the method for adaptation is not accurately im-plemented, wrong adaptations can occur.

VII. CONCLUSION

To evaluate if a generic architecture for the design of per-sonalised and adaptive serious was able to be developed, two serious games for physical rehabilitation were used. On top of implementing two serious games, the architecture was tested by sending series of simulation scores and heart rates through the system. For all series predictions for how the system should react were made.

Results show that bot the Flappy Bird serious game and the dinosaur serious game could be made adaptive and personalised. The difficulty of the games was adjusted based on scores of pre-vious games as expected. Future work could try to make other types of serious games adaptive and personalised with a more advanced adaptive engine as well as try to add real sensors to measure heart rates. Real subjects could also be used to have a more realistic overview of the performance of the generic sys-tem.

In conclusion, a generic architecture for the design of per-sonalised and adaptive serious games was developed. It can be implemented using a step-by-step plan and was able to adapt serious games for physical rehabilitation. Although only some methods for adaptation were covered and the performance of the system depends on the implementation of the programmer, the architecture shows potential for faster development of adaptive and personalised serious games.

BIBLIOGRAPHY

[1] V. Wattanasoontorn, I. Boada, R. Garc´ıa, and M. Sbert. Serious games for health. Entertainment Computing, 2013. [2] F. Laamarti, M. Eid, and A. El Saddik. An overview of serious games. International Journal of Computer Games Technology, 2014, 2014.

[3] C. Ryan and J. M. Lewis. Computer and Internet Use in the United States:2015. American Community Survey Reports, (September):1–10, 2017.

[4] P. Wouters, C. van Nimwegen, H. van Oostendorp, and E. D. van Der Spek. A meta-analysis of the cognitive and motivational effects of serious games. Journal of Educa-tional Psychology, 105(2):249–265, 2013.

[5] S. V. Gentry et al. Serious gaming and gamification edu-cation in health professions: systematic review. Journal of Medical Internet Research, 21(3), 2019.

[6] A. Streicher and J. D. Smeddinck. Personalized and adap-tive serious games, volume 9970 LNCS. 2016.

[7] C. Y. Chow, R. R. Riantiningtyas, M. B. Kanstrup, M. Pa-pavasileiou, G. D. Liem, and A. Olsen. Can games change children’s eating behaviour? A review of gamification and serious games. Food Quality and Preference, 80(October 2019):103823, 2020.

[8] R. Rasim, A. Z.R. Langi, Munir M., and Y. Rosmansyah. A survey on adaptive engine technology for serious games. AIP Conference Proceedings, 1708(February), 2016. [9] J. M. Thomas and R. M. Young. Annie: Automated

gen-eration of adaptive learner guidance for fun serious games. IEEE Transactions on Learning Technologies, 3(4):329– 343, 2010.

[10] F. Dignum, J. Bradshaw, B. Silverman, and W. van Does-burg. Agents for Games and Simulations - Trends in Tech-niques, Concepts and Design, volume 5920 LNAI. 2009. [11] C. S. Loh, Y. Sheng, and D. Ifenthaler. Serious games

analytics: Methodologies for performance measurement, assessment, and improvement. Serious Games Analyt-ics: Methodologies for Performance Measurement, As-sessment, and Improvement, (June):1–477, 2015.

[12] C. I. Teng. Customization, immersion satisfaction, and online gamer loyalty. Computers in Human Behavior, 26(6):1547–1554, 2010.

[13] F. Bellotti, R. Berta, A. De Gloria, and L. Primavera. Adaptive experience engine for serious games. IEEE Transactions on Computational Intelligence and AI in Games, 1(4):264–280, 2009.

[14] G. Ushaw, R. Davison, J. Eyre, and G. Morgan. Adopting best practices from the games industry in development of serious games for health. ACM International Conference Proceeding Series, 2015-May:1–8, 2015.

[15] P. Backlund and M. Hendrix. Educational games - Are they worth the Effort?: A literature survey of the effectiveness of serious games. 2013 5th International Conference on Games and Virtual Worlds for Serious Applications, VS-GAMES 2013, pages 1–8, 2013.

[16] The College of St. Scholastica. 9 physical therapy special-ties to pursue in your career, Apr 2018.

[17] Orthopedic rehabilitation. consulted at the 18th of february 2020 via https://www.kessler-rehab.com/programs/orthopedic-rehab/.

[18] Neurological rehabilitation. consulted the 18th of february 2020 via https://www.hopkinsmedicine.org/health/. [19] Unity Technologies. Making a flappy bird style

game. consulted at the 15th of february 2020 via https://learn.unity.com/tutorial/.

[20] Intel realsenseR TM technology. consulted at the 18th of february 2020 via https://www.intel.com/.

[21] Skeleton tracking sdk. consulted at the 9th of march 2020 via https://www.cubemos.com/skeleton-tracking-sdk/. [22] Shoulder exercises for stroke patients. consulted at the 18th

of february 2020 via https://www.flintrehab.com/shoulder-exercises-for-stroke-patients/, January 2019.

[23] Apache kafka. consulted at the 5th of march 2020 via https://kafka.apache.org/.

[24] Spring boot. consulted at the 6th of march 2020 via https://spring.io/projects/spring-boot.

(12)

Inhoudsopgave

1 Inleiding 1

1.1 Situatieschets . . . 1

1.2 Probleemstelling . . . 2

1.3 Doel van deze masterproef . . . 2

1.4 Indeling . . . 3

2 Literatuurstudie 4 2.1 Serious games . . . 5

2.1.1 Aspecten van serious games . . . 6

2.1.2 Soorten serious games . . . 8

2.1.3 Tekortkomingen . . . 10

2.2 Adaptiviteit . . . 11

2.2.1 Methodes voor adaptatie . . . 11

2.2.2 Tijdstip van adaptatie . . . 13

(13)

INHOUDSOPGAVE

2.3 Personalisatie . . . 15

2.4 Adaptive Engine . . . 16

2.5 Fysieke revalidatie en serious games . . . 16

2.5.1 Orthopedische revalidatie . . . 17

2.5.2 Neurologische revalidatie . . . 17

2.5.3 Serious games in revalidatie . . . 18

2.6 Conclusie . . . 18 3 Flappy Bird 20 3.1 Basisimplementatie . . . 21 3.1.1 De vogel . . . 21 3.1.2 Gamecontroller . . . 22 3.1.3 Bewegende scene . . . 22

3.2 Transitie naar een serious game . . . 23

3.2.1 Intel RealSense . . . 24

3.2.2 Cubemos skeletontracker . . . 24

3.2.3 Integratie in Flappy Bird . . . 25

3.3 Adaptief en gepersonaliseerd maken van het spel . . . 27

4 Generieke architectuur 28 4.1 Niet-functionele vereisten . . . 29

(14)

INHOUDSOPGAVE

4.3 Opbouw van de architectuur . . . 31

4.4 Componenten . . . 34 4.4.1 De game . . . 35 4.4.2 Interpreters . . . 38 4.4.3 Data Integrator . . . 40 4.4.4 Adaptive Engine . . . 41 4.5 Uniform object . . . 45 4.6 Conclusie . . . 46 5 Implementatie 47 5.1 Technologiekeuzes . . . 48

5.2 Het generiek systeem . . . 49

5.2.1 Uniform object . . . 49

5.2.2 Berichten voor Kafka . . . 50

5.2.3 Interpreters . . . 50 5.2.4 Data Integrator . . . 52 5.2.5 Adaptive Engine . . . 54 5.2.6 TaskInterpreter . . . 57 5.3 Conclusie . . . 59 6 Evaluatie 60 6.1 Hypothesen . . . 61

(15)

INHOUDSOPGAVE

6.2 Testen . . . 62

6.2.1 Integratie van het systeem met een serious game . . . 62

6.2.2 Adaptatie en personalisatie . . . 63

6.2.3 Realtimeliness . . . 67

6.2.4 Invasiviteit van wijzigingen . . . 69

6.3 Conclusie . . . 70

7 Resultaten en discussie 71 7.1 Integratie van het systeem met een serious game . . . 72

7.2 Adaptiviteit en personalisatie . . . 75

7.2.1 Gemiddeld constante scores . . . 75

7.2.2 Gemiddeld stijgende scores . . . 76

7.2.3 Gemiddeld dalende scores . . . 76

7.2.4 Scores met een stijging en een daling . . . 78

7.2.5 Combinatie met hartslagwaarden . . . 78

7.3 Realtimeliness . . . 79

7.4 Invasiviteit van wijzigingen . . . 83

7.5 Hypothesen en Discussie . . . 85

7.5.1 Discussie . . . 87

8 Conclusie en future work 90 8.1 Conclusie . . . 90

(16)

INHOUDSOPGAVE 8.2 Future work . . . 91

Bibliografie 93

Bijlagen 98

A Regels voor het regelgebaseerde model van de adaptive engine 99 B Stappenplan voor de implementatie van de generieke architectuur 101

(17)

Lijst van figuren

2.1 Het flow model (Streicher, 2016). Door adaptiviteit en personalisatie blijft de

gebruiker in het optimum flow channel . . . 7

3.1 Verschillende figuren die gebruikt worden in de animatie van de vogel . . . 22

3.2 Mechanisme voor het oneindig laten doorlopen van de achtergrond . . . 22

3.3 Het Flappy Bird spel terwijl het gespeeld wordt . . . 23

3.4 Het skelet getekend door Cubemos op het dieptebeeld van de Intel RealSense . . 24

3.5 De Flappy Bird serious game voor fysieke revalidatie van de schouder met in de linkerbovenhoek het beeld van de Intel RealSense met hierop de gewrichten (groene bollen) aangeduid. . . 26

4.1 High level werking van de architectuur . . . 31

4.2 Gedetailleerdere opbouw van de architectuur . . . 34

4.3 Game-component met observer pattern bij onsite adaptatie . . . 36

4.4 Game-component met transformer en sender bij offsite adaptatie . . . 37

4.5 Interpreter-componenten voor onsite (a) en offsite (b) adaptatie . . . 39

(18)

LIJST VAN FIGUREN

4.7 Adaptive engines voor onsite (a) en offsite (b) adaptatie . . . 44

4.8 Overzicht van de velden in een uniform object . . . 46

5.1 Algemeen overzicht van de interpreters van de implementatie . . . 53

5.2 Algemeen overzicht van de integrator van de implementatie . . . 54

5.3 Algemeen overzicht van de adaptive engine met bijhorend model van de imple-mentatie . . . 57

5.4 Algemeen overzicht van de volledige architectuur toegepast op de implementatie 59 6.1 Het dinosaurusspel terwijl het gespeeld wordt . . . 63

6.2 Simulatiescores van 30 spellen waarbij de score gemiddeld constant is . . . 65

6.3 Simulatiescores van 30 spellen waarbij de gemiddelde score van de tweede helft hoger ligt dan de eerste helft . . . 65

6.4 Simulatiescores van 30 spellen waarbij de gemiddelde score van de tweede helft lager ligt dan de eerste helft . . . 66

6.5 Simulatiescores van 30 spellen met eerst een stijging van de gemiddelde score gevolgd door een daling . . . 67

6.6 simulatiehartslagwaarden voor 30 spellen met een stijgende trend waarbij elk spel zes hartslagwaarden heeft . . . 68

7.1 Geadapteerde moeilijkheidsgraden (rechter y-as) volgens de waarden van gemid-deld constante scores (linker y-as) in 30 gesimuleerde spellen (x-as) . . . 76

7.2 Geadapteerde moeilijkheidsgraden (rechter y-as) volgens de waarden van gemid-deld stijgende scores (linker y-as) in 30 gesimuleerde spellen (x-as) . . . 77

7.3 Geadapteerde moeilijkheidsgraden (rechter y-as) volgens de waarden van gemid-deld dalende scores (linker y-as) in 30 gesimuleerde spellen (x-as) . . . 77

(19)

LIJST VAN FIGUREN

7.4 Geadapteerde moeilijkheidsgraden (rechter y-as) van eerst stijgende gevolgd door dalende scores (linker y-as) in 30 gesimuleerde spellen (x-as) . . . 78 7.5 Geadapteerde moeilijkheidsgraden volgens de waarden van de gemiddeld stijgende

scores (a) in combinatie met de stijgende hartslagen (b) in 30 gesimuleerde spellen 80 7.6 Geadapteerde moeilijkheidsgraden volgens de waarden van de gemiddeld

stijgen-de scores (a) in combinatie met stijgen-de stijgenstijgen-de hartslagwaarstijgen-den (b) voor realtime adaptatie in 30 gesimuleerde spellen . . . 81 7.7 Responsetijden van het systeem (rechter y-as) voor realtime en offsite adaptatie

van de moeilijkheid (linker y-as) gebruik makende van gemiddeld constante scores in combinatie met gemiddeld stijgende hartslagwaarden . . . 82 7.8 Responsetijden van het systeem (rechter y-as) voor realtime en onsite adaptatie

van de moeilijkheid (linker y-as) gebruik makende van gemiddeld constante scores in combinatie met gemiddeld stijgende hartslagwaarden . . . 83 7.9 Responsetijden van het systeem voor zowel realtime onsite adaptatie als realtime

(20)

Lijst van tabellen

(21)

Lijst van listings

5.1 Structuur van het uniform object in de implementatie . . . 49

5.2 IReceiver interface . . . 51 5.3 ITransformer interface . . . 51 5.4 IInterpreter interface . . . 51 5.5 ISender interface . . . 52 5.6 IIntegrator interface . . . 53 5.7 IAdaptiveEngine interface . . . 54 5.8 IAdaptiveEngineModel interface . . . 55

5.9 Implementatie van de sender voor de Adaptive Engine . . . 55

5.10 Implementatie van de processEndScore-operatie in de Adaptive Engine . . . 57

5.11 TaskInterpreter van Flappy Bird . . . 58

7.1 Het gebruikte uniform object voor de implementatie van het systeem in het dino-saurusspel . . . 72

(22)

1

Inleiding

1.1 Situatieschets

De laatste jaren is er een sterke stijging in het aantal serious games [1]. Dit is te verklaren door de snelgroeiende technologie die het toelaat grotere hoeveelheden gegevens te verwerken en te analyseren. Daarbij worden computers en mobiele toestellen steeds toegankelijker [2] wat de vraag naar serious games en games in het algemeen vergrootte. Serious games zijn games waar de primaire focus niet ligt bij het entertainen van de gebruiker. Hun hoofddoel is eerder om een positieve invloed uit te werken op de gebruiker door een impliciet doel te trachten bereiken wanneer het spel gespeeld wordt. Deze serious games blijken op vele domeinen nuttig te zijn. Zo kan een serious game ervoor zorgen dat een patiënt op een speelse manier kan revalideren na een beroerte [3] alsook studenten helpen om farmaceutische principes aan te leren [4]. Twee belangrijke aspecten van serious games zijn adaptiviteit en personalisatie. Gegevens uit

(23)

2 HOOFDSTUK 1. INLEIDING het spel samen met persoonlijke gegevens, zoals hartslagwaarden, kunnen gebruikt worden om parameters in het spel, die de moeilijkheidsgraad bepalen, bij te sturen waardoor het spel zich op maat van de gebruiker aanpast. Deze persoonlijke aanpak blijkt te resulteren in algemeen betere prestaties in verschillende domeinen waaronder ook serious games. [5, 6, 7]

1.2 Probleemstelling

Ondanks de sterke stijging in het aantal serious games, bestaat er geen generieke architectuur die de ontwikkeling van elk soort serious game ondersteunt. Huidige implementaties van serious games verweven het systeem, dat voor adaptiviteit en personalisatie zorgt, en het spel sterk met elkaar. Dit kan ertoe leiden dat het uitbreiden of aanpassen van bepaalde elementen in de game moeilijk verloopt. Ook, wanneer nieuwe serious games ontwikkeld worden, kan weinig code van het systeem, dat zorgt voor adaptatie, opnieuw gebruikt worden omdat het te sterk in de andere game verwoven zit. Veel serious games zijn daarboven niet werkelijk adaptief of gepersonaliseerd. Ze veranderen het spel slechts met een constante factor en houden bijgevolg geen rekening met de capaciteiten van de gebruiker.

1.3 Doel van deze masterproef

In deze masterproef wordt onderzocht of er een generieke architectuur kan ontwikkeld worden die, door de architectuur te volgen, zoveel mogelijk soorten serious games kan helpen ontwikkelen. Hierbij zou het ook mogelijk moeten zijn om reeds bestaande games adaptief en gepersonaliseerd te maken, door componenten van deze architectuur te implementeren en te integreren in de huidige game. Dit alles zou met zo weinig mogelijk aanpassingen van het originele spel mogelijk moeten zijn. Daarboven moet het ook mogelijk zijn om gegevens die niet afkomstig zijn uit het spel maar uit externe bronnen, zoals een hartslagmonitor, te gebruiken voor adaptatie en personalisatie in de architectuur. Omdat het systeem zoveel mogelijk soorten serious games moet omvatten, zal rekening moeten gehouden worden met het platform waarop het spel zich bevindt en met de soort serious game. Meerdere platformen en meerdere soorten serious games moeten overkoepeld worden waardoor gegevens sterk zullen differentiëren. Om aan te tonen dat

(24)

1.4. INDELING 3 de ontwikkelde architectuur werkt, zal gepoogd worden om van een reeds bestaande game, een adaptieve serious game te maken. Voor deze concrete implementatie van de architectuur, wordt de focus gelegd op serious games voor fysieke revalidatie die aangestuurd kunnen worden met bewegingen. Er zal van het spel Flappy Bird een serious game gemaakt worden waarna hierin de architectuur geïmplementeerd zal worden.

1.4 Indeling

In de literatuurstudie, Hoofdstuk 2, zullen de verschillende soorten serious games en hun bijhorende aspecten besproken worden. Hierna zal dieper ingegaan worden op adaptiviteit en personalisatie. Vervolgens wordt besproken wat een adaptive engine is en hoe die in serious games gebruikt kan worden. Als laatste wordt dieper ingegaan op fysieke revalidatie en hoe serious games hier gebruikt kunnen worden. Het volgende hoofdstuk legt uit hoe van Flappy Bird een serious game voor fysieke revalidatie gemaakt wordt. Hierna volgt een hoofdstuk, Hoofdstuk 4, die de generieke architectuur bespreekt. Hierin wordt rekening gehouden met wat de architectuur moet kunnen en worden de componenten van de architectuur besproken. Na het hoofdstuk van de generieke architectuur, volgt Hoofdstuk 5 waar deze architectuur werkelijk geïmplementeerd wordt. Hierbij wordt in meer detail ingegaan hoe de componenten best geïmplementeerd worden. Hierna volgt een hoofdstuk, Hoofdstuk 6, waarin hypothesen en testen opgesteld worden om de architectuur te testen. Hoe de architectuur presteerde en reageerde op de testen, wordt besproken in het voorlaatste hoofdstuk, Hoofdstuk 7, gevolgd door een discussie. Als laatste, in Hoofdstuk 8, volgt een conclusie samen met wat in verdere onderzoeken nog kan gedaan worden met de architectuur.

(25)

2

Literatuurstudie

In deze literatuurstudie wordt onderzocht wat serious games zijn en welke soorten serious games er momenteel bestaan. Vervolgens wordt het begrip adaptiviteit onder de loep genomen en wordt bekeken in hoeverre dit relevant is voor de ontwikkeling van serious games. Ook bij personalisatie en hoe deze in serious games gebruikt wordt, wordt even stilgestaan. Hierna wordt onderzocht wat een adaptive engine is en hoe deze relevant is voor serious games. Als laatste wordt er in meer detail bekeken hoe serious games ingezet kunnen worden voor een beter fysieke revalidatie en wat hun invloed is voor revalidatie. Hiervoor wordt gekeken welke soorten fysieke revalidatie er bestaan en worden enkele oefeningen voor deze revalidatie besproken.

(26)

2.1. SERIOUS GAMES 5

2.1 Serious games

Serious games focussen zich, in tegenstelling tot gewone games, niet op het entertainen van de speler. Ze proberen op een speelse manier een impliciet doel te behalen en dit liefst zonder dat de gebruiker dit doorheeft [8]. Terwijl de gebruiker zich toelegt op het behalen van een bepaalde score of een bepaalde mijlpaal, probeert de game een bepaald aspect van de gebruiker bij te schaven. Over welk aspect dit gaat, is sterk afhankelijk van het soort serious game. Wanneer het primaire doel van een spel niet entertainment is maar het verbeteren van een bepaald aspect van een gebruiker, kan het een serious game genoemd worden. In deze staat, kan het zijn dat het impliciete doel van de serious game niet optimaal bereikt wordt. Het spel is niet aangepast op basis van de capaciteiten van de gebruiker waardoor mogelijks het impliciet doel minder snel en efficiënt bereikt kan worden. Een spel dat zich aanpast volgens de wensen en capaciteiten van de gebruiker, zorgt er voor dat het spel dichter ligt bij de gebruiker waardoor die bijgevolg mogelijks beter presteert [9, 10]. Het is dus belangrijk dat een serious game niet zomaar een impliciet doel heeft maar dat het dit doel zo snel mogelijk tracht te bereiken. Dit kan verwezenlijkt worden door het spel adaptief en gepersonaliseerd te maken.

Een serious game kan pas adaptief en gepersonaliseerd gemaakt worden wanneer gegevens uit het spel geanalyseerd worden. De resultaten van zo een analyse kunnen meer zeggen over hoe de gebruiker het spel ervaren heeft. Uit deze ervaring kan beslist worden hoe het spel aangepast zal worden. Zo kan beslist worden om het spel makkelijker of moeilijker te maken. Het aanpassen van het spel aan de hand van informatie over de gebruiker en de game zelf, maakt de game adaptief en gepersonaliseerd. Deze adaptieve en gepersonaliseerde serious games hebben al aangetoond betere resultaten te boeken vergeleken met traditionele methodes [5, 6, 7]. Niet onbelangrijk is het feit dat dergelijke serious games enkel effectief zijn als grondig onderzocht wordt wat het impliciete doel is voor een bepaald probleem en of dit doel bereikt kan worden met de gebruikte adaptatietechnieken [11]. In volgende paragrafen wordt een overzicht gegeven van de belangrijke aspecten van een serious game. Vervolgens worden de verschillende soorten serious games besproken waarna ook hun problemen en tekortkomingen in kaart gebracht worden.

(27)

6 HOOFDSTUK 2. LITERATUURSTUDIE

2.1.1 Aspecten van serious games

Serious games bevatten enkele belangrijke aspecten die ervoor zorgen dat, door het spelen van het spel, wel degelijk vooruitgang geboekt wordt en dat het impliciet doel zo optimaal mogelijk bereikt wordt. Het is ook dankzij deze aspecten dat gebruikers frequenter terugkomen naar het spel waardoor op een regelmatige basis aan het impliciete doel gewerkt kan worden. Als het spel genoeg gespeeld wordt, kan immers een accuratere berekening van de vooruitgang van de gebruiker gemaakt worden [10].

Adaptief Zoals eerder besproken, is het beter dat een serious game zich kan aanpassen aan

de capaciteiten van de gebruiker om zo steeds de beste ervaring voor de speler te garanderen. Gegevens van de gebruiker en van het spel worden geanalyseerd waarna aanpassingen aan het spel uitgevoerd kunnen worden. Deze aanpassingen kunnen zowel tijdens als na het spel toegepast worden. Hoe deze aanpassingen, in de vorm van opdrachten, voor het spel geselecteerd worden, wordt in Sectie 2.4 besproken.

Persoonlijk De serious game ligt dichter bij de gebruiker door er persoonlijke elementen aan

toe te voegen. Deze persoonlijke aspecten kan informatie van de speler zijn of simpelweg een avatar die op de speler lijkt. De persoonlijke elementen zorgen er echter voor dat de speler zichzelf herkent in het spel wat leidt tot een immersieve ervaring en meer motivatie [12]. Personalisatie is een vorm van adaptatie waarbij vooral persoonlijke gegevens en preferenties in rekening genomen worden. Op personalisatie wordt in Sectie 2.3 dieper ingegaan.

Motiverend Om ervoor te zorgen dat de gebruiker regelmatig genoeg terugkomt naar het

spel, moet het spel motiverend zijn. Dit kan verwezenlijkt worden door met experience levels te werken en gebruikers beloningen te geven voor het halen van mijlpalen. Moeilijkere levels kunnen zo grotere beloningen opleveren waardoor de speler geprikkeld wordt om moeilijkere levels aan te gaan [13]. Met motivatie moet ook voorzichtig omgesprongen worden. Een gebruiker zou echter verslaafd kunnen worden aan het spel waardoor alle voordelen van de serious game teniet gedaan zouden worden.

(28)

2.1. SERIOUS GAMES 7

Uitdagend Als het spel te eenvoudig is, zal de gebruiker snel verveeld geraken. Daarentegen,

als het spel te moeilijk is, kan geen vooruitgang geboekt worden en zal de speler het spel snel verlaten. Daarboven, wanneer de gebruiker fysieke revalidatie-oefeningen doet door middel van de serious game, zou een te moeilijk spel de gebruiker kunnen forceren. Dit zou de afwijking van de speler kunnen verslechten. Het is daarom belangrijk een goed evenwicht te vinden in de moeilijkheid van het spel. Slechts wanneer de gebruiker vooruitgang boekt, kan het spel moeilijker gemaakt worden. De serious game moet ervoor zorgen dat de speler zich steeds in de

optimum flow channel bevindt. Dit wil zeggen dat de moeilijkheid van het spel evenredig met de

capaciteiten van de speler aangepast wordt zodat er geen verveling of frustratie kan optreden bij de gebruiker wanneer die het spel speelt [10, 14]. Het optimum flow channel kan gezien worden op het Flow model in Figuur 2.1.

Figuur 2.1: Het flow model (Streicher, 2016). Door adaptiviteit en personalisatie blijft de gebruiker in het optimum flow channel

Vooruitgang Het telkens vrijgeven van nieuwe levels of verzamelbare items, geeft de gebruiker

het gevoel er telkens iets nieuws te doen is. Dit zal ervoor zorgen dat de gebruiker niet verveeld geraakt door herhaling. Daarbij is het belangrijk dat de gebruiker positieve feedback krijgt over hoe goed hij/zij het spel speelde. Dit zal de gebruiker het gevoel geven dat wel degelijk vooruitgang geboekt werd waardoor de speler het spel wil blijven spelen [13]. De vooruitgang moet ook gemeten worden zodat deze gegevens gebruikt kunnen worden in het adaptieve aspect van de game. Zo kan bijvoorbeeld afhankelijk van de vooruitgang de moeilijkheid van het spel aangepast worden. Daarentegen, wanneer een trage vooruitgang wordt waargenomen, zou het

(29)

8 HOOFDSTUK 2. LITERATUURSTUDIE spel makkelijker kunnen gemaakt worden.

2.1.2 Soorten serious games

In deze sectie wordt onderscheid gemaakt tussen de verschillende soorten applicatiedomeinen voor serious games in de gezondheidszorg. Een eerste primaire onderverdeling waarin serious games geklasseerd kunnen worden, zijn educatieve serious games. Vervolgens worden persuasieve serious games en serious games voor de mentale gezondheid besproken waarna stil gestaan wordt bij de serious games voor fysieke gezondheid.

Educatieve serious games

Dit type serious games probeert de gebruiker op een speelse manier iets bij de brengen over een bepaald onderwerp. Omdat het leerproces in spelvorm gegoten is, is de speler vaak gemotiveer-der om vergemotiveer-der de doen. Impliciet wordt de gebruiker termen en principes van het ongemotiveer-derwerp aangeleerd wat resulteert in betere cognitieve vaardigheden [15]. UnderControl is een voorbeeld van zo een cognitieve serious game [16]. Hier worden door middel van een game, de soorten anti-conceptiemiddelen duidelijk gemaakt en aangeleerd. De speler leert zo, per level dat vrijgespeeld wordt, nieuwe termen aan. Educatieve serious games zijn niet beperkt tot het verbeteren van de cognitieve vaardigheden. Deze games kunnen ook gebruikt worden voor het aanleren van fy-sieke vaardigheden waarbij handelingen en motoriek verfijnd moet worden. Dankzij de opkomst van Virtual Reality (VR) en haptische technologieën, kunnen deze games steeds geavanceerder vaardigheden aanleren. Zo kan met behulp van VR een operatiekwartier gesimuleerd worden. De chirurg kan vervolgens, in deze simulatie, een operatie uitvoeren en zich zo voorbereiden op echte operaties [17].

Persuasieve serious games

Bij dit soort serious games is het primaire doel de gebruiker te overtuigen over een bepaald onderwerp. De speler kan hier nog altijd vrij nadenken en zelf conclusies trekken maar impliciet duwt het spel de speler toch in de gewenste richting. Een voorbeeld van zo een persuasieve serious

(30)

2.1. SERIOUS GAMES 9 game is LEY!, een app waar de speler het energiegebruik zo laag mogelijk moet houden [18]. Het spel probeert de speler te overtuigen om te stoppen met slechte gewoontes qua energieverbruik. De speler kan ook andere spelers uit te dagen om een betere energiescore te halen. Het impliciet doel is hier om slechte gewoontes in het energieverbruik te stoppen.

Serious games voor mentale gezondheid

Bij serious games waar mentale gezondheid het aandachtspunt is, wordt geprobeerd de psy-chotherapie aangenamer en effectiever te maken door middel van games. Op die manier wordt gepoogd een positieve invloed te hebben op het mentale welzijn van de gebruiker. Deze categorie geldt niet enkel voor mensen met een mentale aandoening maar ook voor andere vormen van psychische therapie zoals bijvoorbeeld depressie. Bij dit soort games is opvolging van een expert belangrijk om te verzekeren dat de gebruiker de therapie op de juiste manier krijgt. Een voor-beeld van een serious game waar gefocust wordt op psychische therapie is LIFEisGAME [19]. Deze game helpt kinderen met Autisme Spectrum Afwijkingen (ASA) om complexe gezichtsuit-drukkingen en emoties beter te herkennen. Er werd echter aangetoond dat leren beter ging voor kinderen met ASA door gebruik te maken van interactieve en visuele methoden.

Serious games voor fysieke gezondheid

In deze categorie bevinden zich alle serious games met betrekking tot de fysieke gezondheid van de gebruiker. Een onderverdeling die gemaakt kan worden in deze categorie zijn games voor fysieke revalidatie en fitnessgames.

Revalidatie Serious games in deze categorie helpen mensen na een operatie of een incident

om zo snel mogelijk terug te revalideren. Hierbij worden eenvoudige oefeningen in een game verwerkt om zo het revalidatieproces aangenamer te maken. Voor deze categorie van serious games zijn veel onderverdelingen in moeilijkheidsgraad en soort beweging. Serious games voor fysieke revalidatie worden in Sectie 2.5 verder opgedeeld en in meer detail besproken.

(31)

10 HOOFDSTUK 2. LITERATUURSTUDIE

Fitness Een laatste soort serious games, zijn de games die de fysieke gezondheid van een

persoon helpen te verbeteren. De gebruiker is hierbij vrij om te kiezen hoe vaak er getraind wordt en hoe intensief deze training is. Het game-aspect maakt het spel simpelweg aangenamer en geeft de speler meer motivatie om de fitnessoefeningen te doen. Een voorbeeld van zo een serious game voor fitness is Shadow Boxer [20]. Het spel laat de gebruiker verschillende boksoefeningen uitvoeren door de bewegingen van de gebruiker te registreren met een webcam. Het spel zorgde voor een hartslag die hoog genoeg was waardoor het spelen van het spel de fysieke gezondheid kan verbeteren.

2.1.3 Tekortkomingen

Bij een serious game zijn adaptiviteit en personalisatie twee belangrijke aspecten. De geper-sonaliseerde aanpak zorgt ervoor dat het spel dichter bij de gebruiker ligt en zal dus zorgen voor een ander verloop van het spel voor elke gebruiker wat beter is dan serious games waar het verloop van het spel al vooraf bepaald is [9]. Veel serious games zijn simpelweg niet adaptief of worden bestempeld als adaptief terwijl het spel slechts met een constante factor aangepast wordt. Er wordt minder rekening gehouden met het persoonlijke effect waardoor de game niet aangepast wordt op maat van de gebruiker en er dus geen optimale spelervaring gecreëerd wordt voor de speler.

Als nu in het perspectief van de ontwikkelaar gekeken wordt, valt op dat, wanneer het spel adaptief is, het systeem voor adaptiveit vooral in het spel zelf verweven zit. Hierdoor resulteert een aanpassing in het spel vaak tot een aanpassing in het deel dat adaptiviteit voor het spel realiseert. Dit wil ook zeggen dat, wanneer een nieuw spel ontwikkeld wordt, er vaak volledig van de grond op gebouwd moet worden. Het systeem dat zorgt voor adaptiviteit kan moeilijk overgedragen worden naar een nieuw spel omdat het zo diep in het huidige spel ingewerkt zit [10]. Dit telkens opnieuw beginnen vertraagt de ontwikkeling van nieuwe serious games.

(32)

2.2. ADAPTIVITEIT 11

2.2 Adaptiviteit

Adaptiviteit staat voor het aanpassen van iets onder bepaalde omstandigheden. In serious games betekent dit dat het spel dynamisch aangepast kan worden naar verloop van tijd afhan-kelijk van gegevens van de game, omgeving of gebruiker. Hierdoor kan het spel gespeeld worden volgens de capaciteiten van de gebruiker. Wanneer het spel te moeilijk blijkt voor de gebruiker en dit wordt waargenomen in de analyse van de game, kan het spel vergemakkelijkt worden. Andersom, wanneer het spel te gemakkelijk blijkt te zijn, zal het spel moeilijker gemaakt wor-den. Om het beste resultaat uit de serious game te halen, dienen de moeilijkheid van het spel en de waargenomen performantie van de gebruiker een lineair verband met elkaar te hebben, zoals besproken werd in Paragraaf 2.1.1. Een te hoge moeilijkheidsgraad leidt tot frustratie terwijl een te gemakkelijke game tot verveling leidt. Er zijn veel methoden om adaptivteit toe te passen voor een serious game. Dit varieert van eenvoudige grens gebaseerde aanpassing van parameters van het spel tot geavanceerdere dynamische modellen die doorheen het spel continu aangepast worden [10].

2.2.1 Methodes voor adaptatie

Adaptiviteit van serious games wordt verwezenlijkt door een zogenaamde Adaptive engine, die in Sectie 2.4 besproken wordt. Deze engine analyseert de gegevens van de gebruiker of de game en kan, op basis van verschillende methodes, het verloop van de game aanpassen. Er kunnen drie verschillende hoofdmethodes voor analyse van adaptatie van elkaar onderscheiden worden met elk hun eigen technieken en algoritmen voor het adaptief maken van de game [14]. De volgende paragrafen geven een overzicht van deze methodes.

Regel gebaseerd

Een regel gebaseerde methode voorziet regels die, wanneer voldaan, een bepaalde actie uitvoeren die het verder verloop dan de game bepalen. Zo kan, wanneer de speler een bepaald level bereikt, de moeilijkheidsgraad van het spel aangepast worden. Een regel gebaseerd systeem kan leiden tot een minder effectieve serious game, er kunnen echter maar een beperkt aantal regels ingevoerd

(33)

12 HOOFDSTUK 2. LITERATUURSTUDIE worden. Daarboven zijn grenswaarden van deze regels voor elke gebruiker anders. Een regel gebaseerd systeem leidt hierdoor doorgaans tot een minder gepersonaliseerde ervaring maar is eenvoudig om te verwezenlijken.

Plan gebaseerd

Een plan gebaseerde methode kan gezien worden als een collectie statenmachines. Elk plan is een statenmachine waarbij elke staat een actie is die in de game uitgevoerd kan worden. Wanneer aan een bepaalde conditie voldaan is, kan uit actieve staten van verschillende plannen gekozen worden wat zal gebeuren in de game [21]. Deze manier van adaptatie is goed voor spellen met een verhaallijn. Een staat kan hier een nieuw hoofdstuk of een nieuw item dat vrijgespeeld wordt zijn. Zo worden, afhankelijk van de vooruitgang van de speler, steeds meer opdrachten in het spel beschikbaar.

Model gebaseerd

Bij een model gebaseerde methode wordt voor de verschillende game-elementen een model voor-zien. Dit model kan, op basis van informatie van de gebruiker, tijdens het verloop van de game dynamisch veranderen. Zo is een spelermodel, het model dat de speler voorstelt, verantwoorde-lijk voor het aanpassen van het skill-level en de mijlpalen van de gebruiker. Een game-model zal de moeilijkheid van de eventuele tegenspelers alsook de verhaallijn aanpassen. Verdere model-len kunnen instaan voor het berekenen van capabiliteiten en moeilijkheidsgraden van bepaalde doelen in het spel [22]. Het gebruik van modellen laat toe om complexere analysetechnieken op basis van bijvoorbeeld kunstmatige intelligentie toe te passen. Zo kan, met behulp van regressie, de algemene verwachte vooruitgang van de gebruiker in de toekomst voorspeld worden. Door middel van deze technieken kan gepoogd worden de vooruitgang van de gebruiker in de toe-komst te voorspellen. Met deze voorspelling kan de adaptive engine het spel al voorbereiden op opdrachten die later door de gebruiker gespeeld kunnen worden.

(34)

2.2. ADAPTIVITEIT 13

Andere

De drie voorgaande methodes voor analyse en adaptatie zijn methodes die het vaakst gebruikt kunnen worden. De methodes voor analyse en adaptatie zijn echter niet de enige die gebruikt kunnen worden. Er kan vrij gekozen worden hoe complex de analyse in de adaptive engine zal zijn. Combinaties, vereenvoudigingen of complexere implementaties van de voorgaande methodes zijn daarbij een mogelijkheid. Een te eenvoudige methode van adaptatie zou echter wel kunnen leiden tot een minder correcte analyse. Het is bijgevolg belangrijk om de soort en complexiteit van de analyse en adaptatie voor een serious game goed af te wegen.

2.2.2 Tijdstip van adaptatie

Buiten de methode van adaptiviteit, kan ook bepaald worden wanneer adaptiviteit plaats vindt. Zo wordt er onderscheid gemaakt tussen online en offline adaptiviteit. Beiden tonen ze een omgekeerd evenredige relatie tussen complexiteit van de analyse en de frequentie van adaptiviteit. Afhankelijk van de soort serious game, kan beslist worden welke van twee het best gebruikt wordt. In de volgende paragrafen worden deze twee methodes in meer detail besproken.

Online adaptiviteit

Online adaptiviteit, ook wel realtime adaptiviteit genoemd, analyseert en past parameters van de game aan terwijl het bezig is. De analyse gebeurt in dit geval door middel van evaluatiefunc-ties die de verschillende parameters van de game in functie van entertainment of performantie zetten. Uit de resultaten van deze evaluatiefuncties kunnen vervolgens waarden van nieuwe pa-rameters berekend worden. Om de evaluatiefuncties en het aanpassen van de papa-rameters te optimaliseren voor verschillende gebruikers, kan bijvoorbeeld gebruik gemaakt worden van een

artificieel neuraal netwerk. Dit netwerk zal bij elke iteratie van de evaluatiefunctie een hoger

plezier- of performantieniveau van de gebruiker trachten te verkrijgen [23]. Dit neuraal netwerk kan op voorhand getraind worden met willekeurige data en verwachte scenario’s en vervolgens, wanneer de game in productie is, gebruikt worden [24]. Omdat realtime gegevens snel na elkaar gegenereerd worden en dus ook snel verwerkt dienen te worden, wordt vaak gebruik gemaakt

(35)

14 HOOFDSTUK 2. LITERATUURSTUDIE van stream processing. De gegevens worden als een constante stroom gezien en één voor één geanalyseerd en verwerkt.

Offline adaptiviteit

Offline adaptiviteit analyseert de resultaten en gegevens van de vorige game waarna de para-meters voor de volgende game klaargezet worden. Omdat offline adaptiviteit niet direct moet gebeuren zoals bij realtime adaptiviteit, kunnen complexere analyses op de data uitgevoerd worden. Zo kan op het einde van het spel een test gegeven worden om het resultaat van de vo-rige adaptatie te evalueren. Als hier een verbetering waargenomen wordt, werkte de aanpassing en kan in de volgende iteratie dezelfde methode gehanteerd worden. Was de vorige aanpassing echter niet effectief, kunnen andere methodes uitgetest worden [14]. Omdat men bij bij offline adaptiviteit beschikt over de gegevens van de volledige game, kan in tegenstelling tot realtime adaptiviteit, naar het globale resultaat gekeken worden. Volgde de performantie van de speler de verwachte waarde? Was er over de volledige game een positief effect op de gebruiker? Offline data omvat alle gegevens van één of meerdere games. Deze grote verzameling data, een batch ge-naamd, kan verwerkt worden door middel van batch processing. De gegevens worden gegroepeerd in blokken, geanalyseerd en verwerkt.

2.2.3 Plaats van adaptatie

Als laatste kan er nog onderscheid gemaakt worden in de locatie van adaptatie. Hierbij kunnen twee soorten van elkaar onderscheiden worden [25]. Een eerste soort is onsite adaptatie, ook wel in-situ adaptatie genaamd, waarbij zowel de serious game als het systeem voor adaptatie zich op dezelfde locatie bevinden. Het gebruik van internet is in dit geval niet nodig omdat de game en het systeem rechtstreeks met elkaar kunnen communiceren. Ten tweede is er de offsite adaptatie, ook wel ex-situ adaptatie genaamd. In dit geval bevinden de serious game en het systeem voor adaptatie zich niet op dezelfde locatie en dient communicatie tussen de twee over het internet te gebeuren. De offsite adaptatie blijkt handig wanneer complexe analysetechnieken, die veel rekenkracht van een computer vereisen, gebruikt worden. De computer waarop het spel gespeeld wordt zou echter niet krachtig genoeg kunnen zijn voor deze berekeningen waardoor de analyse

Afbeelding

Fig. 4. The responsetimes of onsite (left y-axis) and offsite (right y-axis) adap- adap-tation of respectively 1, 3 and 5 simultaneous games
Figuur 2.1: Het flow model (Streicher, 2016). Door adaptiviteit en personalisatie blijft de gebruiker in het optimum flow channel
Figuur 3.1: Verschillende figuren die gebruikt worden in de animatie van de vogel
Figuur 3.3: Het Flappy Bird spel terwijl het gespeeld wordt
+7

Referenties

GERELATEERDE DOCUMENTEN

Copyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright owners and it is a condition of

Aspects of this topic that could be researched more are user testing of the user interface, research into integrating it into the location better such that the used water from

Uit de analyses blijkt dat voor de lager presterende leerlingen die procesgerichte feedback ontvingen de prestatie in het koelkast minispel level 2 deels voorspeld werd door

The current study therefore investigated whether the train- ing conditions of the neurofeedback game “Daydream” were indeed training the brain activity as specified in the manual of

By analyzing the interviews that were held and several other sources (for a full review, see the references chapter) it becomes clear that (a) companies are actively searching

Through this research and information from the interviews, the specific elements of a Serious Game that tend to offer value to healthcare operations will be identified as well as

Het idee is nu dat spelers van serious games vaardigheden, kennis en houding leren die juist wel buiten de game toepasbaar zijn... Dit toepassen van ken- nis in een andere

Omdat Mindgame ook op zoek was naar een nieuw spelformat voor op beurzen en congressen, werd de opdracht gegeven om onderzoek te doen naar nieuwe technieken die voor