Overview

Fundamentally, computation can be thought of as information processing that solves a problem. Much of SFI’s research is dedicated to understanding how biological and physical systems compute — in evolutionary, developmental, or learning time — to improve outcomes.

For most people, computation entails programs running on computers, usually performing simple calculations or, for example, streaming films. This notion of computation suggests that it is something only engineered devices can perform — where the knowledge about the output and how to compute it comes from an external, all-knowing source (the engineer).

In fact, any system — biological or physical — that is attempting to figure out (in evolutionary, developmental, or learning time) the regularities in its environment is performing a computation. Initially, outputs of such computations might not be “correct,’’ meaning that the regularities the system perceives may not reflect the true state of its world. But over time, as the system gains experience — in other words, as long as there is some feedback mechanism — a noisy initial computation may become more refined and robust and even efficient.

The idea that biological and physical systems compute is not new, of course. Past research at Caltech, for example, has described the gene regulatory architecture as a circuit or series of Boolean operations or logical steps that robustly produces phenotypic features. SFI’s Seth Lloyd has famously proposed that the universe itself is a quantum computer. What is it calculating? Its own dynamical evolution!

Much of SFI’s research is dedicated to understanding how biological and physical systems solve computational problems. Tackling these problems requires modifying ideas from computer science and extending them to systems that are noisy, are constantly subject to unexpected shocks and crises, often lack a central controller, are non-stationary, and have access to only partial and often local information — so the “correct” answer can change with time.

Examples of the kinds of questions we work on at SFI range from how individuals make decisions in uncertain and variable social environments to figuring out the algorithms ants use to search for food and communicate the location of found food to other ants. We are also thinking about collective computation, where the aim is to understand how the behavioral strategies of components — whether they are neurons, ants, or social monkeys — combine to produce an adaptive output at the group level. We’ve studied how stochastic circuits describing this collective computation evolve. And we’ve built principled agent-based modeling platforms to study such problems as why an ancient society like the Anasazi of the American Southwest collapsed or how obesity spreads in a population.