2. CONTEXT:
Context is defined as the inter-related condition in which
something exist and occur.
Context is the surrounding environment, location, or situation
which determine, specify the meaning of the event.
Context is any information that can be used to characterize the
situation of an entity” Entity: person, place, object that is
considered relevant to interaction between a user & an
application, including the user & application themselves.
3. “Context is the set of environmental states and settings that
either determines an application’s behaviour or in which an
application event occurs and is interesting to the user.”
CONTEXT:
4. Context as Implicit Input/Output
Context-Aware
System
explicit
input
explicit
output
Context:
• state of the user
• state of the physical environment
• state of the computing system
• history of user-computer interaction
•...
7. Context Awareness:
Context awareness is the term that describe the ability of
the computer system to sense and act upon the
information about its environment such as, Location,
Time, Temperature or User Identity.
Context Awareness enable the system to take action
automatically, and Reducing the burden of the excessive
user involvement & provide proactive intelligent
assistance.
8. Context-Aware Systems
A user has left
his office
The system forwards
the call to a nearby
phone
The system detects
his current location
Calls are forwarded to
his voice mailbox
A Call-forwarding System
The system detects the
user is in a meeting
The phone rings
in his office
9. User-Related: Context Awareness
• Who: Deals with identifying current user and
object recognition.
• Where: Deals with location identification of
user, object, service, …
• When: Deals with temporal aspects of past,
present & future.
• What: Deals with identifying activities of user
or object.
• Why: Deals with subtle context such as
user's need, emotion, …
10. Categories of context awareness:
Active Context Awareness :
• Influence the behaviour of the application.
• Active Context Awareness automatically
changes the behaviour of the application
behaviour according to the Sensed
information.
• Example: Automatically press breaks of car
when it sense the obstacle in front of the car.
12. • Context that is relevant but
not critical.
• Passive Context Awareness
presents updated context or
sensor information to the
user and lets the user to
change the application
behaviour.
• Example: Reports the
position of the moving car
into the map.
Passive Context Awareness:
13. Pervasive Computing
Pervasive computing also called as Ubiquitous
computing.
The word Pervasive or Ubiquitous means: “
Existing Everywhere”.
Pervasive Computing is the growing trend
towards embedded Microprocessor in every
day object so, that they can communicate
information.
14. Context Aware Computing
Let computer systems sense automatically, remember
history, and adapt to changing situations
Reduced explicit interaction, more responsive.
Context.
Context Awareness.
Situation.
15. Structure & Elements of Context Aware
Pervasive Systems
A Context-Aware Pervasive System can be viewed as
having three basic functionalities:
Sensing,
Thinking (metaphorically)
Acting
16. Sensing
What are Sensors?
Biological or Non biological Sensors - to acquire data or information about
the physical world or some aspect of the physical world.
Multiple Sensors can also be used
Treated as input
What Info can be sensed ?
Types of Sensors
Upcoming Technology - RFID
17. Thinking
Knowledge about the context or situation of the
entities.
Once the data is obtained using the collection
of sensors. The task is to utilize such data and to
make sense of it on the basis of definition of
sensors.
18. Acting
Once context information has been gathered or situations recognized,
actions are taken.
The actions to be taken are application specific.
Actions might need to be performed in time for it to be of use to the users,
and before the situation which triggered the action changes.
Considerations
Performance.
Control.
20. Sensors
Physical sensors
sensor, camera, microphone, accelerometer, GPS,
biosensors, etc.
Virtual sensors
From software: browsing an electronic calendar, a travel
booking
system, emails, mouse movements, keyboard input, bandwidth,
etc.
Logical sensors
Combination of physical and virtual sensors with additional
information (e.g. context history) from databases
21. • Raw data retrieval
Drivers and APIs
Query functionality
Exchangeable
• Processing
Reasoning and interpreting
Extraction and quantization
Aggregation and compositing
• Storage/Management
Public interface to the client
Synchronous (pull/polling) and asynchronous (push/subscription)
• Applications
Actual reactions on different events
22. Human to Human
communication
Situational
information such as
facial expressions,
Emotions,
Voice tone
Past and future
events,
The existence of other people in
the room
The process of building this
shared understanding between
two people is called grounding .
Need For Context Aware (CA) Computing
23. Human and
Computer
communication
Following Tasks can’t be easily done by Computers :
Understanding and Interpreting our language
• We need to be very specific about giving commands
• OR asking for information
Cannot sense information about the current situation
• Sensing Facial expression
• Presence of other people near by.
Need For Context Aware (CA) Computing
24. Context, critically required in Ubicomp Environment .
Mobile computing and ubiquitous computing have given users the expectation
that
they can access whatever information and services they want, whenever they
want, and wherever they are.
With computers being used in such a wide variety of situations, interesting new
problems arise, and the need for context is clear: users are trying to obtain
different information from the same services or systems in different situations.
Context can be used to help determine what information or services to make
available or to bring to the forefront for users.
Need For Context Aware (CA) Computing
25. Need For Context Aware (CA) Computing
Input deficiency is resolved, by two basic approaches:
Improving the language that humans can use to interact with Computers
Increasing the amount of situational information, or context, that is made
available to computers
Need for explicitness does exist in human–computer interactions, because the
computer does not share this implicit situational information or context
The goal of context-aware computing is to use context as an implicit cue to
enrich the impoverished interaction from humans to computers, making it easier
to interact with computers.
26. Context Aware Applications
“A system is Context-Aware if it uses context to provide
relevant information and/or services to the user, where
relevancy depends on the user’s task.”
E.g. Smart Phones screen goes Brighter when exposed to
light ( using photo sensors), And goes dimmer on low
battery .
Some of the
context
Aware Apps
For Android
28. Context Aware Applications
Context-aware applications look at the
– who’s,
– where’s,
– when’s, and
– what’s (i.e., what activities are occurring)
of entities and use this information to determine why a situation is occurring.
An application does not actually determine why a situation is occurring, but the
designer of the application does.
The designer uses incoming context to determine the user’s intent, or why a
situation is occurring, and uses this to encode some action in the application that
helps to satisfy this intent.
29. Categorization of features CA Applications
Two Major Benefits of Categorization of features
The first is that it further specifies the types of applications that
researchers provide support for.
The second benefit is that it describes the types of features that
developers should be thinking about when building ContextAware
applications.
30. Approach to Context-Aware
Application Development
To collect implicit contextual information through automated
means ( using Sensors , Camera etc .)
Make it easily available to a computer’s runtime environment,
And let the application designer decide what information is
relevant and how to deal with it.
31. Properties of Context Aware “Model/Framework”
Adapt interfaces ( Context sensing and acquisition )
Increase the precision of information retrieval,
Tailor the set of application-relevant data ( Processing, aggregation
and reasoning of contextual data )
Context modeling, representation and storing,
Context-Aware application adaptation,
32. Properties of Context Aware “Model/Framework”
Integration of Context-Awareness into Service-Oriented
Architectures.
Security and privacy of Context data,
Discover services
2G , 3G or Wifi connect to best of available.
Make the user interaction implicit, or build smart environments.
33. Example (Google Latitude)
Uses the following ways to locate exact position on Earth
– Global Positioning System
– Tower Signal INFO
– IP address, If wifi connnected .
– Digital Compass Signal To show the direction.
Context
– Location
– Time
It also shows your Friends location on map, if they are using same application
and sharing location
35. Example (Bump)
Bump two phones together to share
– Photos
– contacts
– apps
Without knowing Email id / IP address.
Bump makes sharing with people as simple as
bumping two phones together.
Context Collected via
– Vibration/motion sensor
– Location detectors (for verification)
Time is most important as context.
36. Issues and Challenges
Errors Occurredbecause of wrong interpretation of
Context :
When the system does the wrong thing
– Auto-locking car doors
– Screen saver during presentation
– Microphone amplifying a whisper
In these examples, is the system or the user at fault?
37. Issues and Challenges
Challenges in Context-Aware Computing
–How to represent context internally? (Storage)
–Data structures and algorithms
–How frequently does the system need to be updated on context
changes?
–How often to poll? ( in case limited power )
–How often to change behavior?
–What sensors infrastructure, or sensors are necessary?
–What is the fallback condition?
–How to sense location information?
38. Issues and Challenges
• Issues to Consider when Building Context-Aware Applications
– Context Is a Proxy for Human Intent
– Context Inferencing
• is the act of making sense of these input data from sensors and other sources,
to determine or infer the user’s situation.
– Context Ambiguity
– “Rules” versus “Machine Learning”
– Privacy
– Evaluation
– End User Issues
• Understanding of Application’s behavior
• How much control on application user should have