You are on page 1of 39

BITS Pilani

Hyderabad Campus
Pervasive Computing
Context Aware Systems
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
• Introduction
• Modelling Context Aware Systems
• Mobility Awareness
• Spatial Awareness
• Temporal Awareness
• ICT System Awareness
Overview
2
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
Context aware systems are systems that are aware of their
situation.
• in their physical, virtual (ICT)& user environment.
• Can adapt the system benefiting from knowledge of that
situation.
Introduction
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
• A context represents the state or situation in the
environment of a system that affects that system’s
behaviour
• Context is any information that can be used to
characterize the situation
• There are several dimensions or properties to
characterise context.
• There are many definitions of how to make systems
aware of changes in their context: context awareness
• Context-awareness (CA) is considered to be one of the
fundamental properties of UbiComp systems and is a
key property of smart environments.


Context
4
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
• Collision detection
• Spatial awareness
• Temporal awareness
• Personalised systems.
• Context presentation
• Context tagging
• Context filtering
• Context based task activation
CA applications
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
Context types
6
Smart (Physical) Environments
Physical
Environment
Devices
Context-aware
Physical
Environment
Context Types
CPI
Structure
Human ICT
Location-
aware
GIS
Location
Sensor
or Tag
Device
Display
Content
adaptation
Mobile
aware
Personalisation
Time-
aware
Self-aware
iHCI
Homogeneous
Single
Attribute
Multiple
Attribute
Life-Cycle
Single
Multiple
Heterogeneous
Control
Sense
Adapt
Active
Passive
Operation
Acquire
User
Acquire
Env.
Manage
Present
Process
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
Environment
What:
• Type of physical environment awareness of temperature, light intensity, chemical etc
Where:
• Spatial awareness or location awareness
When:
• Temporal awareness
ICT Environment
How:
• ICT awareness: awareness of how any context is created and adapted over an ICT
infrastructure.
User Environment
Who:
• User context awareness, Personal Preferences, personal identity context,
• User Activity or Task Context
• Social (User) Context
Goal context
Why:
• User or application goal
• Context Adaptation:
Classification of Context
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
• Data structures used to model contexts
• Key-Value pairs
• Simple, flat, data structure
• Easy to manage
• Uses exact matches, lacks expressive structuring,
• Markup Schemes, e.g., XML
• XML Web services are becoming pervasive;
• Graphical
• Graph data structures and richer data types,
• Object Oriented (o-o)
• Context processing is encapsulated
• Logic Based:
• Support reasoning about context
• Strong formalism
• Ontology
• A combined expressive conceptual model with a logic
• Expressive structuring, handling heterogeneity.
Context Representations
8
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
Simplest type of context-aware system
Uses the current context, the current state, episodic, environment
Operates in an environment that is fully observed and deterministic
But context history can also be used

Use of Current Context vs. use of Context History
9
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
• Context determination: acquisition, accuracy particularly
of user context can be complex
• Active versus passive context acquisition
• Single shot (static) versus dynamic acquisition
• Heterogeneous context representation (syntax) and
semantics, interoperability
• Context distribution: Local context producer but remote
context consumer
CA Design issues: Context Determination
10
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
• User Contexts may be incorrectly, incompletely, imprecisely
determined or predicted, ambiguous
• Environment Contexts may be incorrectly, incompletely, imprecisely
defined, determined or predicted.
• Contexts may exhibit a range of spatial-temporal characteristics
• Contexts may have alternative representations
• Contexts may be distributed and partitioned, composed of multiple
parts that are highly interrelated
• Contexts may generate data huge volumes
• Context sources and local processes often need to embedded in a
low resource infrastructure
• Context use can reduce the privacy of humans
• Awareness of context shifts can distract users
CA: Challenges
11
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
• Combine several low-level sensor inputs to better infer
user context,


• Can Query user profile or model: abstraction that
characterises the user, preferences the user expresses,

• Ask users to define their own context.

• Observing user interaction


User Context Determination
12
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
Static environment context
describes aspects of a pervasive system that are invariant, such as a person’s date
of birth


Dynamic environment context:
refers to a user or an environment context. These contexts can be highly variable
over space and time, e.g., temperature.


Static versus Dynamic CA
13
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
• New contexts can be created from sensors.
• user contexts derived from simple contexts by
• Combining several simpler contexts
• Combining homogeneous contexts
• Combining heterogeneous contexts
• Deriving high level context from lower level ones
• Deriving a lower level context from a higher level one

Context Creation and Context Composition
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
• Capture Physical Context
• Capture User Context
• Context Processing
• Adapt to Context
• Manage contexts




CA: Life-cycle
15
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
General architecture for CA systems
16
Configuration
Actuators
Sensors
Environment
Abstraction
Display
User Tasks
Events
User
Context
Context
Store
Store /
Retrieve
Annotated Content
Adapted
Context
Control
Adaptation
User – Env
Context
Mediation Env Context
Composition
Context Processing
& Adptation
Environment (Env)
Context Creation
Non-adapted
Context
Access
Control
Annot-
ation
Context Management
Application
User Context
Creation
Context
Control
Access
Context Filter
Policies
Context
Discovery
Discovery
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
• Acquisition of user context: this can be derived from
user’s application tasks


• Policy creation: created from user’s tasks to determine
how a user context is mediated by environment contexts


• Encapsulation and abstraction: of the user context

• Sharing the user context so that it can be distributed and
accessed.

User Context Creation
17
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti

• Acquisition of user contexts
• such as human user identity, stereotypes and personal prefer
ences
• can be acquired directly or indirectly from user interaction.
• Encapsulation and abstraction
• enable the context to be accessed via a published interface;
harmonize heterogeneous context values into a common
representation;
• convert between different representations and structures for the
same type of context.
• Filtering:
• consider events within a certain range that adhere to defined
context constraints or policies.

Environment Context Creation / Capture
18
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
• Context composition:
• An application may govern the use of multiple environment
contexts
• Mediation:
• multiple environment contexts are linked and interrelated.
• Adaptation:
• passive or active or control:
• Passive (or Presentation): environment context is used as
a constraint to select or query information from an
application or user context
• Active (or Automatic): The application or user context
adaptation automatically adapts to the environment
context.
• Control: the user context may be used to control the
environment.


Context Processing
19
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
• Context composition may also be driven by the need to:
• Improve acquisition accuracy for the context

• Improve filtering and adaptation of content

• Composite contexts are in inherent an application

Context Composition: Motivation
20
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
• Handling heterogeneity of representation
• Handling heterogeneity of meaning
• Mediating and coordinating context aggregation
• Ordering the adaptation to individual contexts
• Different weightings for combining contexts
• Handling uncertainty in combining contexts
Context Composition: Challenges
21
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
• Context-aware systems may depend on & combine:
• multiple representations for a single context
• multiple representations of multiple contexts

• Multiple representations determined independently by different
applications and users
• Determination of a proposed joint context for meeting can be
complex
• Challenge here: to harmonize or standardize annotation so that they
would be consistent used by all users.
• Security, e.g., access control could be useful in certain applications
to protect privacy or to limit access,



Context Composition, Heterogeneous Contexts & Interoperability
22
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
• Discovery:
• Directory services enable context sources, stores and users to
be registered and discovered.
• Storage:
• of context data into some data resource
• may include history based organization of the stored context
• Sharing
• of environment and goal contexts

• Access control:
• protects the privacy of any context information
.

Context Management
23
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
• Passive context adaptation system
• Context is presented to users
• Context-based tagging
• System is not active in terms of adapting
• Active context-adaptation system
• Adaptation to context performed by the UbiCom system, not human users.
• Hybrid context adaptive system
• Human user guides or corrects the automatic adaptation
Context Adaptation: Passive vs Active
24
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
• Many useful Applications:

• Reduces information overload on users

• Lessen cognitive load on users

• Filter information to fit a mobile device's limited and
physically moving display,

• Disabled people

• Improve Regulation & Control

Context Adaptation Benefits
25
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
• User Contexts may be incorrectly, incompletely,
determined or ambiguous
• Environment Contexts may be incorrectly incompletely,
determined or ambiguous
• Contexts may exhibit a range of spatial temporal
characteristics
• Contexts may have alternative representations
• Contexts may be distributed and partitioned, composed
• of multiple parts that are highly interrelated.
• context awareness may generate huge volumes of data
• may need to be embedded in low resource
infrastructures
• Context use can reduce the privacy of humans

Challenges in modelling contexts
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
• The UI context can be defined in a UI device profile.
• There are several different specifications for
representing the UI profile.

UI Context Representation
27
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
• Needed to adapt content for display
• Much content designed for decimetre sized screens:
• But what if displayed on small displays? e..g, mobile phone
• But what if displayed on large screens? e.g., projectors,
• Need Content adaptation this involves:
• Transformation of the created content representation to a different one used in
the access device,
• Adaptation of the (multimodal) interaction
• Adaptation to use a particular device display convention
• Adaptation of the content itself.
Content Adaptation
28
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
• A service that is aware of the characteristics of the
physical network is called underlay-network aware

• Enhancements are needed to TCP/IP network design to
support more flexible context-aware QoS delivery.

Content Adaptation: Network-Aware
29
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
• Mobility context awareness is a good example of
composite context adaptation.
• Spatial awareness is used to adapt activities with respect
to their locality.
• Information retrieval from remote sources can be
personalised to users’ preferences.
• ICT context-awareness is useful for mobile users so that
it adapts remotely accessed content so that it fits better
the characteristics of mobile access devices and better
fits the bandwidth available in the local wireless access
loop.

Composite CA for Mobile Users
30
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
• Navigation
• Automatic annotation of local recordings in the field

• Filtered content for mobile users



Composite CA for Mobile Users: Applications
31
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
Context Composition Example: CRUMPET Project System
32
Persona interests
l
Users
Terminals
Service Providers
Terminal
profile
Network
Link description
Service
capabilities
User
preferences
User
position
Interaction
& Service
Facilitation
Mediator
GPS
e.g., maps, routes, sight and
restaurant recommendations
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
• CRUMPET, Creation of User-friendly Mobile
services PErsonalised for Tourism, a composite
context adaptation application.
• In this system, tourism information services
such as maps, routes and sight
recommendations can be adapted to a spatial
context that pertains to the current location, the
personal context of a service uses, the network
context and the terminal context,
CRUMPET Project System
33
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
The CRUMPE T System
34
My IP address
and port are...
Ok, here are your nearby
points of interests.
Components:
• Map of the “world”
• Diagnostics information
• Client status (Agent and network status)
• Points of interests
Map components:
• Map of the
nearby “world”
• Start/Edit tour
• Status bar with
proactive “bulb”
Here is my
new location.
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
`
CRUMPET Multi-Agent System Architecture
35
End user
Services
User
agent
Mediator
Agents
Service
agents
Service
agents
Network
agents
Client /
Terminal
Agent
Context-aware
Middleware
Network
Network
agents
Fixed Network Services
Access
Node
Mobile
Device
wireless
Web Browser
GPS
Contet Adaptation
Service Agent Location agent
User modeling agent
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
• Handling heterogeneity of representation
• Handling heterogeneity of meaning
• Mediating and coordinating context aggregation
• Ordering the adaptation to individual contexts
• Different weightings for combining contexts
• Handling uncertainty in combining contexts
Composite Context Awareness- challenges:
36
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti

Dillo
CRUMPET Services
Fixed Network
Service Provider
Service Provider
Service Provider
Wireless Station
CCA
MA
UMA
SCA
MAPA
CA
DCA CASA
CA
GSA
TA
SA
Satellite
MA
WMTP - full control over wireless link
Agent processing -
complete control over GSM
triangulation, GPS and browser
Wireless Station
CRUMPET System: Fat-client Architecture
37
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti
CRUMPET System: Thin-Client Architecture
38
Fixed Network
HTTP
Service Provider
Service Provider
Service Provider
Wireless Station
CCA
MA
UMA
SCA
MAPA
CA
DCA CASA
GSA
TA
SA
Satellite
HTTP - no control over link
JAVA process -
very little control
over GPS and browser
ExplorerCE
CRUMPET Services
Wireless Station
BITS Pilani, Hyderabad Campus
Content partially based on Resources Stefen Poslad kcs murti