1 an infrastructure for context-awareness based on first order logic 2007.04.27 송지수 isi lab

14
1 An infrastructure for context- awareness based on first order logic 2007.04.27 송송송 ISI LAB

Upload: lorin-butler

Post on 18-Jan-2018

216 views

Category:

Documents


0 download

DESCRIPTION

3 Introduction Need a uniform representation for various contexts Allow complex operations on contexts This paper uses first order logic (FOL) Supports conjunction, disjunction, negation and quantification Enable automated inductive and deductive reasoning Evaluate queries on context Based on this first order model, developed an infrastructure Performs the various operations defined in the context model Allows an easy flow of contextual information In this paper, integrated this infrastructure into Gaia

TRANSCRIPT

Page 1: 1 An infrastructure for context-awareness based on first order logic 2007.04.27 송지수 ISI LAB

1

An infrastructure for context-awareness based on first order logic

2007.04.27송지수

ISI LAB

Page 2: 1 An infrastructure for context-awareness based on first order logic 2007.04.27 송지수 ISI LAB

2

Table of Contents

Introduction The context model Protocols for obtaining context The Context Infrastructure Specifying context-sensitive behavior for

applications Conclusion

Page 3: 1 An infrastructure for context-awareness based on first order logic 2007.04.27 송지수 ISI LAB

3

Introduction

Need a uniform representation for various contexts Allow complex operations on contexts

This paper uses first order logic (FOL) Supports conjunction, disjunction, negation and quantification Enable automated inductive and deductive reasoning Evaluate queries on context

Based on this first order model, developed an infrastructure Performs the various operations defined in the context model Allows an easy flow of contextual information In this paper, integrated this infrastructure into Gaia

Page 4: 1 An infrastructure for context-awareness based on first order logic 2007.04.27 송지수 ISI LAB

4

The context model (1/2)

The basic structure – the context predicate ( 명제 or 조건자 ) Name of predicate : type of context (e.g. location, temperature) Arguments are actually constrained by the type of context Structures of different context predicates are specified in an

ontology Defines various context types as well as arguments

For Example,

No restriction on the types of values Third argument in the location can be room or x,y, and z coordinates Can be functions that return some value

Page 5: 1 An infrastructure for context-awareness based on first order logic 2007.04.27 송지수 ISI LAB

5

The context model (2/2)

Operations on contexts Can construct complex context expressions For Example,

Location (Lee, Entering, Room F314) ∧ Social Activity (Room F314, Meeting)NOT Location (Lee, In, Room F314) ∀People x Location (x, In, Room F314)∃Person s Location (s, Entering, currentRoom())

Quantification is performed only over a specific domain of values Person set consists of the names of all people in our system. Issues – Decidability and Safety This paper uses XSB reasoning engine for evaluating queries

The model allows deriving new contexts from other sensed contexts

Page 6: 1 An infrastructure for context-awareness based on first order logic 2007.04.27 송지수 ISI LAB

6

Protocols for obtaining context

There are two possible methods by which applications can get context

The query-answer protocol Application sends a query to the Context Provider Form as queries (some fields are replaced by variables)

Location (X, In, room F314)

The subscribe-notify protocol Application subscribes for certain contexts and gets notify Simple callback from the Context Provider (event-based)

Page 7: 1 An infrastructure for context-awareness based on first order logic 2007.04.27 송지수 ISI LAB

7

The Context Infrastructure (1/4)

Context Providers obtain context from sensors or data sources Context Synthesizers derive higher level or abstract contexts Context Provider Lookup Service allows applications to find

context provider Context History contains all past contexts Context Consumers (or Context-Aware Applications)

Page 8: 1 An infrastructure for context-awareness based on first order logic 2007.04.27 송지수 ISI LAB

8

The Context Infrastructure (2/4)

Context Providers Collect various types of contexts Allow them to be accessed by applications Type of context can be represented using a context expression

E.g. Tracking Service (keep track), Weather service (keep sending)

Context Consumers Obtain contexts by querying a Context Provider or by listening for

events Get references to Context Providers using the Lookup Service

Context history Store all context events in a DB For learning rules in Context synthesizer

Page 9: 1 An infrastructure for context-awareness based on first order logic 2007.04.27 송지수 ISI LAB

9

The Context Infrastructure (3/4)

Context Synthesizers Infers higher level contexts on simpler sensed contexts Gets source contexts, applies some sort of logic, and generates a

new type Two basic approaches

Rule-based synthesizers More than one rule can be true at the same time Return just a single value Occur Conflict Problem

The newly inferred context replaces the older one

Page 10: 1 An infrastructure for context-awareness based on first order logic 2007.04.27 송지수 ISI LAB

10

The Context Infrastructure (4/4)

There are problems in the Rule-based synthesizers May not deduce the right context since the real world may not follow Require explicit definition by humans Not flexible and can’t adapt to changing circumstances Enhancing the context model by associating probabilities

Synthesizers that learn Making use of machine learning techniques to deduce high-level

context For example,

User Mood Context Provider uses the Na Bayes algorithm Make use of past contexts to train the learner The result of algorithm is probabilistic Consider the mood with the highest probability and assume that to be true

Of course, the predictions are not always perfect

Page 11: 1 An infrastructure for context-awareness based on first order logic 2007.04.27 송지수 ISI LAB

11

Specifying context-sensitive behavior for applications (1/3)

GUI shows a list of possible behaviors of the application and user selects

Developer constructs complex first order expressions by mapping

There are some issues in this infrastructure Optimizing context expression evaluation

Whenever the context changes, the expressions must be evaluated If a large number of rules, O(n) time complexity is problem

Organize all the context expressions in a poset data structure A poset is a set for which a partial order (reflexive, transitive, anti-

symmetric) If cxtExp1 => cxtExp2, then The node corresponding to cxtExp1 is a child of the one to cxtExp2

Page 12: 1 An infrastructure for context-awareness based on first order logic 2007.04.27 송지수 ISI LAB

12

Specifying context-sensitive behavior for applications (2/3)

If the context expression of a root node evaluates to false, the context expressions of all its decedents will also be false If true, traverse the poset in a top-down manner

Page 13: 1 An infrastructure for context-awareness based on first order logic 2007.04.27 송지수 ISI LAB

13

Specifying context-sensitive behavior for applications (3/3)

Resolving conflicts Since multiple nodes in the poset can become true at the same time, there may be conflicts in the actions Handle these conflicts using a priority-based mechanism The Node with the higher priority wins If same, randomly choose

Using machine learning Observing the user’s reaction

If user reacted positively, the priority of the action could be increased

Changing the rules dynamically Mobile and pervasive environments Any changes are reflected in the poset structure immediately There are standard algorithms for adding or deleting nodes into a poset

Related work

Page 14: 1 An infrastructure for context-awareness based on first order logic 2007.04.27 송지수 ISI LAB

14

Conclusion

Provides generic mechanism for representing contexts and writing rules

Allows automated reasoning and evaluating Easy to specify complex rules

Various reasoning can be used Not looked at the privacy and security concerns

Next study will be about one of them Concerning privacy and security Problem of contexts in autonomous distributed applications Standard algorithms for adding or deleting nodes