CSD Home | SCS Home



Research Areas - Mobile and Pervasive Computing Research in the Computer Science Department at Carnegie Mellon


CSD faculty: Anind Dey (HCII), David Garlan, David O’HallaronJason Hong (HCII), Eric Paulos (HCII), Adrian Perrig (ECE),  Mahadev Satyanarayanan (Satya), Bradley Schmerl, Srini Seshan, Dan Siewiorek, Asim Smailagic (ICES), Peter Steenkiste

Mobile computing and pervasive computing represent major evolutionary steps in a line of research dating back to the mid-1970s. Figure 1 illustrates this evolution from a systems-centric viewpoint. New problems are encountered as one moves from left to right in this figure. In addition, the solutions of many previously-encountered problems become more complex — as the modulation symbols suggest, this increase in complexity is multiplicative rather than additive. It is much more difficult to design and implement a mobile computing system than a distributed system of comparable robustness and maturity; a pervasive computing system is even more challenging. As Figure 1 indicates, the conceptual framework and algorithmic base of distributed systems provides a solid foundation for mobile and pervasive computing.

Figure 1: Evolution of Mobile and Pervasive Computing from Distributed Systems

Mobile computing was born in the early 1990’s with the advent of full-function laptop computers and wireless LANs. Although many basic principles of distributed system design continued to apply, four key constraints of mobility forced the development of specialized techniques. These constraints are: (a) unpredictable variation in network quality; (b) lowered trust and robustness of mobile elements; (c) limitations on local resources imposed by weight and size constraints; (d) concern for battery power consumption. Mobile computing is still a very active and evolving field of research, whose body of knowledge awaits codification.

By 2000, mobile computing research began to touch upon issues that we now identify as the purview of pervasive computing. The founding manifesto of pervasive computing, also known as ubiquitous computing, was a seminal 1991 paper entitled “The Computer for the 21st Century” by Mark Weiser of Xerox PARC. He observed that “The most profound technologies are those that disappear. They weave themselves into the fabric of everyday life until they are indistinguishable from it.” Thus, the essence of pervasive computing is the creation of environments saturated with computing and communication, yet gracefully integrated with human users. When articulated in the early 1990s, this was a vision too far ahead of its time — the hardware technology needed to achieve it simply did not exist. It is only now, nearly 20 years later, that the computing and wireless communications technologies needed for its realization are becoming easily available. Carnegie Mellon is at the forefront of institutions pursuing this vision.  As Figure 1 shows, pervasive computing shares many research themes in common with mobile computing. In addition, it addresses four key issues:

  • Smart Spaces: embedding computing infrastructure in building infrastructure brings together two worlds that have been disjoint until now. The fusion of these worlds enables mutual sensing and control of these worlds.
  • Invisibility: the ideal expressed by Weiser is complete disappearance of pervasive computing technology from a user’s conciousness. In practice, a reasonable approximation to this ideal is minimal user distraction. If a pervasive computing environment continuously meets user expectations and rarely presents him with surprises, it allows him to interact almost at a subconcious level.
  • Localized Scalability: as smart spaces grow in sophistication, the intensity of interactions between a user’s personal computing space and its surroundings increases. This has severe bandwidth, energy and distraction implications for a wireless mobile user. Scalability, in the broadest sense, is thus a critical problem in pervasive computing. Like the inverse square laws of nature, good system design has to achieve scalability by severely reducing interactions between distant entities. This directly contradicts the current ethos of the Internet, which many believe heralds the “death of distance.”
  • Masking Uneven Conditioning: Uniform penetration of pervasive computing technology into the infrastructure is many decades away. In the interim, there will persist huge differences in the “smartness” of different environments. This large dynamic range of “smartness” can be jarring to a user, detracting from the goal of making pervasive computing technology invisible. One way to reduce the amount of variation seen by a user is to have his personal computing space compensate for “dumb” environments. As a trivial example, a system that is capable of disconnected operation is able to mask the absence of wireless coverage in its environment.


1 Research Thrusts

From the earliest days of mobile computing, Carnegie Mellon has been a major contributor of fundamental ideas, systems, and experimental validations. For example, the Wireless Andrew project transformed Carnegie Mellon into the world’s first campus with complete wireless coverage. The Coda file system pioneered the concepts of disconnected and weakly-connected operation, and the Odyssey project introduced the concept of application-aware adaptation. Carnegie Mellon created the term “wearable computing” which employs user-centered design methodologies to seamlessly integrate into current end-user work flows while dramatically improving user productivity. The entire February 1996 issue of IEEE Personal Communications was devoted to mobile computing at Carnegie Mellon. This early momentum continues unabated.

Cloudlet-based Mobile Computing:  Mobile computing has typically assumed a 2-level hierarchy: mobile device and cloud.  Satyanarayanan and Siewiorek are exploring future architectures for mobile computing that include a third layer called a cloudlet.   This layer is part of the fixed infrastructure but is located close to the mobile device (typically one Wi-Fi hop away) in order to ensure low end-to-end latency.  A cloudlet enables a mobile device to offload compute-intensive and data-intensive processing within tight latency bounds.   This avoids the long WAN latencies between a mobile device and a public cloud, thus enabling an entirely new class of highly interactive and resource-rich mobile applications.    For example, a user with a lightweight  body-worn computer could take advantage of a cognitive assistance application that executes sophisticated computer vision and language assistance algorithms at near real-time speeds.   A cloudlet can be viewed as a "data center in a box".  It is self-managing, requiring little more than power, Internet connectivity, and access control for setup.   Virtual machine (VM) technology plays a central role cloudlet design and implementation.

Context-Aware Networking:  Srini Seshan is exploring a new network architecture where redundancy elimination (RE) is a network-supported primitive that is accessible in a uniform fashion to all applications, protocols and flows. Since it operates in an application-agnostic fashion, RE allows all applications to obtain the benefits of caching and enables caching of content between different applications. RE also extends caching benefits to below the application object granularity.  Initial work has shown how Internet service providers could benefit from the RE because it allows them to manage their network resources better, especially under overload conditions such as flash crowds. This  work goes beyond the basic RE design to consider how Internet routing protocols should change if RE were widely deployed.

Programming Support for Context-Aware and Sensor-Rich Environments:   Anind Dey  is exploring the creation of tools that facilitate the development and deployment of context-aware applications.   The term "context" refers to environmental information that is part of an application's operating environment and that can be sensed by the application.   Key elements of this work include software encapsulation of sensors, access to context data through a network API, abstraction of context data through interpreters, sharing and storage of context data through a distributed infrastructure, and access control.

User-Controllable Security & Privacy for Pervasive Computing:  Capturing end-user security and privacy policies in pervasive computing environments is difficult but essential. Jason Hong's research in this space is working towards (1) developing  novel user interfaces, (2) weaving learning, dialog, and explanation technologies to minimize end-user burden, and (3) conducting  field studies to evaluate combinations of these techniques.  Srini Seshan's research explores the design of systems with better tradeoffs between privacy and functionality. For example, his group developed SlyFi, an 802.11-like wireless link layer protocol that obfuscates all transmitted bits to increase privacy, and developed WiFi-Reports, a system that enables users to crowdsource reviews of WiFi access points without revealing their location or identity.

Urban Computing:  Focusing on lifestyles and technologies within the context of public urban spaces, Eric Paulos' research  establishes a new framework for deconstructing and analyzing technology and urban life across people, place, infrastructure, architecture, and flow.  The research challenges in this space differ from those found within the home where technologies readily intermingle across intimate relations with friends and family members. It diverges from office and work environments where productivity and efficiency often dominate computing tools.

Wearable Computing:  Carnegie Mellon has been a pioneer in the creation and use of wearable computing systems. Dan Siewiorek, in collaboration with Asim Smailagic of the Institute for Complex Engineered Systems (ICES), has led this effort since 1990.  Current research in this area explores how wearable computing can be effective in pervasive computing environments. This poses a number of research challenges: developing social and cognitive models of applications; integrating input from multiple sensors and mapping them to social and cognitive user states; anticipating user needs; and interacting with users. These challenges are being explored in the development of a Virtual Coach, that represents a wearable augmented cognition platform.

Self-Managing Chaotic Wireless Networks: Until recently, most dense deployments of wireless networks were in campus-like environments, where experts carefully plan cell layout. The rapid deployment of cheap 802.11 hardware and other personal wireless technology (2.4Ghz cordless phones, bluetooth devices, etc.), however, is quickly changing the wireless landscape.  First, while campus deployments are carefully planned to optimize coverage and minimize cell overlap, many recent deployments result from many independent people or organizations each setting up one or a small number of APs.   Second, configuring and managing wireless networks is difficult.  Peter Steenkiste and Srini Seshan are investigating protocols and techniques for making such chaotic networks self-configuring and self-managing.

VM-based Hands-free Mobile Computing:  In the Internet Suspend/Resume (ISR) project, Dave O'Hallaron and Satyanarayanan are exploring a hands-free approach to mobile computing that appears well suited to future pervasive computing environments in which commodity hardware may be widely deployed for transient use. The key insight of ISR is that VM migration can be made efficient enough to extend the suspend/resume metaphor of mobile hardware to situations where a user carries no hardware. In other words, one can logically suspend a machine at one Internet site, travel to some other site and then seamlessly resume work there on another machine.

Secure interactions and trust establishment:  In the context of using physical trust to achieve digital trust, Adrian Perrig's research team is studying on how we can leverage physical encounters to establish trust in on-line entities, such as an email address, a social network identity, or a bank web site. An advantage of this approach is that users can relate well to physical encounters and thus trust the digital entities.

Living Analytics:   This research aims for near real-time analysis of the streams of information collected  about user behavior and context from  devices such as cell phones. In this project Srini Seshan is tackling: 1) the system-level challenges of collecting large-volumes of user context information in a scalable and energy-efficient fashion; 2) the privacy issues associated with the limiting access to the collected context information; and 3) the algorithm design challenges associated with analyzing large volumes of user context data in real-time.


Overlap with Other Research

Figure 1 above represents a focused perspective on the research ancestory of mobile and pervasive computing. Looking ahead, Figure 2  below presents a broader perspective of the research challenges we face in this area. As this figure shows, mobile and pervasive computing share many research topics with other areas discussed in this briefing book.

Figure 2: How Mobile and Pervasive Computing Relate to Other Areas


2 Education

A graduate course that focuses on recent developments in mobile and pervasive computing has been developed by M. Satyanarayanan and Dan Siewiorek. The course is cross-listed both by the School of Computer Science (15-821) and by the Department of Electrical and Computer Engineering (18-843). Originally entitled “Mobile Computing Systems and Applications,” the course is now called “Mobile and Pervasive Computing” to refiect the broadening of its scope over time. It has been offered once a year since Fall 2000, and has proved very popular with computer science and electrical engineering students.

Another relevant course, developed by Dan Siewiorek and Asim Smailagic in the HCI Institute and cross-listed by the Computer Science Department, is entitled “Rapid Prototyping of Computer Systems.” (15-540/05-540). It is offered every spring, and draws students from Computer Science, Electrical and Computer Engineering, Design, Human-Computer Interaction, and Mechanical Engineering. Students work in interdisciplinary teams of up to three dozen students to develop a functional prototype system for an industrial application.

Peter Steenkiste's course on Wireless Networking focuses on topics at the physical and link layers, with light treatment of higher layers. The format of the course loosely follows that of the mobile and pervasive computing course describe above (15-821/18-843), and complements its content. 


3 Research Community Leadership

In keeping with their pioneering role in mobile and pervasive computing, Carnegie Mellon faculty have consistently played a leadership role in shaping the research community. Papers on mobile and pervasive computing topics by Carnegie Mellon authors are widely used in the reading lists of graduate courses worldwide. Dan Siewiorek was the founding general chair of the MobiSys series of conferences, and Satyanarayanan and Srini Seshan have served as its program chair.  Siewiorek was instrumental in founding the International Symposium on Wearable Computing, and was the founding chair of the IEEE Technical Committee on Wearable Information Systems.  Satyanarayanan was the founding program chair of the HotMobile series of workshops, the oldest research forum in mobile computing.  He was also the founding Editor-in-Chief of IEEE Pervasive Computing, and the founding Area Editor for Mobile and Pervasive Computing in the Synthesis lecture series by Morgan and Claypool.   Both Siewiorek and Satyanarayanan are recipients of ACM SIGMOBILE's Outstanding Contributions Award.  


      CSD Home   Webteam  ^ Top   SCS Home