Semantic-based Smart Homes: a Multi-Agent Approach Giuseppe Loseto, Floriano Scioscia, Michele Ruta, Eugenio Di Sciascio DEE - Politecnico di Bari via Re David 200, I-70125, Bari, Italy loseto@deemail.poliba.it, {f.scioscia, m.ruta, disciascio}@poliba.it Abstract—Ambient Intelligence aims at autonomic coordination domotic solutions. An enhancement to ISO/IEC 14543-3 and control of appliances and subsystems located in a given standard, a.k.a. EIB/KNX (European Installation Bus/Konnex) environment. Home and Building Automation (HBA) complies [3], has been devised. Particularly, a context-aware multi- with this paradigm but it is based on an explicit interaction with the user and a static set of operational scenarios. This paper pro- agent framework for building automation is proposed, which poses a more flexible multi-agent approach, leveraging semantic- supports semantic annotation of both user profiles and device based resource discovery and orchestration in HBA. Backward- capabilities. The integration of a semantic micro-layer within compatible enhancements to EIB/KNX domotic standard allow KNX protocol stack enables novel decision support features to support the semantic characterization of user profiles and in HBA, while preserving full backward compatibility. device functionalities, so enabling: (i) negotiation of the most suitable home services/functionalities according to implicit and Machine-understandable metadata characterize home envi- explicit user needs, (ii) device-driven interaction for adapting the ronment, appliances and user profiles and preferences. Anno- environment to context evolution. A power management problem tations are expressed in ontological formalisms derived from in HBA is presented as a case study to better clarify the proposal Description Logics (DLs) [4]: particularly DIG [5] has been and assess its effectiveness. adopted, being a more compact equivalent of OWL-DL1 . As Index Terms—Ambient Intelligence, Building Automation, EIB/KNX, Semantic Web, Multi-Agent Systems. opposed to both static configuration approaches of standard HBA technologies and user-driven service selection of most research proposals, the framework we present here enables I. I NTRODUCTION user-transparent and device-driven interaction. To this aim, the Ambient Intelligence (AmI) [1] refers to a research vision adopted multi-agent system allows requests coming from users built upon advances in sensors networks, pervasive computing and/or devices being collected by a home mediator which acts and artificial intelligence, that make a given environment as a broker between users and home appliances. Each request capable of being sensitive and responsive by recognizing user is treated as a one-to-many negotiation among sender agent needs and self-adapting accordingly. Devices communicate and various device agents. Such a complex process is divided and interact autonomously, without direct human intervention, in concurrent one-to-one negotiations between the home agent also making decisions based on multiple factors, including user and each device agent. Services/resources so selected are used presence and preferences. They are coordinated by intelligent to cover sender requirements to the best possible extent. systems acting as supervisors, devoted to manage available The remainder of the paper is organized as follows. Section resources in order to meet assigned requirements. II outlines the proposed framework architecture and enhance- Home and Building Automation (HBA) technologies should ments to KNX standard. A case study is reported in Section adhere to AmI fundamentals, but current systems are still III, while relevant related work is discussed in Section IV. far from that vision, being unable to grant such flexibility Final remarks are in Section V. and autonomy. They now basically enable a static set of II. S EMANTIC - BASED HOME AUTOMATION operational scenarios pre-defined during implementation and require explicit interaction with the user. On the contrary, an Multi-Agent Systems (MAS) are very helpful in HBA due to advanced and flexible management of information about users, their ubiquitous and distributed nature. Hereafter the reference devices and resources/services in a given ambient is needed. framework and the related infrastructure are reported. Really smart HBA infrastructures, autonomously controlling A. Knowledge-based domotic and agent framework and adapting building appliances, could be conceived bor- rowing frameworks and approaches from artificial intelligence As shown in Figure 1, the adopted MAS comprises a studies in pervasive computing field, also adapting theory and mediator as well as user and device agents referred to home solutions of agent-based software design [2]. appliances –including energy-providing systems (e.g., photo- This paper proposes the exploitation of Knowledge Rep- voltaic collectors). The number of connected resources and resentation (KR) technologies and automated reasoning tech- agents may vary unpredictably –a new user, device or energy niques, originally implementing the Semantic Web paradigm 1 OWL Web Ontology Language, W3C Recommendation, February 10th and properly adapted, to overcome restrictions of common 2004, available at http://www.w3.org/TR/owlfeatures/ home configuration better fitting a possible new situation. KNX Device Interface Agents support semantic-based en- hancements in case of legacy or elementary appliances (e.g., switches, lamps, and so on). In such cases, if semantic annotations are asked, the request will be replied by the agent. Conversely, if the home agent refers to standard KNX device properties, the request will be simply forwarded by the agent to the device. The Home (Mediator) Agent has the responsibility of mak- ing the domotic environment a first-class abstraction that provides the surrounding conditions for agents to exist and that mediates both the interaction among agents and the access to resources [6]. In particular: (i) it coordinates the explicit characterization of available services, described w.r.t. a reference ontology modeling conceptual knowledge for the building automation problem domain; (ii) when a request is received, it acts as a mediator in a negotiation round between the sender agent and each available device agent, in order Fig. 1. Agent-based framework to discover the (set of) elementary services that cover (part of) the request, maximizing the overall utility. It employs a !"#$%"&'"()* /-,0)!"#$%"&'"()* logic-based bilateral negotiation protocol, originally conceived +*(,-"*.*/)0$('* +*,@@0"66*.*H?&@@0"66* for marketplace scenarios [7] and fully revised to apply to +*10234"*.*/"-,(5%!"6%0$152(* +*6),)76*.*8224",(* HBA. There, agents are able to: (i) negotiate on available +*97(%52(,4$5"6*.*!"#$%":7(%52(,4$5"6;<* home services; (ii) reveal conflicting information between +*'")/),)76=>*.*8224",(* +*'")?0234"=>*.*/"-,(5%!"6%0$152(* request and provided resources; (iii) support non-expert users +*6"(@A"B7"6)*.*#2$@* IJK!"#$%"H()"09,%"&'"()* in selecting home configurations ranked w.r.t. utility. In case E* +*,@@0"66*.*IJKH(@$#$@7,4&@@0"66* of requests coming from the user, utility is the relevance of +*42,@L?!*=4(M.*IJKJ")N20MO$(M>*.*/"-,(5%!"6%0$152(** each wanted feature, while in request originating from devices, utility values are associated to service properties in order to EFG* minimize or maximize a given aspect (e.g., costs, efficiency, !"#$%":7(%52(,4$)C* IJK!"#$%":7(%52(,4$)C* +*97(%52(,4$)CPC1"*.*$()* comfort). In the case study reported afterwards, utility is +*(,-"*.*/)0$('* +*10234"*.*/"-,(5%!"6%0$152(* +*,@@0"66*.*IJKL0271&@@0"66* +*@1)*.*!?P* exploited to minimize the consumption of external energy +*%2--,(@D,47"*.*/)0$('* +*%2--,(@PC1"*.*/)0$('* sources (electricity, gas) favoring the usage of homemade +*'")?0234"=>*.*/"-,(5%!"6%0$152(* +**42,@/?!*=4(M.*IJKJ")N20MO$(M>*.*/"-,(5%!"6%0$152(** energy, i.e., produced by equipment installed in the household, e.g., photovoltaic systems. Fig. 2. Agent modeling Formally, a request (as well as each available home service/resource) is expressed as a set of formulas B = {β1 , β2 , . . . , βn } (Si = {σi,1 , σi,2 , . . . , σi,m } for the i-th source can be connected or disconnected at any time– without service, respectively) in Description Logics. ALN (Attributive redefining the communication and negotiation framework. Language with unqualified Number restrictions) was adopted The user agent, running on a mobile client, addresses as reference language in the current system prototype and case requests toward the home manager, describing the needs and study. Each formula represents a preference, to which a utility preferences of the user. Each device agent can expose one value∑ is assigned by means of a function uβ∑: B → Q+ such h uβ (βh ) = 1 (uσ : S → Q or more services (i.e., functional profiles). The agent-based + that s.t. k uσ (σk ) = 1, architecture and EIB/KNX protocol enhancements allow also respectively), i.e., utility values are normalized. Besides, each device agents to issue requests to the home system in order to agent sets a disagreement threshold t, that is the minimum util- supports automatic reconfiguration and adaptation to changing ity required to pursue a deal. The bilateral negotiation protocol conditions. Figure 2 refers to the agent modeling scheme. is of alternating offers with minimum concession type: if some Smart Device Agents are thought to be embedded within preferences in B and Si are in contrast, provider and requester advanced devices (i.e., home appliances with some computa- take turns in issuing counter-offers, each relaxing at every step tional capabilities and memory availability). They encapsulate the preference with the lowest utility value. The process is device status and properties in a semantic annotation to be repeated until either an agreement is found (i.e., remaining provided during discovery operated by other agents or to be elements in B and Si are not in contrast) or the negotiation issued in semantic-based requests toward the home agent. Such fails because the residual utility of one of the agents has requests are generated after a sensor data gathering phase or gone below its disagreement threshold. The overall utility of when the internal status changes. The goal is to negotiate a the agreement is then computed as the product of individual )    +,                        !"         !"    #     *    #$ %    !&'("          #  #!%% ) Fig. 3. Enhanced KNX protocol stack Fig. 5. Interface Object Structure                          total packet number. Two Interface Objects –data structures KNX used to set     device properties– have been defined to manage structured and machine-understandable semantic descriptions. To maintain a Fig. 4. Semantic-enabled Application layer Protocol Data Unit format full compatibility with original protocol and applications, new objects are compliant with structural specification in [10]. To describe generic device features, i.e., manufacturer or model, utilities. Due to space constraints, the reader is referred to a Generic Profile of Device (GPD) object has been introduced [7] for a more comprehensive discussion of the negotiation while Specific Profile of Device (SPD) objects store the protocol and its computational and game-theoretic properties. semantic annotations of device functionalities. If a device The above agent-based collaborative framework leverages the provides different available services or operating modes, an KNX knowledge-oriented evolution presented in [8], which SPD will be defined for each one. Both introduced interface implements a semantic micro-layer on the top of protocol stack objects adhere to the scheme reported in Figure 5. as pictured in Figure 3. Novel services and functions have According to this classification, GPD and SPD objects are been introduced while keeping a full backward-compatibility featured by properties with following identifiers: with current protocol and devices. Semantic enhancements - PID_OBJ_TYPE = 1 (0x01h ): 16-bit mandatory field indi- allow to fully describe device features by means of annotations cating the object type; expressed via logic languages such as RDF2 , OWL or DIG. - PID_OUUID = 77 (0x4Dh ): 16-bit Ontology Universally The domotic knowledge domain has been conceptualized in Unique Identifier (OUUID) marking the reference ontology a shared ontological vocabulary enabling a throughout char- the device semantic annotation refers to [11]; acterization of home services and appliances. A preliminary - PID_OUUIDs = 100 (0x64h ): OUUID set, useful when study of KNX standard highlighted the inadequacy of the more ontologies are used to describe device functionalities. raw protocol to manage semantic metadata, requiring the This field is present only in GPD properties; definition of specific application layer services. Particularly, - PID_SEMANTIC_HEADER = 150 (0x96h ): the header of two service primitives have been introduced, allowing devices compressed semantic annotation (variable-length string); to autonomously exchange semantic annotations through the - PID_SEMANTIC_BODY = 151 (0x97h ): the body of com- standard Application layer Protocol Data Unit (APDU): pressed semantic annotation (variable-length string). - A SEMANTIC REQUEST: used to send a semantic descrip- Finally, a new DataPoint Type (DPT) was defined to store the tion of needed home functionalities; 16-bit ontology OUUID. - A SEMANTIC RESPONSE: contains descriptions of se- lected device functionalities covering the request. B. Reference architecture Figure 4 shows how semantic annotations are carried on by The communication architecture infrastructuring the above the related KNX frame. In order to minimize sending data and framework integrates an EIB/KNX bus and an IP network communication time, semantic annotations are compressed by used as fast backbone. Nowadays IP is increasingly adopted means of an algorithm specifically devoted to compact XML- in automation systems and particularly in HBA. Such a hybrid based ontological languages [9]. Since descriptions can still home network interconnects several KNX/IP routers and en- exceed the maximum APDU data field size (14 bytes), the ables the communication among different KNX lines via IP. extended KNX frames have been used (up to 255 bytes, 249 In this way, devices send and receive KNX group telegrams of them reserved for data). However, if semantic annotations through multicast IP frames compliant with the EIBnet/IP result even larger than APDU maximum limits, descriptions routing protocol. are split in more different APDUs including in the PDU the As depicted in Figure 6, the overall framework architecture 2 RDF (Resource Description Framework) Primer, W3C Recommendation, consists of four main functional components: 10 February 2004, http://www.w3.org/TR/rdf-primer/ - Central Unit: which represents the system core and embeds Framework Architecture KNX NETWORK EIB/KNX BUS KNX ROUTER LAN L Device Manager Client Mobile Manager Matchmaker IP BACKBONE CENTRAL UNIT NETWORK MOBILE CLIENTS Semantic-enhanced interaction Fig. 6. Proposed framework reference architecture a mobile client manager, a device manager and a micro match- maker (based on the one presented in [12] and exploiting DL- based standard and non-standard inference services described Fig. 7. System interaction ‫׊‬ in [13]). It runs on a laptop PC equipped with Intel Core 2 ‫׊‬ ‫׊‬ Duo T7700 CPU (2.4 GHz clock frequency), 4 GB DDR2 ‫׊‬ ‫׊‬ ‫׊‬ RAM and Ubuntu 10.04 operating system with Java Virtual network. Instead, ‫׊‬ if the request comes from a mobile client, Machine 1.6.0 17; the central‫ ׊‬unit directly receives it via Bluetooth/Wi-Fi ‫׊‬ and - KNX Router: which converts the EIB/KNX telegrams into processing‫ ׊‬starts at time t2 of the diagram ‫׊‬in Figure 7. In ‫׊‬ ‫׊‬ IP frames and vice-versa according to EIBnet/IP standard. either case, the Home Agent aims to find a set of suitable Besides, it filters telegrams to keep the bus load low; home functionalities for performing a semantic-based covering ‫׊‬ - Semantic-based devices: i.e., KNX devices implementing the process. Given a request and several available‫ ׊‬services –i.e., protocol enhancements presented in the previous subsection; home appliances– the covering allows to compose services in - Mobile clients: i.e., mobile devices, such as notebooks, order to satisfy the request to the best possible extent. smartphones or PDAs, able to send and receive semantic anno- The orchestration process can be formalized as in what tations properly encapsulated in KNX PDUs. Communication follows: between clients and home system is based on IEEE 802.11 1. A FUNCTIONALITY REQUEST message is sent to KNX and Bluetooth protocols. A smartphone having a S5PC111 Router to discover available home appliances. CPU (1 GHz clock frequency), 512MB RAM and Android 2. For each on-line device, the router sends a PROP- 2.1 operating system has been used for the test. ERTY REQUEST message to retrieve compressed semantic Particularly, the agent running on the central unit allows annotations of exposed services/resources. to: (i) discover and orchestrate suitable home device func- 3. Data received from devices are then forwarded to the central tionalities compatible with users or context requirements via unit, decoded and temporarily stored in local memory. semantic-based F inferences; (ii) rank in relevance order w.r.t. 4. Algorithm 1 is applied to request and service annotations. received requests the best services/resources to be activated; An early compatibility check is performed in order to find (iii) find possible inconsistencies between home current status any active service/resource in conflict with the request. They and selected services or resources; (iv) inform about the will be deactivated subsequently. Then a Concept Abduction matchmaking outcomes evidencing possible open issues and Problem (CAP) [13] is solved between request and compatible negotiation options. During start-up phase, the central unit active functionalities to verify if the user request is already also takes care of system configuration. It finds out all KNX completely covered without activation of further services. routers connected to the home LAN through a discovery Concept Abduction allows to determine what functionalities procedure defined in EIBnet/IP standard. For each router, a should be hypothesized, i.e., what is missing, in order to new bidirectional tunneling channel is established and the completely satisfy the request. If there is such an uncovered system is ready to accept further semantic requests. part of the request, a Concept Covering Problem (CCoP) [14] Figure 7 shows a typical system interaction. Along with is solved to select one or more deactivated functionalities requests issued by a User Agent toward the Home Agent whose orchestration fills needed features. Finally, the algo- running in the central unit, the proposed system also allows a rithm returns a set of services to turn on or off, along with the Device Agent to perform queries. In such case, devices exploit uncovered request, if present. the previously described novel application layer service for 5. Selected functionalities are activated and a conveying semantic requests in one or more KNX frames. A SEMANTIC RESPONSE message is sent to the device Routers then forward them to the central unit over the IP agent originating the interaction. Instead, if the request came TABLE II Algorithm 1 Algorithm for request covering U TILITY VALUES FOR SCENARIO B Algorithm: requestCovering (⟨R, A, N A, L, T ⟩) Require: L Description Logic, acyclic T , request R, ai ∈ A, i = 1, 2, . . . n i βB,i u(βB,i ) and naj ∈ N A, j = 1, 2, . . . m concept expressions of active/not active 1 isSuggestedF orSensation.Cold 0.6 functionalities in L satisfiable in T . 2 = 0 available kW h 0.2 Ensure: G = {G1 , G2 , . . . Gk } set of functionalities to activate; K = 3 = 10 outsideT emperature 0.2 {K1 , K2 , . . . Kh } set of functionalities to deactivate; H request uncovered part. 1: G := ∅ tBB 0.8 2: K := ∅ 3: H := R TABLE III 4: for all ai ∈ A do U TILITY VALUES FOR HEAT PUMP 5: if (ai ⊓ R) is not satisfiable in T then 6: K := K ∪ {ai } 7: A := A \ {ai } i σ1,i u(σ1,i ) 8: else 1 isSuggestedF orSensation.Cold 0.5 9: H := solveCAP (⟨L, ai , H, T ⟩) 2 = 0 available kW h 0.1 10: end if 3 ≥ 12 outsideT emperature 0.2 11: end for 4 ≥ 8 outsideT emperature 0.2 12: if (H ̸= ⊤) then 13: ⟨G, H⟩ := solveCCoP (⟨L, N A, H, T ⟩) tS 1 0.6 14: end if 15: return G, K, H of cold feeling and contextual information about temperature TABLE I and energy availability, provided by the weather station and U TILITY VALUES FOR SCENARIO A energy manager agents, respectively. Higher utility is assigned i βA,i u(βA,i ) to the user preference, because user satisfaction is the primary 1 isSuggestedF orSensation.Cold 0.6 goal of the related agent. Device agents make three service 2 = 4 available kW h 0.2 profiles available for activation: heat pump, electrical heater 3 = 10 outsideT emperature 0.2 tBA 0.8 at half power, electrical heater at full power. They are named S1 , S2 and S3 and their descriptions are reported in Table III, Table IV and Table V, respectively. Utility values in Table III from a mobile device agent, a reply is sent back to the user. model the fact that the heat pump is more beneficial when no self-produced electric power is available and for higher III. C ASE STUDY external temperatures (due to thermodynamics, coefficient of A case study referred to power management in home performance is higher when working at a lower temperature automation was developed to make evident the capabilities differential). Values in Table IV model the fact that the of the proposed agent-based framework. The home agent electrical heater is more beneficial when self-produced electric exploits a bilateral negotiation process whose final aim is power is available, while those in Table V model the fact that to obtain a logic-based ranking of available services and using the heater at full power requires more electricity, but is resources according to current status of user, devices and home more efficient at lower temperatures. environment, seeking to maximize both comfort and energy Let us consider scenario A. As explained in Section II, the efficiency. home agent (i) receives the functionality request from the user Let us consider the following example scenarios taken from agent, (ii) collects available service descriptions from device our case study. EIB/KNX-compatible equipment in Bob’s house agents, (iii) checks compatibility between active functionalities includes: an air-source heat pump, an electrical heater, pho- and the request, (iv) solves the Concept Covering Problem in tovoltaic collectors with battery accumulator and a weather order to find functionalities that are suitable to cover (part station measuring outside temperature. Bob comes home from of) the request, mediating negotiation to select the ones with work and feels cold. He inputs this information to the user agent on his smartphone, which issues a request to the home TABLE IV agent in order to provide heating. The home agent collects U TILITY VALUES FOR H EATER AT HALF POWER environmental information from device agents and associates i σ2,i u(σ2,i ) it to the user profile, so that the request to be satisfied 1 isSuggestedF orSensation.Cold 0.4 takes both user preferences and home status into account. 2 ≥ 3 available kW h 0.3 Weather station reports that outside temperature is 10◦ C, 3 ≤ 8 outsideT emperature 0.3 tS 2 0.6 while photovoltaic accumulator reports that 4kW h energy is available in scenario A and 0kW h in scenario B. The TABLE V proposed example can be formalized as follows with respect U TILITY VALUES FOR HEATER AT FULL POWER to an HBA ontology (expressly defined for the case study and i σ3,i u(σ3,i ) not reported here due to lack of space). 1 isSuggestedF orSensation.Cold 0.6 Requests in scenarios A and B, named BA and BB respec- 2 ≥ 6 available kW h 0.2 tively, are reported in Table I and Table II. They combine 3 ≤ 2 outsideT emperature 0.2 the user agent requirement for a service suggested in case tS 3 0.6 TABLE VI C ASE STUDY: NEGOTIATION RESULTS fruition of pervasive and embedded systems must be leveraged for that. Therefore, mobile context-aware middlewares [15] Request A B and agent systems [16], [17] are often seen as pivotal elements Heat pump 0.64 0.8 Heater half power 0.8 0.56 of AmI [18]. Particularly, MAS are suitable to model real- Heater full power 0.64 0.64 world social scenarios enabling concurrency and cooperation. According to Agent-Oriented Software Engineering (AOSE), agents can meaningfully represent and simulate entities (e.g., highest utility, and (v) activates selected functionalities. In our devices), contexts or people emphasizing social capabilities example, no service is active at the request time, so step (iii) (communication, cooperation, conflict resolution and negotia- has no effect. The first negotiation round occurs between user tion). Several proposals can be found in literature for modeling agent with request BA and the first device agent, heat pump, HBA systems through MAS. Case studies presented in [19] with service S1 . It can be noticed that constraints βA,3 and evidence that mobile agents can be fruitfully adopted to σ1,3 about temperature are in conflict, as well as constraints build AmI-based systems. With specific reference to HBA, βA,2 and σ1,2 about available energy. Therefore negotiation is Morganti et al. in [20] defined a Home Automation system carried out as in what follows: as composed by a collection of domotic objects and domotic 1. User agent discards βA,2 (uβ = 0.8, uσ = 1). agents. Each agent in the environment declares itself, detects 2. Device agent discards σ1,3 (uβ = 0.8, uσ = 0.8). –and possibly recognizes– other agents and interacts with No more conflicts exist and utility of both agents is above them to solve electrical power allocation problems in common their thresholds, so an agreement is reached with overall utility homes. The proposed solution also enabled the management u = uβ uσ = 0.64. Discarding environmental constraints can of conflicts between competing agents. DomoBuilder [21] was appear as inappropriate, since they model matters of fact, not based on a multi-agent architecture to integrate heterogeneous modifiable preferences. This kind of situations can be taken devices in the same environment. Agents were used to expose into account by dividing every request and service profile in resource features toward the overall system. Furthermore, in two sets of constraints, strict and a negotiable ones, with latest years, due to the growing interest in reducing energy violation of any strict constraint immediately leading to a consumption, several MASs have been proposed specifically missed deal. In the current system prototype strict constraints for energy management [22], [23], [24]. are not implemented (although it is trivial to do so, with Unfortunately, the above agent-based solutions either re- the framework already in place), but similar effects can be quire direct user intervention or support only elementary obtained by properly setting utility values and disagreement agent behaviors and basic interactions, lacking advanced thresholds. service/resource characterization, discovery and composition. Negotiation is executed in the same way in all the other The exploitation of knowledge representation and reasoning cases. Utility outcomes are summarized in Table VI. It can techniques and technologies is thought as a means to reach be noticed that, when solar power is available (scenario A), higher levels of accuracy and controllability w.r.t. the above the heater is globally more beneficial than the heat pump, approaches, resulting in an improvement of user comfort and because no external resources are consumed, even though the building efficiency. An agent system approach based on logic heat pump is more efficient than the electrical heather from a reasoning was proposed in [25]. A butler mediator recognizes thermodynamic standpoint. Conversely, when no self-produced the user context, based on interaction with sensor agents, in power is available (scenario B), the heat pump is preferred. order to infer possible user’s goals and select the most suitable Nevertheless, it is useful to notice that for colder outside workflow among a set of available candidates. It was supported temperatures the utility of the heat pump would decrease and by a communication protocol where agents automatically the heater might become the best option again. discover services available in the environment and dynamically The presented example is purposely simplified in order to compose them by exploiting View Design Language (VDL) make presentation of the proposed approach clear and short. In rules. Wu et al. [26] defined a service-oriented smart home real scenarios, more articulated requests and service descrip- architecture where each component is designed as an agent tions can be used. Benefits of the framework (enabling logic- communicating by exchanging messages via publish/subscribe based matchmaking and negotiation with support to approxi- events. In particular, when the smart home is going to perform mate matches and service ranking) become even larger w.r.t. a service for a user, it will compare service requirements with both standard home automation technologies, characterized by the environment situation to find out spaces whose status and static profiles, and other state-of-the-art ontology-based agent resources are already available for activating a given service. infrastructures, which support only rule-based inferences and Similarly, in [27] the use of intelligent agents, designed exact matches. according to the BDI (Belief-Desire-Intention) model, was proposed to automate service composition tasks, so providing IV. R ELATED WORK transparency from the user standpoint, although the approach Ambient Intelligence aims to increase comfort of liv- lacks adequate expressiveness for user, device and service ing/working environments by efficiently exploiting available profiles description. Bonino et al. [28] developed a complete services and resources. Flexible and adaptive discovery and prototype for ontology-based HBA. The proposed architecture included a reasoner exploiting rule-based inferences, whose [12] M. Ruta, F. Scioscia, T. Di Noia, and E. Di Sciascio, “Reasoning well-known limits make the system not completely suitable in Pervasive Environments: an Implementation of Concept Abduction with Mobile OODBMS,” in 2009 IEEE/WIC/ACM Int. Conf. on Web for a widespread usage in dynamic AmI contexts: in order Intelligence. IEEE, 2009, pp. 145–148. to trigger a rule, the system state should fully match rule [13] S. Colucci, T. Di Noia, A. Pinto, A. Ragone, M. Ruta, and E. Tinelli, conditions. Nevertheless full matches are quite unlikely in real- “A non-monotonic approach to semantic matchmaking and request refinement in e-marketplaces,” Int. Journal of Electronic Commerce, life scenarios, where objects, subjects and events are featured vol. 12, no. 2, pp. 127–154, 2007. by different heterogeneous descriptions, often partially in [14] A. Ragone, T. Di Noia, E. Di Sciascio, F. M. Donini, S. Colucci, and conflict among them. In [29] two ontologies for modeling F. Colasuonno, “Fully automated web services discovery and composi- tion through concept covering and concept abduction,” Int. Journal of agent-based applications in energy systems were compared Web Services Research (JWSR), vol. 4, no. 3, pp. 85–112, 2007. demonstrating that the intrinsic properties of an energy system [15] M. Mamei and F. Zambonelli, “Programming pervasive and mobile could successfully be expressed by means of semantic-based computing applications: The TOTA approach,” ACM Trans. Softw. Eng. Methodol., vol. 18, no. 4, pp. 15:1–15:56, Jul. 2009. approaches. [16] M. P. Locatelli and G. Vizzari, “Awareness in collaborative ubiquitous environments: The multilayered multi-agent situated system approach,” V. C ONCLUSION ACM Trans. Auton. Adapt. Syst., vol. 2, no. 4, Nov. 2007. [17] K. I. K. Wang, W. H. Abdulla, and Z. Salcic, “Ambient intelligence The paper presented a distributed multi-agent framework platform using multi-agent system and mobile ubiquitous hardware,” for home and building automation, based on a semantic Pervasive Mob. Comput., vol. 5, pp. 558–573, October 2009. enhancement of EIB/KNX standard exploiting knowledge [18] C. Ramos, J. C. Augusto, and D. Shapiro, “Ambient Intelligence - the Next Step for Artificial Intelligence,” IEEE Intelligent Systems, vol. 23, representation and reasoning technologies. The proposed ap- pp. 15–18, March 2008. proach allows advanced, fine-grained resource/service discov- [19] D. Tapia, A. Abraham, J. Corchado, and R. Alonso, “Agents and ery grounded on the formal annotation of user characteristics ambient intelligence: case studies,” Journal of Ambient Intelligence and Humanized Computing, vol. 1, pp. 85–93, 2010. and device capabilities and leveraging logic-based negotiation. [20] G. Morganti, A. M. Perdon, G. Conte, and D. Scaradozzi, “Multi-agent The devised framework has been realized in a prototypical system theory for modelling a home automation system,” in Proceedings testbed in order to verify both feasibility and effectiveness. of the 10th Int. Work-Conference on Artificial Neural Networks: Part I: Bio-Inspired Systems: Computational and Ambient Intelligence, ser. ACKNOWLEDGMENTS IWANN ’09. Berlin, Heidelberg: Springer-Verlag, 2009, pp. 585–593. [21] A. Addis and G. Armano, “DomoBuilder: A MultiAgent Architecture The authors acknowledge partial support of national project for Home Automation,” in Proceedings of the 11th Workshop on Objects ERMES (Enhance Risk Management through Extended Sen- and Agents (WOA 2010), ser. CEUR Workshop Proceedings, vol. 621, September 2010. sors) - PON (2011-2014). [22] S. Abras, S. Pesty, S. Ploix, and M. Jacomino, “Advantages of MAS for the Resolution of a Power Management Problem in Smart Homes,” R EFERENCES in Advances in Practical Applications of Agents and Multiagent Sys- [1] D. J. Cook, J. C. Augusto, and V. R. Jakkula, “Ambient intelligence: tems, ser. Advances in Intelligent and Soft Computing, Y. Demazeau, Technologies, applications, and opportunities,” Pervasive and Mobile F. Dignum, J. Corchado, and J. Prez, Eds. Springer Berlin / Heidelberg, Computing, vol. 5, no. 4, pp. 277 – 298, 2009. 2010, vol. 70, pp. 269–278. [2] H. Nakashima, H. Aghajan, and J. C. Augusto, Eds., Handbook of [23] L. Klein, J. Kwak, G. Kavulya, F. Jazizadeh, B. Becerik-Gerber, Ambient Intelligence and Smart Environments. New York: Springer, P. Varakantham, and M. Tambe, “Coordinating occupant behavior for 2010. building energy and comfort management using multi-agent systems,” [3] Konnex Association, KNX Handbook for Home and Building Control, Automation in Construction, vol. 22, pp. 525 – 536, 2012. 5th ed., 2006. [24] J. Kwak, P. Varakantham, R. Maheswaran, M. Tambe, F. Jazizadeh, [4] F. Baader, D. Calvanese, D. Mc Guinness, D. Nardi, and P. Patel- G. Kavulya, L. Klein, B. Becerik-Gerber, T. Hayes, and W. Wood, Schneider, The Description Logic Handbook. Cambridge University “SAVES: A Sustainable Multiagent Application to Conserve Building Press, 2002. Energy Considering Occupants,” in Int. Conf. on Autonomous Agents [5] S. Bechhofer, R. Möller, and P. Crowther, “The DIG Description Logic and Multiagent Systems (AAMAS), 2012. Interface,” in Proceedings of the 16th Int. Workshop on Description [25] D. Cavone, B. De Carolis, S. Ferilli, and N. Novielli, “An agent-based Logics (DL’03), ser. CEUR Workshop Proceedings, vol. 81, Rome, Italy, approach for adapting the behavior of a smart home environment,” in September 2003. Proceedings of the 12th Workshop on Objects and Agents (WOA2011), [6] D. Weyns, A. Omicini, and J. Odell, “Environment as a first class ser. CEUR Workshop Proceedings, vol. 741, 2011, pp. 105–111. abstraction in multiagent systems,” Autonomous Agents and Multi-Agent [26] C.-L. Wu and L.-C. Fu, “Design and Realization of a Framework Systems, vol. 14, no. 1, pp. 5–30, Feb. 2007. for Human-System Interaction in Smart Homes,” Systems, Man and [7] A. Ragone, M. Ruta, E. Di Sciascio, and F. Donini, “Bargaining Agents Cybernetics, Part A: Systems and Humans, IEEE Transactions on, in Wireless Contexts: An Alternating-Offers Protocol for Multi-issue vol. 42, no. 1, pp. 15 –31, jan. 2012. Bilateral Negotiation in Mobile Marketplaces,” E-Commerce and Web [27] M. Santofimia, F. Moya, F. Villanueva, D. Villa, and J. Lopez, “In- Technologies, pp. 14–25, 2009. telligent Agents for Automatic Service Composition in Ambient Intel- [8] M. Ruta, F. Scioscia, E. Di Sciascio, and G. Loseto, “Semantic-based ligence,” in Web Intelligence and Intelligent Agents, Z. Usmani, Ed. Enhancement of ISO/IEC 14543-3 EIB/KNX Standard for Building InTech, 2010, pp. 411–428. Automation,” IEEE Transactions on Industrial Informatics, vol. 7, no. 4, [28] D. Bonino, E. Castellina, and F. Corno, “The DOG gateway: enabling pp. 731–739, 2011. ontology-based intelligent domotic environments,” IEEE Transactions [9] M. Ruta, T. Di Noia, E. Di Sciascio, and F. Scioscia, “An efficient on Consumer Electronics, vol. 54, no. 4, pp. 1656 –1664, november data compression algorithm for semantic-based ubiquitous computing 2008. applications,” in Int. Conf. on Mobile Ubiquitous Computing, Systems, [29] J. Keirstead and K. H. van Dam, “A comparison of two ontologies for Services and Technologies (UBICOMM07). IARIA, 2007, pp. 177–182. agent-based modelling of energy systems,” in Proceedings of the First [10] Konnex Association, Handbook for Home and Building Control: Appli- Int. Workshop on Agent Technologies for Energy Systems (ATES 2010), cation Interface Layer, 1st ed., 2001, vol. 3, ch. 4.1, pp. 12–16. 11 May 2010, pp. 21–28. [11] M. Ruta, T. Di Noia, E. Di Sciascio, and F. Donini, “Semantic-Enhanced Bluetooth Discovery Protocol for M-Commerce Applications,” Int. Jour- nal of Web and Grid Services, vol. 2, no. 4, pp. 424–452, 2006.