1 / 45

Goal: Programming Computational Matter

Goal: Programming Computational Matter. Develop engineering principles and programming techniques for directing the behavior of systems composed of myriad potentially unreliable and inaccurately manufactured parts Exploit such systems for implementing and managing sensors and effectors.

amauzy
Download Presentation

Goal: Programming Computational Matter

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Goal:Programming Computational Matter • Develop engineering principles and programming techniques for directing the behavior of systems composed of myriad potentially unreliable and inaccurately manufactured parts • Exploit such systems for implementing and managing sensors and effectors

  2. Outcomes • Coordinated action from massive assemblies of sensors, actuators, and computation • Good collective behavior from bad parts • Novel materials that enhance precision and strength, using computation • Self-configuring mechanical systems • ?? Biology ??

  3. Example • signal processing surfaces

  4. Example • Self-configuring mechanical system

  5. Example • Something using biology/chemistry?

  6. Why now? - The opportunity • Ultra-scale silicon • molecular electronics • biological subtrates for computing • kernel technologies to build or grow vast numbers of identical units at almost no cost - but we don’t know how to program them!

  7. Characteristics of Computational Matter • too many elements to be individually programmed, or even to be named. • variable interconnect, unknown a priori, possibly time varying • imperfect elements and interconnect • dead or sick on arrival • flakey (perhaps gives the wrong result)

  8. Characteristics - II • may be heterogeneous or homogeneous • may include sensors or effectors • communication mostly local • but there can be wormholes • may need to discover the topology

  9. Hard Problems • how to specify desired global behavior using only local interactions • how to specify the agents that must act without the assignment of names • how to enforce acceptable global behavior in the face of unreliable parts and interconnect • how to elicit prescribed geometric behavior using only locally obtained topological information

  10. Approaches to the hard problems • how to specify desired global behavior using only local interactions • build on organizational metaphors from physics that exploit the spatial locality of the real world • build on organizational metaphors from biology that exploit the massive redundancy available in the real world

  11. Example: Growing a complex pattern like a plant

  12. Approaches to the hard problems • how to specify the agents that must act without the assignment of names • Use boolean combinations of markers and counters to select agents intensionally rather than extensionally. • Massive numbers of elements make this an effective strategy.

  13. Approaches to the hard problems • how to enforce acceptable global behavior in the face of unreliable parts and interconnect • allow late binding of • interconnect topology • available resources • build on organizational metaphors from biology that exploit the massive redundancy available in the real world

  14. Approaches to the hard problems • how to elicit prescribed geometric behavior using only locally obtained topological information • Clues about the geometry can be extracted using constraints that come from the physical embedding of the system in the real world.

  15. Example • The number of computational elements within a particular hop-count radius gives an estimate of the local scalar curvature • picture here

  16. Benefitsto be wordsmithed • Cheap insanely big computers • radically customizable manufacturing • cheap, sophisticated, massive sensor applications • spectacularly enhanced interfaces to the biological and chemical worlds • new communities of researchers across computing, biology, and chemistry

  17. Milestones- to be fixed • Note: need to build stuff in conventional technology, short term goal • build interfaces between the different subtrates

  18. Examples • signal-proc, • self-configuring mech sys • biology example • Milestones • infrastructure • links to application

  19. Transition

  20. END • Stuff after here is extra

  21. Hard Problems • Programming and design • Naming in large dynamic spaces • application design • Discovering metaphors appropriate to a particular substrate • specification • compilation

  22. Hard Problems • Imposing reliability • Determining the relation between system reliability and the error characteristics of the components • Imposing structure • performance predicting and performance debugging • infrastructure development

  23. Hard Problems • Stratification of the design and understanding sensitivity to substrate characteristics, how changes at one level effect changes at other levels

  24. Approaches to the hard problems

  25. Milestones • 3-year goals: identifying metaphors for particular substrates - tying to properties of substrates differentiates this program • 5-years: behavior of metaphors wrt properties of substrates

  26. Goal • To effectively program huge systems with rapidly variable properties. • Computational manifolds • Systems composed of billions of parts, changing dynamically, too many to name, focus on communications problem. • What happens 20 or 30 years from now when there are zillions of nodes. What kind of naming and addressing schemes could we use? • What infrastructure mechanisms to allow programming these very large sets? • Naming is one of the problems that need to be solved?

  27. Goal • To develop engineering principles and programming techniques for directing the behavior of systems composed of myriad potentially unreliable and inaccurately manufactured parts • To exploit such systems for computing, sensing, and control applications

  28. Why now? - the Challenge performance/cost feature size

  29. How can we program amorphous stuff? • organisms are composed of myriad cells that cooperate to achieve common goals • biology provides organizational metaphors for new engineering principles • examples from developmental biology illustrate this point

  30. A botanical metaphor We organize a process in terms of “growing points.” They make structures that exhibit “tropisms” toward particular “chemical gradients.” The growing points may lay down materials. Materials may secrete pheromones that attract or repel other growing points. Growing points may split, die off, or join. Support for this abstraction may be programmed as a uniform state machine in each computational particle.

  31. Biologically-inspired engineering • not biomimetics • behavior is “correct” if it is acceptable • multiple representations and redundant means of achieving goals • defects at one level can be compensated for by changes at another level • continuity of representations

  32. A new interdisciplinary community Biology chemical engineering MEMS computation control

  33. Engineering-inspired biology • Interfacing to the chemical world • Molecular-scale manufacturing • Microbial robotics • Minimal organisms

  34. Computation is free • biological systems employ massive redundant computation • “wasteful” computation can be used to decrease the need for • strength of materials • precision of manufacture • reliability of communication

  35. Emergent behavior Principled design Spectrum of specification • degrees of specification • of outcome • of design • of manufacturing process

  36. Diversity and redundancy • in representations • in methods • in goals

  37. Assembly of information-rich molecular-scale systems

  38. Some stuff that’s missing • Militarily relevant applications • exciting applications • compelling example • specific challenges • metrics • what it takes to do it • technical approaches • expected outcome

  39. Amorphous computing is • Not emergent behavior • Not “pretty pictures” • It is engineering of mechanisms with prespecified, well-defined behavior

  40. Robust systems • Fault-tolerance can be emergent • but can also be a result of designed behavior • choice of levels for modularity and redundancy • continuity of representations • unary is better than binary • this is the crucial feature of analog representations • noise may be OK • link to sensors and effectors

  41. A scientific and technological effort to identify • methods for obtaining coherent behavior from the cooperation of large numbers of unreliable parts that are interconnected in unknown, irregular, and time-varying ways • techniques for instructing myriad programmable entities to cooperate to achieve particular goals • engineering principles and languages that can be used to observe, control, organize, and exploit the behavior of programmable multitudes

  42. Not everything changes at the same time scale • some things change slowly

  43. Another goal • Applications of active materials to sensors. • Specific example: sensor arrays.

  44. Goal • The engineering basis for designing effective organizations for a given computational substrate. • Variability, defect rate, all inputs to that.

  45. 3-year goals: identifying metaphors for particular substrates - tying to properties of subtrates differentiates this program • 5-years: behavior of metaphors wrt properties of substrates

More Related