Download as pdf or txt
Download as pdf or txt
You are on page 1of 9

1

Semantic-based Enhancement of ISO/IEC 14543-3


EIB/KNX Standard for Building Automation
Michele Ruta, Floriano Scioscia, Eugenio Di Sciascio, and Giuseppe Loseto

Abstract—Current technologies for Home and Building Au- In order to enable novel and intelligent HBA infrastructures,
tomation (HBA) basically require an explicit interaction with able to adapt and autonomously control building appliances,
the user and allow a static set of operational scenarios defined smart environments have to be conceived according to re-
during system implementation. On the contrary, novel HBA
solutions should enable so-called ambient intelligence, deriving sults coming from pervasive and mobile computing, artificial
from a flexible and automatic control of appliances and sub- intelligence theory and agent-based software design [3]. A
systems dipped into an environment. To this aim, this paper dynamic management of information about users, devices and
proposes backward-compatible enhancements to one of the most services in a given context is needed. Consequently, AmI
widespread domotic standards, i.e., EIB/KNX ISO/IEC 14543-3, research is closely related to studies for effective discovery and
able to support advanced, knowledge-based and context-aware
functionalities, grounded on the semantic annotation of both user coordination in volatile and resource-constrained scenarios.
profiles and device capabilities. Such an approach enables novel This paper proposes to overcome restrictions of common
resource discovery, matchmaking and decision support features domotic appliances through the exploitation of Knowledge
in HBA. Main benefits are in: (i) determining the most suitable Representation (KR) technologies and automated reasoning
services/functionalities according to implicit and explicit user techniques, originally conceived for the Semantic Web. An
needs, (ii) allowing device-driven interaction for autonomous
adaptation of the environment to context modification. A case enhancement to ISO/IEC 14543-3 EIB/KNX standard [4]
study is presented to better clarify the proposed framework also has been devised in a knowledge-based and context-aware
highlighting main characteristics, while performance evaluation computing framework for building automation, supporting
is provided to assess its effectiveness. semantic annotation of both user profiles (i.e., needs, moods,
Keywords-Ambient Intelligence; Building Automation; features) and device capabilities (i.e., services/resources home
EIB/KNX; Semantic Web; Service/resource discovery appliances offer). The integration of a semantic micro-layer
within KNX protocol stack enables novel resource discovery
and decision support features in HBA making them au-
I. I NTRODUCTION
tonomous and decentralized, while preserving full backward
In latest years, advances in information and communica- compatibility. Machine-understandable metadata characterize
tion technology have opened the possibility to create smart both home environment and user profiles and preferences.
home/building environments, aimed at increasing comfort and Thanks to the integration of semantics at the application
security, making management easier, reducing energy con- layer, each object/subject joining a KNX network can describe
sumption and minimizing environmental impact [1]. The so- itself and advertise managed services/resources. By means
called Ambient Intelligence (AmI) [2] aims at a research vision of a matchmaking process –based on inference procedures
where people are surrounded by intelligent and unobtrusive in [5]– the most suitable available services/functionalities
micro-components dipped in the environment, capable of be- for adapting the ambient to a given request or event can
ing sensitive and responsive, recognizing user profiles and self- be easily detected. Annotations are expressed in ontological
adapting behavior accordingly. Devices should communicate formalisms derived from Description Logics (DLs) [6]: DIG
and interact autonomously, without the need for direct user [7], a more compact equivalent of OWL-DL (OWL Web
intervention, also making decisions based on multiple factors, Ontology Language, W3C Recommendation, February 10th
including user presence and preferences. They should be co- 2004, http://www.w3.org/TR/owlfeatures/), has been adopted
ordinated by intelligent systems acting as supervisors. Current in particular. Furthermore, user-transparent and device-driven
systems and standard technologies developed for Home and interaction is enabled as opposed to current static configu-
Building Automation (HBA) are far from that vision, being un- ration approaches. At network layer, KNX support for IP
suitable for granting such an autonomicity and flexibility. They communication through KNXnet/IP is leveraged to extend
still require explicit interaction with the user and are basically the management of building control beyond the local bus,
tied to static operational scenarios set during implementation. while IEEE 802.11 and Bluetooth are exploited for wireless
communication with the user.
Manuscript received March 31, 2011; revised May 30, 2011; accepted for The remaining of the paper is organized as follows. In Sec-
publication July 31, 2011.
Copyright ⃝ c 2011 IEEE. Personal use of this material is permitted. tion II relevant related work is briefly surveyed, while Section
However, permission to use this material for any other purposes must be III outlines the proposed enhancements to KNX. Section IV
obtained from the IEEE by sending a request to pubs-permissions@ieee.org. describes the system prototype w.r.t. framework architecture
The authors are with SisInfLab (Information Systems Lab) at Dipartimento
di Elettrotecnica ed Elettronica, Politecnico di Bari, 70125, Bari, Italy (cor- (in IV-A), implemented testbed (IV-B) and experiments carried
responding author e-mail: m.ruta@poliba.it). out (IV-C), also reporting on performance evaluation. Final
2

remarks and future work are in Section V. integration of different HBA protocols at application level. In
[20], Bonino et al. presented the first self-contained prototype
which includes a reasoning module able to manage and coordi-
II. R ELATED W ORK
nate heterogeneous devices by means of logic rules processing.
Although several technological issues related to the im- In [21] the use of intelligent agents, designed according to
plementation of ad-hoc networks with a large number of the BDI (Belief-Desire-Intention) model, was proposed to
sensors and actuators have been solved (many of them ex- automate service composition tasks, so providing transparency
ploiting IEEE 802.15.4/ZigBee standard protocol [8], [9]), from the user’s standpoint. Nevertheless, a very basic ontology
open questions still remain about high-level discovery and was derived from attribute-based service descriptions in UPnP
coordination as well as user interaction. Many proposals and Bluetooth service discovery protocols. As a consequence,
can be found in literature for improving flexibility of HBA the approach lacks adequate expressiveness of user, device and
systems. Some approaches (see for example [10], [9]) allow service profiles; furthermore the proposed case study is quite
more advanced and user-friendly device management w.r.t. simplistic and experimental evidences are absent.
current standard technologies. Nevertheless, they still rely only An open issue of the above approaches is that classical
on direct command-based user interaction, through local or rule-based inferences are not enough in heterogeneous and
network-based interfaces. Intelligent multi-agent paradigms dynamic AmI contexts. In order to execute a rule, conditions
[11], wherein each software agent is able to interact with peers it imposes must be fully matched by the current system state.
to achieve its goals, have been exploited for designing and Unfortunately, experience shows that full matches are quite
modeling smarter environments. In fact, Multi-Agent Systems unlikely –and different descriptions can even be partially in
(MAS), are leveraged in AmI to represent meaningful entities conflict– in real-life scenarios. Semantic-based matchmaking
such as rooms, devices or people. In early approaches [12], frameworks as the one in [22], which exploits standard and
machine learning techniques were exploited for smart building non-standard inference services and allows to match requests
automation in a simulated campus dorm environment. Agents and resources based on the meaning of their descriptions (also
were located on small embedded computers and adopted providing classification and logic-based ranking), are more ef-
simple fuzzy logic rules, learned through observation of in- fective. Beyond obviously good matches, such as exact or full
habitants’ behavior. Improvements in agent learning capability ones, they enable so-called potential or intersection matches
were achieved in industrial automation settings by supporting (i.e., those matches where requests and supplied resources
the temporal evolution of critical model parameters [13]. have something in common and no conflicting characteristics)
In order to achieve greater interoperability, a major goal and partial or disjoint matches (i.e., cases where requests and
is to provide a unified view of the home environment and supplies have some conflicting features) which can also be
a flexible application model. Traditionally, limited integration considered useful in scenarios when nothing better exists.
of domotic sub-networks based on different technologies was
achieved by means of custom gateways. Several proposals
III. S EMANTIC ENHANCEMENTS TO EIB/KNX STANDARD
[14], [15], [16] adopt Web Service technologies as unified
abstraction layer to integrate various communication protocols In order to grant feasibility and leverage industry support,
and mobile service discovery in automation contexts. Standard the proposed approach is based on one of the most widespread
Web Service description and orchestration languages based HBA standards, introducing a semantic enhancement for
on XML are adopted, only allowing syntactic match between advanced management of user profiles and device proper-
users’ needs and service/resource attributes, lacking semantic ties/services. A self-adapting framework has been devised
characterization. As a consequence, the improvement in ser- exploiting KR techniques and reasoning. In particular, KNX
vice discovery and composition capabilities w.r.t. basic HBA was chosen as reference protocol, but the application of the
protocols is not so relevant to justify the increased architec- above enhancements to other widespread domotic protocols
tural complexity. Similarly, proposals for service composition is also under investigation, for possible semantic-based cross-
targeted to distributed systems take into account real-time protocol interactions. KNX is an open international standard
requirements and fault tolerance [17], but they are based on deriving from the convergence of existing EIB (European
merit figures and utility functions, which must be modeled Installation Bus), EHS (European Home Systems) and Bat-
case-by-case. iBus protocols into the specification of KNX Association [4].
Knowledge representation technologies allow greater gen- Basically, KNX is a backward compatible evolution of EIB,
erality and more flexible reuse of models, because ontologies hence the name EIB/KNX. Several physical communication
provide a conceptual framework to express and share for- media are supported: from twisted pair (TP) wiring to power
mal and structured descriptions of services and appliances, line (PL), radio frequency (RF) and Ethernet, complying
while general-purpose reasoning procedures can be used for with KNXnet/IP protocol. KNX networks have a hierarchical
semantic-based service composition in different HBA scenar- topology and an addressing structure used to unambiguously
ios. DomoML [18] was the first specific proposal of a building identify and access domains and devices. In the proposed
automation ontology suite. Reinisch et al. [19] acknowledged approach, all devices share the same domain address because
the relevance of semantic-enhanced approaches upon current they are supposed to belong to the same installation. KNX
HBA standards, for cost and efficiency motivations; they also supports an additional multicast address space available
introduced a theoretical ontology-based framework for the for groups. Multiple devices, or multiple functionalities of
3

different devices, can be grouped and featured by a single


group address in the form main.middle.littleGroup.
KNX 2.0 specification evidenced several limits in managing
metadata referred to devices. Hence, a new semantic micro-
layer has been introduced on the top of the protocol stack,
while keeping a full legacy compatibility with current appli- Fig. 1. Semantic-enabled Application-layer Protocol Data Unit
cations. Two new Interface Objects have been defined to store
structured and semantically annotated descriptions of both
devices and functionalities (i.e., machine understandable DIG string;
fragments referred to a given ontology). In order to maintain • PID SEMANTIC BODY: body of encoded semantic de-
scription. Also this property is a string.
the conformity to the standard, such new objects have been
developed according to the structural specification in [4]. Re- Standard modification also include the definition of a new
call that Interface Objects are data structures exposing device Property Data Type (PDT) for OUUIDs, labeled with 7.1000
features. They simply consist of Object Properties, each com- code. Main number 7 indicates a 16-bit unsigned value while
posed by a property description and a property value. Property 1000 is the first available value in the range reserved by
descriptions include: (i) a Property IDentifier (PID) code, (ii) KNX standard for future uses. The definition of two specific
a Property Data Type (PDT) code, (iii) a (max no of elem) application-layer service primitives has been further required
value indicating the maximum number of contained elements by the goal of supporting user-independent device interaction:
and (iv) a field related to property access rights. The property • A SEMANTIC SUBMISSION.req, used to send a seman-
value is an array containing max no of elem+1 elements: the tic description generated by a device agent and based on
element at index 0 contains the current valid elements. At least events detected in the environment;
one Object Property is mandatory for all Interface Objects, • A SEMANTIC SUBMISSION.res, containing the reply to
the Object Type: it is a 16-bit unique identifier. KNX standard the above semantic request.
defines different value ranges for this code according to object Each primitive is identified by a code included into the
purposes. Application-layer Protocol Control Information (APCI) field
In order to reduce the size of semantic annotations referred and selected among unused APCIs reserved by KNX specifi-
to both device features and user profiles, an encoding algo- cation. Such services allow devices to autonomously exchange
rithm devised in earlier work [23] is exploited for efficiently semantic metadata via an Application-layer Protocol Data Unit
compacting XML-based ontological languages, generating a (APDU) of a generic KNX frame, as shown in Figure 1.
header and a body for each encoded document. Furthermore, Even though semantically annotated descriptions are com-
an Interface Object named Generic Profile of the Device pressed, they might often exceed the 14 bytes avail-
(GPD) has been introduced to describe general device features able in the APDU data field. Consequently, the extended
e.g., type, manufacturer or model. A single GPD is associated KNX frame is exploited, as supported by the standard. Its
to a given device. A Specific Profile of the Device (SPD) object length is 255 bytes, 249 of which for data. A new PDT,
has been also defined to describe individual functionalities and named PDT GENERIC EXT, has been introduced to define
operating modes of a device. Multiple SPDs can be associated a variable-length string with that maximum size. If the com-
to the same device, one for each different service/function it pressed semantic annotation is still longer than the extended
exposes. Both new objects have similar structure, reported in APDU payload, it is split in more chunks inserted in different
what follows: frames. In that case, the total packets will be specified into
• PID OBJ TYPE: a 16-bit field indicating the object type. the “number of elements” field of the related interface object.
GPD and SPD are identified by 1200 and 1205 codes, Chunks will be retrieved by accessing sequentially the ele-
respectively. They belong to standardized application ments of the property value array. Standard KNX transmission
interface object types range; control techniques are exploited for error control.
• PID OUUID: 16-bit Ontology Universally Unique IDen-
tifier (OUUID), marking the reference ontology the de- IV. S YSTEM P ROTOTYPE
vice semantic annotation refers to [24]; it allows to
perform a preliminary selection of the knowledge domain A. Reference Architecture
the system is going to operate on, in each matchmaking The proposed architecture, shown in Figure 2, exploits an
session. Before starting any discovery phase, user and IP network as a fast backbone. In a common building config-
home agent have to agree about the reference ontology, uration, KNX devices are connected to one or more KNX/IP
which provides a common conceptualization of the par- routers through the bus so forming several sub-networks; each
ticular knowledge domain. Due to space constraints, the router on turn is connected to the backbone. Both standard
interested reader is referred to [24] for further details; and smart devices are included in the system. The former are
• PID OUUIDs: OUUID group. This field only refers to conform to ISO/IEC 14543-3, the latter can be assimilated
GPD and contains the list of OUUIDs of SPDs associated to virtual KNX/EIB devices [25], endowed with additional
to the device; hardware interface and able to directly communicate on the IP
• PID SEMANTIC HEADER: header of encoded device link. Such devices are compliant with semantic enhancements
annotation. It is stored on the object as a variable-length to the protocol reported in Section III. To coordinate, manage
4

:UserAgent :DomoLogic :KNXManager :DeviceAgent

alt Receiving Semantic Request


[request coming from a mobile client]
sendRequest()

[request coming from a device] A_Semantic_Submission.req()


forwardSemanticRequest()

loop Device Scan


[for each connected device]
getFunctStatus (grpAdd)
getFunctStatus (grpAdd)

processRequest()

loop Activate / Deactivate Functionality


[for each selected functionality]
setFunctStatus (grpAdd)
Fig. 2. Framework architecture setFunctStatus(grpAdd)

alt Sending Semantic Response


[request coming from a mobile client]
sendResponse()

[request coming from a device] forwardSemanticResponse()


A_Semantic_Submission.res()

Fig. 5. Agent interaction sequence

Fig. 3. Central Unit modules Fig. 4. Semantic enhanced commu- by itself, cannot manage the semantic enhancements to KNX
nication exploiting Device Agent standard introduced here. Consequently, typical configuration
files produced by ETS3 have to be enriched with the support
to semantic-based extensions, so that they can be imported by
and control the building environment, the system also in- the DB Manager. In particular, a new XML line is added for
cludes a lightweight software component, namely Central Unit each service provided by a device:
(CU), which performs network configuration and monitoring,
<functionality type="A|S|I" value="VAL" description="NAME" />
service/resource discovery and device remote control. The
CU could be hosted by any home device able to provide The type attribute describes the device class: “A” for ac-
minimum computational capabilities and memory availability. tuators, “S” for sensors and “I” (as “intelligent”) for smart
It is composed by 7 modules, organized in 3 architectural devices. Description is a label which references the SPD
layers, as depicted in Figure 3. Purpose and function of each interface object containing the semantic annotation of the
of them is analyzed hereafter. service, so that it can be accessed from the device. Each
Graphical User Interface (GUI). A simple touch-screen service is associated to a standard KNX data point via the
interface (not shown here due to lack of space) is provided value field, which is sent to the device when the service
allowing users to interact with the system. A virtual button must be enabled. The proposed structure permits the high-
panel enables basic building profiles described through seman- level user-oriented representation of each service/resource to
tic annotations, view devices status and show the content of be anyway triggered by low-level device-oriented parameters
received requests along with corresponding replies. for service/resource execution. Parsed data referred to network
Client Manager. This module interconnects users to the CU topology (including group address, data types and provided
by means of a mobile client, e.g., a smartphone, for checking functionalities for each device) are then stored into a database,
the status of the building environment and to submit profiles. acting as simple device cache. SQLite (http://www.sqlite.org),
Basically, a profile consists of a semantically annotated de- a lightweight embedded SQL database engine, was adopted for
scription –w.r.t. a reference ontology– that may include user this purpose. During startup phase, the semantic description
features such as age, gender, physical status, mood as well of each available service/resource is also retrieved from its
as requests for specific service categories or home resources. provider and cached into the DB, in order to reduce network
Communication between clients and the CU occurs via either congestions and response latency. Nevertheless, it is useful to
IEEE 802.11 or Bluetooth wireless technologies. A basic client point out that the exploitation of both configuration file and
was developed for Android smartphones to test the module device database is a mean to improve system performance: the
(not described here as outside the scope of the paper). addition/removal of devices and services to/from the network
DB Manager. At CU startup, this module parses the XML is performed through standard KNX protocol primitives, and
document generated by ETS3 (Engineering Tools Software, cached information is updated accordingly.
a manufacturer-independent software tool provided by KNX DomoLogic. This module implements the automated rea-
Association for designing and configuring installations) in soning functions of the CU by means of an embedded semantic
order to detect the home configuration as well as the im- matchmaker, leveraging algorithm and approach in [26]. Stan-
plemented network topology. It should be noted that ETS3, dard and non-standard inference procedures in ALN Descrip-
5

tion Logics (Attributive Language with unqualified Number by the agent, as shown in Figure 4.
restrictions) are used to carry out a matchmaking process Smart Agent. The semantic extension of KNX standard
between a semantic request and a set of resource/service aims to develop smart devices able to either declare their
annotations. An algorithm based on the solution of Concept semantically annotated status and function or send semantic-
Covering Problem (CCoP) [27] has been also implemented to based requests to the central unit for requiring home services
cover (i.e., satisfy) features expressed in a request as much as (generated after a sensor data gathering phase or when their in-
possible, through the conjunction of services available in the ternal status changes). To this purpose devices embed a Smart
environment (seen as elementary building blocks). A request Agent that will take care to communicate and negotiate an
from a user or device starts the interaction sequence shown environmental profile with the CU. Particularly, modification
in Figure 5. Performed steps are: 1) Query the DB, retrieve in the user profile are managed by the agent triggering home
all services coming from available devices and associate to status modifications through new matchmaking processes. As
them a device address (cache is populated at boot time and shown in Figure 2, smart devices are able to directly send KNX
exploited to reduce latency). 2) Read the status of each service, frames over the LAN. In the current system prototype, smart
through a specific function of KNX Manager module (de- agents are not implemented in physical devices, but simulated
scribed afterwards). Such status can be represented by a string, as separate processes running in the computer hosting the
a numerical or a boolean value according to the associated data CU. However, this constraint does not change the operating
type. 3) Extract semantic annotations from the DB, using the logic, because in any case the CU sees agent messages
<address,status> pair as a key, and separate services into acti- as frames stream coming from network interface. Anyway
vated and deactivated sets. 4) Check active services to discover a smart media center with embedded semantic processing
incompatibilities w.r.t. the request, by means of the Concept and communication capabilities is under development at the
Contraction algorithm [22]. Mark incompatible services for moment, and several commercial home equipments could be
deactivation. 5) Exploiting the Concept Abduction algorithm able to host smart agents.
[22], check whether the request is already completely covered
by active services or not. 6) In the latter case, solve the CCoP B. Testbed
to select one or more services that should be activated, whose Based on the above theoretical framework, the prototypical
combination covers the missing features (a preliminary check testbed depicted in Figure 6(a) was developed to prove its
is performed to skip out services in contrast with currently feasibility also evaluating provided capabilities. A subset of
active ones). The algorithm returns two groups of services, home areas, i.e., a hall door, a living room, a kitchen and
respectively marked for activation and deactivation, along with a small outdoor space were simulated. Currently, it integrates
the semantic expression of the request part that could not be 13 devices/appliances, including both traditional (legacy) elec-
covered (if present). trical equipments and KNX-compliant ones, as summarized
KNX Manager. This module acts as interface toward the in Table I. Devices are connected through a twisted pair bus
physical network. It exploits the Calimero NG Java library in a hierarchical network structure. They expose 42 different
[28] to control KNX devices, e.g., activate/deactivate services services/functionalities as a whole, each one associated to
according to outcomes of DomoLogic module. Calimero NG a KNX group address. Since KNX specification does not
also includes several tools and features that simplify network mandate fixed schemes for address assignment, the following
management. It was extended to access standard and semantic criteria have been adopted: Main Group specifies the area;
properties on devices. KNX Manager includes the Message Middle Group denotes the service type, with “0” used for
Manager (MM), which performs the following basic tasks: input-only, “1” for output-only and “2” for I/O services; Little
(i) to analyze and extract fields of a KNXnet/IP frame for Group identifies the service/resource within a given area. Main
controlling the communication between CU and devices; (ii) panel, shown in Figure 6(b), stores the electrical components,
to identify semantic frames and manage their content. Notice including a KNX Router. It converts the KNX/EIB telegrams
that the CU manages plain KNX data and semantic annotations into IP frames and vice-versa, according to KNXnet/IP stan-
in a uniform way, so maintaining the compliance with protocol dard. Besides, it can buffer telegrams to keep the bus load
specification. low. The panel also includes four circuit breakers for overload
Device Agent. As said above, semantic annotations are not protection. Common types of digital (on/off) and analog
currently stored into the embedded memory of devices. More- switches have been integrated. In particular, panels simulating
over, legacy or very elementary devices –also widespread in living room and kitchen contain both traditional and dimmer
existing households– have no storage/processing capabilities. lights. Moreover a testbed face is equipped with an analog
It is needed, therefore, to integrate semantic-based capabilities actuator to simulate window electric blinds. The prototypical
into a software agent associated to each device or set of devices house finally includes an alarm system, composed by an outer
and equivalent for each user. A Device Agent will be so able to alarm, with sensors positioned around the building perimeter,
provide support for semantic enhancements also for simplistic and an internal alarm. It is managed by the control unit in
components according to the proposed protocol variant. In Figure 6(c). Internal alarm comprises a camera (Figure 6(d))
such cases, if the CU requires standard device properties, the and infrared sensors properly placed within the environment.
request will be commonly forwarded on the network, through In order to assume the presence of an outdoor area, a weather
the KNX router, to the given device. Conversely, in case station, shown in Figure 6(e), has been also added to measure
semantic annotations are needed, the request will be replied wind speed, environmental brightness, rain and temperature.
6

{
BrownGood ⊒ {. . .

 Appliance ⊒
WhiteGood ⊒ {. . .





HVAC
Device ⊒

 Lighting
 SecurityController



(c) Alarm  SafetyController
 EnvironmentTemperatureRegulation
 LightLevelRegulation ⊒ {. . .


Service ⊒ SafetyLevelRegulation ⊒ {. . .
 SecurityLevelRegulation ⊒ {. . .



... 

 Fever

 



  Disease Headache
(d) Camera 
 


 

  ...

 PhysicalStatus ⊒
 


  Hot
Normal
 
 


TemperaturePerception

 







 
 Fresh


  { Cold
UserStatus ⊒ Tired
Stamina ⊒

PsychologicalStatus ⊒ Rested

(a) Testbed (b) Main panel (e) Weather



...

 
station


Gender ⊒ {. . .

 

 
 AgeRange ⊒ {. . .

 


Fig. 6. Prototypical testbed



 GeneralStatus ⊒ VideoPreference ⊒ {. . .
 MusicPreference ⊒ {. . .

 


 
Handicap ⊒ {. . .
Area Device ♯ of Services 
  LowBrightness


Kitchen Electric Oven 1 



OutdoorBrightness MediumBrightness
 HighBrightness
Kitchen Light 1



 
Living Room Air Conditioner 2


  LightWind
WindSpeed ⊒

ModerateWind
Blind Controller 2 WeatherParameter ⊒  StrongWind

Dimmer Light 4 




Sunny
DVD Player 8
 
PartlyCloudy

 
WeatherCondition ⊒


Heating Controller 1 


  Cloudy

Living Room Light 1 Rainy
Music Player 4
Fig. 7. Relevant axioms in the case study ontology
Massage Chair 1
Hall Door Alarm 4
Camera 1
Outdoor Space Weather Station 12
issued to the decision-making facilitator, which adjusts home
TABLE I
D EVICES LIST subsystem/appliance configuration, taking user profiles into
account.
It is a sunny morning with mild weather. The home envi-
ronment is set to a typical profile with air conditioning turned
The CU is devoted to testbed management and control. on and all blinds open. During the day, it clouds over and
It was implemented using Java language and a modified looks like it is about to rain. The smart weather station senses
version of Calimero NG library and runs on a laptop PC both temperature and brightness decrease, as well as wind
interconnected via the IP backbone. In the next section, carried speed growing and humidity. After a data gathering phase,
out experiments on the above testbed are reported. weather station processes information, so detecting the bad
turn in the weather, and generates a semantically annotated
C. Experiments event description.
The presented case study comprises several scenarios, al- Figure 7 reports on an excerpt of the main class taxonomy
lowing to highlight benefits induced by the proposed archi- of the domotics ontology O developed for the case study.
tecture w.r.t. standard HBA solutions. Let us suppose a smart It contains further class axioms and property definitions, not
weather station interacts with several domotic devices, given reported here for the sake of brevity. First-level classes broadly
the presence of two different users at home. The prototypical divide the ontology in sub-domains: devices, services, user
testbed was built as a full-functioning KNX installation. Smart status, and weather conditions. Second-level classes represent
devices store their semantically annotated service descriptions main concepts HBA applications need to model and reason
in programmable stable memory (e.g., EEPROM or solid state upon; they are further specialized to provide a more fine-
disks). In the perspective of productization of the proposed grained characterization. Properties are mostly used to relate
technology, service profiles should be set at the factory and user profiles and device requests to such concepts. For in-
will be easily updated by smart devices themselves if endowed stance, the above description from the weather station can be
with Internet connection, while semantic requests are produced expressed as follows (classical logic notation is adopted here
through data gathering, analysis and annotation algorithms for the sake of readability).
embedded in the devices. On the other hand, for “legacy” Weather Station req ≡ ∀ f orOutdoorBrightness.LowBrightness ⊓
devices default profile annotations should be extracted from ∀ f orW indSpeed.StrongW ind ⊓ ∀ f orW eatherCondition.Rainy ⊓
the ETS database and customized by KNX installer; then, ∀ f orT emperatureP erception.F resh
during normal system operation, they will be managed by the It can be pointed out that, according to AmI paradigm,
associated Device Agent (profiles update from the Internet is user intervention is not needed to request a specific service
not implemented now, but it can be done trivially). A software in this case; instead, the updated weather conditions –
agent was developed to let the weather station act as smart detected by the station– trigger the agents which adapt the
device. Based on data coming from weather sensors, a change environment consequently, with the CU acting as a mediator
in context is detected and a request to adapt the environment is and semantic-based facilitator.
7

Case 1 Case 2
Active Services Air Conditioner, Music Player
Device Request Fresh Perception, Low Brightness, Rain, Strong Wind
User Profile Adult Man Old Man
Headache Cold Perception
Tired Fever
Response Air Conditioner OFF Air Conditioner OFF
Soft Light Level ON Heating Controller ON
Close Blind ON Bright Light Level ON
Play Music OFF Close Blind ON
Outer Alarm ON

TABLE II
C ASE STUDY CHARACTERIZATION

Fig. 8. Processing Time

The annotation, expressed in DIG language w.r.t. ontol-


ogy O and compressed, is stored by the agent into one or in contrast with this functionality. Finally, the outer alarm is
more KNX frames and sent, along with OU IIDO , in a activated for users who cannot move due to fever or injury,
A SEMANTIC SUBMISSION.req as explained in Section III. while the music player is not disabled because the user does
The CU reassembles the message and retrieves environmental not specify anything in contrast with it.
information (particularly, currently enabled services) and pro- Performance analysis was carried out using a laptop PC as
files of users in the house (cached from recent user requests) central unit and a smartphone as mobile client, respectively
referred to the same ontology. Finally, semantic matchmaking equipped with: Intel Core 2 Duo T7700 CPU (2.4 GHz clock
is executed by DomoLogic module. In what follows, the frequency), 4 GB DDR2 RAM and Ubuntu 10.04 operating
system behavior is reported for two different home occupants system with Java Virtual Machine 1.6.0 17; S5PC111 CPU
(whose profiles were previously sent by their mobile clients (1 GHz clock frequency), 512MB RAM and Android 2.1
to the Client Manager), summarized in Table II: (a) an adult operating system supporting IEEE 802.11 b/g/n and Bluetooth
man with an intense headache producing a tiredness status; 3.0 standard. In order to assess the performance impact of the
(b) an old man having a fever with strong cold feeling. Their communication medium, a TP1 cable –a worst-case scenario,
profiles are expressed as: though common in real KNX installations– was simulated,
U1 ≡ ∀ f orGender.M ale ⊓ ∀ f orAgeRange.Adult ⊓ only for semantic-based annotations retrieved from devices
⊓ ∀ f orDisease.Headache ⊓ ∀ f orStamina.T ired connected through twisted pair bus. Each frame was delayed
U2 ≡ ∀ f orGender.M ale ⊓ ∀ f orAgeRange.Old ⊓ on the LAN to force a maximum transmission rate of 9600
∀ f orT emperatureP erception.Cold ⊓ ∀ f orDisease.F ever bps. It was not needed for virtual KNX devices connected
Let us consider the following available services: directly to the LAN. Tests were performed to evaluate CU
Air Conditioning ≡ Service ⊓ ∃f orT emperatureP erception ⊓ start-up time and request servicing turnaround time.
∀f orT emperatureP erception.Hot Results are reported in Figure 8. Start-up is by far the longest
Heating Controller ≡ Service ⊓ ∃f orT emperatureP erception ⊓ phase with over 130 seconds, mainly due to constraints of
∀f orT emperatureP erception.Cold low-throughput field bus. Start-up includes several sub-steps:
Soft Light Level ≡ LightLevelRegulation ⊓ ∃f orDisease ⊓ (i) import the XML settings file; (ii) retrieve all service
∀f orDisease.Headache ⊓ ∃f orStamina ⊓ ∀f orStamina.T ired annotations, which is the longest step; (iii) parse and pre-
Bright Light Level ≡ LightLevelRegulation ⊓ process the annotations (executing concept unfolding and
∃f orOutdoorBrightness ⊓ ∀f orOutdoorBrightness.LowBrightness normalization, as explained in [26], in order to apply the
Close Blind ≡ Service ⊓ ∃f orW eatherCondition ⊓ proposed inference services), which takes about 300 ms per
∀f orW eatherCondition.Rainy ⊓ ∃f orOutdoorBrightness ⊓ service on average; (iv) store the annotations into the CU
∀f orOutdoorBrightness.LowBrightness database; (v) perform an early device scan to find already
Play Music ≡ Service ⊓ ∃f orStamina ⊓ ∀f orStamina.Rested active services. It is useful to point out that CU start-up is
Outer Alarm On ≡ SecurityLevelRegulation ⊓ ∃f orDisease ⊓ performed only once per working cycle, which may last several
∀ f orDisease.(F ever ⊓ Injury) hours or days in normal conditions. The subsequent five tasks
in the chart are executed only when the CU receives a request.
In the first case, the air conditioner is deactivated and the As described in Section IV-A and Figure 5, in the first step
blinds are closed, due to weather condition. Moreover, the a new device scan is performed to get an updated view of
brightness decrease causes the activation of room lights. Nev- active services. Duration depends on the number of devices.
ertheless, as user profile indicates headache, the CU turns off In the above case study, this step spends about 1250 ms for
the music player and selects a soft lighting level to satisfy 13 devices, with an average time of 100 ms per unit. The
both environmental and user constraints. Blinds are closed first reasoning task is compatibility check, then the CCoP
also in the second scenario. In that case, however, temperature is solved. Compatibility check is longer because all service
reduction causes a stronger cold feeling to the user, inducing descriptions must be evaluated, while only compatible services
the system to activate heating instead of simply switching off are processed in the CCoP. Finally, the response task includes
cooling. Furthermore, a bright light level is selected due to low time needed to send the reply to the requester agent, and to
external brightness, considering that no user characteristic is apply changes to the environment by enabling or disabling
8

services. The overall average turnaround time for servicing [13] D. Filev, R. Chinnam, F. Tseng, and P. Baruah, “An Industrial Strength
the weather station request in the above case study is 2.68 s, Novelty Detection Framework for Autonomous Equipment Monitoring
and Diagnostics,” Industrial Informatics, IEEE Transactions on, vol. 6,
which can be deemed as acceptable for an HBA system. no. 4, pp. 767–779, 2010.
[14] V. Miori, L. Tarrini, M. Manca, and G. Tolomei, “An open standard
V. C ONCLUSION AND F UTURE W ORK solution for domotic interoperability,” Consumer Electronics, IEEE
Transactions on, vol. 52, no. 1, pp. 97–103, 2006.
The paper presented a semantic enhancement to EIB/KNX [15] T. Catarci, F. Cincotti, M. Leoni, M. Mecella, and G. Santucci,
HBA standard allowing the integration of knowledge repre- “Smart homes for all: Collaborating services in a for-all architecture
for domotics,” Collaborative Computing: Networking, Applications and
sentation and reasoning technologies with current protocol. A Worksharing, pp. 56–69, 2009.
distributed knowledge-based agent framework has been im- [16] T. Cucinotta, A. Mancina, G. Anastasi, G. Lipari, L. Mangeruca,
plemented to support advanced, fine-grained resource/service R. Checcozzo, and F. Rusina, “A real-time service-oriented architecture
for industrial automation,” Industrial Informatics, IEEE Transactions on,
discovery grounded on the formal annotation of user char- vol. 5, no. 3, pp. 267–277, 2009.
acteristics and device capabilities. The devised framework has [17] I. Estévez-Ayres, P. Basanta-Val, M. Garcı́a-Valls, J. Fisteus, and
been implemented in a prototypical testbed in order to test both L. Almeida, “QoS-aware real-time composition algorithms for service-
based applications,” Industrial Informatics, IEEE Transactions on, vol. 5,
feasibility and effectiveness. An early performance evaluation no. 3, pp. 278–288, 2009.
has been also carried out. Future extensions will include [18] L. Sommaruga, A. Perri, and F. Furfari, “DomoML-env: an ontology
protocol optimization to reduce average response times, while for Human Home Interaction,” in Proceedings of SWAP 2005, the 2nd
Italian Semantic Web Workshop, Trento, Italy, December 14-16, 2005,
the design of a structured agent framework running on the user CEUR Workshop Proceedings, 2005.
mobile client is now under investigation, able to automatically [19] C. Reinisch, W. Granzer, F. Praus, and W. Kastner, “Integration of het-
build user profiles crawling phone PIM (Personal Information erogeneous building automation systems using ontologies,” in Industrial
Electronics, 2008. IECON 2008. 34th Annual Conference of IEEE, 2008,
Manager), SMS and call lists. Finally, an explicit exploitation pp. 2736 –2741.
of the framework for optimizing household energy consump- [20] D. Bonino, E. Castellina, and F. Corno, “The DOG gateway: enabling
tion and load scheduling is a further future direction. ontology-based intelligent domotic environments,” IEEE Transactions
on Consumer Electronics, vol. 54, no. 4, pp. 1656 –1664, november
2008.
VI. ACKNOWLEDGMENTS [21] M. Santofimia, F. Moya, F. Villanueva, D. Villa, and J. Lopez, “In-
telligent Agents for Automatic Service Composition in Ambient Intel-
The authors acknowledge partial support of Strategic Regional ligence,” in Web Intelligence and Intelligent Agents, Z. Usmani, Ed.
Projects PS 025 and PS 121. InTech, 2010, pp. 411–428.
[22] T. Di Noia, E. Di Sciascio, and F. Donini, “Semantic matchmaking
R EFERENCES as non-monotonic reasoning: A description logic approach,” Journal of
Artificial Intelligence Research, vol. 29, pp. 269–307, 2007.
[1] D. Dietrich, D. Bruckner, G. Zucker, and P. Palensky, “Communication [23] R. De Virgilio, E. Di Sciascio, M. Ruta, F. Scioscia, and R. Torlone,
and Computation in Buildings: A Short Introduction and Overview,” “Semantic-based RFID Data Management,” in Unique Radio Innovation
Industrial Electronics, IEEE Transactions on, vol. 57, no. 11, pp. 3577– for the 21st Century: Building Scalable and Global RFID Networks,
3584, 2010. D. Ranasinghe, Q. Sheng, and S. Zeadally, Eds. Springer, 2010, pp.
[2] N. Shadbolt, “Ambient intelligence,” Intelligent Systems, IEEE, vol. 18, 111–142.
pp. 2–3, July 2003. [24] T. Di Noia, E. Di Sciascio, F. M. Donini, M. Ruta, F. Scioscia,
[3] H. Nakashima, H. Aghajan, and J. C. Augusto, Eds., Handbook of and E. Tinelli, “Semantic-based bluetooth-rfid interaction for advanced
Ambient Intelligence and Smart Environments. New York: Springer, resource discovery in pervasive contexts,” International Journal on
2010. Semantic Web and Information Systems, vol. 4, no. 1, pp. 50–74, 2008.
[4] Konnex Association, KNX Handbook for Home and Building Control, [25] F. Heiny, Y. Kyselytsya, and T. Weinzierl, “Virtual KNX/EIB devices
5th ed., 2006. in IP networks,” in KNX Scientific Conference 2004, Deggendorf, FH,
[5] S. Colucci, T. Di Noia, A. Pinto, A. Ragone, M. Ruta, and E. Tinelli, “A 2004.
non-monotonic approach to semantic matchmaking and request refine- [26] M. Ruta, F. Scioscia, T. Di Noia, and E. Di Sciascio, “Reasoning in
ment in e-marketplaces,” International Journal of Electronic Commerce, Pervasive Environments: an Implementation of Concept Abduction with
vol. 12, no. 2, pp. 127–154, 2007. Mobile OODBMS,” in 2009 IEEE/WIC/ACM International Conference
[6] F. Baader, D. Calvanese, D. Mc Guinness, D. Nardi, and P. Patel- on Web Intelligence. IEEE, 2009, pp. 145–148.
Schneider, The Description Logic Handbook. Cambridge University [27] A. Ragone, T. Di Noia, E. Di Sciascio, F. M. Donini, S. Colucci, and
Press, 2002. F. Colasuonno, “Fully automated web services discovery and compo-
[7] S. Bechhofer, R. Möller, and P. Crowther, “The DIG Description sition through concept covering and concept abduction,” International
Logic Interface,” in Proceedings of the 16th International Workshop on Journal of Web Services Research, vol. 4, no. 3, pp. 85–112, 2007.
Description Logics (DL’03), ser. CEUR Workshop Proceedings, vol. 81, [28] B. Malinowsky, G. Neugschwandtner, and W. Kastner, “Calimero: Next
Rome, Italy, September 2003. generation,” in Proc. KNX Scientific Conference 2007, 2007.
[8] L. Lo Bello and E. Toscano, “Coexistence Issues of Multiple Co-Located
IEEE 802.15.4/ZigBee Networks Running on Adjacent Radio Channels
in Industrial Environments,” Industrial Informatics, IEEE Transactions
on, vol. 5, no. 2, pp. 157–167, 2009.
[9] K. Gill, S. Yang, F. Yao, and X. Lu, “A ZigBee-based home automation
system,” Consumer Electronics, IEEE Transactions on, vol. 55, no. 2,
pp. 422–430, 2009.
[10] M. E. Pardo, G. E. Strack, and D. C. Martinez, “A Domotic System with
Remote Access based on Web Services,” Journal of Computer Science
& Technology, July 2008.
[11] S. Theiss, V. Vasyutynskyy, and K. Kabitzsch, “Software agents in
industry: A customized framework in theory and praxis,” Industrial
Informatics, IEEE Transactions on, vol. 5, no. 2, pp. 147–156, 2009.
[12] H. Hagras, V. Callaghan, M. Colley, G. Clarke, A. Pounds-Cornish,
and H. Duman, “Creating an ambient-intelligence environment using
embedded agents,” Intelligent Systems, IEEE, vol. 19, no. 6, pp. 12 –
20, 2004.
9

Michele Ruta received the laurea degree in Elec- Giuseppe Loseto received the master’s degree in
tronics Engineering from the Technical University Information Technology Engineering from Politec-
of Bari in 2002 and the Ph.D. in Computer Science nico di Bari (Technical University of Bari) in 2009.
from Technical University of Bari in 2007. He is He is currently pursuing his Ph.D. in Information
currently assistant professor at Technical University Engineering at the same University. His research
of Bari. His research interests include pervasive interests include pervasive computing and the Inter-
computing and ubiquitous web, mobile e-commerce net of Things, knowledge representation systems and
applications, knowledge representation systems and applications for home and building automation and
applications for wireless ad hoc contexts. On these ubiquitous smart environments.
topics, he has co-authored papers in international
journals and conferences. He is involved in various
research projects related to his research interests. He co-authored papers that
received the best paper award at the conferences ICEC-2007 and SEMAPRO-
2010 and has been Program Committee member of several international
conferences and workshops in areas related to his research interests.

Floriano Scioscia received the master’s degree in


Information Technology Engineering from Politec-
nico di Bari (Technical University of Bari) in 2006,
and the Ph.D. in Information Engineering in 2010
from the same institution. His thesis received the
annual Marco Cadoli award for the best Ph.D. thesis
in artificial intelligence from the Italian Association
for Artificial Intelligence (AI*IA) in 2011. He is
currently a post-doc research fellow at the Infor-
mation Systems Laboratory (SisInfLab) in the same
University. His research interests include pervasive
computing and the Internet of Things, knowledge representation systems
and applications for wireless ad-hoc networks and ubiquitous contexts. He
co-authored about 30 papers in international edited books, journals and
conferences and received the best paper award at the conferences ICEC-2007
and SEMAPRO-2010.

Eugenio Di Sciascio received the master’s degree


with honours from University of Bari, and the Ph.D.
from Politecnico di Bari (Technical University of
Bari). He is currently full professor of Information
Technology Engineering at Technical University of
Bari, and leads the research group of SisInfLab, the
Information Systems Laboratory of Technical Uni-
versity of Bari. Formerly, he has been an assistant
professor at University of Lecce and associate pro-
fessor at Technical University of Bari. His research
interests include multimedia information retrieval,
knowledge representation and e-commerce technologies. He is involved in
several national and European research projects related to his research
interests. He co-authored papers that received awards at conferences ICEC-
2004, IEEE CEC-EEE-2006, ICEC-2007, ESTC 2008, SEMAPRO-2010 and
ICWE 2010.

You might also like