Programmable Self-Assembly

Radhika Nagpal
MIT

Monday, March 31, Volen 101, 1:00-2.00 pm

Cells with identical DNA cooperate to form complex structures, with incredible reliability and precision. Emerging technologies are making it possible to bulk-manufacture and embed millions of tiny computing and sensing agents into materials and the environment. We would like to build novel applications, like smart materials and self-reconfiguring robots, that achieve the kind of complexity and reliability that biological systems achieve. This requires solving two problems: a) How do we translate particular global goals into the local interactions of vast numbers of identically-programmed agents? b) How do we achieve robust behavior from vast numbers of unreliable parts?

I will present an example of a programming language approach to self-assembly, by combining local organization primitives from developmental biology with combination rules from geometry. The approach is significantly different from current approaches to emergent systems: the desired global shape is described at an "abstract" level, and then {\em automatically compiled} into a program run by identically-programmed locally-interacting agents. The resulting process is not only versatile in the shapes and patterns that can be formed, but also extremely reliable in the face of random agent distributions, varying numbers of agents and random agent death, without relying on global coordinates or centralized control. The process also exhibits interesting biological traits, such as scale-independence and highly conserved local code. Many of these mechanisms are directly applicable to programming smart matter and reconfigurable substrates, and I will talk about some recent examples of generalizing this approach.

Bio:Radhika Nagpal is a postdoctoral lecturer in the Massachusetts Institute of Technology EECS Department. She completed her Ph.D in June 2001 at the MIT AI Lab. http://www.swiss.ai.mit.edu/users/radhi/

Host: Liuba Shrira