YazdanDoostOntology in Pervasive.pdf

Using Ontologies in Pervasive
Computing
Fatemeh Chitforoush ([email protected])
Maryam Yazdandoost ([email protected])
1
Outline
„
Part 1 : The use of ontologies in pervasive computing
–
–
–
–
„
Part 2: Examples of Pervasive Computing Environments:
–
–
–
–
–
–
„
What is Ontology?
Common Problems in Pervasive Computing Systems
What Can Be Defined by Ontologies?
Ways of Using Ontologies in Pervasive Environment
GAIA
COBRA
SOUPA
GAS
Other Systems
Comparison
References
Ontology Driven Architecture
Sharif University of Technology
2
What is Ontology?
3
What is Ontology?
„
„
Ontologies are about vocabularies and their meanings, with explicit, expressive, and
well-defined semantics, possibly machine-interpretable.
Main elements of an ontology:
–
–
Concepts
Relationships
•
•
–
–
„
Hierarchical
Logical
Properties
Instances (individuals)
Ontology Languages
•
•
•
•
•
•
•
RDF(S) (Resource Description Framework (Schema))
OIL (Ontology Interchange Language)
DAML+OIL (DARPA Agent Markup Language + OIL)
OWL (Ontology Web Language)
XOL (XML-based Ontology Exchange Language)
SHOE (Simple HTML Ontology Extension)
OML (Ontology Markup Language)
4
Common Problems in Pervasive
Computing Systems
„
Discovery and Matchmaking:
– Discovery Service:
• A registry to keep a real time state of the system, i.e., the entities
currently present and available.
• A protocol for discovering the arrival and departure of mobile entities
– Matchmaking: uses the Discovery Service to discover
• what entities are available
• what sets or combinations meet certain criteria
„
Inter-operability between different entities
– New entities may enter and have to interact with existing entities.
– common, well-defined concepts are needed.
5
Common Problems in Pervasive
Computing Systems
„
Context-awareness
– Entities must adapt themselves to rapidly
changing situations.
– contextual information must be well-defined.
– common understanding of context is needed.
– mechanisms for humans to specify how
different applications and services should
behave in different contexts (policies).
6
What Can Be Defined by
Ontologies?
„
Defining ontologies for entities:
– devices ranging from small wearable devices and
handhelds to large wall displays and powerful servers.
– applications such as music players, slide show
viewers, drawing applications.
– users of the environment.
„
„
Describe relations between entities
Establish axioms on the properties of these entities
that must always be satisfied.
7
What Can Be Defined by
Ontologies?
„
Ontologies for context information
– physical contexts (location and time)
– environmental contexts (weather, light and sound
levels)
– informational contexts (stock quotes, sports scores)
– personal contexts (health, mood, schedule, activity)
– social contexts (group activity, social relationships,
whom one is in a room with)
– application contexts (email, websites visited)
– system contexts (network traffic, status of printers).
8
Ways of Using Ontologies in
Pervasive Environment
„
Consistency checking:
– detecting and resolving inconsistent context knowledge that often
result from imperfect sensing.
– Entities with the axioms defined in the ontology.
– Ensuring that certain security and safety constraints are met.
„
„
„
Enabling semantic discovery of entities
Improved Human Interfaces: make better user interfaces
and allow these environments to interact with humans in a
more intelligent way.
Enabling semantic searches of components by both
humans and automated agents.
9
Ways of using ontologies in
Pervasive Environment
„
„
Improved Inter-operability between different
entities and systems: Ontology mapping
Configuration Management: Needed when
– New entities, never before seen, may enter
– Components need to automatically discover and
collaborate with other components
– Entities and components are heterogeneous and
autonomous.
„
Context-Sensitive Behavior: Specification of
rules for context-sensitive behavior for both
humans and automated agents.
10
Examples of Pervasive Computing
Environments
GAIA System
CoBrA System
SOUPA Ontology
GAS System
11
GAIA
12
GAIA
„
„
GAIA is an infrastructure for Smart Spaces
It offers services to manage and program a Space and its
associated state
–
„
Each Space is self-contained, but may interact with other Spaces.
Used to manage rooms in Computer Science building of
University of Illinois at Urbana-Champaign:
1. Devices in these rooms including:
–
–
–
–
–
–
authentication devices : fingerprint sensors
smart card readers
display devices : large plasma screens, video walls
handheld devices
wearable devices : smart watches and smart rings
input devices : touch screens and microphones
2. Applications and services like music-playing applications,
presentation applications and drawing applications.
13
The Infrastructure of GAIA
(Ontology Server)
„
„
DAML/OIL is used as Ontology language.
Ontologies include:
– Concepts of the Pervasive Computing Environment.
– Entities of the system
– Context information.
„
Ontology Server is a standard system service that provides a generic
interface to
– Manage ontologies:
• Ontology Merging: when new classes must be added dynamically. The
new ontology is then added to the shared ontology using bridge
concepts that relate classes and properties in the new ontology to
existing classes and properties in the shared ontology.
• Ontology Mapping: Managing configuration when new entities arrive.
– Manage a Knowledge Base
– Answer logic queries.
14
The Infrastructure of GAIA
„
Ontology server provide these services:
–
–
–
–
–
„
„
Configuration management
Discovery and matchmaking
Human Interfaces
Interoperation of components
Context Sensitive behavior
CORBA-based infrastructure.
The Ontology Server asserts the concepts described in the ontologies in
the CORBA FaCT Reasoning Engine:
– to make sure that they are logically consistent
– for answering logical queries.
„
Ontology Server registers with the CORBA Naming Service so that it
can be discovered by other entities in the environment.
15
The Infrastructure of GAIA
16
CoBrA (Context Broker
Architecture)
17
CoBrA (Context Broker
Architecture)
„
„
„
CoBrA is a broker-centric agent architecture for supporting context-aware
systems in smart spaces.
Central to the architecture is a Context Broker; an intelligent agent that runs
on a resource-rich stationary computer
Context Broker is responsible for:
– acquiring and maintaining context knowledge by provide a centralized shared
model of context
– acquire contextual information from sources that are unreachable by the
resource-limited devices
– reason about contextual information that cannot be directly acquired from the
sensors (e.g., intentions, roles, temporal and spatial relations)
– detecting and resolving inconsistent knowledge that is stored in the shared model
of context,
– protecting user privacy by enforcing policies.
„
„
Uses OWL for modeling ontologies.
CoBrA has been used to prototype a smart meeting system called
EasyMeeting.
18
Context Broker
„
Context broker components:
1. Context Knowledge Base:
•
•
context knowledge.
API’s for other components in a broker to access the stored knowledge.
2. Context Reasoning Engine: Two types of inferences can take place in
this engine:
(i) inferences that use ontologies to deduce context knowledge,
(ii) inferences to detect and resolve inconsistent knowledge.
3. Context Acquisition Module:
•
•
a middle-ware abstraction for context acquisition.
shield the low-level sensing implementations from the high-level
applications.
4. Policy Management Module: a set of inference rules that deduce
instructions for enforcing user policies.
19
Context Broker
20
COBRA Ontology
21
Standard Ontology for
Ubiquitous and Pervasive
Architecture (SOUPA)
22
Standard Ontology for Ubiquitous and
Pervasive Architecture (SOUPA)
„
„
„
„
Model and support pervasive computing
applications
Expressed using the OWL
Providing pervasive computing developers a
shared ontology that combines many useful
vocabularies from different consensus ontologies
Borrow terms from these ontologies but not to
import them directly
23
Ontologies Referenced by SOUPA
„
Friend-Of-A-Friend ontology (FOAF)
–
„
DAMLTime
–
„
Focuses on modeling contexts in smart meeting rooms
MoGATU BDI ontology
–
„
Consists of vocabularies for expressing spatial relations for qualitative spatial reasoning
Describing and reasoning about location
COBRA-ONT
–
„
Define a comprehensive set of vocabularies for symbolic representation of space
Regional Connection Calculus (RCC)
–
–
„
Designed for expressing temporal concepts
OpenCyc Spatial Ontology
–
„
Allows the expression of personal information and relationships
Focuses on modeling the belief, desire, and intention of human users and software agents
Rei policy ontology
–
Defines a set of concepts for specifying and reasoning about security access control rule
24
SOUPA Ontologies
„
SOUPA Core
– Attempts to define generic vocabularies that are
universal for different pervasive computing
applications
„
SOUPA Extension
– Extended from the core ontologies
– Define additional vocabularies for supporting
specific types of applications
25
SOUPA Core
„
„
Person: describing the contact information and the profile of a person
Policy & Action:
–
–
–
„
Agent & Belief-Desire-Intention (BDI):
–
–
„
„
model computing entities as agents.
Agents are defined by a set of mentalistic notions such as knowledge, belief,
intention, and obligation
Time:
–
–
„
Policy defines vocabularies for representing security and privacy policies :
A policy consists of rules that either permit or forbid the execution of certain
described actions
Action properties: actor, recipient, target, location, time
Expressing time and temporal relations
Properties: before, after, sameTimeAs.
Space: Reasoning about the spatial relations between various types of
geographical regions
Event: Describe the occurrence of different activities, schedules, and sensing
events
26
SOUPA Extension in COBRA
„
„
„
„
„
Meeting & Schedule: For describing typical information
associated with meetings, event schedules, and event
participants.
Document & Digital Document: the creation date and the
author of a document, the source URL of a digital
document, files size, and file type
Image Capture: where and when a picture is taken, which
device has takenthe picture, etc.
Region Connection Calculus: spatial reasoning.
Location For describing sensed location context of a
person or an object.
27
SOUPA Ontologies
28
Gadgetware Architectural
Style (GAS)
29
Gadgetware Architectural Style
(GAS)
„
„
„
Describe the semantics of the concepts of a
ubiquitous computing environment and
define their inter-relations.
Basic goal: providing a common language
for the communication and /or collaboration
among the heterogeneous devices of a
ubiquitous environments.
Supports Service Discovery Mechanism
30
GAS Basic Concepts
eGadgets (eGts)
„
–
–
Everyday physical objects enhanced with sensing, acting, processing
and communication abilities
Artifacts that can be used as building blocks to form GadgetWorlds,
with the support of GAS
Plugs
„
–
Software classes that make visible the eGt capabilities to people and to
other eGts.
Synapses
„
–
Associations between two compatible plugs.
eGadgetWorlds (eGWs)
„
–
Dynamic, distinguishable, functional configurations of associated eGts,
which communicate and/or collaborate in order to realize a collective
behavior
31
GAS Basic Concepts, an Example
A study eGadgetWorld realized as a synapse between plugs
32
Layers of GAS Ontology
„
„
„
GAS Core Ontology (GAS-CO)
GAS Higher Ontology (GAS-HO)
GAS-Co defines the common language eGts need
to describe their knowledge of GAS-HO.
33
GAS Core Ontology (GAS-CO)
„
„
„
„
„
„
The common language of eGts
Contains the service classification to support
service discovery mechanism
Defines the rules for plugs compatibility and eGts
replaceability
The same for all eGts
The major goal: to contain only the necessary
information in order to be very small
The GAS-CO is static
34
GAS-CO Classes
35
GAS-CO Classes
„
„
eGt : The core term of GAS
Plug
– Tplug:
• describes the physical properties of the object that is used as an eGt
– Splug:
• represents the eGt capabilities
• An eGt can have an arbitrary number of SPlugs
„
Synapse
– only appear among two SPlugs
„
„
eGW
Service
– an eGt through an Splug provides a number of services
– Service classification: based on the type of the signals that a sensor
perceives
36
GAS Higher Ontology (GAS-HO)
„
„
„
„
Represents both the description of an eGt
and its acquired knowledge
The knowledge represented by GASHO is
described as instances of the classes defined
into the GAS-CO
Different for each eGt
It is not static
37
Other systems
„
„
Burnett, et. al. : Location Modeling by
Ontologies
Bijan Parsia, et. al. : Eexpose the
functionality in pervasive computing
environments as Semantic Web services,
which in turn the user can discover and
arbitrarily compose. The approach is called
task computing.
38
Comparison
Ontology
Language
Services
Ontology
precision
Privacy
Prototyping
system
GAIA
DAML/OIL
Configuration management
Discovery and matchmaking
Human Interfaces
Interoperation of components
Context Sensitive behavior
Low
No
rooms in Computer
Science building of
University of
Illinois at UrbanaChampaign
COBRA
OWL
Context Modeling/Management
Interoperation of components
Context Reasoning
Context Acquisition from external entities.
Policy protection
Low
Yes
EasyMeeting
SOUPA
OWL
Very High
Yes
CoBrA
Environment
GAS
OWL
Medium
No
eGadget Project
Service Discovery Mechanism
Interoperation of components
39
References
„
„
„
„
„
„
RDF/RDFS: O. Lassila and R. R. Swick. Resource Description Framework
(RDF) Model and Syntax Specification. Available online:
http://www.w3.org/TR/1999/REC-rdfsyntax-19990222/
OWL: M. Smith, C. Welty, and D. McGuinness Web Ontology Language
(OWL) Guide Version 1. 2003. Available online: http://www.w3.org/TR/owlguide/
DAML/OIL: I. Horrocks. (2002). DAML+OIL: a Reason-able Web Ontology
Language. Presented at EDBT 2002.
H. Chen, T. Finin, and A. Joshi. An ontology for contextaware pervasive
computing environments. Special Issue on Ontologies for Distributed Systems,
Knowledge Engineering Review, 2003.
H. Chen, T. Finin, and A. Joshi. A context broker for building smart meeting
rooms. In Proceedings of the Knowledge Representation and Ontology for
Autonomous Systems Symposium, 2004 AAAI Spring Symposium. AAAI,
March 2004.
H. Chen, T. Finin, and A. Joshi. Semantic web in in the context broker
architecture. In Proceedings of PerCom 2004, March 2004
40
References
„
„
„
„
„
H. Chen, F. Perich, T. Finin, A. Joshi, “SOUPA: Standard Ontology
for Ubiquitous and Pervasive Applications”, IEEE 2004.
E. Christopoulou, A. Kameas, “GAS Ontology: an ontology for
collaboration among ubiquitous computing devices”, International
Journal of Human-Computer Studies, 2005.
M. Burnett, P. Prekop, C. Rainsford, “Intimate Location Modeling for
Context Aware Computing”, In Proceedings of the Workshop on
Location Modeling for Ubiquitous Computing, in UbiComp2001,
pages 77--82, September 2001.
R. Masuoka, Y. Labrou, B. Parsia, E. Sirin, “Ontology-Enabled
Pervasive Computing Applications”, IEEE Computer Society 2003.
A. Ranganathan, R. E. McGrath, R. H. Campbell, M. D. Mickunas.
“Use of Ontologies in a Pervasive Computing Environment”. The
Knowledge Engineering Review, Vol 18:3, 209-220, 2004,
Cambridge University Press.
41