An Aggregate Vascular Morphogenesis Controller for Engingeered Self-Organising Spatial Structures

Angela Cortecchia , Danilo Pianini , Giovanni Ciatto , and Roberto Casadei

Plants

plant image

Organizations

organization order image

Flocking swarms

organization order image

What do they have in common?

runtime-generated hierarchical structure

Vascular Morphogenesis Controller (VMC)[1]

A model for the growth of artificial structures over time.

Works on tree-like structures, in which every node can get information from the environment.

The leaves of the tree start by sending the amount of success they sense to the root.

The root sends back an amount of resources based on the success received from the leaves, regulating the tickness of their connections.

Limitations

Implicitly synchronous.

Requires an underlying tree structure (can't work on graphs).

[1] Zahadat, P., Hofstadler, D.N., Schmickl, T. "Morphogenesis as a Collective Decision of Agents Competing for Limited Resource: A Plants Approach." 2018.

A Possible Solution

Porting VMC into a framework that by-design:

  1. supports graph structures and
  2. features asynchronous computations.

If the implementation is feasible, it will automatically overcome the limitations of the original model.

Meet Aggregate Computing[2]

A macro-programming approach that defines the collective behavior of heterogeneous devices in a self-organizing system.

Based on the Field Calculus[3], operates by manipulating distributed data structures called fields.

[2] Beal, J., Pianini, D., Viroli, M. "Aggregate Programming for the Internet of Things." 2015.
[3] Audrito, G., Viroli, M., Damiani, F., Pianini, D., Beal, J. "A Higher-Order Calculus of Computational Fields." 2019.

FieldVMC: Aggregate Computing-based VMC

Model

Nodes can compute.

Neighboring nodes can communicate.

Nodes have sensors:
success, resource, distance, and optionally position.

Nodes have optional actuators:
spawning and destroying.

FieldVMC: Aggregate Computing-based VMC

Implementation

(multiple) Trees are built on top of arbitrary networks using the self-organizing coordination regions (SCR)[4] pattern.

SCR performs continuously:

  1. Sparse leader election;
  2. Control region expansion from leaders;
  3. Upstream information flows construction;
  4. Decision-making and downstream propagation.
[4] Casadei, R., Pianini, D., Viroli, M., Natali, A. "Self-organising Coordination Regions: A Pattern for Edge Computing." 2019.

FieldVMC: Aggregate Computing-based VMC

How it works

  1. Leader(s) are chosen dynamically based on resource availability;
  2. A gradient field defines zones around each leader, organized by distance to their nearest leader;
  3. Nodes send data to their leader, forming a hierarchical tree;
  4. Leaders distribute resources based on node performance;
  5. Nodes act based on resources and success, spawning new nodes or self-destructing.

Supported features

  • Multiple leaders: allowing easier management of large network by splitting them in sub-systems;
  • Growth and shrink: different implementations of spawning/destroying strategies can lead to different structures.
  • Merge and split: ihnerits self-organizing capabilities from AC, thus supports network segmentation or merging.

Application example: Germination

One root sequence

Self-Construction

Creates a stable structure starting from a single node.

Application example: cutting

cutting sequence

Self-Repairing

Stabilization in two different structures starting from a damaged one.

Application example: Grafting

graft sequence

Self-Integration

Merging of two different structures into a single one.

Application example: Budding

More leaders sequence

Self-Segmentation

Multiple independent subsystems from a single one.

Application example: Abscission and regrowth

graft with spawning sequence

Self-Optimization

Optimized merging of two different structures.

Conclusion & Future works

The approach enables to express morphogenetic algorithm by a macroscopic perspective via aggregate computing.

Possible future directions:

  • Inspect more dynamics and complex organizational scenarios;
  • Investigate the system response to continuous perturbations;
  • Development of a software library of aggregate morphogenetic blocks.

Reproducible experiments here!

Examples repo

angelacorte/vmc-experiments