=Paper=
{{Paper
|id=Vol-1382/paper13
|storemode=property
|title=Composing Cognitive Agents from Behavioural Models in PRESTO
|pdfUrl=https://ceur-ws.org/Vol-1382/paper13.pdf
|volume=Vol-1382
|dblpUrl=https://dblp.org/rec/conf/woa/BusettaD15
}}
==Composing Cognitive Agents from Behavioural Models in PRESTO==
Proc. of the 16th Workshop “From Object to Agents” (WOA15) June 17-19, Naples, Italy Composing Cognitive Agents from Behavioural Models in PRESTO Paolo Busetta Mauro Dragoni Delta Informatica Spa FBK Trento, Italy Trento, Italy Email: paolo.busetta@deltainformatica.eu Email: mauro.dragoni@fbk.eu Abstract—The PRESTO project applies agent technologies to while Sec. III briefly presents DICE. The motivations and serious gaming. PRESTO has developed an AI infrastructure design of the semantic and end-user facilities are sketched and an agent framework called DICE for the creation of game- out in Sec. IV. Sec. V provides details about the navigation independent, modular Non-Player Characters (NPC) behaviours subsystem and how it is affected by the cognitive state of based on a BDI (Belief-Desire-Intention) approach enriched with agents. Sec. VI briefly presents the work currently in progress cognitive extensions for human simulation. Behavioural models can be combined via end-user development tools to form the in the area of coordination, while Sec. VII summarizes the state behavioural profiles of NPCs in a game. DICE provides the of development and experimentation at the time of writing. coordination between body-controlling behavioural models (for navigation as well as posture, facial expressions, actioning) and II. D IRECTING NPC S AS VIRTUAL ACTORS IN A VIRTUAL decision-making models representing e.g. the standard operating STAGE . procedures of professional roles, the cognitive appraisal of events and perceptions, the modality of reaction to unplanned events Serious games have the potential to dramatically improve occurring during a game. Behavioural models are largely if not the quality of training in a number of fields where the trainee completely independent of the specific scenario or even game has to face complex and potentially life-threatening situations. engine thanks to abstractions of both the environment and the In particular, open-world 3D simulations (also called ‘’sand- internal state of the NPC provided by means of ontologies. PRESTO is producing a set of behavioural models targeted at its box” or ‘’free-roaming” games) have been used for quite pilot project’s needs or expected to be of common use, including a long time by the military, with a few products reaching navigation in the virtual environment sensitive to the cognitive a significant market success, and are becoming common in state of the NPC. This paper gives a brief overview of PRESTO, civilian emergency training because they allow the rapid con- DICE and of its ontologies. struction of scenarios for the rehearsal of safety procedures. The main limitation of current technology concerns NPCs, I. I NTRODUCTION whose behaviour may be quite sophisticated when performing predefined tasks but is often unaffected by context; further, a PRESTO (Plausible Representation of Emergency Scenar- professional programmer is required for the implementation ios for Training Operations) [2], [3] aims at adding seman- of any procedure that cannot be described with the simple tics to a virtual environment and modularising the artificial selection of a few waypoints and the choice of a few actions, let intelligence controlling the behaviours of NPCs (Non Player alone introducing variants due to psychological factors. These Characters, i.e. artificial players in a game). Its main goal issues lead to repetitive and hardly credible scenarios and to the is to support a productive end-user development environ- slow and costly development of new ones when many NPCs ment directed to trainers building scenarios for serious games are involved. (in particular to simulate emergency situations such as road and industrial accidents, fires and so on) and in general to As an example, consider a fire breaking in a hospital game masters wanting to customize and enrich the human ward during daytime with patients with different impairments, player’s experience. The framework for behavioural modeling visitors of various ages and professionals with different roles, in PRESTO, called DICE, was inspired by a BDI (Belief- experiences and training. In this scenario, which is taken Desire-Intention) [1], [9] multi-agent system with cognitive from the pilot project of PRESTO, most characters are NPCs extensions, CoJACK [10], [6]. PRESTO offers powerful end- while the human players, i.e. the trainees, are either health user development tools for defining the parts played by virtual professionals that could be in charge for a ward at the time actors (as end user-written behaviours) and the overall session of an accident or emergency staff called to help. A training script of a game. PRESTO supports a specific virtual reality, session would require two apparently conflicting abilities from XVR from E-Semble, a well known tool in use for Emergency NPCs. From the one hand, they should act autonomously Management and Training (EMT) in a number of schools and according to a variety of parameters concerning e.g. their organisations around the world, as well as Unity 3D and, at physical and psychological state, their current position, their least in principle, is agnostic with respect to the game engine capabilities; e.g. visitors may act rationally and follow well- in use. marked escape routes or flee panicking to the closest exits, nurses at the start of their shift are fully responsive and careful The next section explains the motivations behind PRESTO while at the end of the shift fatigue may lead to errors, and with an example and gives an overview of the overall system, so on. On the other hand, in order to make training effective 85 Proc. of the 16th Workshop “From Object to Agents” (WOA15) June 17-19, Naples, Italy speak, as intention trees achieving independent hierarchies of goals and subgoals). Furthermore, decision-making in DICE happens at two levels, controlled by independent “planned” and “reaction” intention trees. A decision-making behaviour started in reaction to an event pre-empts and blocks the execution of a planned behaviour until it is fully completed, at which point the planned behaviour is resumed. This allows, for instance, to have short-term reactions to perceptions (such as hearing a noise) that partially change the NPC state (e.g. by pointing the head towards the source of the noise) while not affecting navigation or longer-term procedures if not required. All behaviours in the body-controlling intention trees and in decision-making can be overriden by new behaviours at any time, e.g. as new perceptions are processed, as part of a decision-making routine, as a user choice from a GUI, as a command from a PRESTO session-controlling script; at any time, no more than one behaviour for each intention tree is active. A DICE agent is built by composing so-called ‘’be- havioural models”, which are BDI capabilities [5] able to achieve a predefined set of goals (‘’role”). Changes in be- Fig. 1. Simplified DICE architecture with navigation highlighted (BM: haviour due to emotions, fatigue or other non-rational factors Behavioural Model) can be dealt within DICE in various ways, of which the most novel (and dramatic) is by defining behavioral rules that select alternative behavioural models according to the current cogni- and engaging, the trainer supervising a simulation session tive state of the NPC. These rules can be defined directly by should be able to temporarily suspend it (e.g. to give feedback the end user, who is enabled to change the behavioural profiles to the trainees), change the course of events or affect the of her characters according to the evolution of the game or way certain characters behave (e.g. to introduce more drama even in real-time by explicit choice and from the session-level or rehearse different procedures), as well as introducing or script. As in CoJACK [10], cognitive states are represented removing characters in following runs of the same scenario. in DICE by moderators (i.e. numeric values modeling specific Hard-coding all possibilities, assuming that this is supported factors such as fear and fatigue levels) and a set of cognitive by the game in use, is a laborious task to say the least. parameters computed from those moderators (modeling e.g. reactivity and accuracy), even if greatly simplified with respect The objective of PRESTO is to allow NPCs to act as “vir- to the original. Any behavioural model can use moderators and tual actors” because they are able to “interpret” a part written cognitive parameters to tune its own internal parameters, e.g. at a higher level of abstraction than with common scripting to decide the speed of execution of action or memory fading. languages, with additional modalities (that may correspond Changes to moderators are normally performed by behavioural to, e.g., levels of skills or psychological profiles) that can models for cognition according to appraisal rules (concerning be selected at the beginning but changed during a game as e.g. the perception of threatening things) and time; however, a result of the application of rules or by explicit user choice. it is possible to force the value of moderators at any time The game’s master (i.e. the trainer) is empowered to become from any behavioural model (e.g. because of the realization of a “director” able to “brief” virtual actors, that is, to define a dangerous situation) or from the session-controlling script, the parts the artificial characters have to play by means of thus allowing the trainer to fully control the overall behaviour a language aimed to non-programmers that composes more of an NPC during a game. fundamental even if potentially very complex behaviours into game-specific sequences. Key enablers are end-user develop- Figures 2 and 3 illustrate a (simplified) example NPC ment tools [7] and the ability to mix and match behavioural profile built as a DICE agent. The example is of a shopper components taken off-the-shelf from a market place (similar able to achieve a “shop visited” goal. Fig. 2 provides a in principle to asset stores in popular gaming platforms such static view, organized in descriptions of capabilities (‘’roles”), as Unity). behaviours implementing those capabilities and switching rules based on moderators that select which behavioural models are III. NPC C OGNITIVE A RCHITECTURE currently active. Observe that a single role (e.g. “Shopper” in the figure) may correspond to multiple behavioural models; the PRESTO creates a DICE agent for each NPC in a game switching rules determine the current profile of the NPC, i.e. according to scenario-specific configurations. which models are active for each role at run-time. Roles and behavioural models are described by metadata, and they can DICE (Fig. 1) is a BDI framework that supports multi- be composed and configured by means of graphical editors. goal modeling of NPC behaviours, where navigation, body postures and facial expressions, manipulation of objects and Fig. 3 represents a snapshot of the dynamic state of the decision-making concerning tactical and long-term objectives agent, with the concurrently executing intention trees and are controlled by concurrent threads (implemented, in BDI the two-level decision making. One of the implications of 86 Proc. of the 16th Workshop “From Object to Agents” (WOA15) June 17-19, Naples, Italy Fig. 4. Navigation subsystem architecture often depends on the specific knowledge of the code of a Fig. 2. Simplified DICE profile of a shopper NPC specific developer, and is cumbersome to modify, since every change required by the trainer has to be communicated to the developers and directly implemented in the code in a case by case manner. While this is not perceived as a major issue in entertainment games (but economics and a push for better game experiences are changing this, too), in serious gaming the cost and complexity of ad-hoc development is not covered by normal budgets. Typical solutions to this problem include, in multi-player games, the recruitment of experts to impersonate characters (such as team mates, enemies, victims, injured people, and so on) or, as in XVR, letting the trainer changing the scenario in real-time by hand. PRESTO provides three main mechanisms that enable the reuse and adaptation of behavioural models to different scenarios, games or even game engines: semantic facilities, an interpreter of scripts in DICE, and facilities for game session control. The semantization of the game environment and of part of the cognitive states of an NPC supports decision-making based on game- and scenario-independent properties. To this Fig. 3. Simplified DICE view of a shopper NPC during a game end, ontologies are used for the classification of objects and locations [4], for annotating them with properties and states (called “qualities”) that allow abstract reasoning and for the the DICE approach on navigation is that, at any time, the (agent-specific) appraisals of perceptions, in particular to deal travel direction (decided by a behaviour) can be changed and with potentially dangerous situations. may be resumed later (e.g. when a reaction is completed); similarly, any body-controlling behaviour can be overridden The current version of the PRESTO ontologies, targeted at and then resumed later. The APIs make programming this its pilot project in a hospital domain, have been based on the concurrent machinery a straightforward business, while the upper level ontology DOLCE (Descriptive Ontology for Lin- end-user development tool for behaviour modeling (called guistic and Cognitive Engineering) [11] and the classification the DICE Parts Editor) provides an extremely powerful yet of elements provided by XVR. DOLCE was chosen as this intuitive way to write scripts that affect one or more intention ontology not only provides one of the most known upper level trees at each step [8]. ontologies in literature but it is also built with a strong cogni- tive bias, as it takes into account the ontological categories IV. E ND -U SER ADAPTATION TO SPECIFIC SCENARIOS that underlie natural language and human common sense. This cognitive perspective was considered appropriate for the Currently, the programming of NPCs mostly relies on ad description of an artificial world that needs to be plausible from hoc specifications / implementations of their behaviors done a human perspective. The decision to use the classification of by game developers. Thus, a specific behavior (e.g., a function elements provided by XVR was due to the extensive range of emulating a panicking reaction) is hardwired to a specific item item available in their libraries (approximatively one thousand (e.g., the element “Caucasian boy 17” in XVR) directly in elements describing mainly human characters, vehicles, road the code. This generates a number of problems typical of ad related elements, and artifacts like parts of buildings) and the hoc, low level solutions: the solution is scarcely reusable, it popularity of XVR as virtual reality platform for emergency 87 Proc. of the 16th Workshop “From Object to Agents” (WOA15) June 17-19, Naples, Italy management and training. script with no need to reprogram the NPCs once equipped with all required behavioural models and DICE Parts. In the The construction of the PRESTO ontologies was performed hospital ward example presented earlier, the initial scene would by following a middle-out approach, which combined the reuse command visitors, patients and nurses to accomplish their and adaptation of the conceptual characterization of top-level routine goals; the script may continue with alternative scenes entities provided by DOLCE and the description of extremely such as “fire breaking in a patient room” or “fire breaking in concrete entities provided by the XVR environment. More in a surgical facility”, each with different people involved, and detail, then with sequences that may lead e.g. to smoke filling the area • we performed an analysis and review of the conceptual and visitors fleeing or an orderly managed situation with the entities contained in DOLCE-lite [11] together with intervention of fire fighters, chosen according to the decisions virtual reality experts (both trainers and developers) of the trainer and the events occurring during a session. and selected the ones referring to concepts than needed to be described in a scenario; this analysis has origi- V. C OGNITIVE NAVIGATION IN PRESTO nated the top part of the PRESTO ontology; As extensively discussed in [3], at the time of writing the most developed models concern the navigation in virtual • we performed a similar analysis and review of the environments. As it can be seen in picture in Fig. 4, navigation XVR items, together with their classifications, in order is split in two levels: the lower level facilities look after to select general concepts (e.g, vehicle, building, and path planning and steering within the decided path and are so on) that refer to general game scenarios; this implemented within the PRESTO infrastructure, close to the analysis has originated the middle part of the PRESTO game engine; the higher level is concerned with control and is ontology; implemented as behavioural models for DICE. In turn, navi- • as a third step we have injected (mapped) the specific gation control models are of two types. One type, identified as XVR items into the ontology, thus linking the domain “navigation BM” in Fig. 1 and 4, satisfies the navigation goals independent, virtual reality platform independent on- submitted by decision-making behaviours (e.g., of reaching a tology to the specific libraries of a specific platform. destination); slightly different navigation models are provided that depend on the main physical features of the NPC, e.g. The flow of perceptions, the properties of entities, the of being a human rather than a vehicle, and consequently appraisal values of DICE behavioural models are classified by on the NPC’s ability to move and affect the environment. As means of the PRESTO ontologies, thus enabling the develop- mentioned above, the navigation BM runs in its own intention ment of generic BDI logic (goals, plans and beliefs) indepen- tree (thread of execution) concurrently with decision-making dent of the scenario of use. Additionally, DICE provides an and other body-controlling behaviours. The navigation BM interpreter for high-level scripts, called “DICE Parts”, written calls path planning and controls steering, acting according to by means of a graphical editor by the end-user (typically a the latter’s indication in particular when it blocks because there trainer during the preparation of a specific scenario). A DICE are obstacles or there is a closed gate. A number of different Part can invoke multiple goals concurrently on the various decisions can be taken according to the model and to the DICE-managed intention trees, terminate them when specific semantics of gates or obstructing objects, which may in turn events happen (including timeouts and perceptions), define cause goals to be submitted to other body-parts behaviours reactions to perceptions or to modifications of the internal state (e.g. opening a door, calling a lift, and so on). of the agent (including appraisals and moderators), change the state of the agents itself, and so on. While the DICE Part A second type of behavioural model, referred to as “naviga- language is limited in its expressivity, the cost of producing tion capabilities” and included as a decision-making module in a part is minuscule with respect to directly programming the DICE, looks after some of the cognitive aspects of navigation. underlying BDI logic; further, DICE Parts can be distributed In particular, the navigation capability of an NPC decides as decision-making behavioural models on their own. Thus, which navigation mesh (i.e. navigable surface data) to use on an effort is required on developers of behavioural models in creation, then changes the default speed, default animations BDI logic to provide goal-directed behaviours that are suitable and so on according to the current sub-rational state of the for composition within user-written parts and adaptable to agent (i.e. its moderators and cognitive parameters). Thus, different scenarios thanks to semantic-based reasoning; the PRESTO can provide capabilities specialized e.g. for quiet or PRESTO pilot project and other demonstrators are helping in excited people, for permanent or temporary physical impair- accumulating experience that will feed future guidelines. ments, for different types of vehicles, and so on. Navigation capabilities may access the cognitive state to tune their pa- Finally, PRESTO has an end-user facility to edit and rameters (e.g. speed or animations); furthermore, behavioural control session-level scripts inspired by interactive books. A rules may be defined to switch navigation capabilities entirely session script is composed by a set of scenes connected as a during a game depending on the NPC’s moderators. For graph. At each scene, goals can be given to NPCs (which instance, a high level of fear may select a model whose default may trigger user-written parts), their internal state changed speed is running and movement animations are jerky, while (including emotions) and objects manipulated. The trainer a high level of fatigue may select a model doing exactly the starts a script at the beginning of a training session and opposite. Furthermore, the navigation capabilities satisfy goals advances it by manually navigating the graph of scenes or concerning path selection, such as “stay out of sight of entity letting PRESTO choose the next one e.g. when certain events E” or “don’t go through location L” (which may have been happen or when a timer expires. This allows a large, potentially classified as dangerous by a decision-making model according unlimited number of different sessions to unfold from a single to the appraisal rules of the agent), by taking note of what to 88 Proc. of the 16th Workshop “From Object to Agents” (WOA15) June 17-19, Naples, Italy avoid and manipulating the navigation data accordingly, based patterns in many different situations, e.g. for queuing to pass on current knowledge and the flow of perceptions. through a gate (which will be part of the navigation BMs) as well as for queuing at the entrance of an office or at the cashier Behavioural models in DICE have their own configuration in a supermarket (which are decision-making behaviours not parameters, called “background knowledge”. As mentioned related to navigation goals). above, the background knowledge of the navigation capability of an agent determines how much the agent knows a priori A simplistic (but already available and of great practical about the environment – it can be everything or being limited use) coordinated behaviour exploiting qualities is goal delega- to a few areas; the navigation data is created accordingly. The tion from an agent to another agent. By means of the PRESTO flow of perceptions arriving from the PRESTO infrastructure API, any entity in a game can submit a goal to be pursued includes also the visible polygons of the various navigation by any other entity; when the goal is enriched with a few meshes; this data is used by the navigation capability to predefined parameters, the destination DICE agent publishes update the navigation data. The cognitive model of DICE, not the fact that it has accepted a goal or that has achieved it (or discussed here, looks after short-term memory management, failed to achieve or refused), allowing the submitter (or any which includes calling the navigation capability to purge its other observer, including the session script engine) to monitor data; that is, the agent literally forgets about where to navigate and coordinate behaviours without the use of any additional according to timing and frequency of perceptions from the agent protocol. environment. Out of scope of the navigation subsystem, and not discussed here, is a “search” behaviour, which is a set VII. C URRENT STATE OF DEVELOPMENTS AND of decision-making procedures that can be started when a EXPERIMENTATION navigation goal fails with an “unknown path” error. At the time of writing (May 2015), most of the DICE In the hospital fire scenario presented in the introduction, framework is in place. Work is in progress on the automatic the navigation capability of a patient on a wheel chair would publishing of qualities concerning intentions, required by the use a different mesh than the one selected for a visitor with meta-level policies described above among others. Its end-user normal walking capabilities, e.g. to avoid steps and stairs. The development editors are being evaluated within a laboratory patient’s background knowledge would include the navigation run in collaboration with the University of Trento. To this end, areas of the entire ward (since she has been there for a while) Delta Informatica has developed a serious game with Unity while the visitor’s knowledge would be initially empty and that allows the definition of the behaviour of a multiplicity of populated while she moves in the ward; a decision-making pro- characters coordinating to run a business with walk-in visitors, cedure of the visitor that invokes a goal such as “go to patient emergencies forced by the human player, and so on. This game room nr. 3” would initially fail because, indeed, no path can is being used as workbench for the students participating to be computed and a search behaviour would need to be invoked the laboratory and for the testing and validation of the current allowing the progressive discovery of the navigation areas of and future developments for the entire PRESTO project. the selected mesh. If, at any time during the game, a fire alarm The ontologies concerning the hospital fire scenario, used starts ringing, its perception on both visitor and patient would also by the session-control tool described in Sec. IV, are being trigger a (decision-making) reaction that is handled differently validated in a pilot project in collaboration with the main according to the currently active behavioural models, which Trento hospital. The purpose of this pilot is the introduction of in turn may depend on cognitive states such as fear. The virtual reality training for the management of fires in wards. perception of smoke and fire would submit goals such as “don’t Given the level of novelty with respect to traditional train- go through that area” handled by the navigation capability ing support tools (oral presentations, questionnaires and live as mentioned above. A rationally-behaving NPC that knows simulations), at this stage the pilot is still focusing on having the position of a location ontologically classified as “fire exit” the trainers understanding the potentiality of virtual reality by would navigate to the latter, with a speed and a modality that creating courses for teaching basic emergency procedures by depend on the currently active navigation capability (excited / means of XVR by E-semble. A few NPCs have been already not excited, walking / pushing the wheel chair); an NPC that tested within Delta Informatica’s lab; their introduction in doesn’t know about fire exits or that it’s too fearful to act more complex training scenarios with the need of managing rationally would run to the closest exit. evacuations, coordinating personnel, etc. are expected to be experimented in the next 12 months. VI. M ULTI - AGENT COORDINATED BEHAVIOUR VIA SEMANTIC TAGGING VIII. C ONCLUSIONS AND FUTURE WORKS Work is in progress on game-theoretical descriptions of co- The DICE framework and the underlying PRESTO infras- ordinated behaviour, which include queuing and other crowd- tructure are a practical and powerful way to introduce agent- ing behaviours, access to shared resources, and so on that oriented programming and semantics into games. Benefits allows the definition of policies at a very abstract (meta-) level. against traditional approaches, such as finite state machines, This exploits the support in DICE for introspection, semantic behavioural trees and so on, include the ability to represent tagging of goals and plans, dynamic assignment and aborting non-rational factors such as emotions and the support of of goals and intentions as well as the ability to dynamically powerful session scripting that make a PRESTO-enabled game manipulate semantic tags (called ‘’qualities”) of any entities similar to a sort of theatrical improvisation. We presented including NPCs offered by PRESTO. The specification of examples from the serious gaming world, but nothing prevents policies is expected to substantially reduce the coding required using PRESTO in entertainment games or for simulation by models and allows the reuse of the same coordination without human-in-the-loop. 89 Proc. of the 16th Workshop “From Object to Agents” (WOA15) June 17-19, Naples, Italy Work in in progress on many aspects, including multi- agent coordination as presented above, libraries of reusable behavioural models, improvements to the various engines and to the end-user tools, including facilities for community sharing of models, parts and scenario scripts. ACKNOWLEDGMENT In addition to the members of the implementation team in Delta Informatica (Matteo Pedrotti, Mauro Fruet, Paolo Calanca, Michele Lunelli), we thank all PRESTO research partners and in particular Chiara Ghidini (FBK), Zeno Menest- rina ed Antonella De Angeli (University of Trento). PRESTO is funded by the Provincia Autonoma di Trento (PAT). R EFERENCES [1] Michael E. Bratman, Intention, Plans, and Practical Reason, Harvard University Press, November 1987. [2] Paolo Busetta, Chiara Ghidini, Matteo Pedrotti, Antonella De Angeli, and Zeno Menestrina, ‘Briefing virtual actors: a first report on the presto project’, in Proceedings of the AI and Games Symposium at AISB 2014, ed. Daniela Romano, (April 2014). [3] Paolo Calanca, and Paolo Busetta, ‘Cognitive Navigation in PRESTO’, in Proceedings of the AI and Games Symposium at AISB 2015, to appear, (April 2015). [4] Mauro Dragoni, Chiara Ghidini, Paolo Busetta, Mauro Fruet, and Mat- teo Pedrotti, ‘Using ontologies for modeling virtual reality scenarios’, in to appear in Proceedings of ESWC 2015. [5] Paolo Busetta, Nicholas Howden, Ralph Rönnquist, and Andrew Hodg- son, ‘Structuring BDI Agents In Functional Clusters’, in Proceedings of the Workshop on Agent Theories Architectures and Languages (ATAL- 99), volume 1757 of Lecture Notes in Artificial Intelligence, Orlando, Florida, (15-17th July 1999). Springer Verlag. [6] Rick Evertsz, Matteo Pedrotti, Paolo Busetta, Hasan Acar, and Frank Ritter, ‘Populating VBS2 with Realistic Virtual Actors’, in Conference on Behavior Representation in Modeling & Simulation (BRIMS), Sun- dance Resort, Utah, (March 30 – April 2 2009). [7] Henry Lieberman, Fabio Paternò, Markus Klann, and Volker Wulf, ‘End-User Development: An Emerging Paradigm’, End User Devel- opment, 9, 1–8, (2006). [8] Zeno Menestrina, Antonella De Angeli, and Paolo Busetta, ‘APE: end user development for emergency management training’, in 6th International Conference on Games and Virtual Worlds for Serious Applications, VS-GAMES 2014, Valletta, Malta, September 9-12, 2014, pp. 1–4. IEEE, (2014). [9] Anand S. Rao and Michael P. Georgeff, ‘Bdi agents: From theory to practice’, in IN PROCEEDINGS OF THE FIRST INTERNATIONAL CONFERENCE ON MULTI-AGENT SYSTEMS (ICMAS-95, pp. 312– 319, (1995). [10] Frank E. Ritter, Jennifer L. Bittner, Sue E. Kase, Rick Evertsz, Matteo Pedrotti, and Paolo Busetta, ‘CoJACK: A high-level cognitive archi- tecture with demonstrations of moderators, variability, and implications for situation awareness’, Biologically Inspired Cognitive Architectures, 1, 2–13, (July 2012). [11] Gangemi, A., Guarino, N., Masolo, C., Oltramari, A., Schneider, L.: Sweetening ontologies with dolce. In: Proceedings of the 13th International Conference on Knowledge Engineering and Knowledge Management. Ontologies and the Semantic Web, Springer-Verlag (2002) 166–181 90