Transcript
Page 1: Ontology and Context Modeling

Ontology and Context Modeling

November 20, 2008

Sung-Bae Cho

1

Page 2: Ontology and Context Modeling

• Ontology

– Introduction

– Ontology Components

– Ontology Development Process

– Ontology Languages

• Applications Using Ontology for Context Awareness

– Contexts Manipulation Using Ontology

– AmbieSense Project

– Modeling Context Ontology based on Activity Theory

• Summary & Review

Agenda

2

Page 3: Ontology and Context Modeling

Contexts and Ontology

• Contexts [Dey et. al. 2001]

– Context is any information that can be used to characterize the situation of an entity.

– Three Fundamental Elements for characterizing the situation

• Environments - Location, Building, Room, etc.

• Computational Entity – Smart Sensors, Actuators, etc.

• User – Profile, Schedule, Activities, etc.

• Context-Aware System

– A system that uses contexts to provide relevant information and services to user

• Context and ontology

– Ontology can define the context as a formal information

– Context can be shared as a type of ontology

Page 4: Ontology and Context Modeling

What’s an Ontology?

• An ontology is an explicit specification of a conceptualization.

– Thomas Gruber

• An ontology is a well-organized system of human knowledge and information made for machines to understand them easily and correctly.

• An ontology is a common framework that allows data to be shared and reused by human and machines.

• Other expression

– a common vocabulary

– a shared understanding

4/44

Page 5: Ontology and Context Modeling

Ontology Structure

5

Page 6: Ontology and Context Modeling

Ontologies Vs. Data Models

• No strict line in between, but ontologies are

– More general

– More reusable

– Intended for multiple purposes, goals, and users

– More easily shareable

– Take stand on semantics of concepts (as opposed to mere structure and integrity)

6

Page 7: Ontology and Context Modeling

What Is a Concept?

• Concepts (among other things) are in general language independent (words 'cat' and 'kissa' denote the same concept)

– Are mental or logical representations of reality

– Are related to other concepts

– Do not need symbols but hold them for means of communication

• A concept has

– Intension or meaning

– Extension, i.e. the set of objects that the concept refers to

• On the difference between intension and extension, consider phrases "Evening star" and "Morning star" that have different meanings (intension) yet both refer to planet Venus (extension)

• Ontology is mainly concerned with intension

7

Page 8: Ontology and Context Modeling

Ontology in Philosophy

• Semantics

– The meaning of meaning

• Philosophical discipline, branch of philosophy that deals with the nature and the organization of reality

• Science of Being (Aristotle, Metaphysics, IV,1)

• Tries to answer the question

– What is being?

– What are the features common to all beings?

8

Page 9: Ontology and Context Modeling

Ontology in Computer Science

• Ontology in Computer Science

– Tom Gruber

– An ontology is a specification of a conceptualization

• An ontology is a description (like a formal specification of a program) of the concepts and relationships that can exist for an agent or a community of agents

– Nicola Guarino

– In Artificial Intelligence, an ontology refers to an engineering artifact, constituted by a specific vocabulary used to describe a certain reality, plus a set of explicit assumptions regarding the intended meaning of the vocabulary words

9

Page 10: Ontology and Context Modeling

Ontologies and Controlled Vocabularies

• Ontology is a Controlled Vocabulary of

– Types of subjects,

– Types of relations among subjects,

– Rules, axioms and constraints.

• Controlled Vocabulary - a fixed set of (agreed upon) names used within a certain community to refer to subjects in a certain domain.

Page 11: Ontology and Context Modeling

Ontology/CV Examples

• Glossary

– Controlled vocabularies + natural language explanation of the meaning of terms.

• Meaning is expressed in a human readable form and help human to understand the meaning of terms, often ambiguous.

• Glossaries were intended to help humans not machines.

• Thesauri

– Controlled vocabularies or glossary + some additional semantics.

• Synonyms / homonyms / antonyms relationships.

• Broader / narrower terms.

• Index

– Controlled vocabularies + references to the subject occurrences.

• Taxonomy and Classification

– Controlled vocabulary + hierarchic structure.

Page 12: Ontology and Context Modeling

Why Ontology?

• Labeling

– If I say “car” and you say “voiture” how do we know we mean the same thing?

• Semantics

– If I say “vehicle”, how do you know if this includes buses, powered motorcycles

• To share common understanding of the structure of descriptive information

– Among people

– Among software agents

– Between people and software

• To enable reuse of domain knowledge

– To avoid “re-inventing the wheel”

– To introduce standards to allow interoperability

12

Page 13: Ontology and Context Modeling

13/36

Why Ontology? (2)

• To make domain assumptions explicit

– Easier to change domain assumptions (consider a genetics knowledge base)

– Easier to understand and update legacy data

• To separate domain knowledge from the operational knowledge

– Re-use domain and operational knowledge separately (e.g., configuration based on constraints)

• To manage the combinatorial explosion

Page 14: Ontology and Context Modeling

• Ontology

– Introduction

– Ontology Components

– Ontology Development Process

– Ontology Languages

• Applications Using Ontology for Context Awareness

– Contexts Manipulation Using Ontology

– AmbieSense Project

– Modeling Context Ontology based on Activity Theory

• Summary & Review

Agenda

14

Page 15: Ontology and Context Modeling

Knowledge Models

• Taxonomy of knowledge models

– Contains many kinds of information

Set of Examples

Set of Statements Typologies

Component Systems

Hybrid Conceptual

SystemsSeries

Procedures

Parallel Procedures

Iterative Procedures

Norms and Constraints

Laws and Theories

Decision Trees

Control Rules

Processesand Methods

Processes

Methods

Multi-actorworkflows

Set of traces

Procedural Models

Prescriptive Models

KnowledgeModels

Factual Models

Conceptual Models

Page 16: Ontology and Context Modeling

Semantic Networks

• Knowledge represented as a network or graph

– represents semantic relations between the concepts

– often used as a form of knowledge representation

– a directed or undirected graph consisting of vertices, which represent concepts, and edges

• A simple type of ontology

Page 17: Ontology and Context Modeling

Semantic Networks Feature

• By traversing network we can find:

– That Nellie has a head (by inheritance)

– That certain concepts related in certain ways (e.g., apples and elephants).

• BUT: Meaning of semantic networks was not always well defined.

– Are all Elephants big, or just typical elephants?

– Do all Elephants live in the “same” Africa?

– Do all animals have the same head?

• For machine processing these things must be defined.

Formal ontology supports the requirements

Page 18: Ontology and Context Modeling

18/36

Ontology Components

• Concepts / Class– Concepts of the domain or tasks, which are usually organized in

taxonomies• Example: Person, Car, University, …

• Relations– A type of interaction between concepts of the domain

• Example: subclass-of, is-a, …• Functions

– A special case of relations in which the n-the element of the relationship is unique for the n-1 preceding elements

• Example: Father_of, Sum_of_Price,…• Axioms

– Model sentences that are always true• Example: a+0=0, if x > y, then x+a > y+a, …

• Instances / Individuals– To represent specific elements

• Example: Student called Peter, …

Page 19: Ontology and Context Modeling

19/36

Ontology Components (2)

First Order Logic (FOL) Description Logic (DL)

Classes

Relations

Functions

Instances

Concepts

Roles(w/Function, Axiom)

Individuals

Page 20: Ontology and Context Modeling

Taxonomy, Ontology, Knowledgebase

20

Page 21: Ontology and Context Modeling

21/36

Taxonomy

• Taxonomy := Segmentation, classification and ordering of elements into a classification system according to their relationships between each other

Page 22: Ontology and Context Modeling

22/36

Thesaurus

• Terminology for specific domain

• Graph with primitives, 2 fixed relationships (similar, synonym)

• Originate from bibliography

Page 23: Ontology and Context Modeling

23/36

Topic Map

• A standard for the representation and interchange of knowledge, with an emphasis on the findability of information.

• The ISO standard is formally known as ISO/IEC 13250:2003

Page 24: Ontology and Context Modeling

24/36

Ontology

• Representation Language: Predicate Logic• Standards: RDF(S), OWL

Page 25: Ontology and Context Modeling

Knowledge Description & Reasoning Level

25/36

Taxononmy

Thesaurus

Topic Map

Ontology

Knowledge Reasoning Level

Knowledge search

Know

led

ge D

escrip

tion

Level

Page 26: Ontology and Context Modeling

• Ontology

– Introduction

– Ontology Components

– Ontology Development Process

– Ontology Languages

• Applications Using Ontology for Context Awareness

– Contexts Manipulation Using Ontology

– AmbieSense Project

– Modeling Context Ontology based on Activity Theory

• Summary & Review

Agenda

26

Page 27: Ontology and Context Modeling

Ontology Development Process

• Ontology development process consists in seven steps

1. Specification

2. Knowledge acquisition

3. Conceptualization

4. Integration

5. Implementation

6. Evaluation

7. Documentation

• Ontology development is an iterative process

– After evaluation we came back to previous phases and corrected mistakes

27

Page 28: Ontology and Context Modeling

Specification

• Requirement Analysis

• What is the goal of the ontology?

– What is the usage?, users specifications …

• What is relevant to fulfill the goal?

– E.g., entities, relationships, restrictions

• What need to be modeled?

– E.g., key components of car, types of car

• What granularity is useful?

– What parts should be described, what is unnecessary …

28

Page 29: Ontology and Context Modeling

Knowledge Acquisition

• Try to get the information based on the available documents in different data sources

• Put the information in a hierarchy structure with respect to the ontology scope

• This step occurs in parallel with specification step

29

Page 30: Ontology and Context Modeling

Conceptualization and Integration

• Concepts in the ontology should be close to objects (physical or logical) and relationships in your domain of interest

• In order to obtain some uniformity across your ontology with other ontologies, try to get definitions from other ontologies

30

Page 31: Ontology and Context Modeling

Implementation and Evaluation

• Implementation consists in define all the ontology components through an ontology definition language generally in two stages

– Informal stage

• Ontology is sketched out using either natural language descriptions or some diagram technique

– Formal stage

• Ontology is encoded in a formal knowledge representation language, that is machine computable

– Different tools (e.g., Protégé) may help in the implementation

• Evaluation consists in checking for completeness, consistence and avoiding from redundancy

– Different tools (e.g., RACER) may help in the evaluation

31

Page 32: Ontology and Context Modeling

Documentation

• Produce clear informal and formal documentation

• Make ontology understandable!

• An ontology that cannot be understood will not be reused

32

Page 33: Ontology and Context Modeling

Ontology Development Process

33

Page 34: Ontology and Context Modeling

• Ontology

– Introduction

– Ontology Components

– Ontology Development Process

– Ontology Languages

• Applications Using Ontology for Context Awareness

– Contexts Manipulation Using Ontology

– AmbieSense Project

– Modeling Context Ontology based on Activity Theory

• Summary & Review

Agenda

41

Page 35: Ontology and Context Modeling

Ontology Languages

Expressivity KIF/S CL

OKBC

F-Logic LOOM

RDF/S

OWL

UML

Class ● ● ● ● ● ● ●Slots/Attributes ● ● ● ● ● ● ●Metaclasses ━ ━ ━ ━ ━ ━ ●Number Restrictions ● ● ● ● ● ●Complex Class Extensions ● ● ● ● ● ━Subsumption Hierarchies ● ● ● ● ━ ● ●Value Restrictions ● ● ● ● ● ━Add New Facets ● ● ● ━

Behaviors, Procedures, Methods ● ● ● ●

Relations / Functions ● ━ ● ● ● ● ●Slots/Attributes ● ━ ● ● ━ ━ ━Subsumption Hierarchies ● ━ ━ ● ● ● ━N-ary Relations/Functions ● ━ ━ ● ━ ━ ━Built-in Functions, Equations, Formulate ● ● ●

Instances / Individuals / Facts ● ● ● ● ● ● ●

Axioms ● ━ ● ● ● ━

Production Rules ● ● ● ━42/36

Page 36: Ontology and Context Modeling

OWL

• Web Ontology Language

• Official W3C Standard since Feb 2004

• Based on predecessors (DAML+OIL)

• A Web Language: Based on RDF(S)

• An Ontology Language: Based on logic

Page 37: Ontology and Context Modeling

OWL Ontologies

• What’s inside an OWL ontology

– Classes + class-hierarchy

– Properties (Slots) / values

– Relations between classes(inheritance, disjoints, equivalents)

– Restrictions on properties (type, cardinality)

– Characteristics of properties (transitive, …)

– Annotations

– Individuals

• Reasoning tasks: classification, consistency checking

Page 38: Ontology and Context Modeling

Example Ontology (Protégé)

Page 39: Ontology and Context Modeling

Resources

• FaCT++ system (open source)

– http://owl.man.ac.uk/factplusplus/

• Protégé

– http://protege.stanford.edu/plugins/owl/

• W3C Web-Ontology (WebOnt) working group (OWL)

– http://www.w3.org/2001/sw/WebOnt/

• DL Handbook, Cambridge University Press

– http://books.cambridge.org/0521781760.htm

Page 40: Ontology and Context Modeling

• Ontology

– Introduction

– Ontology Components

– Ontology Development Process

– Ontology Languages

• Applications Using Ontology for Context Awareness

– Contexts Manipulation Using Ontology

– AmbieSense Project

– Modeling Context Ontology based on Activity Theory

• Summary & Review

Agenda

47

Page 41: Ontology and Context Modeling

Contexts Manipulation Using Ontology

• An Approach for Configuring Ontology-based Application Context Model

– Chung-Seong Hong, Hyun Kim, Hyoung-Sun Kim

– Electronics and Telecommunication Research Institute, Republic of Korea

• Backgrounds

– Previous researches mainly focus on the collecting and analyzing context information from the computational devices.

– Contexts are managed and interpreted inside of the infrastructure with their own context model.

– Applications are created and executed based on the unified context model that is managed in the context-aware infrastructure.

• Problems

– With the unified context model,

Is it possible to support all kinds of ubiquitous applications?

– What about contexts outside of the context-aware system?

• Information System - Scheduling Sys., Weather Forecasting Sys., etc.

• Web Services

48

Page 42: Ontology and Context Modeling

Three Phases of Contexts Manipulation

Page 43: Ontology and Context Modeling

Goals

• We propose a conceptual modeling approach

focusing on how to configure application context model

using ontology

through expanding context-aware systems’ context model

for intelligent services in ubiquitous computing environments.

• A new context modeling approach is designed to overcome shortcomings such as

– context inference through OWL

– context knowledge reuse through context modularization

– context knowledge expansion through ontology merging

Page 44: Ontology and Context Modeling

• We simplify the application context model as four-layered space based on the abstraction level of contexts.

Layered Application Context Model

Page 45: Ontology and Context Modeling

Modeling Common and Domain Ontology

Page 46: Ontology and Context Modeling

Prototype Smart Meeting Room Application

Page 47: Ontology and Context Modeling

Integrated Application Context Ontology

Page 48: Ontology and Context Modeling

• Ontology

– Introduction

– Ontology Components

– Ontology Development Process

– Ontology Languages

• Applications Using Ontology for Context Awareness

– Contexts Manipulation Using Ontology

– AmbieSense Project

– Modeling Context Ontology based on Activity Theory

• Summary & Review

Agenda

55

Page 49: Ontology and Context Modeling

AmbieSense Project

• Case-Based Situation Assessment in a Mobile Context-Aware System

– Anders Kofod-Petersen and Agnar Aamodt

– Artificial Intelligence in Mobile System, 2003

• AmbieSense

– A small and wireless context tag

– Inside furniture, beside artworks, in a meeting room, in a shop window, or in an open area

56

Page 50: Ontology and Context Modeling

The Developed Domain Context Model

• Generic concepts

– Task, Goal, Action, Physical Object

• Concepts of the domain in a multi-relational semantic network

– Airport Hall, Gate, Restaurant, Newsstand

Page 51: Ontology and Context Modeling

A Hungry User Example

• Spatio-temporal context

– 1:15 PM, Oslo airport

• Personal context

– A hang to Italian food

– More than five hours since last used his credit card at a restaurant

• Environmental context

– Context Tag nearby

Page 52: Ontology and Context Modeling

• Ontology

– Introduction

– Ontology Components

– Ontology Development Process

– Ontology Languages

• Applications Using Ontology for Context Awareness

– Contexts Manipulation Using Ontology

– AmbieSense Project

– Modeling Context Ontology based on Activity Theory

• Summary & Review

Agenda

59

Page 53: Ontology and Context Modeling

Modeling Context based on Activity Theory

• Using Activity Theory to Model Context Awareness

– Anders Kofod-Petersen and Jorg Cassens

– Lecture Notes on Artificial Intelligence, vol. 3946, pp. 1-17, 2006.

• A major shortfall of the research into context-aware systems

– Lack of a common understanding of a context model

– Lack of an agreed definition of context

• Most of the research today

– Focusing on the technical issues associated with context

– The syntactic relationships between different concepts

• Main reason for this approach

– Using socio-technical theories to design context-aware systems

– Using Activity Theory to model context and to describe situations

Page 54: Ontology and Context Modeling

Activity Theory

• Activity theory

– A descriptive tool to help understand the unity of consciousness and activity

• Activity

– Subject, object and a mediating artifact or tool

– Subject

• A person or a group engaged in an activity

– Object

• Object that subject wants to achieve

Page 55: Ontology and Context Modeling

Activity Theory and Context Awareness

• CHAT (Cultural Historical Activity Theory)

– An expanded model of Activity Theory

• A social and cultural context

• Example : software development

– The members of the team → all subjects in the development process

– Subjects and the client and other stake-holders → a community

– Working → division of labor

– Coding standards or working culture → a set of rules

– Methods for analysis and programming tools → mediating tools

Page 56: Ontology and Context Modeling

The Proposed Context Model

• Context (defined by Dey)

– The set of suitable environmental states concerning a user

• Context taxonomy

– Environmental context → things, services, people

– Personal context → mood, expertise and disabilities

– Social context → different roles a user can assume

– Task context → what the user is doing, user’s goal, task

– Spatio-temporal context → time, location, the community

Page 57: Ontology and Context Modeling

• Ontology

– Introduction

– Ontology Components

– Ontology Development Process

– Ontology Languages

• Applications Using Ontology for Context Awareness

– Contexts Manipulation Using Ontology

– AmbieSense Project

– Modeling Context Ontology based on Activity Theory

• Summary & Review

Agenda

64

Page 58: Ontology and Context Modeling

Summary

• What is ontology?

– Introduction of Ontology

– Why use ontology?

– Components of Ontology

– Ontology Development Process

• How to use ontology?

– Applications Using Ontology for Context Awareness

– Ontology based contexts manipulation

– Ontology based context-aware service

– Ontology based context modeling

• Summary & Review


Top Related