programming methodology for biologically-inspired self...

2
Programming Methodology for Biologically-Inspired Self-Assembling Systems Radhika Nagpal, Attila Kondacs, Catherine Chang October 4, 2002 Cells with identical DNA cooperate to form complex structures, such as ourselves, with incredible reliability in the face of constantly dying and replacing parts. 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 from these technologies, like smart materials, self-reconfiguring robots and self-assembling structures, that achieve the kind of complexity and reliability that cells achieve. This poses significant challenges: a) How does one achieve a particular global goal from the local interactions of vast numbers of parts? b) What are the appropriate local and global programming paradigms for engineering robust systems? We will present two examples of using a programming languages approach to designing self-assembling systems. We use morphogenesis and developmental biology as a source of mechanisms and general principles for organizing robust local behavior. However unlike current approaches to emergent systems, the general principles are formalized as programming languages — with explicit primitives, means of combination, and means of abstraction — thus providing a framework for the design and analysis of self-organizing systems. We believe that this methodology will impact the design of reconfigurable robotics and smart-matter applications, and also influence our engineering principles for robust design. The first system provides a language for specifying shape formation on an intelligent sheet composed of thousands of identically-programmed but locally-interacting flexible agents[1,2]. The system uses a novel approach: the desired global shape is specified at an “abstract” level as a folding construction on a continuous sheet of paper, which is then automatically compiled to produce the program run by the identically-programmed agents. The global-to-local compilation is achieved by using a set of five robust local primitives, inspired by cell differentiation in multicellular organisms such as the Drosophila. The compiler composes these primitive building blocks in a principled way using a set of geometry axioms from paper-folding (origami) mathematics. 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; for example, it is scale-independent — the shape scales to the number of agents and proportions of the initial sheet without any modification to the agent program. Many examples and a detailed analysis of the system can be found in [1]. The second system, currently under development, applies the same approach to a different domain: the synthesis of arbitrary 3D volumetric shapes from cell growth. The goal is to compile a predetermined global shape to produce a program for a seed agent that then “grows” the structure through replication. The compilation proceeds in two stages: first an arbitrary 3D shape is automatically decomposed into an efficient packing of covering-spheres, using techniques from computer graphics. Neighboring spheres are linked into a bidirectional network using local reference points relative to each sphere. This sphere-representation is key because it permits the formation of the entire structure by cells recursively executing only two simple primitives: growing into a sphere, and triangulating the centers of adjacent spheres. Locally the agents use replication, gradients and competition to achieve these primitives robustly and allow for local self-repair in the event of agent death. Apart from being scale-independent and robust, this system also models regeneration. In biology, many species show incredible abilities to regenerate limbs; a starfish can regenerate the entire structure from part of a limb. Our artificial system can also regenerate broken structures, because the sphere- network representation allows the structure to be grown starting from any sphere and every cell contains all necessary information to reproduce the missing structure. Currently we are completing the simulations of 2D shape formation and extending the process to 3D. The next step is to replace cell growth/death with a model for a self-assembling modular robot where the agents can attach, detach and wander. Submission: 2003 AAAI Spring Symp: Computational Synthesis: From Basic Building Blocks to High Level Functionality contact: Dr. Radhika Nagpal, Artificial Intelligence Laboratory, Massachusetts Institute of Technology, Cambridge, MA 02114, radhiai.mit.edu 1

Upload: others

Post on 08-Oct-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Programming Methodology for Biologically-Inspired Self …groups.csail.mit.edu/mac/projects/amorphous/papers/aaai-symp03-a… · [4] The Making of a Fly: the Genetics of Animal Design,

ProgrammingMethodologyfor Biologically-InspiredSelf-AssemblingSystems

RadhikaNagpal�

, Attila Kondacs,CatherineChang

October4, 2002

Cellswith identicalDNA cooperateto form complex structures,suchasourselves,with incrediblereliability inthe faceof constantlydying andreplacingparts. Emerging technologiesaremakingit possibleto bulk-manufactureand embedmillions of tiny computingand sensingagentsinto materialsand the environment. We would like tobuild novel applicationsfrom thesetechnologies,like smartmaterials,self-reconfiguringrobotsandself-assemblingstructures,thatachieve thekind of complexity andreliability thatcellsachieve. This posessignificantchallenges:a)How doesoneachieve a particular globalgoal from the local interactionsof vastnumbersof parts?b) Whataretheappropriatelocalandglobalprogrammingparadigmsfor engineeringrobustsystems?

We will presenttwo examplesof usinga programminglanguagesapproachto designingself-assemblingsystems.We usemorphogenesisanddevelopmentalbiology asa sourceof mechanismsandgeneralprinciplesfor organizingrobustlocalbehavior. Howeverunlikecurrentapproachesto emergentsystems,thegeneralprinciplesareformalizedasprogramming languages — with explicit primitives,meansof combination,andmeansof abstraction— thusprovidinga framework for thedesignandanalysisof self-organizingsystems.We believethatthis methodologywill impactthedesignof reconfigurableroboticsand smart-matterapplications,and also influenceour engineeringprinciplesforrobustdesign.

Thefirst systemprovidesa languagefor specifyingshapeformationonanintelligentsheetcomposedof thousandsof identically-programmedbut locally-interactingflexible agents[1,2].Thesystemusesa novel approach:thedesiredglobal shapeis specifiedat an “abstract” level as a folding constructionon a continuoussheetof paper, which isthenautomatically compiled to producetheprogramrun by the identically-programmedagents.Theglobal-to-localcompilationis achievedby usinga setof five robust local primitives,inspiredby cell differentiationin multicellularorganismssuchastheDrosophila. Thecompilercomposestheseprimitive building blocksin a principledway usinga setof geometryaxiomsfrom paper-folding (origami)mathematics.Theresultingprocessis not only versatilein theshapesandpatternsthatcanbeformed,but alsoextremelyreliablein thefaceof randomagentdistributions,varyingnumbersof agentsandrandomagentdeath,without relying on globalcoordinatesor centralizedcontrol.Theprocessalsoexhibits interestingbiological traits; for example,it is scale-independent — the shapescalesto the numberofagentsand proportionsof the initial sheetwithout any modificationto the agentprogram. Many examplesand adetailedanalysisof thesystemcanbefoundin [1].

Thesecondsystem,currentlyunderdevelopment,appliesthesameapproachto a differentdomain:thesynthesisof arbitrary3D volumetricshapesfrom cell growth. Thegoalis to compileapredeterminedglobalshapeto produceaprogramfor a seedagentthatthen“grows” thestructurethroughreplication.Thecompilationproceedsin two stages:first anarbitrary3D shapeis automaticallydecomposedinto anefficientpackingof covering-spheres,usingtechniquesfrom computergraphics. Neighboringspheresare linked into a bidirectionalnetwork using local referencepointsrelative to eachsphere.This sphere-representationis key becauseit permitsthe formationof the entirestructurebycellsrecursively executingonly two simple primitives: growing into asphere,andtriangulatingthecentersof adjacentspheres.Locally theagentsusereplication,gradientsandcompetitionto achieve theseprimitivesrobustly andallowfor local self-repairin the event of agentdeath. Apart from being scale-independentand robust, this systemalsomodelsregeneration. In biology, many speciesshow incredibleabilitiesto regeneratelimbs; a starfishcanregeneratetheentirestructurefrom partof a limb. Ourartificial systemcanalsoregeneratebrokenstructures,becausethesphere-network representationallows thestructureto begrown startingfrom any sphereandeverycell containsall necessaryinformationto reproducethemissingstructure.Currentlywe arecompletingthesimulationsof 2D shapeformationandextendingthe processto 3D. The next stepis to replacecell growth/deathwith a model for a self-assemblingmodularrobotwheretheagentscanattach,detachandwander.

�Submission:2003AAAI SpringSymp:Computational Synthesis: From Basic Building Blocks to High Level Functionality�contact:Dr. RadhikaNagpal,Artificial IntelligenceLaboratory, MassachusettsInstituteof Technology, Cambridge,MA 02114,radhiai.mit.edu

1

Page 2: Programming Methodology for Biologically-Inspired Self …groups.csail.mit.edu/mac/projects/amorphous/papers/aaai-symp03-a… · [4] The Making of a Fly: the Genetics of Animal Design,

Figure 1: Shapeand patternformation on a surfaceof identically-programmedlocally-interactingagents(a) dif-ferentiatinginto an inverterchainpatternand(b) folding into an envelope. In both examples,the agentprogramisautomaticallygeneratedfrom anabstractdescriptionof thedesiredstructure.Thepatternscalesautomatically(withoutmodificationof theagentprogram)to thesizeandproportionsof surface.Theprocessis robustto randomplacementandrandomdeathof agents[1].

This researchis motivatedby technologies,suchasMEMs1 devices, that aremaking it feasibleto build novelapplicationssuchassensorcoveredbridgesthat monitor load andmodularrobotsthat canreconfiguretheir shape.Theseapplicationswill requirecoherentandrobustbehavior from thelocal interactionsof vastnumbersof agentsandtheir interactionswith theenvironment.Approachesbasedoncentralizedcontrolandplanningarenotscalableto largenumbersof agents.In addition,they aredifficult tomakefaulttolerantbecauseof thestrongtendency todependoncen-tralizedinformation,suchasglobalclocks,positioninformation,anduniqueidentifiers.Thesestrategiesput pressureon systemdesignersto build complex, precise(andthusexpensive)agentsratherthancheap,mass-produced,unreli-ablecomputingagentsthatonecanconceiveof just throwing at a problem.By contrast,biologicalsystemsregularlyachieve coherent,reliableandcomplex behavior from the cooperationof large numbersof identically-programmedunreliableagents.During embryogenesis,cells form incrediblycomplex structures,in thefaceof largevariationsincell behavior andbiologistsarebeginningto uncovermany of theunderlyingmechanisms[3,4]. Howeversimplymim-icking biologicalbehavior is not sufficient. Cellularautomatamodelsandartificial life researchhave beendifficult togeneralizebecauselocal rulesareconstructedempirically, without providing a framework for designinglocal rulestoobtainany desiredgoal.Evolutionaryandgeneticapproacheson theotherhand,evolve local ruleswithoutproducingany understandingof how or why they work; thismakesthecorrectnessandrobustnessof theevolvedsystemdifficultto verify andanalyze.

This researchrepresentsa differentapproachto engineeringself-organizingsystems.Ratherthantrying to mapa desiredgoaldirectly to thebehavior of individual agents,theproblemis brokenup into two pieces:a) how to de-composethegoalglobally b) how to maptheconstructionstepsto local rules. In bothexamples,we take advantageof currentunderstandingin otherdisciplinesof how to decomposea problem.This approachsuggeststhatexploringnew globalparadigmsis at leastasimportantasexperimentingwith local rules.Our currentresearchhasfocussedonself-assembly, however the sameapproachcould be appliedto achieving global behavior from ant-like robots. Theglobal-to-localcompilationis thekey to achieving complexity while still beingableto analyzethebehavior of thesys-tem. By encodingtheseprocessesasprogramminglanguageswe cancombineprinciplesfor controllingcomplexity,drawn from computerscience,with techniquesfor robustdesign,inspiredby biology.

Bibliography[1] Programmable Self-Assembly Using Biologically-Inspired Multiagent Control, Nagpal,AutonomousAgentsandMultiagentSystems(AAMAS), 2002.Also PhDThesis,MIT, June2001.[2] Amorphous Computing, Abelsonet. al., Comms.of theACM, Vol 43,no 5, May 2000.[3] Principles of Development, Wolpert,Oxford UniversityPress,2002.[4] The Making of a Fly: the Genetics of Animal Design, Lawrence,BlackwellScience,1992.

1Micro-electronicMechanicalDevices.Integratesmechanicalsensors/actuatorswith silicon basedintegratedcircuits.

2