a science analogy


In sketching an architecture for helper systems it's helpful to look at other (artificial) systems that have been successful as classifiers. The pre-eminent such system is the scientific enterprise itself. Scientists try to understand complex systems (the universe, the human mind, plate tectonics, whatever) just as information helpers would try to understand a complex system (a human user, other information helpers, a robot acting in the universe, the universe itself).

All scientists have their own slightly modified views of what's important and how to look for it, and no scientist knows very much about the current worldview or has enough time or knowledge to fathom it all. Similarly, no information helper can know very much about the problem under study because the problems are so much more complex than the systems trying to solve them.

Each scientist's personality alters perceptions of what's important. So two scientist can see exactly the same phenomenon and notice different things about it. In a sense, they are striking the phenomena against previously-built structures in their mind and looking for sparks. Wherever the sparks fly is where they focus their attention, ignoring all other possible dimensions of the phenomena under study. Similarly, information helpers needn't all have the same structure; it's likely to be beneficial for several of them to collaborate to solve a classification problem.

Scientists have a reasonably well-accepted shared worldview and they suggest hypotheses to explain discrepancies between the predictions of their worldview and the complex system under study. Scientists also need to communicate with each other to share information and test hypotheses. Further, there are many scientists, each with their own agendas clumped into cooperating, communicating, and competing units. The units themselves clump into cooperating, communicating, and competing units.

Scientists also clump into groups in a different way--some worry mostly about generating new hypotheses (the theorists), some worry mostly about testing those hypotheses (the experimentalists), some worry mostly about integrating those hypotheses into the worldview (the generalists). Through this complex web of activity, scientists build up an understanding of the universe they inhabit. And they have been remarkably effective considering the difficulty of the task.

This sort of system is not restricted to scientists organizing themselves to attack complex problems, it is similar to other adaptive systems on other levels of complexity. For example, the molecules inhabiting a cell act in similar ways. No single molecule is in charge in the cell. No single molecule grades the other molecules on their performance. No single molecule carries out the bulk of the metabolism of the cell, and so on.

Some of the lineaments of a computational system modeled on this analogy are:

* there should be multiple actors
* actors should have varying behaviors
* actors should compete for limited resources
* actors may communicate
* at least some actors should continually generate and test falsifiable hypotheses
* actors can be wrong
* actors are insufficiently complex to model the whole problem solved by the system
* no actor should control all other actors
* some actors may watch the behavior of other actors and evaluate their performance either for their own purposes or for the good of the group
* actors should be allowed to maintain a possibly inconsistent and incomplete yet largely common worldview. there should be internal pressure to increase consistency, or bound error, or both,

It is remarkable that these same attributes are largely shared by many other complex adaptive systems in the natural world. For example, the structure of the cell, the function of the immune system, the workings of natural selection, and the structure of the brain all share attributes similar to ones in the above list. This suggests that this model of computation may not be that far off from a realizable one. It still remains, however, to show that such a system is computationally realizable with today's technology.



last | | to sitemap | | up one level | | next