1 / 42

Context-Aware Computing

Context-Aware Computing. CSE494/598 Mobile Health and Social Networking. Context awareness: the essence of adaptability. Context awareness Resource awareness Adapt to available resources (connectivity, nearby devices Situation awareness

Download Presentation

Context-Aware Computing

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Context-AwareComputing CSE494/598 Mobile Health and Social Networking

  2. Context awareness:the essence of adaptability • Context awareness • Resource awareness • Adapt to available resources (connectivity, nearby devices • Situation awareness • Adapt to the situation (mode, location, time, event) • Intention awareness (?) • Adapt to what the user wants to do • Context awareness is found in humans • We always adapt our behavior and actions according to the context (i.e. situation) • Pervasive computing devices that ubiquitously accompany humans (such as smartphones) must adapt accordingly • Or risk being disruptive and annoying

  3. 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 … Temporal context (time of day, week, month, year…) Context history can also be useful Another definition [Abowd & Mynatt]: Social context: user identity and human partner identities Functional context: what is being done, what needs to be done Location context: where it is happening Temporal context: when it is happening Motivation context: why it is happening (purpose) Defining Context • Dictionary definition • “the interrelated conditions in which something exists or occurs” • Definition for pervasive computing • “any parameters that the application needs to perform a task without being explicitly given by the user”

  4. Context (cont’d) Sensor data Low-levelcontext • Other classifications of context: • Low-level vs High-level context • Active vs Passive context • Putting it all together • Gather low-level context • Process and generate high-level context • Separate active from passive context • adjust motivational social user location computing temporal high-levelcontext Context processing activecontext passivecontext Context-aware application

  5. Context-Aware Application Design • How to take advantage of this context information? • Schilit’s classification of CA applications: • Proximate selection: • closelyrelated objects & actions are emphasized/made easier to choose • Automatic contextual reconfiguration: adding/removing components or changing relationships between components based on context • Switch to a different operation mode • Enable or disable functionality • Context-triggered actions: rules to specify how the system should adapt • Contextual information and commands: produce different results according to the context in which they are issued • Narrow-down the output to the user using the context • Broaden the output to the user using the context • Is this classification fundamental/inclusive?

  6. Context-Aware functionality: Examples • System optimization: • power-save mode, silent mode etc • Connection optimization: • Protocol selection, compression rate etc • Application Functionality • … • Presentation • Image orientation, locale etc

  7. Requirements Geocoder (convert street addresses to latitude / longitude), Reverse geocoder Address Helper (many addresses inaccurate or incomplete) Map data Data Repository: Points of Interest data e.g. pubs, restaurants, cinemas Business Directory (doctors, plumbers etc by location) Location-based Inventory Issues Content providers – Telcos jealously guarding own domain Proprietary software e.g. Windows Live Price of map data varies widely, very expensive in some countries e.g. Australia Integration into customer’s web sites (API’s) Cognitive Routing – routing / directions using terminology relevant to user (e.g. resident c/f tourist) Location-Based Services

  8. LBS + Navigation • Basic form of Location-based services • Map service (Geocoder) • “You are here” service • Route discovery and generation of directions • Add-ons • Voice-activated • Adjust route to traffic and accident conditions • Integration with calendar and address book • Notify target partner of arrival • android.location • Classes defining Android location-based and related services. • Interfaces • LocationListener: Used for receiving notifications from the LocationManager when the location has changed. • Classes • Address: represents an Address, i.e, a set of Strings describing a location. • Geocoder: handles geocoding and reverse geocoding. • Location: represents a geographic location sensed at a particular time (a "fix"). • Criteria: indicates the application criteria for selecting a location provider. • LocationManager: provides access to the system location services. • LocationProvider: An abstract superclass for location providers.

  9. LBS + Social Networking:BuddyFinder App • Mobile social networking meets location based services • Mobile friend tracking & directory services • Proprietary internal messaging connectable to any messaging service • Friends become closer than ever because you know where they are • Location from GPS+map service • Extension of LBS+Navigation?

  10. In-class excercise • Group up by table • Name a smartphone app (existing or imaginary) and identify its adaptability and context awareness • Handling variable resources • Connection, battery • Handling variable context • Location, time

  11. In-class exercise, feedback

  12. Wireless Communicationsand Networks

  13. Wireless Networks 2G 3G Satellite 100 km WMAN (WiMAX) 10 km 1 km 100 m WLAN (WiFi) 10 m WPAN (ZigBee,Bluetooth) 1 m 10 kbps 100 kbps 1Mbps 10Mbps 100Mbps

  14. Wireless Networks Cellular - GSM (Europe+), TDMA & CDMA (US) FM: 1.2-9.6 Kbps; Digital: 9.6-14.4 Kbps (ISDN-like services) Cellular Subscribers in the United States: 90,000 in 1984 (<0.1%); 4.4 million in 1990 (2.1%);13 million in 1994; 120 million in 2000; 187.6 million by 2004 (Cahner In-State Group Report). Handheld computer market will grow to $1.77 billion by 2002 Public Packet Radio - Proprietary 19.2 Kbps (raw), 9.6 Kbps (effective) Private and Share Mobile Radio Paging Networks – typically one-way communication low receiving power consumption Satellites – wide-area coverage (GEOS, MEOS, LEOS) LEOS: 2.4 Kbps (uplink), 4.8Kbps (downlink)

  15. Wireless Networks (Cont.) Wireless Local Area Networks IEEE 802.11 Wireless LAN Standard based systems, e.g., Lucent WaveLan. Radio or Infrared frequencies: 1.2 Kbps-15 Mbps Wireless Metropolitan Area Networks IEEE 802.16 Worldwide Interoperability for Microwave Access (WiMAX) Microwave frequencies (2.5-66GHz), broadband (<70MBps), metropolitan coverage (1 to 30 miles) Packet Data Networks ARDIS RAM Cellular Digital Packet Data (CDPD) Private Networks Public safety, UPS.

  16. Data services: IP packets Coverage Area: Offices, buildings, campuses Roaming: Within deployed systems Internet access: via LAN. Type of services: Data at near LAN speed. Variant Connectivity Low bandwidth and reliability Frequent disconnections predictable or sudden Asymmetric Communication Broadcast medium Monetarily expensive Charges per connection or per message/packet Wireless Local Area Network • Connectivity may be weak, intermittent and expensive

  17. Network support by Android • android.net • Classes that help with network access, beyond the normal java.net.* APIs. more... • Classes • ConnectivityManager: answers queries about the state of network connectivity. • DhcpInfo: A simple object for retrieving the results of a DHCP request. • MailTo: MailTo URL parses a mailto scheme URL and then can be queried for the parsed parameters. • NetworkInfo: Describes the status of a network interface of a given type • Proxy: A convenience class for accessing the user and default proxy settings. • Uri:Immutable URI reference. • android.net.wifi • Provides classes to manage Wi-Fi functionality on the device. more... • Classes • ScanResult: Describes information about a detected access point. • WifiConfiguration: A class representing a configured Wi-Fi network, including the security configuration. • WifiConfiguration.Protocol: Recognized security protocols. • WifiConfiguration.Status: Possible status of a network configuration. • WifiInfo: Describes the state of any Wifi connection that is active or is in the process of being set up. • WifiManager: This class provides the primary API for managing all aspects of Wi-Fi connectivity. • WifiManager.WifiLock: Allows an application to keep the Wi-Fi radio awake.

  18. Network support by Android • Other packages • javax.net • java.net • org.apache.http • android.telephony.gsm • Provides APIs for utilizing GSM-specific telephony features, such as text/data/PDU SMS messages. more... • Classes • GsmCellLocation: Represents the cell location on a GSM phone. • SmsManager: Manages SMS operations such as sending data, text, and pdu SMS messages. • SmsMessage: A Short Message Service message.

  19. Wireless Sensor Networks

  20. What is a Wireless Sensor Network? Wireless Sensor Node = Sensor + Actuator + ADC + Microprocessor + Powering Unit + Communication Unit (RF Transceiver) An ad hoc network of self-powered and self-configuring sensor nodes for collectively sensing environmental data and performing data aggregation and actuation functions reliably, efficiently, and accurately. GPS Sensor Node

  21. Limitations of Wireless Sensors Wireless sensor nodes have many limitations: Modest processing power – 8 MHz Very little storage – a few hundred kilobits Short communication range – consumes a lot of power Small form factor – several mm3 Minimal energy – constrains protocols Batteries have a finite lifetime Passive devices provide little energy

  22. Some Sample Applications Industrial and Commercial Uses Inventory Tracking – RFID Automated Machinery Monitoring Smart Home or Smart Office Energy Conservation Automated Lighting Military Surveillance and Troop Support Chemical or Biological Weapons Detection Enemy Troop Tracking Traffic Management and Monitoring

  23. Sensor-Based Visual Prostheses Retinal Implant Cortical Implant

  24. Typical Sensor Node Features A sensor node has: Sensing Material Physical – Magnetic, Light, Sound Chemical – CO, Chemical Weapons Biological – Bacteria, Viruses, Proteins Integrated Circuitry (VLSI) A-to-D converter from sensor to circuitry Packaging for environmental safety Power Supply Passive – Solar, Vibration Active – Battery power, RF Inductance

  25. Traffic Management & Monitoring • Future cars could use wireless sensors to: • Handle Accidents • Handle Thefts • Sensors embedded in the roads to: • Monitor traffic flows • Provide real-time route updates

  26. Ayushman*: A Pervasive Healthcare System * Sanskrit for long life Environmental Sensors (Temperature etc) • Project @ IMPACT Lab, Arizona State University • To provide a dependable, non-intrusive, secure, real-time automated health monitoring. • Should be scalable and flexible enough to be used in diverse scenarios from home based monitoring to disaster relief, with minimal customization. Internet Stargate Gateway External Gateway Central Server Medical Sensors (EKG, BP) controlled By Mica2 motes Medical Professional Home/Ward Based Intelligence Body Based Intelligence Medical Facility Based Intelligence Vision • To provide a realistic environment (test-bed) for testing communication • protocols and systems for medical applications.  K. Venkatasubramanian, G. Deng, T. Mukherjee, J. Quintero, V Annamalai and S. K. S. Gupta, "Ayushman: A Wireless Sensor Network Based Health Monitoring Infrastructure and Testbed", In Proc. of IEEE DCOSS June 2005

  27. Ayushman: Current Setup database RS232 Base Station Oximeter 802.11 ZigBee Central Server Blood Pressure Environmental Data (accelerometer, Temperature, humidity, Light) Bluetooth Internet Body Area Network • Properties • Hardware and software based architecture • Multi-tiered organization • Real-time, continuous data collection • Query support (past, current data) • Remote monitoring capability through the Internet • Simple alarm generation Remote Clients

  28. Enabling Technologies Iris TOS v.1.x-2.0 MicaZ Imote2 Mica2Dot Ad-hoc Networking TelosB Mica2 + Commercially available sensor boards Open source OS with support for ad hoc networking

  29. Phone to WSN Interface • Design Principles: • To minimize the changes to the existing WSN architecture (required to maintain backward compatibility with previous apps.) • To leverage COTS hardware and existing software solutions (to minimize the development time). • Issues to address: • Phone to sensors interface • Data handling on the cell phone Monitoring and Control Software

  30. Context Generation • Medical Context • Is an aggregate of 4 base contexts. • Each physiological event has to be characterized by all 4 base contexts for accurate understanding of patient’s • health. • A contextual template can be created for specific physiological events for future reference. Physiological (EKG, Perspiration, Heart Rate) Context Processor Spatial (Home, Gym, Office, Hospital, Park) Knowledge Aggregate Context Temporal (Morning, Evening, Night) Sensor Network • Challenges • How to determine the aggregate medical context from the four base contexts? • How to create a contextual template for a patient? Environmental (Humidity, Temp) Base Context

  31. Security in Pervasive Healthcare Context Patient data is transmitted wirelessly by low capability sensors Patient data is therefore easy to eavesdrop on Security schemes utilized may not be strong enough for cryptanalysis Patient data is stored in electronic format and is available through the Internet Makes it easy to access from around the world and easy to copy Data can be moved across administrative boundaries easily bypassing legal issues. Electronic health records store more and more sensitive information such as psych reports and HIV status Preserving patient’s privacy is a legal requirement (HIPAA) Excruciating Factors Wireless connectivity is always on No clear understanding of: Trusted parties Security policies for medical environment Devices are heterogeneous with limitedcapabilities Traditional schemes too expensive for long term usage

  32. Security Related Issues New Attacks Fake emergency warnings. Legitimate emergency warningsprevented from being reported in times. Unnecessary communication by malicious entity with sensors can cause: Battery power depletion Tissue heating Technology • Efficientcryptographic primitives • Cheaper encryption, hash functions • Better sensorhardware design • Cheap, tamper-resistant sensor hardware • Better communication protocol design • Better techniques for controlling access to patient EHR Legislation • Health Information Privacy and Accountability Act (HIPAA) • Passed in 1995 • Provides necessary privacy protection for health data • Developed in response to public concern over abuse of privacy in health information • Establishes categories of health information which may be used or disclosed Requirements • Integrity - Ensure that information is accurate, complete, and has not been altered in any way. • Confidentiality - Ensure that information is only disclosed to those who are authorized to see it. • Authentication – Ensure correctness of claimed identity. • Authorization – Ensure permissions granted for actions performed by entity.

  33. Energy Efficiency Need Sensors have very small battery source. Sensors need to be active for long time durations. For implantable sensors, it is not possible to replace battery at short intervals. Challenge Battery power not increasing at same rate as processing power. Small size (hence less energy) of the batteries in sensors. Solutions Better Battery Solar Energy Vibration Body Thermal Power

  34. Challenges and Solution Approaches

  35. Constrained resources: power Current technology Battery-powered devices 1150 mAh (G1), 1400 mAh (iPhone), 1300 mAh (Blackberry) Future technology Replenishable energy storage Until then: Power-save modes: wireless, screen etc.

  36. Constrained resources: connectivity Current technologies WiFi, WiMAX, Bluetooth, 3G Possibly no coverage, intermittent interruptions, limited(?) bandwidth Future technology Still wireless, interchange between technologies, more availability & bandwidth Approaches: Disconnections: use of local cache, buffering Adaptive encoding and compression

  37. Constrained resources:data consistency Direct effect of connectivity challenge Approaches: Disallow offline writes, use online-only mode (NFS) System may become unresponsive during disconnections Distributed/Network file system (Coda, Andrew) Requires heavy clients with large cache May be too heavy for certain devices

  38. Constrained resources: computation Current technologies Blackberry 3G: Intel PXA901 312 MHz, 64 MB flash + 16 MB SDRAM iPhone 3G: ARM 1176, 400/620 MHz 128 MB DRAM G1: Qualcomm MSM7201A, 528MHz, 192 MB DDR SDRAM + 256 MB Flash Future technology Limited by wattage and available energy Always behind desktop CPUs Approaches: Lightweight, streamlined O/S and applications

  39. Constrained resources:storage Current technologies iPhone 3G: Flash 16GB G1: MicroSD (up to 16GB) Future technology Solid state hard drives Approaches: Stored data compression, selective data, remote storage

  40. Constrained resources:user interface methods • Current technologies • Display size: ~5ʺ • Constrained or no keyboard • Future technologies • There may be a convergence of input methods (e.g. touch screens, voice recognition) • presentation will continue to be different (audiovisual capabilities and sizes) • Solution approaches • Adjust content to match size of display (e.g. favor close-ups) • Use assistive methods (e.g. auto-completion, templates)

  41. Groups

  42. Group1 Logsdon, Brandon Boyd, Jeffrey Michael Yao, Robert James Y (?) Group 2 Olsen, Samuel H Perambalam, Sivaguru Viswanathan, Lakshmie Narayan Group 3 Bootz, Bradley Justin Douglas, Robert Wayne Freed, Natalie Anne Group 4 Krolikowski, Tomasz Randolph, April A Gutierrez, Pedro U Group 5 Chulick, Ryan Owen Hursh, Nathaniel P Trujillo, Miguel Zeniff Group 6 Deshpande, Koustubha Achyut Neelakandan, Vikram Abbasi, Zahra Group 7 Banerjee, Ayan Thangavel, Karthik Groups

More Related