330 likes | 535 Views
Ambient Intelligence through Ontologies. Vassileios Tsetsos b.tsetsos@di.uoa.gr P-comp Research Group http://p-comp.di.uoa.gr . What is an ontology?. A formal , explicit specification of a shared conceptualization . (Studer 1998, original definition by Gruber in 1993)
E N D
Ambient Intelligence through Ontologies Vassileios Tsetsos b.tsetsos@di.uoa.gr P-comp Research Group http://p-comp.di.uoa.gr
What is an ontology? • A formal, explicitspecification of a sharedconceptualization. (Studer 1998, original definition by Gruber in 1993) • Formal: it is machine-readable • Explicit specification: it explicitly defines concepts, relations, attributes and constraints • Shared: it is accepted by a group • Conceptualization: an abstract model of a phenomenon
What is an ontology? • Taxonomy, classification, vocabulary, logical theory, … • Concepts/classes, relations, properties/slots, instances/objects, restrictions/constraints, axioms, rules
Heavyweight vs. Lightweight • They differ in expressiveness, reasoning capabilities, complexity, decidability. • Lightweight • E-R diagrams, UML • Heavyweight • Description Logics, frames, first order logic • There are W3C standards for each case (RDF, RDF Schema, OWL) • We should choose carefully!
Types of Ontologies (1) • Upper Level Ontologies • Describe very general concepts. • SUO (IEEE Standard Upper Ontology) • KR Ontologies • Representation primitives => Semantically- described grammars of ontology languages. • OKBC, OWL KR, RDF Schema KR
Types of Ontologies (2) • Domain Ontologies • Are specializations of Upper Level Ontologies, reusable in a given domain (e.g., a generic ontology for smart environments) • Unified Medical Language System (UMLS) • Application Ontologies • They model all the knowledge required for a particular application (e.g., an ontology for a specific smart classroom)
Some examples • IEEE SUO • RDF(S) KR
Many advantages • Provide formal model descriptions that allow reasoning • They support common queries: • Queries about the truth of statements (Is there a printer in room I9?) • Queries expecting an object to be returned (Where is John?) • Are quite scalable (especially Semantic Web ones) • Provide interoperability as they are agreed by a community (…at least this should be the case!) • SW ontology languages • are XML-based => XML advantages • have been standardized and are widely used • …
Pervasive Computing (PC) • Computing paradigm that envisages: • Ubiquitous networking and service access • Intelligence • Intuitive HCI • Context-awareness • Seamless interoperation between heterogeneous agents • Privacy and Security • …
Ontology applications in PC • Context modeling & reasoning • Context ontologies (location, time) which define structure and properties of contextual information • Semantic Web Services • Semantic description => automated discovery and matchmaking, composition, invocation, … • Semantic interoperability between heterogeneous systems (e.g., agents) through a shared set of concepts • Security and trust
Some “PC+Ontologies” projects • CoBrA • SOUPA • Gaia • Other
CoBrA (1) • eBiquity Research Group, UMBC • http://ebiquity.umbc.edu • A broker-centric agent architecture that aims to reduce the cost and difficulties in building pervasive context-aware systems. • In this architecture, a Context Broker is responsible to: • Acquire & maintain contexts on the behalf of resource-poor devices & agents • Enable agents to contribute to and access a shared model of contexts • Allow users to use policy to control the access of their personal information
CoBrA (2) • Context Broker: maintains a model of the present context and shares this model of context knowledge with other agents, services and devices.
CoBrA ontologies • A set of ontologies that specialize the SOUPA Ontology. • They model the context and the processes of pervasive environments. • E.g., CoBrA Place • models different types of “Place” on a university campus
SOUPA (1) • Standard Ontology for Ubiquitous and Pervasive Applications (SOUPA) • eBiquity @ UMBC, http://pervasive.semanticweb.org • Written in OWL
Gaia (1) • A PC infrastructure for smart spaces • CORBA-based middleware for the management of Spaces • Ontologies written in DAML+OIL
Gaia (2) • Ontology Server: definitions of terms, descriptions of agents and meta-information about context available in a Space • Checks ontology consistency and provides maintenance • Semantic interoperability is performed through the common adoption of the same ontologies by all agents • Ontologies also help the developer to write inference rules or machine learning code in a generic way
Other uses of ontologies in Gaia • Configuration management • New unknown entities may enter a Space • In earlier version: scripts & ad hoc configuration files • Semantic discovery with a FaCT Server • Semantic queries involve subsumption and classification of concepts • Context modeling • Context is modeled as predicates • e.g., temperature (room3,”-”,98F) • Ontologies describe the type and values of predicate arguments • Context-sensitive behavior • The developers can specify the behavior of the applications under certain contextual conditions through the supported ontologies.
The Gaia infrastructure Gaia context infrastructure The ontology infrastructure of Gaia
CONON: The context ontology • Extensible ontology comprised of: • Upper Level Ontology • Specific Ontology • Written in OWL • Enables DL reasoning (subsumption, consistency, instance checking, implicit context from explicit context) with OWL-Lite axioms • Enables First Order Logic reasoning (inference of higher level context) with user-defined rules
Trust • SW entails a Web of Trust • PC requires ad-hoc soft-security models • Ontologies can model semantic networks of trusted entities and allow trust inference • Ontologies are used for the definition of (rule-based) Policy Languages • Rei, KAoS
Trust inference • Directly connected nodes have known trust values • Trust for not directly connected nodes can be inferred with several algorithms: • Maximum and minimum capacity paths (~ the range of trust given by neighbors of X to Y) • Maximum and minimum length paths (~ how “far” is Y from X?) • Weighted average (~ recommended trust value for X to Y). It is a very complex algorithm!!! Why?
Complexity of trust computation • Trust is affected by social, contextual and other ad hoc conditions • Example (on the subject of “AutoRepair”) • A distrusts B, B distrusts C => A trusts C? • A may want to trust C, because B distrusts C • If C cannot be trusted by B, A may distrust C even more • A complete solution: semantic descriptions of trusted entities and user-defined trust policies
FOAF Ontology • Builds social networks • Individuals are described by name, e-mail, homepage, etc. • There are links between individuals
A trust ontology (1) • Nine levels of trust (trustsHighly, distrustsSlightly, etc.) • Extending foaf:Person (1) <Person rdf:ID="Joe"> <mbox rdf:resource="mailto:bob@example.com"/> <trustsHighly rdf:resource="#Sue"/> </Person>
A trust ontology (2) • Extending foaf:Person (2) <Person rdf:ID="Bob"> <mbox rdf:resource="mailto:joe@example.com"/> <trustsHighlyRe> <TrustsRegarding> <trustsPerson rdf:resource="#Dan"/> <trustsOnSubject rdf:resource="http://example.com/ont#Research"/> </TrustsRegarding> </trustsHighlyRe> <distrustsAbsolutelyRe> <TrustsRegarding> <trustsPerson rdf:resource="#Dan"/> <trustsOnSubject rdf:resource="http://example.com/ont#AutoRepair"/> </TrustsRegarding> </distrustsAbsolutelyRe> </Person>
Current and future work in P-comp • Semantic Web Services • Description Logics • Location modeling • Tools survey and experimentation • Meta-information for sensor data • Ontologies for medical applications • Any ideas???
Location modeling (1) • Ontologies can map and interconnect different underlying spatial representations • This facilitates advanced reasoning and user-defined queries • A “location modeling team” is currently being formed to design and develop a system: • With human-centered, 3D indoor spatial representation • Which supports declarative and semantically-rich queries • Which supports mobile users and location prediction • Which seamlessly integrates different spatial representation approaches (set-based, graph-based, geometric)
Location modeling (2) This is actually a Domain Ontology Queries User Applications (e.g., navigation) Top-Level Location Ontology (Prediction-driven) Events Application Ontology 1 Application Ontology 2 Application Ontology 3 Model Mapping Engine 1 Model Mapping Engine 2 Model Mapping Engine 3 Explicit Semantics Oracle Spatial DOMINO Location Ontology Repository Different DB platforms, access terms, conceptual models
Some open research issues • Can they efficiently model sensor data? • Will the introduction of Probability elements improve their effectiveness? If yes, how can this be implemented? • Development of user-friendly tools and powerful & efficient reasoners • Automated ontology generation/extraction and easy ontology maintenance
Further reading • Ontological Engineering, Gómez-Pérez, Fernández-López, Corcho, 2004, Springer • Harry Chen et al., "SOUPA: Standard Ontology for Ubiquitous and Pervasive Applications", International Conference on Mobile and Ubiquitous Systems: Networking and Services, August 2004. • Harry Chen et al., "A Context Broker for Building Smart Meeting Rooms", Proceedings of the Knowledge Representation and Ontology for Autonomous Systems Symposium, 2004 AAAI Spring Symposium, March 2004. • Robert E. McGrath, Anand Ranganathan, Roy H. Campbell and M. Dennis Mickunas, Use of Ontologies in Pervasive Computing Environments • Xiao Hang Wang, et al., Ontology Based Context Modeling and Reasoning using OWL, Second IEEE Annual Conference on Pervasive Computing and Communications Workshops, 2004 • Jennifer Golbeck, James Hendler, Trust Networks on the Semantic Web, WWW 2003 • RDFWeb: FOAF: ‘the friend of a friend vocabulary’, http://rdfweb.org/foaf/