You are on page 1of 21

Context-Aware Computing

Ubiquitous/Pervasive Computing
• The general trend of computing is to have
devices seamlessly integrated into the life of
users and having services readily available to
everywhere users go
• It is an emerging paradigm to free everyday
users from manually configuring and
instructing computer systems
• Allow us “to do more, by doing less”
Proactive/Autonomic Computing
• Is about building systems that can self-monitor,
self-heal and self-configure (zero
maintenance).
• Human attention devoted to interaction can be
reduced so that users can focus on high-level
tasks
• Both relate to ubiquitous computing and could
use context information from environment and
users to make decisions
Related Concepts
• Ambient Intelligence
– Intelligent interfaces acting in people-responsive
environments
• Sentient Computing
– Use of sensors and resource status data to
maintain and share a model view of the world
• Augmented Reality
• Everywhere Computing
• Physical Computing
• The Internet of Things (...)
Context-Awareness
What is Context?
• Context is that which surrounds, and gives
meaning, to something else
• Context is any information that can be used to
characterize the situation of an entity
– Typically the location, identity and state of people,
groups, computational and physical objects
– May come from disparate sources and has a
relatively transient lifetime
• But historic data about context is important, anyway
Context-Aware Computing
• Not just “deliver any service at any time,
anywhere”, but rather “delivering the right service
at the right moment”
• Mobile computing is introducing the possibility
that the physical and logical context of a user
might influence the behavior of services called for
– Mobile computing decouples function from location
– User location is transparent to function
– Recent trends are extending this concept of context
to include many other facets of the user’s physical
environment
– Many sensors are being added to characterize context
Context-Aware Applications
• Must acquire context information and use it in an intelligent
manner (beneficial to either the service, the user or both)
• In the mobile systems of today this would most likely be expressed
as calls for service from either local or remote service providers
• The mobile user and his device becomes the “service consumer”
• Meaning arises in the course of action, is not inherent in the
technology, but arises from how that technology is used
• This means the designer does not have absolute control, only influence
– Users feel less in control when using context-aware applications
than when personalizing their own applications
• Despite this, context-aware applications are preferred over the
personalization oriented ones
Context Domains
• The situation of any entity is characterized by
using several informations surrounding the
service consumer
• Historical information about any of these might
also be considered
– Can also be deduced from interactions the user has
made with services over time
Contextual Information Samples
• User identity
• Spatial information (location, orientation, speed, acceleration)
• Temporal information (time of the day, date, season of the year)
• Environmental information (temperature, air quality, light or noise
level)
• Social situation (who you are with, people that are nearby)
• Resources that are nearby (accessible devices, networks, hosts)
• Availability of resources (battery, display, network, bandwidth)
• Physiological measurements (blood pressure, heart rate,
respiration rate, muscle activity, tone of voice)
• Activity (talking, reading, walking, running, sleeping)
• Schedules and agendas
Video
Pervasive Computing
Enabling Technologies
• Processing
– Cheaper, smaller, faster, more energy efficient
• Storage
– Big and fast
• Networking
– Global, local, ad-hoc, low-power, high bandwidth, low latencies
• Displays
– Projection, flexible material, low power
• Sensors
– Types, speed, accuracy, price, robustness
• Actuators
– Computer controlled
Design
• Provide Services
– System design: which embedded system? Web
server? Sensors and actuators?
– Naming, registration, discovery
– Physical/virtual mapping
– Mobility management, energy management
– Service composition, I/O matching, adaptation,
environment monitoring
Some More Examples...
• Wearable Computer
– A t-shirt that automatically adjust the ambient temperature
of the room by sensing body temperature
• Ambient Intelligence
– User presence is detected to show email in a nearby
computer. This feature can be coupled with a coffee machine
that senses the user to make coffee according to
preferences, etc.
• Context-Aware Phone
– Only accepts calls that are important, according to user
context
Architecture
Principles of Ubiquitous Computing
• The purpose of a computer is to help you do
something else
• The best computer is a quiet, invisible servant
• The more you can do by intuition the smarter you are.
The computer should extend your unconscious
• Technology should create calm
– Calm technology is that which informs but doesn’t
demand our focus or attention
• A road to Peace through global conscience
Services Tomorrow
Context-Aware Applications Stack

Layers Components Example

Notify user,
Application Application
execute service

Inference Services nearby


Inference object the user?

Semantic processing User’s


Semantic object latitude, longitude

Data processing
Raw data GPS measurements
object

Physical Physical or
User’s GPS
virtual sensor

24
Service Inference Example
OWL-S ontology

Service

owls:subClassOf

hotel:offers Dish
Rooms Hotel owls:subClassOf
hotel
service

owl:subClassOf owls:location
Facilities

DoubleRoom SingleRoom
owl:subClassOf Location

Dinning Swimming
facility pool loc:latitude loc:longitude

owl:subClassOf
xsd:double xsd:double
Hotel ontology Restaurant SnackBar
Location ontology
Abstract Layered Architecture for
Context-Aware Systems

applications Acting Subsystem

storage/management
Thinking Subsystem
preprocessing/reasoning

raw data retrieval


Sensing Subsystem
sensors
Research Issues
• Context Modeling & Reasoning
– How to build representations of context that can be
processed and reasoned about by the computers
• Knowledge Maintenance & Sharing
– How to maintain consistent knowledge about the context
and share that information with other systems
• User Privacy Protection
– How to give users the control of their situational
information that is acquired from the hidden sensors

You might also like