Saturday, January 12, 2019

Taming emergent engineering

Understanding and engineering emergent behaviors is one of the long-standing challenges of complex systems.  Over the past fifteen years, one step at a time my collaborators and I have been pinning down the engineering of emergent behaviors.  Our most recent publication, however, represents quite a major step in the project.

"A Higher-Order Calculus of Computational Fields", out this week in ACM Transactions on Computational Logic, finally puts a solid mathematical link between collective phenomena and local actions.  In this paper, we present not one but two equivalent semantics for aggregate programs: one in terms of local actions of devices and the other in terms of collectives extending across space and time.  Every field calculus program expressed in one view can be automatically translated to the other, from global to local and from local to global.  We've been working with this result informally for many years, but now we have rock-solid mathematical proof.

Now combine that with "Space-Time Universality of Field Calculus", a paper we published last year demonstrating that every computable function over space and time can be implemented using field calculus.  That tells us that, no matter what emergent behavior you might be dealing with, if it is physically possible, there is guaranteed to be a program that can be expressed in our simple language that can both describe the collective behavior and be applied to produce it from local interactions.

This doesn't mean we can predict the behavior of any old system out there.  Just because you know there is a description doesn't mean it will be easy to find it, or that said description will be simple. Likewise, it might be difficult to understand the implications of a program. But having a simple language that is guaranteed to cover all of the relationships of interest can make a very big difference in just how hard that search space is to navigate.

Unfortunately, I don't really recommend that you read either paper unless you love wading through heavy mathematical symbology.  Ultimately, once you wrap your head around the mathematics, the core ideas of each paper are fairly simple and elegant, but there's a lot of supporting details that have to be dealt with, systematized, and pinned down with mathematical variable names.

Next step: making a more digestible summary of the key results available to the wider community who may be interested.

Example of resolving an aggregate function call over space and time in higher-order field calculus.

No comments: