Sunday, July 9, 2017

Collective Computation

Collective computation is about how adaptive systems solve problems. All systems are about extracting energy and doing work, and physical systems in particular are about that. When you move to adaptive systems, you’ve got the additional influence of information processing, which we think allows a system to extract energy more efficiently even though it has to expend a little extra energy to do the information processing. Components of adaptive systems look out at the world, and they try to discover the regularities. It’s a noisy process.

Unlike in computer science where you have a program you have written, which has to produce a desired output, in adaptive systems this is a process that is being refined over evolutionary or learning time. The system produces an output, and it might be a good output for the environment or it might not. And then over time it hopefully gets better and better.
For example, the human brain:
The human brain contains roughly 86 billion neurons, making our brains the ultimate collectives. Every decision we make can be thought of as the outcome of a neural collective computation. In the case of our study, which was lead by my colleague Bryan Daniels, the data we analyzed were collected during an experiment by Bill Newsome’s group at Stanford from macaques who had to decide whether a group of dots moving across a screen was traveling left or right. Data on neural firing patterns were recorded while the monkey was performing this task. We found that as the monkey initially processes the data, a few single neurons have strong opinions about what the decision should be. But this is not enough: If we want to anticipate what the monkey will decide, we have to poll many neurons to get a good prediction of the monkey’s decision. Then, as the decision point approaches, this pattern shifts. The neurons start to agree, and eventually each one on its own is maximally predictive.

We have this principle of collective computation that seems to involve these two phases. The neurons go out and semi-independently collect information about the noisy input, and that’s like neural crowdsourcing. Then they come together and come to some consensus about what the decision should be. And this principle of information accumulation and consensus applies to some monkey societies also.


  1. Can you copy a description of what "adaptive systems" entails?

  2. Wikipedia: An adaptive system is a set of interacting or interdependent entities, real or abstract, forming an integrated whole that together are able to respond to environmental changes or changes in the interacting parts, in a way analogous to either continuous physiological homeostasis or evolutionary adaptation in biology. Feedback loops represent a key feature of adaptive systems, such as ecosystems and individual organisms; or in the human world, communities, organizations, and families.

  3. Thanks. So, training animals would be included? border collies to manage sheep, cats to keep away rodents, horses as cavalry?

  4. It's tricky. You could probably make those cases work well enough, but the element of human control and deliberation in training adds complications.

  5. Interesting. I'm a bit confused though by the role of the human. Note that wikipedia refers to communities, organization, and families.

  6. Could be communities of ants or birds, for example.