Semantic-based Smart Homes:
a Multi-Agent Approach
Politecnico di Bari, BARI, Italy
Outline
Home and Building Automation (HBA): state of the art
Standards and appliances
Ambient Intelligence
Knowledge-based HBA: framework and approach
Semantic enhancement to EIB/KNX standard
Agent Framework
Case Study
Logic-based negotiation for energy efficiency
Conclusion and future work
Home and Building Automation:
state of the art
Goal
Increase comfort and building efficiency
Decrease waste and maintenance costs
Integration of different home systems
Most important HBA standards
ZigBee (HA Profile)
LonWorks
X-10
EIB/KNX
•
Low Cost
•
Widespread
Ambient Intelligence
Classic Domotics
Static and not flexible architectures
Limited interoperability
Reduced functionalities and scenarios
User-driven interaction (low autonomicity)
Agent-based Domotics
Flexible and scalable
Concurrency, cooperation, negotiation enabled
Services and resources accessible via agent-oriented frameworks
Semantic-based Domotics
Improved interoperability
Rich description of user/service profiles
Proposed approach
Goal
A
knowledge-based agent
framework for HBA:
semantic annotation of user profiles, device settings and appliance behaviors
w.r.t. an OWL-DL ontology
modelling typical home environments
home self-configuration
through collaboration of autonomous smart agents,
capable to provide services and address complex requests
Technological Solutions
A.
Semantic-based enhancement of EIB/KNX
protocol standard
[Ruta et al., IEEE TII, 7(4), 2011]:
integration of a semantic micro-layer preserving a full backward compatibility
advanced service and resource discovery support
B.
Logic-based negotiation process
to:
negotiate on available home and energy resources through a user-transparent
and
device-driven
interaction;
discover the (set of) elementary services that
maximize
the overall utility and
cover the user/device request
support non-expert users in selecting home configurations ranked w.r.t. a global
utility
Framework Architecture
[Ruta et al., IEEE TII, 7(4), 2011]
MOBILE
CLIENTS
Device Manager
Client
Manager Matchmaker Mobile
CENTRAL UNIT
IP BACKBONE
NETWORK
LAN
EIB/KNX BUS
KNX NETWORK
Agent Framework
Smart Device Agents encapsulate their status and properties in a semantic annotation and send semantic-based requests to the home agent for negotiating an
environmental profile
User Agents running on a mobile client, address a request toward the home environment, describing needs and preferences of the user
Device Interface Agents support semantic-based enhancements in case of legacy appliances
Home agent acts as a mediator in a negotiation round between the user agent and each available device agent
Semantic-enhanced
communication
If request
is originated
by a mobile agent,
processing starts
from time t2
Logic-based
Negotiation Protocol
Integration of knowledge representation and reasoning techniques
originally devised for the
Semantic Web
Ontology Languages (OWL, DIG, RDF)
Inference Services
Semantic Matchmaking
Negotiation protocol
[Ragone
et al.
, EC-Web, 2009]
, originally devised for
e-marketplace
scenarios, revised for
buildings energy systems
multi-issue
incomplete information
rational agents
Theoretical framework based on
Description Logics (DLs)
Negotiation Process
1.
Home Agent (mediator) splits
one-to-many
negotiation (requester agent VS
device agents) in several concurrent
one-to-one
negotiations
2. The negotiation follows an
alternating
offers
pattern with
minimum concession
The goal is to remove conflicting preferences between B and S
i
Agents take turns in making concessions (requester moves first)
In each round, agent drops the conflicting preference with minimal utility
3. The process ends with:
conflict deal
, the global utility of an agent is lower than its disagreement threshold;
agreement
, there is nothing more to negotiate on and the global utility of each agent is greater
Case Study: Energy Management
in Smart Homes
An
OWL-DL ontology
specifies classes and properties needed to
characterize a typical home environment with energy constraints.
Thing Energy Sources Eolic Generator Photovoltaics Biomass Device Appliance HVAC Lighting Safety Service Blind Regulation Light Level Regulation Temperature Regulation Characteristic General Status Physical Status Psychic Status Activity Eat Sleep Cook Relax Weather Outdoor Brightness Wheather Conditions Wind Speed
Case Study:
Solve Concept Covering Problem
Request Covering algorithm
1. Find incompatible active services
2. Is the request already completely covered? (
Concept Abduction
)
[Colucci
et. al.
, IJEC, 12(2),
2007]
3. Skip inactive services contrasting with currently active ones
4.
The
negotiation protocol
via
Concept Covering [Ragone et. al., JWSR, 4(3), 2007]
allows to
select one or more inactive functionalities, whose combination cover request features
The algorithm returns:
the set of services to be activated;
the (possibly empty) set of ones to be disabled;
a description of the uncovered request, if present.
Case Study:
Negotiation Example 1/4
B
: semantic annotated user profile
S
: semantic description of services
B: User Request i βi u(βi) 1 isSuggestedForSensation.Cold 0.6 2 = 0 available kWh 0.2 3 = 10 outside Temperature 0.2 tβ 0.8 S1: Heat Pumpi σ1,i u(σ1,i)
1 isSuggestedForSensation.Cold 0.5 2 = 0 available kWh 0.1 3 ≥ 12 outside Temperature 0.2 4 ≥ 8 outside Temperature 0.2 tS1 0.6
S2: Heater at half power
i σ2,i u(σ2,i)
1 isSuggestedForSensation.Cold 0.4 2 ≥ 3 available kWh 0.3 3 ≤ 8 outside Temperature 0.3 tS2 0.6 B: User Request i βi u(βi) 1 isSuggestedForSensation.Cold 0.6 2 = 0 available kWh 0.2 3 = 10 outside Temperature 0.2 tβ 0.8
u
1: 0.8 * 1 = 0.8
u
: 0.8 * 0.7 = 0.56
Case Study:
Negotiation Example 2/4
B
: semantic annotated user profile
S
: semantic description of services
B: User Request i βi u(βi) 1 isSuggestedForSensation.Cold 0.6 2 = 0 available kWh 0.2 3 = 10 outside Temperature 0.2 tβ 0.8S3: Heater at full power
i σ3,i u(σ1,i)
1 isSuggestedForSensation.Cold 0.6 2 ≥ 6 available kWh 0.2 3 ≤ 2 outside Temperature 0.2 tS3 0.6
u
3: 0.8 * 0.8 = 0.64
Heat Pump
Heater at half power
Heater at full power
Scenario #1
0.8
0.56
0.64
Case Study:
Negotiation Example 3/4
B
: semantic annotated user profile
S
: semantic description of services
B: User Request i βi u(βi) 1 isSuggestedForSensation.Cold 0.6 2 = 4 available kWh 0.2 3 = 10 outside Temperature 0.2 tβ 0.8 S1: Heat Pumpi σ1,i u(σ1,i)
1 isSuggestedForSensation.Cold 0.5 2 = 0 available kWh 0.1 3 ≥ 12 outside Temperature 0.2 4 ≥ 8 outside Temperature 0.2 tS1 0.6
S2: Heater at half power
i σ2,i u(σ2,i)
1 isSuggestedForSensation.Cold 0.4 2 ≥ 3 available kWh 0.3 3 ≤ 8 outside Temperature 0.3 tS2 0.6 B: User Request i βi u(βi) 1 isSuggestedForSensation.Cold 0.6 2 = 4 available kWh 0.2 3 = 10 outside Temperature 0.2 tβ 0.8
u
1: 0.8 * 0.8 = 0.64
u
: 0.8 * 1 = 0.8
Case Study:
Negotiation Example 4/4
B
: semantic annotated user profile
S
: semantic description of services
B: User Request i βi u(βi) 1 isSuggestedForSensation.Cold 0.6 2 = 4 available kWh 0.2 3 = 10 outside Temperature 0.2 tβ 0.8S3: Heater at full power
i σ3,i u(σ1,i)
1 isSuggestedForSensation.Cold 0.6 2 ≥ 6 available kWh 0.2 3 ≤ 2 outside Temperature 0.2 tS3 0.6