paintable computer ting yan cs 851 bio-inspired computing presentation march 25, 2003
TRANSCRIPT
Paintable Computer
Ting YanCS 851 Bio-Inspired Computing Presentation
March 25, 2003
Butera’s Dissertation
• Introduction
• Background - Cost Analysis, Self-Assembly
• System Architecture - HW, PM, Simulator
• Essential Process Fragments
• Applications
• Wrap-Up
What is a paintable?
• … particles … suspended into a viscous medium and deposited it on surfaces like paint
Characteristics
• Sand size, limited resource
• Ability to harvest power from environment
• Arbitrary topology, no localization
• Wireless local communication
• Single particle failure
• Asynchrony
Motivation and Difficulty
• Economics– Computing power for a whole wafer constant– The larger the dies, the lower the yield– Cost-effective to use dense ensembles of dust size computing
elements instead of centralized architectures
• Difficult for people to structure– If we can not get a human to structure the procedures, we are
going to have to get the procedures to structure themselves.– Self-Assembly, Autonomic Computing, e.g., self-
organization, self-management
Comparison with SensorNets
• Sizes - dust-size vs. coin-size
• Power - environment harvesting vs. battery
• Purpose - computing vs. computing + sensing + actuating
Hardware Platform
Memory Organization
Self-contained Executables
Interactions
• pFrags read/write tagged data from/to homepage
• When a pFrag posts tagged data to the homepage of its own particle, copies of the post appear at all mirror sites
• pFrags propagate and migrate among particles
• Errors, packet losses should be handled
Self-Assembly
• Categories– Scaffolded: shape lock-and-key
– Thermodynamic: minimum free energy
– Code: guided by coded instructions
• Arbitrarily complex system behavior can be created from large numbers of simple processing elements (pFrags).
• Global reliable computation can be obtained from aggregate statistics on a large set of local interactions.
BreadCrumb pFrag
• Purpose - monotonically ascending addresses• Update behaviors
– propagation, adaptation or removal
NearSightedMailMan
• Purpose - routing• based on BreadCrumb• by HomePage posts
Gradient pFrag
• Basically, hop counts from a external device
• Stages– installation, propagation, adaptation, removal
• Adaptation formula 1min1 HCHCt
N
HCHCD
t
N
ii
t
11
1
Gradient Effect
• When stabilized, HC is the minimum hop count to the reference point• Common problems: How long does it take? Race conditions? pFrag
always takes place in memory
Gradient Adaptation
Get Location with Gradient
Precision proportional to communication radius, affected by node density.
MultiGrad - vFrag
- One virtual pFrag emulating multiple pFrags- Save memory space- Any pFrag can issue a request for Gradient
Tessellation Operator
• Purpose: group the particles into the Voronoi regions about a uniformly distributed set of anchor points
• MultiGrads used to obtain distance to a certain particle
• Centroid - minimize potential energy for a spring force like field
Tessellation - Details
Tessellation - Issues
• Time issues - settling time, randomness, large moves
• Precision
• Initial field strength - neither too low nor too high would work
Tessellation Adaptation
Channel Operator
Channel Operator
• End-to-End communication
• Gradient, Tracers and Halos
• Gradient issued at the destination
• Gradient - a waste of bandwidth?
• Cross-traffic prohibited?
Coordination Operator
Coordination - Example
Diffusion
• Diffuse a stream of data “fairly” in the ensemble - time and space
• Rule - the pFrag with the maximum Timer count searches the I/O space for the neighboring particle with the smallest number of Diffusion posts.
Diffusion - Result