Guiding the Emergence of Structured Network Topologies A Programmed Attachment Approach
René Doursat & Mihaela Ulieru http://doursat.free.fr
http://www.cs.unb.ca/~ulieru
Structured Networks by Programmed Attachment 1.
Self-organized and structured systems
2.
An abstract model of self-made network
3.
Further guidelines toward concrete applications
From flocks to shapes
From scale-free to structured networks
From “statistical” to “morphological” complex systems ¾ A brief taxonomy of systems Category
Agents / Parts
Local Rules
Emergent Behavior
A “Complex System”?
two-body problem
few
simple
simple
NO
three-body pb, low-D chaos
few
simple
complex
NO – too small
crystal, gas
many
simple
simple
NO – few params
patterns, swarms, complex networks
many
simple
“complex”
YES – but mostly
structured morphogenesis
many
sophisticated
complex
YES – reproducible
crowds with many leaders, machines
sophisticated
“simple”
COMPLICATED
suffice to describe it
random and uniform
and heterogeneous
– not self-organized
Statistical (self-similar) systems ¾ Many agents, simple rules, “complex” emergent behavior → the “clichés” of complex systems: diversity of pattern formation (spots, stripes), swarms (clusters, flocks), complex networks, etc.
9 yet, often like “textures”: repetitive, statistically uniform, information-poor 9 spontaneous order arising from amplification of random fluctuations 9 unpredictable number and position of mesoscopic entities (spots, groups)
Morphological (self-dissimilar) systems
“I have the stripes, but where is the zebra?” —(attributed to) A. Turing, after his 1952 paper on morphogenesis
Morphological (self-dissimilar) systems ¾ Many agents, sophisticated rules, complex emergence → natural ex: organisms (cells)
plants
vertebrates
arthropods
humans
9 mesoscopic organs and limbs have intricate, nonrandom morphologies 9 development is highly reproducible in number and position of body parts 9 heterogeneous elements arise under information-rich genetic control
¾ Biological organisms are self-organized and structured 9 because agent rules are more “sophisticated”: they can depend on the agent’s type and/or position in the system 9 the outcome (development) is truly complex but, paradoxically, can also be more controllable and programmable
Beyond statistics: heterogeneity, modularity, reproducibility ¾ Complex systems can be much more than a “soup” 9 “complex” doesn’t necessarily imply “homogeneous”... → heterogeneous agents and diverse patterns, via positions 9 “complex” doesn’t necessarily imply “flat” (or “scale-free”)... → modular, hierarchical, detailed architecture (at specific scales) 9 “complex” doesn’t necessarily imply “random”... → reproducible patterns relying on programmable agents
The need for morphogenetic abilities ¾ Model natural systems → transfer to artificial systems 9 need for morphogenetic abilities in biological modeling organism development brain development
9 need for morphogenetic abilities in computer science & engineering self-forming robot swarm self-architecturing software self-connecting micro-components complex networks
http://www.symbrion.eu
9 need for morphogenetic abilities in techno-social eNetworked systems self-reconfiguring manufacturing plant self-stabilizing energy grid self-deploying emergency taskforce
MAST agents, Rockwell Automation Research Center {pvrba, vmarik}@ra.rockwell.com
Structured Networks by Programmed Attachment 1.
Self-organized and structured systems
2.
An abstract model of self-made network
3.
Further guidelines toward concrete applications
2. An abstract model of self-made network ¾ Preview: formation of a specific, reproducible structure 9 nodes attach randomly, but only to a few available ports
1. 2. 3. 4.
Chains Lattices Clusters Modules
2. An abstract model of self-made network ¾ Simple chaining 9 link creation (L) by programmed port management (P)
“slower” link creation
t=1
X x
0
port
X’
x’ 0
0
t=2
0
1
2
1
1
ports can be “occupied” or “free”, “open” or “closed”
“fast” gradient update
port
t=0
0
1
2
0
t = 2.1
t = 2.2
t = 2.3
t = 3.0
t=3
0
t=4
0
3
1
2
2
1
4
1
3
2
2
3
0
3
1
4
0
2. An abstract model of self-made network ¾ Simple chaining 9 port management (P) relies on gradient update (G) 9 each node executes G, P, L in a loop G→P→L 9 P contains the logic of programmed attachment
2
3
0
0
x’ X’
“fast” gradient update
X x
if (x + x’ == 4) { close X, X’ } else { open X, X’ }
t = 2.1
0
0
0
2
1
1
t = 2.2
0
3
1
2
1
1 +1
+1
+1 t = 2.3
0
3
1
2
2
1
t = 3.0
0
3
1
2
2
1
2
0
2
0
2
0
3
0
2. An abstract model of self-made network ¾ Simple chaining
2. An abstract model of self-made network ¾ Lattice formation by guided attachment 9 two pairs of ports: (X, X’) and (Y, Y’) Y’ port X
0
x
0
0
0
2
X’ 1
1
1
1
1
0
2
2
0
2
0
1
1
0
y
Y
0
0
0 0
0
1
0
0
0
9 without port management P, chains form and intersect randomly y = 15
y=8 x=0
x = 10 x=0 y=0
x = 20 y=0
2. An abstract model of self-made network ¾ Lattice formation by guided attachment 9 only specific spots are open, similar to beacons on a landing runway
Y’
...
Y
X
if (x == 0 or (x > 0 & Y’(x−1, y) is occupied)) { open X’ } else { close X’ }
X’
lattice growing in waves
2. An abstract model of self-made network ¾ Cluster chains and lattices 9 several nodes per location: reintroducing randomness but only within the constraints of a specific structure 0
0
1
2 0
new intracluster port
1
2
1
2
2
0
2
0
1
2
C X
0
2
2
X’
1
1 1
1
0
0
2. An abstract model of self-made network ¾ Cluster chains and lattices
2. An abstract model of self-made network ¾ Modular structures by local gradients 9 more complicated structures can be developed by composing multiple chains and lattices modules with their own identities and local positional information inspired from biology: modularity and homology in evo-devo modules similar to “limbs” with distinct morphologies and geographies genotype
1×1 PF
PF SA
tip
SA
PF 3×3 4
PF
1×1
SA
tip
4×2 3 tip
phenotype
4 7 8 p = .15
6
SA blob p = .05
Doursat (2006-08) “Morphogenetic Engineering” (NECSI, Organic Computing, ALife XI, SASO) http://doursat.free.fr/research_bio_devo.html
2. An abstract model of self-made network ¾ Modular structures by local gradients
0
Xa
1
0 1
2
2 1
0
1
X’a
0
3
2 1
2
1 1
1
0
1
3
0
0
2
1
1
1
2
0
0
Xb
0
2
0
2
0
0
0
0
0
3
2 1
2
0
0
X’b 0
9 modeled here by different coordinate systems, (Xa, X’a), (Xb, X’b), etc., and links cannot be created different tags
1
3
0
2. An abstract model of self-made network ¾ Modular structures by local gradients close Xa if (xa == 2) { create Xb, X’b } if (xa == 4) { create Xc, X’c } if (xa == 5) { close X’a } else { open X’a } close Xb if (xb == 2) { close X’b } else { open X’b } close Xc if (xc == 3) { close X’c } else { open X’c }
X
X’
3
0
9 the node routines are the “genotype” of the network
2
1
1
4
3
3
2
4
1 0
2
2
5
0
0
3
Xc
1
...
X’c
1
1
2
2
5
0
0
2. An abstract model of self-made network ¾ Modular structures by local gradients 9 (preliminary simulation results)
single-node composite branching
iterative lattice pile-up
clustered composite branching
Structured Networks by Programmed Attachment 1.
Self-organized and structured systems
2.
An abstract model of self-made network
3.
Further guidelines toward concrete applications
3. Toward concrete applications ¾ Four notions to expand the model 9 model so far... abstract principles of self-made networks purely endogenous ability to form precise configurations foundations for the emergence of programmable structures that are neither repetitive nor imposed by the environment 9 ... must now be completed with four notions: 1) physical space 2) external events 3) agent functionality 4) action plans
3. Toward concrete applications 1) Physical space 9 real-world networks generally combine non-spatial & Euclidean topologies 9 when agents and devices interact in real space, take into account metric distance: in addition to gradient values (x, x’, y, y’, ...) nodes carry a real vector r = (rx, ry, rz) limits the scope of preattachment detection (nodes can only see “nearby” nodes) gives a mechanical meaning to nodes and links, for example through force-based layout
3. Toward concrete applications 2) External events 9 the propensity to create structured formations must also be influenced and modified by the environment 9 the internal dynamics must interact with an external dynamics of boundary conditions, events, landmarks, etc. triggers — “seed” points can aggregate structure growth (e.g., via “event-driven” ports searching external stimuli) attractors — chains can grow like trails aiming toward target points (e.g., via “tropism” rules that bias attachment, and “pull” in a given direction) obstacles — once immersed in space, an ideal structure must adapt and bend around obstacles
3. Toward concrete applications 3) Agent functionality 9 diversity of functional roles that agents may have, in addition to their self-assembly capabilities 9 natural heterogeneity of agents could be reflected in the model by a heterogeneity of ports and gradients, and diversified attachment rules that depend on predefined agent types 9 this could result in various types of subnetworks, e.g.: “intra-category” subnetworks linking agents of similar expertise “inter-category” subnetworks combining agents of different expertise into mixed clusters
3. Toward concrete applications 4) Action plans 9 effective network deployment cannot exclusively rely on peer-topeer self-organization at the local level 9 techno-social networks still need global monitoring and orchestration for that, high-level action plans could set the global course of the action, while lowlevel implementation details would be carried out by individual agents action plans could be compiled down into local rules of attachment and broadcast to all agents thus, the network could adapt to new events by reprogramming the agents on the fly to create new formations
3. Toward concrete applications ¾ Possible example: self-organized security (SOS) scenario
(mockup screens: not a simulation ... yet)
Structured Networks by Programmed Attachment 1.
Self-organized and structured systems
2.
An abstract model of self-made network
3.
Further guidelines toward concrete applications
Thanks to Adam MacDonald (UNB) for the simulations (based on his software “Fluidix”, http://www.onezero.ca)