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
© Copyright 2026 Paperzz