1.1 What Is Pervasive Computing?
Pervasive computing as a field of research identifies its basis in an article by Mark Weiser of Xerox PARC [], arising from work starting in 1988. The vision is summarised well in Weisers words:
The most profound technologies are those that disappear. They weave themselves into the fabric of everyday life until they are indistinguishable from it. We are therefore trying to conceive a new way of thinking about computers, one that takes into account the human world and allows the computers themselves to vanish into the background.
At the time Weiser described his vision many of the technologies were anticipated rather than in-place, but wireless networking, processors, miniaturisation, displays, batteries etc. have all moved on since then, so that many of the technical barriers are no longer so significantsee [.
The idea of computers disappearing has led to a great emphasis on physical size. Certainly, for some applications, very small size is an advantagehowever this was not the key point. To make computing blend into the environment requires that they are just part of life, having a form factor that is easy to use, not demanding attention other than that required for the desired function. At the same time computers need to do more than tools such as hammers or pen and paper, so making them usable without distracting from the task at hand requires greater sophistication. Key to this sophistication is an awareness of the context of use and the ability to communicate between devices.
While the vision emerged as recently as 1991, the roots go back furtherinto research on wireless networks, distributed systems, mobile computing, user interfaces, home automation, robotics, system architectures and so on. In some ways the excitement is that this vision brings together many computer science problems, and requires that they tackle much greater requirements of scale and variation. Various papers describe the challenges that are presented, including [].
Pervasive computing is also known (with varying and subtle distinctions) as Ubiquitous Computing (Weisers original term, although he also used the word pervasive), The Disappearing Computer and Ambient Computing; while Mobile Computing and Sensor Networks can be treated as significantly overlapping fields. For our purposes we are concentrating on some systems aspects of what we shall call Pervasive Computing. In particular we shall concern ourselves with sensing and interfacing to the world outside the computer, particularly to support context awareness; to support this interest we shall also discuss experimental practise, hardware, networking (in particular sensor networks), systems software, programming and resource management. We shall leave out much: the human interface deserves at least one book / course of its own; many finer points and new results shall be omitted to try and convey the core, established concepts. However, we are hoping that we will convey ideas and build skills in research which can be applied to further studytaking the topics we address further or exploring the wider field.
1.2 Some Classic Pervasive Computing Applications
At this stage it is helpful to consider how this technology might be used. We shall introduce a few classic pervasive computing applications, whose ideas and problems will thread their way through the later chapters.
1.2.1 Tourist Guide
Many researchers have produced some form of tourist guide, often based around a single location, e.g. []. These are characterised by a need for location based services: forming tours, assisting in navigation, and presentation of information relevant to the attraction or display that the user is currently seeing, i.e. an electronic tour guide. The provision of these services will typically require wireless networking as well as location detection. At the same time there are issues of usability: the device must be portable, easy to use despite being hand-held and under varying lighting conditions. Also it is desirable that the device presents interesting and useful information: so tailoring tours to the age, interests, available time and native language of the users.
Beyond the basic role as route planner and guide book the application may provide other, more interactive, benefits []: Recording the visit and annotating that recording with relevant information, to allow the experience to be replayed with more interaction than a (video) camera provides, or to follow up a visit with further reading; to identify exhibits which are hard to label, such as animals or distant objects, by appearance; to give multi-lingual information and act as translator / phrase book to assist face-to-face interaction; to obtain reservations, give advice on opening times and special events, avoid crowds and traffic jams, and other time-sensitive information.
1.2.2 Smart Office
Smart offices, or indeed smart spaces more generally, have been a broad theme for much pervasive computing research. Most researchers have an office space which can double up as a laboratory, and many shared and personal devices are in use. The technologies and issues for smart spaces in general are discussed at length in []. The typical smart office application combines location awareness with systems for display of information, interaction or messaging.
A good early example of this research theme is the active badge system [].
1.2.3 Sensing the Natural Environment
There have been several projects where sensor networks have been used to monitor the natural world, including sea-birds []. These applications are typified by inaccessibility, requiring maintenance (and so power consumption) to be minimised; a demanding environment for packaging; a need to be unobtrusive; to have a wireless network which is robust in the face of difficult deployment, device failure and device movement; and a need to report appropriately on what has been sensed to a distant base. We shall see later that there are trade-offs here, particularly between what is sensed and how it is reported.
1.2.4 Games
Games which exploit sensors and take place in the wider world using sensors are becoming commonplace and used as a vehicle by many researchers [] use sensor technologies, an interplay with the world around them and communications to form their basis in various ways.
1.2.5 Everyday Objects
Many pervasive computing prototypes that you will find in the literature are playful experiments with ideas, rather than polished productsthey are designed to explore what is possible and how people react to them. Making everyday objects, such as picture frames, cups, fridges etc. intelligent has provided many insights. Sometimes the goal is to simplify and automate routine activities, but often it is simply to explore a richer more connected environment.
The mediacups project at TecO [] is a good example of this, in which coffee cups had sensors, processing and networking capability built into them. It is pervasive, in that the cups are not presenting themselves as computers. It goes beyond embedded computing in that the design expects ad-hoc information sharing between cups and similarly enhanced objects, and as the cups will sense and respond to their environment.