[IEEE 2008 International Conference on Telecommunications (ICT) - St. Petersburg...

6
Modeling the Home Environment using Ontology with Applications in Software Configuration Management Elena Meshkova, Janne Riihij¨ arvi and Petri M¨ ah¨ onen Department of Wireless Networks, RWTH Aachen University Kackertstrasse 9, D-52072 Aachen, Germany Email: {eme, jar, pma}@mobnets.rwth-aachen.de Christoforos Kavadias Teletel Athens, Greece Email: [email protected] Abstract— The rapid development of the network technologies has enabled the construction of heterogeneous home networks. However, the control of the smart home environment that ensures the conflict-free, up-to-date and smooth functioning of the home environment is not trivial. It is necessary to track the state of the numerous devices which compose the home environment, as well as the respective services installed on them, to ensure conflict-free seamless operation of the system. In this paper we present an ontology-enabled knowledge base for home networks. The knowledge base allows to depict complex relations between devices and services working in a home environment, for example issues to be considered before installing a new software version on a certain device, such as the user profile, interference with existing devices, etc. The knowledge base is a part of the COMANCHE system, which aims to provide a software configuration management infrastructure which can be used in the home automation domain. To the best of our knowledge, the presented system provides a first comprehensive framework for reasoning about services in the home environment realized in close collaboration with the relevant industry. I. I NTRODUCTION The research and development in the area of smart homes is booming. The advantages in networking and computer miniaturization have allowed the construction of complex heterogeneous networks which are an inevitable part of a ubiquitous environment. However, the real-life deployment of intelligent home faces many challenges. W. Edwards and R. Grinter [1] have pointed among others the following issues: the partial, non-instantaneous, introduction of new technology at home, interoperability issues, high reliability demands and need for self-configuration. The solution of the above issues is impossible without a solid model of context description of the home environment. One can distinguish between several basic context models [2]. Application-oriented approach, for example exercised by HP’s CoolTown [3], concentrates on modeling and representing content for only specific application. Often these models lack formality and expressiveness. Model-oriented approach typically uses conceptual modeling to represent context, the examples are Entity-Relationship model and UML diagrams [4], [5], which might be suboptimal for constant run-time update. Ontology-oriented approach allows to construct a knowledge base containing information on the certain envi- ronment which context model is represented as an ontology. The use of ontology allows creation of very flexible models on which deductions and reasoning can be done. Ontologies are also the core component of the Semantic Web [6] concept. We have chosen the ontology-oriented approach to per- form context modeling of the home environment as it suits the best for the scalability and web-orientation requirements that a large distributed software management system such as COMANCHE [7] faces. COMANCHE stands for Software COnfiguration MAnagement framework for Networked ser- viCes environments and architectures incorporating ambiEnt intelligence features. Its main purpose is to create a service- oriented system that allows to simultaneously install, con- figure and monitor services in multiple heterogeneous home environments ensuring integrity and smooth functioning of home networks according to the user needs. In this paper we present an ontology-enabled knowledge base (KB) that models a home environment in terms of services it provides and the respective hardware, software and network components. It also communicates data concerning users of home environments and providers of software components and hardware devices to cope with the security issues. The suggested ontology model is, to our knowledge, the first that distinguished between abstract and real service implementation in the context of the home environment, as well as allows to keep track and react on numerous events in the home network. The rest of the paper is structured as follows: in Section II we discuss technologies that forms the foundation of our work. The general description of COMANCHE architecture is given in Section III. The home environment ontology that is used in the knowledge base is described in Section IV along with the tools that are used for its development. Section V concludes the paper. II. ONTOLOGY TECHNOLOGY OVERVIEW Computer scientists use the term ontology to specify a conceptualization [8] in the context of knowledge sharing. By conceptualization we understand an abstract, simplified view of the environment we want to represent. Every knowledge

Transcript of [IEEE 2008 International Conference on Telecommunications (ICT) - St. Petersburg...

Page 1: [IEEE 2008 International Conference on Telecommunications (ICT) - St. Petersburg (2008.06.16-2008.06.19)] 2008 International Conference on Telecommunications - Modeling the home environment

Modeling the Home Environment usingOntology with Applications in Software

Configuration ManagementElena Meshkova, Janne Riihijarvi and Petri Mahonen

Department of Wireless Networks, RWTH Aachen UniversityKackertstrasse 9, D-52072 Aachen, Germany

Email: {eme, jar, pma}@mobnets.rwth-aachen.de

Christoforos KavadiasTeletel

Athens, GreeceEmail: [email protected]

Abstract— The rapid development of the network technologieshas enabled the construction of heterogeneous home networks.However, the control of the smart home environment thatensures the conflict-free, up-to-date and smooth functioning ofthe home environment is not trivial. It is necessary to trackthe state of the numerous devices which compose the homeenvironment, as well as the respective services installed on them,to ensure conflict-free seamless operation of the system. In thispaper we present an ontology-enabled knowledge base for homenetworks. The knowledge base allows to depict complex relationsbetween devices and services working in a home environment, forexample issues to be considered before installing a new softwareversion on a certain device, such as the user profile, interferencewith existing devices, etc. The knowledge base is a part ofthe COMANCHE system, which aims to provide a softwareconfiguration management infrastructure which can be used inthe home automation domain. To the best of our knowledge, thepresented system provides a first comprehensive framework forreasoning about services in the home environment realized inclose collaboration with the relevant industry.

I. INTRODUCTION

The research and development in the area of smart homesis booming. The advantages in networking and computerminiaturization have allowed the construction of complexheterogeneous networks which are an inevitable part of aubiquitous environment. However, the real-life deployment ofintelligent home faces many challenges. W. Edwards and R.Grinter [1] have pointed among others the following issues:the partial, non-instantaneous, introduction of new technologyat home, interoperability issues, high reliability demands andneed for self-configuration.

The solution of the above issues is impossible without asolid model of context description of the home environment.One can distinguish between several basic context models [2].Application-oriented approach, for example exercised by HP’sCoolTown [3], concentrates on modeling and representingcontent for only specific application. Often these modelslack formality and expressiveness. Model-oriented approachtypically uses conceptual modeling to represent context, theexamples are Entity-Relationship model and UML diagrams[4], [5], which might be suboptimal for constant run-timeupdate. Ontology-oriented approach allows to construct a

knowledge base containing information on the certain envi-ronment which context model is represented as an ontology.The use of ontology allows creation of very flexible modelson which deductions and reasoning can be done. Ontologiesare also the core component of the Semantic Web [6] concept.

We have chosen the ontology-oriented approach to per-form context modeling of the home environment as it suitsthe best for the scalability and web-orientation requirementsthat a large distributed software management system such asCOMANCHE [7] faces. COMANCHE stands for SoftwareCOnfiguration MAnagement framework for Networked ser-viCes environments and architectures incorporating ambiEntintelligence features. Its main purpose is to create a service-oriented system that allows to simultaneously install, con-figure and monitor services in multiple heterogeneous homeenvironments ensuring integrity and smooth functioning ofhome networks according to the user needs. In this paper wepresent an ontology-enabled knowledge base (KB) that modelsa home environment in terms of services it provides and therespective hardware, software and network components. It alsocommunicates data concerning users of home environmentsand providers of software components and hardware devicesto cope with the security issues. The suggested ontology modelis, to our knowledge, the first that distinguished betweenabstract and real service implementation in the context of thehome environment, as well as allows to keep track and reacton numerous events in the home network.

The rest of the paper is structured as follows: in Section IIwe discuss technologies that forms the foundation of our work.The general description of COMANCHE architecture is givenin Section III. The home environment ontology that is used inthe knowledge base is described in Section IV along with thetools that are used for its development. Section V concludesthe paper.

II. ONTOLOGY TECHNOLOGY OVERVIEW

Computer scientists use the term ontology to specify aconceptualization [8] in the context of knowledge sharing. Byconceptualization we understand an abstract, simplified viewof the environment we want to represent. Every knowledge

tarzan
Text Box
978-1-4244-2036-0/08/$25.00 ©2008 IEEE.
Page 2: [IEEE 2008 International Conference on Telecommunications (ICT) - St. Petersburg (2008.06.16-2008.06.19)] 2008 International Conference on Telecommunications - Modeling the home environment

base explicitly or implicitly uses some sort of conceptualiza-tion. An ontology can be used to set a vocabulary of a certaindomain, describe its main concepts and relations betweenthem. Various logical operations can be carried out on theitem of the ontology. A correctly formulated ontology allowsus to check and guarantee consistency, but not completenessof the stored information with respect to queries and assertionsformulated using the vocabulary defined in the ontology.

The OWL Web Ontology Language [9] is used to define on-tologies and it is a part of the collaborative research effort ledby W3C toward establishing the Semantic Web. The aim of theSemantic Web is to provide a common framework that allowsinformation to be shared and used across multiple applications,communities and devices. OWL is based on XML. OWLallows one to define the following logical operations: relationsbetween classes (e.g. disjointness or inclusion), equivalence ofclasses, different characteristics of properties, like symmetryor transience.

We have chosen OWL to realize the context model ofthe home environment for several reasons. OWL DL, asublanguage of OWL we are using, possesses the maximalexpressiveness while retaining computational completenesscompared to other ontology description languages, like RDFS[10] or other OWL flavors. Second, ontologies specified inOWL DL are reusable and interoperable, i.e. specific ontologycontext can be reused in multiple domains and understood bydifferent systems, which in turn enables automated reasoning.Finally, OWL is one of the most popular and standardizedontology languages and most likely it will become de factostandard for the semantic research in the near future.

III. COMANCHE PROJECT: INTEGRATED APPROACH TO

HOME CONFIGURATION

COMANCHE [7], [11] framework aims to effectively orga-nize, discover and exploit the tremendous amounts of attributeinformation needed for software configuration managementin the home environment. The main development is a closecollaboration and includes industry partners such as Alcatel-Lucent, Indesit and Gorenje. The framework follows service-oriented architecture and therefore conceptualizes the sur-rounding environment primary in terms of services that differ-ent objects (users, devices, software, other services) provide oruse. COMANCHE is a centralized system, where knowledgeconcerning each individual home environment are stored onthe central server(s). This ensures the high level of dataintegrity and security.

A. Pilot scenario

The primary goal of the COMANCHE framework is man-agement of the home environment services. One of the pilotscenarios of the system usage is installation of the new devices,for example a washing machine, and later expansion of theservices it provides. In our scenario the user, Alice, installs anew washing machine at home. The machine connects to thehome gateway and notifies it that a new device has appearedin the network. The gateway does not have the COMANCHE

Identity Management and Security Module

Identity Federation

Trust Trust

Trust

Identity Federation

Publish SWSpecifications

Obtain & InstallSW from

Identity Federation

Web Based(SOAP, XML, etc)

In-Home Network(UPnP, proprietary, etc)

Services/Software Providers

Local Service Environment

SCM Gateway

SCM Device Agents

Devices

Knowledge Manager

SCM Logic

Knowledge Interpreter

Additional service consistency

validator

Ontology-based Knowledge Base

Service ontology

Home environment and context ontology

Business domain and user ontology

Fig. 1. A simplified COMANCHE architecture.

device agent for this washing machine model and requests theCOMANCHE server for the name of the appropriate software.This information is fetched from the central knowledge base(KB). Then the gateway directly inquires the provider for theneeded software, downloads and installs it. The next step is toupdate the part of the KB that stores information about thisuser’s home environment with the information concerning thenew washing machine, for example its hardware capabilitiesand default software installed.

After a while Alice wants to install new services onto thewashing machine, for example a power management functionand a new advanced washing program. First, in order toenable the installation the KB has to be inquired to estimateinterdependencies for the desired services. For example, itneeds to be ensured that the power management service iscompatible with all other devices at the home network, soa common power management can be enabled. For the newwashing program the KB has to check if the washing machinehas the hardware capabilities to run the software and hasinstalled all the services the new washing program requires,like the basic washing services. Additionally, the frameworkhas to ensure the security of the user home environment, forexample allow installation of components only from the trustedprovides.

B. General architecture

The simplified architecture of the COMANCHE frame-work is shown in Figure 1. The framework consists of localmodules executed at individual home networks and softwarerun centrally at one or several servers on the Internet side.The local modules include a Software Configuration Manage-ment (SCM) Gateway and Device Agent functional entities.The SCM Gateway is the software component running on aappropriate processing- and communications-capable devicelocated in the Home Environment. Most probably this will

Page 3: [IEEE 2008 International Conference on Telecommunications (ICT) - St. Petersburg (2008.06.16-2008.06.19)] 2008 International Conference on Telecommunications - Modeling the home environment

be a dedicated device like a home gateway that is capable ofhandling all of the internal home network traffic and regulatingnetwork interactions with the external world. The purpose ofthe SCM gateway is local, home network scale, coordinationof software configuration and providing notification of statechanges in the home environment, for example of the userrequests or malfunctioning of the devices.

Each device that is part of the COMANCHE Home Envi-ronment has to have an an SCM Device Agent associated withit. A Device Agent is a software module running on either thedevice itself or on another processing- and communications-capable device located in the Home Environment, for examplea home gateway. The purpose of the Device Agent to interactwith both the SCM Gateway and the relevant device and toforward information between them in the format acceptable toboth. The Device Agent translates the COMANCHE signalinginto the internal, often proprietary, protocol format that isunderstandable by the home device, and puts the device’smessaging in the format appropriate for the SCM gateway.

The server hosts the following units: an ontology-enabledSCM Knowledge Base that stores knowledge about devices,services, users and produces of home environments, a SCMEngine that interacts with the KB and the Service ConsistencyValidator that can perform in-depth analysis of the servicesstructure. There also exists the Identity Provider which mainaim is to establish trust in the context of the COMANCHEarchitecture between all entities involved like users, providersand devices, by authenticating everybody and performingidentity federation in consistence with the privacy preferencesof users.

Additionally, the framework interacts with two externalindependent entities. The Software Service Providers deliverservices to the home users and allow to download and de-ploy software components onto home devices. The HardwareProviders give description of devices deployed at home. Fur-ther we describe the most relevant to our work components ofthe COMANCHE architecture in more detail.

C. Software Configuration Knowledge Manager

Software Configuration Knowledge Manager is the centralpiece of the COMANCHE system. Its main components areSCM Engine and SCM Knowledge Base. The SCM Enginereacts on the requests raised by system entities. For exampleit is the job of the SCM Engine to formulate a request to theknowledge base and get the list of services that need to bedeployed on the washing machine prior to the installation ofthe new washing program. It is also the job of the SCM Engineto evaluate the obtained answer and either to forward it to thethe respective home environment (SCM Gateway) or makean additional request to the KB or the Service ConsistencyValidator. The intelligence of the SCM Engine largely dependson the structure of the knowledge base, i.e. its ontology.

The SCM Knowledge Base receives and processes requestsfrom the SCM Engine, delivering conflict-free knowledgeinstantiations. In order to achieve this some additional, expert-system level, mechanisms of the KB are employed that are

capable of resolving potential conflicts identified in the knowl-edge instantiations obtained according to the SCM Engine re-quest. In other words the SCM Knowledge base consists of theCOMANCHE ontology as well as its conflict-free instances. Itprovides/updates data according to the SCM Engine request.Additionally, SCM Knowledge Base interacts with the Identity,Software Service and Hardware Providers through the SCMEngine in order to allows the providers to publish their data inthe KB. For example Service Software Providers can announceservices they suggest, the interrelations between them and therespective software components that realize these services.

IV. HOME ENVIRONMENT AND CONTEXT ONTOLOGY

There exist several ontologies that describe smart homeenvironments [2], [12], [13], [14]. However, these ontologiesdo not allow to model complex relations between services,the software that realizes them, users, hardware and the soft-ware/hardware providers. Our ontology models these complexrelations, and it even incorporates some elements of the actualhome network modeling like the bandwidth requirement of dif-ferent software services. Additionally, the suggested ontologyis developed according to the requirements received from theleading home appliances producers like Indesit and Gorenje.It is interesting to note that in spite of the complexity of thedescribed environment our home ontology is still manageabledue to the heavy hierarchical structuring of both classes andproperties.

The ontology is the skeleton that enables storage of in-formation in the format which allows execution of the maintask of the developed framework: automatic service selection,composition, deployment and interoperation. In order to fulfillthis task the knowledge of the home environment, the userand business domains are necessary as they provide theconstraints and optimization criteria. Having this informationthe ontology-enabled knowledge base can provide prerequi-sites and consequences of application of individual softwareservices in a certain home network.

The COMANCHE ontology is composed of the ServiceOntology, the Home Environment and Context Ontology andthe Business Domain and User Ontology. The Service On-tology relies on the OWL-S specification [15], its purpose isto describe the complex interrelations between services, usingbesides basic logic operators also the more advanced ones asif and loop statements. The Service Ontology, as well as theCOMANCHE project as the whole operates with two types ofservices. The Software Service represents a collection of tech-nical functions installed on a device and implemented throughthe use of software. A device can host multiple softwareservices. Examples of the software services are a firmwarethat can be installed on a home appliance or a software modulelike a specific washing machine program. The Internet Servicerepresents a collection of functions to be accessed through theInternet and can be called remotely. Example of the InternetServices is an execution of an arbitrary Web-Service like aremote diagnostics and maintenance procedure. The BusinessDomain and User Ontology is used to represent and exploit

Page 4: [IEEE 2008 International Conference on Telecommunications (ICT) - St. Petersburg (2008.06.16-2008.06.19)] 2008 International Conference on Telecommunications - Modeling the home environment

SWServices

SCM Gateway

Home Enviroment

Device Function

Device Function

Installation

DeviceType

Device SWPlatform

Device HWPlatform

Device Provider

Network/Connection

hasD

evice

Typ

e

hasSWPlatform

hasHWPlatform

hasDeviceProvider

isLocatedInhas SCMGW

hasDevice

hasOccuredIn

hasBW

hasInstalled SWService

needsToHave

Installed SWSService hasInterfaces

Event

SuccessFault

Bandwidth

Service Provider

Provider

hasService

Provider

requiredBW

need

sToS

uppo

rt

supp

orts

hasTargetDeviceFunction

hasT

arge

tDev

ice

hasA

ssoc

iate

dDev

ice

handledByDevice

connectedTo

Home GW

User

hasUser

hasEvent

hasEvent

Key class, one of the main classes in the ontologyStandard class, differes from the Key class only by the importance Datatype property

Object propertyData type propertySubclass property

Fig. 2. Home Environment and Context Ontology.

information relating to business relationships, user identitymanagement, and user preferences particularly in terms ofprivacy. The Home Environment and Context Ontology isdescribed in the next subsection.

A. Structure of the ontology

The structure of the suggested Home Environment andContext Ontology is shown in Figure 2. The Home Envi-ronment and Context Ontology is used to describe the homeenvironment of each user. The ontology mainly includes thedescription of the devices installed at home, the service and thesoftware that realized these services. Additional classes likeEvent class or User class help to describe the home environ-ment more fully, but are complementary to the main purposeof this ontology: service modeling in a home environment. Forexample the Event class specifies events that a device or a usermight encounter or produce. The ontology also incorporatesmultiple subclasses that are not shown in the basic ontologydiagram. Subclasses are created to reflect rules imposed ontothe ontology. For example we create a subclass of the DeviceFunction class that holds all the functions that a washingmachine of a certain type might perform. This enables theinference engine to automatically determine which functionscan be installed on the washing machines of different types.Similarly, the creation of subclasses of the Software Serviceclass that contain services already installed on the individualdevices allows to automatically deducing services that haveadditionally to be installed on these devices. Further we shortlydescribe each of the main classes of the Home Environmentand Context Ontology, as well as relations between them.

B. Home Environment class

The Home Environment class contains basic informationabout a home environment. It provides data concerning theusers of the home environment and all the devices installed athome. Additionally, separate classes are created to representthe Home Gateway device and the SCM Gateway service, dueto the special nature of these entities. All events that happen inthe users home are known to the home environment throughthe SCM Gateway. These events can be handled either by theSCM Gateway or the SCM Provider. For each home a separateinstance of the Home Environment class is created.

C. Device domain classes

There exist four classes that are used to describe a device:Device, Device Type, Device Function and Device FunctionInstallation classes. The instance of the Device class representsa specific appliance placed in the home environment. For ex-ample it can be the user’s washing machine. The profile of thedevice includes its model/type, the link to the event depositary,the list of functionalities and the respective software servicesthat it can provide or wants to install, and the link to thespecific SCM gateway that handles the appliance.

Home Gateway is one of the child classes of the Deviceclass. A home gateway handles all the incoming and outgoingnetwork traffic, therefore it has to support extended securityfunctionality, handle heavy traffic and, more importantly, havea special secure registration procedure with the SCM Gate-way compared to the ordinary home device. The registrationprocedure of the home gateway to the SCM gateway is tobe designed so that, from one side, it requires minimal userinterference and, from another side, it does not compromisethe homes security.

The Device Type class describes the model of the device.The class contains the list of functionalities a device cansupport, the producer’s name, the description of the hardwareand software platforms that run on the device, as well as the listof supported network interfaces. Each instance of the DeviceType class is classified according to the Device Categoryto which it belongs. The Device Category class is a simpleenumeration of instances such as Washing machines category,Ovens category, Sensors category and Home gateways cat-egory. Depending on the value of the Device Category theDevice Type class is further subdivided into the classes thatdistinguish between various types of devices, such as washingmachines, ovens, dishwasher, sensors, etc.

The Device Function class contains the abstract descriptionof the services that devices are able to provide. The DeviceType class lists all the functionalities that a specific devicemodel can support. The Device class contains the list ofservices that are already installed or need to be installed.In order for a device to perform any service, the softwareimplementing this service is to be installed. The mappings ofthe abstract functions to the real software are done using theDevice Function Installation class.

Page 5: [IEEE 2008 International Conference on Telecommunications (ICT) - St. Petersburg (2008.06.16-2008.06.19)] 2008 International Conference on Telecommunications - Modeling the home environment

D. Platform and Network classes

In order to be able to determine if a service can beinstalled on the certain type of device, the hardware and thesoftware profiles of the model have to be stored. The ontologyclasses Device Software Platform and Device Hardware Plat-form provide this capability. The Device Software Platformclass stores information concerning the operating systems,virtual machines and other supporting software installed onthe device. The Device Hardware Platform class providesinformation on the hardware profile of the device. It storessuch parameters as RAM, ROM, processing capabilities, pe-ripherals, UI capabilities, etc. The Network Interface class isused to specify the network capabilities of the specific devicetype. The Network Interface class stores information about thenetwork interface used by the device, the available bandwidth,the driver version installed, etc.

E. Provider classes

The Provider class contains information about providersand producers of the devices and the software services. Thetwo child classes of the Provider class are Software ServiceProvider and Device Provider classes. The Device Providerclass contains the list of the device models that the specificproducer offers. The Software Service Provider class pro-vides the list of offered software services. Both classes storeadditional information concerning the trustworthiness of theparticular provider.

F. Event class

The Event class is created to gather information, keepstatistics and react on the events occurring in the homeenvironment. The outcome of any action initiated by the SCMis registered by the instance of the event class. For exampleif a new service is successfully downloaded on to a device,the event of class Success is raised. If the operation failsthe event of class Failure is signaled, for example ChannelBusy. The Event class is divided into two classes Fault Eventand Success Event. These classes signal either a success ora failure of a certain operation. The instances of the classesdiffer in the status codes defined in the HTTP manner. Theexample Fault Event instances include Service Inaccessible,Connection Breakdown, Device Incompatible, Device Inacces-sible, Channel Busy and Low Bandwidth events. The SuccessEvents instances can be Connection Established and OperationCompleted events. Additionally, all of the Event instancesstore the time of their creation for the statistics gatheringpurposes. The events are stored at the SCM gateway and canbe accessed there for further processing.

G. Software service classes

The Software Service class and its child the SCM Gatewayclass are one of the most important classes in the wholeComanche ontology. This class actually leads to the wholeService Ontology which describes the relations and interde-pendencies between different services in the OWL-S manner.In our prototype implementation we have only realized the

Result intallation of two software modules : Short+Cold and Delicate.

Given:- Query: Determine the software need to be installed prior to installation of a new washing

service called „Delicate“ by the user Alice.- Washing Machine Type: WM 0001

- Devcie functionality / Abstract service: Delicate

Intermediate outcome:- Delicate service requires Short and Cold programs which in turn require Basic program.

- All these programs can be installed onto mashing machine WM001- The current device at the user’s home does not have Delicate, Short and Cold programs installed

Device functionality / Abstract services

On the device

Installed

DelicateBasic

Short

Cold

NotInstalled

Applicability to the device type

WM 0002

WM 0003

WM 0001

Service interdependency

DelicateColdShort

Basic

Power

Cold

Basic

ShortDelicate

Software Services

On the device

Installed

DelicateBasic

Not-Installed

Applicability to the device type

WM 0002

WM 0003

WM 0001

Software interdependency

Delicate

Short+ Cold Basic

Power

Basic

Delicate

Short+ Cold

Short+ Cold

Fig. 3. Inference example: determination of the software modules need tobe installed to enable the desired functionality.

most basic of the relations like the requirement and exclusionlists, i.e. the list of services that need to be installed onto thedevice before deployment of the specific service as well asthe list of incompatible services. Additionally, the SoftwareService class includes the requirement of the software moduleto the hardware platform, a list of devices where this programis installed and a link to the provider.

The SCM Gateway is a child of the Software Serviceclass. The instance of this class depicts the SCM Gatewaythat controls the devices operating in the home environment.Typically, the SCM Gateway is installed on the home gatewaydevice, however it is possible to put it on any other device thathas sufficient capabilities and operates constantly in the home.Additionally, SCM Gateway stores and handles the eventsoccurring in the home network.

H. Summary

The Home Environment and Context Ontology results inrather complex structure that includes, besides the upper levelclasses described above, also numerous automatically gener-ated subclasses and multiple rules that dictate distribution ofobjects between classes. As the result the suggested ontologyis able to install and manage both abstract services and therespective software on the home devices ensuring secure andconflict free functioning of the home environment. The simpleexample of the inference performed on the KB is givenin Figure 3. The KB can also respond to changes in thehome environment by updating old or installing new services,resulting in the seamless configuration of the home network.Additionally, the system allows to keep track of the eventshappening in the home network in order, for example, to assist

Page 6: [IEEE 2008 International Conference on Telecommunications (ICT) - St. Petersburg (2008.06.16-2008.06.19)] 2008 International Conference on Telecommunications - Modeling the home environment

the software/hardware providers in the remote maintenance ofthe home.

I. Tools

Currently we use several tools in our work, most of themare realized on Java or have Java-compatible interfaces. Forthe realization of the knowledge base we are using Protege[16], FACT++ [17] and Jena library [18].

Protege is a visual environment for creating and visualizingontologies developed at Cambridge University. It features areasoning API that is used to to access an external DIG de-scription logic interface [19] compliant reasoner, like FACT++,thus allowing to infer about classes and individuals in theontology-enabled knowledge base. The availability of the DIGinterface also enables the use of automatic reasoners thatcan provide various inferencing services, like estimating theconsistency of classes and estimating objects that belong to thea particular class. We have chosen FACT++ as the automaticreasoner to be used in our project because this is an opensource software and judging from our experience it providesthe best performance among most well known open reasoners.

The standard reasoners like FACT++ or Pellet [20] arevery comfortable to use for test development. However, theyhave their disadvantages. First of all they still have a limitedfunctionality, i.e. some rules can not be evaluated with theexisting open-source reasoners. Another problem is that theyare not as fast as needed. Therefore, extra functionality has tobe realized using either Jena library or existing Protege plug-ins like SWRL [21] which relies on proprietary programminglanguage Jess [22] designed for development of expert sys-tems. In our work we have decided for Jena as it is an opensource library, through it requires a lower-level programmingcompared to Jess.

V. CONCLUSIONS

We have presented and realized a scalable ontology-enabledknowledge base for home networks that provides the meansfor effectively conceptualising, organizing, and exploiting thetremendous amounts of attribute information, pertaining tothe management of home services. The ontology incorporatesthe requirements for white goods appliances provided by ourindustry partners Indesit and Gorenje. The current version ofthe KB depicts services and devices installed at home, allowsto monitor interconnections between services and ensuresintegrity of the home network. It can be also easily extendedto incorporate new rules and new sorts of data. For exampleit can be further expanded to controll the traffic in a homenetwork to ensure maximal throughput and QoS of homedevices. The KB is a part of the COMANCHE system thatutilizes a component-based software architecture in order toeffectively address the engineering and run-time managementof reconfigurable software for ambient intelligent networkedservices environments.

At present we are starting to integrate the ontology-enabledknowledge base with the rest of the COMANCHE frameworkand test the system with real white goods appliances like

washing machines from Indesit and ovens from Gorenje. Assoon as the integration work is finished we are planningto make the Home Environment and Context Ontology withsample instances publicly available.

ACKNOWLEDGMENT

We would like to thank DFG (Deutsche Forschungsgemein-schaft), European Union (COMANCHE-project) and RWTHAachen University for financial support. Additionally wewould like to thank all the partners of the COMANCHE con-sortium for fruitful discussions. PM and JR are also acknowl-edging the partial financial support from UMIC-excellencecluster at the RWTH Aachen University.

REFERENCES

[1] W. Edwards and R. Grinter, “At Home with Ubiquitous Computing:Seven Challenges,” in In Proc. of UBICOMM’01, Atlanta, Georgia,USA, September 2001.

[2] T. Gu, X. Wang, H. Pung, and D. Zhang, “An Ontology-based ContextModel in Intelligent Environments,” in In Proc. of CNDS’04, San Diego,California, USA, January 2004.

[3] T. Kindberg and J. Barton, “A web-based nomadic computing system,”Comput. Networks, vol. 35, no. 4, pp. 443–456, 2001.

[4] A. Harter, A. Hopper, P. Steggles, A. Ward, and P. Webster, “TheAnatomy of a Context-Aware Application,” Wireless Networks, vol. 8,no. 2, pp. 187–197, 2002.

[5] K. Henricksen, J. Indulska, and A. Rakotonirainy, “Modeling contextinformation in pervasive computing systems,” in In Proc. of PERVA-SIVE’01, Zurich, Switzerland, August 2002.

[6] T. Berners-Lee, J. Hendler, and O. Lassila, “The Semantic Web,”Scientific American, vol. 284, no. 5, pp. 28–37, 2001.

[7] S. Grilli and et al., “Service configuration management for ambientintelligence: The comanche approach,” in In Proc. of AINAW’07, NiagaraFalls, Canada, May 2007.

[8] T. R. Gruber, “A translation approach to portable ontology specifica-tions,” Knowl. Acquis., vol. 5, no. 2, pp. 199–220, 1993.

[9] G. Antoniou and F. van Harmelen, “Web Ontology Language: OWL,”Handbook on Ontologies, 2004.

[10] D. Brickley and R. Guha, “RDF Vocabulary Description Language 1.0:RDF Schema,” W3C Working Draft, vol. 23, 2003.

[11] “The COMANCHE project,” http://www.ist-comanche.eu/, 2006 – 2008.[12] J. Kalaoja and et al., “The Vocabulary Ontology Engineering for the

semantic modelling of home services,” in In Proc. of ICEIS’06, Paphos,Cyprus, May 2006.

[13] H. Chen, F. Perich, T. Finin, and A. Joshi, “SOUPA: standard ontologyfor ubiquitous and pervasive applications,” in Proceedings of MOBIQ-UITOUS 2004, Boston, Massachusetts, USA, August 2004.

[14] S. Peters and H. Shrobe, “Using semantic networks for knowledgerepresentation in an intelligent environment,” in In Proc. of PerCom’03, Ft. Worth, TX, USA, March 2003.

[15] D. Martin and et al., “OWL-S: Semantic Markup for Web Services,”W3C Member Submission, 2004.

[16] H. Knublaich, R. Fergerson, N. Noy, and M. Musen, “The protegeOWL plugin: An open development environment for Semantic Webapplications,” Lecture notes in computer science, pp. 229–243.

[17] D. Tsarkov and I. Horrocks, “FaCT++ description logic reasoner: Systemdescription,” Seattle, Washington, USA, August 2006.

[18] J. J. Carroll and et al., “Jena: implementing the semantic web recom-mendations,” in In Proc. of WWW2004, New York, NY, USA, May 2004.

[19] S. Bechhofer, “The DIG Description Logic Interface: DIG/1.1,” inProceedings of DL2003, Rome, Italy, September 2003.

[20] E. Sirin, B. Parsia, B. Grau, A. Kalyanpur, and Y. Katz, “Pellet: Apractical OWL-DL reasoner,” Web Semantics: Science, Services andAgents on the World Wide Web, vol. 5, no. 2, pp. 51–53, 2007.

[21] I. Horrocks and et al., “SWRL: A Semantic Web Rule LanguageCombining OWL and RuleML,” W3C Member Submission, 2004.

[22] J. Kopena and W. Regli, “DAMLJessKB: A Tool for Reasoning withthe Semantic Web,” IEEE Intelligent Systems, vol. 18, no. 3, pp. 74–77,2003.