ds - spring 2006 ontology & pervasive computing 1 ontology & pervasive computing elham...

34
DS - Spring 2006 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department Sharif University Of Technology

Upload: clyde-beverly-fletcher

Post on 21-Jan-2016

223 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

1

ONTOLOGY & PERVASIVE COMPUTING

Elham PaikariDistributed Systems – Spring 2006Computer Engineering Department Sharif University Of Technology

Page 2: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

2

Why do we use ontology?To describe the semantics of the data (which we name as Meta-Data)

Why do we describe the semantics?In order to provide a uniform way to make different parties to understand each other

Which data?Any data (on the web, or in the existing legacy databases)

Introduction

Page 3: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

3

Formal definition on Ontology:

Ontologies are knowledge bodies that provide a formal representation of a shared conceptualization of a particular domain.

Recently ontologies have become increasingly common on WWW where they provide semantics of annotations in web pages

There is growing evidence for the potential value of Semantic Web technology for Web Services and other open, distributed systems.

Introduction

Page 4: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

4

Ontology Engineering: Defining terms in the domain and relations among them

Defining concepts in the domain (classes)Arranging the concepts in a hierarchy

(subclass-super class hierarchy)Defining which attributes and properties

(slots)classes can have and constraints on their

valuesDefining individuals and filling in slot values

What Is “Ontology Engineering”?

determinescope

considerreuse

enumerateterms

defineclasses

defineproperties

defineconstraints

createinstances

Page 5: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

5

Domain-specific vocabularyWell-defined semantic structure

Classes/concepts/typesE.g., a class { Publication } represents all publicationsE.g., a class { Publication } can have subclasses { Newspaper }, { Journal }

Instances/individuals/objectsE.g., the newspaper Le Monde is an instance of the class { Newspaper }

Properties/roles/slotsData

E.g., the class { Publication } and its subclasses { Newspaper }, { Journal } have a data property { numberOfPages }

ObjectE.g., the class { Publication } and its subclasses { Newspaper }, { Journal } have an object property { publishes }

A Formal Definition

Page 6: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

6

What they are good forSearch

Concept-based query: User uses own words, language

Intelligent query expansion: “fishing vessels in China” expands to “fishing vessels in Asia”

Consistency checkinge.g., “Goods” has a property called “price”

that has a value restriction of number

Interoperability supportTerms defined in expressive ontologies

allow for mapping precisely how one term relates to another

Page 7: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

7

Graphical notationsSemantic networksTopic mapsUMLRDF

Logic basedDescription Logics (e.g., OIL, DAML+OIL,

OWL)Rules (e.g., RuleML, LP/Prolog)First Order Logic

Ontology Languages

Page 8: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

8

OWL (RDF/XML)

<per:Person rdf:about="http://umbc.edu/people/hchen4"> <per:firstName rdf:datatype="&xsd;string">Jane</per:firstName> <per:lastName rdf:datatype="&xsd;string">Smith</per:lastName> <per:birthDate rdf:datatype="&xsd;date">1976-12-26</per:birthDate> <per:gender rdf:resource="&per;Female"/> ...</per:Person>

An example ontology for profiling in OWL:

Page 9: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

9

Physical environments saturated with computing and communication, yet gracefully integrated with human users.

Distributed computing systems Large number of autonomous entities

(or agents)

Pervasive Computing Environments

Page 10: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

10

Entities: devices, applications, services, databases, users or other kinds of agents.

Various types of middleware (based on CORBA, Java RMI, SOAP, etc.) Enable communication between different entities.

No facilities to ease semantic interoperability between the different entities.

Pervasive Computing Environments

Page 11: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

11

The ad hoc, and dynamic Naturelate binding

The user interface, available while on the go, is usually limited in modalities,bandwidth between users, and so on.

Ontologies in the pervasive computing environment are more manageable compared to, for example, those for the Internet.

Why ontology &pervasive computing

Page 12: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

12

Ontologies for devices will be created by device manufacturers, which can put resources into their creation. Embodiments of devices with physical representations related to the particular location lead to simpler ontologies.You can have the same device in the next room or downstairs, and there is real reuse of ontologies enabled by natural boundaries in physical environments.

On the other hand, people and companies on the Internet are under the constant pressure of differentiating from others because of the Internet’s universal connectivity (thevery reason for its success).

Why ontology &pervasive computing

Page 13: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

13

Confront the development and deployment of Pervasive Computing Environments:

Discovery and Matchmaking Inter-operability between different

entities Context-awareness

Three Major Issues

Page 14: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

14

Registries to keep a real time state of the systemA protocol for discovering the arrival and departure of mobile entities

A registry with these protocols is termed a“Discovery Service”

Standard schemasPolicies, constraints, and relationshipsFlexible mechanism for exchanging descriptive

information

Discovery

Page 15: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

15

using the Discovery Service to discover

what entities are availablewhat sets or combinations meet

certain criteria

Matchmaking

Page 16: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

16

New entities The interaction

Autonomous entities to interact need to know :What kinds of interfaces they support What protocols or commands they

understand

Humans need to understand:What various entities doThe relationships between such entities

It is essential for humans to form an accurate conceptual model of the environment:

“They can interact with the environment easily.”

Inter-operability

Page 17: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

17

The various types of contextual information that can be used in the environment must be well-defined so that different entities have a common understanding of context.

Also, there needs to be mechanisms for humans to specify how different applications and services should behave in different contexts.

These mechanisms need to be based on well-defined structures of different types of context information.

Context-Awareness

Page 18: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

18

Checking to see if the descriptions of different entitiesare consistent with the axioms defined in the ontology.This also helps ensuring that certain security andsafety constraints are met by the environment.

Enabling semantic discovery of entities.

users can gain a better understanding of theenvironment and how different pieces relate to eachOther.

Allowing both humans and automated agents to perform searches on different components easily

Ontologies For

Page 19: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

19

Both humans and automated agents to interact with different entities easily

Allowing both humans and automated agents to specify rules for context-sensitive behavior of different entities easily

Enabling new entities (which follow different ontologies) to interact with the system easily. Providing ways for ontology interoperability also allows different pervasive environments to interact with one another.

Ontologies For

Page 20: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

20

Ontologies for different entitiesOntologies for context information

Kinds of Ontologies in GAIA

Page 21: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

21

Configuration management Discovery and matchmaking Human Interfaces Interoperation of components Context Sensitive behavior

Ontology Server Tasks

Page 22: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

22

Configuration Management

New entities, never before seen, may enterComponents need to automatically discover and collaborate with other componentsEntities and components are heterogeneous and autonomous.

Uses of Ontologies

Page 23: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

23

Semantic Discovery and Matchmaking

The Ontology Server performs the tasks of semantic discovery and matchmaking. It poses logical queries involving subsumption and classification of conceptsOther entities in the environment query the Ontology Server to discover classes of components that meet their requirements.

Uses of Ontologies

Page 24: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

24

Improved Human Interfaces

Ontologies can be used to make better user interfaces and allow these environments to interact with humans in amore intelligent way.

“Ontology Explorer”Allows users to browse the ontology describing the environment. A user can search for:

Different classes in the ontologyBrowse the results Get properties of the class

Uses of Ontologies

Page 25: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

25

Improved Inter-operability between entities

The description of the properties of different classes ofentities

both users and other automatedAgents interact with them more easily by performing

searches on them or sending them various commands.

This has proved to be one of the major advantages to using ontologies in a pervasive computing environment

Uses of Ontologies

Page 26: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

26

Context-Sensitive BehaviorAn ontology can improve

Robustness Portability

of context-aware applications.Different sensorsdifferent versions of servicesLocalizations

If the differences are terminological, an ontology may allow the rules to be “translated” and then work correctly in the new environment.

Uses of Ontologies

Page 27: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

27

Ontology MappingThe new ontology will add 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. These bridge concepts are typically subsumption relations that define the new entity to be a subclass of an existing class of entities.For example, if a new kind of fingerprint recognizer is added to the system, the bridge concept may state that it is asubclass of “Authentication Devices”.

Uses of Ontologies

How should I

use them? !

!!

?

? ??

?

??

dc

b

a

Page 28: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

28

A standard API for DAML+OIL (or, more likely, OWL [W3C, 2002b])

A standard interface for generic Knowledge Base services

Future Software

Page 29: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

29

“SOUPA”Standard Ontology for Ubiquitous and

Pervasive ApplicationsNov. 2003

In OWLUbiComp(http://pervasive.semantic.org)From Existing Ontologies

A Standard Ontology For Pervasive Computing

Page 30: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

30

FOAF : People Profile, and RelationshipDAML-Time: Time, and SchedulingRCC, OpenCyc: Description, Analysis Place and contextMoGATU-BDI, COBRA-ONT: Display and Analysis of KnowledgePolicy ontology (Rei): High Level Rules, Access Control

Standard Ontology From

Page 31: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

31

Have Two PartsCore (For entity description)Extensions (For different Context)

Adding Temporal Logic we have:TimeDecision Making

Standard Ontology

Page 32: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

32

Adding tldatatype To RDF with these types:

Active NextPreviousTemporalformula

Ontology For Pervasive Computing

<cont:RandomCounter> <con:counter rdf:tldatatype="active" rdf:datatype="&xsd;integer">42</cont:counter> <con:counter rdf:tldatatype="previous" rdf:datatype="&xsd;integer">30</cont:counter> <con:counter rdf:tldatatype="next" rdf:datatype="&xsd;integer">60</cont:counter> <con:SoundFormula rdf:tldatatype="temporalformula" rdf:datatype="&xsd;string"> (sound.turn = = off) U ((cont.counter.active > cont.counter.previous) & (cont.counter.active< cont.counter.next)) </cont:counter> </cont:RandomCounter >

Page 33: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

33

[1] Harry Chen, Tim Finin, and Anupam Joshi, "An Ontology for Context-Aware Pervasive Computing Environments", Department of Computer Science and Electrical Engineering, University of Maryland Baltimore County, 2004.[2] Harry Chen، Filip Perich، Tim Finin، Anupam Joshi , “SOUPA: Standard Ontology for Ubiquitous and Pervasive Applications”, University of Maryland, First Annual International Conference on Mobile and Ubiquitous Systems: Networking and Services (MobiQuitous'04), August 22 – 26, 2004.[3] Ryusuke Masuoka and Yannis Labrou, "Ontology-Enabled Pervasive Computing Applications", Fujitsu Laboratories of America, Published by the IEEE Computer Society, 2003.[4] Anand Ranganathan, et al., "Ontologies in a Pervasive Computing Environment, Content Areas: architectures, platforms, applications, semantic interoperability, semantic web services, role of context, environments", 2003.[5] Anand Ranganathan، Robert E. McGrath, Roy H. Campbell, M. Dennis Mickunas, “Use of Ontologies in a Pervasive Computing Environment”, In The Knowledge Engineering Review, Vol 18:3, 209-220, Cambridge University Press, 2004.[6] Sven van der Meer and Nazim Agoulmine, "Ontology Based Policy Mobility for Pervasive Computing", Waterford Institute of Technology, Ireland, Declan O’Sullivan, David Lewis, Trinity College Dublin, Ireland, 2004.[7] http://www.w3.org/TR

References

Page 34: DS - Spring 2006 Ontology & Pervasive Computing 1 ONTOLOGY & PERVASIVE COMPUTING Elham Paikari Distributed Systems – Spring 2006 Computer Engineering Department

DS - Spring 2006 Ontology & Pervasive Computing

34

Thanks