Specks are miniature computing devices the size of a few cubic millimetres and have sensing, processing and wireless networking capabilities. A specknet is a network formation of specks. The project involves a simulation of specks with accelerometer devices attached, scattered randomly over the surface of a spinning disc.
The idea behind the project was to investigate the outcome of a specknet applied to a tangible object. A spinning disc is an ideal object to model the problem for its simplicity and well-understood mechanics. The accuracy with which the specknet perceives the surrounding environment under different conditions gives an indication of the performance of the specknet.
The simulator tool consists of a Java frontend that takes the parameters of a simulation, invokes the specknet simulator, a separate tool, and graphically displays the results.
The magic happens in the specknet simulator where algorithms have been implemented for distributed, collaborative computation of the acceleration of regions on the disc. The specknet simulator simulates the environment and the taking of snapshots that enable the specknet to determine a picture of the disc's motion. The detail of the message-passing algorithms is complicated but it suffices to say that the algorithms exploit the properties of a spinning disc.
The output from the specknet simulator is compared with the correct values of acceleration and the differences are encapsulated in a further intermediate output. The histogram display, below, parses the comparison data and provides a graphical illustration of the specknet's picture of the disc at each snapshot.
I've provided the resulting performance histograms of three key experiments: one of an origin-skewed distribution of specks, another of a perimeter-skewed distribution and one of a higher density of evenly distributed specks. In the experimental tool, the histogram is displayed at the end of the simulation.
All of the experiments were of a 300mm radius disc with the same damping function of the disc's speed and a 1s interval between snapshots. The signal propagation delay, sensor error margin and sensor latency variables were kept to a constant minimum and the speck wireless modem radio range in all three experiments was set to 300mm. The skewed examples both have a population of 15 specks.
The skewed examples show the effect of sprinkling the specks such that they have a tendency to land towards the perimeter of the disc (perimeter-skew) or cluster around the origin (origin-skew). The 40 specks example shows the effect of deploying a higher density of specks.
ControlsTo navigate through the snapshots, press the LEFT and RIGHT cursor keys. To remove the black boundary outlines (looks nicer), press D. To display a graph showing the connectedness of the specknet, press G. Also, you can toggle the animation on and off with M and remove the speck id numbers with N.
You can see that the perimeter-skewed disc is far more accurate than the origin-skewed disc. The reason for this lies in the algorithm that assigns each speck to a band interval.
The 40 specks experiment shows a performance that is visibly in between the pictures of the skewed examples. In the project report, a more detailed analysis of varying the density of specks showed that larger quantites of specks yielded more accurate pictures of the motion.
The following gnuplot graphs were displayed at the end of two experiments with population. The first graph shows the results of a 5 speck simulation and the graph below it shows the corresponding simulation with 25 specks. You can see that the error graph is considerably flattened by the increase in the number of specks.

|
Informatics Forum, 10 Crichton Street, Edinburgh, EH8 9AB, Scotland, UK
Tel: +44 131 651 5661, Fax: +44 131 651 1426, E-mail: school-office@inf.ed.ac.uk Please contact our webadmin with any comments or corrections. Unless explicitly stated otherwise, all material is copyright © The University of Edinburgh |