Programming a paintable computer

A paintable computer is defined as an agglomerate of numerous, finely dispersed, ultra-miniaturized computing particles; each positioned randomly, running asynchronously and communicating locally. Individual particles are tightly resource bound, and processing is necessarily distributed. Yet computing elements are vanishingly cheap and are regarded as freely expendable. In this regime, a limiting problem is the distribution of processing over a particle ensemble whose topology can vary unexpectedly. The principles of material self-assembly are employed to guide the positioning of “process fragments”—autonomous, mobile pieces of a larger process. These fragments spatially position themselves and re-aggregate into a running process. We present the results of simulations to show that “process self-assembly” is viable, robust and supports a variety of useful applications on a paintable computer. We describe a hardware reference platform as an initial guide to the application domain. We describe a programming model which normatively defines the term process fragment and which provides environmental support for the fragment's mobility, scheduling and data exchange. The programming model is embodied in a simulator that supports development, test and visualization on a 2D particle ensemble. Experiments on simple combinations of fragments demonstrate robustness and explore the limits of scale invariance. Process fragments are shown interacting to approximate conservative fields, and using these fields to implement scaffolded and thermodynamic self-assembly. Four applications demonstrate practical relevance, delineate the application domain and collectively illustrate the paintable's capacity for storage, communication and signal processing. These four applications are Audio Streaming, Holistic Data Storage, Surface Bus and Image Segmentation. (Copies available exclusively from MIT Libraries, Rm. 14-0551, Cambridge, MA 02139-4307. Ph. 617-253-5668; Fax 617-253-1690.)

[1]  John Seely Brown,et al.  The coming age of calm technolgy , 1997 .

[2]  David Gelernter,et al.  Generative communication in Linda , 1985, TOPL.

[3]  Andrew A. Berlin,et al.  Towards intelligent structures: active control of buckling , 1994 .

[4]  Stoddart,et al.  Electronically configurable molecular-based logic gates , 1999, Science.

[5]  G. Asada,et al.  Wireless integrated network sensors: Low power systems on a chip , 1998, Proceedings of the 24th European Solid-State Circuits Conference.

[6]  Tommaso Toffoli,et al.  Cellular automata machines - a new environment for modeling , 1987, MIT Press series in scientific computation.

[7]  Daniel Coore,et al.  Botanical computing: a developmental approach to generating interconnect topologies on an amorphous computer , 1999 .

[8]  Bernardo A. Huberman,et al.  The performance of cooperative processes , 1990 .

[9]  Radhika Nagpal Programmable self-assembly: constructing global shape using biologically-inspired local interactions and origami mathematics , 2001 .

[10]  Y. Meyer,et al.  Wavelets and Filter Banks , 1991 .

[11]  Carl Hewitt,et al.  Description and Theoretical Analysis (Using Schemata) of Planner: A Language for Proving Theorems and Manipulating Models in a Robot , 1972 .

[12]  Walter Bender,et al.  A new structure for news editing , 2000, IBM Syst. J..

[13]  Mitchel Resnick,et al.  Turtles, termites, and traffic jams - explorations in massively parallel microworlds , 1994 .

[14]  G. Reeke The society of mind , 1991 .

[15]  Tien,et al.  Forming electrical networks in three dimensions by self-assembly , 2000, Science.

[16]  Hiroshi Ishii,et al.  Emerging frameworks for tangible user interfaces , 2000, IBM Syst. J..

[17]  Carver A. Mead,et al.  Neuromorphic electronic systems , 1990, Proc. IEEE.

[18]  D. Corkill Blackboard Systems , 1991 .

[19]  Guang R. Gao,et al.  Advanced topics in dataflow computing and multithreading , 1994 .

[20]  Teuvo Kohonen,et al.  Self-Organization and Associative Memory, Third Edition , 1989, Springer Series in Information Sciences.

[21]  Neil Gershenfeld,et al.  Cluster-Weighted Modeling: Probabilistic Time Series Prediction, Characterization, and Synthesis , 2001 .

[22]  Radhika Nagpal,et al.  Organizing a Global Coordinate System from Local Information on an Amorphous Computer , 1999 .

[23]  W. Daniel Hillis,et al.  The connection machine , 1985 .

[24]  N. Gershenfeld,et al.  Quantum Computing with Molecules , 1998 .

[25]  Deborah Estrin,et al.  Directed diffusion: a scalable and robust communication paradigm for sensor networks , 2000, MobiCom '00.

[26]  Edmond Chalom,et al.  Statistical image sequence segmentation using multidimensional attributes , 1998 .

[27]  James McLurkin Algorithms for Distributed Sensor Networks , 2000 .

[28]  Léon J. M. Rothkrantz,et al.  Ant-Based Load Balancing in Telecommunications Networks , 1996, Adapt. Behav..

[29]  Satoshi Matsuoka,et al.  Using tuple space communication in distributed object-oriented languages , 1988, OOPSLA '88.

[30]  Kai Li,et al.  Retrospective: virtual memory mapped network interface for the SHRIMP multicomputer , 1994, ISCA '98.

[31]  C. Collin,et al.  An Introduction to Natural Computation , 1998, Trends in Cognitive Sciences.

[32]  David L. Tennenhouse,et al.  Proactive computing , 2000, Commun. ACM.

[33]  Alan L. Yuille,et al.  Region Competition: Unifying Snakes, Region Growing, and Bayes/MDL for Multiband Image Segmentation , 1996, IEEE Trans. Pattern Anal. Mach. Intell..

[34]  Jackman,et al.  Design and fabrication of topologically complex, three-dimensional microstructures , 1998, Science.

[35]  A. I. Akinwande,et al.  Cone and lateral thin-film field emitter displays , 1998, 25th Anniversary, IEEE Conference Record - Abstracts. 1998 IEEE International Conference on Plasma Science (Cat. No.98CH36221).

[36]  William M. Spears,et al.  Using artificial physics to control agents , 1999, Proceedings 1999 International Conference on Information Intelligence and Systems (Cat. No.PR00446).

[37]  Colin Potts,et al.  Design of Everyday Things , 1988 .

[38]  V. Michael Bove,et al.  The coding ecology: image coding via competition among experts , 2000, IEEE Trans. Circuits Syst. Video Technol..

[39]  Edmund H. Durfee,et al.  Coordination as distributed search in a hierarchical behavior space , 1991, IEEE Trans. Syst. Man Cybern..

[40]  Yvan G. Leclerc,et al.  Constructing simple stable descriptions for image partitioning , 1989, International Journal of Computer Vision.

[41]  K. J. Gabriel,et al.  Distributed MEMS: new challenges for computation , 1997 .

[42]  Milan M. Jovanovic,et al.  An overview of reflective memory systems , 1999, IEEE Concurr..

[43]  H. P Nii,et al.  Blackboard Systems , 1986 .

[44]  Tad Hogg,et al.  Controlling smart matter , 1996, cond-mat/9611024.

[45]  Nicholas Pippenger Reliable Computation in the Presence of Noise , 1986 .

[46]  Hiroshi Ishii,et al.  Triangles: tangible interface for manipulation and exploration of digital information topography , 1998, CHI.

[47]  Randy H. Katz,et al.  Next century challenges: mobile networking for “Smart Dust” , 1999, MobiCom.

[48]  Chris Turner,et al.  The last Book , 1997, IBM Syst. J..

[49]  Touradj Ebrahimi,et al.  Video segmentation based on multiple features for interactive multimedia applications , 1998, IEEE Trans. Circuits Syst. Video Technol..

[50]  Klaus Obermayer,et al.  A Stochastic Self-Organizing Map for Proximity Data , 1999, Neural Computation.