Before considering the dynamic aspect of stigmergic systems, let's now look more closely at the trails. These are the means by which ants and users of a stigmergic system transfer their information to the landscape or environment.
Ants enter information into a landscape by laying a trail of special protein elements called pheromones. Humans enter information into a computer environment by leaving a trail of binary digits in their computer's memory.
These may be physically and informationally different, but, at an abstraction, these functions are similar and comparable.
Creating a complex message trail
The pheromone trails left by ants contain very little information. They simply indicate to another ant - that has the genes to read the trails - where there is a source of food. Repetitive over laying of trails and evaporation has the effect of updating the information, making sure the information in the landscape is always up to date.
In this simple system, there is no information on the particular ant that has laid the trail. There is nothing to be able to tell another ant where the trail laying ant can be contacted or information about other areas the ant has explored. But, of course, this is not necessary for ants, so there has been no evolutionary pressure for this additional information to included in the trail or genes to transfer this information.
To ants, food is food and it doesn't matter which ants provide the directions or what form the food takes. For humans the situation is far more complicated. It does matter who provides sources of information and it does matter what kind of information is being pointed to. Because there are so many types of different information available to humans, there needs to be ways of making definitive choices, comparing conflicting sources, determining accuracies, resolving ambiguities. There may even be a need to contact the information source provider.
Laying and reading such a complex message in a trail of pheromones may be beyond an ant's capability, but it isn't beyond the capabilities of a human with a computer. Given the necessary code modules, to enable a human to read and write this information into a computer environment, it is quite easily done.
Complex landscapes and environments
Before we can progress further with discussion of trails, we have to consider the nature of the landscape in which the trails will be laid. Trails and landscape are inseparable in any stigmergic system and must be considered together. If you want to lay complex trails you will need a complex landscape in which to lay them.
The Web site, a stigmergic system has to create, needs to contain more than just the means for a user to read and write trails: it also has to provide a matching landscape. This is important because the concept of stigmergy is primarily concerned with making use of the landscape as an intermediary in the transfer of information.
Ants simply lay trails in their landscape and the landscape effectively provides the intelligence: the memory, the updating and the processing that combines the trails into a route map to food sources. To use this same concept, we have to think in terms of humans interacting with a computer environment which provides the intelligence: the memory, the updating and the processing that combines the trails into a route map to information sources.
Here is where many people have trouble understanding the concept of stigmergy, because it is natural to think of the intelligence as being in the ants. It is not, it is in the landscape (or computer environment). This is a difficult paradigm shift to make, because it is counter intuitive. The best way to think of it is to remember that a stigmergic system simply provides individuals with the means to interact with the landscape; it then leaves them free to use these facilities as they like and with very few restraints.
For ants, the landscape is very simple. For humans, using computers, the landscape can be as complex as you'd like to make it.
Formatted landscapes and environments
As mentioned before, to ants, food is food and it doesn't matter what form the food takes. For humans the situation is far more complicated because it does matter what kind of information is being pointed to. For this reason, one of the most essential features an intelligent environment must have is the ability to categorize information. Like the human brain, it must have some kind of formatted area, where different kinds of information can be kept in different compartments.
Here humans have a great advantage over ants because they can create a formatted landscape in which trails can be laid. This will allow the landscape to be divided and subdivided into many identifiable regions, with all regions accessible by means of a hierarchical routing structure. The ability to be able to format the landscape allows us to specify where people lay their trails. In effect, this is putting the categorization processing into the landscape, removing the need for this to be carried out by a backend database procedure.
(Note: the way a stigmergic system landscape is formatted is quite complicated and is dealt with in detail in part 5. For the moment, just assume that the landscape can be formatted into a grid of different subject areas).
Subject areas in an environment
Ants have a single landscape into which they lay their pheromone trails. Humans, with a formatted computer environment, can have a choice of many different landscapes in which to lay their information trails.
Each formatted area of a formatted computer environment can be considered as an independent, separate information space. Besides having different trails, they can have their own individual structures and organization. It is this feature, which adds huge potency to the application of stigmergy in dealing with the transference of information between people.
Using a questionnaire to give trails a structure
Let's now go back to considering trails - as they might be laid down in these individual information spaces (subject area landscapes).
In each information space, within a formatted environment, a stigmergic system needs to provide a means for people to lay trails. These trails must be such as to allow the maximum exchange of information.
If the information in a trail is unstructured it would be grossly inefficient; it would be difficult for users to find specific information they need and difficult to compare similar information from different sources. This calls for a need to structure the information trails in some way.
The sensible way to structure information trails is to try to anticipate the kinds of information users might need. Then, the different kinds of information needed can be compartentalized: organizing the trail as answers to a variety of user needs The simplest, and most efficient, way to do this is through a set of answers to specific questions. In other words, you think of all the questions a user might want to ask in a particular subject area and then put these into a questionnaire. Information providers can answer these questions (where they can) and their answers would then constitute the trail they enter into a subject information space.
Here is where the landscape comes in. It can arrange for the trails from many different information providers to be combined. This will allow users to go to a specific subject area, look up a question (that reflected their information need) and be able see and compare all the answers given to that question.
Turning questionnaires into agents
The first thoughts of most people, when considering the exchange of information, is that it should be on a person to person basis. This is not what stigmergic systems are about. A stigmergic system doesn't facilitate direct person to person interaction; it facilitates the exchange of information via the landscape. This is how ants share information, they don't communicate directly; their pheromone trails are pointers to where information can be found. However, in a stigmergic system, this information exchange can be far more sophisticated than that of the ants because the information exchange takes place with the aid of agents.
In the location of information, most people use search engines, which incorporate algorithms to search information looking for patterns - such as combinations of key words or phrases. More sophisticated algorithms take the form of autonomous or cognitive agents - that use some form of artificial intelligence (such as neural nets) to make inferences. The benefits and limitations of search engines and autonomous or cognitive agents will be covered in part six of this tutorial, but, at this stage we will be concerned with a special kind of agent: a passive agent, which acts on behalf of its owner to answer questions.
Such an agent doesn't have to have any intelligence or do any processing. It is simply a piece of software that has a "memory". In this memory, answers to questions can be stored and the trivial function of the agent is to take an answer from its memory when a relevant question is asked. The essence of a stigmergic system, is that trails in the landscape take the form of such agents - with their memories carrying answers provided by their owners. In this way, an information provider will effectively have an agent that answers questions on their behalf.
The advantage of using agents, rather than storing answers in a database, is they are independent entities. They can be placed in an information space, where their owners can change or modify them as they wish. Also, as we shall see in parts five and six of this tutorial, they can be given special functions and have the ability to move around in the information space.
This is a neat paradigm shift. With this metaphor, trails in a stigmergic system landscape have much more significance than merely information: they take on the appearance of agents acting according to the instructions of their owners.
Structure of agents (or trails)
A good example of agents, as used in a stigmergic system landscape is illustrated in the diagram below. This project (described in the 'Refrences' section) provided was designed to help cancer patients obtain information about particular types of cancer and where they can find suitable treatment trials.
For each type of cancer, a separate subject area has to be created in the landscape. Each of these subject areas has to accommodate the information from three different types of contributors: medical practitioners; managers of treatment trials; and patients. This required three different types of agents.
The input from these information providers is obtained by having them answer questionnaires - the facilities to answer the appropriate questions are provided as a set of functions built into a Web page. Clearly, a quite different set of questions are needed for each of the three different types of information providers. This requires three different kinds of trail formatting: as shown in the diagram above. These categories are also incorporated into the memories of the agents, which are created from the questionnaires.
Although the trails (agents) would take these same general forms, each type of cancer condition would require a different set of questions in the questionnaires. As there are 420 different types of cancer, each with dozens of different variations, it is impossible to predetermine exactly what questions should be included in each and every questionnaire. They would have to be specific for each of the myriad of cancer condition subject areas that might be needed. A stigmergic system has to solve this problem.
Creating an attractor
The key to the success of a stigmergic system is the attraction of the information it provides. This attraction occurs at the subject area level, where each individual subject area will appeal or not appeal to users. In other words: to be successful, a subject area must act as an attractor to both information providers and people seeking information.
The big question is "How you arrange for a stigmergic attractor to become successful". It is a chicken and egg situation: what comes first? If you have many people providing excellent links to information sources you would be able to attract users. Or, if you have plenty of users visiting a subject area it would attract information providers. How do you arrange to get both when you have to start off with neither?
To solve for this problem (as you'll see in part 3 of this tutorial) we have to give another meaning to the word "attractor", we have to use it in the sense it is used in chaos and complexity theories. As a first introduction to this powerful concept, here's a bit of theory for you:
In their efforts to survive, compete and reproduce, biological organisms have to deal with a continuous onslaught of new and volatile information. Nature has evolved a truly remarkable solution to this problem, which has only been discovered in recent times (after database technology became widespread). Instead of creating a database type structure, which requires accurate categorization and efficient algorithms, it makes use of a quirk of complex systems called an attractor.
With mathematical simulations, it can be shown that all complex systems have a natural tendency to spontaneously settle down into a steady state of organization - called an attractor basin - when certain restraints are put on the system. If these restraints, in the form of rules or variables are changed, the system can be switched from one steady state to another. Nature's trick is to keep playing around with the rules and variables of an attractor until a new steady state suddenly appears, which enables an organism to perform more efficiently.
It is this trick, which can be used with stigmergic systems - to produce an efficient, self-organizing framework in which people can share information and make contact with each other.
The general idea is that the landscape, in which people place information sources they wish to share, is continuously monitored and modified by the stigmergic system program. Changes that increase the activity and efficiency of the information exchange are retained, other changes are discarded. In this way, an attractor can be changed from a state of failure to a state of success. Not only this, it can be arranged to continuously adapt to constantly changing informational trends and needs in particular subject areas; always tending to become optimally more organized and efficient.
This is in sharp contrast to database technology, which has to rely on a relatively rigid, preconceived hierarchical structuring which is expensive to adapt and modify.
The key to this use of attractors is the interplay between the functions provided to people for them to enter their information and the landscape in which they place it. The programs responsible are in a symbiotic relationship, enabling them to coevolve in a way that would be impossibly difficult through rational design.
Adapting to the users
In nature, organisms don't exist in isolation. They exist in a constantly changing environment, which is continuously being changed by the organisms themselves. This is a highly complex association, where their mutual interdependence causes them to influence the evolution of each other. This is known as coevolution.
It is this kind of unpredictable, interdependent relationship - between users and their computer environment - that cannot be accommodated using conventional database technology. This is why database technology has to proceduralize and restrain user activity, forcing users to adhere to fixed procedures.
A stigmergic system on the other hand, is designed to encourage the unpredictable interactions of the users with their environment. There are no rigid rules to maintain design constancy. The system is allowed as much freedom as possible to encourage coevolution. In this way, the optimum design of the components of the system will emerge of their own accord.
This arrangement also gives the system a freedom to change and adapt to the most efficient way users find to make use of the system. It will even allow the system to evolve methods of use that have not been envisaged by the original programmers and designers. This is the way nature works, organic systems find their own way to optimal performance and efficiency. This is the way stigmergic systems are designed to work also - but this requires a special kind of thinking that we will deal with in part three.
Note: the 'Example (Kempelen Box)' link in the menubar provides a demonstration of a simple stigmergic system. There you will see the questionnaire used to create agent memories and you'll be able to interact with the agents and even create an agent for yourself. Notice how similar it appears to the kind of display that you'd get if this was created with a regular database.
End of article