Future Work:
Origami shape generation so far depends on one type of mechanical operation
- folding. This is a major straength that many shapes are produced
by control of a small number of cell capabilities. This may provce important
to trying to apply these programming paradigms to cell colonies (Ron' microbial
robotics) - sontrol of a small number fo sensors
What is we replaced folding with some other mechanical operation, such
as some specific type of growth? Growth seems much more fundamental to
morphogenesis - much more so than local deformation or even cell mobility.
This might allow better analogies to biological systems. Mobilitiy seems
more fundamental to other systems - colonies of individual cells (sporulation),
ants etc rather than multicellular organisms. An interesting point
is that pattern formation is the most fundamental of all to embryogenesis
and that is somewhat how both origami language and gpl get their power.
An interesting application would be to produce a language for construction
of nanostructures using collagen deposits. Would require control of collagen
production and an understanding of how forms tubes, vs other thingsa and
then pattern the cells to perform the correct functions.
-
Interesting Similarities with GPL:
Both languages have parallels to the mathematical language of straight-edge
and compass constructions - which gives them significant descriptive power.
Both are also
constructive languages - from a few simple initial
conditions, new conditions are created at each step that can be subsequently
used. Thus at the local level, origami exploits similar biologically-inspired
primitives such as gradients and tropisms to organize the cells along with
new primitives that require sensing contact. Both approaches are very different
from previous work , such as cellular automata and reaction diffusion,
where the local rules create emergent patterns and how one creates these
local rules is poorly understood.
-
Interesting Differences with GPL: The program is relative to the
boundery conditions and within the program there is no notion of absolute
distance. Also the initial conditions are always the same and are just
boundery conditions.
-
Regions and DNA code reuse: The idea of restricting local rules
to act only within a region has an interesting application to code reuse.
If the regions have impassable bounderies and do not overlap then the same
code (or dna) with the same gradients (protiens) can be used to create
multiple structures. Add to this the idea of scale independence and one
could engineer a hand pattern, simply by using the same code in
regions of different sizes and this program would be easily modified
(or mutated) to produce extra fingers. This hase implications for how simple
mutations in fruit flies can create extra limbs and wings and how the majority
of the dna code can remain the same accross wide variety of creatures.
-
Applications to other Global Shapes(future work): Can the ideas
from origami (and insights into the similarities with GPL) be applied
to creating global shape in other domains, such as proteo. Are there some
axioms or basic shapes for constructing global shapes from mobile but connected
cells. Currently Yim's approach is very bottom up: cells move towards the
nearest goal location; each cell has a representation of the final shape
(set of goals), partial knowledge of what goal locations have been filled
(or rather what unfilled locations remain) slowly accumulated from neighbors
and a means for determining the nearest goal (distance metric). This is
a very different approach from either origami or GPL, and although it is
much less communication intensive it seems to require a coordinate system.
Could the amorphous computing approach work here? Unclear since we've rarely
dealt with mobile cells.
-
Pattern, Form and Function (future work):So
far Daniel Coore's thesis on GPL (Growing Point Language) tackles pattern
formation and the origami work begins to tackle the creation of form. The
next question is can we tackle function? Can one describe a global function
(circulate blood in a particular direction, move food through digestive
system at a particular rate, extract oxygen (or nutrients or information)
and discard) and automatically derive the local rules, or program,
that each cell must run in order to achieve this. What kind of high level
languages are there for describing global functions (logic?) and will it
share the same properties with GPL and Origami? Will the same primitives
from pattern formation and global shape formation be applicable?
-
Questions
-
what is the limitation of using Local Deformation
vs migration, growth, and reproduction:
-
Characterize shapes that can be formed by origami
(fold flat) and those that can't (curved faces, lines)