2. Distributed Adaptive Systems
Research Unit
Annapaola Marconi
marconi@fbk.eu
Antonio Bucchiarone
bucchiarone@fbk.eu
Enrica Loria
eloria@fbk.eu
Mauro Scanagatta
mscanagatta@fbk.eu
3. Who we are
DAS Unit investigates advanced methodologies and techniques supporting
the definition, development, and execution of distributed systems that
operate in dynamic environments, where being adaptable is a key intrinsic
characteristic of the system.
DAS targets different application areas in the domain of Smart Cities:
• integrated urban mobility, logistics,...
CAR LOGISTICS
INTEGRATED MOBILITY
LOGISTICS
!
CHILDREN’s MOBILITY
SURVEILLANCE SYSTEMS
4. Competences and experience
• Internet of Services: enable a seamless, contextualized and personalized access to
services available on the Internet.
Context-aware service composition approaches based on AI planning to provide
value added services that are automatically composed, contextualized and
customized at run time for a specific situation and need
• Collective Systems: Support the modelling, execution, and adaptation of Collective
Systems.
Advanced methodologies and techniques for the development of large-scale,
collective, socio-technical systems where adaptations are resolved in a
decentralized, yet coordinated, fashion and with distributed knowledge
• Gamification: Support the definition and operation of gameful persuasive
applications in complex socio-technical systems.
Development of methods and tools supporting the gamification of complex socio-
technical systems to increase engagement and promote positive behavioral changes
5. What we offer
• ASTRO CAptEvo - a comprehensive framework for defining highly adaptable service-
based systems and supporting their context-aware execution (TRL 5)
• Development of context-aware applications operating in dynamic environments
• Most human-dependent tasks can be accomplished at design time and the few human
intervention required at run-time do not affect the system execution
• Collective Adaptation Engine: a framework for the modeling and execution of
service-based collective adaptive systems operating in dynamic environments (TRL 4)
• Support for large-scale distributed configuration of the system, with different decision
management strategies (from hierarchical to peer–to–peer)
• The approach allows entities to collectively adapt at runtime and in a decentralized
fashion, guaranteeing the reliability of the system.
• Gamification Framework: A service-based platform for the definition and execution,
of gamified applications that aim at behavioral change of users/players (TRL 8)
• Extensible repertoire of game concepts and game mechanics
• Automated generation of custom, personalized and contextualized playable content units
(e.g. individual challenges)
• Game monitoring and analytics console
7. • “The use of game design elements
in non-game contexts”
S. Deterding, 2011
8. Objectives
MEASURABLE OUTCOME
Produce measurable outcomes, in
terms of impact (engagement,
retainment, awareness, behavior
change) and of end-user experience.
RAISE AWARENESS
Reach and engage citizens. Make them
aware of existing (and new) sustainable
services and of the impact of their daily
choices
BEHAVIOR CHANGE
Promote a voluntary change towards
more sustainable mobility habots
combining virtual and real incentives.
COMMUNITY BUILDING
Contribute to the creation of a
community of active users; target
different user segments, deploying
segment-specific actions; create
synergies with other local
9. To engage people on changing their habits and
contributing to the society.
To adopt game-like solutions for supporting
engagement in disparate contexts (i.e.,
education, mobility, e-health, etc..).
Gamified solutions as separate mechanisms to be
designed and developed as side applications.
10. • Game objectives are real-world challenges
Gamification for engagement & behavioral changes
11. Gamification Framework for large-scale and long-running campaigns
ü Promote participation, raise awareness, and induce behavior change
ü Application domains: sustainable mobility, waste reduction and recycling, energy saving,
..
ü Remain open, general and extensible
ü with respect to integration with Smart City technologies
ü with respect to game elements and game mechanics it can support
ü Research focus: game dynamicity and personalization
ü Procedural game content generation for game experiences tailored to the player profile
(e.g. challenges, missions)
ü Dynamic calibration of game mechanics (reward - cost) to meet game objectives
ü Exploited on-the-field in various gamification campaigns involving thousands of
users
Gamified Systems for Smart Cities and Communities
12. Make children’s mobility to school a
SAFE, SOCIAL and FUN experience
Promote SUSTAINABLE MOBILITY
habits among citizens
4 editions (2016-2019), 6 months each
834 players, 250K sustainable km
1846 children, 140 teachers,
36 games, 18 schools
Gamified Systems for Smart Cities and Communities
13. 1st edition 2019: 1 school, 350 kids, 40 teachers
Awareness campaigns targeting primary school children and their families for the
REDUCTION, REUSE and RECYCLE of Electrical and Electronic Equipment (EEE)
Gamified Systems for Smart Cities and Communities
15. Gameful System
• A software artifact that embeds a gamification process composed by the
following components:
16. Game Elements
• Basic building blocks of gamified applications.
• They are defined to specify how the players should interact with the
application to reach the ultimate goals.
17. Game Mechanics
• Set of rules that specify how the game should evolve for its participants
(i.e., students, citizens or employees).
18. Game Dynamics
• The ”emergent” behavior that arises using a gameful system, when the
mechanics are used.
19. A Gamification Framework for Smart Cities
1. Raman Kazhamiakin, Annapaola Marconi, Alberto Martinelli, Marco Pistore, and Giuseppe Valetto. A gamification
framework for the long-term engagement of smart citizens. In IEEE International Smart Cities Conference, ISC2
2016, pages 1–7, 2016.
2. http://www.drools.org
• Software component1 responsible for the execution of the game
associated with the gameful application.
• Rule execution system (i.e., DROOLS2) able to execute a rule set, with
constitutes the implementation of the game logic.
https://github.com/smartcommunitylab/smartcampus.gamification
20. To gain and keep the motivation of target players.
To combine a variety of behavioural change goals.
Easy-to-reproduce games in different contexts
(different cities with different players and challenges)
Motivation
21. Current Limits
Increased error-proneness of the implementation with the growth of
the game complexity an its needs of maintenance and evolution.
1
Difficulty in monitoring the evolution of the game and possibly
applying runtime adaptations.
2
Decreased chances of reusing game elements in other scenarios.3
Definition of wrong update for a certain score, making a challenge too
easy/complicated or even impossible to achieve.
4
No way to monitor the player progress (i.e., too slow) and act with
adaptation mechanisms (i.e., revised challenge).
5
22. a tool to design domain-specific languages (DSL)
• Modular approach that can be customized for different gameful
systems and reflects the gamification process.
• Different modelling layers (multi-level modelling), each of which
defined on the basis of the layer above, and the utility layers
(simulation, monitoring, adaptation) that are orthogonal – they can be
defined on the basis of any of them.
GDF: a tool for designing gamified applications
through model-driven engineering mechanisms
https://www.jetbrains.com/mps
23. GML: Gamification Model Language
• Core language to introduce the essential elements to describe a gameful
system.
• Basic building blocks on top of which al the other layers can be described.
• GML is an instance of a modelling language: the MPS base language.
24. GaML: Game Model Language
• It relies on Game Mechanics and allows the game designer to design a
concrete game in a specific domain (i.e., education, mobility).
• dataDrivenActions: actions
that acts on data (i.e., kms,
legs, etc..).
• experiencePoints: points
used to quantify a players
progression through a game
(i.e., pedibus_distance,
walk_km).
25. GiML: Game Instance Model Language
• It relies on Game Dynamics and is used to specify the instantiation of the
different games originating from the same GameDefinition.
• Game instances differ from one another by the set of teams and players
that play a certain instance of a game definition (i.e., Institute and
School instances) and the set of game elements instances (i.e., points,
actions, etc..)
26. Game Utility Languages
GsML - Simulation
• It allows to simulate game scenario for a specific
Team/Player that can execute an action instance or
can win a specific challenge.
27. Game Utility Languages
GmML - Monitoring
• It allows to monitor the state of a specific
Team/Player and check specific game variables: (daily
speed, completition percentage, delay, etc..)
28. Game Utility Languages
GadML – Runtime Adaptation
• It allows to inject new game content on-the-fly for a
specific player game instance (i.e., new/revised
challenge proposed by a recommendation system).
34. Conclusions
• A domain independent solution for the design of gamified applications.
• The choice of a multi-level modelling came out from the nature of
gamification applications.
• The solution proposed leverages language imports and inheritance
mechanisms provided by MPS.
• MPS supports language embedding through which is possible to
reuse/extend the concepts defined in one language for the specification
of another language.
• The number of levels and instantiation depth are determinated
dynamically by the use of a language.
GML (M4) à GaML (M3) -> GiML (M2)
• GDF allows domain experts to reason about gamification specific
concerns while implementation details are automatically handled by
the code generators.
37. Play&Go
Promote, through virtual and real incentives,
citizens’ mobility behaviors that are synergetic
with city policies (objectives, needs, priorities)
Foster and sustain voluntary travel behaviour
change
• Incentivize citizens to break habit
• Retain and sustain behaviour change
Play&Go: sustainable mobility long-running
campaigns (6-7 months) targeting all citizens
(14+)
38. Play&Go at a Glance
Players earn Green Leaves points based
on km traveled with sustainable means
Itineraries are planned/tracked by players and
verified by the system
Personalized challenges
Weekly personalized challenges based on player profile and city policies
Single and multi-player challenges – competitive and collaborative
Green Leaves bonus for won challenges
Other game concepts and dynamics:
Weekly and global leaderboards, badge collections,
levels, game content unlock, personal mobility diary
Weeky and final material prizes offered by sponsors
39. Multiplayer Games as
Collective Gameful
System
• The deployment should:
• consider each player’s skills and
preferences;
• be fair during the task and in
concerning the rewards associated;
• match players so that they are
motivated, feel encouraged and not
be bored by the tasks;
• be able to adapt to variations in the
game, either to external manipulation
by the game designer or due to
players changing their play style or
skill levels.
39
40. A Framework for
Collective Gameful Systems
Design
Deployment
Execution
Adaptation
Monitoring
Evolution
Simulation/Learning
Gamification Development Framework
Gameful Application
Developer
g
LoggingAnalytics
Game State
RuntimeDesign-Time
41. MAPE-K Loop and Runtime Models
(Managed Gameful System )
Analysis Planning
Monitoring Execute
Knowledge Base
(Runtime models)
Sensors Actuators
Design
Deployment
Execution
Adaptation
Monitoring
Evolution
Simulation/Learning
Gamification Development Framework
Gameful Application
Developer
g
LoggingAnalytics
Game State
RuntimeDesign-Time
44. Open
Research
Challenges
• One single MAPE-K Loop aggregating
all the players behavior
or aggregation of multiple MAPE-K
loops, one for each player behavior.
• Adaptation vs Evolution.
• Self-aware game content generation
(i.e., (player in the loop).
• Automatic generation of collective
strategies analysing the runtime
models.
44
46. Software Engineering approach for
Gameful Applications.
THE GAME PART SHOULD BE
DESIGNED IN ITS MAIN
INGREDIENTS AND DEPLOYED ON
AN APPROPRIATE GAMIFICATION
ENGINE.
GAMEFUL MECHANISMS WOULD BE
HANDLED AS SPECIFIC CONCERNS OF
SOFTWARE APPLICATIONS.
THE GAMING ASPECTS WOULD BE
KEPT SEPARATE AND PLUGGED IN
EXISTING APPLICATIONS INSTEAD OF
REQUIRING AD HOC EXTENSIONS OF
THE APPLICATIONS THEMSELVES.
.
49. To specify a well-defined set languages for designing a gameful
application, its main components and the behavioural details.
Domain-specific languages (or viewpoints) where a lower level layer
instantiates and possibly refines entities pertaining to the layer(s) above.
To make players active, to meet their preferences, types, and playing
styles for a prolonged period of time.
Game adaptivity and personalization needed to adjust the content
and interaction schemes of games.
More advanced approach enabling the definition of a higher-order game,
that is a game of games.
The orchestrator responsibility to guarantee that, fragments from different
games do not contradict each others;
Abstraction
Personalization
and
Adaptation
Higher-Order
Gamification
Applications
SE
Implications
51. Adoption, usability of tools is very often stressed as
one of the key issues for the adoption of MBSE
paradigms.
User experience of tools can be improved, and lot
of people are working hard to improve including
as for example new HCI or even AI-empowered
assistants.
Is fundamental to assist users to face the complexity -
accidental or essential - of MBSE related artefacts by
augmenting the MBSE tools with self-training facilities.
Usability
User Experience
Self-Training
Motivations
We illustrate the role gamification could play to lower
the entry barrier of modeling and modeling tools.
53. • The Papyrus modeling tool has been gamified
with the objective to help students learning
specific modeling aspects using both UML and
Papyrus for UML.
53