We have designed a network of computers we call "nodes". The network exists to solve problems. Give it any challenge and it will, eventually, find answers that are at first approximate, but increase in accuracy over time. The nodes in the network are each different, and yet they resemble each other at many levels.
Nodes have different specialties. There are nodes that apply pure computing power to solve problems. The universe of problems is large, almost infinite, so these problem-solving nodes specialize in different domains. This specialization happens through a mixture of chance and effort: to specialize in a problem domain takes both the right combination of computing abilities – speed, memory capacity, parallelism, economy – that each node has in different and delicate combinations, and through the long process of accumulating information and solution patterns for the domain in question.
Other nodes do little else except find new and interesting problems. They do not solve them, but rather they will pass them to a more specialized node for that task. Finding the "best" node for a task is not a simple proposition, and the network handles this by allowing nodes to compete for work, in effect creating an economy of clients and suppliers. Problems and their solutions are often broken into pieces and distributed through the network.
There are other nodes that specialize in knowing about other nodes: they maintain extensive databases about all the nodes they have ever connected to, and when they have the opportunity, they will exchange this information with other nodes of the same type. This information – or rather, its reliability – is itself considered a service, and forms part of the network economy.
The network is very large, and nodes form clusters, mainly organized geographically. These clusters adopt certain modes of operation that are suited to the local conditions, which vary from area to area. Each node may belong to many clusters, depending on the scale one looks at. Clusters develop specialized data protocols, again suiting the local conditions and the types of problems that face the local cluster economies. These protocols – which we can call "languages" – evolve over time, and when useful protocols evolve, they will often be shared between clusters. There are nodes that specialize in developing and translating these protocols.
Nodes compete with each other for resources such as energy, space, and information. The "best" nodes will succeed and the less successful ones will be gradually removed from the network. Similarly, clusters compete, and this provides the network with the various models of organization that it needs in order to best exploit its problem space.
Given the right raw materials, the nodes can build new nodes. Each node contains the plans and tools needed to build new nodes, but to assure a useful degree of variation, nodes do not build new nodes to a single predetermined pattern. Rather, two nodes will negotiate to collaborate to build some copies. Each time, they will assemble their respective component patterns, and invoke a randomization process that re-transcribes the originating patterns into a new, complete, and unique set of patterns. The results are the unique yet standardized capabilities that direct the resulting node towards one or other specialization within the network.
During this re-transcription process, the two originating nodes specialize towards different tasks. One node (the collector) specializes in the task of collecting the necessary resources. The other (the assembler) handles the task of preparing and assembling the new node. This separation of tasks is very effective and allows the network to grow rapidly whenever there is an opportunity. Nodes are the basic resource of the network, and this process of re-transcription is costly. The re-transcription process is an essential and basic engine of the network economy. In order to re-transcribe, collector nodes must compete with each other to collect resources, while assembler nodes compete with each other for the opportunity to collaborate with the most successful collectors.
Of the nodes that collect and solve problems, most are also collectors. Of the nodes that maintain databases on other nodes, most are assemblers. A successful re-transcription based on a good matching between collector and assembler often forms the basis for a long-lasting micro-cluster involving the two originating nodes and the new produced node or nodes.
The nodes are not "conscious" in any sense we would recognize. They do not, for instance, have anything more than a local view of the network, and many nodes do not even have the knowledge that the network exists. Nodes are highly aware of their local clusters, however, and of their own roles within those clusters and micro-clusters.
Their role is constantly reinforced and recalibrated through the constant economic interactions with other nodes. To ensure that these interactions are valid – and not fraudulent – nodes have a number of meters that they can use to measure their own behavior and that of the nodes around them. These meters include a measurement of their relative success as collectors or assemblers, a measurement of the economic transparency of transactions carried out by themselves or others, measurements of the health of their cluster, measurements of the relative success of their cluster with respect to other clusters, and so on.
The network has inevitably evolved nodes that cheat and abuse other nodes. In some clusters, this is the most effective way to accumulating resources. The competition between clusters can also get quite intense, even destructive, at times. We believe these are unavoidable and ultimately necessary side-effects of the network's economical model.
Over time, the network has managed to solve more and more complex problems by increasing the number of nodes and increasing the depth of specialization of each of them. This allows the network to solve problems that are both wide and deep. The network is not alone: there exist many other networks, built around similar but generally simpler models. Our network has inevitably been able to compete and win against these other networks by treating the competing network as a "problem to solve", and then solving it.
In this sense, we can say that the network has been a resounding success.