Vous êtes sur la page 1sur 3

Amorphous computing

From Wikipedia, the free encyclopedia


Jump to navigationJump to search
Amorphous computing refers to computational systems that use very large numbers of
identical, parallel processors each having limited computational ability and local
interactions. The term Amorphous Computing was coined at MIT in 1996 in a paper
entitled "Amorphous Computing Manifesto" by Abelson, Knight, Sussman, et al.

Examples of naturally occurring amorphous computations can be found in many fields,


such as: developmental biology (the development of multicellular organisms from a
single cell), molecular biology (the organization of sub-cellular compartments and
intra-cell signaling), neural networks, and chemical engineering (non-equilibrium
systems) to name a few. The study of amorphous computation is hardware agnostic�it
is not concerned with the physical substrate (biological, electronic, nanotech,
etc.) but rather with the characterization of amorphous algorithms as abstractions
with the goal of both understanding existing natural examples and engineering novel
systems.

Amorphous computers tend to have many of the following properties:

Implemented by redundant, potentially faulty, massively parallel devices.


Devices having limited memory and computational abilities.
Devices being asynchronous.
Devices having no a priori knowledge of their location.
Devices communicating only locally.
Exhibit emergent or self-organizational behavior (patterns or states larger than an
individual device).
Fault-tolerant, especially to the occasional malformed device or state
perturbation.
Algorithms, tools, and patterns
(Some of these algorithms have no known names. Where a name is not known, a
descriptive one is given.)

"Fickian communication". Devices communicate by generating messages which diffuse


through the medium in which the devices dwell. Message strength will follow the
inverse square law as described by Fick's law of diffusion. Examples of such
communication are common in biological and chemical systems.
"Link diffusive communication". Devices communicate by propagating messages down
links wired from device to device. Unlike "Fickian communication", there is not
necessarily a diffusive medium in which the devices dwell and thus the spatial
dimension is irrelevant and Fick's Law is not applicable. Examples are found in
Internet routing algorithms such as the Diffusing Update Algorithm. Most algorithms
described in the amorphous computing literature assume this kind of communication.
"Wave Propagation". (Ref 1) A device emits a message with an encoded hop-count.
Devices which have not seen the message previously, increment the hop count, and
re-broadcast. A wave propagates through the medium and the hop-count across the
medium will effectively encode a distance gradient from the source.
"Random ID". Each device gives itself a random id, the random space being
sufficiently large to preclude duplicates.
"Growing-point program". (Coore). Processes that move among devices according to
'tropism' (movement of an organism due to external stimuli).
"Wave coordinates". DARPA PPT slides. To be written.
"Neighborhood query". (Nagpal) A device samples the state of its neighbors by
either a push or pull mechanism.
"Peer-pressure". Each device maintains a state and communicates this state to its
neighbors. Each device uses some voting scheme to determine whether or not to
change state to its neighbor's state. The algorithm partitions space according to
the initial distributions and is an example of a clustering algorithm.[citation
needed]
"Self maintaining line". (Lauren Lauren, Clement). A gradient is created from one
end-point on a plane covered with devices via Link Diffusive Communication. Each
device is aware of its value in the gradient and the id of its neighbor that is
closer to the origin of the gradient. The opposite end-point detects the gradient
and informs its closer neighbor that it is part of a line. This propagates up the
gradient forming a line which is robust against disruptions in the field.
(Illustration needed).
"Club Formation". (Coore, Coore ,Nagpal, Weiss). Local clusters of processors elect
a leader to serve as a local communication hub.
"Coordinate formation" (Nagpal). Multiple gradients are formed and used to form a
coordinate system via triangulation.
Researchers and labs
Hal Abelson, MIT
Jacob Beal, graduate student MIT (high level languages for amorphous computing)
Daniel Coore, University of West Indies (growing point language, tropism, grown
inverter series)
Nikolaus Correll, University of Colorado (robotic materials)
Tom Knight, MIT (computation with synthetic biology)
Radhika Nagpal, Harvard (self-organizing systems)
Zack Booth Simpson, Ellington Lab, Univ. of Texas at Austin. (Bacterial edge
detector)
Gerry Sussman, MIT AI Lab
Ron Weiss, MIT (rule triggering, microbial colony language, coli pattern formation)
Documents
The Amorphous Computing Home Page
A collection of papers and links at the MIT AI lab
Amorphous Computing (Communications of the ACM, May 2000)
A review article showing examples from Coore's Growing Point Language as well as
patterns created from Weiss's rule triggering language.
"Amorphous computing in the presence of stochastic disturbances"
A paper investigating the ability of Amorphous computers to deal with failing
components.
Amorphous Computing Slides from DARPA talk in 1998
An overview of ideas and proposals for implementations
Amorphous and Cellular Computing PPT from 2002 NASA Lecture
Almost the same as above, in PPT format
Infrastructure for Engineered Emergence on Sensor/Actuator Networks, Beal and
Bachrach, 2006.
An amorphous computing language called "Proto".
Self-repairing Topological Patterns Clement, Nagpal.
Algorithms for self-repairing and self-maintaining line.
Robust Methods of Amorphous Synchronization, Joshua Grochow
Methods for inducing global temporal synchronization.
Programmable Self-Assembly: Constructing Global Shape Using Biologically-Inspired
Local Interactions and Origami Mathematics and Associated Slides Nagpal PhD Thesis
A language to compile local-interaction instructions from a high-level description
of an origami-like folded structure.
Towards a Programmable Material, Nagpal Associated Slides
Similar outline to previous paper
Self-Healing Structures in Amorphous Computing Zucker
Methods for detecting and maintaining topologies inspired by biological
regeneration.
Resilient serial execution on amorphous machines, Sutherland Master's Thesis
A language for running serial processes on amorphous computers
Paradigms for Structure in an Amorphous Computer, 1997 Coore, Nagpal, Weiss
Techniques for creating hierarchical order in amorphous computers.
Organizing a Global Coordinate System from Local Information on an Amorphous
Computer, 1999 Nagpal.
Techniques for creating coordinate systems by gradient formation and analyzes
precision limits.
Amorphous Computing: examples, mathematics and theory, 2013 W Richard Stark.
This paper presents nearly 20 examples varying from simple to complex, standard
mathematical tools are used to prove theorems and compute expected behavior, four
programming styles are identified and explored, three uncomputability results are
proved, and the computational foundations of a complex, dynamic intelligence system
are sketched.
Categories: Parallel computingClasses of computers
Navigation menu
Not logged inTalkContributionsCreate accountLog inArticleTalkReadEditView
historySearch

Search Wikipedia
Main page
Contents
Featured content
Current events
Random article
Donate to Wikipedia
Wikipedia store
Interaction
Help
About Wikipedia
Community portal
Recent changes
Contact page
Tools
What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Wikidata item
Cite this page
Print/export
Create a book
Download as PDF
Printable version

Languages
???????
?????
???
Edit links
This page was last edited on 8 September 2017, at 19:42 (UTC).
Text is available under the Creative Commons Attribution-ShareAlike License;
additional terms may apply. By using this site, you agree to the Terms of Use and
Privacy Policy. Wikipedia� is a registered trademark of the Wikimedia Foundation,
Inc., a non-profit organization.
Privacy policyAbout WikipediaDisclaimersContact WikipediaDevelopersCookie
statementMobile viewWikimedia Foundation Powered by MediaWiki

Vous aimerez peut-être aussi