OBCAS: an agent-based system and ontology for mobile context aware interactions

Download OBCAS: an agent-based system and ontology for mobile context aware interactions

Post on 23-Jan-2017




2 download

Embed Size (px)


<ul><li><p>J Intell Inf SystDOI 10.1007/s10844-014-0305-8</p><p>OBCAS: an agent-based system and ontology for mobilecontext aware interactions</p><p>Pilar Castro Garrido Irene Luque Ruiz Miguel Angel Gomez-Nieto</p><p>Received: 5 August 2013 / Revised: 30 December 2013 / Accepted: 2 January 2014 Springer Science+Business Media New York 2014</p><p>Abstract Society is changing and technological advances provide mechanisms to facilitatethe development of a large number of tasks in technical, humanities, health and social areas.Nowadays, application of the improvement of peoples quality of life is generating signifi-cant interest, giving birth to systems oriented to the supervision, care and help for people inthe development of their daily affairs. Thus, we may assume that its application to the super-vision of a specific group of people can improve the quality of life for many people. OBCASimplements a monitoring service through mobile devices capable of providing enough infor-mation for an intelligent system. The multi-agent component provides the intelligence forthe system, allowing it to run the appropriate services by adjusting them to the users profileand preferences. AGATHA is an application based on OBCAS that provides an alarm ser-vice during a supervision process. AGATHA has been tested on the supervision of elderlyand victims of gender violence, and the result shown in this paper has been satisfactory.</p><p>Keywords Ontology JADE Context aware Mobile phone Ubiquitous computing</p><p>1 Introduction</p><p>Until Weiser published the work The Computer for the Twenty-First Century in 1991(Weiser 1991), man-machine interactions (HCI) took place using computers.</p><p>Weisers proposal is based on the inadequacy of the current human-computer interac-tions. The computer is an over-complex device, requires a lot of handling-time, distractingthe users attention from the task he/she has to perform. It therefore seems logical to work</p><p>P. Castro Garrido I. Luque Ruiz M. A. Gomez-NietoDepartment of Computing and Numerical Analysis, University of Cordoba Campus Universitario deRabanales, Albert Einstein Building, 14071, Cordoba, Spaine-mail: pcgarrido@uco.es</p><p>I. Luque Ruize-mail: iluque@uco.es</p><p>M. A. Gomez-Nietoe-mail: mangel@uco.es</p><p>mailto:pcgarrido@uco.esmailto:iluque@uco.esmailto:mangel@uco.es</p></li><li><p>J Intell Inf Syst</p><p>towards the disappearance of computers. We propose the integration of devices in scenar-ios where the user is located, in which he/she can interact naturally with the devices andperform any daily task with absolute transparency.</p><p>Integrating computing with the environment of a person is called Ubiquitous Comput-ing. A pervasive computing system should be able to: a) identify the user, b) recognize theusers state, c) infer their needs and d) act proactively.</p><p>One of the most important devices in the era of ubiquitous computing is the mobiledevice, thanks to the increased processing power, memory and especially the large numberof sensors that the device incorporates. All of the afore-mentioned makes it suitable for thenew interactions model proposed by Weiser.</p><p>The mobile phone will identify the user through the device and the IMEI serial number ofthe SIM card used by the device. The ability to identify users is one of the main requirementsof a pervasive or ubiquitous computing system. Once the device is able to recognize theuser, the next step will be to recognize the users status, so it will be necessary to havecontext information. This context information is to be obtained from the sensors. Finally,with this information, the system will be able to infer user needs and act in a proactive way.It takes the most important user preferences into account, either explicitly set by the user, orimplicitly from previous interactions.</p><p>Ubiquitous Computing Systems are complex systems that integrate many computationaldevices and systems simultaneously.</p><p>1.1 Multi-agent system</p><p>Multi-Agent Systems (MAS) arise from the need to develop complex applications com-posed of many interacting subsystems. The MAS systems are composed of a fairly largenumber of agents working in a coordinated and organized way to manage a complex systemintelligently (Ferber 1999). In a MAS, particular objectives of each subsystem are united ina common goal.</p><p>Some of the most important areas in which they are applying the MAS are: 1) physi-cally distributed troubles, 2) when the complexity of the solution requires heterogeneousexperience or 3) where the problem is defined via computer networks.</p><p>Because MAS are aimed at solving problems in a distributed way, agent communica-tion is the key to realizing the full potential of the agent paradigm. But this is possibleonly if agents have the ability to establish communication on cooperation strategies. Thus,for the development of such systems it is important to have development standards in thisfield and the standard adopted by most development environments is FIPA (Foundation forIntelligent Physical Agents) (2013), which among its important achievements are: the def-inition of a language to communicate between agents (FIPA-ACL), a selection of contentlanguages such as FIPA-SL, as well as a set of interaction protocols. Another importantcontribution is the development of several tools and libraries for developing MAS underthis standard. JADE (Java Agent DElopment Framewok) (2013) is one of the most used andtherefore it has been chosen for the development of our system. JADE is the platform forthe development of agents.</p><p>Often during the development of systems based on the paradigm MAS, agents haveto communicate using complex expressions. As mentioned the FIPA standard languagedescribes content that can express more than simple strings. Furthermore, both FIPA andJADE permit the use of ontologies in ACL messages.</p><p>The languages of content, such as language SL (Semantic Language) proposed by FIPA,must be known and used by all agents for successful communication.</p></li><li><p>J Intell Inf Syst</p><p>In order to create complex messages using a language of content, it is necessary to havedefined a vocabulary or set of terms and semantics associated with that vocabulary, so thatthe content of these messages has a clear meaning for any of the actors in the communicativeact. This is achieved through the design and development of an ontology for the system.</p><p>An ontology is a formal description of concepts and relationships that can exist in a givencommunity of agents (Staab and Studer 2009). The use of ontologies ensures that agentsattach the same meaning to the symbols used in messages.</p><p>From an ontological perspective, OBCAS is based on the idea proposed by Kacprzykand Zadrozny (2010), which defines two different ontologies:</p><p> An ontology-based domain, in which the general concepts used for modeling context-aware interactions in smart environments are represented.</p><p> An ontology-based application, in which concepts, predicates and agent actions relatingto the specific problem considered are defined; in this case a MAS for personalizedservices in intelligent environments.</p><p>Ontologies handled by JADE are ontologies based on application. During the communi-cation process, JADE uses only predicates and agent actions. Both are composed of one ormore terms, which can be primitives or aggregations, among others. The agent must encap-sulate predicates and actions so they can be the content of ACL message in order to be sentto other agents.</p><p>Thus, components of an ontology in JADE are Bellifemine et al. (2007):</p><p> Concepts: are expressions representing objects, whose information is structured in sev-eral attributes. Their attributes can be simple data types (primitives) or may be instancesof other concepts.</p><p> Predicates: are expressions about the state of the world that can be true or false. Actions of agents: are expressions that indicate actions that agents can perform.</p><p>This paper describes OBCAS (Ontology-Based Context Aware System), a Comput-ing Ubiquitous System developed under a MAS paradigm. This system defines a Kernel(OBCAS - Ontology), a framework of knowledge for the definition, management anddeployment of context-aware applications. This framework has the objective of the rep-resentation and integration of different models (ontologies) and their relationships. Theseontologies represent all the elements involved in the modeling scenarios, as well as themechanisms for the deployed of the MAS in charge of managing context-aware applications.</p><p>This paper is organized as follows: Section 2 describes related work beginning with sys-tems based on MAS to ending with complex MAS that use ontologies. Section 3 definescontext-aware interactions, followed by Section 4 where the Architecture of OBCAS isdescribed. Then we present the ontology used by the system and how it is possible to incor-porate elements from standards ontologies in Section 5. Section 6 describes AGATHA, anapplication based on OBCAS that provides an alarm service during a supervision process.Finally, remarks and discussion are given.</p><p>2 Related works</p><p>In recent years, the increasing complexity of the problems makes it increasingly more nec-essary to use agent and MAS-based architectures. In the literature, different authors havedeveloped and proposed many applications based on multi-agent architectures.</p></li><li><p>J Intell Inf Syst</p><p>Some works (OHare and OGrady 2003; Bickmore et al. 2013) have introduced conceptssuch as mobility, adaptability and agents in order to provide a context-aware tourist systemfor monuments o museums. This system is only a tourist guide that assists roaming tourists,it does not allow for defining different scenarios. Other work, such as that proposed byJulien et al. (Julien and Roman 2005), presents an implementation and analysis of a protocolfor providing contexts in mobile ad hoc networks using multi-agents.</p><p>Fraile et al. (2009) presents a Hybrid Multi-Agent Architecture for the control andsupervision of dependent environments, based on an Ambient Intelligence model. Thisarchitecture incorporates a management system of alerts based on SMS and MMS tech-nologies. The main disadvantage of this system is that, in spite of using mobile devices foralarms, it does not use device sensors, thereby losing valuable information. Mobile devicesare devices that people carry with them for much of their time, so they can offer a lot ofinformation about the user that carries it. It is necessary to find a model that incorporatesinformation from these kinds of devices.</p><p>In MAS-based architectures, the most important part is the communication, which iswhy some authors, such as Chaimontree et al. (2011), propose frameworks based oncommunications.</p><p>A MAS ontology is a specification of a conceptualization, the description of the conceptsand relationships between them, which may be part of the knowledge of an agent or a societyof agents. At present there are many proposals made with MAS and applications that useontologies.</p><p>Garca-Sanchez et al. (2009), present SEMMAS, an ontology-based framework forseamlessly integrating Intelligent Agents and Semantic Web Services. Another example isdescribed by Chen and Chen (2007), where they propose to develop a conceptual frame-work based on multi-agent systems and ontology technology, in order to create a virtualobservatory with semantically enriched Web services.</p><p>But ontologies have been used to develop more open frameworks, and this is the aim ofOBCAS. OBCAS a framework that can be used to develop context-aware applications forapplications that define any services, not just web services, being one of the most importantNear Field Communication (NFC)-based services.</p><p>3 Modeling context aware interactions</p><p>To define context-aware interactions, the first task is to define the context and havingreviewed the definitions of various authors, Dey and Abowd (1999) provides the definitionthat seems the most complete. Dey considers that: Context is any information that can beused to characterize the situation of an entity. An entity is a person, place, or object that isconsidered relevant to the interaction between a user and an application, including the userand applications themselves.</p><p>A context is located in a natural environment, a scenario, and is characterized by aug-menting existing objects, creating a smart environment. The characteristics of interactionwith the user, that a context provides, not only depends on the objects that are immersed inthe context, but also on the characteristics, requirements and capabilities of the user.</p><p>In the same way, Dey also considers that: A system is context-aware if it uses contextto provide relevant information and/or services to the user, where relevancy depends on theusers task.</p><p>In the development of context-aware systems where the infrastructure and services areavailable anywhere, anytime, in any format, it is very important to have the knowledge,</p></li><li><p>J Intell Inf Syst</p><p>perception, understanding and definition of all components of context. It is necessary toconsider that the context-aware applications must respond to changes in the environment inan intelligent way, considering the user behavior.</p><p>An important feature of context-aware ubiquitous systems is locality, that is, that thecapabilities or services offered by the environment decrease with distance from the user. Itis therefore important to know the users location, and that is why the phones are a greattool for interaction in these systems.</p><p>Therefore, context aware interactions are interactions made between a user and theenvironment or scenario.</p><p>The context is not only the physical context in which the user is located and the objectsthat are close to him, but it also refers to the history of interactions, previous services andlocations.</p><p>For this reason, to model context-sensitive interactions, the following are necessary: a)the definition of the users, scenarios, components, properties and activities, b) to capturethe behavior of the elements of the scenarios in their interaction with users, c) to definethe resources required, d) as well as learning about these interactions in order to provide asuitable and early interaction to permit adapting the scenario to future interactions.</p><p>3.1 Modeling of context around the user</p><p>The modeling of context around the user is the process through which one controls, definesand captures the description of all information associated with the user to be used by variousapplications to personalize their response or adapt their interaction to user interests andpreferences.</p><p>The next set of information will be collected from the user:</p><p> User Account Role Disability Preferences / Profile History (Services History, Location History) User Context (Pending Services List, Current Position)</p><p>3.1.1 User account</p><p>User account is a collection of personal information about the user. Every user account hasan associated username and password used to access to account management features andupdated or deleted user information.</p><p>The information stored is related to personal data, usual user location (residence) andmiscellaneou...</p></li></ul>