You should really take a look at the paper "Computation and Pattern Formation by Swarm Networks with Brownian Motion" or, more generally, any of the papers by Teijiro Isokawa and Ferdinand Peper. What they present is really close to (a theoretical version of) the microbots you're talking about.
I even wrote a report and presentation on those papers for university, but sadly they're in German.
The current answer is amazing screen saver, but part of me thinks the answer is in microbots that are super simple to build and have limited instructions, but could be placed in a configuration to do something useful (like build more?)