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

J Intell Inf SystDOI 10.1007/s10844-014-0305-8

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

Pilar Castro Garrido · Irene Luque Ruiz ·Miguel Angel Gomez-Nieto

Received: 5 August 2013 / Revised: 30 December 2013 / Accepted: 2 January 2014© Springer Science+Business Media New York 2014

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 people’s 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 user’s 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.

Keywords Ontology · JADE · Context aware · Mobile phone · Ubiquitous computing

1 Introduction

Until Weiser published the work “The Computer for the Twenty-First Century” in 1991(Weiser 1991), man-machine interactions (HCI) took place using computers.

Weiser’s 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 user’s attention from the task he/she has to perform. It therefore seems logical to work

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: [email protected]

I. Luque Ruize-mail: [email protected]

M. A. Gomez-Nietoe-mail: [email protected]

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

J Intell Inf Syst

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.

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 theuser’s state, c) infer their needs and d) act proactively.

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.

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 user’s 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.

Ubiquitous Computing Systems are complex systems that integrate many computationaldevices and systems simultaneously.

1.1 Multi-agent system

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.

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.

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.

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.

The languages of content, such as language SL (Semantic Language) proposed by FIPA,must be known and used by all agents for successful communication.

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

J Intell Inf Syst

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.

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.

From an ontological perspective, OBCAS is based on the idea proposed by Kacprzykand Zadrozny (2010), which defines two different ontologies:

– An ontology-based domain, in which the general concepts used for modeling context-aware interactions in smart environments are represented.

– 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.

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.

Thus, components of an ontology in JADE are Bellifemine et al. (2007):

• 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.

• 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.

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.

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.

2 Related works

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.

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

J Intell Inf Syst

Some works (O’Hare and O’Grady 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.

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.

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.

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.

Garcıa-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.

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.

3 Modeling context aware interactions

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”.

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.

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 theuser’s task”.

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,

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

J Intell Inf Syst

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.

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 user’s location, and that is why the phones are a greattool for interaction in these systems.

Therefore, context aware interactions are interactions made between a user and theenvironment or scenario.

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.

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.

3.1 Modeling of context around the user

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.

The next set of information will be collected from the user:

• User Account• Role• Disability• Preferences / Profile• History (Services History, Location History)• User Context (Pending Services List, Current Position)

3.1.1 User account

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.

The information stored is related to personal data, usual user location (residence) andmiscellaneous data such as affiliations, marital status, etc.

Some special attributes are, for example, those of visibility for user monitoring ormonitoring dates.

3.1.2 User role

The role concept is related to the paper or the function of a person in a specific place orsituation. Each role is associated with a set of behaviors.

In the field of ubiquitous applications, the role will be considered as an element of contextto keep in mind customizing the services to be provided to the user. The role will be used

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

J Intell Inf Syst

by different applications that are developed under this paradigm for adapting the interfaceand providing one kind or another of functionality to the user.

It is important to note that a person can play different roles, depending on the context,and the ubiquitous system must consider them all.

3.1.3 User disabilities

Disability is a form of physical, sensory or cognitive impairment which can cause humanlimitations.

The different types of disabilities are: a) Visual impairments, b) Hearing impairment, c)Physical impairment, d) Speech impairment, e) Dyslexia and f) Autism.

In OBCAS, the disabled categories considered are visual and hearing impairments. Forthese categories the system is capable of selecting or modifying the user interface accordingto user characteristics and disabilities. For instance, notifications for people with visualimpairments will be with vibration and sound, whereas notifications for people with hearingimpairments will be with vibration and text.

The interface design must consider user disability requirements over other requirements.They can be considered as a special type of user preferences.

3.1.4 User preferences

User preferences are a collection of settings that store the description of the characteristicsand preferences of a user. This information will be used by systems in order to look andwork according to the user.

User preferences contain the user settings for services, resources such as sound settings,specific application settings and other features.

User preferences are grouped in two basic profiles: a) default profile and, b) personalizedprofile.

The default profile has the activation of all settings established with average values, andthe execution of the services with the default value set on the service definition.

The personalized profile, in turn, is classified as:

• Reactive: all settings are enabled and with maximum value, in addition, the executionof the services is automatic.

• Interactive: All settings are activated, but the running services are manual, afterconsulting the user.

• Not available: all settings are deactivated and the running services are manual.• New profile: the values to the settings and services are provided manually.

User profiles ensure that user personal preferences are used every time he/she logs on tomobile application.

3.1.5 History

In general, every user has a history about locations and services. The history of locationsis related to the geographical position of the user over time. This information can be usefulfor applications that need to know routes taken or used by users. Applications can show itor use it to customize services or information to the user.

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

J Intell Inf Syst

The history of services is related to executed or canceled services, considering the cir-cumstances under which they were originally executed or canceled. This information is usedby the system in order to prioritize the execution of services.

3.1.6 User context

In the previous section, with the “history” we will try to gather information about servicesand past locations, while “user context” refers to the user’s current state considering thecurrent list of outstanding services on the agenda and the current location.

3.2 Modeling the environment

Often, an environment is a scenario that can act predictably, since users often have priorinformation about the characteristics and rules governing the operation of this space. How-ever, each environment has an aspect and individual behavior that depends on the user thatinteracts in the environment. This individual behavior is responsible for covering the needsand preferences of the user.

In an intelligent environment, the environment is composed, in addition to the objectsthat comprise a scenario of interaction, of the set of external factors that influence thedevelopment of user interactions.

The aim of this type of environment is to enable the user to optimize, without assistance,the interaction experience and customize them to suit his preferences and needs.

An intelligent environment provides services to the user that is in it. These services maybe location-based services or services based on user interactions with augmented objects inthe environment.

Location-based services are services offered to the user only when he/she is in a specificarea. These services are provided to the user independently of the interactions.

Services based on user interactions are services provided to the user at the momentto interact with objects augmented. Augmented objects are items labeled with RFID tags(Finkenzeller 2010). Users interact with these objects by touching them with their NFCdevices.

RFID tags are small devices, similar to a sticker that can be attached or incorporated intoa product, animal or person. Tags contain antennas that enable them to receive and answerto requests by radio from an RFID transmitter-receiver.

NFC (2013) is an easy-to-use short range wireless communication and is based on RadioFrequency Identification technology (RFID). NFC operates in the 13.56 MHz frequencyrange, on a distance of, typically, a few centimeters and combines the functions of a con-tactless reader, a contactless card and peer-to-peer functionality on a single chip. NFCtechnology can be found on devices like mobile phones, and is able to interact with otherNFC devices and RFID tags.

By using NFC technology and the amount of resources provided by mobile devices(sound, video, data processing, etc.) users can interact with the real environment just bytouching real objects previously augmented by tags.

As discussed above, the interaction with the environment takes place through the useof mobile phones, which besides being the monitoring elements which provide informa-tion about the user context, are also devices in which the user receives the result of theirinteractions.

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

J Intell Inf Syst

3.2.1 Elements of a scenario

A scenario consists of a set of related objects and smart spaces that have a meaning withinthe scenario. These spaces and objects provide services to the user when they interact withthem, either by touching or by proximity.

The context objects are real objects in our environment augmented by RFID tags (Tags):a photograph, a chair, keys, etc. Smart spaces are spaces with a set of services associatedthat are provided to the user when in the sphere of influence of the space.

But objects and smart spaces are not the only elements that are part of the scenario, youcan also consider as elements: mobile devices with which the interaction takes place, thesensors that provide context information to the system and the tags that are placed on objectsto augment them.

3.3 Modeling of the interactions

User interaction with the environment is characterized by the resources allocated tothe context. These resources define, by default, the media on which the objects andspaces provide intelligent services to the user, but the way these resources are usedcan be changed later by the user preferences and by the definition of these objects andspaces.

Both tags associated with objects such as smart spaces will offer a set of services whenthe user interacts with them. Such services are characterized by:

• Input parameters list: used to run the service.• Preconditions list: predicates that must be true to run the service. These preconditions

are related to the characteristics of the service, the resources needed, the device withwhich the interaction takes place and the characteristics and preferences of the user.

• Previous service list: list of services that must be run before the current service.• Resource list: list of capabilities necessary to run the service.• Service result: the result after running the service.

Services are guided by a set of rules that provide a logical interaction between the envi-ronment and the user. The rules allow the definition of complex interactions of the user withthe context, adapting these interactions to user behavior and preferences. Preferences, alongwith rules, allow the services and resources to be adapted to the user.

4 OBCAS architecture

OBCAS is a multi-agent system based on a client-server architecture. The aim of the systemis to provide a framework to personalize context-aware interaction.

The proposed solution is built on behavior rules expressed by real agents and empiri-cal evidence gathered from the environment. The monitoring is performed through mobiledevices used to interact. Mobile devices have a set of agents in charge of collecting infor-mation from different sensors of the mobile device, another set of agents responsible forservices and resources and another master agent in charge of communication with the server.In addition, the mobile device provides the mechanisms to give preferences and config-uration settings to the system, allowing the execution and visualization of results to bepersonalized.

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

J Intell Inf Syst

The data collected by the mobile device sensors through agents are sent to the serverresponsible for the processing. When the server receives the data, it checks the activation ofnew services in order to add them to the agenda of pending services, when necessary. Beforethe services are added to the agenda, it is necessary to obtain the priority of the service,which is obtained by considering: user preferences, service resources, mobile capabilitiesand context information provided by the sensors and previous interactions.

As shown in Fig. 1, there is a mobile and a server component. Both have a graphicalinterface and a set of agents (Multi-Agent System). The graphical interface on the serverallows the administrator to set the values for services and manage the whole system.

Multi-agents system works to provide a personalized interaction. Communicationbetween agents is performed using the FIPA protocol. The ontology is built on Protege thatprovides tool to generate the JAVA files used on FIPA.

OBCAS is an active system that generates several transactional data that must be storedin a database so that they can subsequently be analyzed by the system. For this reason thereis a database on the server side.

In addition, the system should have information about the defined scenarios, their itemsand what services are associated with each of them, allowing modifying them at any timeprovided that the system creates it necessary.

Fig. 1 General architecture of the proposed model

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

J Intell Inf Syst

The database will also keep information about users who use the system, storing forthem information about their devices and active phone lines. With this data the system canassociate the data received from the devices with the appropriate user.

The mobile device will also has a database where values are stored waiting to be sent tothe monitoring server.

4.1 OBCAS mobile

This subsystem is responsible for collecting data from sensors, user preferences, managingdevice resources as well as running and displaying the results of the services.

The agents collect various measures from the environment according to the phone sen-sors: GPS, accelerometer, gyroscope, compass, proximity sensor, lighting sensor, Wi-Fi,etc. Agents also send information about preferences, NFC interaction and changes on theagenda.

All these agents do not act independently, but their activity is managed and coordinatedby a proxy agent, who is also responsible for sending all this information to the server to beprocessed.

4.2 OBCAS server

This component is responsible for receiving the information from the mobile device. Thisinformation must be processed to obtain the actions to be executed. Depending on the infor-mation the system evaluates a set of rules defined for the users involved, and returns theresults to the users, depending on the context.

The functionality of the proxy agent on the server side corresponds to the continuedreceiving of information from the mobile side. The mobile device can send different typesof messages: a) monitoring data, b) changes on preferences, c) changes on the agenda andd) NFC interactions.

Monitoring data will correspond to each of the sensors and contain reading sensor values,the IMEI number and phone number. These last two values are used to verify the origin ofthe data.

The information about changes on preferences has to be sent in order to obtain priorityof services. In the same way, all the changes on the agenda have to be updated on the serverside.

When the user touches an object augmented with the NFC tag, the mobile phone informsthe server in order to include new services to the agenda.

5 The proposed ontology

An ontology, according Volz (2007) defines the terms used to describe and represent adomain, a specific area of interest, in this case the context. Hence, all ontology representsa certain view of the world with respect to a domain. For this particular case, through theontology, we try to make a representation, categorization and recognition of objects, events,situations and behaviors involved in real scenarios, enabling the development of adaptiveand anticipatory systems, even with incomplete knowledge of the objects and preferences.

Among the main points that motivate the use of ontologies, for this particular case, themost important is to let you share the interpretation of the structure of information among

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

J Intell Inf Syst

people / agents. The ontology allows two agents to communicate without ambiguity, besidesmultiple applications being capable of sharing common knowledge.

Therefore, in this paper we propose an ontological generic model and open to all kinds ofscenarios. The aim is to develop a “Kernel”: a knowledge framework for the definition, man-agement and deployment of context-aware applications. It is therefore an ontology whosefunction is the representation and integration of the different models (ontologies) and theirrelationships.

Figure 2 shows a general diagram of the system ontology, which represents all elementsor artifacts involved in the modeling of scenarios and the interactions that take place in it.

But as noted at the beginning, OBCAS also proposes an application ontology. Thisontology defines concepts, predicates and actions to be made by the agents.

The Kernel consists of five components as shown in Fig. 3:

• The first component describes those elements used during the monitoring process. Thiscomponent collects the state of the environment through the sensors of the mobiledevices.

• The second component includes ontological elements belonging to services, associatedresources, input parameters, the necessary preconditions for execution, and the resultsreturned.

• The third corresponds to ontology used to manage NFC interactions, those made withobjects of the scenario augmented with RFID tags.

• The fourth corresponds to the group of ontologies related to the agenda. The Agenda isthe data structure used to manage the execution of services.

• The last component describes user preferences, and includes those features that the usercan explicitly change about the ubiquitous system. These preferences will be consideredin the selection and execution of services.

Fig. 2 Class diagram of the proposed ontology

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

J Intell Inf Syst

Fig. 3 Kernel components

5.1 Monitoring ontology

Figure 4 shows the ontology used by JADE agents for the monitoring process. During mon-itoring, information should be collected from all sensors of the mobile device, the networkconnections, as well as the telephone activity such as calls, SMS, MMS.

Fig. 4 Monitoring ontology

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

J Intell Inf Syst

All these data will provide the physical context of the user, its location, its activity, andthe communication channels. Both this ontology as well as the following will consist ofthree parts:

• The first corresponds to the concepts, and is related to the general ontology proposedby OBCAS.

• Another part corresponds to the predicates used by agents and which define statementsrelated to the values that the concepts can take.

• The last part contains the actions that agents can perform.

During the development process of multi-agent system, the messages sent betweenagents may only contain predicates and actions.

For the particular case of the monitoring ontology, the actions are related to the differentreadings that can be performed through the mobile device and the predicates show whetherthese readings are correct or not.

5.2 Services ontology

In OBCAS two types of services are defined: those offered by augmented objects on stage,and those offered by smart spaces. Both are added into the system through the servicesagenda that is responsible for managing them and for offering them to the user according totheir preferences and needs.

The actions, defined in this ontology for agents, are related to activities concerned withthe insert, update, delete or running of services. Likewise, predicates reflect the differentstates in which a service can be found (see Fig. 5).

Fig. 5 Service ontology

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

J Intell Inf Syst

When a service is inserted into the agenda, it is in “pending” state, this means that itsexecution is pending the fulfillment of the preconditions list established for this service.The service goes into “running” state if it is running, and at the end of the execution goesinto “executed” state. A service can be canceled either by the application in response to userpreferences, or by the user.

5.3 NFC interactions ontology

The ontology in Fig. 6 contains the concepts, predicates and actions related to those actionsmade by the user touching an augmented object of the scenario.

Objects are augmented by RFID tag. These tags store information about the scenario,the object and its location. With this information it is possible to know what services areassociated with the object.

When a new NFC interaction is sent to the server, the user information is also sent inorder that the services offered by the object satisfy the user preferences.

The actions included in this ontology are related to the interactions storage, retrieval ofservices and its addition to the services agenda.

In this case it only uses one predicate, which indicates that there has been a newinteraction.

Fig. 6 NFC interactions ontology

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

J Intell Inf Syst

5.4 Agenda ontology

This ontology includes concepts, predicates and actions for the agents related to one ofthe most important components of the system: the agenda. The agenda is responsible formanaging services and their execution and it can be defined as a set of items sorted bypriority representing a service as can be seen in Fig. 7.

Each service that is included on the agenda has a sets of properties:

• A priority, indicating the order of execution.• A list of justifications, which represent the measurements to be performed on the

services in order to calculate their priority.• The service with all its components: list of input parameter, list of preconditions, list of

resources, results, etc.

The agent actions defined for this ontology are related to the management of the agendaand the predicates indicate the availability of new services and resources.

5.5 User preferences ontology

User preferences are categorized serving both user-related criteria such as services andresources (see Fig. 8).

It is necessary to define actions for agents related to these three groups of preferences.When the user makes a change in their preferences, this update should be sent to the server.The predicates are related to the outcome of these updates.

Fig. 7 Agenda ontology

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

J Intell Inf Syst

Fig. 8 User preferences ontology

5.6 Implementation of ontology

As mentioned, once you have defined the ontology, it is necessary to use a tool to implementit. We chose to use Protege, which besides providing a user-friendly graphical interface forgenerating ontologies also allows further processing into an ontology ready for use by JADEon FIPA protocols.

Figure 9 shows the JAVA files generated.Figure 10 shows the list of concepts, predicates and agent-actions that are defined in

Protege for use by JADE. All classes inherit Thing class. The Thing class is the main classin Protege of all classes.

Fig. 9 JAVA files

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

J Intell Inf Syst

Fig. 10 Protege ontology

6 Case study and results

In order to verify our proposal and the rapid capability of response provided by systemsthat use this model, we have developed AGATHA, a system used for the monitoring ofdifferent user groups. Specifically, AGATHA is used for the group of elderly people withAlzheimer’s, and for the group of women victims of gender violence.

This system is based on OBCAS, so it has a broad knowledge of the user’s environment.The monitoring process is made through user’s mobile phones. In addition, the mobile isused to show the result of the execution of the services defined in this system.

The test was made by members of ours research group as well as family and friends.

6.1 Description

Firstly, we will define the different roles identified in the system for the two applications ofAGATHA, and next we will describe the composition of the scenarios and smart spaces.

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

J Intell Inf Syst

6.1.1 Objects and smart environments

The roles have an important place in the system, because they define its operating charac-teristic, allowing it to adjust the services and notifications that the system provides to theuser.

In general, the system defines two roles:

• Supervised role: represents the user that is being monitored or controlled by the system.The users with this role have an associated set of restrictions.

• Supervisor role: represents the user that is responsible for ensuring compliance withthe restrictions for the user identified with supervised role. The system informs thesupervisor periodically on the activity carried out by the monitored person.

6.1.2 AGATHA services

The main services provided by AGATHA are alarms services, used to inform supervisorsand supervised users of an inappropriate action of the supervised person. Each of the usersinvolved in the monitoring process will receive an alarm message differently according tohis/her role. Figure 11 shows some screenshot of AGATHA.

Each of the spaces has an associated set of alarms defined as the services provided bythe spaces. These alarms are activated when the user enters or exits the area.

Alarms will be considered as services whose preconditions are related to the distancebetween the user and the space, as well as the time that the user stays in it. Thus, when somespecific values for these parameters are reached, the service is run according to user’s roleand preferences. The result of the service will be displayed considering all elements of theuser’s profile, including the fact that they may have a disability.

Other services are those related to calls or messages to family, friends or emergencyservices. These services are automatically executed when the user interacts with the objectsin the scenario. Additionally, users with supervisor role can obtain information about the

Fig. 11 Some screenshot of AGATHA

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

J Intell Inf Syst

position and activated alarms from the people supervised. All these services will also takeinto account the user’s profile.

6.2 AGATHA-alzheimer

For the particular case of the elderly with Alzheimer, the role of supervised corresponds tothe older person. On the other hand, the role of supervisor is associated with the nurse orperson who is in the care of the elderly.

Only one scenario is defined, related to the home, which will include the following items:a) photographs augmented with RFID tags that allow automatic calls to family, friends oremergency services to be made, b) posters, with tags identifying the different rooms of thehouse, used to tell the supervisor where the supervised person is, and finally c) posters withtags that indicate the activity of the supervised person.

The latter item allows long periods without movement to be identified as resting timethus avoiding triggering an alarm. (See Fig. 12)

As well as defining the scenarios, we also define the smart spaces, as you can see onFig. 13:

• A main space is defined which corresponds to the area in which the person must remainobligatorily, and outside that area, which can be considered potentially dangerous. Thisarea corresponds to the elderly home.

• In addition to this main area, there are others outside it and equidistant from it. Theycorrespond to areas with different degrees of dangerousness, the last is regarded as thefarthest and the most dangerous.

Fig. 12 AGATHA-ALZHEIMER scenario

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

J Intell Inf Syst

Fig. 13 AGATHA-Alzheimer smart space

6.3 AGATHA-victims

For the particular case of the victims of gender violence, the supervised role correspondswith the aggressor, and the role of supervisor is associated with the victim and with thepolice agent that controls to the aggressor.

For this application, it defines a scenario with a tag in the residence, which will tell thesystem if the victim is at home or away (see Fig. 14). In addition, it defines two types ofspaces:

• Those related to fixed locations as the residence of the victim, work place and otherfrequently used spaces and,

• Those related to the distance between the victim and aggressor considering the currentposition of the victim.

When a restraining order stipulates that an aggressor cannot approach within 500 metersof his victim, an area is established 500 meters around the victim that the aggressor cannotcross.

As in the previous case, secondary spaces are considered around the prohibited areaallowing action to be taken prior to a violation of the restraining order.

6.4 Emergency services and telecare of Andalusia

6.4.1 Emergency services

Emergency services in Andalusia have telephone attention features through eight coor-dination centers located in each of the provinces of Andalusia. The attention serviceincludes receiving the call and demands management with the most appropriate allocationof resources, and information or guidance and telephone counseling (Alvarez Rello et al.2011).

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

J Intell Inf Syst

Fig. 14 AGATHA-Victim

The health care process begins with receiving a call in one of eight coordination cen-ters. This is where the teleoperators handle incoming calls following specific protocols ofquestions based on the type of request presented by the caller.

According to the report Alvarez Rello et al. (2011), the average response time (ART) foran emergency is 12 min and 5 s. ART is the time elapsed from the time of receiving the callat the coordinating center, until the arrival at the scene of the emergency team.

This time can be considered reasonable as long as the emergency call is made in time. Theproblem is that in most cases, emergency calls are made too late, especially in those caseswhere the patient cannot call and needs another person to notify the emergency services.

6.4.2 Telecare

The Andalusian Telecare Service is a service of the regional government, which guaran-tees its users personal attention 24 hours a day, every day of the year, without leavingthe house, at the push of a button (Telecare of the Andalusian 2013). It consists ofdirect and personalized attention to emergency situations, insecurity, loneliness or isolation,through specialized professionals who provide the necessary support to resolve situationsof different nature, mobilizing the resources best suited to each case.

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

J Intell Inf Syst

The Andalusian Telecare Service has a fixed terminal with speaker and microphone anda wireless terminal which the user carries at home, as a pendant.

The characteristics of this wireless device allow users:

• To establish communication from anywhere in the home.• By pressing any of the two buttons, elderly people come into contact with the central

Telecare.• The system used for establishing communication is “hands-free”.• By pressing the button all information relating to the elderly person appears on the

teleoperator’s screen.

When necessary, it is diverted to emergency services.The telecare system is an improvement to elderly care because at the time a person begins

to feel sick he/she only needs to press a button to start the process to assist him. But thissystem does not provide mechanisms to anticipate an incidence.

6.5 Results

In Table 1 we compare the main features of emergency systems and telecare in Andalusia,regarding AGATHA.

As observed, the ability to anticipate the system as well as automatic activation pro-cesses are needed for both the elderly and victims of gender violence. Both are desirablecharacteristics for any system that seeks to protect people coming from vulnerable groups.

Other advantages of AGATHA are that they do not require a specific device; they offerthe possibility to notify relatives at the same time as to emergency services and can be usedin open spaces and not only at home.

In the case of gender violence, the Andalusian Government does not provide any specificelectronic device, so the only mechanism available for victims is the emergency service (seeTable 2).

Table 1 Comparison of emergency services and telecare in the community of Andalusia with AGATHA incare of the elderly

Characteristics Emergency services AGATHA

Facility to report Manually via the pushbutton. Automatic through alarms. Manual,

the incidence touching a poster of emergencies.

Ability to anticipate None Yes, through activation ranges alarms.

Notify incidence to relatives No, it will be made by the Yes, automatically using messages

and acquaintances emergency team. and through a call of the supervisor

at the instant of receiving the alarm.

Requires a specific device Yes No

Requires patient No, to get their data and No, the alarm informs about

cooperation but it is necessary to know the patient and the incidence.

the incidence.

Home of patient care If the patient does not press The process starts automatically

the button, it is not possible upon activation of the alarm. The

to begin with the process. parameters that describe a dangerous

situation has been achieved.

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

J Intell Inf Syst

Table 2 Comparison of emergency services and telecare in the community of Andalusia with AGATHA incare of the gender violence victims

Characteristics Emergency services AGATHA

Alert the victim No. Yes, the system warns of the

approach of his aggressor.

Ability to anticipate No, the victim denounces. Yes, the system alerts both the

victim and the aggressor’s supervisor.

Works outside the home No. Yes, thanks to the mobile

device’s GPS.

Finally, Table 3 show a comparing of the time when the emergency services are notified,based on the wording of a particular incident.

“Mary is a victim of domestic violence and John is the aggressor. He has a restrain-ing order from her of 1.000 meters. This order prevents John from being less than1000 meters from Mary, whether she is at home or outside.

One day, John leaves his house at 9 am located elsewhere intending to visit Mary.The town of John is located 8 kilometers from the town of Mary. At 9:15 John arrivesin the town of Mary. In order to not be seen, he parks the car and walks to reach thehome of Mary, but Mary is not at home.

Table 3 The time when the emergency system knows the incidence

Emergency services AGATHA

The best case scenario

Mary sees John out of the car and It establishes a prohibited area for John which corresponds

alerts the emergency services. with his town, so when he leaves his town, AGATHA sends an

No aggression. alarm to Mary and to the supervisor of John.

Time: 9:15 am No aggression.

Time: 9:00 am

The intermediate case scenario

Mary sees John close to attacking, There shall be a prohibited area of 1000 meters around

then she runs and screams. the GPS position of the victim, and other two of 1500 and 2000.

She calls emergency services. Besides establishing the victim’s home as prohibited area

There may be some aggression in the 12 of 1000 meters. When John approaches the home of

minutes it takes for the emergency team. Mary, the alarm is activated.

Time: 11:00 am No aggression.

Time: 9:15 am

The worst case scenario

Mary cannot see John and he It establishes a prohibited area whose area is 1000 meters

attacks her in a secluded place. around the GPS position of the victim. When John comes

Aggression. into that area the alarm is triggered and notifies Mary and

Time: Indeterminate the supervisor of John.

Probably no aggression.

Time: 9:15–11:00 depends on the location of Mary

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

J Intell Inf Syst

John walks through the town looking for Mary until at 11 am, he reaches andassaults Mary.”

This Table 3 shows that for the case of emergency services, Mary is the one who can avoidaggression, being constantly on alert. However in the case of AGATHA, the best way toprevent aggression is to better define the spaces in which John can enter or must stay.

7 Discussion and remarks

This article shows the importance of having defined an ontology for developing context-aware applications in which there is usually a lot of information being handled and variousapplications and devices that make use of it. It is no longer sufficient to have a model inwhich there is a set of services and resources assigned to objects, it is necessary to have aknowledge base where applications can search and even reason about the context.

This reasoning may be essential for applications to run services effectively and mayeven save the lives of people as in the case of its application on AGATHA, a system formonitoring the elderly and aggressors in cases of gender violence.

There are many applications that can use OBCAS to define their operation, and manyfeatures that can be customized to ensure that even in the case of multiple users who areinteracting in the same environment with the same objects, the experience can be differentfor each of them.

Acknowledgments The Ministry of Science and Innovation of Spain (MICINN) supported this work(Project: TIN2011-24312).

References

Alvarez Rello, A., Alvarez Martınez, J.A., Alvarez Rueda, J.M., et al. (2011). El sistema de emergencias yurgencias medicas extrahospitalarias en Andalucıa. Los servicios de emergencia y urgencias medicasextrahospitalarias en Espana (pp. 130—157).

Bellifemine, F., Caire, G., Greenwood, D. (2007). Developing multi-agent systems with JADE. Wiley.Bickmore, T., Pfeifer Vardoulakis, L.M., Schulman, D. (2013). Tinker: a relational agent museum guide.

Autonomous Agents and Multi-Agent Systems. doi:10.1007/s10458-012-9216-7.Chaimontree, S., Atkinson, K., Coenen, F. (2011). A framework for multi-agent based clustering.

Autonomous Agents and Multi-Agent Systems, 25, 425–446.Chen, R.-S., & Chen, D.-K. (2007). Apply ontology and agent technology to construct virtual observatory.

Expert Systems with Applications, 34, 2019–2028.Dey, A.K., & Abowd, G.D. (1999). Towards a better understanding of context and context-awareness. GVU

Technical Report. GIT-GVU-99-22, Georgia Institute of Technology.Ferber, J. (1999). Multi-agent system: an introduction to distributed artificial intelligence. Addison Wesley.Finkenzeller, K. (2010). RFID handbook: fundamentals and applications in contactless smart cards, radio

frequency identification and near-field communication. Wiley.FIPA (Foundation for Intelligent Physical Agents) (2013). http://www.fipa.org/. Accessed 2 Feb 2013.Fraile, J.A., Bajo, J., Perez-Lancho, B., Sanz, E. (2009). Hoca: multiagent architecture for developing

intelligent home care environments. International Symposium on Distributed Computing and ArtificialIntelligence, Advances in Soft Computing, 50(1), 52–61.

Garcıa-Sanchez, F., Valencia, R., Martınez, R., Fernandez, J.T. (2009). An ontology, intelligent agent-basedframework for the provision of semantic web services. Expert Systems with Applications, 36(2), 3167–3187.

JADE (Java Agent DElopment Framework) (2013). http://jade.tilab.com/. Accessed 2 Feb 2013.Julien, C., & Roman, G.C. (2005). Supporting context-aware interaction in dynamic multi-agent systems.

Lecture Notes in Computer Science. doi:10.1007/978-3-540-32259-7 9.

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

J Intell Inf Syst

Kacprzyk, J., & Zadrozny, S. (2010). Soft computing and web intelligence for supporting consensus reaching.Soft Computing, 14(8), 833–846.

NFC Forum (2013). http://www.nfc-forum.org. Accessed 15 Feb 2013.O’Hare, G.M.P., & O’Grady, M.J. (2003). Gulliver’s Genie: a multi-agent system for ubiquitous and

intelligent content delivery. Computer Communications, 26(11), 1177–1187.Staab, S., & Studer, R. (2009). Handbook on ontologies. International handbooks on information systems.

Springer.Telecare of the Andalusian (2013). http://www.juntadeandalucia.es/agenciadeserviciossocialesydependencia/

es/programas/atendep catalogo/atendep catalogo info/atendep catalogo/atendep catalogo servicios/atendep catalogo servicios tas/wfprogramitem view pub. Accessed 6 Mar 2013.

Volz, R. (2007). Semantics at work ontology management – tools and techniques. University of Karlsruhe.Weiser, M. (1991). The computer for the 21st century. Scientific American, 265(3), 66–75J.


Top Related