This is kind of a sanity check / knowledge represe...
# linking-together
p
This is kind of a sanity check / knowledge representation question thats been bothering me for quite some time now. Whenever I end up modelling systems on a big scale, I end up drawing things like. So this is like layers of the system with each layer containing subsystems that can be layered or are graphs in themselves. Now these entities are in flux in that they change their topology as time progresses. This is the biggest model I can conjure up to visually articulate my conceptual understanding of most systems. My question is, are these the natural concepts to represent complex systems or are there simpler fundamental units that can be composed to build bigger systems that generate the desired system dynamics? Have you guys come across anything in the literature? I have this inkling that graphs . could probably be expressed with some sort of simple units of composition.
👍 4
s
This reminds me of three random things you might or might not find helpful: 1. The Architecture of Complexity (http://www2.econ.iastate.edu/tesfatsi/ArchitectureOfComplexity.HSimon1962.pdf) 2. The pattern of composition over monoidal structures could be an alternative model I just mentioned here: https://futureofcoding.slack.com/archives/C5U3SEW6A/p1562155840164900?thread_ts=1562107818.137200&channel=C5U3SEW6A&message_ts=1562155840.164900 3. This touches on category theory somewhat, but then everything kind of does. Not sure if you want to explore that rabbit hole… if so, come join us in #CKC6FM9DF.
❤️ 3
s
Does the
i
,
i + 1
represent time/evolution of your systems? Capturing both structural and evolution (or dynamics/interactions) on the same diagram is certainly challenging, but what you have here makes sense, visually. I think Time Machine on OSX has a similar way of representing evolution/versions.

https://www.simplehelp.net/images/timemachine/tm11.jpgâ–ľ

i
@Prathyush This is exactly how I envisioned the abstraction mechanism in Hest looking. The nesting would happen along the z-axis, into the screen, so it'd be as if your camera were at the top of that image pointing down. So to answer your question... for me, yes, this is the most natural way to mentally visualize complex systems. One aspect not shown in this image is that this you'd need the outer structure to be a graph, not a tree. For instance, a math utility library that helps you deal with real numbers might be referenced in many otherwise separate systems. This can still be visualized as layers, where when travelling from one layer down to the next, each point in the upper layer expands—like a cone—into a region of the lower layer, you'd just have some of the points expand down to the same region in the layer below. There are other similar tweaks you'd need to make to account for recursion, or the fact that the same shared code might be referenced from many different layers (eg: if the top layer references the math library, and a lower layer does too). But in the most simple form, your image is fantastic.
p
@Stefan Thanks a lot for the input on this! Love that Herbert Simon paper. I could be wrong here but I think whole of category theory as a study of morphisms over topological entities has the same layered graph idea as the it's central unifying metaphor. I am thinking more about things like perceptrons of Minsky (which is again a neural network ~ graph), or Ulf Grenander like pattern generators, may be even composing cellular automata together to build and reason about complex systems.
@Sébastien No, i and i + 1, I consider as discrete computations which may or may not have the same time (concurrent computations). I am aware about TimeCapsule and there's this whole paper on state of the art graph visualization techniques here: https://pdfs.semanticscholar.org/a4db/7fdb7224456e98bd41b6803b5fb29296ec01.pdf I want to explore more fundamental building blocks other than dot and arrow model of graph theory to build bigger systems.
@Ivan Reese I think graph based domain modelling is indeed in some sense natural and the predominant organizing model in most of knowledge representation, but something tells me that there are alternative models with better trade-offs. Check out those pattern generators by Grenander. You Hest is also a very welcome change in the way we directly manipulate behaviour on screen. Really great job on building something like that. Now that image is from a paper I stumbled on about managing complexity called "Systems Theoretic Techniques for Modeling, Control and Decision Support in Complex Dynamic Systems" It has got more cool images: https://arxiv.org/pdf/1008.0775.pdf And I think he does indeed think of the predominant model as another graph instead of being a tree with cross references. My only gripe with such a model is that once you bring in time to track the topological changes, it quickly has a chance to devolve into a messy hairball that then displays multiple conformations over time, to which the only sane approach is to divide it into domains of interest and then inspect the pieces one by one. I am thinking out loud what other units of composition might be out there to build systems up from scratch and what kind of trade offs they might have.
k
From @Stefan’s pointer to The architecture of complexity (pg 8):
Philip assembled his Macedonian empire and gave it to his son, to be later combined with the Persian subassembly and others into Alexander's greater system. On Alexander's death, his empire did not crumble to dust, but fragmented into some of the major subsystems that had composed it. If one would be Alexander, one should be born into a world where large stable political systems already exist. Where this condition was not fulfilled, as on the Scythian and Indian frontiers, Alexander found empire building a slippery business. So too, T. E. Lawrence's organizing of the Arabian revolt against the Turks was limited by the character of his largest stable building blocks, the separate, suspicious desert tribes..
I'm not an expert on any of this, but it's just delightful to see a reference to history in a technical paper.
p
I think this idea of knowledge representation gets generalized with multi agents: http://www.illc.uva.nl/Research/Publications/Reports/PP-2004-20.text.pdf Also, found out about Lazzarini's network chains a few days ago:
@Stefan Finished reading Herbert Simon paper. It was such a great recommendation. Didn't understand all the parts but I could see how thorough his computational thinking style was. May be reading more of his works would provide better context for the cross-disciplinary approach he followed. Also, as a trivia learned about IPL and how it influenced LISP. Thank you!
👍 1