You are on page 1of 44

CONTEXT-AWARE COMPUTING

1. Introduction
 Vision of pervasive computing /ubiquitous
computing [Mark Weiser, 1991]
 ‘‘The most profound technologies are those that
disappear. They weave themselves into the fabric of
everyday life until they are indistinguishable from it.’’
 The essence of that vision:
 Creation of environments saturated with computing and
communication capabilities, yet gracefully integrated with
human users
 A vision too far ahead of its time (1991)
 The required hardware technology simply did not exist
 The implementation attempted by Weiser and his
colleagues at Xerox PARC fell short
Introduction (2)

 Critical hardware elements of pervasive computing are now


(2001) available
 Are now viable commercial products
 Examples:
 Handheld computers / wearable computers
 Wireless LANs
 Sensing devices
 Control appliances
 We can begin the quest for pervasive computing vision.

 Examples of pervasive computing projects


 At universities:
 Project Aura at Carnegie Mellon / Endeavour at UC Berkeley
 Oxygen at MIT / Portolano at Washington
 In the industry:
 AT&T Research in Cambridge, U.K.
 IBM TJ Watson Research Center
 Context-aware Computing
 Brings us one step closer to the Pervasive
Computing vision
 Enables computer systems to anticipate
users’ needs and to act in advance
 An emerging paradigm to free everyday
users from manually configuring and
instructing computer systems
Life is Not Perfect
 Building context-aware systems for Pervasive
Computing is often difficult and costly:
 User privacy issues when sharing personal
information
 Supporting resource-poor mobile devices
 How to reason about sophisticated contexts in a
dynamic environment
 Inconsistent and ambiguous contextual knowledge
 Security, trust, ... (goes on and on)
Context Broker Architecture
 The “broker” of this architecture will
 Sense and reason about contexts on the
behalf of capability-limited agents
 Enable agents to share contextual
knowledge
 Protect the privacy of users
 Maintain consistent contextual knowledge
About “Agent”
 Study context-aware systems using
intelligent agents (context-aware
agents)
 Autonomous and Proactive
 Can communicate, not just connect
 Have beliefs about the World
 Have desires and intentions
About “Broker”
 Broker, an overloaded term for agents
with a specialized role:
 Mediator: mediate communication
messages in a Multi-agent system (MAS)
 Facilitator: facilitate task execution
between agents to achieve cooperation
 Match-maker: match/recommend service
advertisements
“Broker” in My Architecture
 Broker is a server agent that controls
and manages the contextual knowledge
of a Pervasive Computing environment:
 Enables agents to contribute to and access
a shared model of context
 Allows users to control the access of their
personal information in a context-aware
environment
B
About “Context”
 In Merriam-Webster Dictionary
 [1] the parts of a discourse that surround a
word or passage and can throw light on its
meaning
 [2] the interrelated condition in which
something exists or occurs
Definitions of Context
 In context-aware computing
 No unified definition of context
 Most of the definitions agree that context
has something to do with the interactions
between the users and the computing
systems
My Definition of Context
 Context is information that can be used to
characterize the situation of a person or an
object in a Pervasive Computing environment.
 The identities and attributes of people and
devices
 The locations of people and devices
 The activities that people are participating in
 The roles and intentions of people when
participating in the activities
Context-Aware Systems (1 of 2)

A Call-forwarding System
A user has left The phone rings The system detects
his office in his office his current location

The system forwards The system detects the Calls are forwarded to
the call to a nearby user is in an meeting his voice mailbox
phone
Context-Aware Systems (1 of 2)

 Two types of contexts are used:


The system detects
his current location
Location Context

The system detects the


user is in an meeting
Activity Context
Context-Aware Systems (2 of 2)

Shopping Assistant
A user enters a store Turns on his PDA PDA displays the info
of a store item
+ +

As the user wonders PDA analyzes user’s PDA recommends


around in the store personal profile store items to the user
Context-Aware Systems (2 of 2)

 Three types of contexts are used:


PDA displays info of
the store items
+ + Location Context
=

PDA analyzes user’s


personal profile Identity Context
&
Attribute Context
System Characteristics
 Context-aware agents often run on
mobile devices
 For agents to become context-aware,
context sensing and context reasoning
mechanisms are required
 Context-aware systems often exploit
user information (e.g. personal profile,
user location & social activity)
(2) Lack of Reusable
Context-Aware Mechanisms
 2 Essential Mechanisms:
 Context Sensing: acquiring information
from the physical environment
 Context Reasoning: interpreting the
information that have been acquired
 In the existing systems, both are built
from the scratch every time => no
reuse!
(3) Privacy Issues in
Accessing User Information
 Privacy is about control of
information
 In context-aware systems, users may
not have full control of their information
 Sensors are hidden in the environment
 Information are collected without explicit
consent from the users
(3) Privacy Issues in
Accessing User Information
 What about sharing of information?
 You tell an agent something about you
because you want its service, and later it
tells someone else... (you are in trouble!)
 The downstream consequences of
information are unknown or unspecified.
Proposed Solution
 Context Broker Architecture
 Philosophy: agents can’t do “everything” by
themselves, let’s provide a powerful server
entity to help them
 Rationale: the Moore’s Law for mobile
computing is likely to hold; developing a
centralized solution is much easier than
any P2P solutions.
Context Broker Architecture
 The key features:
 Sense and reason about contexts on the
behalf of capability-limited agents
 Enable agents to share contextual
knowledge
 Protect the privacy of users
 Maintain consistent contextual knowledge
Acquiring Context Directly
from Sensors
Host Device Host Device

Agent Agent
Context Context
Reasoning Reasoning

Sensor Sensor Sensor Sensor Sensor Sensor

Contexts in the Environment


Facilitated by a Middle-ware
Infrastructure
Host Device Host Device

Agent Agent Agent Agent

Middle-ware Middle-ware
Context Context
Reasoning Reasoning

Sensor Sensor Sensor Sensor Sensor Sensor

Contexts in the Environment


Context Broker Architecture
COBRA
What’s the Implication?
 A single agent has limited capability to
acquire contexts
 Building context sensing and reasoning
mechanisms from the scratch can be
expensive
 Protecting user privacy in a context-
aware environment is critical
Context Broker Architecture
Enterprise Semantic
Servers … Web … DB

Host Device Host Device


Domain
Agent Agent
Context Broker

Context
Agent Reasoning Agent

Middle-ware Middle-ware
……

Contexts in the Environment


Domain Context Broker
 The architecture structures contexts in
a collection of micro-worlds, called
domains.
 E.g. a meeting room domain, a school
domain, a home domain etc.
 In each domain, there is a
 Domain Context Broker (broker)
B
A Broker’s Job is to…
1. Acquire contexts from heterogeneous
sources on the behalf of context-aware
agents
2. Enable agents to contribute to and access a
shared model of context
3. Allow users to use policy to control the
access of their personal information
4. Detect and resolve inconsistent contextual
knowledge
A Conceptual Design of the
Broker

(3) (1) Knowledge Base


(2)
Context
Acquisition Inference
Component Engine

(4) Broker Behavior


(1)
(3) (2)

(1) Knowledge Base (4)

 Ontology: domain ontology, domain


heuristics and privacy ontology
 Context model: information that can
be used to characterize the situation of
a person or an object in the domain
 i.e. identity, attribute, location, activity,
role and intention context
(1)
(3) (2)

(2) Inference Engine (4)

 Ontology Reasoning: deduce facts


that can be inferred from ontology
knowledge (not context)
 Context Reasoning: deduce facts
that are parts of the context model
(context)
 Knowledge Maintenance: detect and
resolve knowledge inconsistency in the
context model
(1)
(3) (2)

(2) Inference Engine (4)

 Hybrid Reasoning Mechanism


 The existing systems use ad-hoc procedures with
deductive reasoning at core to reasoning about
context
 I will attempt to develop a hybrid composition of
logic reasoning (e.g. deduction and abduction),
fuzz logic and statistical analysis (e.g. decision
tree, Bayesian networks etc.) to reason about
context
(1)
(3) Context Acquisition (3) (2)
(4)
Component
 Context Sensors: physical sensors
and virtual sensors
 Context Interpreter:
procedures/rules that translates sensed
data into knowledge that be processed
by the Inference Engine
(1)
(3) (2)
(4)
(4) Broker Behavior
 A collection of protocols that the
broker follows when interact with
context-aware agents
 Privacy Policy Negotiation: the broker
forms agreement with the users before
disseminating their personal info.
 Knowledge Sharing: the broker enables
agents to acquire contexts that are
otherwise not accessible
(1)
(3) (2)
(4)
(4) Broker Behavior
Privacy Negotiation Protocol
Agent Broker User

Request for user contexts

Propose privacy policy

Reject proposal

Accept proposal

Inform user contexts


Propose modification

Propose privacy policy


(1)
(3) (2)
(4)
(4) Broker Behavior
Knowledge Sharing Protocols
Broker Agent Broker Agent

Inform contexts
Request for contexts

Inform contexts
Accept
Refuse
Disagree

Request for contexts Failure

Inform contexts

Informing the broker of Querying the broker for


some contextual knowledge some contextual knowledge
(1)
(3) (2)
(4)
(4) Broker Behavior
Knowledge Sharing Protocols
Broker Agent

Subscribe to some context changes

Subscribe to the broker to be


Agree
notified when context changes
Refuse

Inform context changes

[pre-conditions holds]
A working prototype means…
 COBRA can support:
 Context acquisitions (sensing and
reasoning) from heterogeneous sources
 Knowledge sharing between distributed
agents
 User privacy protection using policy rules
 Knowledge maintenance to resolve
inconsistent and ambiguous contexts
Help to build an extensible Intelligent
Meeting Room means…
 The end system is not “hard-wired”
and “ad-hoc”
 Is built using well-defined protocols,
ontologies, APIs etc.
 Within a reasonable amount of effort, other
developers can use COBRA to enhance or
extend the system functionalities
Comparing COBRA with the existing
architecture means …
 I can show why COBRA is better/worse
than other system architectures
 For example, MIT’s Intelligent Room, GTI’s
Context Toolkit etc.
 But this may not substantial because
 No comprehensive Pervasive Computing
architecture has yet been developed
 What I am proposing to work on is still
relative new research
Scenario: Intelligent Meeting Room

Alice enters a The broker detects The broker negotiates


conference room Alice’s presence privacy policy with Alice

B 

Policy says, The broker builds The broker knows


“can share with any the context model Alice’s role and
agents in the room” intention
Web
B +
A

1 of 2
Scenario: Intelligent Meeting Room

The broker informs The projector agent The projector agent


the subscribed agents wants to help Alice asks slide show info.

B A
B

The broker acquires The broker informs The projector agent


the slide show info. the projector agent setup the presentation

Web
B
B

2 of 2
Summary
 The initial design of Context Broker
Architecture shows great promise in
reducing the difficult and cost of building
context-aware systems.
 COBRA will enable resource-limited agents to
contribute to and access a shared context model
 COBRA will allow users to control the access of
their personal information in a context-aware
environment

You might also like