Foothill Project: Analysing Movement in a Sentient Environment
Lars Birkedal, Robin Milner
Pervasive computing will involve movement of agents in environments equipped with sensors that may also move. Many such mobile systems with particular purposes have been realised in practical experiment, or simulated. One example of a purpose is "sentient computing", defined by Hopper as "Using sensor and resource status data to maintain a model of the world which is shared between users and applications". (A.Hopper: Sentient Computing, Phil. Trans Roy. Soc. A, 358(1773) pp 2349-2358, 2000.)
Other purposes are possible; for example, sensors (fixed or mobile) may be programmed to collaborate in guiding an agent to a goal. The variety of applications is large, and suggests that a first step is to study and analyse locality and movement per se, without prejudice towards a particular application.
The problem addressed in this outline proposal is: What is a fruitful conceptual framework in which to express a variety of rules of motion, allowing systems to be programmed conveniently, simulated (with the help of stochastic information in the rules), and analysed rigorously? An example of rigorous analysis would be that certain invariants are maintained (or maintained with certain probability) by all behaviour allowed by the rules.
To underpin both description and analysis, it is convenient to use a spatial model which can represent both discrete and continuous space, and movement in such space, as well as the usual forms of data and processes involved in traditional computing. Examples of such models are suggested by calculi of interactive computing, such as the calculus of mobile ambients or the pi calculus. But the aim of the project is not just to design a calculus; it is to derive from the calculus a programming language, and define a programming methodology, so that the language may be used and evaluated by people whose primary interest is in applications.
The ultimate goal of the project is to unify theory and practice in this basic but challenging facet of pervasive computing. One approach, involving bigraphical systems, is already under way at the IT University of Copenhagen . An example of a system that may convince users, suggested by the group at ITU, is to model (and program) a "reflective" building: one equipped with sensors, which continually transmit data of the building's occupancy to a monitor that maintains a data structure which faithfully records the occupancy.
