12
CPET 565 Mobile Computing Systems CPET 565 Mobile Computing Systems Context-Aware Computing (2) Context-Aware Computing (2) Lecture 11 Lecture 11 Hongli Luo Hongli Luo Indiana University-Purdue University Fort Wayne Indiana University-Purdue University Fort Wayne

CPET 565 Mobile Computing Systems Context-Aware Computing (2) Lecture 11 Hongli Luo Indiana University-Purdue University Fort Wayne

Embed Size (px)

Citation preview

CPET 565 Mobile Computing SystemsCPET 565 Mobile Computing Systems

Context-Aware Computing (2)Context-Aware Computing (2)

Lecture 11Lecture 11

Hongli Luo Hongli Luo Indiana University-Purdue University Fort WayneIndiana University-Purdue University Fort Wayne

Context-Aware ComputingContext-Aware Computing IntroductionIntroduction Ubiquitous or Pervasive ComputingUbiquitous or Pervasive Computing Definitions and Types of ContextDefinitions and Types of Context Context-Aware Computing and Context-Aware Computing and

ApplicationsApplications Middleware SupportMiddleware Support SummarySummary

Middleware SupportMiddleware Support Challenges - Context-aware applicationsChallenges - Context-aware applications

1.1. Context-aware applications need support for the Context-aware applications need support for the acquisition and delivery of context dataacquisition and delivery of context data

2.2. Contextual info – from various heterogeneous and Contextual info – from various heterogeneous and distributed sources distributed sources

3.3. Same type of contextual info may have to be Same type of contextual info may have to be obtained from different sources at different timesobtained from different sources at different times

4.4. The low-level contextual info must be abstracted to The low-level contextual info must be abstracted to be usefulbe useful

5.5. Context-awareness is most relevant when the Context-awareness is most relevant when the environment is highly dynamic (mobile)environment is highly dynamic (mobile)

Middleware SupportMiddleware Support Contextual info – from various heterogeneous Contextual info – from various heterogeneous

and distributed sourcesand distributed sources • Hardware and software sensors: motion detectors, Hardware and software sensors: motion detectors,

noise, temperature sensors, location systemsnoise, temperature sensors, location systems• System recorded input System recorded input

user-system interaction history for context-based retrievaluser-system interaction history for context-based retrieval

• Other applicationsOther applications• User’s personal computing space: User’s personal computing space:

• Schedules, calendars, address books, contact lists, and Schedules, calendars, address books, contact lists, and to-do liststo-do lists

• Distributed computing environmentDistributed computing environment• Obtained from applications running in the vicinity of Obtained from applications running in the vicinity of

these devices: shopping malls, freeway, etcthese devices: shopping malls, freeway, etc

Middleware SupportMiddleware Support2.2. Same type of contextual info may have to be obtained Same type of contextual info may have to be obtained

from different sources at different timesfrom different sources at different times• GPS receiver – outdoor positioning systemGPS receiver – outdoor positioning system• Indoor positioning systemIndoor positioning system

3.3. The low-level contextual info must be abstracted to be The low-level contextual info must be abstracted to be usefuluseful

• GPS position info (latitudes and longitudes) GPS position info (latitudes and longitudes) • → → Tour guide, location infoTour guide, location info

4.4. Context-awareness is most relevant when the Context-awareness is most relevant when the environment is highly dynamic (mobile)environment is highly dynamic (mobile)

• Real-time detection, trigger commands, auto reconfigurationReal-time detection, trigger commands, auto reconfiguration

Middleware Support – Middleware Support – Contextual ServicesContextual Services

Development of context-aware applications can Development of context-aware applications can be facilitated by a middleware Infrastructure be facilitated by a middleware Infrastructure that can provide the following services (acquire that can provide the following services (acquire contextual input from sensors)contextual input from sensors)

1.1. Contextual subscription and delivery serviceContextual subscription and delivery service

2.2. Context query serviceContext query service

3.3. Context transformation serviceContext transformation service

4.4. Context synthesis serviceContext synthesis service

5.5. Discovery and management serviceDiscovery and management service Actuator ServicesActuator Services

Perform a context-dependent output functionPerform a context-dependent output function

Middleware Support – Middleware Support – An ExampleAn Example

The Context Toolkit - Publications, The Context Toolkit - Publications, http://www.cc.gatech.edu/fce/contexttoolkit/http://www.cc.gatech.edu/fce/contexttoolkit/

Software components for context acquisitionSoftware components for context acquisition• Context widgetsContext widgets

An interface between sensors and applicationsAn interface between sensors and applications Provides an abstraction layerProvides an abstraction layer State: a set of attributesState: a set of attributes Behavior: call back functionBehavior: call back function Persistent entities that can be shared by multiple Persistent entities that can be shared by multiple

applications applications • Context interpreters (info translators)Context interpreters (info translators)• Context aggregatorsContext aggregators

Entity: person, room, software systems, hardware devicesEntity: person, room, software systems, hardware devices• DiscovererDiscoverer

Discovery and management servicesDiscovery and management services

Middleware Support – Location Context Middleware Support – Location Context

A Location information system (LIS) provides A Location information system (LIS) provides location information of a person or resources to location information of a person or resources to the application.the application.

Location information from various sourcesLocation information from various sources• Indoor locating system, e.g., infrared or RF based Indoor locating system, e.g., infrared or RF based

active badgeactive badge• Wireless nanocell communication activityWireless nanocell communication activity• Outdoor locating systems such as GPSOutdoor locating systems such as GPS• Device input activity from various computersDevice input activity from various computers• Motion sensors and camerasMotion sensors and cameras• Explicit information from the userExplicit information from the user

Middleware Support – Location Context Middleware Support – Location Context

IssuesIssues• PrivacyPrivacy

Solution: provide user control over location Solution: provide user control over location informationinformation

• Accuracy of the location informationAccuracy of the location information Spatial resolutionSpatial resolution Temporal resolutionTemporal resolution

• How frequently LIS updates the location How frequently LIS updates the location information of each userinformation of each user

• How sensitive the sensing technology isHow sensitive the sensing technology is

SummarySummary Google Location Dependent Search Google Location Dependent Search

Engine: Engine: http://local.google.com/lochp • Find businessFind business• Get directionsGet directions

Serendipity – MIT Media lab project: a Serendipity – MIT Media lab project: a wireless, proximity-based dating servicewireless, proximity-based dating service• can accidentally discovers something fortunatecan accidentally discovers something fortunate• http://www.media.mit.edu

BlueJAQ- Pull on an unsuspecting stranger BlueJAQ- Pull on an unsuspecting stranger in close proximity who has a Bluetooth-in close proximity who has a Bluetooth-enabled phone: enabled phone: http://www.bluejackq.com/