One of the many reasons humanity is at an inflection point is that the age-old dream of the “global brain” is finally becoming a reality. Some of the best work being done in the space is at the MIT Center for Collective Intelligence. A few of their researchers (including founder Thomas Malone) have just written a short paper Programming the Global Brain.
In the paper the authors propose six programming metaphors that will facilitate the formation of the global brain:
● An idea ecology – The global brain can host a constant ferment of idea generation, mutation, recombination, and selection, analogous to biological evolution. In this context, programming consists of soliciting collections of items and specifying a fitness function for choosing among them. Interesting examples of this include the MATLAB open programming contests (for software) and YouTube (for videos).
● A web of dependencies – Many important problems (such as product, process, and policy definition) can be viewed as collaborations, where multiple diverse agents try to solve interdependent pieces of a larger problem. The global brain can detect when conflicts appear between sub-solutions, as well as guide agents towards a globally consistent result. In this context, programming includes defining the task decomposition and specifying ways of managing the interdependencies among sub-problems. Early examples of this include virtual mockups such as the Digital Pre-assembly system Boeing used in the design of the 777 aircraft.
● An intellectual supply chain – For some problems, we can view the global brain as a supply chain, where a sequence of tasks and information flows among people and machines can be specified in advance. In this context, programming can be defined in terms already familiar to computer scientists as processes and dataflows. Interesting examples of this idea include the Turkit and Crowdforge systems.
which have been applied to such tasks as writing and editing articles.
● A collaborative deliberation – The global brain can also be used to enact decision processes where people and software systems select issues to consider, enumerate and critique solution alternatives, and then choose some subset of these solutions. In this context, programming can be viewed as defining the rules for identifying issues and enumerating, critiquing, and selecting solutions.
● A radically fluid virtual organization – Sometimes it’s useful to view the global brain as a collection of evanescent virtual organizations, which rapidly coalesce, perform, and disband in light-speed open markets. In this context, programming includes identifying the task requirements and selecting among the organizations that are offering to perform the task. Interesting examples of this idea include odesk.com and elance.com.
● A multi-user game – Many tasks can be presented as a multi-user game, where useful outcomes are achieved as a result, sometimes unintentional, of playing the game. In this context, programming consists of specifying the rules and incentives for game play. Interesting examples of this include fold.it and the Google Image Labeller.