isat rpm 7/14 2003-6 goldsteinlee1 seth copen goldstein 7/14/06 thoughts on programming programmable...

41
ISAT RPM 7/14 © 2003-6 Goldstein&Lee 1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started. I don’t assume that it contains only answers, only the start on a description of the problem.

Upload: mabel-ball

Post on 18-Jan-2018

220 views

Category:

Documents


0 download

DESCRIPTION

ISAT RPM 7/14 © Goldstein&Lee 3 Imagine A conductive material… …with intelligence, actuation, and sensing… …that can morph into shapes under software control… …in reaction to external stimuli 5mm 8cm

TRANSCRIPT

Page 1: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 1

Seth Copen Goldstein

7/14/06

Thoughtson

Programming Programmable Matter

This set of slides is meant to get us started. I don’t assume that it contains only answers,

only the start on a description of the problem.

Page 2: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 2

Imagine• A conductive

material…• …with

intelligence, actuation, and sensing…

• …that can morph into shapes under software control…

• …in reaction to external stimuli

Page 3: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 3

Imagine• A conductive

material…• …with

intelligence, actuation, and sensing…

• …that can morph into shapes under software control…

• …in reaction to external stimuli 5mm

8cm

Page 4: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 4

Imagine• A conductive

material…• …with

intelligence, actuation, and sensing…

• …that can morph into shapes under software control…

• …in reaction to external stimuli

4cm

Page 5: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 5

Programmable MatterEnsemble of programmable, mobile units which

can form dynamic 3D physical objects.

Stoy, 03

ISAT, 05

Stoddart/UCLA’06

Lipson, 05

Page 6: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 6

Field Programmable Factory• Programmable Matter “Duct Tape”• Three kinds of materials

– Display only - sandtable– Moderate adhesion forces - antenna– Bullet proof – shovel, bullet-proof humvee door

• Doors on demand– PM downloads a mold– Add dirt & Elastomeric x-linked polymer– Results in permanent bullet proof objects

• Other uses: E.g., One-handed smart casts, bandages, …

Page 7: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 7

Other DoD Applications•Sand table•Smart (one-handed) bandages•Frequency selective surfaces•Programmable Rucksack•3D Fax•“PJ” equipment

•Metrics & Time Frame– Near term: slow, low adhesion forces, plugged in– Medium term: slow, plugged in– Far term: realtime, mobile

Page 8: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 8

Requirements• Create Human scale artifacts

Massive numbers of units• Capture fine details of object

Micron-scale units• Thus each unit must be:

– Inexpensive – Robust– Capable of

•Running an independent program•Communicating with others•Locomotion•Adhesion

Page 9: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 9

Dipole with tuning stubs:Tuned to 8GHz, 800MHz bandwidth

1cm

4cm

Dipole with tuning stubs:Tuned to 8GHz, 800MHz bandwidth

1cm

4cm

•Ensemble of elements which each contain–Processor–Communication–Power–Sensing–Display–Actuation–Programmable adhesive

•Can be programmed to form dynamic shapes.

Programmable Matter

5mm

8cm

Dipoletuned to 4GHz,200MHzbandwidth

5mm

8cm

Dipoletuned to 4GHz,200MHzbandwidth

Will be a video

Page 10: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 10

• –Processor–Communication–Power–Sensing–Display–Actuation–Programmable adhesive

•Can be programmed to form dynamic shapes.

•Key Questions:–Is it really possible?–Why do it?–Can we program it?

Programmable Matter•Ensemble of elements which

5mm

8cm

Dipoletuned to 4GHz,200MHzbandwidth

5mm

8cm

Dipoletuned to 4GHz,200MHzbandwidth

Page 11: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 11

What would it take to make this real?

The main conclusions of our study:1. Building such a material is feasible2. The time to achieve it can be shortened by

focused investment3. Protennas are an important mid-term

military reason to do this4. Furthermore, there are other important

military applications• Some mid-term and some longer term

5. Major DARPA-hard technical challenges in 3D manufacturing and in massive-scale programming, if overcome, are likely to have significant spinoff effects

Page 12: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 12

Hardware* Summary

*: Not addressing the programming of the ensemble

Actuators

Electronics

Assembly

Adhesion

Power

Applications

Today 2 5 10+Demo at

1mmSA by

Chemistry

Demo Electrostati

c“Click”

Surface forces

In simulatio

n

Demo Mobile

Page 13: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 13

If we can build it …2 years x years

Structural Strength low highMaterial Properties conducting ?Reconfig Speed slow fastControlMobility fixed mobileGranularity mm m

*: Not addressing the programming of the ensemble

Page 14: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 14

What about the software?• Is Programming PM just another

parallel programming problem?• What are the characteristics of the

problem space?– Machine– Application area– Environment

• What programming model should we choose?

• How do we implement the model?

Page 15: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 15

Parallel Machines

Big IronEmbedded

?

Private Network

SMMP MPP

Shared Network

NoW GridDist

Systems

Sensor Nets

Prog Matter

Modular Robots

Page 16: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 16

Features of Importance*

• Scaling (# of PEs)• PE Compute Power• Fault Rate• Levels of communication hierarchy• Communication reach• Interconnect topology• Resource limitations (energy/heat)• Control over the environment• Mobility• (Global) Clock• Beacons

*: To the programmer

Page 17: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 17

Scaling (# of PEs)• SMMPs: 16-128• MPPs: ~1024• Grid: ?• Sensor Nets: thousands?• PM: Millions

SMMP MPP NoW Grid DS SN PM

Page 18: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 18

PE Capabilities• Only in SN and PM does is the programmer

aware of the limitations• PM spans many possibilies:

– Silicon/MEMS: ~386 class processor– Synthetic Bio-based: ~8080 or less– DNA-tiles: ~ten-state FA

SMMP MPP NoW Grid DS SN PM

Page 19: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 19

Fault Rate• Traditional Parallel programming assumes perfect

machines and perfect networks• Distributed systems assume low fault rates, but

programmer must support retry/timeout• SN/PM: node failures/comm failures/incorrect comm

SMMP MPP NoW Grid DS SN PMNone

Some

Fact of life

Page 20: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 20

Levels of Communication Hierarchy• Big Iron has two levels of hierarcy: local/remote• SN?• PM: local/neighborhood/remote

SMMP MPP NoW Grid DS SN PM2

3

Page 21: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 21

Communication Reach• Big Iron assumes can coordinate globally

(due to scale of machine and 2-level hierarchy)• SN assumes global coordinatation possible (but

costly)• PM prohibits global coordination

SMMP MPP NoW Grid DS SN PM

Entire system

Local neighborhood

Page 22: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 22

Interconnect Topology• Modern big-iron programs are topology agnostic

(it was just too hard to tailor algorithms to the topoloigy and the 2-level hierarchy made it not important)

• DistSystems: network is a cloud• SN: topology important, but semi-static• PM: topology important AND CHANGING

SMMP MPP NoW Grid DS SN PMNonefixed

changing

Page 23: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 23

Resource Awareness• Big-iron: only resource is compute nodes• SN: energy awareness is vital• PM: (less?) energy awareness needed (but need to

track heat dissipation?)

SMMP MPP NoW Grid DS SN PM

Page 24: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 24

Mobility• Big-iron• SN: little• PM: Raison d’etre

SMMP MPP NoW Grid DS SN PM

Page 25: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 25

Control over/Reactivity to environment

• Big-iron• SN: very little• PM: Possible to change shape in response to

environment

SMMP MPP NoW Grid DS SN PM

Page 26: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 26

Adding it all up• PM appears not just harder, but entirely

different!• Different (and harder?)

– Larger scale systems– Using less capable processors– With higher fault rates– In a 3-tiered communication hierarchy– With only local reach– In a changing topology– And limited resources– Creating mobile ensembles

Page 27: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 27

The Environment• PM must deal with uncertainty

SMMP MPP NoW Grid DS SN PMControlled

Uncontrolled

Page 28: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 28

Application Area• Main application of PM (at least for

now) is rendering!– Does not require precise deterministic

reproducible result– Has real-time aspects– (What about modular robotic applications?)

• Contrast with uses for big-iron:– E.g., Bank-accounts– Deterministic, Reproducible

Page 29: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 29

Application Area (saving grace?)

• Significant success in “rendering”– Stoy– Nagpal– DeRosa– Klavins– (others please)

• Can be stochastic(Given machine characteristics, may be required. We should embrace this, not shy away from it)

Page 30: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 30

Where have we been?• Insipiration and related work: (partial and

unordered)• Graph grammers [Klavins]• Origami shape language [Ragpal]• Economic based [Miller]• Emergent behvaior [SFI et. Al.]• Teramac [Kuekes]• Paintable Computing [Butera]• Sensor Nets [Culler, Madden, …]• Information-Based Complexity [Traub]• Programming Work [Koditschek]• Topological Approach [Ghrist]

Page 31: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 31

Possible Models• Hierarchical

– Composing Funnels [Koditschek]– Reactive Systems [statecharts?]– Actors [agha]

• Emergent– Achieve global behavior via emergence

from local rules– Gradient Methods– Graph Grammers– Economic based

• Do these work? Is there a better one?• Is Life (aka DNA) example of

hierarchical emergent system?

Page 32: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 32

Implementing the Model• MIMD/SIMD not practical• SPMD is probably the only possible

approach– One logical source for the ensemble– (What about Butera?)

Page 33: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 33

Programming Work• Use inspiration of programming

work in the context of robotic controllers

• “Funnels” support fault tolerance and program composition

),( uxfx E

Lyapunov Function:

y)(yg

Dynamical “Symbol,”

Goal Set: G

)(ygy

Vector Field: g

Obstacle Set: O

Dynamical “Behavior,”

(model)(instance)

)(xfx

)(yhx

Page 34: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 34

Pwork Vs. Pcomp• Pwork takes into account time to

accomplish a task (but not just Real time)

• Pwork:– Uncertainty in environment– Energy cost of computing– Dynamics of real world

• Pcomp: Isn’t this just pwork with a good abstraction?

Page 35: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 35

Pcomp• Reality of Pcomp is pushing e-

• We ignore the e- because:– There are many of them!

• Abstraction: The bit• Algebra: Boolean logic• Gain: Transistor

• (Note: sub-45nm Pcomp may be just like Pwork!)

Page 36: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 36

How to make pwork pcomp• Abstraction: Energy gradient• Algebra: Topology-based?• Gain: Funnels

• Composing funnels (at least sequentially) is “tractable”

• Algebra of funnels may not be turing-complete

• Where Cost?

Page 37: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 37

Another Approach: IBC• Information-based complexity

[Traub88]• Basis of IBC: Information

– Has cost– Is tainted– Is partial

• Used to study complexity of continuous functions, error

• Key result: randomness is essential

Page 38: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 38

10-3m

Milli-

10-2m

What is “nano”

10m 1m 10-1m

http://www.powersof10.com/

10-7m10-6m

Micro-

10-5mlymphocyte

10-4m10-8m

10-9m

Nano-

Page 39: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 39

Focusing DARPA nanotech research•All definitions deal with size:

– building electronic circuits and devices from single atoms and molecules

– things smaller than 100 nanometers– the molecular level, atom by atom– control of matter on the nanometer length

scale•What if want to use nanotech to make a

jeep? A shovel? An antenna?Nanotechnology: The science and technology

of manipulating massive numbers of nanoscale components

Page 40: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 40

Synergy: CS + Nano• Computer science:

The science of controlling complexitythrough abstraction.

• Nanotechnology:Technology for constructing andmanipulating billions of nanoscale

items.• For example, Manage:

– Randomness/regularity of bottom-up assembly

– Build in defect-tolerance– Complexity of manufacturing

Page 41: ISAT RPM 7/14 2003-6 GoldsteinLee1 Seth Copen Goldstein 7/14/06 Thoughts on Programming Programmable Matter This set of slides is meant to get us started

ISAT RPM 7/14 © 2003-6 Goldstein&Lee 41

Conclusions• There is a DoD leap ahead capability

– Improved antennas: lower power, better performance, more flexible

– Field programmable factory:reduce load, increase flexibility, improved logisitics, new capabilities

• Basic technology available for creating robust PM artifacts

• Understanding of challenges in manufacturing individual elements

• Today’s focus: understand software