Context Aware Computing - PowerPoint PPT Presentation

About This Presentation
Title:

Context Aware Computing

Description:

User context: user profile, location, nearby people, social situation, activity, ... Where to find them relative to your location in the store. What is on sale ... – PowerPoint PPT presentation

Number of Views:598
Avg rating:3.0/5.0
Slides: 54
Provided by: csBing
Category:

less

Transcript and Presenter's Notes

Title: Context Aware Computing


1
Context Aware Computing
2
First Paper
  • I used mostly A Survey of Context-Aware Mobile
    Computing Research, Chen and Kotz, Dartmouth
    (Tech Report) instead of Schilits paper (which
    is the original paper coining the term)
  • Context-aware computing
  • Mobile computing application that can discover
    and take advantage of contextual information
  • A first step towards ubiquitous computing?
  • What is contextual information?
  • Example user profile, location, time,
    temperature, nearby people or facilities,
  • Instead of adapting systems and applications to
    mobility so that mobility is hidden, explore and
    support new mobile aware applications

3
(No Transcript)
4
Part I Definitions/Taxonomy
5
Defining Context
  • Dictionary definition the interrelated
    conditions in which something exists or occurs
  • One definition Schilit
  • Computing context connectivity, communication
    cost, bandwidth, nearby resources (printers,
    displays, PCs)
  • User context user profile, location, nearby
    people, social situation, activity, mood
  • Physical context temperature, lighting, noise,
    traffic conditions
  • Authors add Time context (time of day, week,
    month, year)
  • Context history can also be useful

6
Context (contd)
  • Is all this information necessary?
  • Context is the set of environmental states and
    settings that either determines an applications
    behavior or in which an application event occurs
    and is interesting to the user
  • Active context influences the behavior of the
    application
  • Location in a call forwarding application
  • Passive context context that is relevant but not
    critical
  • Active map application display location name and
    other people in the room
  • Is all this information measurable?
  • Temperature? Location? People around? Social
    situation? Mood?

7
Context-Aware computing
  • How to take advantage of this context
    information?
  • Schilits classification of CA applications
  • Proximate selection user interface where nearby
    objects are emphasized/made easier to choose
  • Automatic contextual reconfiguration a process
    of adding/removing components or changing
    relationships between components based on context
    change
  • Contextual information and commands produce
    different results according to the context in
    which they are issued
  • Context-triggered actions rules to specify how
    the system should adapt
  • Are these fundamental/inclusive?

8
Alternative Taxonomy Pascoe,Dey
  • Pascoe Taxonomy of context-aware features
  • Contextual sensing how to determine the context
  • Contextual resource discovery
  • Contextual augmentation how to associate data
    with the context
  • Dey maps to services for CA apps
  • Presentation of information/services to users
  • Execution of services
  • Tagging of context to information for later
    retrieval

9
Authors classification
  • Follows from the definition of context
  • Active Context Awareness an application
    automatically adapts to discovered context by
    changing the applications behavior
  • Passive context awareness an application
    presents the new or updated context to an
    interested user or makes the context persistent
    for the user to retrieve later

10
Part 2 Survey of Context-aware Applications
11
App. Survey
  • 10 applications surveyed, chronologically
    ordered
  • We will look at a few
  • Try to notice common threads
  • Our second paper is a detailed look at one of
    these applications

12
PARCTab System
  • Characteristic
  • From Xerox Palo Alto Research Center
  • 12 applications
  • Applications
  • Active Map
  • Location information
  • (Room number)
  • The others
  • Some helps the user find the most convenient
    local resources
  • e.g. nearest printer
  • An application makes ParcTab as a remote control

Figure ParcTab Terminal
13
Active Badge System
  • Characteristic
  • From Olivetti Research Lab in 90s
  • One of the first context-aware systems
  • Office personnel wear badges (IR signal)
  • Applications
  • Call Forwarding

Figure Locations of the office personnel with
badges
14
Call Forwarding
  • Location of employees is shown to receptionist
  • Receptionist forwards calls to the nearest phone
  • Eventually, receptionist was removed from the
    loop calls forwarded automatically
  • Is this a good idea?
  • What if you were in an important meeting? (or
    taking a nap!)
  • What if a private call is forwarded to a non
    private room?
  • Context-aware communication
  • What is the context?
  • What about an active map application?

15
Mobisaic Web Browser
  • Extend browsers to refer to dynamic contextual
    information
  • Dynamic URLs with contextual/environment
    variables
  • Variables get bound to current context when the
    URL is referenced
  • Also support active documents
  • As the context changes, the document is
    automatically updated
  • What types of context can be useful here?
  • Active or passive?

16
Shopping Assistant
  • Scenario you are at home depot trying to figure
    out what you need to finish your basement
  • Shopping assistant can
  • Tell you what parts you need
  • Where to find them relative to your location in
    the store
  • What is on sale
  • Do comparative pricing
  • Use your previous profile information to
    customize shopping and delivery
  • What context? Active/passive?

17
CyberGuide
  • Characteristic
  • From Georgia Tech
  • Provide information services to a tourist
  • Direction
  • Background information
  • Travel diary (automatically recorded)
  • Indoor and Outdoor Version
  • Indoor
  • Using IR (infrared)
  • Outdoor
  • Using GPS

Figure Outdoor Cyberguide Screenshot, etc.
18
Augmented Reality
  • Users view of the real world is augmented with
    additional information
  • Scenario 1 you wear sun-glasses with a display
    and headphones and walk in downtown Rome
  • As you move around, the glasses can tell you your
    location
  • As you look at the coliseum you get information
    about it
  • Scenario special ops squad infiltrating an enemy
    complex wearing the same gizmos
  • In addition to information as above, the glasses
    change to night vision if lighting is not
    sufficient
  • Context?

19
GUIDE
  • Developed in Lancaster University
  • For Lancaster City visitors
  • Using WaveLAN as communication infrastructure
  • A tourist comes to a region(cell), then he
    receives information of the region.
  • Information provided using
  • Fujitsu TeamPad 7600 portable PC
  • Java based http browser

Screenshot of GUIDE
20
Adaptive GSM phone/PDA
  • PDA notepad application changes its
    characteristics depending on user activity
  • Large font when walking, small font when
    stationary
  • Change the intensity level depending on the
    lighting conditions
  • Phone decide ring volume or vibration depending
    on situation
  • In hand, in a suitcase, on a table, in a
    classroom/conference?
  • What is the context?

21
Conference Assistant
  • Assistant checks out conference schedule and
    users interest to highlight which presentations
    should be attended
  • Automatically present speaker names, title of
    paper/other relevant info
  • May record slides, audio, questions, take notes
    and tag them with the appropriate place in the
    talk for later retrieval

22
Location Aware Information Delivery
  • Generate reminders to users as they enter
    locations
  • Voice synthesis used to generate audio reminders
  • Sorry, dear, I forgot is going to become
    obsolete?
  • Several projects (MIT, Stanford, GaTech)
  • CyberMinder (GaTech) uses a complex context
    including nearby people, weather conditions
  • But what is the basic context needed here?

23
Observations
  • Human-Computer interaction can be improved with
    context info
  • Intelligent applications? AI?
  • Focus on simple context(s) e.g., location,
    identity, time
  • Why arent other contexts used more heavily?
  • Not that useful?
  • Difficult to sense/model?
  • Need more imagination?
  • A natural consequence of these being mobile
    applications?
  • No killer app
  • little gizmos of limited use
  • Still to come?

24
StartleCam
  • From MIT Media Lab
  • Composed with
  • Wearable video camera
  • Computer
  • sensing system
  • Save Image when the
  • wearer is interested
  • By sensing skin conductivity signal

Figure StartleCam System
25
Sensing Context
26
How to sense the context
  • Sensing Location Use Global Positioning System
    (GPS)
  • Some info http//www.cmtinc.com/gpsbook/index.htm
  • GPS determines the distance by measuring the time
    it takes a signal to propagate from Satellite to
    receiver
  • Need to have very good synchronization of clocks
  • Receive signal from three satellites to determine
    location
  • Need a fourth satellite to estimate elevation
  • Satellite GPS accuracy is getting reasonable
    (10-20 meters)
  • Sub-meter accuracy possible with differential GPS
  • But what to do indoors?

27
Indoors
  • GPS doesnt work because the satellite signal is
    weak or reflected (lowers accuracy)
  • Need to build our own location tracking system
  • difficult problem
  • Use ideas similar to GPS compute distances from
    known locations that send beacons

28
Location Tracking
  • We will look at the Bat system from ATT labs (as
    part of our second paper)
  • Cricket (MIT, Mobicom 2001)
  • RF and ultrasonic signals sent from each
    basestation
  • Mobile estimates distance by time interval
    between the two signal arrivals
  • Accuracy within a few feet
  • RADAR (Microsoft) and other efforts
  • Measure signal strength (or SNR) to estimate
    distance
  • A set of static receivers track positions of
    transmitters
  • They are queried for location

29
Guide System Location Tracking
  • Cellular system with base stations at areas of
    interest
  • Non-overlapping cells
  • Coarse Granularity Location
  • You only know what area you are from by knowing
    the basestation that you are in range of
  • Cells not overlapping can lose track of location
    completely

30
Sensing other low level contexts
  • Time?
  • Physical sensors possible
  • Light, acceleration, tilt, sound, temperature,
    pressure, proximity of humans
  • Nearby objects?
  • If system keeps track of location of objects,
    query to a database
  • Bandwidth? Odyssey
  • Orientation?
  • Orientation sensor based on two mercury switches
    (Newton MessagePad)
  • Directional antennas/directional transmitters?

31
High Level contexts
  • This is by far the more difficult problem
  • Not just an engineering challenge
  • Psychology, sociology, ??
  • How does a node know whether this is a party or a
    wake?
  • Check your calendar or detect the cake/coffin?

32
Sensing Context changes
  • Publish subscribe model?
  • Monitor polls the current context
  • Notifies subscribers to the context
  • Centralized or on a per-node?
  • Polling rate is a function of rate of change of
    context

33
Modeling Context Information
34
Location Model
  • How do we answer questions such as
  • Given an object what is its location
  • Given a location, return the set of objects there
  • Determining paths between locations
  • How does a vehicle navigation system do it?
  • Geographical Information Systems/Spatial
    Databases
  • Already pretty mature (part of Oracle, mysql,
    etc..)
  • Model geometry and topology
  • Typically locations are organized hierarchically
  • Sonal Dedhias project

35
Security and Privacy Issues
  • I personally hate the idea that someone can know
    my location all the time
  • I still refuse to get a cell phone, but it looks
    like I will finally cave in!
  • Par for the course, many of these systems ignore
    privacy and security issues

36
Second Paper
  • The Anatomy of a Context-Aware Application Andy
    Harter, Andy Hopper, Pete Steggles, Andy Ward and
    Paul Webster. ATT Labs, Cambridge, UK (cont)

37
Overview
  • Paper describes the system components necessary
    to support a context-aware application
  • Location system
  • Data model
  • Distributed object model
  • Resource Monitors
  • Spatial monitors
  • Working system, real details
  • So what is the application? Teleporting/follow-me
  • Application follows you as you move around a
    building
  • Hmm!! Virtual dog?
  • Definitely some gaming applications
  • But what else? Virtual nanny?
  • Framework not specific to this application

38
Location System
  • Would like
  • Fine grained (accurate in space)
  • High update rate (accurate in time)
  • Inexpensive
  • Works indoors
  • Argue for ultrasonic
  • Optical expensive detectors line of sight
    limitations
  • GPS dies indoors
  • RF multipath

39
Bat Unit
  • Radio transceiver, ultrasonic transducer and
    control logic
  • Each bat has a GUID
  • Base station transmits a periodic message with
    the GUID corresponding bat responds with
    ultrasound
  • Use speed of sound in air (estimated from ambient
    temperature) to estimate location
  • Ultrasonic receivers detect the delay and map it
    to distance
  • Use multiple receivers to get 3D location using
    multilateration
  • Reflections of ultrasonic waves statistical
    outlier elimination (can same techniques be
    applied to RF multipath?)

40
Bat (contd)
41
Bat Unit (cont.)
  • It takes 20 ms between bat readings 50
    timeslots per base station per second
  • Allow echos to die
  • Location can be used to measure orientation
  • Attach many bats to the same object. Use the
    measurements to infer the orientation
  • If too cumbersome, can check shadow of a single
    bat
  • Base station can provide Location
    Quality-of-service to allocate time slots to bats
    based on the expected update frequency
  • Bats carried by people few times a second
  • Bats attached to workstation once every few
    minutes

42
Bat Unit (cont.)
  • Bats perform handover when moving from one base
    station to another (similar to the cellular
    networks)
  • Hand off decisions can also be made based on the
    Bat location
  • Battery consumption is low, power consumed
    depends on the update frequency and power state
  • Several updates a second several month lifetime
  • 95 of samples within 9cms of actual location
  • 95 of samples within 25 degrees with multiple
    bats within 70 degrees for a single bat
    (orientation)
  • Bat is good enough to be used as a 3D mouse it
    has buttons and can communicate with basestation

43
How well does it work?
44
Modeling the environment
  • Detailed model describing entities in the real
    world and their possible interactions
  • Environment consists of real objects should use
    OO modeling (agree?)
  • Modeling language based on entity relation
    diagrams and multiple inheritance
  • Modeled people, computers, keyboards, monitors,
    networks, telephones and furniture
  • Use CORBA and databases to implement persistent
    distributed objects

45
3 Tier Architecture
46
Populating and Updating the Model
  • Some elements are static (e.g., furniture)
  • but some are dynamic (e.g., is a keyboard in
    use)
  • need to be updated automatically
  • Centralized data repository (to optimize
    information access)
  • Three classes of resource monitors
  • Machine activity e.g. keyboard activity
  • Machine resource e.g. CPU usage, memory usage
  • Network point-to-point bandwidth and latency

47
Client level event filters
  • Update Frequency
  • The frequency at which items are monitored is
    based on how quickly the item tends to change
  • Relevancy
  • If a value has not changed significantly, it is
    not sent. This value depends on the data being
    monitored
  • Caching
  • Caching improves performance at the cost of
    consistency

48
Location Update
  • Each Bat location is tracked
  • Translated into object location in a type
    specific way (e.g., person different than
    workstation)

49
API
  • Absolute and relative spatial facts
  • Person is at (x,y,z) facing in direction ? .vs.
    Person is standing in front of the monitor
  • Geometric containment is used for relative
    spatial facts

monitor
person
Contained(person, screenspace)
50
Reasoning about Space
51
Scalability
  • With many devices, containment is complex
  • They use containment tree indexing system (a
    quad-tree based approach)

52
Implementation
  • BAT teleportation system
  • With their earlier active badge based
    teleportation system, they only knew that a user
    was in the room and so they had to cycle between
    multiple displays in a room
  • If a particular display was being use, they would
    still cycle that display because they did not
    monitor machines
  • If a machine is dead, their system would still
    wait because they did not monitor machines
  • With the BAT system, they have more accurate
    location information
  • Event driven programming style

53
Zones and Buttons
Action
monitor
Maintain
  • Action zone triggers teleportation
  • Within maintain zone, teleported desktops are
    maintained
Write a Comment
User Comments (0)
About PowerShow.com