390 likes | 572 Views
An Ontology for Context-Aware Pervasive Computing Environments. Harry Chen, Tim Finin, Anupam Joshi UMBC IJCAI 2003 - ODS. Overview. Introduction Issues in pervasive context-aware systems OWL in context-aware systems Key uses of OWL and SW ontologies Context Broker Architecture
E N D
An Ontology for Context-Aware Pervasive Computing Environments Harry Chen, Tim Finin, Anupam Joshi UMBC IJCAI 2003 - ODS
Overview • Introduction • Issues in pervasive context-aware systems • OWL in context-aware systems • Key uses of OWL and SW ontologies • Context Broker Architecture • CoBrA ontologies and use cases • Conclusions
The Vision • Pervasive Computing: a natural extension of the present human computing life style • Using computing technologies will be as natural as using other non-computing technologies (e.g., pen, paper, and cups) • Computing services will be something that is available anytime and anywhere.
Too bad they can’t talk to each other… Cool toys… Yesterday: Gadget Rules
Configuration? Too much work… Sync. Download. Done. Today: Communication Rules
Tomorrow: Services Will Rule Thank God! Pervasive Computing is here.
One Step Towards the Vision • Context-aware systems: computer systems that can anticipate the needs of users and act in advance by “understanding” their context • Systems know I am the speaker • Systems know you are the audiences • Systems know we are in a meeting • …
Contexts • By context, we mean the situational conditions that are associated with a user • Location, room temperature, lighting conditions, noise level, social activities, user intentions, user beliefs, user roles, personal information etc.
Research Issues • Context Modeling & Reasoning • How to build representations of context that can be processed and reasoned about by the computers • Knowledge Maintenance & Sharing • How to maintain consistent knowledge about the context and share that information with other systems • User Privacy Protection • How to give users the control of their situational information (e.g., information acquired by the hidden sensors)
The OWL Language • A Semantic Web language for defining web ontologies (classes, properties, and restrictions), sponsored by W3C • Extends the KR models defined in RDF & RDF-S. • RDF/XML is the normative exchange format.
Key Uses of OWL (1) • Use OWL to define ontologies of context • people, devices, events, time, space etc. • Use the ontology semantics of OWL to reason about context • Deduce context knowledge that can’t be directly acquired from the sensors • Detect inconsistent knowledge that results from imperfect sensing
Key Uses of OWL (2) • Use OWL (RDF/XML) as the KR language for knowledge sharing • Knowledge sharing => minimizing the cost of and redundancy in context sensing • Use OWL as a meta-language to define other languages that are used in context-aware systems • Policy languages for privacy and security • Content languages for agent communications
Context Broker Architecture Pervasive Computing Semantic Web CoBrA Software Agents CoBrAnot CORBA!
Objectives • Developing an agent architecture to support pervasive context-aware systems • Provides ontologies for context modeling and reasoning • Includes a logic inference engine to reason with contextual information and to detect and resolve inconsistent context knowledge • Defines a policy language that users can use to control the use and the sharing of their context information
The broker detects Alice’s presence Alice “beams” her policy to the broker Alice enters a conference room » B B » » Policy says, “inform my personal agent of my location” The broker builds the context model Policy says, “can share with any agents in the room” B A .. isLocatedIn .. Web B A An EasyMeeting Scenario
The broker tells her location to her agent The broker informs the subscribed agents The projector agent asks slide show info. A B B The projector agent wants to help Alice Her agent informs the broker of her role and intentions The projector agent sets up the slides + An EasyMeeting Scenario
CoBrA-Ont (v0.1) CoBrA-Ont (v0.2) CoBrA-Ont (v0.3) F-OWL (v0.2) F-OWL (v0.3) EasyMeeting (v0.1) CoBrA Research Roadmap Jan 2003 Mar 2003 Jun 2003 An OWL reasoner built on Flora-2 (F-logic) in XSB (Full RDF-S and OWL-Lite; some OWL-DL) A prototype of an intelligent meeting room built on CoBrA Ontologies for modeling contexts (114 Classes, 124 Properties)
The CoBrA Ontology • Goal: it attempts to capture a set of common ontologies for describing • People, places, devices, agents, services and non-computing objects in an intelligent meeting room environment • The properties and relationships between these entities and the environment
Ontology for “Agent’s Activity Context” Ontology for “Agent” Ontology for “Agent’s Location Context” Ontology for “Place” The CoBrA Ontology (v0.2)
Versions of the Ontology • Our paper describes version 0.2 • http://daml.umbc.edu/ontologies/cobra/0.2/cobra-ont • The latest version is 0.3 • http://daml.umbc.edu/ontologies/cobra/0.3/ • What’ new in 0.3 • Ontologies are grouped into 6 different OWL documents • Added DAML-time ontology and FIPA device ontology • Redo events and people ontologies • And more…
An Example: Location Context • Part 1: define vocabularies for talking about places on a university campus • OWL Classes: Campus, Building, Room, Restroom, Hallway, Stairway etc. • Part 2: define properties and relationships of different places • OWL Classes: AtomicPlace & CompoundPlace • OWL Properties: isSpatiallySubsumedBy & spatiallySubsumes
Places in CoBrA Place AtomicPlace CompoundPlace ParkingLot Hallway Building Stairway Room Campus Restroom … …
AtomicPlaceNotInBuilding ParkingLot Places in CoBrA Place AtomicPlace CompoundPlace Hallway … AtomicPlaceInBuilding Room Restroom Stairway
Where is Harry? • Premise (static knowledge): • R210 rdf:type Room. • ECS-Building spatiallySubsumes R210. • ECS-Building isSpatiallySubsumedBy UMBC. • Premise (dynamic knowledge) • Harry isLocatedIn R210. • Conclusion: • Harry isLocatedIn AtomicPlaceInBuilding. • Harry isLocatedIn ECS-Building. • Harry isLocatedIn UMBC.
Spotting Error in Sensors • Premise (static knowledge): • R210 rdf:type AtomicPlace. • ParkingLot-B rdf:type AtomicPlace. • Premise (dynamic knowledge): • Harry isLocatedIn R210. • Harry isLocatedIn ParkingLot-B. • Premise (domain knowledge): • No person can be located in two different AtomicPlace during the same time interval. • Conclusion: • There is an error in the knowledge base.
F-OWL (v0.3) • F-OWL is an implementation of the OWL inference rules in Flora-2. • Flora-2 is an F-Logic (Frame Logic) based language in XSB (Prolog). • F-Logic is an object-oriented knowledge representation language. • Similar to TRIPLE, F-OWL defines the ontology models in rules.
An Example of F-OWL Premises animals:John a animals:Person. animals:Mark a animals:Person ; animals:hasFather animals:John. animals:hasFather rdfs:subPropertyOf animals:hasParent. animals:hasChild owl:inverseOf animals:hasParent. Query Who is John’s child? What classes does John belong to? Who are the parents of Mark? F-OWL Query animals_John:Class [animals_hasChild -> X]. animals_Mark [animals_hasParent -> X].
More about F-OWL • F-OWL is still under development. • F-OWL v0.3 (as of today) supports a full RDF-S inference and limited OWL inference (OWL-Lite and some OWL Full). • http://umbc.edu/~hchen4/fowl/
Work In Progress • Adopting some censuses ontologies for modeling time and space (e.g., DAML spatial & temporal ontology, Region Connection Calculus (RCC), Allen’s temporal interval calculus) • Implementing a rule based inference engine to reason about the temporal and spatial relations that are associated context events • Using REI, a security policy language based on deontic concepts, to develop a policy-based systems to protect user privacy
Privacy Policy Use Case (1) • The speaker doesn’t want others to know the specific room that he is in, but does want others to know that he is present on the school campus • He defines the following policies: • Can share my location with a granularity of ~1 km radius • The broker: • isLocated(UMBC) => Yes! • isLocated(RM223) => I don’t know!
Privacy Policy Use Case (2) • The problem of inference! • Knowing your phone + white pages => I know where you live • Knowing your email address (.mil, .gov) => I know you works for the government • The broker models the inference capability of other agents • mayKnow(X, homeAdd(Y)) :- know(X,phoneNum(Y))
P Mocha P4 PC (19.8x16.1x6.2cm, 1250g) Personal Agent (FIPA/JADE) CoBrA Blueprints B Room Booker (Semantic Web) SOAP/OWL Services FIPA-ACL/OWL
Conclusions • Semantic Web languages will play an important role in the future pervasive context-aware systems • It provides a means for modeling context and reasoning about them. • It allows independently developed agents to share context knowledge • The Context Broker Architecture distinguishes itself from other frameworks in the use of Semantic Web technologies.
Questions? • Harry Chen • http://umbc.edu/~hchen4/ • Email: harry.chen@umbc.edu • eBiquity.ORG - a pervasive computing news portal • http://ebiquity.org/