Wild Computing Introduction My subject here is the philosophy of Internet AI engineering: the general ideas that must be understood in order to create intelligent computer programs in the Internet medium. Only a few of these ideas are of my invention; this is a body of knowledge that has emerged from the community of computer scientists, engineers, complexity scientists and associated thinkers over the last few decades. But I believe I have filled in a few crucial gaps. This is not a traditional "AI philosophy" book. I take it for granted here that computer programs can have minds, if they are designed correctly. And I take it for granted that computer programs can be conscious -- ignoring the "problem" of computer consciousness just as I ignore the "problem" of human consciousness every day, as I interact with other humans. The reader who is interested to know my views on these matters can consult my previous publications. I firmly believe that, by fleshing out and implementing the ideas given here, over the next decade, we will be able to create Internet-based AI programs that surpass human beings in general intelligence. Some of our expectations about AI will be remain unfulfilled -- for example, the Turing test, which requires a computer to simulate a human in conversation, is unlikely to be passed until we can engineer human-like bodies for our AI programs. But in other areas, our AI programs will exceed our expectations dramatically. Our understanding of the collective intelligence of the human race will be greatly enhanced by interaction with AI systems linked in to the collective data resources of the Internet. Of course, I am aware that AI optimism has been proved wrong before -- AI pioneers of the 1950's and 60's predicted that true machine intelligence was right around the corner. But like optimism about human flight 150 years ago, AI optimism is bound to be proved right eventually. The AI theorists of the 50's and 60's lacked many the ideas needed to realize machine intelligence, but they also lacked adequate hardware. If they had had the needed machinery, they probably would have corrected their ideas in the iterative manner typical of empirical science. Now we have PC's with 4 gigabytes of RAM, mainframes with 100; and we have high-bandwidth network cable that can link an arbitrary number of computers together into a single computational process. Just barely, we have the firepower needed to implement a mind. The ideas in this book provide the key to making use of this firepower. Part of the key to thinking about Internet AI correctly is placing AI in the correct context. Exciting things are happening in computing -- the Internet is more than just a way to send naked pictures of Pamela Andersen to your buddies in Chechnya. There is a new kind of computer science and computer technology brewing, one that focuses on self-organizing networks and emergent dynamics rather than algorithms and data structures (though algorithms and data structures will still be there, to be sure, just as the bit-level constructs of assembly-language were not vanquished by the advent of structured programming). Artificial intelligence is essential here, because humans don't have the time or the ability to deal with the glut of rapidly shifting information that modern networks bring. And the network computing revolution is essential, because mind and brain are necessarily networks. A non-network-based computing paradigm can never adequately support AI. Java, the premier language of the new paradigm, is maturing into a central role in server-side network apps. Exciting new Java-derivative technologies like Objectspace Voyager are beginning to take off, and yet others like Jini and Javaspaces are waiting in the wings. Electronic commerce is beginning to become real, especially in the realm of business-to-business commerce; and online AI is finally picking up speed -- embedded in websites like Excite and barnesandnoble.com are sophisticated systems for learning and guessing user profiles. We are just a few years away from the situation where the various intelligent systems on the Net, like the ones inside Excite and barnesandnoble.com, are learning from each other rather than existing as islands of intelligence in a sea of inert text and data. The Internet, and the computing environment in general, is poised for the advent of real artificial intelligence. What is needed to make it happen is understanding on the part of the technical community -- understanding of how the network of mind emerges from the underlying network of computers. For the last two years, since I founded the Silicon Alley start-up company , I have been involved in building an internet-based AI system called Webmind, which exemplifies the methodologies of AI design to be discussed in the following pages. This project has been challenging and exciting, but has left me fairly little time to reflect on the general lessons and principles underlying the work I'm doing, and even less time to write down these lessons and principles systematically. This book synthesizes some of the ideas that I have had time to write about. Most of the chapters originated as informal articles, written to clarify ideas to myself and distributed informally to various e-mail co-workers and acquaintances; several pertain specifically to our work Chapter 1 reviews the network computing paradigm and its relevance to intelligence; Chapters 2 and 3 follow up on this by exploring the "mind as network" theme as it relates to the structure of the brain and the abstract structure of cognition. Chapter 4 presents a general philosophical framework for understanding Internet information space, beginning from philosopher Kent Palmer's four ontological categories: Pure Being (data), Process Being (programs), Hyper Being (network computing) and Wild Being (the next stage, emergent Internet intelligence; the origin of the term Wild Computing). Chapters 5 and 6 discuss Internet AI from two very different perspectives: economics and transpersonal consciousness (the World Wide Brain, encapsulating the essential patterns of the human "collective unconscious"). Chapters 7 and 8 introduce and discuss the Webmind network AI architecture that we are currently building at a specific example of the new network AI paradigm. The full details of Webmind are not entered into here, but the architecture is painted in broad strokes, and it is indicated how Webmind has the potential to fulfill the promise of next-phase, emergent AI. Finally, Chapter 9 describes some ideas as to how a new agents communication protocol could allow a diverse population of intelligent network entities, including Webminds, to synergetically interact -- and hence form the practical infrastructure for a global brain. This is a diverse body of thinking, and I have not attempted to force a false unity upon it. There is a real underlying coherence here, and I am too aware of its depth and profundity to want to obscure it under a glib, premature systematization. (As Nietzsche said, "The will to a system is a lack of integrity.") Instead, , the book mirrors its subject matter, in that the topics presented are not locked together into a rigid linear series, but represent rather nodes in a network, interrelating with each other in numerous complex ways. As the new computing develops, the pattern of interrelation between its various aspects will become clearer and more aesthetic. We are all part of this clarifying process. Wild Computing Chapter 1: The Network is the Computer is the Mind 1. Past and Future History of the Internet The evolution of the Internet up till now can be divided, roughly speaking, into three phases: Pre-Web. Direct, immediate interchange of small bits of text, via e-mail and Usenet. Indirect, delayed interchange of large amounts of text, visual images and computer programs, via ftp. Web. Direct, immediate interchange of images, sounds, and large amounts of text. Online publishing of articles, books, art and music. Interchange of computer programs, via ftp, is still delayed, indirect, and architecture-dependent. Network Computing. Direct, immediate interchange of animations and computer programs as well as large texts, images and sounds. Enabled by languages such as Java, the Internet becomes a real-time software resource. Intelligent agents traverse the web carrying out specialized intelligent operations for their owners. The third phase, the Network Computing phase, is still in a relatively early stage of development, driven the dissemination and development of the Java programming language. However, there is an emerging consensus across the computer industry as to what the ultimate outcome of this phase will be. For many applications, people will be able to run small software "applets" from Web pages, instead of running large, multipurpose programs based in their own computers' hard disk drives. The general-purpose search engines of the Web phase will evolve into more specialized and intelligent individualized Web exploration agents. In short, the Web will be transformed from a "global book" into a massively parallel, self-organizing software program of unprecented size and complexity. But, exciting as the Network Computing phase is, it should not be considered as the end-point of Web evolution. I believe it is important to look at least one step further. What comes after Network Computing, I propose, is the autopoietic, emergently structured and emergently intelligent Web -- or, to put it metaphorically, the World Wide Brain. The Network Computing environment is a community of programs, texts, images, sounds and intelligent agents, interacting and serving their own ends. The World Wide Brain is what happens when the diverse population making up the Active Web locks into a global attractor, displaying emergent memory and thought-oriented structures and dynamics not programmed into any particular part of the Web. Traditional ideas from psychology or computer science are of only peripheral use in understanding and engineering a World Wide Brain. As we shall see in the following chapters, however, ideas from complex systems science are considerably more relevant. It may seem hasty to be talking about a fourth phase of Web evolution -- a World Wide Brain -- when the third phase, network computing, has only just begun, and even the second phase, the Web itself, has not yet reached maturity. But if any one quality characterizes the rise of the Web, it is rapidity. The Web took only a few years to dominate the Internet; and Java, piggybacking on the spread of the Web, has spread more quickly than any programming language in history. Thus, it seems reasonable to expect the fourth phase of Internet evolution to come upon us rather rapidly, certainly within a matter of years rather than decades. 2. Network Computing The history of networks as a computing paradigm is at first glance simple. There were mainframes and terminals, then PC's and local-area networks ... and now large-scale, integrated network computing environments, providing the benefits of both mainframes and PC's and new benefits besides. This is a true story, but far from the whole story. This view underestimates the radical nature of the network computing paradigm. What network computing truly represents is a return to the cybernetic, self-organization-oriented origins of computer science. It goes a long way toward correcting the fundamental error committed in the 1940's and 1950's, when the world decided to go with a serial, von-Neumann style computer architecture, to the almost total exclusion of more parallel, distributed, brain-like architectures. The move to network computing is not merely a matter of evolving engineering solutions, it is also a matter of changing visions of computational intelligence. Mainframes and PC's mesh naturally with the symbolic, logic-based approach to intelligence; network computing environments, on the other hand, mesh with a view of the mind as a network of intercommunicating, intercreating processes. The important point is that the latter view of intelligence is the correct one. From computing frameworks supporting simplistic and fundamentally inadequate models of intelligence, one is suddenly moving to a computing framework supporting the real structures and dynamics of mind. For mind and brain are fundamentally network-based. The mind, viewed system-theoretically, is far more like a network computing system than like a mainframe-based or PC-based system. It is not based on a central system that services dumb peripheral client systems, nor it is based on a huge host of small, independent, barely communicating systems. Instead it is a large, heterogenous collection of systems, some of which service smart peripheral systems, all of which are intensely involved in inter-communication. In short, by moving to a network computing framework, we are automatically supplying our computer systems with many elements of the structure and dynamics of mind. This does not mean that network computer systems will necessarily be intelligent. But it suggests that they will inherently be more intelligent than their mainframe-based or PC counterparts. And it suggests that researchers and developers concerned with implementing AI systems will do far better if they work with the network computing environment in mind. The network computing environment, supplied with an appropriate operating system, can do half their job for them -- allowing them to focus on the other half, which is inter-networking intelligent agents in such a way as to give rise to the large-scale emergent structures of mind. Far more than any previous development in hardware, network computing gives us real hope that the dream of artificial intelligence might be turned into a reality. 3. The Network Becomes the Computer The history of computing in the late 20'th century is familiar, but bears repeating and re-interpretation from a cybernetic, network-centric point of view. As everyone knows, over the past twenty years, we have seen the mainframes and terminals of early computing replaced with personal computers. With as much memory and processing power as early mainframes, and far better interfaces, PC's have opened up computing to small businesses, homes and schools. But now, in the late 90's, we are seeing a move away from PC's. The PC, many computer pundits say, is on its way out, to be replaced with smart terminals called "network computers" or NC's, which work by downloading their programs from central servers. An NC lacks a floppy drive; word processing and spreadsheet files, like software, are stored centrally. Instead of everyone having their own copy of, say, a huge word processor like MicroSoft Word, the word processor can reside on the central server, and individuals can download those parts of the word processor that they need. Routine computing is done by the NC; particularly intensive tasks can be taken over by the central computer. At the present time NC's are not a viable solution for home computer users, as the bandwidth of modem or even ISDN connections is not sufficient for rapid transmission of complex computer programs. For businesses, however, there are many advantages to the network computing approach. Internal bandwidth, as exploited by local-area networks, is often already high, and by providing employees with NC's instead of PC's, an employer saves on maintenance and gains in control. And once cable modem or equivalently powerful technology becomes common, NC's will be equally viable for the home user. The individual PC, with its limited array of software, will quickly come to seem sterile and limiting. Why pay a lot of money for a new game which you may not even like, when you can simply download a game in half a minute, and pay for it on an as-you-play basis? When it is almost as fast to download software from the Net as it is to extract it from the hard drive of a PC, the advantages of PC's over NC's will quickly become negative. The entire network becomes a kind of virtual hard drive, from which programs or pieces thereof can be extracted on command. These developments are widely perceived as ironic. After all, the move to PC's was greeted with relief by almost everyone -- everyone but IBM and the other large corporations who made their money from the mainframe market. What a relief it was to be able to get a print-out on your desk, instead of waiting two hours and then running down the the basement printer room. How wonderful to be able to individualize one's computing environment. How exciting to compute at home. What is ironic is that, in an NC context, these mainframes -- or newer machines of even greater "grunt power" -- are becoming fashionable again. The catch is, of course, that the context is different. In a modern network computing environment, consisting of a central server and a large group of peripheral NC's, no one has to wait two hours for their print-out to come out in the basement. No one has to use a line printer interface, or even a text interface on a screen. High-bandwidth communications conspire with advances in hardware, operating system and graphical interface design to make the modern network computing environment something entirely new: something incorporating the advantages of the old mainframe approach and the advantages of PC's, along with other advantages that have no precedent. The grunt is there, the raw processing power of the central server; and so is the efficiency of storing only one central copy of each program. But the convenience of PC's is there too, provided by the modern possibility of spinning off new copies of centrally-stored programs on the fly, and downloading them into super-smart terminals -- terminals so smart that they are no longer merely terminals but network computers. From the point of view of the NC user, the network is like a PC with a giant hard drive. The fact that this hard drive happens to be shared by other people is barely even relevant. From the point of view of the central server itself, on the other hand, the network is almost like an old-style mainframe system, the only difference lying in the semantics of the input/ouput messages sent and received, and in the speed with which these messages have to be sent. Instead of just exchanging verbal or numerical messages with dumb terminals operated by humans, the central server is now exchanging active programs with less powerful but still quite capable satellite computers. Finally, what is entirely new in modern network computing is the interconnection of various central servers into their own large-scale network. This occurs in the Internet, and within large organizations, it also occurs internally. This is important because it means that no single server has to hold all the information potentially required by its client NC's. The server is responsible for feeding information to its NC's, but it may in some cases derive this information from elsewhere, and simply serve as a "middleman." In other words, a higher-level network of information is overlaid on a lower-level network of control. This opens up the scope of information and applications available to computer users, to a degree never before seen. All this is exciting, tremendously exciting, but to computer industry insiders, it is becoming almost hackneyed before it has even come to pass. "The Network is the Computer" is a late 90's mantra and marketing slogan. And it is accurate; the network should be, and increasingly really is the computer. What is now inside the PC -- memory, processing, information -- will in the network computing environment be stored all over the place. The overall computation process is distributed rather than centralized, even for basic operations like word processing or spreadsheeting. What is not observed very often, however, is the relation between network computing and the mind. As it turns out the mainframe approach to computing and the PC approach to computing embody two different incorrect theories of intelligence. The network computing approach embodies a more sophisticated approach to intelligence, which, although still simplistic compared to the structure of the human brain, is fundamentally correct according to principles of cybernetics and cognitive science. As we move toward a worldwide network computing environment, we are automatically moving toward computational intelligence, merely by virtue of the structure of our computer systems, of the logic by which our computer systems exchange and process information. In other words, not only is the network is the computer, but it is the mind as well. This leads to the new, improved slogan with which I have titled this chapter: The network is the computer is the mind. What does this slogan mean? It stands for a series of statements, of increasing daring. At the most conservative end, one may say that the network computing environment provides an ideal context within which to program true artificial intelligence. At the most radical end, on the other hand, one might plausibly argue that the widespread adoption of network computing will lead automatically to the emergence of computational intelligence. The truth almost certainly lies somewhere between these two extremes. Network computing provides a certain degree of intelligence on its own, and it provides a natural substrate within which to implement programs that display yet greater degrees of intelligence. The network is the computer is the mind. 4. AI and the History of Hardware It's a pleasant, familiar story: mainframes to PC's to network computer systems. The whole thing has the inevitability of history about it. In fact, though, there is more to these developments than is commonly discussed. Network computing is, I believe, an inevitable occurrence -- but only in the abstract sense of "computing with self-organizing networks of intercommunicating processes." Networks are the best way to do artificial intelligence, and they are also the best way to solve a huge variety of other problems in computing. The particular form that network computing is assuming at the present time, however -- computing with networks of interconnected serial digital computers -- is merely a consequence of the evolutionary path that computer hardware has taken over the past half-century. This evolutionary path toward network computing has in fact been highly ironic. Of all the directions it could possibly have taken, computer technology has taken the one most antithetical to artificial intelligence and self-organizing network dynamics. Even so, however, the "network" archetype has proved irresistable, and is emerging in an unforeseen way, out of its arch-enemy, the standard serial, digital computer architecture. During the last century, we have seen, there have emerged two sharply divergent approaches to the problem of artificial intelligence: the cybernetic approach, based on emulating the brain and its complex processes of self-organization, and the symbolic approach, based on emulating the logical and linguistic operations of the conscious mind. Neither of these approaches is perfect. It has become increasingly clear in recent years, however, that whereas the symbolic approach is essentially sterile, the cybernetic approach is fertile. The reason for this is quite simple: the mind/brain really is a large, specially-structured, self-organizing network of processes; it really is not a rule-based logical reasoning system. We do, of course, carry out behaviors that can be described as logical reasoning -- but what we are doing in these cases, while it can be described in terms of rule-following to some degree of accuracy, is not really rule-following. Ignoring the self-organizing dynamics underlying apparent rule-following -- taking logical reasoning out of the context of intelligently perceived real-world situations, and out of the context of illogical, unconscious mental dynamics -- results in an endless variety of philosophical paradoxes and practical obstacles. The result is that symbolic AI systems are inflexible and uncreative -- not much more "intelligent," really, than a program like Mathematica which does difficult algebra and calculus problems by applying subtle mathematical methods. The cybernetic approach to AI, for all its flaws, has a far clearer path to success. Building larger and larger, more and more intelligently structured self-organizing networks, we can gradually build up to more and more mind-like structures. Neural networks are one of the more popular implementations of the cybernetic approach, but not the only one. One can also think in terms of genetic algorithms, or more abstract systems of "software agents" -- the point is the emphasis on creative, complex network dynamics, rather than deterministic interactions between systems of logical, rational rules. In the beginning, back in the 1940's and 50's, these two different approaches to AI were tied in with different approaches to computer hardware design: parallel, distributed analog design versus serial, digital design. Each theory of "computational mind" matched up naturally with a certain approach to "computational brain." In the parallel, distributed, analog computer, many things happen at each point in time, at many different points in space. Memory is stored all over, and problem-solving is done all over. Memory is dynamic and is not fundamentally distinct from input/output and processing. Furthermore, the basic units of information are not all-or-nothing switches, but rather continuous signals, with values that range over some interval of real numbers. This is how things happen in the brain: the brain is an analog system, with billions of things occurring simultaneously, and with all its different processes occurring in an intricately interconnected way. On the other hand, in the serial, digital computer, commonly known as the von Neumann architecture, there is a central processor which does one thing at each time, and there is a separate, inert memory to which the central processor refers. On a hardware level, the von Neumann design won for practical engineering reasons (and not for philosophical reasons: von Neumann himself was a champion of neural-net-like models of the mind/brain). By now it is ingrained in the hardware and software industries, just as thoroughly as, say, internal combustion engines are ingrained in the automobile industry. Most likely, every computer you have ever seen or heard of has been made according to the von Neumann methodology. The cybernetic approach to artificial intelligence, however, has survived the dominance of the von Neumann architecture, moving to a methodology based primarily on serial digital simulations of parallel distributed analog systems. The fact that cybernetic AI has survived even in a totally hostile computing hardware environment is a tribute to the fundamental soundness of its underlying ideas. One doubts very much, on the other hand, whether symbolic AI would have ever become dominant or even significant in a computing environment dominated by neural net hardware. In such an environment, there would have been strong pressure to ground symbolic representation in underlying network dynamics. The whole project of computing with logic, symbolism and language in a formal, disembodied way, might never have gotten started. Today, many of us feel that the choice of the von Neumann architecture may have been a mistake -- that computing would be far better off if we had settled on a more brain-like, cybernetics-inspired hardware model back in the 1940's. The initial engineering problems might have been greater, but they could have been overcome with moderate effort, and the billions of dollars of money spent on computer R&D in the past decades would have been spent on brainlike computers rather than on the relatively sterile, digital serial machines we have today. In practice, however, no alternate approach to computer hardware has yet come close to the success of the von Neumann design. All attempts to break the von Neumann hegemony have met with embarrassing defeat. Numerous parallel-processing digital computers have been constructed, from the restricted and not very brainlike "vector processors" inside Cray supercomputers, to the more flexible and AI-oriented "massively parallel" Connection Machines manufactured by Thinking Machines, Inc.. The Cray machines can do many things at a each time step, but they all must be of the same nature. This approach is called SIMD, "single-instruction, multiple dataset": it is efficient for scientific computation, and some simple neural network models, but not for sophisticated AI applications. The Thinking Machines computers, on the other hand, consist of truly independent processors, each of which can do its own thing at each time, using its own memory and exchanging information with other processors at its leisure. This is MIMD, "multiple instruction, multiple dataset"; it is far more reminiscent of brain structure. The brain, at each time, has billions of "instructions" and billions of "data sets"! These parallel digital machines are exciting, but, for a combination of technical and economic reasons, they have not proved as cost-effective as networks of von Neumann computers. They are used almost exclusively for academic, military and financial research, and even their value in these domains has been dubious. Thinking Machines Inc. has gone bankrupt, and is trying to re-invent itself as a software company; their flagship product, GlobalWorks, is a piece of low-level software that allows networks of Sun workstations to behave as if they were Connection Machines (Sun workstations are high-end engineering computers, running the Unix operating system and implementing, like all other standard contemporary machines, the serial von Neuman model). With GlobalWorks, all the software tools developed for use with the Connection Machines can now be used in a network computing environment instead. There is a serious loss of efficiency here: instead of a network of processors hard-wired together inside a single machine, one is dealing with a network of processors wired together by long cables, communicating through complex software protocols. However, the economies of scale involved in manufacturing engineering workstations means that it is actually be more cost-effective to use the network approach rather than the parallel-machine approach, even though the latter is better from a pure engineering point of view. Of even greater interest than the massively parallel digital Connection Machine is the analog, neural net based hardware being produced by several contemporary firms, -- radical, non-binary computer hardware that is parallel and distributed in nature, mixing up multiple streams of memory, input/output and processing at every step of time. For instance, the Australian company Formulab Neuronetics, founded in the mid-80's by industrial psychologist Tony Richter, manufactures analog neural network hardware modeled fairly closely on brain structure. The Neuronetics design makes the Connection Machine seem positively conservative. Eschewing traditional computer engineering altogether, it is a a hexagonal lattice of "neuronal cells," each one exchanging information with its neighbors. There are perceptual neurons, action neurons, and cognitive neurons, each with their own particular properties, and with a connection structure loosely modelled on brain structure. This technology has proved itself in a variety of process control applications, such as voice mail systems and internal automotive computers, but it has not yet made a splash in the mainstream computer industry. By relying on process control applications for their bread and butter, Neuronetics will hopefully avoid the fate of Thinking Machines. But the ultimate ambition of the company is the same: to build an ultra-high-end supercomputer that, by virtue of its size and its brainlike structure, will achieve unprecedented feats of intelligence. As of now, this kind of neural net hardware is merely a specialty product. But I suspect that, as PC's fade into history, these analog machines will come to play a larger and larger role in the world. In the short run, we might see special-purpose analog hardware used in the central servers of computer networks, to help deal with the task of distributing information amongst various elements of a network computing environment. In the long run, one might see neurocomputers joining digital computers in the worldwide computer network, each contributing their own particular talents to the overall knowledge and processing pool. The history of AI and computer hardware up till now, then, is a somewhat sad one, with an ironic and optimistic twist at the end. The dominant von Neumann architecture is patently ill-suited for artificial intelligence. Whether it is truly superior from the point of view of practical engineering is difficult to say, because of the vast amount of intelligence and resources that has been devoted to it, as compared to the competitors. But it has incredible momentum -- it has economies of scale on its side, and it has whole industries, with massive collective brainpower, devoted to making it work better and better. The result of this momentum is that alternate, more cybernetically sophisticated and AI-friendly visions of computing are systematically squelched. The Connection Machine was abandoned, and the Neuronetics hardware is being forced to earn its keep in process control. This is the sad part. As usual in engineering, science, politics, and other human endeavors, once a certain point of view has achieved dominance, it is terribly difficult for anything else to gain a foothold. The ironic and possibly optimistic part, however, comes now and in the near future. Until now, brainlike parallel architectures have been squelched by serial von Neumann machines -- but the trend toward network computing is an unexpected and unintentional reversal of this pattern. Network computing is boldly cybernetic -- it is brainlike computer architecture emerging out of von Neumann computer architecture. It embodies a basic principle of Oriental martial arts: when your enemy swings at you, don't block him, but rather position yourself in such a way that his own force causes him to flip over. The real lesson, on a philosophical level, may be that the structure of brain and intelligence is irresistable for computing. We took a turn away from it way back in the 1940's, rightly or wrongly, but now we are returning to it in a subtle and unforeseen way. The way to do artificial intelligence and other sophisticated computing tasks is with self-organizing networks of intercommunicating processes -- and so, having settled on computer hardware solutions that do not embody self-organization and intercommunication, we are impelled to link our computers together into networks that do. 5. Issues of Scale in Artificial Intelligence Another way to look at these issues is to observe that, historically, the largest obstacle to progress in AI has always been scale. Put simply, our best computers are nowhere near as powerful as a chicken's brain, let alone a human brain. One is always implementing AI programs on computers that, in spite of special-purpose competencies, are overall far less computationally able than one really needs them to be. As a consequence, one is always presenting one's AI systems with problems that are far, far simpler than those confronting human beings in the course ordinary life. When an AI project succeeds, there is always the question of whether the methods used will "scale-up" to problems of more realistic scope. And when an AI project fails, there is always the question of whether it would have succeeded, if only implemented on a more realistic scale. In fact, one may argue on solid mathematical grounds that intelligent systems should be subject to "threshold effects," whereby processes that are inefficient in systems below a certain size threshold, become vastly more efficient once the size threshold is passed. Some rough numerical estimates may be useful. The brain has somewhere in the vicinity of 100,000,000,000 -10,000,000,000,000 neurons, each one of which is itself a complex dynamical system. There is as yet no consensus on how much of the internal dynamics of the neuron is psychologically relevant. Accurate, real-time models of the single neuron are somewhat computationally intensive, requiring about the computational power of a low-end Unix workstation. On the other hand, a standard "formal neural-network" model of the neuron as a logic gate, or simple nonlinear recursion, is far less intensive. A typical workstation can simulate a network of hundreds of formal neurons, evolving at a reasonable rate. Clearly, whatever the cognitive status of the internal processes of the neuron, no single computer that exists today can come anywhere near to emulating the computational power of the human brain. One can imagine building a tremendous supercomputer that would approximate this goal. However, recent history teaches that such efforts are plagued with problems. A simple example will illustrate this point. Suppose one sets out, in 1995, to build a massively parallel AI machine by wiring together 100,000 top-of-the-line chips. Suppose the process of design, construction, testing and debugging takes three years. Then, given the current rate of improvement of computer chip technology (speed doubles around every eighteen months), by the time one has finished building one's machine in 1998, its computational power will be the equivalent of only 25,000 top-of-the-line chips. By 2001, the figure will be down to around 6,500. Instead of building a supercomputer that is guaranteed to be obsolete by the time it is constructed, it makes more sense to utilize an architecture which allows the continuous incorporation of technology improvements. One requires a highly flexible computer architecture, which allows continual upgrading of components, and relatively trouble-free incorporation of new components, which may be constructed according to entirely new designs. Such an architecture may seem too much to ask for, but the fact is that it already exists, at least in potential form. The Web has the potential to transform the world's collective computer power into a massive, distributed AI supercomputer. Once one steps beyond the single-machine, single-program paradigm, and views the whole Web as a network of applets, able to be interconnected in various ways, it becomes clear that, in fact, the Web itself is an outstanding AI supercomputer. Each Web page, equipped with Java code or something similar, is potentially a "neuron" in a world-wide brain. Each link between one Web page and another is potentially a "synaptic link" between two neurons. The neuron-and-synapse metaphor need not be taken too literally; a more appropriate metaphor for the role of a Web page in the Web might be the neuronal group (Edelman, 1988). But the point is that Java, in principle, opens up the possibility for the Web to act as a dynamic, distributed cognitive system. The Web presents an unprecedentedly powerful environment for the construction of large-scale intelligent systems. As the Web expands, it will allow us to implement more and more intelligent World Wide Brain, leading quite plausibly, in the not too far future, to a global AI brain exceeding the human brain in raw computational power. 6. Hardware-Software Synergy What is the relation between computer system designs and approaches to artificial intelligence? We have already observed that all the mainstream computing designs of the last half-century, from mainframes to PC's to network computing, support symbolic AI over cybernetic AI: they are serial and digital rather than analog and parallel. But there is more to the story than this. On a more detailed level than the symbolic/cybernetic dichotomy, different computer architectures embody different visions of computational intelligence, different models of mind. The vision of mind suggested by the mainframe computer is quite different from the vision of mind suggested by the PC, which is in turn quite different from the vision of mind suggested by the modern network computing system. All the different digital computing frameworks are "universal computers," so that one can, in principle, run any kind of AI algorithm on either a mainframe, a PC or a network computing system. A computing system can be used to run AI algorithms embodying a philosophy of intelligence entirely different from the philosophy of intelligence embodied in its structure -- this is what happens when, for example neural networks are simulated on PC's or mainframes. But when one does this, when one works with AI algorithms that are "conceptually mismatched" to their hardware, one pays a price. One loses efficiency, ease of experimentation, and conceptual integrity. When one's algorithm conceptually matches one's hardware, one finds that "following the hardware" leads to all sorts of new twists and innovations. When there is a mismatch, on the other hand, the suggestions implicitly made by the hardware will more than often be wrong, or at least will push one in directions alien to the ideas that one started out with. This may be seen in many of the recent innovations to neural network AI, derived from experimenting with neural nets via simulations on serial digital machines. The neural net learning algorithms that work best in serial digital simulations may not be the same ones that would work best in a more neural-net oriented, parallel analog hardware setting. In fact, many recent neural network techniques make no sense whatsoever as massively parallel, self-organizing analog algorithms: they are merely neural-net-inspired serial computing algorithms, consequences of the adaptation of neural networks to the unnatural environment of digital serial machines. This kind of development, spurred on directly by hardware/algorithm mismatch, is useful from a short-term perspective, but it does not add much to the long-term understanding of intelligence and its computer implementation. If experimentation were taking place on Neuronetics or similar technology, most of the recent neural net algorithms would not exist; instead there would be other new approaches, ones fitting in better with parallel analog computing and hence with the underlying vision of the neural network approach. A good analogy to this hardware-software synergy in AI may be found in music. The hardware is the instrument and the software is the song played on the instrument. One can play any song on any instrument, but some song go more naturally with some instruments. Playing a punk rock song on a guitar, one finds that the "hardware" naturally enhances the "software" -- playing around with the song on the guitar, one is led to different timings, slight modifications here and there, maybe even new, related melodies. On the other hand, playing the same song on a violin, one can hit all the notes perfectly accurately, but one may find that one has turned something inherently very simple into something complex and awkward to play -- "efficiency" has degraded. Also, one will find that the physically natural variations and improvisations on the melody no longer sound so musically natural -- they are no longer punk tunes, because the violin is not a punk instrument. Ease of experimentation has decreased. Orchestration, the mapping of complex compositions onto sets of instruments, is essential in classical music, and it is even subtler in jazz, because many of the instruments must improvise around the melodies and rhythms of the song, and their improvisations must be simultaneously physically logical in terms of the structure of the instrument and musically logical in the context of the song as a whole. Designing a complex AI system on a complex system of computer hardware is a somewhat similar process, the difference being that one is orchestrating, not human beings producing sounds, but mechanical devices producing various types of information, and monitored and modified by human beings. The mainframe computer, with its central control unit and its dumb peripherals, embodies a simple and powerful model of mind: mind as a monolithic cognitive center, carrying out thinking and reasoning processes, collecting raw data from unintelligent peripheral processes and providing raw data to unintelligent motor processes. This is the kind of AI program that is most naturally programmed on mainframes. Of course, one could always deviate from this implicit suggestion of the computer architecture, and program complex, sophisticated perceptual and motor processes, together with cognitive processes. But this would be an unmotivated move, an "artificial" gesture with regard to the system one is working within. A network computing environment, on the other hand, embodies a vision of mind as a large, heterogenous system of interacting agents, sending messages to each other and processing information in a variety of different ways. The modern network computing environment is not ideal for artificial intelligence -- it would be much better if our PC's and engineering workstations were powered by Neuronetics or similar hardware instead of serial digital hardware. But even so, there is reason to believe that the overall structure of mind/brain is more important than the microscopic details by which individual processes are carried out. The point is that network computing, unlike previously popular computing methodologies, embodies a vision of mind as a network of autonomous, interacting agents, which is precisely the right vision of mind to have. Less crucial than the hardware/software synergy, but still important, is the software/operating-system synergy. In particular, in order to turn network computing into network AI, one needs an appropriate operating system (OS) -- a cybernetically wise, intelligence-friendly system for communicating between intelligent mind-network-embodying software, and the network computing environment. The operating system is the low-level computer software that mediates communications between hardware and other computer software. Even in the realm of ordinary serial digital computers, there is a variety of operating systems; and two different OS's, running on the same system, can give the feeling of two different machines. For instance, two of the most popular OS's today are the Microsoft operating systems, DOS and Windows, and the Unix operating system, used on engineering workstations. These competing systems do essentially the same things, and are now invading each other's territory: Windows NT is a version of Windows that runs on engineering workstations, and Linux is a version of Unix that runs on PC's. But even so, they have drastically different "flavors." What one needs, in order to exploit the potential of network computing -- for AI in particular and for other sophisticated applications as well -- is to have a kind of network operating system. Not an OS for any particular hardware, but an OS for networks of diverse, intercommunicating hardware. This is different from the conventional concept of an "operating system," but it is well within the common-language meaning of the phrase. What one needs is a system by which AI programs (and other programs) can operate the computer network as a network of agents, a network of processes, continually changing and communicating with each other -- rather than as a collection of von Neumann machines, each with particular properties to be taken into account, and sending messages of unrelated types that all need to be treated differently. One needs a network OS that leaves one blissfully blind to the details of managing different types of computers, and communicating different types of messages, leaving one in a mindlike world of abstract entities communicating abstract information and modifying themselves accordingly. Java goes a fair way toward this goal of an agent-oriented network OS. Java allows one to write network- aware computer programs that will run on any modern computer, and it streamlines the processes of communication and interaction to an unprecedented extent. However, it falls a fair way short of providing the tools required to truly bring process-network-based AI and network computing together. Much creative engineering on the part of Java and other software developers is needed, if the potential embodied in "The network is the computer is the mind" is to be brought to fruition. Chapter 2: Mind as Network and Emergence 1. Introduction Mind consists of emergent pattern -- but emergent pattern is necessarily emergent from something. At present, the intelligence we know in the greatest detail is our own, which emerges from the human brain. The emergence of intelligence from the Internet will not mimic the emergence of intelligence from the brain in every detail, but there will be many commonalities. In this chapter I will discuss the brain as a self-organizing network, and the mind as a self-organizing network, and how the latter network emerges from the former. This serves us two purposes in our study of Internet intelligence: it gives us a coherent model of emergent intelligence, to be applied to the Net; and it gives us an example of emergent intelligence coming out of a particular physical system. 2. Neural Networks The premier computer models of the brain are "neural network" models, which bear many interesting similarities to modern computer networks -- they are asychronous systems carrying out massively distributed processing -- and so are highly germane to the topics of this book. Mind as emergent from neural networks is different from mind as emergent from computer networks, but there are more similarities between the two than one would expect to find, say, between mind as emergent from neural networks and mind as emergent from an intelligent ocean or an intelligent cloud of gas. Network-ness carries numerous specialized properties that are important for the emergence of mind. The "neural" in "neural network" refers to the nerve cell or neuron -- a type of cell which exists throughout the body for the purpose of registering sensations, but exists in greatest bulk within the brain. The purpose of most neurons in the brain is not to directly register sensations from the outside world, but to register sensations from other neurons in the brain. I.e., the brain is a huge sense organ whose goal is to sense itself via its neurons. Neurons are not the only brain cells; in fact, they are greatly outnumbered by glia. However, many neuroscientists (Edelman, 1987; Rose and Dobson, 1985) believe that the key to mental process lies in the large-scale behavior of networks of neurons; and I do not disagree. A neuron consists of a cell body with a long, narrow axon emerging from one end, and a large number of branches called dendrites snaking out in all directions. The dendrites are inputs _ they receive electrical signals from other neurons. The cell body periodically generates _ "fires" _ a new electrical impulse based on these input signals. After it fires, it needs to "recover" for a while before it can fire again; and during this period of recovery it basically ignores its input. The axon carries the electrical impulse from the cell body to the dendrites and cell bodies of other neurons. The points at which signals pass from one neuron to another are called synapses, and they come in two different forms _ excitatory and inhibitory. When an impulse arrives through an excitatory synapse, it encourages the receiving neuronto fire. When an impulse arrives through an inhibitory synapse, it discourages the receiving neuron from firing. Each synapse has a certain conductance or "weight" which affects the intensity of the signals passing through it. For example, suppose excitatory synapse A has a larger "weight" than excitatory synapse B, and the same signal passes through both synapses. The signal will be more intense at the end of A than at the end of B. Roughly speaking, a recovered neuron fires if, within the recent past, it has received enough excitatory input and not too much inhibitory input. The amount of the past which is relevant to the decision whether or not to fire is called the period of latent addition. How much excitation is "enough," and how much inhibition is "too much," depends upon the threshold of the neuron. If the threshold is minimal, the neuron will always fire when its recovery period is over. If the threshold is very high, the neuron will only fire when nearly all of its excitatory synapses and virtually none of its inhibitory synapses are active. Mathematically, the rule that tells a neuron when to fire can be modeled roughly as follows. Let wi be the weight of the i-th synapse which inputs to the neuron, where positive weights denote excitatory connections and negative weights denote inhibitory connections. Let xi(t) denote the signal coming into the neuron through the i-th synapse, at time t, where the time variable is assumed to be discrete. Let P be the period of latent addition, and let R be the recovery period. Then the total relevant input to the neuron at time t is the sum, over all s so that max{t-P,r+R} < s < t, of wi(s)xi(s), where r is the time at which the neuron last fired. Where T is the threshold of the neuron, a neuron fires at time t if its total relevant input exceeds T. When a neuron fires, its output is 1; when it does not fire, its output is 0. A "neural network," then, is a network of interconnected neurons firing according to this rule. This is a greatly oversimplified model of the brain: it gives no role to other brain cells such as glia, and it completely ignores all the chemistry that mediates actual neural interaction. In the brain the passage of an electrical signal from one neuron to another is not exactly analogous to the passage of electricity across a wire. This is because most neurons that are "connected" do not actually touch. What usually happens when a signal passes from neuron A to neuron B is that the dendrites of neuron A build up a charge which causes certain chemicals called neuro-transmitters to carry that charge to the dendrites of neuron B. The neural network model ignores all the subtleties of this process. So, to consider the brain as a neural network is an oversimplification. The "neural networks" which are now so popular in computer science and electrical engineering (Garrido,1990; Kawato et al., 1987; Goldberg et al., 1988; Hopfield and Tank, 1985) are usually simplified even further. It is generally assumed that the period of latent addition is 1 time step, and the recovery period is 0 time steps. Such simplified "neural networks" have proven themselves effective at a number of difficult practical problems _ combinatorial optimization, associative memory, (Hopfield and Tank, 1980), pattern recognition (Grossberg, 1987) and robotic control (Goldberg et al., 1988), to name a few. Mathematically, they are similar to the physicists' spin glasses (Garrido, 1990). Everyone realizes that these networks are mediocre brain models, but the connection with neuroscience is tantalizing nonetheless. For example, the well known Hopfield network (Hopfield, 1980) uses first-order neurons to minimize functions. To explain the idea behind this network, let us define a state of a network of n neurons as a binary sequence a1a2...an. A state is periodic with period p if whenever, xi(t)=ai for i=1,...,n, xi(t+p)=ai for i=1,...,n. If a state is periodic with period 1, then it is an equilibrium. Given a certain function f from binary sequences to real numbers, Hopfield's approach is to define a network whose equilibrium states are local minima of f, and which has no periodic points besides its equilibria. Then one may set the state of the network at time zero equal to any random binary sequence, and eventually the values xi(t) will settle into one of the equilibria. Of course, if a function has many local minima, the corresponding network will have many equilibria. Formal neural networks like the Hopfield net, and feedforward backpropagation nets, are useful for computer and behavioral scientists, but unsatisfying to biological theorists. In recent years, several inventive biologists have sought to bridge thelarge gap between formal neural networks and actual brains. In my opinion, the most impressive of these efforts is Edelman's (1987) theory of neuronal group selection, or "Neural Darwinism." The starting point of Neural Darwinism is the observation that neuronal dynamics may be analyzed in terms of the behavior of neuronal groups. The strongest evidence in favor of this conjecture is physiological: many of the neurons of the neocortex are organized in clusters, each one containing say 10,000 to 50,000 neurons each. Once one has committed oneself to looking at groups, the next step is to ask how these groups are organized. A map, in Edelman's terminology, is a connected set of groups with the property that when one of the inter-group connections in the map is active, others will often tend to be active as well. Maps are not fixed over the life of an organism. They may be formed and destroyed in a very simple way: the connection between two neuronal groups may be "strengthened" by increasing the weights of the neurons connecting the one group with the other, and "weakened" by decreasing the weights of the neurons connecting the two groups. Formally, we may consider the set of neural groups as the vertices of a graph, and draw an edge between two vertices whenever a significant proportion of the neurons of the two corresponding groups directly interact. Then a map is a connected subgraph of this graph, and the maps A and B are connected if there is an edge between some element of A and some element of B. (If for "map" one reads "program," and for "neural group" one reads "subroutine," then we have a process dependency graph as drawn in theoretical computer science.) This is the set-up, the context in which Edelman's theory works. The meat of the theory is the following hypothesis: the large-scale dynamics of the brain is dominated by the natural selection of maps. Those maps which are active when good results are obtained are strengthened, those maps which are active when bad results are obtained are weakened. And maps are continually mutated by the natural chaos of neural dynamics, thus providing new fodder for the selection process. By use of computer simulations, Edelman and his colleague Reeke have shown that formal neural networks obeying this rule can carry out fairly complicated acts of perception. 3. The Psynet Model of Mind Supposing that we accept, provisionally, the neural network as a model of the brain. We may then ask: how does the mind emerge from the brain? In fact, even if neural networks are fundamentally flawed as brain models, they may still be useful in inspiring us to address the question of emergence in interesting ways. The main point is -- the mind is a network of one kind, and the physical substrate underlying the mind, i.e. the brain, is a network of another kind. The emergence of mind from reality is the emergence of a network from a network. In a series of publications over the past half-decade (Goertzel, 1993, 1993a, 1994, 1997), I have constructed a novel complex systems model of mind, which I now call the psynet model, aimed at answering precisely this question. The psynet model envisions the mind as an agent system, involving special kinds of agents called "magicians", which are distinguished from "agents" as generally discussed in computer science (and discussed in the following chapter) by the fact that their main activity is transforming other magicians. Of course, all agents that interact with other agents can be thought of as magicians; the distinction between magicians and run-of-the-mill agents is fuzzy, just as is the distinction between, say, intelligent agents and run-of-the-mill agents. The question, in determining whether a system of agents is a "magician system," is how transformative the interactions are. So, a magician system consists, quite simply, of a collection of entities called "magicians" which, by acting on one another, have the power to cooperatively create new magicians. Certain magicians are paired with "antimagicians," magicians which have the power to annihilate them. According to the psynet model, mind is a pattern/process magician system. It is a magician system whose magicians are concerned mainly with recognizing and forming patterns. Crucial to this picture is the phenomenon of mutual intercreation, or autopoiesis. Systems of magicians can interproduce. For instance, a can produce a, while b produces a. Or a and b can combine to produce c, while b and c combine to produce a, and a and c combine to produce b. The number of possible systems of this sort is truly incomprehensible. But the point is that, if a system of magicians is mutually interproducing in this way, then it is likely to survive the continual flux of magician interaction dynamics. Even though each magician will quickly perish, it will just as quickly be re-created by its co-conspirators. Autopoiesis creates self-perpetuating order amidst flux. The magician system view of mind is merely one small step beyond Neural Darwinism. It says: let us take as the fundamental entities, the states of neuronal modules. Let us envision these states, patterns localized in space and time, as interacting with one another, transforming each other into different states. Each state lasts for a brief period of time, giving rise to other states, and may then arise again as a result of this activity. The biologist does not wish to think in terms of states, as he prefers to deal with tangible, persistent structures, but it is states that make up the experienced mind, and it is the dynamics of states that we must come to grips with if we wish to understand the mind -- and the parallels between the human mind and the Internet. The Net does not have neuronal modules, in any exact sense, but yet the self-organizing system of states that emerges from the Net is structurally and dynamically very similar to the system of states emerging from the human brain. There is a parallel on the level of magician systems. Some systems of magicians might be unstable; they might fall apart as soon as some external magicians start to interfere with them. But others will be robust; they will survive in spite of external perturbations. These robust magician systems are what I call autopoietic systems. The psynet model posits that thoughts, feelings and beliefs are autopoietic. They are stable systems of interproducing pattern/processes. In Chaotic Logic, autopoietic pattern/process magician systems are called structural conspiracies, a term which reflects the mutual, conspiratorial nature of autopoiesis, and also the basis of psychological autopoiesis in pattern (i.e. structure) recognition. A structural conspiracy is an autopoietic magician system whose component processes are pattern/processes. But structural conspiracy is not the end of the story. The really remarkable thing is that, in psychological systems, there seems to be a global order to these autopoietic subsystems. The central claim of the psynet model is that, in order to form a functional mind, these structures must spontaneously self-organize into larger autopoietic superstructures. And perhaps the most important such superstructure is a sort of "monster attractor" called the dual network. The dual network, as its name suggests, is a network of pattern/processes that is simultaneously structured in two ways. The first kind of structure is hierarchical. Simple structures build up to form more complex structures, which build up to form yet more complex structures, and so forth; and the more complex structures explicitly or implicitly govern the formation of their component structures. The second kind of structure is heterarchical: different structures connect to those other structures which are related to them by a sufficient number of pattern/processes. Psychologically speaking, the hierarchical network may be identified with command-structured perception/control, and theheterarchical network may be identified with associatively structured memory. (While the dual network is, intuitively speaking, a fairly simple thing, to give a rigorous definition requires some complex constructions and arbitrary decisions. One approach among many is given in From Complexity to Creativity) A psynet, then, is a magician system which has evolved into a dual network structure. Or, to place the emphasis on structure rather than dynamics, it is a dual network whose component processes are magicians. The central idea of the psynet model is that the psynet is necessary and sufficient for mind. And this idea rests on the crucial assumption that the dual network is autopoietic for pattern/process magician dynamics. The psychological meaning of these structures has been elaborated in detail in previous publications and so will not be dwelt on here. Suffice to say that the hierarchical network is prevalent in visual perception, and is notable in the structure of the visual cortex as well as via perceptual psychology. It is also present, though not quite as blatantly, in such areas as the composition of motor actions, and language processing. The heterarchical network, on the other hand, is prevalent in the processing of taste and smell, and in the functioning of associative semantic and episodic memory. 4. Evolution and Autopoiesis in the Network of Mind The dynamics of the dual network may be understood as a balance of two forces. There is the evolutionary force, which creates new forms, and moves things into new locations. And there is the autopoietic force, which retains things in their present form. If either one of the two forces is allowed to become overly dominant, the dual network will break down, and become excessively unstable, or excessively static and unresponsive. Of course, each of these two "forces" is just a different way of looking at the basic magician system dynamic. Autopoiesis is implicit in all attractors of magician dynamics, and evolutionary dynamics is a special case of magician dynamics, which involves long transients before convergence, and the possibility of complex strange attractors. To fully understand the role of evolution here, one must go beyond the standard Darwinian notion of "fitness", and measure fitness in terms of emergent pattern. In The Evolving Mind, I define the structural fitness of an organism as the size of the set of patterns which synergetically emerge when the organism and its environment are considered jointly. If there are patterns arising through the combination of the organism with its environment, which are not patterns in the organism or the environment individually, then the structural fitness is large. Perhaps the easiest illustration is camouflage -- there the appearance of the organism resembles the appearance of the environment, generating the simplest possible kind of emergent pattern: repetition. But symbiosis is an even more convincing example. The functions of two symbiotic organisms match each other so effectively that it is easy to predict the nature of either one from the nature of the other. The "environment" of a process in the psynet is simply its neighbors in the network. So the structural fitness of a process in the psynet is the amount of pattern that emerges between itself and its neighbors. But, at any given time, the probability of a process not being moved in the network is positively correlated with its degree of "fit" in the associative memory. This degree of fit is precisely the thestructural fitness! So, survival in current position is correlated with structural fitness with respect to immediate environment; and thus, the psynet evolves by natural selection. Furthermore, by the same logic, clusters of magicians may also be understood to evolve by natural selection. This observation leads up to a sense in which the psynet's evolutionary logic is different from that which one sees in ecosystems or immune systems. Namely, in the psynet, every time a process or cluster is moved in accordance with natural selection, certain processes on higher levels are being crossed over and/or mutated. The issue of evolution is highly relevant to the question of the creativity of mental process networks. The genetic algorithm (Goldberg, 1988; to be discussed in detail in a later chapter) demonstrates the creative potential of the evolutionary process in a wide variety of computational contexts. And the GA is approximated by the activity of subnetworks of the dual network. Subnetworks are constantly mutating as their component processes change. And they are constantly "crossing over," as individual component interactions change in such a way as to cause sub-subnetworks to shift their allegiance from one subnetwork to another. And, finally, it must be observed that this genetic-algorithm-type creativity, in the hierarchical network, and the evolutionary reorganization of the heterarchical network, are one and the same! When memory items move around from one place to another, seeking a "fitter" home, they are automatically reorganizing the hierarchical network -- causing subnetworks (mental "programs") to cross over and mutate. On the other hand, when processes switch their allegiance from one subnetwork to another, in a crossover-type process, their changing pattern of interaction consitutes a changing environment, which changes their fitness within the heterarchical network. Because the two networks are one, the two kinds of evolution are one. GA-style evolution and ecology are bound together very tightly, much more tightly than in the case of the evolution of species. Ecology tells us that what is evolving in the mind is not arbitrary forms but self-preserving, autopoietic systems. In order to achieve the full psynet model, one must envision the dual network, not simply as an hierarchy/heterarchy of mental processes, but also as an hierarchy/heterarchy of evolving autopoietic process systems, where each such systems is considered to consist of a "cluster" of associatively related ideas/processes. Each system may relate to each other system in one of three different ways: it may contain that other system, it may be contained in that other system, or it may coexist side-by-side with that other system. The dual network itself is the "grand-dad" of all these autopoietic systems. Autopoiesis is then seen to play an essential role in the dynamics of the dual network, in that it permits thoughts (beliefs, memories, feelings, etc.) to persist even when the original stimulus which elicited them is gone. Thus a collection of thoughts may survive in the dual network for two reasons: a usefulness relative to the hierarchical control structure, i.e. a usefulness for the current goals of the organism a strong ability for self-preservation (autopoiesis), mediated primarily by heterarchical connections in complex feedback loops This is the logic of the mental network, emergent from the underlying network of brain. It is the logic of the set of states of neuronal modules -- and, I claim, it is also the logic of the set of states of agents in the newly complex, increasingly intelligent Internet. But this leads us on.... Chapter 3 The Psynet Model of Mind "The Law of Mind is one, and but one..." – Charles S. Peirce 1. What is the Psynet Model? The psynet model is a conceptual model of the mind, created not only for AI purposes, but for the analysis of human thought processes as well (see Goertzel, 1993, 1993a, 1994, 1997 for detailed expositions of various aspects of the model, as it developed over time). It aims to capture the abstract structures and dynamics of intelligence, under the hypothesis that these are independent of the underlying physical implementation. The model can be cast in mathematical language in various ways, and validated as an empirical scientific theory in various respects; but these perspectives will not be presented here. The goal here is simply to get across enough of the model to provide a conceptual grounding for various ideas in the chapters to follow. We will begin with a highly general, almost philosophical treatment of the psynet model, then show how a particular realization of this model leads to a computational model of the mind in terms of nodes, links and agents -- the Webmind architecture, to be outlined in more detail in Chapter 8. The essential ideas of the psynet model are simple. A capsule summary is: A mind is a system of agents (called "magicians") which are able to transform, create & destroy other agents Many of these magicians act by recognizing patterns in the world, or in other agents Thoughts, feelings and other mental entities are self-reinforcing, self-producing systems of magicians These self-producing mental subsystems build up into a complex network of attractors, meta-attractors, etc. This network of subsystems & associated attractors is "dual network" in structure, i.e. it is structured according to at least two principles: associativity (similarity) and hierarchy (categorization and category-based control). Magicians pass attention ("active force") to other magicians to which they are related Because of finite memory capacity, mind must contain magicians able to deal with "ungrounded" patterns, i.e. magicians which were formed from now-forgotten magicians, or which were learned from other minds rather than at first hand -- this is called "reasoning" A mind possesses magicians whose goal is to recognize the mind as a whole as a pattern -- these are "self" The use of the word "magician" here is perhaps worth comment, and interrelation with conventional computer science terminology. Gul Agha, in his book Actors: A Model of Concurrent Computation in Distributed Systems, defines an actor as follows: Actors are computational agents which map each incoming communication into a 3-tuple consisting of: a finite set of communications sent to other actorsa computational agent that can communicate with other actors, a new behavior (which will govern the response to the next communication processed); and, a finite set of new actors created Magicians are more general than actors, in that they are not restricted to digital computers: in a quantum computing context, for example, magicians could be stochastic, and hence send an infinite set of possible communications determined by quantum-level randomness, violating Agha's first condition. Since the psynet model of mind is intended to apply to human brains as well as digital computers, and since human brains may well be quantum systems, the concept of "actor" is not adequate for the general psynet model. However, it is nevertheless true that, in a digital-computing context, a magician is a special kind of actor. In particular, it is an actor whose behaviors explicitly include The ability to destroy itself The ability to carry on complex dynamics within its own behavior space, in the absence of external communications The psynet model therefore coincides well with the modern tradition of distributed computing. What the psynet model does, which nothing else in contemporary computing or cognitive science does, is to give detailed plan for how a large community of computational agents should be set up in order that the community should, as a collective, evolve highly intelligent behavior. The right mix of agents is required, as well as the right kind of "operating system" for mediating agent interactions. The Webmind AI system provides a general "agents operating system" for managing systems of software magicians that share meaning amongst each other, transform each other, and interact in various ways; the magicians may live in the RAM of a single machine, may be run on multiple processors, and may live across many machines connected by high-bandwidth cable. It provides mechanisms for magicians to represent patterns they have recognized in other magicians, and patterns they have recognized in the overall magician system of Webmind. And it also provides an appropriate assemblage of magicians, specialized for such things as text processing numerical data processing text-numerical interrelation supervised and unsupervised concept formation reasoning social interaction language processing These magicians have their own localized behaviors but achieve their true intelligence only in the context of the whole magician system that is Webmind. This article describes the psynet model in general in a clear and concise way, and then explains how the particular architecture of the Webmind system serves to realize this model in an effective way on modern computer networks. 2. The Psynet Model of Mind in 37 Easy Lessons There are many ways to construct the psynet model. This section will give a construction that is centered around the concept of "meaning" -- an approach that is particularly useful in a Webmind context, because the goal of Webmind as a product is provide meaningful answers to human questions. The model will will be presented here as a series of 37 Observations about the nature of mind. No attempt, in this exposition, will be made to determine the extent to which the observations are axiomatic as opposed to derived from other observations, assumptions, etc. These are interesting questions, but beyond the scope of a document whose main focus is the use of the Psynet model and its general implications for Internet AI. In Chapter 8, we will return to these 37 questions and specifically indicate how each one is realized in the Webmind architecture. Observation 1. Mind is a set of patterns, where a pattern is defined as "a representation as something simpler". To understand what a "pattern" is one must understand what "representation" and "simpler" are. In order to define simplicity one requires a "valuation" -- a way of assigning values to entities. In mathematical terms, a valuation is a mapping from some set of entities into some partially ordered domain, e.g. into the domain of numbers. A representation, on the other hand, is an entity that "stands for" another entity. To talk about representation one must have three entities in mind: the entity A being represented, the entity B doing the representing, and the entity C that recognizes B as a representation of A. The recognition activity of C is a kind of transformation; we may write C(B)=A. Thus, putting simplicity and representation, together, the conclusion is Observation 2: To be able to have patterns, one must have entities that can transform entities into numbers (or some other ordered domain, to give simplicity judgements), and one must have entities that transform entities into other entities (so as to enable representation) The space of entities in which patterns exist must be a space of entities that can be considered as transformations, mapping entities into other entities. The optimal name for entities of this sort is not clear; in some past writings on the psynet model these entities have been called "magicians," in others they have been called "agents" or "actors." Here we will stick with the term "magician", which is a whimsical terminology intended to evoke images of intertransformation: each magician, each entity in the mind, has the ability to transform other magicians by a variety of methods ("magic spells"). The mind is envisionable as a community of magicians constantly magicking each other into different magicianly forms. Observation 3: Mind is intrinsically dynamical. The transformation C(B)=A, in the definition of pattern, implies a "change": C changes B into A Observation 4: Magicians can be combined in a way other than transformation; they may be combined in space. The result of joining A and B in space may be denoted A#B. Observation 5: Spatial combination gives rise to the possibility of emergent pattern: patterns that are there in A#B but not in A or B individually. Observation 6: The meaning of an entity may be defined as the set of all patterns associated with that entity -- where a pattern P may be associated with an entity A in several ways: P may be a pattern in A, P may be an emergent pattern in the combination A # B. or P may close to A in spacetime (P and A may have occurred in about the same place at about the same time) Observation 7: Pattern and meaning are subjective, in that they depend on who is measuring simplicity, and who is defining the set of permissible transformations Observation 8: Meaning is dynamic as well as static. The patterns in an entity include patterns in how that entity acts, and interacts, over time. Observation 9: In any given mind, at any given time some magicians are given more attention than others. Attention means that a magician is allowed to carry out transformations on other magicians. Observation 10: A mind always possesses some degree of randomness (i.e., dynamics which has no patterns that it can detect). Randomness occurs wherever attention occurs. Observation 11: The basic law of mind dynamics is: A magician passes some of its attention to other magicians with whom it shares meaning This dynamical law has a long history in philosophy; it was most clearly enunciated by the American philosopher Charles S. Peirce toward the end of the last century. The relation to neural network dynamics is clear and will be elaborated below: in a neural net, a neuron passes some of its activation to other neurons that it is connected to. If one thinks of a magician as a neuronal module, and posits that two modules share meaning if they are strongly interconnected, then Observation 11 fits in perfectly with neural net dynamics. However, it is important from an AI point of view that we adopt a certain dynamic because it has a psychological importance rather than because it loosely models some aspect of the human brain. Observation 12: Sharing of meaning may take many forms. Primally, meaning sharing may be of three different kinds: symmetric asymmetric emergent. The first three types of meaning sharing are all "structural" in nature, and may be formalized as follows. Denote the meaning of magician A by the fuzzy set m(A) consisting of patterns in A or emergent between Aand other entities. Symmetric meaning sharing is gauged by the formula [ m(A) intersect m(B) ] / [m(A) union m( B)] Asymmetric meaning sharing is given by m(A)/[ m(A) union m(B) ] Emergent meaning sharing is given by [m(A#B) - m(A) - m(B)] / [m(A) union m(B)] Meaning sharing incorporates temporal and spatial reality to the extent that the meaning m(A) of A includes entities that occurred close to A in spacetime. The above observations pertain to mind but do not directly address the concept of "intelligence." Intelligence, however, can be approached in a similar way: Observation 13: Intelligence may be defined as the ability to achieve complex goals in complex environments Observation 14: The complexity of an entity may be defined as the total amount of pattern in that entity, or equivalently, the amount of meaning in the entity. Thus, intelligence is the ability to achieve meaningful goals in meaningful environments. To compute the amount of meaning means to take all X in the meaning m(A) of and entity A, and add up the degree of membership of X in this fuzzy set. The catch is that one must take not an ordinary sum but a "non-overlapping sum," not counting twice two patterns that express essentially the same thing. The correct formulation of this non-overlapping sum is a problem in algorithmic information theory. Note that complexity is defined in terms of pattern, which is defined in terms of simplicity. In this sense this definition of complexity is not entirely satisfactory, from a philosophical view. However, in any formal system, one must take some things as basic and undefined. I have chosen to take simplicity and transformation as basic quantities, and derive others, such as pattern, complexity and intelligence, from these. This is a subjective rather than objective definition of intelligence, in that it relies on the subjective identification of what is and is not a pattern. If dolphins are bad at solving goals that we think are meaningful, and operating in environments that we think are meaning-laden, this means that they are not intelligent with respect to our own subjective simplicity measures, but they may be highly intelligent with respect to some other simplicity measure, e.g. their own. The upshot is that this definition of intelligence is pragmatically valuable only in comparing different entities of like kind -- i.e., different entities sharing largely the same goals, and comfortable in largely the same environments. These definitions lead to the following observation: Observation 15: In order to achieve complex goals in complex environments -- i.e., to be intelligent -- a complex mind is required This is important from an engineering perspective, because it tells us that the dream of a mind in 100 lines of code is unachievable. This point comes up again in the discussion of specialization among magicians, below. It is also important in pointing out problems that can occur with complex systems engineering -- which only reflexive intelligence can solve: Observation 16: A complex mind, implemented in a physical medium, will require continual modification of its internal parameters to assure steady intelligent functioning. This modification must be done intelligently in some cases, and so there must exist certain magicians with a special feedback relation to the physical medium determining the parameters of mental action. A complex environment is one with a lot of patterns; in order to recognize a complex web of patterns in an environment, however, a long & deep exposure to this environment is required. This tells us that an intelligent system is necessarily hooked up to a "rich" environment via perceptual sensors, "rich" meaning rich in pattern. Furthermore it must be able to proactively search for pattern: Observation 17: Pattern recognition in a complex environment is best done by a combination of perception, cognition (internal transformation of perceptions), and action Observation 18: A substantial amount of a mind's attention must often be allocated to recognizing pattern in its environment, i.e. to this threefold "perceptual/cognitive/active loop." A mere collection of patterns recognized in an environment, however, is never going to be a very intelligent mind. Mind is characterized by certain universal, "archetypal" structures. Observation 19: A "magician system" is a collection of magicians that is self-producing, in the sense that any magician in the system can be produced by the combination of some other magicians in the system. Minds are magician systems, at least to within a high degree of approximation. This is similar to the idea that minds are autopoietic systems, in the sense of Maturana and Varela. A terminological question arises here: When do we want to call a collection of patterns a mind? Is every collection of patterns a mind, or is intelligence required? Does a mind have to be a magician system, or not? These are not very important questions, in that they just pertain to the definitions of words. A sound practice is to refer to a mind as the set of patterns in an intelligent system. Since the definition of intelligence is fuzzy, the definition of mind is fuzzy as well, and the conclusion is that everything is mind-ful, but some things are more mind-ful than others. Observation 20: Highly intelligent minds are characterized by hierarchical structures. The definition of hierarchy in this context is: A relates to {B1, B2,...,Bk} hierarchically if each of the B[i] asymmetrically shares much meaning with A. The process of creating hierarchical structure is called "clustering" or "categorization." Observation 21: Highly intelligent minds are characterized by heterarchical structures, large connected networks of symmetrically meaning sharing entities Observation 22: In a highly intelligent system, the hierarchical and heterarchical structures of mind are aligned, so that in many cases, when A relates to {B[1],...,B[k]} hierarchically, each B[i] relates to a number of other B[i] symmetrically This alignment of hierarchy and heterarchy has sometimes been called the "dual network" of mind. Observation 23: Minds are finite, so that if they live long enough, they must forget. They will run into situations where they lose the B involved in a representation C(A)=B, but retain the pattern A that was recognized. Forgetting has profound consequences for mind. It means that, for example, a mind can retain the datum that birds fly, without retaining much of the specific evidence that led it to this conclusion. The generalization "birds fly" is a pattern A in a large collection of observations B is retained, but the observations B are not. Observation 24: A mind's intelligence will be enhanced if it forgets strategically, i.e., forgets those items which are the least intense patterns Observation 25: A system which is creating new magicians, and then forgetting magicians based on relative uselessness, is evolving by natural selection. This evolution is the creative force opposing the conservative force of self-production. Observation 26: A pattern A is "grounded" to the extent that the mind contains entities in which A is in fact a pattern For instance, the pattern "birds fly" is grounded to the extent that the mind contains specific memories of birds flying. Few concepts are completely grounded in the mind, because of the need for drastic forgetting of particular experiences. Observation 27: "Reason" is a system of transformations specialized for producing incompletely grounded patterns from incompletely grounded patterns. Consider, for example, the reasoning "Birds fly, flying objects can fall, so birds can fall." Given extremely complete groundings for the observations "birds fly" and "flying objects can fall", the reasoning would be unnecessary -- because the mind would contain specific instances of birds falling, and could therefore get to the conclusion "birds can fall" directly without going through two ancillary observations. But, if specific memories of birds falling do not exist in the mind, because they have been forgotten or because they have never been observed in the mind's incomplete experience, then reasoning must be relied upon to yield the conclusion. So far this is a highly general theory of the nature of mind. Large aspects of the human mind, however, are not general at all, and deal only with specific things such as recognizing visual forms, moving arms, etc. This is not a peculiarity of humans but a general feature of intelligence. Observation 28: The specialization of a transformation may be defined as the variety of possible entities that it can act on. The magicians in a mind will have a spectrum of degrees of specialization, frequently with more specialized magicians residing lower in the hierarchy. The necessity for forgetting is particularly intense at the lower levels of the system. In particular, most of the patterns picked up by the perceptual-cognitive-active loop are of ephemeral interest only and are not worthy of long-term retention in a resource-bounded system. The fact that most of the information coming into the system is going to be quickly discarded, however, means that the emergent information contained in perceptual input should be mined as rapidly as possible, which gives rise to the phenomenon of "short-term memory." Observation 29: A mind must contain magicians specialized for mining emergent information recently obtained via perception. This is "short term memory." It must be strictly bounded in size to avoid combinatorial explosion; the number of combinations (possible grounds for emergence) of N items being exponential in N. The short-term memory is a space within the mind devoted to looking at a small set of things from every possible angle. The bound of short-term-memory size in humans and animals seems to be 7+/-2. For combinatorial reasons, it seems likely that any physical system of similar scale will have a similar bound. Observation 30: The short-term memory may be used for tasks other than perceptual processing, wherever concentrated attention on all possible views of a small number of things is required One of the things that magicians specialize for is communication. Linguistic communication is carried out by stringing together symbols over time. It is hierarchically based in that the symbols are grouped into categories, and many of the properties of language may be understood by studying these categories. Observation 31: Syntax is a collection of categories, and "syntactic transformations" mapping sequences of categories into categories. Parsing is the repeated application of syntactic transformations; language production is the reverse process, in which categories are progressively expanded into sequences of categories. Observation 32: Semantics is a collection of categories, and "semantic transformations" mapping: categories into categories, category elements into category elements, transformations into categories, and semantic transformations into semantic transformations. Observation 33: A key psychological role of syntax is to transfer semantic knowledge from strongly grounded patterns to weakly grounded or entirely ungrounded patterns. Observation 34: Language is useful for producing magicians specialized for social interaction. Syntax in particular is crucial for social interaction, because another intelligence's observations are in general ungrounded in one's own experience. Language is for communication with others, and is tied up with sociality; but the structures used in language are also essential for purely internal purposes. Observation 35: The most intelligent minds have selves, where a "self" S is a pattern which a mind recognizes in the world, with the property that, according to the mind's reasoning, the substitution of S for the mind itself would produce few changes. I.e., the self asymmetrically shares meaning with the entire mind. Observation 36: The "self" of a mind is a poorly grounded pattern in the mind's own past. In order to have a nontrivial self, a mind must possess, not only the capacity for reasoning, but a sophisticated reasoning-based tool (such as syntax) for transferring knowledge from strongly grounded to poorly grounded domains. Observation 37: The existence of a society of similar minds makes the learning of self vastly easier The self is useful for guiding the perceptual-cognitive-active information-gathering loop in productive directions. Knowing its own holistic strengths and weaknesses, a mind can do better at recognizing patterns and using these to achieve goals. The presence of other similar beings is of inestimable use in recognizing the self -- one models one's self on a combination of: what one perceives internally, the effects of oneself that one sees in the environment, and the structures one perceives in other similar beings. It would be possible to have self without society, but society makes it vastly easier, by leading to syntax with its facility at mapping grounded domains into ungrounded domains, and by providing an analogue for inference of the self. 3. Psynet AI The psynet model of mind, as developed above, is clearly far too abstract to lead directly to any particular software program or engineering hardware design.. It can be implemented in many different ways. But, even without further specialization, it does say something about AI. It dictates, for example, that an AI system must be a dynamical system, consisting of entities (magicians) which are able to act on each other (transform each other) in a variety of ways, and some of which are able to evaluate simplicity (and hence recognize pattern). that this dynamical system must be sufficiently flexible to enable the crystallization of a dual network structure, with emergent, synergetic hierarchical and heterarchical subnets that this dynamical system must contain a mechanism for the spreading of attention in directions of shared meaning that this dynamical system must have access to a rich stream of perceptual data, so as to be able to build up a decent-sized pool of grounded patterns, leading ultimately to the recognition of the self that this dynamical system must contain entities that can reason (transfer information from grounded to ungrounded patterns) that this dynamical system must be contain entities that can manipulate categories (hierarchical subnets) and transformations involving categories in a sophisticated way, so as to enable syntax and semantics that this dynamical system must recognize symmetric, asymmetric and emergent meaning sharing, and build meanings using temporal and spatial relatedness, as well as relatedness of internal structure, and relatedness in the context of the system as a whole that this dynamical system must have a specific mechanism for paying extra attention to recently perceived data ("short-term memory") that this dynamical system must be embedded in a community of similar dynamical systems, so as to be able to properly understand itself It is interesting to note that these criteria, while simple, are not met by any previously designed AI system, let alone any existing working program. Chapter 4: A Fourfold Model of Information Space 1. The Four Levels of Being I have posited a fairly close structural and dynamic mapping between the Internet, the human brain, and mind in general. To make this mapping explicit, I will now venture into the domain of philosophy, and present a "fourfold model of information space", applying to digital and neural information equally, and derived substantially from the four "levels of being" described by the contemporary philosopher Kent Palmer (1997): pure being, process being, hyper being and wild being ... the latter category being the source of the name for this book. Internet intelligence is bringing us a new kind of computing which spans all philosophical levels. A brief note on the role of philosophy in this kind of inquiry may be appropriate here. Cognitive science is generally defined as an interdisciplinary study involving a number of fields, including psychology, computer science, linguistics and philosophy. However, transmission of ideas from the technical disciplines to philosophy is generally much more common than transmission in the reverse direction. I believe that cognitive science, and perhaps science in general, would benefit from paying more serious attention to philosophical concepts. Of course, philosophy cannot solve scientific problems, but it can point science in interesting and useful directions, saving time that would otherwise be spent exploring conceptually barren "dead ends." To make a moderately loose analogy, one might say that the relation between philosophy and science is like the relationship between design and coding in software engineering. Design doesn't tell you how to code, but it gives you the structure according to which the coding will proceed. While coding, you will often discover new things that force you to go back and re-design, but this doesn't mean that the design process was useless. Similarly, philosophy doesn't tell you how to do science, it just gives structures according to which science can proceed; and when the empirical or mathematical results feed back and modify the philosophy, this is merely part of the form-generation process. Palmer's four levels of being are: static being, that which is present, existent process being, that which is dynamic, changing, becoming hyper being, emergent, autopoietic being, that which achieves semi-stasis emergent from dynamics wild being, a meta-field of overlapping fields of stasis and dynamics, involving interaction of numerous emergent beings These are extremely general concepts which, nevertheless, can be quite useful for conceptualizing particular situations, such as the human brain, and the Internet. Traditional science focuses on static being and process being. Differential equations, as used in physics, represent the most refined possible understanding of process being. Chaos and complexity science, on the other hand, represent an understanding of hyper being. The notion of an attractor, a structure emergent from complex or chaotic dynamics, is moving toward hyper being -- and the notion of a class of attractors, a type of attractor, is hyper being par excellence. The word "hyper" here evokes the fact that this is neither just being, nor just becoming, but is rather being overlaid on becoming -- becoming becoming being! A given type of attractor -- e.g. a spiral, say -- may come out of an unlimited number of dynamical systems; it is a form, a definite entity, which exists tenuously as an emergent layer atop an underlying reality of process. An autopoietic system is also an example of hyper being; and it is no coincidence that autopoietic systems are full of archetypal attractor structures -- this is the compositionality of hyper being, the tendency of emergent forms to combine to form yet greater emergent forms, a tendency which culminates in the dual network structure of the mind. Wild being, finally, is not confronted by modern science hardly at all, though it is discussed extensively, under various names, in existentialist, postmodern and Eastern philosophy. Every empirical scientist has had numerous interactions with this type of being, in the form of raw data. Raw data, from a fairly uncontrolled experiment, will have all sorts of interesting patterns popping out of it, but none of them quite strongly enough to be ascertained as definitely existent. In order to do away with this field of possibilities, the scientist focuses the experiment, and thus achieves hyper being -- a definite trend, a pattern, emergent from the dynamical uncertainties of the actual phenomenon being studied. In the mind, one may say that wild being plays around the edges of the dual network, arising as different parts of the dual network transform each other and reinforce or decrease one anothers' structural rigidity. Wild being plays with autopoietic structures as process being plays with rigid, static reality. 2. Internet Information Space In this section I will use these philosophical ideas to give a fairly concrete model of Net information space, based on the intuitive concept of the Net as an self-organizing agent system. The four levels of being, we shall see, provide an abstraction of the Internet on a par with the neural net abstraction of the human brain, avoiding engineering specifics, but acknowledging the asynchronous nature of Internet communication, and the heterogeneity of the population of computational processes comprising the Net. The ideas of this section owe a great deal to the "agent-data-event" model of Internet information space developed by John Pritchard, and the presentation "Thinking Through Cyberspace" given (and placed on the Web) by Kent Palmer in 1997. In an Internet context, the role of static being is fulfilled by nodes and connections -- by the physical substrate of the Net, being machines with processors and RAM, with cables running between them. This is what is present, what is given. Of course, it is also changing, but it is changing on a much slower scale than the information within the Net, so from the point of view of an initial conceptual model, it may be approximated as static. The feedback between the static realm and the dynamic realm existing within it is interesting, but is different in nature from the faster feedback occuring within the static realm. It seems to be the case on general, system-theoretic grounds that, for interesting things to evolve and grow in a world (real or virtual), there must be a part of the world which is not allowed to evolve and grow, but is fixed. The dynamic, process aspect of Net reality comes in two forms: the information flowing back and forth across inter-computer connections, and the computational processes carried out at individual nodes of the network. Hyper being, on the other hand, is represented by agents living within the Internet. Agents "surf" on the dynamics of node-resident processes and information flow. Their computation does not reside entirely at any particular node, and would not exist without the continual flow of data, both within individual machines and among different machines. The distinction between an agent and a computational process resident at a node is fuzzy rather than crisp, but is nevertheless important (much like the distinction between ``living'' and ``nonliving'' matter in biology). An ``agent'' is, in essence, a computational process whose main role is to help in carrying out computations that are distributed over many nodes that is largely concerned with interacting with other agents. It almost goes without saying that these ``agents'' may be either human or artificial; this distinction will not be an important one here, as we will seek a framework that allows us analyze characterize human and artificial agents in a uniform way, as parts of an overall matrix of agent-event determination. The distinction between human and artificial agents is a fuzzy one anyway, as all artificial agents are at present designed by humans and hence reflect human goals and biases; and all human interactions with the Internet occur by the medium of artificial computing ``agents'' such as Web browsers and search engines, which increase in their intelligence and autonomy each year. Rather than distinguishing between human and artificial agents, a better approach would be to say that each agent is characterized by a certain amount of ``human-directedness''; but for the present, this concept will not play a role in our considerations either. An agent is defined behaviorally: in terms of the activities that it carries out at each time, based on the information it has received in the past. Agents do things, they are the nexus of intelligence in information space; nodes, on the other hand, are static and dynamic data resources. Network data is information available via network activity. One might call a static resource a store node and a dynamic resource a processing node; some nodes can be both store nodes and processing nodes. An agent retrieves information by calling on a node. Recursive retrieval occurs when a processing node calls on other nodes for processing or storage retrieval; when recursive retrieval becomes sufficiently complex it achieves the level of hyper being rather than dynamic being. Currently, recursive retrieval plays only a minor role in the Internet economy, but this can be expected to change: in the future, the Website that accepts your money and provides you with your service may not actually do any of the work that you've paid for -- it may subcontract out the work to the highest bidder from a number of artificial agents representing other machines. This terminology may easily be related to more standard Internet terminology. Events, in the Internet context, are information transactions, carried out by agents or by processes resident at individual nodes. When an event has an effect on data form or content one may say that it is a transformative event, and that the agent effecting the event is an actor. When an event has no effect on the state of network information except to provide an agent with a local copy of some data, then the agent has effected a retrieval event. Transformative events have effects on network data subsequently available as processor or agent events, and so we may say that agents behave as distributed processors in their effects on nodes (remembering the fuzziness of the distinction between node-resident processing and agent action). Examples of events propagated by agents are replies to email or additions of hyperlinks in Web pages. Much of the activity carried out by artificial agents is currently retrieval-oriented, but as the Internet develops, transformative events will become more and more common, and the distinction between the two types of events may ultimately vanish. For instance, to an intelligent search engine, each query represents a piece of information regarding the humanly-perceived structure of the Web, and thus potentially leads to modifications in the search engine database; a prototypical retrieval event, searching for a Web page, then becomes a transformative event as well. It is interesting to observe that the dynamics of a network of agents in information space is essentially nondeterministic, in the sense that there is no way to determine the overall state of the system of agents at any given time. One might think that, since we are dealing with digital systems at this point in the evolution of computer technology, the dynamics of an Internet agent system could be understood by experimentation -- by manipulating an active network of data, involving continuous agent activity and continuous external modification of data. Such experimentation would require the collection of a periodic global state image, however, and the collection of this state image, in practice, would accidently change the definition of the network by interfering with system operations (much as, in quantum physics, measuring a system inevitably disturbs its state). Halting the network of agents to measure the overall state is not a viable option either -- this is difficult without building a system that synchronizes all activity; but synchronization must not be used in agent processing activity for communication or retrieval if the definition of the network is to remain the asynchronous, packet-switching network. While the asynchronous network employs lazy synchronization in the form of collection or set ordering for message encapsulation over packets, many such connections exist simultaneously which implies that node reading, processing and writing operations (effects) occur in random order relative to one another. In short, the very nature of the Internet makes global state measurement difficult, and results in a system that is in practice globally nondeterministic. What we have, then, is a vision of the Net as complex system of agents passing messages around a graph of nodes, interacting with the computational processes and the static data stored at nodes, and giving rise to dynamical patterns that can be understood only partially by any particular observer. Understanding and utilizing these subtle dynamical patterns becomes an essential part of software practice. And here we get to the crux of the matter. Up till now, the focus of writers and thinkers and programmers in the area of Internet intelligence has been on the intelligence of individual agents. But, this is a limited approach. What is more interesting and ultimately more fruitful is to think of the intelligence of the overall dynamic graph that is the Internet -- of the patterns of emergent computation binding together the different agents and computational processes on the net. And this brings us beyond the level of hyper being into the more intriguing territory of wild being. Wild being is what happens when a population of intelligent agents interact within a richly fluctuating network of information. It is intrinsically social, in the sense that it is made of interacting subjective perspectives; and in the same sense that the individual human brain is intrinsically social, being made up of the interacting subjective perspectives of the numerous sophisticated and specialized modules within it. 3. Net Versus Brain It is simple enough to see that the Net, as a whole, has the very same network structure that modern AI theorists, with their neural nets and semantic networks, have simulated within individual serial computers for the purpose of modeling brain and mind processes. The Internet's nodes are more complex than individual neurons, having more of the computational power of neuronal modules. And, the packets sent around the Net are more complex than the jolts of charge sent around the brain -- they are more similar, perhaps, to coherent, nonlinear spatially-distributed electromagnetic waves passing through the brain. But, in essence, they are quite similar systems: they are self-organizing networks, in which information is carried and computation is carried out both locally and in a global, distributed fashion. While the early cyberneticists set out to build a brain based on the neuron level of abstraction, what has happened is that we have built a brain based on the neuronal module level of abstraction. Adapting our mathematics and design methodologies to this fact is not a nontrivial task, but nor is it impossible. "The network is the computer is the mind" is the important thing -- and not so much what kind of computer or what kind of network happens to be involved. Analysis in terms of the levels of being allows us to take this analogy little deeper. In the brain, static being corresponds to the wiring of the brain, the layout of neurons, given at birth via evolution and pre-natal self-organization, and evolved to a lesser degree during the first years of life (Edelman, 1988). Dynamic being corresponds to electricity coursing through the brain, from neuron to neuron; and to the flow of neurotransmitters and other associated chemicals through the brain, and from the brain to the body. Hyper being corresponds to neural attractors, and classes of neural attractors -- structures that emerge from the dynamics of neural subnetworks of the brain. Different neural subsystems have different attractors, and communicate with each other by methods such as frequency synchronization (Koch, 1994), which depend sensitively on attractor structure. Furthermore, though this is as yet little understood, there are mechanisms for shifting attractors from one part of the brain to another. For instance, when an animal loses part of its visual cortex, another part of its brain may reshape itself into an image of the lost region. Or, in some cases, the processes enabling knowledge of a skill may move from one part of the brain to another as other skills accumulate, taking up room. And wild being, finally, corresponds to the overall dynamics of the brain, which is a matter of overlapping subnetworks, each one imposing its own view on the remainder of the brain via complex, organized activity. Monitoring the brain's global activity is very difficult precisely because it is "wild" in this sense. Each EEG wave has numerous possible generators, and is usually a nonlinear superposition of different generators. The activity in any one part of the brain is not comprehensible in terms of that part alone, but only in terms of the views of that part of the brain held by the other parts of the brain that interact with it. We see, then, that there is a harmony between the brain and the Internet on a fairly deep philosophical level. In both cases, we have a fixed underlying substrate consisting of nodes and links -- neurons and synapses on the one hand, computers and cable on the other. The level of granularity is smaller in the brain; but on the other hand, if one accepts the "Neural Darwinist" postulate of brain modularization, then the basic module of brain structure is not the neuron but the neuronal group, which is more closely similar in size to a single PC. In both cases, one has two kinds of dynamics constituting the process level of being -- dynamics within the individual neuron (as modeled by the Hodgkin-Huxley equation) or neuronal module, together with electrical and chemical flow between neurons; and computation within the individual computer, together with flow of sound and light along cables between computers. On the hyper being level, in both cases, one has complex entities that span numerous nodes and links to carry out their work. Also, in both cases, many of these entities have a certain fixed location around which their distributed operation centers -- e.g. the home node of a Web spider; the physical location of a neuronal group with a certain attractor. There is a greater potential variety to the types of emergent entities -- computational agents -- in the Internet than in the brain. On the other hand, precisely because the range of emergent entities is more restricted in the brain, the crucial "compositionality" by which emergent entities build together to form more and more complex emergent entities may come more easily in the brain than in the Net. In both cases, one has the potential for the emergence of wild being from the interpenetration of numerous emergent entities. The challenge for Internet intelligent engineers is to replicate the property of the brain whereby a population of emergent "hyper being" entities arise which are sufficiently different from one another to produce a huge spectrum of structures and behaviors when acting in combination sufficiently similar to one another to act effectively in diverse combinations This is an issue which will recur throughout this book. The WebMind architecture, to be described below, represents a solution to this problem via a proprietary software architecture. The Agents Interaction Protocol, also described below, represents a sketch of a public-domain solution to the problem, a solution which is neutral in regards to specific implementation of agents, consisting of a general "glue" language making it easier for different kinds of agents to act cooperatively as composites, thus contributing to the leap from hyper being to wild being. Finally, in both cases, one has the potential for a "looping back" by which the wild dynamics of the whole loops back and affects the most basic, static level of being. However, the feedback works quite differently in the two examples. In the case of the Net, such feedback occurs when high-volume regions of the computer network get more cable, more computers, etc. It also occurs when systems break down due to excessive demand. In the case of the brain, on the other hand, this happens in youth when stimulation of brain regions causes growth in those regions; and in adulthood when drug use causes brain connections to atrophy. This is an area where the Net excels over the brain: the human brain has hardware which grows in youth, and then decays throughout adulthood, whereas the Net will be able to continue growing on the static level even as it develops through successive stages of maturity on the higher levels of being. This is a capability that will have to be managed carefully, but that will doubtless have tremendous consequences. 3. The Psynet in Biological and Computer Networks In the psynet model of mind, the two main processes of mind are said to be evolution and autopoiesis. Autopoiesis, we have said, is closely aligned with hyper being -- it is the emergence of "semi-stable" structures from underlying fluctuations. Ecological evolution, acting on the field of autopoietic subsystems of the dual network, is both process being and wild being. It is a process creating new forms toward specific purposes, and it is also an aim-transcendent generative process, producing archetypal and incidental forms which are retained in the mind and serve as seeds for future self-organization of autopoietic structures. The Internet itself has a naturally hierarchical structure, expressed in the domain name system and in the patterns of network connectivity. Individual machines naturally cluster with the other machines on their intranet, then with the other machines in their nation or continent, lastly with other machines around the world. This is a consequence of network bandwidth which may disappear as engineering improves, but it is a present fact, and a fact which may help rather than hinder the development of intelligence. The relative but not complete isolation of intranets provides an analogue of the clustering of neuronal modules into meta-clusters in the brain, and (as we shall see later in the discussion of Webmind) provides a lower-level impetus for the formation of autopoietic agent systems on the intranet level. And, of course, there is an heterarchical structure to the Net as well. This is the obvious sprawling hyperlink structure of the Web, which is taken on by Web agents such as spiders, e-mail agents, e-commerce agents, etc. The heterarchy is indeed aligned with the hierarchy, in that machines within the same hierarchical domain are likely to deal with similar topics and experience similar phenomena, thus being strongly heterarchically interlinked. One has, in the Net of today, a germinal dual network. The primitive Internet agents currently in action, do their thing in the context of this dual network. And, when these agents become sufficiently numerous and sophisticated and intercoordinated to lock into a pattern of globally emergent intelligence, this dual network structure will no doubt be a part of it. What the psynet model claims, in philosophical terms, is that the dual network structure is an incomparably effective means for giving rise to hyper being and wild being. The dual network is a compositional structure of hyper beings -- emergences upon emergences upon emergences -- which lends itself naturally to evolution, in both its directed and free-flowing, generative, wild aspects. That the brain and the Net both manifest dual network structures on the static being level reflects feedback processes taking place over a long time scale -- it reflects the fact that both of these systems have physically evolved in order to be more intelligent, one over millennia of biological advance and the other over years of engineering advance. The brain is the only current example of Wild Computing; but we are about to have another. Chapter 5: The Internet Economy as a Complex System 1. Introduction One of the main factors catalyzing the explosive growth of the Internet has been the widely perceived prospect of making money via networked computers. This is a prospect which is rapidly becoming a reality, especially in the the areas of intranet-based knowledge management and business-to-business e-commerce. Profit via the Internet takes many forms. There is the profit that goes to Internet service providers, telecommunications and backbone providers, Internet software companies, and to Internet media companies via online advertising. And then, more interestingly, there is electronic commerce (e-commerce) -- commercial transactions taking place over the Net, a rapidly growing segment of the economy, which is expected to increase yet more rapidly over the next few years (Varian, 1996). Current Internet commercial transactions are estimated at hundreds of millions and are projected for billions within the decade. Though many consumers are still reluctant to deal financially over the Net, businesses have shown no such reticence, and business-to-business e-commerce is booming. Furthermore, one expects that the growth of consumer transactions over the Net will be energized with Visa and Mastercard's release of secure software standards for their cardmembers' internet transactions, and the acceptance of standards for micropricing. All in all, it is reasonable to project that, in a decade's time, the vast majority of economic transactions will involve a significant electronic component. Given these trends, it seems clear that, over the next few decades, dealing with electronic commerce is going to be one of the most important jobs of self-organizing Internet AI software. Software dealing with the Net is going to have to understand Internet economics. However, this is more of a challenge than it might sound like at first, because no one understands Internet economics! Traditional economic theory gives us, to say the least, fairly poor guidance in understanding this emerging economic domain. A new conceptual framework is required. And the framework needed for understanding Internet economics is, I believe, the same as the framework needed for understanding Internet AI: self-organization, emergence, complexity. In this chapter I will sketch a simple model of Internet commerce based on dynamical systems theory and the theory of autonomous agents. Starting from a discussion of the software market and the particular economic efficiences provided by globally networked communication, I will model economic transactions as agent interactions taking place on a graph of store/processor nodes. In this context, I will turn to the dynamics of economies in general, summarizing an emerging body of evidence which suggests that economic dynamics is self-organizing and chaotic, with complex, overlying emergent patterns. Finally, putting these ideas together, I will argue that the increased communication provided by the Internet is highly likely to make the electronic economy more pronouncedly complex than the traditional economy. This suggests that, in the context of e-commerce, the ability to manipulate information regarding markets and their dynamics will be even more important than it is today. Artificial intelligence and powerful data-mining and data visualization tools will allow human and computational agents to successfully navigate this new, newly complex and dynamic economy. The main conclusion is that emerging information-based economy, a major role will necessarily be played by artificially intelligent economic agents (AI) tools for guiding intuitive human exploration of market dynamics (IA, intelligence augmentation) As we move from an economy focussed on exchange of goods to an economy focussed on communication of information, the ability to elicit information from complex, chaotic market dynamics via statistical pattern recognition will assume premium value. 2. General Features of the Emerging Internet Economy The emerging Internet economy is a complex beast, with many different facets. All the features of traditional economies are present, but with a different slant, caused by the increased role of communication and the increased ease of information collection. One can now use the Net to buy products of all sorts -- in the consumer arena, books, software, computer hardware, CD's and travel reservations are high-volume items at present; the business-to-business market is extremely diverse with particularly high volume in electronic and mechanical components of various sorts. One also can now use the Net to buy data, a fact which is exemplified by Lexis-Nexis and other private storehouses of text, and by for-a-price Internet finance services such as PC Trader. The next stage, which is just getting off the ground, will be buying computational processes that act on one's own data. Some Internet services which are currently free are expected to become commercial in the near future. For instance, Web search engines, electronic magazines and Web classified ad sites are now free services, but with the advent of "micropricing," it will become practical to charge users prices as low as a thousandth of a cent for individual transactions such as accessing Websites or performing searchings. The software for micropricing already exists (Glassmann et al, 1995), it has merely to become widely accepted. The transformation of currently free services into micropriced services can be expected to lead to a substantial increase in the quality of services offered; and it may well also result in the transformation of some currently commercial services, such as Net access itself, to free services. The Internet offers an unparalleled mechanism for market efficiency. No longer will a consumer have to ``shop around'' in tedious or time-consuming fashion; instead there will be services that list the prices available for comparable items from different vendors. An initial experiment in this regard is PriceWeb (Zabeh, 1995), which is a Website listing prices offered for computer peripherals by various hardware vendors. If PriceWeb becomes commonly used it will have a tremendous impact on the way peripherals are purchased. The effect will be to push vendors into charging a single, uniform price, with deviations from the price only being possible if the vendor offers extra services of significant and obvious value. Not all commodities are as standardized as computer peripherals, but the basic idea of PriceWeb can obviously be extended throughout the Internet economy in general. One will have artificial and human agents offering goods at various prices; other agents monitoring the prices being offered by various agents and posting this information to databases available for free or at a price; and other agents using the posted information to purchase from or negotiate with the selling agents. In spite of advancing commercialization, however, the economy for free information is not likely to disappear. Free transactions form the backbone of the Internet currently and will surely remain, both in the academic and hobbyist communities, and within the commercial Net community as a necessary tool for attracting interest in goods and services. Free transactions take on the role of advertising in non-interactive communications, and extend the simple relay of image and brand with in-depth information for various classes of users. Interactivity between consumers and producers enables producers to respond to users' interests in differentiating their products. In terms of the fourfold model of information space, we may observe that Internet commerce involves a complex system of agents carrying out a large variety of transactions -- i.e., it lives on the level of hyper being, with a potential for entering into wild being. We have seen that the dynamics of a system of agents acting on a graph of static and dynamic nodes will be extremely complex, and the special case of economic agent interactions is no exception. In the following section we will review evidence for chaotic and otherwise complex dynamical behavior in certain economic systems: the evidence, as will become clear, very strongly suggests that the Net economy will give rise to structured chaos, and complex emergent dynamical patterns of various kinds. Making use of these patterns becomes an essential aspect of doing business. For example, a producer's data nodes are organized into an interactive web which classifies users by interests, but cannot be seen as exclusively classifying users except in the simplest case. Agents who explore one node web will often explore others and so are classifiable with many interest properties. This classification constitutes a macroscopic perspective on the product's or products' differentiation from others' for the user -- while the user has similarly explored other products with purpose or feature correlations. In the information space economy, there is an enhanced ability for producers to identify small niche markets, and consequently, an increased necessity for them to do so, using the vast amount of consumer behavior data at their disposal, and the most sophisticated available categorization techniques. Perceiving patterns amidst the complexity and chaos of the electronic market becomes imperative. The Software Economy One important and interesting aspect of e-commerce is the software economy -- the economics of the ``computational processes'' resident at particular nodes in information space. Software economies are both free and priced. Currently emerging pricing structures include the common shrink-wrap model, and the usage model. In the shrink-wrap model, a user pays a one time license fee for free usage. This market for software is defined with one class of users and one producer. Multiple producers' products may be interoperable, codependent or competitive. For example, a word processor comonly requires a particular operating system to run, so the user must have the operating system before using the word processor. On the other hand, if the desktop operating system provides special interoperability characteristics for the word processor software, then the dependence of the word processor on the operating system is enhanced by interoperabilty features which may have independent utility for the user. In the usage model, on the other hand, users pay for a particular transaction which employs software and computing resources of time and memory space. Computing resources have opportunity cost across users. The usage model prices in economies that are at least predominantly internet contained. The usage model also serves a variety of users from disjoint utilities. A consumer and a worker requiring search engine processing time may have very different demands as the worker's time has opportunity or compensation costs for the firm. With the advent of Java applets and network-based computing environments, it is anticipated that the usage model will increasingly supplant the shrink-wrap model, potentially until the latter becomes obsolete. A notable aspect of the software economy is the high cost of producing the first unit of a product, as compared to the minimal cost of producing subsequent copies. This is an exaggeration of the economics of the traditional publishing industry (e.g. it is estimated that about 70% of the cost of producing an academic journal goes into the cost of producing the first issue). What this implies is that there is no easy way of determining the appropriate price for a software product; pricing strategies depend in a very fundamental way of estimates of future demand. Often the ``beta'' version of a software product is given away for free, to whet demand. Also, differential pricing is common, with inferior versions of a product offered for lower prices, even though there would be no additional cost in providing everyone with the fully featured software. Hal Varian (1996) has studied these issues in a thoughtful way, and presented economic mechanisms which provide for effective differential pricing in an e-commerce context. The combination of differential pricing with usage-based pricing may lead to a new, complex and intriguing software market in the near future. Consider a situation in which, instead of purchasing a large shrink-wrapped program, each user dynamically assembles software according to their needs, from components (applets) available on the Net. The utility of a given applet to a given consumer will depend on the particular configuration of other applets within which they want to use it. One then has a situation where agents are required in order to assemble computational (node-resident) processes. Each user will send out an agent to find the applets that he needs in a given context. The agent will survey the different applets and assess how well each one will fit the user's particular needs. Given its assessment of the utility of each applet, it will place bids, which the selling agents will then accept or reject based on their own predictively motivated differential pricing strategy. The selling agents will alter their pricing scheme based on perceived trends in demand, and, potentially, buying agents may alter their purchasing patterns in ways determined to have particular effects on selling agents' pricing schemes. Information versus Goods We have said that the information economy will be complex and chaotic and nondeterministic, and we have suggested how this complexity might manifest itself in the software market of the near future. Now let us look at the issues from a more general perspective. What, fundamentally, is the difference between an economy based on agents in information space and an economy based in the ``real world''? The difference, we suggest, is both quantitative and qualitative. The basic quantitative difference is the ease of communication, of information dissemination.In the information space economy, each agent is potentially ``directly connected'' to each other agent, and the fixed cost of exchanging information is very low. Obviously the ease of communication between economic agents has been increasing steadily through history, with the gradual introduction of superior communication and transportation technology. But with the advent of Internet commerce, we are seeing the largest and most sudden change ever in ease of communication of economic information. This change, it seems highly likely, is going to push the global economy into a new dynamical regime -- a new mode of being. The quantitative difference in ease of communication is leading to a qualitative change in focus -- from a focus on goods and their exchange to a focus on information and its communication. Exchange of real-world goods is still an important part of e-commerce, along with exchange of information goods (software programs, databases, etc.); but what is new is that, in an information-space economy, every economic agent must continually be acutely aware of the information base from which its decisions emanate, and the effect that its actions have on the information bases of other agents in the market. When economic agents spend as much time ``thinking'' about the informational causes and effects of their actions, as about the actions themselves, then we have moved into a different order of economy -- an information-based economy rather than a goods-based economy. The fuzziness of this distinction should not be glossed over -- all economies involve both information exchange and goods exchange -- but the point is that the change in emphasis is likely to be sudden rather than gradual. 3. Chaos and Complexity in Economic Dynamics Having discussed some of the particularities of electronic commerce, and the general structure and dynamics of information space, we will take a step back and review some general properties of economies, which happen to be particularly relevant to the dynamics of heterogeneous economic Internet agents. Economic systems, ordinary or digital, are far more complex that traditional economic theory would like to admit. Most notably, the notion of an ``invisible hand'' which drives prices toward an equilibrium balance of supply and demand does not bear up to scrutiny, either mathematically or empirically. The reality seems to be that prices fluctuate according to noisy chaotic dynamics, with overlying long-range statistical predictability, and with perhaps some ``windows'' of unusually high short-term predictability. In short, economic systems are no more and no less predictable or equilibrium-oriented than other complex, self-organizing systems -- e.g. brains, ecosystems, or the Internet as a whole. This conclusion is particularly important for electronic commerce, as it tells us what kind of dynamics to expect for the emerging Internet economy. It tells us that e-commerce agents, in order to be successful, will have to be skilled in the art of statistical pattern-recognition -- will have to be capable of recognizing and acting on short-, medium- and long-term trends in noisy, statistically patterned chaotic systems. In the real economy, the noisy, patterned chaos of price dynamics is dealt with by human intuition. In the Internet economy, on the other hand, things will happen too fast and in too distributed a way for human intuition to intervene every time a decision has to be made. The complexity of economic dynamics thus leads directly to the need for intelligent e-commerce agents. Chaotic Price Dynamics As shown in detail by (Saari, 1994), the chaotic nature of economic dynamics can be derived directly from basic price theory. A brief review of Saari's arguments may be useful here. Consider, for simplicity, an economy without production, consisting of agents exchanging n types of goods according to positive prices. Let pj be the price per unit of the jth commodity; then the cost of xj > 0 units is pj xj. The price of a commodity bundle x = (x1, ... , xn) is given by the inner product (p, x), where the vector p represent the prices of all commodities. In the absence of production, what the kth agent can afford is based on what he can sell-- his "initial endowment" wk. How does each agent determine what to buy, in this simplified set-up, given a particular price vector? There is no natural ordering on n-dimensional space, so, following typical practice in economic theory, we may impose one by defining a "utility function" uk: Rn+ --> R for each agent, defined so that uk( y) > uk( x) means the k'th agent prefers bundle y to x. For convenience, Saari assumes that utility functions are strictly convex, and that no good is undesirable to any agent, i.e. more of each good is better than less from each agent's perspective. These assumptions are not realistic, but we are showing that economic dynamics are chaotic; and it is plain from the mathematics that lifting these restrictions will not make the dynamics any less chaotic. Within this framework, one can use traditional Lagrange multiplier methods to determine the k'th agent's demand at price p, and the k'th agent's "excess demand" xk( p), being the difference between what is demanded and what is supplied (wk). One can then construct the "aggregate excess demand function" X(p) as the sum over k of the Xk( p), and study its properties, called Walras' laws. It is not hard to show that equilibria do exist in this model economy; i.e., there is a price vector p* for which the excess demand x(p*) = 0, and supply equals demand. But do prices tend toward these equilibria? In the classical picture, increased demand leads to increased prices, and so we have, for discrete- time dynamics, pn+1 = pn + h X(pn) for some positive constant h. The mathematical fact, however, is that this classical view virtually never holds. As shown by a theorem of Sonneschein (1991), most trajectories of the dynamical system of economic agents are going to be chaotic, rather than converging to equilibria (this holds in both the continuous time and discrete time cases). Furthermore, the only way to restrict attention to the equilibrium-convergent trajectories is to make completely unreasonable assumptions regarding the preferences of the agents. In short, as Saari puts it, ``with at least as many agents as commodities, anything can happen!'' In fact, Saari's conclusions are even more dire. He notes that the application of dynamical systems theory to economic equations `` not only causes worry about the invisible hand story, but it forces us to question those tacit assumptions--assumptions basic to several tools from economics--about how the aggregate excess demand function for one commodity set relates to that of others. One might argue (and this is a common reaction during a colloquium lecture, particularly in a department of economics) that there may exist conditions imposing strong relationships. Yes, but it is obvious from the theorem that such constraints cannot be based upon the aggregate excess demand function (as is a common practice). Instead they appear to require imposing unrealistically harsh global restrictions on the agents' preferences....'' The basic point is that individual rationality on the part of individual economic agents does not necessarily lead to simple, orderly, convergent and transparently ``rational'' behavior on the market-wide level. A community of agents, each acting to fulfill their own utility functions, can lead to all manner of complex or chaotic dynamics. If one adds yet more realism, and makes the utility functions of the agents vary based on the agents' predictions of the future behaviors of the other agents, then things become yet more complex. The overwhelming point is that economic theory should be a theory of intelligent though not perfectly rational agents, navigating their way through a very complex dynamical landscape -- not moving toward or arriving at equilibria, but rather sculpting the chaos in which they live into temporarily beneficial forms. Complexity in Economic Time Series Data One may well wonder how this conclusion, derived through mathematical theory, is borne out in by the detailed analysis of economic time-series data. The answer here is that real economic data is even less ``orderly'' than mathematical chaos. The incredible complexity of economic systems, combined with the relatively short time series involved, makes convincing data analysis difficult, but the clear message from the work that has been done is that economies are complex and predictable only with great intelligence. The case for chaos in economic time series is still ambiguous at this point (leBaron, 1994), but the problem is not one of equilibrium-seeking versus chaos, rather one of chaos versus pseudorandom behavior generated by exogenous shocks. A real economy receives with a steady stream of new products and new information, as well as intensive influence from politics, mass psychology and so forth, and these factors combine to jolt economic time series away from easily- identifiable chaotic attractors. Much as with the analysis of time series in behavioral science, one finds that it is more productive to seek statistically predictive models than to seek to identify attractors. The disentanglement of chaos from external ``noise'' in extremely complex systems like minds and economies is a formidable problem, and, ultimately, a problem of little practical use. The key point is that there is no simple structure, such as that posited by classical economic theory; instead there is a complex dynamical structure which can only be appreciated by methods of statistical pattern recognition. This conclusion has, in essence, been realized by observers of the financial world for a long time. For instance, ``technical trading rules,'' which were once dismissed as useless, are now being accepted by economic theorists, and appear to be connected with the chaotic nature of financial time series (leBaron, 1994). Many technical trading rules have to do with moving averages; they recommend that a trader buy when the price is above a long-term moving average, and to sell when the price is below (Levich, 1994). The particular form of the average is the subject of much scrutiny, as is the dependence of the urgency of selling on the difference of the price from the average. This is exactly the type of rule that one would expect to be useful in dealing with a system that displays ``structured chaos'' -- chaos with overlying statistical patterns. Technical trading rules are nothing but statistical prediction schemes, which ignore low-level chaos and noise, and focus on high-level regularities. In particular, rules involving buying when prices are above a long-range moving average are tied in with the ``fractional Brownian noise'' model of time series, a particular variety of statistically structured chaos. Simulations of Economic Complexity Recognizing the complex, chaotic nature of economic markets, a number of researchers have thought to simulate economic dynamics with stripped-down ``complex systems'' models. For instance, David Lane and Roberta Vescovini, in a paper called ``When Optimization Isn't Optimal' (1995),report on simulations in which agents choose between one product and another over and over gain, on a series of trials, the decision at each time being based on information gathered from agents who have previously adopted the different products. The big result here is that following the optimal strategy suggested by probability theory -- the ``rational'' strategy -- is not actually maximally effective. What is optimal in terms of probability theory, applied to a single agent making decisions in a fixed environment, is not optimal in an environment consisting of other agents who are also making their own adaptive decisions. They find, furthermore, that in some cases an increased access to product information can lead to a decreased market share for the superior products. Along similar lines, Michael Youssefmir and Bernardo Huberman (1995) have experimented with large distributed multiagent systems, involving agents that continually switch their strategies in order to find optimal utility. They report that they ``have analyzed the fluctuations around equilibrium that arise from strategy switching and discovered the existence of a new phenomenon. It consists of the appearance of sudden bursts of activity that punctuate the fixed point, and is due to an effective random walk consistent with overall stability. This clustered volatility is followed by relaxation to the fixed point but with different strategy mixes from the previous one.'' In their particular system, then, the notion of equilibrium is a reasonable approximation to reality, but there are many different price vectors that give approximate equilibrium. One near-equilibrium is reached, only to be disturbed by a bout of random fluctuation that disrupts the system temporarily. Things then return to a different near-equilibrium, and then start up again.... These simulations, like the mathematical calculations of Saari and Sonnenschein, involve approximations to economic reality. However, the phenomena that they describe have an undeniably ``real-world'' feel to them. These simulations capture some of the fascinating richness of real economic dynamics. And they are particularly interesting from the point of view of e-commerce, because, after all, electronic commerce will also involve the interaction of computational agents. One expects that the dynamics of e-commerce will resemble these simulations as much as it resembles the dynamics of current markets. 4. Intelligence and E-commerce The nature of Internet commerce is that information exchange becomes as important as or more important than goods exchange. This feature, it seems clear, can only intensify the complex, chaotic nature of economic interaction. It makes it easier for a small effect to propagate widely. It makes changes happen more quickly, with less time for intuition to acclimate to the new circumstances. It makes markets more efficient, but it also makes more complex differential pricing schemes viable; and because it supports products with high initial production cost and low replication cost, it leads to pricing schemes that depend intimately on predictions of future demand. In order to deal with the complexity of the electronic economy, it will be necessary for artificial intelligence and intelligence augmentation to be built into standard e-commerce agents. Selling agents will have to be able to predict the future demand for their products, in order to enforce intelligent pricing strategies. Buying agents will have to be able to intelligently assess the utilities of various products on offer (e.g. various applets for use in software applications). This kind of prediction, because of the complex, chaotic nature of economic dynamics, will require sophisticated statistical pattern recognition techniques, including such tools as neural networks, genetic algorithms and Markov chains. It will also require that complex network dynamics be made accessible to human intuition, by the provision of sophisticated visualization tools, based on a general model of information space such as the fourfold model given above. Chapter 6: The Emerging Global Brain 1. Introduction Over the next decade or two, we will see the evolution of the Net into a full-fledged, largely autonomous, globally distributed intelligent system. And as this occurs, we will see this Internet AI network wend itself further and further into human affairs, yielding a synergetic, symbiotic global intelligent system, incorporating machine and human intelligence into a single continuum of thought, a human-digital global brain. This sounds like science fiction, and indeed, it is closely related to several science-fictional visions of the digital future. In this chapter I will unapologetically pursue this angle, and indulge in some speculations on the future of Internet intelligence, which will seem more or less farfetched to the reader depending on their inclination and taste. The more conservative reader may skip ahead to the following chapter which begins the more technical section of the book. However, I believe that both speculation and concrete technical work are valid and important; indeed, the two are inseparable. Without speculations as to the future, we would have no way of deciding what to do in the present. When, at the end of the book, we visit the question of emergent natural language processing, we will see that the philosophical ideas of this chapter become strikingly relevant. The collective construction of meanings, as it turns out, is a notion that strikes right at the heart of modern philosophy, and brings to the fore all sorts of difficult ideas such as the nature of reality and the collective unconscious. 2. Possible Futures Many futurists have envisioned a future Net populated by artificially intelligent entities, interacting in virtual worlds. This vision was portrayed most memorably by William Gibson in his entertaining and influential novel Neuromancer (1994). While this is a reasonable idea, and it does not contradict my own thinking in any way, it is different from what I am projecting here, which is that the Net itself will become a global intelligent system -- a World Wide Brain. Contra Gibson, a number of others thinkers -- most famously, roboticist Hans Moravec (1990) -- have envisioned that humans will eventually "download" themselves into computers, and lead bodiless digital lives. This is also related to, but different from the idea of a global Web mind. The two ideas synergize in a fascinating way. Initially, I suggest, the global Web mind will exist as an entity physically separate from human beings: we will interact with it via our computer terminals, and perhaps more creative interface devices such as VR headsets. This first phase is in store maybe five to twenty years down the line; and it is the main focus of my thinking at present. The increasing integration of human activity with World Wide Brain operations may ultimately occur via body-modifying or body-obsoleting technologies a la Moravec, or it may occur without them, through the advent of more sophisticated noninvasive interfaces. One way or another, though, I conjecture, it will fuse with the global Web. The change which is about to come upon us as a consequence of the emergence of the global Web mind will be a very large one -- comparable in scope, I believe, to the emergence of tools, or language, or civilization. What will distinguish this change from these past ones, however, is its speed. In this sense, those of us who are alive and young today are very fortunate. We will be the first human generation ever to witness a major change in collective humanity with a time span the order of magnitude of a single human lifetime. We are not merely creating artificial intelligence, we are creating an artificially intelligent crystallization of the common, collective patterns of the global human mind. This is a new adventure, something that does not merely bring us back to the spiritual unity of past modes of culture, but brings on us to new frontiers that we can barely even imagine. The universe is ever-expanding, not only physically but informationally. What we are seeing is yet another manifestation of the endless quest of the universe to bring new patterns out of itself. Though this is an angle that will not be pursued here with any seriousness, I do believe this is an aspect of emergent Internet intelligence which can validly be explored from the perspective of transpersonal psychology. 3. Psychology and Ethics of the Global Brain So, let us imagine the Internet, a few years from now, the home of an advanced, self- organizing AI system, spanning tens of thousands of intranets worldwide. Such a system would be an independent, intelligent entity on its own, interacting with humans, and incorporating human workflow and question-asking and answering behavior into its own intelligent dynamics. It would weave the process of collective social inquiry and individual human mental inquiry into a digital fabric of a texture guided by its own processes of intelligent self-organization. This view of the future of the Net is reminiscent of the archetypal idea of the "global brain," which first started appearing in the 1970's. In Russell's book on the Global Brain, for example, computer and communications technology are assigned only a minor role, and it is argued that human society is reaching a critical threshold of size and complexity, beyond which it will enter the realm of true intelligence, and human consciousness will give rise to a higher level of collective consciousness. Russell's hypothesized supra-human intelligence might be called a "global societal mind," as distinct from the global Web mind that is my central topic of interest here. Both the global societal mind and the global Web mind, however, are specific manifestations of the general concept of a "global brain" -- an emergent, distributed worldwide intelligence. Russell ties the global brain in with new-age, consciousness-raising practices. By meditating and otherwise increasing our level of individual consciousness, he suggests, we bring the awakening of the global brain closer and closer. When there is enough total awareness in the overall system of humanity, humanity itself will lock into a new system of organization, and will become an autonomous, self-steering, brainlike system. Speaking generally, one can envision the global Web mind as leading to a global societal mind a la Russell in two different ways. First, we might actually become part of the Web in a physical sense. This could be accomplished either by downloading ourselves into computers, by the fabled "cranial jack," or by some kind of true VR interface. Or it could be done by incorporating our existing bodies into the Web, via newfangled sensory and motor devices. Imagine brains as Websites, and modem/cell-phones inserted directly into the sensory cortex! Or, secondly, we might become part of the Web via our actions, without any extra physical connections. This is already coming about, at least among certain sectors of the population. As more and more of our leisure and work activities are carried out via the Internet, more and more of our patterns of behavior become part of the potential memory of the global Web mind. Webmind or similar software, implemented widely and used intensively across intranets, could lead to this effect quite easily. The global Web mind and the global societal mind, then, are not really such different things at all. If a global Web mind comes about, it will clearly link humans together in a new way, leading to some kind of different and more intelligently structured social order. This is one flavor of global brain. On the other hand, if a global societal mind comes about, communications technology such as the Internet will doubtless play a huge role in its formation. This is another flavor of global brain. The question is, will there be an intelligent Web interacting with humans in a subtle way, or will there be an intelligent societal system incorporating the Web, human beings, and all their interactions. What kind of global brain will we actually see? In fact, Russell's book is only the best known of a host of independent discoveries of the concept of a global superorganism over the past few decades. Joel de Rosnay, for one, has published several books in French on the notion of a "cybionte" or cybernetic superorganism. His earliest, Le Macroscope, was published in 1975; L'Homme Symbionte, which appeared in 1996, updates the concept with discussions of chaos theory, multimedia technology and other new developments. And Valentin Turchin, in his 1977 book The Phenomenon of Science, laid out an abstract, cybernetic theory of evolution, and used it to discuss the concept of an emerging, meta-human "superbeing." His crucial concept is the metasystem transition, a word for the phenomenon in which was previously was a whole, suddenly becomes a part. For example, the cell, which has its own systemic unity, its own wholeness, becomes a part when it becomes part of the human organism. There is a metasystem transition between cells and organisms. There is also a metasystem transition between computers and networks: one's PC at home is a natural whole, but the networked PC of the year 2000 will be something quite different, in that most of its software will require interaction with outside computers, and most of its behaviors will be incomprehensible without taking into account the network outside it. Currently humans are whole systems, with their own autonomy and intelligence, and human societies display a far lesser degree of organization and self-steering behavior. But, according to Turchin, a transition is coming, and in the future there will be more and more intelligent memory, perception and action taking place on the level of society as a whole. Turchin's vision is one of progressive evolution: as time goes on, one metasystem transition after another occurs, passing control on to higher and higher levels. One of Turchin's most active contemporary followers is Francis Heylighen, of the Free University of Brussels. Heylighen believes that the Web will be the instrument that brings about the meta-system transition, leading from humanity to the meta-human superorganism. The Principia Cybernetica Website, which he administers, contains an extensive network of pages devoted to super-organisms, meta-system transitions, global brains, and related ideas. Together with his colleague John Bollen, he has also experimented with ways of making the Web more intelligent, by making its link structure adaptive, in the manner of a neural network. Heylighen has done a comprehensive world-wide search for literature on the global brain, and posted the results at Principia Cybernetica. So far, rather than debating the merits of different approaches to making the Web intelligent, the discussion group seems inevitably to veer toward the philosophical -- toward the questions of what the global Web brain will be like, and how it will relate to human beings, individually and collectively. The most striking thing about the discussion on the Global Brain Study Group list is not a presence but an absence -- the absence of serious disagreement on most issues regarding emerging Web intelligence. Everyone who has thought seriously about the global Web brain, it seems, has come to largely the same conclusions. The Web will become more self-organizing, more complex, and eventually the greater intelligence of its parts will lead to a greater intelligence of the whole. Human beings will be drawn into the Web intelligence one way or another, either by mind-downloading or virtual reality, or simply by continual interaction with Web-brain-savvy technology. In this way, human society will begin to act in a more structured way -- in a way directed by the global Web mind, which recognizes subtle emergent patterns in human knowledge, and creates new information on the basis of these patterns. A brief stir on the Global Brain Discussion Gruop was made by the appearance of a brief satirical piece in Wired in mid-1996, called The Human Macro-Organism as Fungus (online at http://www.hotwired.com/wired/4.04/features/viermenhouk.html). This article is an interview with a fictitious scientist named Dr. Viermenhouk, who parodies Heyligen by taking the absurdist line that the global superorganism is already here. Here is the final part of the interview: The Internet provides a big leap forward. As an organism grows more complex, it requires a sophisticated means of transferring data between its constituent entities. The Internet is little more than the nervous system of our human macro- organism. Isn't your work derivative of other cybertheoreticians? Francis Heylighen, for example, has postulated the technology- driven transformation of humanity into a "super- being" or a "metabeing." Heylighen ... ... walks around all day with a printer port up his ass. I've seen the pictures. He's obsessed with a direct neural interface. His concept of a metabeing, a single unitary organism, hinges on us physically plugging into a "super- brain." He's missing the point. We already have. Cells don't communicate through direct physical connections; they use electrical interfaces. The neural cells in our skulls communicate through an intricate chemical dance. To expect a macro- organism to develop differently from a multicellular organism is foolish. Now that we monkeys are part of a greater being, the connection we share is through symbol. Human language, with all of its limitations, is sufficiently complex to support the information- transfer needs of an organ- ism never seen before on Earth. You don't need wires up your butt. Just look at the symbols on your screen. Click on that hypertext link. Send that email. Be a good little cell. And Heylighen's bizarre notion that this metabeing is an improvement; delusion! Individual humans are intriguing, sensual, spiritual creatures. The human macro- organism is more of a fungus. A big, appallingly stupid fungus. It only knows how to eat and grow, and when all of the food is gone, it will die. It has all the charm and wit of something growing in a dark corner of your basement. Adds a whole new dimension to the concept of human culture. But what of individuality? Humans are already too specialized to survive outside of their host organism. Pull a nerve cell from the brain and put it on the ground; within minutes it's a tiny gray blob of snot. Pull Bill Gates out of his office and put him in the veldt; in four days he's a bloated corpse in the sun. With the exception of a few madmen and anarchists, most of us can't even feed ourselves anymore; or communicate outside of our specialized fields. Put an anthropologist, a supply- side economist, and a mechanic in the same room. What the hell will they talk about? O. J. Simpson? David Williams' notion of the superorganism as a fungus is humorous, but it also conceals a serious point. Yes, the fictitious Dr. Viermenhouk is wrong; the superorganism is not here yet, at least not in full force. But when it is here, will it necessarily be a boon to humanity? Or will it, indeed, be a fungus, a parasite on man, sucking the life-blood from human-created technology for its own purposes? Heylighen himself appears to have taken the parody in good cheer But not all global brain advocates have been so charitable. Valentin Turchin, for one, was deeply annoyed. In a message posted to the Global Brain Study Group, he made the following remarks: Wired's interview with "Dr.Viermenhouk" which Francis calls a parody and fun, is rather a lampoon, in my view. ... The only "fun" in the interview is the vulgar language, which allows the author to convey his negative emotion. I think that he is genuinely outraged by the very idea of direct (not through language) brain links. And he is speaking, I believe, for the majority. The fact that we take this idea seriously, and explore its significance and various aspects, will upset most people. We must be prepared for this. I have already had some experiences of this kind.... Turchin believes that the global brain will have deep, positive, profound human meaning. That it will provide a way of bridging the gaps between human beings and fusing us into a collective awareness -- something that spiritual traditions have been working on for a long time. From this point of view, direct brain-computer links should not be viewed as tools for escape from human reality, but rather as gateways to deeper connection with other human beings. And, from this point of view, Williams' remarks are destructive, pointing the readers of Wired away from something genuinely valuable -- they are about as funny as someone going into schools and teaching children that vegetables are bad for your teeth. It is not only the fictitious Dr. Viermenhouk, however, who has a negative attitude toward the global brain. Related fears have been voiced by Peter Russell himself, who started a thread in the Global Brain Study Group on the striking topic: Superorganism: Sane or Insane. Russell says, I first explored the notion of superorganisms in my book "The Global Brain" - - written back in the late seventies before the Internet really existed. There I showed that, from the perspective of general living systems theory, human society already displays 18 of the 19 characteristics of living organsims (the missing one is reproduction - we haven't yet colonised another planet, although we have the potential to). ... The interesting question for me is not whether a global brain is developing. It clearly is. But will this growing global brain turn out to be sane or insane? If civilization continues with its current self- centred, materialistic worldview it will almost certainly bring its own destruction. I have long been fascinated by the striking parallels between human society and cancer. Cancers have lost their relationship to the whole, and function at the expense of the organism - which is insane, since a successful cancer destroys its own host. This is what we appear to be doing, and very rapidly. Our embryonic global brain would seem to have turned malignant before it is even fully born. I believe the reason for our collective malignancy comes back to individual consciousness. We are stuck in an out- dated mode of consciousness, one more appropriate to the survival needs of pre- industrial society. Thus the real challenge is for human consciousness to catch up with our technology. We need to evolve inwardly before any of our dreams of healthily-functioning global brains can manifest. This is more intelligently and respectfully stated than Williams' parody, but in the end it is somewhat similar. Instead of fungus, we have cancer -- a far better metaphor, because cancer cells come from within, whereas fungus comes from outside. Russell believes that we are on a path toward the emergence of the global brain, and that the Web is just one particular manifestation of this path. But, observing that we humans ourselves are riddled with neurosis and interpersonal conflict, he wonders whether the collective intelligence that we give rise to is going to be any better off. On the one hand, Russell believes that the global brain will go beyond individual human consciousness, with all its limitations. In response to a post of mine, questioning whether the Internet might eventually develop a sense of "self" similar to that of human beings, he responded as follows: The question is whether this superorganism will develop its own consciousness - and sense of self - as human beings have done. Back then [in The Global Brain] I argued that there were close parallels between the structure and development of the human brain, and the structure and development of the global telecommunication/information network, which suggested that when the global nervous system reached the same degree of complexity as the human nervous system, a new level of evolution might emerge. But it would be wrong to characterize this new level as consciousness. It would be as far beyond consciousness, as we know it, as our consciousness is beyond life, as a simple organism knows it. So I don't think discussions as to whether the global social superorganism will develop a self akin to ours are that relevant. Despite this conviction that the global brain will be far above and beyond human consciousness and human mental dynamics, however, he is worried that the flaws of individual human consciousness may somehow "poison" this greater emergent entity, and make it fatally flawed itself. Responses to Russell's pessimistic post were mixed. Gregory Stock, for instance, took issue with Russell's generally negative judgement ofthe psychology of the average modern human. A biologist, Stock views human selfishness and shortsightedness as biologically natural, and believes that modern society and psychology, for all their problems, are ultimately wonderful things. His book MetaMan treats contemporary technological society as a kind of superorganism, and views this superorganism in a very positive light. Turchin, on the other hand, agrees substantially with Russell's pessimistic view of human nature and its implications for the mental health of the superorganism. He believes, however, that it may be possible to cure human nature, at the same time as developing new technologies that extend human nature, overcoming its limitations: >We need to evolve inwardly before any of our dreams of healthily >functioning global >brains can manifest Yes. This is why the Principia Cybernetica project came into being. Our goal is to develop - - on the basis of the current state of affairs in science and technology - - a complete philosophy to serve as the verbal, conceptual part of a new consciousness. My optimistic scenario is that a major calamity will happen to humanity as a result of the militant individualism; terrible enough to make drastic changes necessary, but, hopefully, still mild enough not to result in a total destruction. Then what we are trying to do will have a chance to become prevalent. But possible solutions must be carefully prepared. More positive than Turchin or Russell, though less so than Stock, the physicist Gottfried Mayer-Kress expressed the view that, perhaps, the global brain itself might represent the solution to the problems of individual human consciousness, rather than merely transplanting these problems onto a different level: Peter Russell writes: >The interesting question for me is not whether a global brain is >developing. It >clearly is. But will this growing global brain turn out to be sane or >insane? If >civilization continues with its current self- centred, materialistic worldview it will >almost certainly bring its own destruction. ... I thought a coherent world civilization was what we expect to emerge from a GlobalBrain. In the context of complex adaptive systems we always would expect a "self- centred, materialistic worldview" of all subsystems (e.g. cells in the body, nation based civilizations etc.). Through the emergence of order parameters the subsystems begin to act in a coherent fashion and thereby increase the payoff for the subsystem. A self-organized structure (order- parameter etc) will be stabilized if in the competition between the interests of the sub- system and those of the super- system if the subsystem recognizes that it is better off if it supports the larger structure (e.g. pay taxes etc). A neccessary condition for that to happen is that the coupling (communication) between the subsystems is strong enough that local modes cannot grow at the expense of the order parameter. In a social context that could mean that violations of the global rules/laws could be detected and suppressed. For example, on a global scale it is still cheaper for most nations to choose to pollute the environment and waste energy. In a GlobalBrain world China would recognize that it is better not to introduce large scale individual transportation (cars) and Brazil would find it better for its own economy not to destroy the rainforest. Regarding the "cancer" metaphor, Meyer-Kress observes that even an "embryonic global brain" would be a coherent global structure and thereby directly contradict the basic definition of cancer. I would see the cancer analogy more the global spread of a drug culture. Essentially, Mayer-Kress's point is as follows: saying that humans are "individualistic" is the same as saying that humans represent the "top level" of a hierarchy of systems. An individualistic system is just one that has more freedom than the systems within it, or the systems that it is contained in. Cells within individual organisms are individualistic only to a limited extent; they are behaving within the constraints of the organism. Cells that make up single-celled organisms, on the other hand, are far more individualistic: they have more freedom than the systems of which they are parts. The global brain, according to Mayer-Kress, is almost synonymous with the decrease of human individualism. We will still have individual freedom, but more and more it will be in the context of the constraints imposed by a greater organism. And so, in this view, Russell's idea that the global brain might inherit the problems caused by human "self-centredness" is self-contradictory. The global brain, once it emerges, will be the top-level system, and will be individualistic -- but, as Russell himself notes, the nature of its individualism will be quite "inhuman" in nature. Mayer-Kress, in this post, did not address the question of whether the global brain would be sane or insane in itself; rather, he defused the question by breaking the chain of reasoning leading from human neurosis to global brain neurosis. In my own reply to Russell's message, on the other hand, an attempt was made to take the bull by the horns and answer the question: What would it even mean for a global Web brain to be insane? About sanity or insanity. Surely, these are sociocultural rather than psychological concepts. However, they can be projected into the individual mind due to the multiplicity of the self. An insane person in a society is someone who does not "fit in" to the societal mindset, because their self- model and their reality- model differ too far from the consensus. In the same vein, if one accepts the multiplicity of the individual self (as in Rowan's book SUBPERSONALITIES), one finds that in many "insane" people, the different parts of the personality do not "fit in" right with each other. So the jarring of world- models that characterizes the insane person in a culture is also present within the mind of the insane person. Because, of course, the self and mind are formed by mirroring the outside! What does this mean for the global brain? View the global brain as a distributed system with many "subpersonalities." Then the question is not whether it is sane with respect to some outside culture, but whether it is sane WITH RESPECT TO ITSELF (a trickier thing to judge, no doubt). Do the different components of the global brain network all deal with each other in a mutually understanding way, or are they "talking past" each other... A key point to remember here is that the global brain can be, to a large extent, real- time engineered by humans and AI agents. So that, if any kind of "insanity" is detected, attempts can be made to repair it on the fly. We are not yet able to do this sort of thing with human brains, except in the very crudest way (drugs, removing tumors, etc.). The belief which I expressed in this post is that the sanity of the global Web brain is an engineering problem. By designing Web software intelligently, we can encourage the various parts of the global Web brain to interact with each other in an harmonious way -- the hallmark of true sanity. The various neuroses of human mind and culture will be in there -- but they will be subordinate to an higher level of sanely and smoothly self-organizing structure. The biggest potential hang-up, in this view, is the possibility that forces in human society may intervene to prevent the software engineering of the Web mind from be done in an intelligent way. Perhaps it may come about that a maximally profitable Web mind and a maximally sane Web mind are two different things. In this case we will be caught in a complex feedback system. The saner the Web mind, the saner the global brain of humanity, and the less likely the forces of greed will be to take over the Web mind itself. One thing is noteworthy about this particular thread on the Global Brain Study Group: in spite of our disagreements on details, everyone in the Study Group seems to concur that a healthy, sane global brain would be a good thing. An alternative view was given by Paulo Garrido, in a message on the Principia Cybernetica mailing list, forwarded by Heylighen to the Global Brain Study Group. Garrido made the following remarks: IF human society is an organism (in the autopoietic sense) and has a (the super) brain THEN most probably we should KILL such a being. Because, societies, or better, the social interaction should be a TOOL to enlarge individual power and freedom or, if one prefers, individual survival and development. There is no point in maintaining a society if it is not that. If a society becomes an organism, chances are that individual power and freedom are diminished: to exist as such an organism must limit the degrees of freedom of its components. And in the case of human societies - the components are us! Only one type of autopoietic system should be allowed to emerge as a result of social interactions: the one that enlarges individual power and freedom - for all the individuals. Maybe such a system is possible if it is built in the emotional domain of love, corresponding to the goal of development. If it is not the case, it should be destroyed. Otherwise, we may see ourselves with no survival or comfort problems ... and with no reason to live. Garrido's remarks, though somewhat paranoid in tone, are well-thought-out and represent a natural human fear. Are we all going to be absorbed into some cosmic organism, to lose our human individuality, our freedom, our sense of individual feeling and accomplishment? After all, does computer technology not represent the ultimate in de-humanizing technology? The difficulty, of course, is that freedom is difficult to assess. Every major change in the social order brings new freedoms and eliminates old ones. And the relative "goodness" of one thing or another is not an objective judgement anyway -- standards of morality vary drastically from culture to culture. 4. The Internet as Collective Unconscious A different but related perspective may be found by introducing the ideas of the psychologist Carl Jung. The Web provides a whole new way of thinking about Jung's concept of the collective unconscious -- a realm of abstract mental forms, living outside space and time, accessible to all human beings, and guiding our thoughts and feelings. And it gives new, concrete meaning to his concept of archetypes -- particular mental forms living in the collective unconscious, with particular power to guide the formation of individual minds (Jung, 1955). The concept of the collective unconscious has never achieved a highly respected status within scientific psychology. Science, perhaps rightly, perhaps (as Card, 1996, argues) wrongly, has no place for an incorporeal realm of abstract forms, interacting with individual minds but standing beyond them. The global Web mind, however, will actually be an incorporeal -- or at least digital -- realm of abstract forms, interacting with individual minds but standing beyond them! Some of the "archetypal forms" that Jung believed we absorb from the collective unconscious are basic psychological structures: the Self, the Anima/Animus (the female and male within), the Shadow. Others are more culture in nature, e.g. the First Man. Some are visual: e.g. the right-going spiral, signifying being "sucked in"; the left-going spiral, signifying being "spewed out." But the most basic archetypes of all, in Jung's view, are the numbers. Small integers like 1, 2, and 3, Jung interpreted as the psychological manifestation of order. In fact, Jung suggested that all other archetypes could be built up out of the particular archetypal forms corresponding to small integers. This is a strikingly computer-esque idea: it is a "digital" view of the world, in the strictest sense. And so we see that Jung's thought, for all its obscurity and spirituality, was at bottom very mathematical: he viewed the abstract structures of the mind as emanating from various combinations of numbers. He viewed the collective unconscious as a digital system. The global Web mind will, I suggest, fulfill Jung's philosophy in a striking and unexpected way: it will be a digital collective unconscious for the human race. For after all, the memory of the global Web mind is the vast body of humanly-created Web pages, which is a fair representation of the overall field of human thought, knowledge and feeling. So, as the global Web mind surveys this information and recognizes subtle patterns in it, it will be determining the abstract structure of human knowledge -- i.e., determining the structure of the human cultural/psychological universe. This is true even for the global Web mind as an independent entity; and it will be far more true far more true if, as human beings integrate more and more with the Web, the global Web brain synergizes with humanity to form a global digital/societal mind. Specifically, the most abstract levels of the global Web mind will bear the closest resemblance to the collective unconscious as Jung conceived it. These levels will be a pool of subtle, broad-based patterns, abstracte from a huge variety of different human ideas, feelings, and experiences, as presented on the Web. And this body of abstract information will be active. Initially, it will be involved in creating new links on the Web, in creating new Web content, in regulating various real-world and virtual activities based on this content. And more and more, as it grows more pervasive, it will become involved in an interactive way with human thoughts and feelings themselves. In other words, precisely as Jung envisioned, the digital collective unconscious will be involved in forming the thoughts, feelings and activities of human beings' individual consciousnesses. Chapter 7 The Webmind Architecture 1. Webmind AI is defined in the Artificial Intelligence Dictionary as "a multi-disciplinary field encompassing computer science, neuroscience, philosophy, psychology, robotics, and linguistics; and devoted to the reproduction of the methods or results of human reasoning and brain activity." In spite of these lofty ambitions, however, the reality of AI has up to this point been severely disappointing. Outside the academic world, AI has adopted a role as one technology among many, suitable to be applied to tasks that are too non-routine for ordinary software, and are too repetitive or mathematically involved for humans to do efficiently, but do not require a general, intuitive understanding of the world. As such, various AI technologies have proved particularly useful in the finance industry, and in other specialized areas such as process control. Webmind, the Java-based AI system under development overcomes many of these historical limitations of AI technology. Whereas previous AI technologies focus on specific mental qualities such as knowledge representation, perception, reasoning, or learning, Webmind is based on a comprehensive mathematical model of the mind as a whole. It perceives information, analyzes information, remembers information and acts on information in an integrated way. It adapts to its own environment much as human beings adapt to the physical world. It evolves its own spontaneous structures, rather than relying too heavily on the intuitions of human programmers. Webmind does not have a general intuitive understanding of our world, but it does have a general intuitive understanding of its own world, the data stored on the Internet, and the interests and responses of human Internet users. This is the qualitative difference between Webmind and previous AI systems; and this is why Webmind has the potential to bring AI beyond the role of a specialized adjunct to unintelligent computer systems, and to make AI the heart of computing itself as we move on into the new era of super-powerful digital networks. At the present time, the domain in which Webmind has been most systematically and scientifically tested is financial analytics. The goal in these tests was simple, to be able to make better financial predictions and trading decisions than one could without the software. The finance industry has already developed sophisticated tools for projecting trends in markets, using quantitative data about what the markets have done in the past. The problem with these techniques is that they do not encompass the full realm of information available to the markets. The key advantage of Webmind for this purpose is that it can incorporate a logical analysis of textual material, material from financial news sources. This, of course, is very similar to what market analysts do. They study the statistical data, then interpret it in view of information which they obtain from their reading and conversations with industry leaders. However, there is a tremendous mass of written material available, and not enough time for any analyst to digest it all. Traders for large investment firms have difficulty even finding the time to read the reports generated by their own staff analysts. Webmind computerizes this process. Webmind deals with textual and numerical information on an equal footing, freely making generalizations spanning different types of data. Unlike any other AI system, it forms its own intuitions regarding concepts by dynamically "grounding" linguistic concepts in terms of its own nonlinguistic experience. It is the first AI system able to create its own concepts that apply across different contexts. Webmind runs efficiently on powerful stand-alone computers, but is most powerful when run over a network of computers, in which case its sophisticated server-server communication methods allow its internal network structure to harmonize with the connectivity structure of the computer network. Webmind does not aim to emulate human intelligence in an artificial way, but rather to be a natural intelligence for the digital world -- solving human problems with digital intuition. Initial tests of Webmind's ability in the area of financial decision support have proved dramatically successful. Further application areas under active development include information retrieval, data mining, and enterprise analysis. Though it is a new kind of software system, Webmind incorporates elements or functions of various standard AI technologies. It can serve as a search engine, as a Web visualization tool, or as a data mining engine -- and it can also serve functions not implied by any of these pre-existing categories. Most fundamentally, it is a system for the structuring and dynamic evolution of large bodies of data. It is an intelligent system for knowledge management and knowledge creation, with an almost boundless array of potential applications in business, science and personal computing. Webmind collects and analyzes information in much the same way as the human mind does, but with different strengths and weaknesses, befitting its physical basis in silicon rather than carbon, and its perceptual embedding in the world of data and text feeds rather than the world of sights, smells, sounds, tastes and touches. In the human mind, everything above the lowest levels of perception and action is dynamic and constantly evolving. The memory constantly studies itself, reorganizing to enhance and inhibit recall and performance. Current information discovery tools impose an artificial distinction between static data repositories and dynamic search and analysis tools. But what is needed, in order to really make use of the vast amount of information we are amassing, is a dynamic information system that mimics, on an abstract level, the structure of the human mind, with all its reflexive, self-analytical capabilities. What is needed is a way to make the data come alive and study itself, rather than lying there inert and being probed by various computational instruments, of various degrees of intelligence. This is what Webmind accomplishes. It allows collections of data to structure themselves and recognize patterns in themselves. Webmind transforms each informational element within a computer network into an independent agent which cooperates with other agents in organizing and reorganizing data for search and retrieval. It interacts with and builds on the intelligence of the user. Users' queries are treated as informational agents interacting via the collective Webmind agents system to locate information. Webmind agents take advantage of the sum collection of their organization's intelligence to discover context and concepts on behalf of users and their applications. In short, Webmind is the first unified computational mind, complete with integrated systems for perception, action, cognition, language, short and long term memory, etc., all embedded in a data-rich environment. 2. From Theory to Implementation via Five Questions According to the psynet model, as reviewed above, the achievement of intelligence does not depend on the implementation of particular mechanisms, but rather on the implementation of mechanisms that give rise to appropriate emergent structures. The unique achievement of the Webmind design is to cause these emergent structures to emerge from current computers and networks in a computationally efficient and humanly useful way. Underlying the psynet model is a vision of intelligence as "the capability to achieve complex goals in complex environments." Webmind's complex goals are firstly posed to it by human users and secondarily evolved by itself; its complex environment consists of the human beings, machines and networks with which it interacts. The Webmind system provides a general "agents operating system" for managing systems of software agents that share meaning amongst each other, transform each other, and interact in various ways; the agents may live in the RAM of a single machine, may be run on multiple processors, and may live across many machines connected by high-bandwidth cable. It provides mechanisms for agents to represent patterns they have recognized in other agents, and patterns they have recognized in the overall agents system of Webmind. And it also provides an appropriate assemblage of agents, specialized for such things as text processing numerical data processing text-numerical interrelation supervised and unsupervised concept formation reasoning social interaction language processing These agents have their own localized behaviors but achieve their true intelligence only in the context of the whole Webmind system. Several important questions arise in designing an AI implementation of the psynet model: How to represent the agents How to manage the dynamics of a collection of agents, on the hardware provided What to build in, and what to require the system to learn How to embed the system in a rich environment, including other systems of like kind What goals to give the system What programming language to use? How one answers these questions determines what kind of system one comes up with. One way to get across the essence of Webmind is to describe how these questions were answered in the design of Webmind, on a general level. Question 1: How to represent the agents? Answer: As nodes in an abstract network, and relational and mobile agents associated with nodes In Webmind agents are realized as data structures called "nodes," with particular structural and dynamical properties. A psynet node is defined as a container for one or more of the following: possibly some "raw" perceptual data a record of the meaning of the current node, in the context of the mind as a whole a transformation which acts on a node, and produces a node a transformation which acts on a node, and produces a number tables of links to nodes with which it shares meaning in certain ways mobile agents which seek other nodes to add to the link tables information on how much attention is paid to the node currently and over the recent past, in total and from the perspective of various other nodes information about how important the node is, and how fast its importance is expected to decay over time It should be clear that the node data structure, defined in this way, is adequate for expressing the "agent" concept of the psynet model of mind. Transformations taking agents into agents and agents into numbers are here, as required; and the dynamical law of mind, which says that attention follows meaning, is explicitly supported via each node carrying lists of other nodes that share its meaning, and agents searching for nodes that share its meaning. The view of the mind as a network of psynet nodes is a kind of "middle way" for AI -- or in other words, an "intermediate level" model of intelligence. It stands between, on the one hand, neural network and other physiologically inspired models of intelligence; and on the other hand, abstract logical and psychological models of intelligence that speak of mind in the abstract, completely apart from its physical implementation. Neural network and logical and psychological models all have their particular validity, but considered as a collective, they leave a crucial gap: how do the complex, self-organizing physical dynamics of neural networks and the like give rise to the abstractions of the mind, such as syntax, logic, inference and self? "Psynet" means "mind network," and so it is only appropriate that the network interpretation of the psynet model fills in this gap by positing a network that is not a network of neurons but a network of intermediate-scale, mental entities ... "agent" nodes. In a neurophysiological context, it may be useful to think of a psynet node as a neuronal group in the sense of Edelman's Neural Darwinism brain theory: each of Edelman's neuronal groups carries out a specific useful function, quite different from a single neuron, which in most cases has no particular function in itself. In some computer implementations of the psynet model, it may be useful to take this mapping fairly literally, and implement nodes in terms of networks of formal neurons -- as we shall see, something like this is done in Webmind, in certain cases, though not in general. But this is not a necessary approach: psynet nodes could be implemented as LISP program trees, as high-degree polynomials, as physical entities outside the realm of digital computing (Bose-Einstein condensates?), etc. The psynet model is abstract: it has to do with the structure and dynamics of the network of agents, not with the internal makeup of the agents themselves. Mind design, in this perspective, is largely about creating the correct agents out of the tools at hand, to ensure the emergence of the desired structures and dynamics from the system as a whole. In "agent system" terms, we may say that agents in Webmind fall into several classes. First there are nodes, static agents, which have a relatively persistent state. Nodes may contain information relating to data such as texts or database files or internal information such as categories or other patterns recognized among other nodes. Nodes are not truly static, they update themselves continually, but they represent the backbone of 's intelligent internal network. Most of the information contained in a node actually consists of a record of the node's relationship to other agents in the Psynet. There are many different types of node, pertaining to different types of information. In addition to nodes, there are relational agents or links, which establish and retain relationships among nodes. These relationships may fall into many different categories, and may be parameterized by qualities such as intensity, uncertainty, and so forth. Finally, relational agents are formed by the third kind of agent, mobile agents which move around within the internal relational geometry of an individual Psynet, potentially from one server to another, actively seeking new relationships to embody in relational agents. Mobile agents associated with nodes can also move from one to another, across the Net, but this requires a different brokering mechanism than the free flow of agents within the same server, or between different servers on the same Intranet. Question 2: How to manage the dynamics of a collection of agents, on the hardware provided Answer: On contemporary computers and networks, collections of nodes must be stored in large amounts of RAM; they must be dynamically groupable into sets to allow multiprocessing; and they must be able to migrate and send messages across network cable in order to allow a single mind to span multiple machines The dynamics of the network of nodes in Webmind's psynet is as follows. When a node receives attention, it spreads some of its attention to the meaning-sharing nodes that it knows about -- i.e. attention follows the links in its link table. It may also update its record of its own meaning. Finally, it may carry out its transformations to produce new nodes, or it may modify its transformations, with the goal of making them more prominent patterns in the collection of other nodes with which it shares meaning. Ideally, each node would run independently on its own processor. However, that is not feasible at the present time: massively parallel processors do exist, but are orders of magnitude less efficient than networked top-of-the-line serial computers. Fortunately we are presently blessed with computers that, though serial in nature, possess multiple rapid processors, large amounts of RAM (in the gigabyte and up range), and fast cables (e.g. Ethernet) networking them together. This combination allows us to run large magician systems on serial machines. The system architecture of Webmind is roughly as follows. A single mind network, may run across a number of machines, interconnected by high-bandwidth connections. Nodes may send messages across machines, and may share meaning with nodes on other machines; they may also move from one machine to another if this is judged dynamically efficient. Each machine contains a managerial process which determines when dispatching of nodes and messages between itself and other machines is appropriate. This managerial process must pay attention to the psynet dynamics on its own machine, for various reasons. Within a single machine, nodes are divided into groups called pods. Grouping into pods is useful for human saving/loading of groups of nodes -- a pod of nodes may serve a particular human purpose, e.g. it may contain nodes concerning personnel records, nodes concerning financial data, etc. It is also useful for multiprocessing: a pod must live on a single processor, but multiple pods living on multiple processors may be very elegantly and efficiently handled. When a node wants to transform or spread attention to another node, living in a different pod, it sends a request to its pod's managerial process, which then sends the request on to the managerial process of the pod at the receiving end. Question 3: What to build in, and what to require the system to learn? Answer: Build in "preprocessing" routines for transforming particular kinds of input data into patterns, and for producing particular kinds of output data from node states. Build in a vocabulary of useful magician types. Beyond this, build in other things as short-cuts, but nothing which the system is not capable of learning on its own in a non-absurd period of time During the early development of Webmind, this was the toughest question to answer. One could seek to implement the psynet model of mind by setting up a kind of "primordial soup" of transformations, mapping into numbers and mapping into other transformations. Assuming this soup was hooked up to rich data feeds, given extra resources in return for success at practical tasks, and given a reasonable capacity to mutate itself, it would eventually transform itself into something intelligent, arriving at the structures described above by self-organizing evolution. This methodology, however, is extremely inefficient, and is extremely unlikely to work given the limitations of current engineering technology. I tried this approach in 1994 and failed miserably; my comoc.com collaborator tried it in a different way in 1997, and also failed. This approach is conceptuall flawed in that mixes up what in biology are three different levels of intelligence: evolution, epigenesis, and learning. In order to arrive at a practical implementation of the psynet model, one must build in more of the desired structure -- just as a human being is born with some of the desired structure of mind already present in the structure of the brain. The question then becomes how much one can build in without sacrificing the dynamicity, creativity, and self-modification that are at the essence of intelligence. The correct answer, we have found, is to engineer: the processing of low-level perception and action the types of agents potentially in the system (which determine not which mind you have, but what kind of mind you have) the specific configuration of agents, but only as a guide for future learning and not as a fixed, inorganic base of knowledge The built-in preprocessing of low-level perception and action is necessary because of resource constraints. All that the human brain does by hard-wired visual circuitry -- line extraction, etc. -- could be done by more intelligent parts of the brain, but this would be a waste. The amount of pattern recognized in the world is maximized by allowing pre-processing to take care of the lowest level of pattern-recognition, and focusing the attention of intelligent on the output of the preprocessors. In the current Webmind system this lesson is reflected as follows: some basic text processing routines are built in, as are some numerical data processing routines that recognize dates in numerical data files, etc. In the current system, a carefully chosen variety of node types is provided also: nodes for text, nodes for numerical data, nodes for words/phrases, nodes for senses of words, nodes for categories, etc. Each node type has specific means for determining shared meanings and for transforming itself and other nodes. The strategy is to build in the node types, and then allow the nodes, of selected types, to self-organize into their own structure based on their inputs. The key principle to remember here is the gradation of specialization. A system consisting of only highly specialized node types will never have the flexibility to be intelligent in the real world; but a system consisting of only highly general node types (not evolved or engineered for any particular world) will have a hard time coming to grips with its environment. Specialized node types are a step up from perceptual/active preprocessing, but serve a similar role: to enable the system to focus most of its attention on problems which require general intelligence. In the current Webmind system, we have highly specialized node types for two things: language processing, and analysis of numerical data, particularly financial data (e.g. a node type specifically representing a trading system). Preprocessed data from these sensory modalities feeds into specialized nodes at the same time as it feeds into general-purpose nodes, and the interaction between the specialized and general-purpose nodes at this stage of processing is intense. The interplay of different node types is is in some sense the hardest part of computational mind engineering. The essence of mind, as depicted by the psynet model, is relatively simple: what distinguishes one type of mind from another is mainly the types of agents that live inside it. The interaction between specialized agents and general-purpose agents is something that, in humans, evolved over millions of years; it can be engineered, but only with a firm understanding of the general underlying dynamics of mind, and a healthy respect for the difficulty of the task. Question 4: How to embed the system in a rich environment, including other systems of like kind? Answer: The Internet! Humans receive a vast amount of perceptual data via their sense organs; and we interact with the same world producing this data via speaking, moving, stinking, etc. In short, we are embedded in our bodies. The body of Webmind consists of the computers on which it is implemented, which have their own sensory and active organs, for reading information from other computers and from human users. Pre-Internet, the data feeds available to computers were fairly sparse, and the ability for a computer program to interact with humans and other programs was strictly limited. At the present time, however, it is possible to hook up Webmind to a vast number of textual and numerical datafeeds, to supply with an unlimited amount of user interaction via corporate intranets and the Web, and to allow it to act by sending messages to individuals and other computers. For the first time, there is now a rich perceptual environment available to a computational intelligence. Furthermore, there is the opportunity to place a community of AI systems within this common environment, giving them access to common perceptual data and the ability to interact with one another in a variety of ways. This is a somewhat obvious point, but it is one that has not been exploited by the mainstream of AI researchers, who do not accept the essentiality of a rich environment for the emergence of intelligence. The social interaction of Webminds is explicitly mediated by data structures corresponding to the Self (the Webmind itself), other Webminds (needed for intelligent inter-Webmind querying), and human users (needed for intelligent customized response). Question 5: What goals to give the system? Answer: The goal of giving meaningful answers for questions asked by important entities (human and computer), at present and into the future In order for a mind network to evolve effectively, it must be given goals to carry out, and must be given feedback on the quality with which it has carried out these goals. Just as humans are built to want to eat, have sex, drink, exercise, etc., so Webmind is built to want to answer queries effectively. In order to assure this, each time it sends a query, it should receive an assessment of the perceived quality of its response. This may be explicit (e.g., the user may be asked), or it may be implicit (e.g., the client may calculate the number of times the human user needed to rephrase his question to get the answer desired). We all know how hard it is to guess what humans want -- what this means is that answering human questions is certainly a "complex goal" as required in our working definition of intelligence, which is "the ability to achieve complex goals in complex environments." Question 6: What programming language to use? Answer: Java The Java language was one of the inspirations for Webmind, so it might seem a 100% obvious choice. Even so, though, serious consideration was given to the possibility of programming Webmind in C++, a language which has the advantage, at this point, that C++ programs run faster than Java programs. But, in spite of its current speed advantage, C++ lost the context, for a number of technical reasons: Java shares with LISP and other artificial intelligence languages a feature called automatic garbage collection. This means that, when a certain piece of the computer's RAM is no longer being used by a Java program, the Java language will take the initiative to free up this piece of memory so it can be reused by another part of the program. In C/C++, this free-ing up of memory has to be done explicitly by the programmer. Java is Internet-friendly -- its sophisticated networking libraries allow flexible inter-machine communications to be programmed relatively easily Platform independence, for the client and the server! Programmed in Webmind can run on PC's, Macs or Unix boxes Multi-threading is a programming technique used to make programs that act like they're doing a lot of things at once, even though they're really running on a one-thing-at-a-time serial processor. Of all popular programming languages, Java provides the most effective and easy to use multi-threading. In particular, this means that, in Java, it's really easy to make a program that keeps doing its own internal processing in one "thread" of control while communicating with users or with other computers in other "threads." With the advent of ultra-efficient compilers such as IBM's Formula, the speed gap between C++ and Java is narrowing; our own tests show a ratio of 2.5:1. The Webmind server will also be able to exploit the added power of the Java chip, to be introduced in 1999. Finally, the much-publicized "Java browser wars" have no significant effect on Webmind, as the Webmind server is not browser-based, and the Webmind user interface doesn't need to run in the browser, or even need to be written in Java - in fact, our first user interface is actually written in C++, and talks to the Java portion of Webmind using (what else?) standard Internet communication protocols. 3. How Webmind Works The nitty-gritty details of the Webmind software architecture are proprietary and cannot at this stage be discussed in detail in a public document. However, some important aspects of the design may be discussed at a high level of granularity, and may help the reader to grasp the system's essential nature. A single Webmind system consists of a collection of nodes called a Psynet, which spans a collection of one or more Webmind servers, each one running on its own (possibly multiprocessor) machine. The intelligent core of a Webmind server is its collection of nodes, which is called a PsynetLobe. Each PsynetLobe, in turn, consists of multiple pods, each pod containing a number of nodes. At the present time, the boundaries of a single Psynet are the boundaries of the intranet or extranet: Ethernet connections are fast enough that Webmind servers thus connected can act as an emergent whole; whereas Internet connections are too slow. Thus, one has a model of the intranet as the individual; and the Internet as a population of Webminds interacting in a manner best described as "social", exchanging information and questions and answers but not participating in collective trains of thought on a real-time basis. This of course may change as bandwidth increases over the next decade; at some point the Internet will become as fast as today's Ethernet, and a single global Psynet will become achievable. Every Webmind server comes with a standard collection of pods: pods for standard data types such as text and numerical data, several pods for natural language understanding, a pod for query processing, and other pods devoted to such tasks as creative brainstorming, self-reflection, socialization, etc. Other pods will be application-specific: e.g., a Webmind server aimed at financial applications would contain a pod of historical financial data; an enterprise application would contain a pod of transient e-mail data; etc. Additional pods may be loaded and saved by the user. The dynamics of the Psynet is fairly simple, though the emergent structures that these dynamics give rise to may be quite complex. Each pod carries its own threads, and these threads cycle through all the agents in the pod, allowing them to carry out "elemental actions." Each node carries a "heat" indicating its importance at a particular time, and hot nodes are given a greater priority. The starting-point for Webmind's intelligence is a collection of basic node types used to represent data found on current computer networks. There are TextNodes for representing text documents, DataNodes for representing numerical data, and several types of CategoryNodes for representing concepts inferred from text and data. There are also TimeSets, representing collections of data that occur over time; and TimeNodes, representing collections of information considered roughly simultaneous. These node types are the basis for Webmind's intelligence; other processes work with these nodes to generate meaningful information of various forms. Information mined from data warehouses is read into the system and translated into a collection of TextNodes, DataNodes, CategoryNodes, TimeSets and TimeNodes; a flexible format which is amenable to sophisticated intelligent analysis by Webmind's various internal agents. What is universal to all nodes in Webmind is: attention (activation), current and cumulative links representing direct, local relationships to other nodes links containing information on other "distant" nodes that are bound up with the node in emergent dynamical reactions (this is the "halo" of the node) the process of spreading attention along links the process of building links to other nodes, by sending out agents called Wanderers That is, all Webmind nodes manifest Peirce's Law of Mind, which states that attention follows meaning, that each aspect of mind spreads some of its energy to each other aspect of mind which stands to it in a "peculiar relation of affectability." Wanderer agents, resident at each node, travel through the network of nodes in search of other nodes that stand toward their home node in a peculiar relation of affectibility. Specifically, they seek out symmetric (similarity), asymmetric (inheritance) and emergent relationships. In the case of emergent relationships, they may create new nodes embodying emergent patterns between their home node and the node they are currently visiting. Wanderers move through the net in a stochastic way, following links from one node to another and honing in on those regions of the net containing the most nodes relevant to their home node. Beyond this, specific capacities are carried by specific node types. The assemblage of built-in node types is important and is considered analogous to the genetic heritage of specialized human brain modules. Humans are born with some pre-existing ability to process language, to socialize, to perceive and to integrate perceptions cross-modally, to form abstract concepts according to certain archetypal templates, etc. Webmind similarly enters the world with these pre-existing abilities, albeit in somewhat different form. First of all, Webmind starts with two low-level "perceptual" modules: one containing nodes for text processing, another containing nodes for numerical data processing. Text and numbers are Webmind's perceptual world, and it deals with both in great profusion. Specialized preprocessing is necessary and appropriate here, just as our eyes and ears preprocess sensory data for our brains. In order to intelligently deal with text information, Webmind starts with a natural language module. The nodes contained herein carry out both semantic and syntactic analysis. The NL system takes in text and parses it, and outputs the parsed text into nodes and links, namely "inheritance links" representing relations of categorial inclusion (e.g. from "big cat" to "cat") and ternary links representing general triadic relationships (e.g. joining "big", "cat" and "big cat"; or "to" ,"run" and "to run"). The parser, whose unique and innovative design is described in a separate document, is specifically designed to parse sentences into collections of trilinks. Note that language processing is not rigidly separated from thought processing here. Webmind does not have a separate "natural language system" as such. Language processing is carried out by nodes representing words and phrases, nodes carrying short term memories of recently read material, nodes concerned with categorization, and mobile agents concerned with recognizing similarity and other relationships. To disentangle language from thought is to remove most of what is interesting and important about language. The first part of Webmind's language understanding is linguistic categorization, which is carried out by category nodes according to the normal dynamics of the Psynet. Webmind's self-organizing categorization is capable of determining parts of speech for words, and of determining semantic categories such as "house", "action", etc. as well. Once straightforward categorization has been used to create semantic and syntactic categories, attractor neural network methods are used to refine semantic links between words, based on contextual information. Words are then joined by relational agents if they are related closely in the bodies of information that has been exposed to. Parsing is carried out by a proprietary, original self-organizing parsing method based on L-system grammar. This system takes a sentence, uses the Psynet to determine syntactic and semantic categories for the words in the sentence, and then maps the sentence into a collection of nodes and relational agents, which are placed into the PsyContext and then into the Psynet. If the sentence represented a query, then the collection of nodes and agents corresponding to the sentence is activated rather than merely stored, and a query agent is created which collects the results of this activation after a period of time. The ingestion of linguistic as well as numerical data is mediated via the short term memory module. The most recent items read in through a given input stream are stored in short-term memory and the various intercombinations of these items are explicitly represented in a temporary way. This system is crucial, among other things, for disambiguation of linguistic terms. As important as language understanding is, however, it is not all-powerful. Relations learned through the natural language system are not intrinsically "understood" by the system -- they represent purely formal knowledge. Webmind's grounding module, on the other hand, contains nodes that allow the system to derive knowledge directly from its environment. This module contains GroundedRelationNodes, which evolve automata that recognize relations among data that Webmind has directly at its disposal (e.g., recognize which DataNodes correspond to volatile markets, which TextNodes correspond to novels, which ones to long novels, etc.). Mobile agents of various types create associative and hierarchical relationships, thus instantiating the elements of a cognitively powerful "dual network" structure. But what guarantees that these two structures, heterarchy and hierarchy, will work effectively together? There are several answers to this question within the Webmind architecture, but one of the keys is the explicit search for meaning. Each portion of the net, searching for its own meaning, re-expresses itself in terms of the hierarchical and heterarchical connections surrounding it, thus causing the hierarchical and heterarchical connections in its area to function effectively together. In order for an intelligence to understand the meaning of a word, concept or other entity, this entity must be "grounded" in the system's own experience. Consider, for example, the position of Webmind on encountering the word "two." In order to deal with "two" in an intelligent way, the system must somehow understand that "two" is not only a pattern in texts, it also refers to the two computer users who are currently logged onto it, the two kinds of data file that it reads in, etc. These are all patterns associated with "two" in various situations. Associating all these patterns with the "two" category node is what fully integrates the "two" node with the rest of the network, guaranteeing that the behavior of the "two" node is in harmony with its surroundings. Through processing of text alone, part of the fuzzy set that is the meaning of "two" can be acquired: that part which is purely linguistic, purely concerned with the appearance of "two" in linguistic combinations with other words. But the other part of the meaning of "two" can only be obtained by seeing "two" used, and using "two," in various situations, and observing the patterns in these situations that are correlated with correct use of "two." In general, the fuzzy set of patterns that is the meaning of a symbol X involves not only patterns emergent among X and other symbols, but also patterns emergent among X and entities involved in various situations. Recognition of patterns of this type is called symbol grounding. Symbol grounding is connected in a fascinating way with introspection. In Webmind, each agent has the ability to look inside itself and report various aspects of its current state. Symbol grounding is achieved by special mobile agents attached to individual nodes representing concepts (e.g. the node for two"). These agents are evolved by the genetic algorithm; they survey the introspections of other nodes and combine the results of these introspections to form "groundings" of the node to which they are attached. The actual mechanics of symbol grounding is carried out in within Webmind in a unique way: groundings for symbols are evolved by special nodes that carry out processes similar to the genetic algorithm. As noted earlier, the relation between the genetic algorithm and the brain is somewhat uncertain. Gerald Edelman's "Neural Darwinism" theory argues that the brain can be viewed as a genetic algorithm with mutation only; however, as I argued in my book The Evolving Mind, a case can also be made for crossover between "neuronal maps." At very least, we may view the use of the GA in Webmind as a more efficient way of accomplishing, using crossover and mutation, what the brain may accomplish with mutation only. Both language based understanding and grounded understanding are essential to mind. But with just grounding nodes and natural language nodes, the system would have a divided mind: formal (social) knowledge on the one hand and experiential (individual) knowledge on the other. What bridges the two is reason. The purpose of the Reason module is quite simple: to derive new links from existing links. This is useful not only because some links are derived from the outside, e.g. via the NL system; but also because some purely internal links in the system, at any given time, were derived from information that is currently forgotten. Webmind contains node-resident and mobile agents whose specific purpose is to carry out this dynamic of building new links from old. The specific behavior of these agents is in part borrowed from the NARS (Non-Axiomatic Reasoning System) AI system developed by Dr. W. In his previous research work, has shown mathematically that reasoning agents such as those used in Webmind are capable of carrying out deductive, inductive and abductive (hypothetical reasoning) in accordance with the requirements of mathematical logic. Unlike in typical AI reasoning systems, however, here reasoning is carried out via self-organizing processes that are integrated with the remainder of Webmind's intelligence. The importance of reasoning can be well understood in the context of symbol grounding: reasoning allows Webmind to extend conclusions from grounded domains to ungrounded domains. For example, if Webmind has learned that "big" means a certain thing in the context of financial data (where it can ground the symbol "big" in reference to its direct experience), then it can use reasoning to transfer the relations it has derived about "bigness" to domains where it has no direct experience, e.g. to understand a phrase like "a big upheaval in the Japanese government." Next, the categorization module allows the system to create new concepts from existing ones via statistical grouping. This leads to concepts of broader scope than are obtained through the grounding system. It does not act on perceptual data directly but rather on higher-level nodes in the system. For instance, applied to TextNodes representing Web pages, it might arrive at a Yahoo-like categorization of texts. There is a text-numerical interrelation module -- Webmind's analogue of the parts of the brain performing crossmodal correlation between the different senses, such as sight and hearing. For example, it evolves special nodes which are linked to both DataNodes and collections of TextNodes, and which are highly useful for such applications as using information in newspapers to predict financial markets. These cross-sensory links allow activation spreading to move between text and data in an intelligent way. There are also QueryNodes, for mediating interactions with human queriers. Webmind's query processing is integrated with the rest of its mental activity, just as for a human being, question-answering is not so different from purely internal thought processing. When a query (be it a series of key words, a paragraph of natural language, or a series of commands requesting particular data operations) is entered into the system, a node is created for it, the query node sends out mobile agents, and these agents create new relational agents joining it and other nodes. Activity related to the query node spreads through the Psynet, and after a certain period of time, the nodes with the highest activity relevant to this particular activation process are collected, and returned as the answers to the query. The distinction between activity due to a particular query and activity due to general Psynet thought processes or other queries is carried out via an innovative, proprietary technique of "parallel thought processes," which allows to do one thing the human mind cannot: carry out hundreds or thousands of simultaneous trains of thought, and keep them all straight! Every Webmind has a "self pod", containing a SelfNode, and various nodes linked to by the SelfNode. No Webmind should have multiple self pods, as this would lead to dysfunctions similar to multiple personality disorder (MPD). A SelfNode can have subcategories corresponding to "subselves," a feature which also has the potential to lead to MPD, but only if managed improperly. The purpose of the SelfNode is multiple, including at least the following: self-control: to enable the system to determine its own resource allocation, apart from the resource allocation directed by queries and by basic activation and wanderer spreading episodic memory: to enable the system to compare present situations to past situations, and draw inferences therefrom, and summon appropriate past nodes from disk as necessary self-description: to enable the system to describe itself to other Webminds or humans social understanding: to enable the system to conceptualize its relationships to other Webminds or humans and draw conclusions therefrom Webmind also contains a social module, with specialized nodes mediating its interaction with humans and with other Webminds. There is a "friend pod", containing FriendNodes corresponding to other Webminds. And of course a "user pod" containing UserNodes corresponding to users; and a pod of nodes corresponding to other agents acting over time, with whom the system does not have direct experience, but whom the system reads about. UserNodes representing human users are an essential part of the user-interaction system, allowing Webmind to disambiguate query terms based on its knowledge of the particular user who asked the query. FriendNodes representing other Webminds are essential in the task of figuring out, when the answer to a query is not known, which other Webmind to direct the query to. Finally, a given Webmind potentially contains, at any given time, a number of short-term memory nodes, containing information regarding what has been recently experienced by a certain node, and other things judged to be associated to these recent experiences. The short-term memory node's dynamic is called "lineal awareness," and consists of a loop that takes in new data, processes it in conjunction with the nodes in the short-term memory, and then places it in the short-term memory, removing some obsolete information. Specialized pods for dealing with self, social interaction and creativity are dealt with in a fairly similar way to the PsyContext; they contain agents which, rather than being relevant to recent experience, are relevant to particular areas of moderately-recent experience, e.g. experience with oneself, experience with other intelligent entities, and experience with difficult problems. In short, we have a system whose immediate perceptual reality is numerical data and linguistic communication, which perceives this reality using a freely combinatorial short-term memory, derives its own concepts based on numerical data using evolving automata, which learns formal ideas from parsing language, and then extends its ideas from its experiential domain to other domains using reasoning, where the focus of its reasoning at each time is guided by the spread of attention in the direction of meaning, and the meaning of each part of the system is determined by both global dynamic relations and local static relations. 4. Webmind as Distributed Intelligence An individual Webmind server running in a single Java process is, potentially, an autonomous Webmind. On a multiprocessor machine with a large amount of RAM (say, 4 Gig), one can achieve quite a powerful Webmind in this way. Given the current state of computer hardware, however, the most cost-effective way to achieve a very smart Webmind will be to network a number of Webmind servers together into a single multi-machine Psynet. To understand the implications of these hardware restrictions, which push toward a network implementation, one must consider them in a broader context. They overlap with fundamental system-theoretic requirements in an interesting way. Hardware considerations lead us to distinguish three levels of Webmind system: Single machine Network of machines connected by fast cable (intranet) Network of machines connected by slow connections (internet) These levels may shift over time, as the Internet becomes faster and faster. On the other hand, analogy with biological intelligence leads us to distinguish two levels of systematic intelligence: individual intelligence society of individual intelligences Intra-mental interactions may encompass social interactions, but not vice-versa: parts of the same mind have access to each other in ways that separate minds do not. We use the term an "individual " or simply "a " to refer to an individual intelligence; and the term "global " or " society" to refer to a collection of intelligences. At the present time, the most natural mapping from social/individual concepts to computer hardware is machine = part of individual intranet = individual internet = society For now, therefore, when talking about a single "Webmind" we generally mean an intranet, a small network of machines running with a single self. However, this mapping may not remain ideal forever: eventually it will be possible to have coherent Webmind individuals running across thousands or millions of machines, around the world. Social interactions between Webminds are as follows: One Webmind can query another Webmind, just as if it were a client. One Webmind can send a agent to visit another Webmind, to gather information (create relational agents involving agents on the other Webmind). Determining which Webmind is best suited to receive a query or a visiting node to is done using a fairly sophisticated "socialization" system, involving FriendNodes and the like. Intra-mental interactions encompass social interactions but add an additional components. For example, nodes within a single Webmind (currently, a single intranet) will reach out to one another when activated and reinforce the relational agents intertwining them; nodes separated by a slower Internet connection will not. To ensure clarity for the reader with a computer science rather than philosophical perspective, it is perhaps worthwhile to cast these ideas in the language of distributed computing. Gul Agha has isolated the following five design decisions as being essential to the characterization of any system carrying out concurrent computation: the nature of the computing elements global synchrony versus asynchronous elements the mode of interaction between computing elements the degree of fairness reconfigurability and extensibility The "nature of computing elements" is that they are nodes, which are a special kind of actor, in Agha's terminology. Processing is asynchronous, not globally synchronous, as is necessary given the desired Internet/intranet functionality of the system. The mode of interaction between the nodes in Webmind is determined on the mechanical level by the Pods system, that handles node addressing in a URL-like manner and dispatches communication from nodes to their containing Pods, on to other Pods and the nodes contained therein. On a functional level the interactions between nodes are diverse and node-type-dependent, but centrally include neural-net-like activation spreading, genetic-algorithm-like node creation and deletion, and internal reorganization of a node's perceived relationship to other nodes, enabling the node to better represent a category or other relation amongst the nodes around it. By "fairness" Agha means such things as guaranteed delivery of messages: in this sense Webmind does not place a premium on fairness, except in a probabilistic sense. At any one moment one node may be treated better than another by some fluke of the system; but, overall, the system acts homeostatically to ensure approximate fairness, in the sense that nodes that the system assigns a greater importance will get more CPU time. The system is comfortable with lossy communications in some contexts (e.g. spreading of activations from machine to machine) and not in others (e.g. the return of query answers to human users; the transport of nodes among machines). Finally, reconfigurability and extensibility are assured by the modular system of node definition -- different functionalities are induced in the overall system by different node types. This is not a system with a population of agents following a fixed structure and dynamics, designed to be ideal and perfect once and for all. Rather, there are core node types which are seen as essential to realizing the structures and dynamics of the psynet model of mind, but these may be altered based on experience, and may be augmented by a limitless variety of specialized agents to deal with particular situations. In this sense Webmind is almost an "agents operating system" -- any type of agent, within quite broad constraints, could be integrated into the Psynet. Half of the task of engineering Webmind is in setting up the "operating system" mediating node interaction, and the other half is in determining the correct node types to give rise to the emergent structures of mind. 6. The 37 Observations Revisited In this section, I will run through the 37-Observation version of the psynet model introduced earlier, and briefly indicate how each of the points is addressed within the Webmind architecture and its current implementation. Observation 1. Mind is a set of patterns, where a pattern is defined as "a representation as something simpler". Each Webmind node contains tables of links, which represent patterns recognized between that node and other nodes. A link representing a similarity is representing an approximate repeated pattern; a link representing an asymmetric (inheritance) relation is stating that one thing can be used in the place of another, i.e. as a pattern in another. Etc. Observation 2: To be able to have patterns, one must have entities that can transform entities into numbers (or some other ordered domain, to give simplicity judgements), and one must have entities that transform entities into other entities (so as to enable representation) Wanderers, agents which create links, are mapping entities into numbers; they are the valuers in Webmind. Transformation is carried out on several levels, but most centrally by Wanderers which emanate from one node but build links at other nodes. Observation 3: Mind is intrinsically dynamical. The transformation C(B)=A, in the definition of pattern, implies a "change": C changes B into A Webmind is obviously a dynamical system; its valuers, Wanderers, are dynamical agents. Observation 4: Magicians can be combined in a way other than transformation; they may be combined in space. The result of joining A and B in space may be denoted A#B. Special links exist for representing combination; for example the ternary link that joins "big", "cat" and "big cat" to represent the modifier relationship; or the binary "part-of" link that joins the node representing a phrase extracted from a text to the node representing the text itself. Observation 5: Spatial combination gives rise to the possibility of emergent pattern: patterns that are there in A#B but not in A or B individually. Wanderers may explicitly search for emergent pattern, and create emergence nodes. Observation 6: The meaning of an entity may be defined as the set of all patterns associated with that entity -- where a pattern P may be associated with an entity A in several ways: P may be a pattern in A, P may be an emergent pattern in the combination A # B. or P may close to A in spacetime (P and A may have occurred in about the same place at about the same time) The meaning of a node is effectively taken as its link tables. Link types exist to denote spatial and temporal relationships. Observation 7: Pattern and meaning are subjective, in that they depend on who is measuring simplicity, and who is defining the set of permissible transformations Wanderers take the subjective view of the node who sends them out Observation 8: Meaning is dynamic as well as static. The patterns in an entity include patterns in how that entity acts, and interacts, over time. The halo of a node encapsulates the dynamic component of meaning Observation 9: In any given mind, at any given time some magicians are given more attention than others. Attention means that a magician is allowed to carry out transformations on other magicians. In Webmind, the nodes with the highest heat, the greatest importance to the system, are given more CPU time Observation 10: A mind always possesses some degree of randomness (i.e., dynamics which has no patterns that it can detect). Randomness occurs wherever attention occurs. Wanderers use randomness in their motions. The dynamics of activation spreading will often be chaotic and will hence propagate this randomness widely. Observation 11: The basic law of mind dynamics is: A magician passes some of its attention to other magicians with whom it shares meaning This is activation spreading. The thresholding adopted from neural net models is simply a way of making attention spreading efficient. Observation 12: Sharing of meaning may take many forms. Primally, meaning sharing may be of three different kinds: symmetric asymmetric emergent. Symmetric meaning sharing is encapsulated in "similarity links", asymmetric meaning sharing in "inheritance links" (member-category), emergent meaning sharing in multiple-target inheritance links. Observation 13: Intelligence may be defined as the ability to achieve complex goals in complex environments Webmind's goal of answering human questions meaningfully is complex, and the Net is plainly a complex environment Observation 14: The complexity of an entity may be defined as the total amount of pattern in that entity, or equivalently, the amount of meaning in the entity. Thus, intelligence is the ability to achieve meaningful goals in meaningful environments. Webmind has the ability to determine its own meanings, to understand human meanings, and to correlate the two. Observation 15: In order to achieve complex goals in complex environments -- i.e., to be intelligent -- a complex mind is required Webmind's mind is certainly complex! Observation 16: A complex mind, implemented in a physical medium, will require continual modification of its internal parameters to assure steady intelligent functioning. This modification must be done intelligently in some cases, and so there must exist certain magicians with a special feedback relation to the physical medium determining the parameters of mental action. Webmind has a homeostatic system built in, to regulate its parameters for optimum performance. Observation 17: Pattern recognition in a complex environment is best done by a combination of perception, cognition (internal transformation of perceptions), and action Webmind's perception is reading text and numbers, its cognition is most of its activity, and its action is providing answers, asking questions, and possibly carrying out electronic commercial transactions. Observation 18: A substantial amount of a mind's attention must often be allocated to recognizing pattern in its environment, i.e. to this threefold "perceptual/cognitive/active loop." This means that pods containing lower-level node types must be allocated significant CPU Observation 19: A "magician system" is a collection of magicians that is self-producing, in the sense that any magician in the system can be produced by the combination of some other magicians in the system. Minds are magician systems, at least to within a high degree of approximation. This is an experimental hypothesis that can be carried out on Webmind. If we remove a node corresponding to an abstract category -- a CategoryNode, a GroundedRelationNode, etc. -- will the system regenerate something similar on its own? The working hypothesis is YES. Observation 20: Highly intelligent minds are characterized by hierarchical structures. The definition of hierarchy in this context is: A relates to {B1, B2,...,Bk} hierarchically if each of the B[i] asymmetrically shares much meaning with A. The process of creating hierarchical structure is called "clustering" or "categorization." CategoryNodes provide hierarchical structure, as do inheritance links inferred from natural language. Observation 21: Highly intelligent minds are characterized by heterarchical structures, large connected networks of symmetrically meaning sharing entities Similarity links provide heterarchy. Observation 22: In a highly intelligent system, the hierarchical and heterarchical structures of mind are aligned, so that in many cases, when A relates to {B[1],...,B[k]} hierarchically, each B[i] relates to a number of other B[i] symmetrically This alignment is automatic in Webmind because categorial links are formed by inference from similarity links; and similarity links are then formed amongst category nodes. Observation 23: Minds are finite, so that if they live long enough, they must forget. They will run into situations where they lose the B involved in a representation C(A)=B, but retain the pattern A that was recognized. Webmind contains explicit node and link forgetting routines. Observation 24: A mind's intelligence will be enhanced if it forgets strategically, i.e., forgets those items which are the least intense patterns Each node and link has an "importance" value determining its forgettability. Observation 25: A system which is creating new magicians, and then forgetting magicians based on relative uselessness, is evolving by natural selection. This evolution is the creative force opposing the conservative force of self-production. This occurs implicitly in Webmind, and explicitly as well via node types that evolve other node types using the genetic algorithm (this occurs in the text-numerical cross-correlation module, for the evolution of relations between text and numerical data; and in the grounding module, for the evolution of automata representing patterns in experiential data). Observation 26: A pattern A is "grounded" to the extent that the mind contains entities in which A is in fact a pattern GroundedRelationNodes represent grounded patterns; many SenseNodes and CategoryNodes derived therefrom represent ungrounded patterns, to do with things like cats and showers that the system has no experience with. Observation 27: "Reason" is a system of transformations specialized for producing incompletely grounded patterns from incompletely grounded patterns. ReasonableNode (which CategoryNode extends) contains specific behaviors which look at the links coming out of that node and try to infer new links therefrom. This is Webmind's "reasoning system." Observation 28: The specialization of a transformation may be defined as the variety of possible entities that it can act on. The magicians in a mind will have a spectrum of degrees of specialization, frequently with more specialized magicians residing lower in the hierarchy. This is true within Webmind, there are highly specialized and highly general node types. Observation 29: A mind must contain magicians specialized for mining emergent information recently obtained via perception. This is "short term memory." It must be strictly bounded in size to avoid combinatorial explosion; the number of combinations (possible grounds for emergence) of N items being exponential in N. ShortTermMemoryNode accomplishes this, which is necessary among other reasons for semantic disambiguation of linguistic input. Observation 30: The short-term memory may be used for tasks other than perceptual processing, wherever concentrated attention on all possible views of a small number of things is required ReasonableNode uses short-term-memory to determine where to direct the course of reasoning next. A ReasonableNode maintains a "trail" of the things it has most recently reasoned about, which maps naturally into the contents of short-term memory. We call this a "train of thought." Observation 31: Syntax is a collection of categories, and "syntactic transformations" mapping sequences of categories into categories. Parsing is the repeated application of syntactic transformations; language production is the reverse process, in which categories are progressively expanded into sequences of categories. The Webmind NL system represents this specifically in terms of transformations taking pairs of category labels into individual category labels (and vice versa). Observation 32: Semantics is a collection of categories, and "semantic transformations" mapping: categories into categories, category elements into category elements, transformations into categories, and semantic transformations into semantic transformations. This is provided automatically by entry of words into Webmind as SenseNodes, and action of the CategoryNode categorization system on SenseNodes. Observation 33: A key psychological role of syntax is to transfer semantic knowledge from strongly grounded patterns to weakly grounded or entirely ungrounded patterns. The reasoning system automatically uses links from words corresponding to grounded concepts up to syntactic categories, and from syntactic categories down to words corresponding to ungrounded concepts, in order to build links between grounded and ungrounded concepts. Observation 34: Language is useful for producing magicians specialized for social interaction. Syntax in particular is crucial for social interaction, because another intelligence's observations are in general ungrounded in one's own experience. Only through the NL system can Webmind get a grip on human concepts that are outside its experiential domain. Observation 35: The most intelligent minds have selves, where a "self" S is a pattern which a mind recognizes in the world, with the property that, according to the mind's reasoning, the substitution of S for the mind itself would produce few changes. I.e., the self asymmetrically shares meaning with the entire mind. Webmind contains a Self node, which contains its image of itself in its own and others' eyes. Observation 36: The "self" of a mind is a poorly grounded pattern in the mind's own past. In order to have a nontrivial self, a mind must possess, not only the capacity for reasoning, but a sophisticated reasoning-based tool (such as syntax) for transferring knowledge from strongly grounded to poorly grounded domains. Reasoning automatically operates on the Self node as it does on all other nodes. Observation 37: The existence of a society of similar minds makes the learning of self vastly easier Webminds can communicate with one another, using the query language and more intimately using direct exchanges of nodes. 7. Webmind for Business Intelligence Having reviewed the general nature of the Webmind architecture, I will now outline its application to various particular problem areas, at a very coarse level of detail. In this section we will consider several broad application domains: text information retrieval, data mining and enterprise analysis, and financial decision support. Textual Information Retrieval An application area for whichWebmind has been domain-engineered to some extent is information retrieval from document databases. It is important in this context to distinguish intelligent information retrieval from "search engine" software. The notion of searching for documents based on topic descriptions is highly limiting. What is really interesting is having human minds relate with textual and other digital information in creative and productive ways. A final implementation of Webmind for information retrieval will incorporate search engine functionality, but will also involve visual exploration of information, and interactive processing whereby the software asks the user questions to clarify their intentions. Here we will not go into these user interface matters in detail, but will rather give a cursory description of the internals of Webmind as applied to text information retrieval. This will serve to indicate how drastically different it is from its current competitors, and to illustrate the algorithmic roots of the different behavior that it displays. Each document being indexed is described by a TextNode, which contains links to various nodes representing the meaningful information in the text. There are also nodes corresponding to categories among documents. At the most abstract level, these categories might correspond to general topics such as "Business" or "Computing." At a level closer to the bottom, these might correspond to very particular groupings of pages, reflecting topics such as "artificial intelligence and finance." The process of category formation follows immediately from Webmind's self-organizing dynamics. Each node on every level, when it is sufficiently stimulated, sends out a flock of intelligent agents, which wander the network of nodes in search of other nodes displaying similar or otherwise appropriately related patterns. When a query (be it a series of key words, a simple question, or a paragraph of natural language) is entered into the system, a node called a QueryNode is created for it. Then, the QueryNode is entered into the network much as if it were a new document to be read, classified and understood. First, using higher-level nodes to guide it, it finds a natural position in the network; then it sends out intelligent agents and these agents create new links between it and other nodes, other documents. Then activation spreads through the network, somewhat in the manner of a neural net, and after a certain period of time, the nodes with the highest activation are detected, and returned as the answers to the query. What is fundamentally different about Webmind, as opposed to search engines, is that its document database is not a static entity, which sits there passively waiting for queries to set it into motion. Instead, it is constantly refining its structure -- and its structure is, like the structure of the human mind/brain, inseparable from its complex dynamics. The categories that it forms are not defined by mere statistical clustering, but by the outcome of self-organizing, reflexive dynamics. When a query is entered into Webmind, it sets off a chain of reactions that ultimately lead to it finding its natural places in the network, i.e., finding those groups of documents that pertain to the same topics as it does, as judged by the network's own complex dynamics. In an ordinary search engine, a collection of pages is judged to have the "same topics" as each other if they have the same words in them. In a statistical search engine like Excite or SemioText, a collection of pages is judged to have a common topic if they have a mutually similar distribution of words and phrases. In Webmind, on the other hand, common topicality is not defined entirely in terms of structure but also in terms of process. A group of pages has a common topic if they have been judged as related by the self-organizing dynamics of the network. The distribution of words and phrases does play a role in this dynamics, as does the distribution of human-created links between phrases. But these factors only give the initial conditions for the dynamics. In the end, the distribution of links in Webmind is determined as much by the distribution of links in Webmind as by any specific identifiable factor. A query entered into Webmind is not only a request for information, but a perturbation of the complex dynamics of Webmind's constant study of itself. It was noted above that Webmind can be used to form a more complete and complex version of the Yahoo category system. However, there are significant differences, which are conceptually relevant. The Yahoo category structure is very deep, for one thing; Webmind's structures tend to be somewhat flatter. Also, the Yahoo structure is strictly hierarchical, whereas, Webmind , like the human mind, is capable of operating with a patchwork of overlapping, complementary categorization schemes. In other words, the hierarchy of nodes can be dissociated, branching off in a number of different directions as it rises. Without Webmind's integrative dynamics, this could lead to confusion, but the dynamics are capable of integrating diverse points of view into a single coherent system -- in fact, this is what they do best. The different views within Webmind will not contradict but rather enhance each other. Ultimately, in a situation of extremely favorable computational resources, one can envision each user creating their own view of the Web, and allowing Webmind to crystallize a universal categorization system reflecting their individual perspective. The synthesis of all these individual views, according to Webmind dynamics, would be a kind of collective mentality -- not an average, but a complex, polyphonic blending of the different subjective world-views of the different members of the human race. Webmind can use the same text-based interface as existing search engines. However, it also lends itself extremely naturally to visual, dynamic-image-directed search. Instead of returning lists of pages, a Webmind search engine can just as naturally return visual images of those portions of the Webmind network containing relevant pages. Different levels of magnification reveal lower and lower levels of the network, different colors represent complementary categorization schemes, etc. There are endless possibilities. Next, regarding Webmind and the network on which it runs, it should be noted that, just as the general Webmind architecture is perfectly designed for network implementation, so is the Webmind search engine in particular. Today, it is assumed that a search engine database is a single, monolithic mirror of the Web. Already, however, some firms are breaking with this model; for example, FunnelWeb has constructed a network of search engines, one for each continent. When the Australian FunnelWeb engine wants information about the European FunnelWeb engine, it calls it up and asks it. This kind of networked search, on the level of passing queries from one engine to another, is relatively primitive and unexciting. However, Webmind opens up a whole new spectrum of possibilities. Imagine, as the simplest case, that one set up two separate Webmind databases corresponding to .com and .edu domain names. Each one would have its own integrity, its own hierarchical/associative structure. But there could be links from one database to the other. And if agents from one database were allowed to wander through the other, then the two databases would be linked together on the level of dynamic structure: they would be two entrained, complex dynamical systems. The closeness of the link between the two systems would be determined by the propensity of the agents to leave their home database. Imagine, next, that instead of two separate Webmind databases, one had, say, ten million. Imagine, in other words, that every website was its own Webmind database, and that, in order to do a search, one simply sent out intelligent agents through the Web. This is the opposite extreme from the one-search-engine/one-database model, and it is not yet feasible given current bandwidth limitations. But a search engine distributed across hundreds of sites is feasible today, and given the projected rapid growth of network bandwidth, the millions-of-sites scenario may well be feasible in ten years time. Once it is feasible, one will have something remarkable indeed: one will have the possibility for a World Wide Web which is, structurally and dynamically, a mirror of the human mind. Instead of a World Wide Web, we will genuinely have a World Wide Brain, a global network intelligence. Data Mining The term "data mining" refers to the process of searching through a large volume of data to discover interesting and useful information. Text information retrieval, as discussed above, may be considered a special case of data mining, in which the data involved is purely textual. Much of human intelligence is "data mining" -- we are concerned with searching through a vast amount of perceptual information, regarding the outside world and our own brains as well, and finding the interesting and useful information obscured wherein. In practice, though, the term "data mining" is generally used to refer to the elicitation of patterns from numerical data such as financial time series, or data stored in databases such as customer information; and it is these applications that will be the focus in the following comments. Most applications labeled "data mining" involve prediction of future trends, or categorization of data collected over an interval of time. Data mining answers business questions that traditionally were too time-consuming to resolve, finding predictive or categorical information that experts may miss, either because it is too subtle and complicated, or because it lies outside their psychological expectations. It provides answers to questions such as, "Which clients are most likely to respond to my next promotional mailing, and why?" and "Which direction is the price of the Deutschmark likely to move over the next twenty-four hours?" and "What kind of person is hitting my Website?" What differentiates Webmind from other data mining packages is, first of all, its ability to ferret out subtle patterns in data. It is able to pick up regularities that other, less sophisticated algorithms miss. Just as neural networks and genetic algorithms go beyond linear statistics, Webmind goes beyond neural networks and genetic algorithms. Furthermore, Webmind's sophisticated Internet implementation allows it to deal with large databases in a highly efficient way. Unlike other data analysis algorithms, Webmind is intrinsically designed to deal with tremendously large amounts of information, stored across distributed networks. As demonstrated in the financial experiments reported above, it is also able to analyze textual and numerical information in a unified way -- a fact of the utmost importance given the vast amounts of conceptually interrelated textual and numerical data on the contemporary business computer network. On a more conceptual level, what differentiates Webmind is the fact that it approaches a body of data in roughly the same way that the human mind approaches the outside world. It takes the body of data into itself, just as perception brings the world into the mind, and it "brings the data to life," enabling the data to transform itself and study itself. The core, low-level pattern recognition routines used by Webmind are not necessarily different from those used by other data mining systems. The difference lies in the way the low-level recognized patterns are combined to form an holistic understanding of the entire body of data. This holistic understanding is embodied in Webmind's link structure, after a period of evolution, and it results in Webmind being able to recognize extremely subtle and sophisticated patterns in its input data, in an efficient way. In practical terms, the application of Webmind to data mining is fairly straightforward. Data is read into Webmind and forms itself into a population of nodes; at which point the Webmind dynamics goes to work, bringing out the structure implicit in the data. Questions posed to the system are then resolved in terms of the information that Webmind has already discovered, on its own. If one's information is stored on an intranet, then absolutely no pre-processing is required, as Webmind is optimized to process distributed intranet data. If one's information is stored in a conventional database, or some other format, this is not a serious problem either, as the addition of simple additional software modules allows Webmind's to speak SQL and other relevant database languages. Webmind carries out the two basic tasks of data mining -- prediction and categorization -- in a flexible and unified way. Categorization is taken care of by link update methods, as described above. Categories among, say, customers of a business, or stocks in the market, are found in the same way that the Webmind search engine isolates categories among Web pages. As for prediction, this is essentially a matter of recognizing patterns in one data set (representing, e.g., the past history of a financial market), and then extrapolating these patterns to another, perhaps unknown data set (e.g. the future of a financial market). The recognition of patterns is the crucial part. Neural networks and genetic algorithms pick up patterns that statistics and decision trees miss; and Webmind, with its self-organizing hierarchical/associative structure and its ability to read text and internally relate text with data, picks up patterns that neural networks and genetic algorithms miss. As a single example of the application of Webmind to commercial data analysis, outside the finance industry, consider the problem of "targeted marketing." A business maintains a list of its customers over a period of time, which contains a fair amount of information about each customer. By studying this list, one can determine the qualities that typify a "good customer" for this business. The business then obtains a large database of names, e.g. census data, and wishes to determine which people from among this large database are likely to be good customers. The specifics of this problem will vary from case to case, depending on the nature of the database. But the basic principles underlying the application of Webmind to this type of problem are quite general and flexible. Most simply, one may begin by building a Webmind database consisting of the elements of the large database. In the case of census data, each Webmind node might correspond to a single block, or even a single household. One then sets Webmind to work, building informative links between the nodes. Different links specify different types of relationship. For instance, there will be "geographical links," which link two nodes and are weighted by the distance between the blocks represented by the nodes (two nodes will be linked by a geographical link only if they are relatively close together). There may be links tied to particular parameters, e.g. "age structure" links or "income distribution" links. The different types of links are not chosen haphazardly, but are chosen based on the outcome of pattern recognition operations within the nodes. Each type of link is constructed by swarms of agents equipped with an appropriate criterion function, an appropriate measure of similarity between nodes. Higher level nodes are then formed, representing clusters amongst nodes -- natural groupings of "mutually similar" nodes. Finally, the elements of the smaller database are then entered into this network like queries into a text search oriented network. They find their most natural place in the network, extend links, and are activated. The most active nodes are then the "similar" nodes within the larger database. This differs from typical statistical or AI approaches to market analysis in many essential respects. In terms of performance, the biggest difference is Webmind's ability to carry out highly targeted market analysis. Existing algorithms are effective at weeding out terrible customers from the large database, but only mediocre as isolating the best customers. Webmind, on the other hand, has a deeper understanding of the structure of the large database, because it begins by allowing the structure of the large database to discover itself. This deeper understanding allows it to target precisely those customers who are most similar to the business's best customers -- just as, in the Webmind search engine, a query finds those Web pages that are the most similar to it. Similar approaches have been worked out for diverse other data mining applications -- no business intelligence problem lies outside its domain. The architecture encompasses the most effective aspects of previous approaches -- such as statistical clustering, neural networks, and genetic algorithms -- into an overarching framework. It integrates the two main objectives of data mining, categorization (carried out by higher-level nodes) and prediction (carried out by pattern-recognition methods within nodes), in a seamless way. As with Web search, it is not a panacea: there is still a certain amount of work required to tailor the prediction and link update methods to fit the nature of particular application domains. And searches for extremely subtle patterns in huge data warehouses can still take time, even with Webmind's sophisticated internetworking capabilities. But Webmind represents a significant step beyond what is out there; and it has the flexibility and reflexive adaptability to take advantage of improvements in Internet technology and data mining algorithms, without straying from its basic framework, which is, after all, nothing else but the structure of mind. Knowledge Management and Knowledge Creation "Information retrieval" and "data mining" are concepts that were created to describe the behavior of software much more limited in its behavioral repertoire than Webmind. Webmind, with its ability to understand context and to ground concepts in its own experience, also has the ability to do much more than any mere information-extraction tool. It is able to serve as a true knowledge management and knowledge creation system, integrating information from the document archives and databases of interest to a business, and allowing exploration of this information in all its facets, each piece considered in the context of the whole. If Webmind is installed on a company's intranet, then real-time queries regarding relationships between textual, numerical and other data to do with the enterprise may be posed by any employee with computer access at any time. The result is that Webmind's intelligence is integrated with the social intelligence of the organization, and the individual intelligence of the employees. Each time an employee accesses a document, he may ask Webmind for related documents, and Webmind will carry out this task with an understanding of the role of that employee in the company, that employee's particular needs and interests, etc. It will be able to make its own creative suggestions, based on its autonomous thought processes. Furthermore, the social dynamics of the different Webmind servers residing in different parts of the company's intranet (governed by Webmind's highly innovative, proprietary server-server communication methods) will grow to reflect the social dynamics of the individuals using those parts of the intranet. Each Webmind server will respond most effectively and rapidly to queries involving information which it stores locally; but the information that a certain server stores locally may change over time, depending on user needs and internal Psynet dynamics. Thus, while providing easy access by all users to all information at all times, Webmind will nevertheless nudge the information at the readiest disposal of individual humans and divisions in certain directions, based on its inferences and its own emergent understanding. Webmind will do more than just provide an understanding of structures and processes; it will be a participant in processes, in the formation of emergent human and informational structures. And, as various Webmind units in various organizations exchange non-proprietary information, in the interest of increased mutual intelligence, Webmind will be a participant in the formation of human and informational structures on the global scale. This is an exciting new vision of artificial intelligence, in the business context and beyond -- not AI as something separate from humanity, providing us with answers to our questions, but AI as something interacting symbiotically with humanity, participating in our communications, goals, and social structures and processes. Enterprise Analysis, Workflow and Business Process Reengineering Using its extremely flexible structures and dynamics, Webmind can easily be trained to perform a variety of interesting "enterprise analysis" functions. For example, Webmind will be able to: produce pictures of the amount of information passing between different people and groups make causal inferences: "Because Bob finishes his balance sheets on time, Joe is usually able to give meaningful information to the production department." isolate the most important concepts being passed between a particular pair of people or groups track the evolution of concepts through written communications discover the tightly connected clusters of people or groups, among which large amounts of information commonly passes discover the boundaries in the network of people or groups, which information, or particular concepts, have difficulty passing through produce a map of the clusters of people in an organization, separated by boundaries, and the amount and type of linkage between the different clusters Collectively, these functions amount to making a map of an organization as a self-organizing system, and identifying the emergent structures in the organization. These functions will play an important role in enabling organizations to become more effective learning systems. Achieving these enterprise capabilities will not involve adding any new core structures to Webmind, but only creating new types of query nodes, and tuning the categorization, visualization and concept-evolution processes to work on the type and volume of data found in enterprise applications. Financial Decision Support As I write these words, a Webmind is running in the office, producing daily judgement as to which of four major markets are going to go up or down the next day. Each day, it downloads the news from the Net, extracts the important concepts from the news, and uses these, combined with various purely numerical strategies, to make its predictions. Currently the system is doing prediction on a daily scale, not on a second-by-second scale, but this is purely for simplicity's sake; by the time you read these words the principles underlying our analyses of daily financial data will have been extended throughout the financial domain. The system reads the news, not in a musing kind of way, but with a particular financial data set in mind, say the Dow Jones. It comes up with concepts with the following property: The relevance of the concept to the news on a given day tells you something about what the market's going to do on the next day (or, 2 weeks later, etc.). The financial meaning of the text is thus boiled down to a collection of numbers – one for each concept extracted, representing the relevance of that concept to the text on a certain day. The numbers corresponding to the concepts can be computed anew every day, and used for financial analysis purposes just like numbers coming from any other source. These numbers, representing the relevancies of text-derived concepts to the news at a particular time, are what we call text indicators. The extraction of text indicators is the crux of Webmind's financial intelligence. It relies on Webmind's ability to intelligently judge relevance, which draws on all of Webmind's abilities at reasoning, language understanding, conceptualization, and so forth. But text indicator extraction is not the end of the story. In addition to the extraction of financially relevant concepts from news, there is an additional process of learning optimal trading models for particular financial markets. Just knowing the news concepts that tend to correlate with a certain financial market (say, knowing that trouble in foreign countries tends to drive the Dow) doesn't tell you enough to make accurate predictions. You have to get at the nonlinear interrelations between news concepts and numerical patterns in the data. This has to be done differently for the Dow, for IBM stock, for the Yen, for 30 year bonds, and so forth. For each market, Webmind derives a trading model that embodies the best way of incorporating text based information into decisions about that particular market. Webmind's trading models are what computer scientists call "boolean automata," simple logical decision rules, just as Webmind uses for making any kind of decision. They're basically the same kind of rules that are used, within the natural language system, to decide which sense of "Java" is intended in a sentence; or that are used more generally for learning of abstract concepts and categories. As an initial test of the system, we asked Webmind to learn optimal trading models for five major markets, first with and then without news-derived information. When it included the information derived from news archives, the performance increased tremendously, often by a factor of 3 or more. Financial analysis has traditionally been based on fundamental analysis (looking at qualitative, economic and political factors), technical analysis (number-crunching; extrapolation based on past numerical values of behavior within the market), or, more recently, psychological analysis (exploiting commonalities in behavior of the traders who actually take market actions). The approach here contains elements of all of these, since it seeks out and exploits both causal and correlative relationships from many sources within each of the three perspectives. Beyond this, it clearly represents a new, fourth approach, in its use of text resources for integrated decision-making. By linking vast reservoirs of numerical- and text-based data sets in a sophisticated state-of-the-art intelligent learning system, capacities for financial decision-making are greatly enhanced. These results are also of fairly obvious importance outside the financial arena, because the dynamics underlying Webmind 's performance on these sample tasks are the same ones underlying its more general performance. In addition to demonstrating that Webmind can produce highly profitable trading systems using textual information, these tests also show something more general: that Webmind can meaningfully extract concepts from large amounts of text data, relate these concepts to trends in numerical data, and use the relationships it has inferred to provide highly significant actionable information. This capability is of tremendous value beyond the world of finance, in areas such as risk assessment, demand planning, supply chain management, enterprise management, document retrieval and analysis, primary market analysis, medical diagnosis and research -- the list could be continued almost endlessly. Wide implementation of this kind of technology will have a globally dramatic effect. The financial component of the World Wide Brain will become vastly more intelligent than it is right now. I would hate to see the World Wide Brain develop with an overly financial bias – the finance industry, for all its breadth, does after all represent a fairly narrowly biased view of the human race and all the information it has to offer. But the financial markets are already a globally integrated, perceiving and acting self-organizing system, and so they are a natural place for Internet intelligence to start. The precise mechanisms underlying Webmind's text-based market prediction are, obviously, proprietary (and are also patent-pending). But the basic character of the process is nothing but Webmind intelligence, applied to one particular domain. Recall the basics of Webmind architecture. Webmind, internally, consists of a collection of software objects called "nodes," each of which contains links to other nodes, representing inter-node relationships. Some nodes contain raw data such as text or numerical time series; others are more abstract and consist entirely of links to other nodes. The design is superficially similar to a neural network, but is fundamentally different in several respects. A Webmind node is more like a "neuronal module" in the brain than it is like a single neuron. In Webmind , unlike in a neural network, link construction is carried out by a variety of intelligent software agents, and nodes and links are frequently created and destroyed as part of the learning process. Webmind 's internal intelligent agents use a variety of techniques such as genetic algorithms and statistical language processing. Different types of nodes are used for representing different types of data. The node types most directly relevant to simple financial applications are: DataNode, which refers to a numerical data sets, e.g. financial time series TextNode, which refers to a text document, e.g. a market news report for a particular day TimeSet, which refers to a series of time-indexed nodes, e.g. a series of market news reports over several years ConceptNode, which refers to a concept either extracted from text or learned by Webmind TradingRuleNode, a particular kind of finite automaton representing a financial trading rule The process of learning textual indicators to aid in market prediction, trading and analysis is a natural outgrowth of Webmind 's intelligent self-organizing dynamics. Consider, for simplicity, the case where the market being trading is the Dow Jones Industrial Average, and the text being used is market news which is issued on a daily basis. In this case the central data structures are a DataNode pointing to the DJIA, and a TimeSet pointing to the series of market news articles. The text indicator learning process is carried out by an agent associated with these two nodes. The goal of this agent is to isolate a ConceptNode, representing one of Webmind 's internal ideas, with the property that the relevance of the ConceptNode to the TimeSet, on a given day, is a useful indicator for trading the data in the DJIA DataNode on that day. Having carried out this learning process, it then uses the ConceptNode it has isolated to create a new "text indicator" DataNode, each entry of which indicates the relevance of the ConceptNode to the market news TimeSet on a certain day. This text indicator DataNode can then be supplied to the user as, quite simply, a series of numbers. Each day, on reading the news, Webmind can supply a new value for the text indicator -- just as, on seeing the DJIA itself, it can supply new values for numerical indicators such as moving averages and the like. The text indicator obtained by this process of internal conceptualization can be used for a variety of different purposes. It can be used by humans to form their own intuitive judgements, or incorporated in any computational trading framework that is sufficiently flexible to incorporate arbitrary numerical indicators. Most of our work so far, however, has involved incorporating text indicators into Webmind 's own intelligent trading processes, which are ideally suited for incorporating text indicator information. A TradingRuleNode, in Webmind , encapsulates a trading rule, which is a logical combination of information deriving from a numerical predictor and a number of indicators, some numerical and some textual. These details, however, have more to do with computational finance than Internet intelligence, so I will omit them here. The point is that Webmind's intelligent text analysis feeds into a Webmind subsystem that carries out integrative numerical-textual financial prediction, according to methods that are original but build on standard practices in financial analysis. Finally, what exactly are these "concepts" that Webmind derives, by reading the news with financial data in mind? Within Webmind, they are represented as abstract data structures. They are associated with various words and documents and numerical data sets, but they are not truly described in any way except as abstract Webmind-internal data structures. Just as, while we can try to describe our intuitions about the world in words, we can never quite capture them. A good boxer, or financial trader, or mathematician can try to explain the intuitive ideas that guide her work, but the articulation never quite matches the reality. For the period 1996-1997, for instance, the most prominent concepts driving the Dow and the Yen had to do with trouble in Asian economies, and Asian banks particularly. "Asian bank trouble" as a focus of the news was highly predictive of downturns in the Dow. One useful concept had to do with the relation between the British government and the Asian financial situation. Another had to do with European unification. But the important thing to remember is that the concept that Webmind found to be related to the market wasn't just "European unification" itself – it was, rather, a certain slant on European unification, a certain sense it got from the news, that had to do with European unification. These results are fascinating, and are sure to get more so as Webmind becomes more sophisticated, as all the different modules of the code become integrated with each other (as of now, natural language and reasoning are not used "full-strength" in the finance applications; and the self and social aspects of Webmind are not used at all). Ultimately, they will only be a small part of Webmind's utility. However, they will never become trivial: whatever else it may be, the future of the Internet is going to be commercial, which means that the World Wide Brain will have to be financially intelligent! Chapter 8 Semiotics and Autonomy 1. Introduction We have seen that the Internet contains ample resources to support the learning of language, in its syntactic and many of its semantic aspects. But language is not a closed system. Discussion of the automatic understanding of language leads naturally to the question: how can an emergent Internet intelligence understand what concepts "mean"? A Net-embedded AI system will have access to vast amounts of text, for use in language understanding, but recognizing patterns of words' appearances in text can only bring you so far. To achieve true intelligence, an AI system needs to go beyond this and relate concepts to its own experience. This is where the vast amounts of nonlinguistic data accessible to an Internet AI system becomes essential. Grounding concepts in experience requires a vast sensory universe, coupling reduncancy with endless variety; and the Internet provides precisely this. To take a very simple example, if an intelligent information retrieval system is asked by a user to "find me some big novels about love and politics" it should not merely look for occurences of the phrase "big novels" in the texts in its memory, it should look for texts containing novels that are actually big. I.e., it should "ground" the symbol big by associating it with the "physical" parameter of file size. What I call "symbol grounding" -- expression of linguistic entities as combinations of nonlinguistic elements -- is typically classified under the label "semiotics." And semiotics ties in naturally with the concept of autonomy, a relationship that was drawn to my attention by Cliff Joslyn (currently of Los Alamos National Laboratories). A system that grounds its own symbols makes its own meanings, and is hence autonomous in linguistic space. This kind of autonomy in linguistic space seems to be a prerequisite for intelligent autonomy in physical space. 2. Meaning In order to rigorously explore the question of semiotics in regard to AI, one requires a precise definition of "meaning." The definition to be used here is the one supplied in Chapter 5 of Chaotic Logic (Goertzel, 1994), where it is suggested that the meaning of an entity is simply the set of all patterns related to its occurence. For instance, the meaning of the concept "cat" is the set of all patterns, the occurence of which is somehow related to the occurence of a cat. Examples would be: the appearance of a dead bird, a litter box, a kitten, a barking dog, a strip dancer in a pussycat outfit, a cartoon cat on TV, a tiger, a tail,.... It is clear that some things are related to "cat" more strongly than others. Thus the meaning of "cat" is not an ordinary set but a fuzzy set. A meaning is a fuzzy set of patterns. In this view, the meaning of even a simple entity is a very complex construct. In fact, as is shown in (Goertzel, 1994), meaning is in general uncomputable in the sense of Godel's Theorem. But this does not mean that we cannot approximate meanings, and work with these approximations just as we do other collections of patterns. This approach to meaning is very easily situated, in the sense of situation semantics (Barwise and Perry, 1981). The meaning of an entity in a given situation is the set of all patterns in that situation which are related to that entity. The meaning of W in situation S will be called the S-meaning of W. The degree to which a certain pattern belongs to the S-meaning of W depends on two things: how intensely the pattern is present in S, and how related the pattern is to W. These ideas are not difficult to formalize. Consider a pattern in S as a process p whose result rp is similar to S. Let s be a "simplicity function" mapping the union of the space of mental processes and the space of situations into the nonnegative real numbers; and let d be a metric on the space of mental processes, scaled so that d(rp,S)/s(S) = 1/c represents an unacceptably large degree of similarity. Then one reasonable definition of the intensity with which p is a pattern in S is given by the formula IN[p|S] = [1 - c d(rp,S)/s(S)] [s(S) - s(p)] / s(S) The term [s(e)-s(p)]/s(e) = 1-s(p)/s(e) gauges the amount of simplification or "compression" provided by using p to represent e. Next, let MW,S(p) denote the degree to which p is an element of the S-meaning of W (S is a situation, W is an object). Then one might, for instance, set MW,S(p) = IN[p;S] * corr[W,p] where corr[W,p] denotes the statistical correlation between W and q, gauged by the standard "correlation coefficient." The correlation must be taken over some past history of situations that are similar in type to S; and it may possibly be weighted to give preference to situation which are more strongly similar to S. The determination of similarity between situations, of course, is a function of the mind in which the meanings exist. Webmind contains built-in methodologies for gauging similarities between situations and other entities. But the point for now is that the meaning of an entity is a fuzzy set of patterns: the degree to which a process belongs to the meaning of X is determined by the intensity with which that process is a pattern in situations correlated with the appearance of X. This mathematical definition implies that meaning is a fuzzy set of patterns. Finally, the relationship between meaning and intelligence is worthy of brief comment. Intelligence, as I have argued in (Goertzel, 1993) and reviewed above, should be considered as the capability to achieve complex goals in complex environments. A mathematical definition of "complexity" may be founded on the basis of the definition of "pattern" given above, the gist of which is that an entity is complex if it has a large number of different patterns in it. An environment is complex if it has many patterns in it; and a goal is complex if, when considered as a function mapping situations to degrees of goal achievement, its graph has a large number of different patterns in it. The collection of patterns in an environment or goal, which makes that environment or goal complex, is a fuzzy set of patterns. Since intelligence has to do with processing and enacting complexity, it requires manipulating fuzzy sets of patterns. Meanings of specific elements in the world may thus be viewed as subsets of the overall field of complexity in which intelligence operates. Isolating meanings is a way of breaking down complexity into parts -- i.e., it is an example of problem solving by division and reunification, the most basic problem-solving strategy of all. 3. Symbol Grounding A consequence of this approach to meaning is that, in order for an intelligence to understand the meaning of a word, concept or other entity, this entity must be "grounded" in the system's own experience. Consider, for example, the position of Webmind or another similar intelligent text processing system on encountering the word "two." In order to deal with "two" in an intelligent way, the system must somehow understand that "two" is not only a pattern in texts, it also refers to the two computer users who are currently logged onto it, the two kinds of data file that it reads in, etc. Through processing of text alone, part of the fuzzy set that is the meaning of "two" can be acquired: that part which is purely linguistic, purely concerned with the appearance of "two" in linguistic combinations with other words. But the other part of the meaning of "two" can only be obtained by seeing "two" used, and using "two," in various situations, and observing the patterns in these situations that are correlated with correct use of "two." In general, the fuzzy set of patterns that is the meaning of a symbol X involves not only patterns emergent among X and other symbols, but also patterns emergent among X and entities involved in physical situations. Recognition of patterns of this type is called symbol grounding (Harnad, 1990), and is a crucial aspect of artificial intelligence. Symbol grounding is, in essence, the difference between semiotics and formal language. One approach to the task of symbol grounding would be to encode thousands or millions of specific rules, explaining which items in which situations correlate with which symbols. However, this kind of approach is obviously doomed to fail, because even if one could accomplish such a tremendous feat of rule encoding for all known situations, one would still face the problem of enabling one's system to deal with unknown situations. Fortunately, in a self-organizing intelligent system, it is possible to take a different approach: to supply a small number of symbol-reality mapping rules and allow the remainder to emerge spontaneously from the network's own dynamics. The general principle here is that the subjective reality of an intelligent system is necessarily self-organizing: only a subjective reality which "understands its own structure" will be able to adapt and grow, and adaptation and growth are prerequisites of intelligence. In order to make this concept more concrete, consider an AI system composed of multiple agents, each of which has the ability to look inside itself and report various aspects of its current state. Textual statements and other data, once read into the system, are decoded into collections of agents. A "symbol grounding" is represented by a special kind of mobile agent, a symbol grounding agent. A symbol grounding agent is associated with another agent, which it "tracks." Its goal is to mimic the behavior of the agent which it tracks, but without looking into that agent itself, only by looking into other agents. In this way it represents the agent that it tracks as a relationship among other agents. Given the collection of information-bearing agents as a fixed information base, the symbol grounding agent attempts to become a pattern in the node that it tracks. A given agent may be tracked by a number of symbol grounding agents, each of which is operative in certain situations, and some of which are more effective than others. The idea of meaning as a fuzzy set of patterns is thus embodied concretely: the meaning of an agent is enhanced by a fuzzy set of meaning-gathering agents. Situation specificity of meaning-contributing patterns is reflected as situation specificity of agents. These are intelligent agents, as recognizing patterns in the occurence of linguistic symbols or other mental entities is not an easy task; but the machine learning problems involved here are not insurmountable, and are in fact similar to those encountered in other areas of AI, e.g. financial prediction. The implementation of symbol grounding agents involves many detailed and difficult issues not touched on here, but the conceptual aspects of the design should be clear. The point is that the population of symbol grounding agents associated with a piece of information expresses that piece of information, explicitly, as a fuzzy set of patterns. The usefulness of the symbol grounding agents for generating meaning depends on two factors: the intelligence of the symbol grounding agents, and the coherence and informativeness of agent system used as an information base. 5. Philosophy of Symbol Grounding The examples considered above -- "long", "two", etc. -- involve texts and numbers, things that Net-based AI systems have fairly direct knowledge of. They don't involve, for example, horses, or rooms, things that a such a system could know of only via indirect reference. This is not coincidence of course: an AI system will be able to ground only those symbols that refer to something it has direct experience with. This is a fundamental fact of mind and there is no getting around it! Does this mean that Internet AI systems won't be able to reason about horses? By no means. If such a system is told "the horse is big," it will be able to interpret this statement by using its intuitive understanding of the word "big" -- which is gained via its grounding of big in the context of texts, data, and so forth. But, it won't be able to ground the concept of a horse for itself, unless it is given some perceptual basis for this grounding. If it were trained to recognize horses in .gif files, this would allow it to develop a visual grounding for the concept of "horse", which would still be very partial compared to the grounding that most humans have. Humans experience the difference between grounded and ungrounded symbols very vividly when visiting, for the first time, a city that they had previously only read about. I understood a lot about Prague, before I had ever visited there, based on reading novels set in Prague, tourist books about Prague, etc. I reasoned about Prague by reference to my large battery of relevant already-grounded symbols: city, building, street, etc. etc. I constructed a fuzzy, shifting default image of the ungrounded symbol "Prague" as a fuzzy combination of already grounded symbols -- bringing other ungrounded symbols such as "Moscow" to bear on it too, no doubt. But when I visited there, the symbol "Prague" was rapidly grounded, which brought my thinking and feeling about Prague to a level it could never have achieved without the symbol grounding. One can make great discoveries about a city without ever visiting it -- pick up historical and cultural trends, etc. -- but there are some things one will necessarily miss from not really "knowing" it. (A more potent example than cities would be sex. Compare the understanding of sex possessed by someone who has never had sex, but has looked at a lot of pictures and read a lot of books about it, with someone who has had the experience.) Similarly, there are some things Webmind will always miss about horses until it is given multisensory organs to interact with horses and ground the symbol "horse" for itself. But it will likely pick up a lot more than us humans about computer networks, numerical data, Internet traffic, etc., because in these areas, it has more grounding than us, rather than less. From a philosophical perspective, the basis of the notion of grounding is as follows. Symbols emerged to represent recognized patterns. But a symbol can never capture all the nuances of a pattern. It can guide the mind toward the recognition of the same patterns that others have recognized before; or it can serve as a shallow, limited "proxy" for the pattern, when the mind has not yet recognized the real thing. But there is no substitute for recognizing the pattern oneself. And no mind can operate entirely on the basis of proxies. The percentage of ungrounded proxies must be below a certain "critical level" or reason will necessarily fail. This is perhaps the main reason why all attempts at AI so far have failed. What we do when we don't have a real-life grounding is to use a formal definition. For instance, what is a horse? Well, a horse, of course, is A hoofed quadruped of the genus Equus; especially, the domestic horse (E. caballus), which was domesticated in Egypt and Asia at a very early period. It has six broad molars, on each side of each jaw, with six incisors, and two canine teeth, both above and below. The mares usually have the canine teeth rudimentary or wanting. The horse differs from the true asses, in having a long, flowing mane, and the tail bushy to the base. Unlike the asses it has callosities, or chestnuts, on all its legs. The horse excels in strength, speed, docility, courage, and nobleness of character, and is used for drawing, carrying, bearing a rider, and like purposes. A high-quality NL system will be able to parse this definition and use it to construct a number of different things. It will build is-A links from "horse" to "quadruped" and "Equus", and part-of links to "hoof", "molar", "incisor", "tooth", etc. It will construct trilinks to (4,horse), (long, mane) and (flowing, mane). It will construct "quality" links from "horse" to "strength", "speed", "docility", etc. This is useful information, but not the same as grounding. These definition-embodying links simply "outsource" questions about horses to other concepts: to figure out if X is a horse, you check if it has teeth, hooves, four legs, etc. Then, to check if X has "teeth", "legs", etc., the definitions of these other terms must be appealed to. This is a reasonable way of proceeding, but yet, it will never give true understanding. At some point, the system must be able to move outside the network of formal, relational links into a deeper kind of understanding: an understanding grounded in experience. This understanding grounded in experience is implicit, not explicit. It may be represented as a neural network, as a high-dimensional polynomial or logical combination of various simple terms, or in any sufficiently flexible format, but it is unlikely to be transparently comprehensible in the way that an explicit dictionary-like definition or associated collection of relational links is. Implicit symbol groundings cannot be derived from formal definitions, and cannot be communicated in language in any reasonably compact way, but can only induced or evolved based on experience. Whether a grounding is constructed in terms of rules or in terms of neural networks or something else is not important, the important thing is the complexity of the framework used to represent the grounding. Groundings must be constructed from a framework which is flexible and adaptive -- if they are to be built from rules, they must be built from large numbers of rules according to a non-restrictive rule-combining algebra. Every single grounding need not be complex -- e.g. the grounding of "big" given above is not complex -- but the framework for generating groundings must be capable of fluidly and compactly representing complexity. One of the important qualities of symbol groundings is this: they are compact processes which enable a mind to make category membership decisions regarding categories that are of complex shape in "idea space." The most common statistical clustering algorithms are optimized to recognize categories of spherical shape. Simple collections of logical rules, on the other hand, often recognize categories of polygonal shape. Any generalized system of categorization is going to have a bias toward some particular shape of category. Generalized categorization systems have an important purpose: they help a mind to form a rough map of the conceptual landscape, to get an initial picture of what things belong with what other things. But in order to arrive at an effective working understanding of the world, it is necessary to go beyond any generalized system and create specific processes for determining category membership, and hence refining the mind's categorization system. This process is too computationally expensive to use as the sole means of categorization, but is important as a method of deepening the understanding initially arrived at by simpler, statistical means. But, important as it is, flexibly-shaped categorization is not the defining characteristic of a symbol grounding. The word "grounding" is significant here -- it suggests attaining firmness by appealing to a lower level. In a human context, this lower level is the body and physical reality. For an Internet AI system, this lower level is its own body and physical reality: the lengths of files and strings and tables, etc., stored in its various component agents, which correspond directly to the sizes of chunks of RAM absorbed by different parts of its internal network. The lower level is not more absolutely meaningful in a philosophical sense, but it is more broadly meaningful in a social sense: it is a realm that is common to a host of different minds. Symbol grounding, in essence, may be defined as the identification of concepts with compact processes constructed as potentially complex combinations of socially-real phenomena, and demarcating complex shapes in idea space. 5. Inductive, Deductive and Abductive Groundings Crystallizing these philosophical observations into a framework more suitable to guide engineering, one may think about three types of grounding: Inductive: observing that a symbol is correlated with certain phenomena, and inducing a machine that predicts which phenomena the symbol is correlated with Deductive: observing that A is a subset of B, and hence that the grounding of B is an initial guess at the grounding of A. (e.g. a=bird, b=animal) Abductive: creating a virtual grounding for something never directly perceived (e.g. a quasar). Here we look for transformations from things we have perceived, e.g. quasar = f(star), quasar = g(comet), etc. Abductive grounding is the most complex of the three, and the one that gives the perceived world most of its texture. To carry out abductive grounding, a system must evolve transformations from unknown to known enities by a GA or similar method. Then, it must compose these transformation with the groundings of their arguments, e.g. possible-grounding-for-quasar = f(grounding-for-star) This is how we create "mental movies" grounding things we have never had experience with. The real subtlety of symbol grounding lies in the fact, pointed out to me with particular force by Julian Troyanov, that even groundings that seem to be inductive also have an abductive, imaginative component. This abductive component of even familiar concepts is is what gives them their flexibility and living nature. An Internet-based AI system will have to deal abductively with many common elements of human physical reality; just as we have to deal abductively with things like packet flow over the Net, which it will be able to deal with inductively ... it will be able to "feel" the packets flowing and hence ground the concept of packet flow inductively. With these concepts in hand, we may revisit the issue of grounding numbers. It seems that the straightforward evolution of inductive symbol groundings will suffice to ground numbers from specific examples: e.g. to cause the "2" node to recognize entities that are sets of 2, if it is trained by being given examples of things that are sets of 2 and things that are not sets of 2. This is not difficult if it is assumed that the agents comprising an Internet AI system will be introspective enough to numerically measure their own sizes. But, what about a number like "three thousand, four hundred and six"? Clearly, the system can't be given explicit training on every number it will ever see. Of course, a specific formula for grounding numbers could be hard-coded into the system, but that isn't the point: the point is, how could it learn the correct way to ground numbers, as human children do when learning mathematics? This is abductive grounding, and it must be done in such a way as to provide not only precision but flexibility. For instance, what does "three zinkum, four hundred and six" ground to -- merely a vague impression of a big number? Yes, but every one knows that it's one more than "three zinkum, four hundred and five." Unless of course one discovers that a zinkum is a kind of infinity, in which case "three zinkum, four hundred and six" and "three zinkum, four hundred and five" are equivalent! This is all a matter of adjusting the transformation used in constructing the abductive symbol grounding. 6. Semiotics/Autonomy Feedback In closing, let us return to the relation between semiotics and autonomy. This relationship is, in an intelligent system, necessarily bidirectional: on the one hand, a system uses its shared and individual semiotics to maintain autonomy; and on the other hand, a system requires its autonomy in order to gather and maintain the information that is the basis for the formation of its semiotics. The feedback dynamics between semiotics and autonomy is very subtle and can be expected to manifest phenomena of chaos, complexity and emergence. As autonomous intelligences, we experience this feedback from the inside; and as observers of other humans, we experience it from a combined internal/external perspective, due to our empathy for other humans and our embeddedness in the shared social semiotic dynamic of human culture and society. In engineering artificial intelligences, however, we get a unique opportunity to observe the semiotics/autonomy feedback from the outside, a perspective that yields many new insights. In particular, based on the above discussion, we may enounce a few general points about meaning and mind: An intelligent system's strategies for meaning extraction are necessarily inseparable from the overall intelligent dynamics with which its dynamic knowledge base is endowed. The meaning of a word, phrase, sentence, text or concept, to an intelligent system, is encapsulated in the relationships between this entity and other entities which it contains in its dynamic knowledge base. In order to truly understand the meaning of text or speech, an intelligent system must be able to map the meanings recognized in linguistic items with aspects of own data structures and of non-textual data presented to it. In an autonomous intelligent system, such as Webmind or the human brain, each entity is a symbol for a tremendously large fuzzy set of other entities in the system. Meaning thus emerges as a self-organizing web of fuzzy patterns. The task of building a subjective reality is carried out by this web; and the subjective reality constructed by this web is a key contributor to the web's growth. Because the evolution of symbol groundings is derived by usage of the nexus of relationships in a self-organizing memory, semiotics depends on autonomy, inasmuch as autonomy is what allows an integral, useful nexus of relationships to evolve. On the other hand, a self-organizing AI system's autonomy relies equally much on its semiotics, in the sense that a system's understanding of itself hinges on its understanding of its relationship with humans and other computers, and its understanding of this relationship would be feeble indeed without symbol groundings of basic relational concepts. Essentially, we conclude that, in a self-organizing Internet-embedded AI system, Semiotics supports autonomy via the social definition of self Autonomy supports semiotics by supplying a coherent body of raw material for the evolution of symbol groundings It is tempting to conclude that this characterization of the semiotics/autonomy feedback relation holds generally, beyond the context of the Net; but this is not the place to enter into such issues. Chapter 9 Toward an Agent Interaction Protocol 1. Linguistics versus Pragmatics Intelligent software agents on the Internet will, like humans, need to communicate via language. What language this will be, however, is not entirely clear. It might be English, or a computer-ized dialect of English; it might be a form of logic or mathematics; or it might be an evolved language totally incomprehensible to humans. Standardizing the discourse of intelligent agents is not something we should be trying to do at this stage. Standardizing the pragmatics of intelligent agent discourse, on the other hand, is an important task, and one that may well be a prerequisite for the emergence of Internet intelligence. Humans communicate via a variety of different languages, all of which exist within the shared pragmatic/semantic space of physical discourse. If I were placed on a desert island with a person who spoke only Quechua, we would gradually learn each others' languages, by reference to physical objects (point at a tree and say "tree", etc.). On the other hand, if I were strapped against the wall in a dark room, and a person who spoke only Quechua were strapped against the wall on the other side of the room, we might, after months or years, begin to make progress -- again, by virtue of the shared physical reality. I would whisper "quiet" and yell "loud", etc. It would be difficult, but possible: this is the power of pre-linguistic, pragmatic reality, the common stream of perceptual data shared by various linguistic and nonlinguistic beings. The notion of an Agent Communication Language, as presented e.g. in Fikes and Farquhar (1998), embodies this distinction between linguistics and pragmatics. Agent communication is broken down into two layers: an outer "agent interaction protocol" (AIP) layer, and an inner "content communication" layer. The AIP layer plays the role of pragmatics, giving a basic framework in which linguistic communications are framed. The content communication layer plays the role of language. The dissociation of these two layers is important, because right now, different commercial and academic AI developers radically disagree on what kinds of languages should be used to communicate between intelligent agents. However, agreement on an outer layer of pragmatics, an agent interaction protocol, is more closely within reach. Taking a slightly different tack, the importance of agent interaction protocol may be seen by analogy to the birth of the Internet. The emergence of the Net as we know it required two main things, engineering-wise: ARPANET, the first packet-switching network TCP/IP, the protocol allowing machines on differently architected networks to communicate with each other via "gateways" The same may be true of the World Wide Brain. Proprietary AI engines acting over intranets and extranets will be the equivalent of ARPANET, but to achieve a truly global brain we will need an equivalent of TCP/IP to allow the emergent intelligent network to grow beyond the bounds of the customers of a particular firm. 2. An Agent Interaction Protocol The most promising agent interaction protocol proposed to date is a very simple message-handling protocol called KQML (Knowledge Query and Manipulation Language; see Fikes and Farquhar, 1998). In this section I will describe KQML, and suggest some revisions that would simplify KQML and render it more general, less tied to the formal-logical reasoning systems that gave rise to it. KQML contains the following basic "performatives": tell deny untell evaluate reply ask-if Each of these takes a certain number of parameters, drawn from: :content :language :ontology :in-reply-to :force :sender :receiver This is a fairly general and powerful framework, but it is not quite perfect, and its imperfections reveal its roots in logic-based AI. KQML was designed to work with KIF, a knowledge representation format based on first-order logic, with the addition of some object-oriented primitives (class, subclass of, slot, slot-value-type, etc.). Though in principle KQML can work separately from KIF, it contains a number of features that are really not meaningful in the context of AI agents based primarily on self-organization rather than logical deduction. The presupposition of KIF is that knowledge is represented in terms of logical formulas, and that "Sets of expressions necessarily bottom out in expressions containing undefined (primitive) symbols" (Fikes and Farquhar, 1998). However, this is not a universal presupposition of intelligence: in a later chapter we will see that, in some AI systems, sets of expressions bottom out in highly complex combinations of nonsymbolic, nonlinguistic data. Just as, in the human mind, "chair" bottoms out in a collection of perceptual data and perceptual-action schema. This means that chair is a "primitive" symbol, but it does not mean that nothing can be communicated about "chair." Rather, it means that communication about chairs may possibly take place on a pragmatic, pre-linguistic level as well as on the linguistic level. KIF does not permit for pre-linguistic discourse; it operates only on the level of logic. However, if intelligent agents are to communicate in a truly intelligent way, they must be allowed to interact prelinguistically and prelogically as well as on the level of logical formulas. Imagine trying to teach a child to speak, think and interact using only logical formulas! For instance, how, in the KQML language, would one agent point to a picture and say "pretty"? There is a primitive for "tell" but no primitive for "show" -- a glaring omission given that showing is perhaps the most essential aspect of pragmatic, pre-linguistic communication. Also, the inclusion of a parameter for "ontology" is fairly artificial. When two humans communicate, they do not specify the ontology to which they are referring: ontology is implicit for humans, and it is implicit for many types of AI systems too. A better name for the "ontology" parameter would be "context." A formal-logic-based ontology would be one example of a context, a document would be another. To explore this issue a little more deeply, let us observe what is really meant by an "ontology" by members of the research group involved with designing this protocol. Fikes and Farquhar (1998), advocating the OKBC ontology protocol, which fits in naturally with KIF, state that "We consider ontologies to be domain theories that specify a domain-specific vocabulary of entities, classes, properties, predicates and functions, and a set of relationships that necessarily hold among these vocabulary items" Clearly, this is a highly restrictive notion of an ontology, and not all intelligent agents are going to operate in such terms. In fact, any system that does operate according to such a restrictive notion of ontology is guaranteed not to be very intelligent. A useful theory of a given domain of knowledge is not going to consist of a set of necessary logical relationships, but a fluid, self-organizing network of possible relationships. Recognizing this, Koller and Pfeffer (1998) are seeking to generalize the logic-based notion of ontology to deal with uncertainty; but this is really only a tiny step in the direction of psychological plausibility. The inclusion of "force" as a parameter in the agent interaction protocol is probably worthwhile. The forcefulness of a statement is important, witness the importance of voice volume in human speech. Of course, there are many other parameters besides forcefulness that are important in establishing the pragmatic context for communication. Even in the case of myself and the Quechua-speaker strapped at opposite ends of a dark room, we have a lot more than force of expression to go on! But force has a very pragmatic use in the case of questions: it indicates how badly the questioner wants an answer. Furthermore, it is something that has meaning in a variety of different AI architectures: neural network based systems, for example, will lead to different conclusions with different "activations", activation essentially being a version of "force" in the sense of AIP. "Evaluate" might also seem to be a good thing to have -- one agent will often want another to evaluate something for it, although "evaluation" may not always be meant in the sense of logical evaluation. Something sent along for evaluation may be evaluated in many different ways, the result not necessarily being a truth value or logical expression, but possibly a whole body of information. But, evaluation in this sense is really a form of asking. The distinction between "evaluate" and "ask-if" is only meaningful in the context of logic-based AI systems. Finally, "untell" is clearly not a generally necessary part of an AIP. What does it mean for a person to "untell" someone something, as opposed to denying that thing? This is a distinction that is meaningful only in the context of specific logical formalisms, not in general intelligent discourse. On the other hand, since we have statements (tell) and questions (ask) in the protocol, it seems odd not to have a way to command an agent to do things. Commanding is clearly a much more natural behavior than untelling! Telling is informative; commanding is what the central machine in a local network does to the other machines in the local network. Computers do a lot of commanding in networks now, so an AIP should support this. Finally, and more controversially, I would argue for one more additional performative in the Agent Interaction Protocol: mate. We have seen above the potential that exists in the "Internet as evolving ecology" concept. The best way to encourage this along would be to have genetic-algorithm-type crossover as a standard operation of agent interaction. Of course, each agent is responsible for determining what it can mate with and what the result will be like. Radically different agents will not be able to mate. In conclusion, my preferred AIP would have the following performatives: show tell ask reply command mate The omission of a few performatives from the KQML specification is not important, as it was not the intention of the designers of KQML that every agent use every performative. However, the addition of the "show" and "command" performatives is crucial. Without these, the protocol is really not complete. Show, tell, ask, reply and command are very basic features of communication, and the omission of showing and commanding in favor of untelling and denying really makes KQML inadequate as a general agent interaction protocol. Furthermore, the addition of "mate" is an explicit support of emergent intelligence that is not at all present in KQML. Basically, KQML only allows agents to talk together and to evaluate logical expressions together. But this is not enough. We interact with each other in many ways beyond conversation, and artificial Net agents should have the same ability: at minimum, they should be allowed to show each other things on the Net, and to mate with each other. Showing, talking and mating are the basic operations out of which a society of intelligent agents may be formed, and may form the substrate of an emergent electronic mind. Next, along these same lines the parameters that I think should be generally used are: :content < expression> :data :language :context :in-reply-to :force :chance :sender :receiver Note the changes here. "Ontology" is replaced by "context", and "content" is augmented by "data", which is not merely an expression but may be any collection of data (e.g. any MIME type). "Force" is supplemented by "chance" -- the amount of randomness that is desired in the response. In a mating operation "chance" gives the mutation rate; in a query processing context, "chance" gives the adventurousness of the reply. These changes are small but important. Showing does not work unless content can be drawn from beyond the realm of logical expressions. And, context must be expressible as a list of multiple relevant items, not merely as a pointer to a formal, explicit "ontology." The URL's that "context" points to may be ontologies, or anything else; and the recipient may do with them what they wish. In general, it seems reasonable to allow specific agent types to use custom parameters within messages. As with tags in SGML, if an agent receives a parameter type that it does not know how to process, it may simply ignore it. KQML with performatives and parameters thus modified I propose to call SAIP, for "Simple Agent Interaction Protocol." In the following section I will explore some interesting uses of SAIP, but first it should be observed that SAIP also has down-to-earth applications. It is general enough that it could be used as a wrapper around very mundane "agent" interactions such as Web browsing. What a Web browser sends to a Web server is, on the AIP level, a "show" message. In a distributed search system, on the other hand, a search engine might send an "ask" command to a Web server, asking for information about particular topics. An e-mail is a "tell" message; an e-mail with attachments is a "tell" message bundled with a "show" message. The inclusion of the "show" command makes apparent the continuity between the sophisticated agent interactions of the future Internet, and the simple but highly useful interactions between the programs that serve on the current Net as "agents" for human desires. 3. Four Levels of Communication To make these ideas more concrete, I will now explore some specific types of interactions that agents on the Net will need to make in the near future. This list of projected interactions is systematized according to the four levels of being as introduced above. It is not intended too be an exhaustive list, merely to indicate some very-near-future possibilities. Note that the different levels of being do not correlate in any straightforward way with the different performatives of the SAIP. Interactions on any level of being may involve ask, tell, show or reply messages, in various combinations. Only the mate message is special: it lives on the level of wild being. STATIC BEING Agents interacting on the level of static being means agents simply exchanging information. The action of a Web browser or an e-mail client falls into this category. Information is being pushed from here to there. Standard search queries also fall into this category -- they involve a search for what is there, what is present. Finally, "push technology" in its simplest form is of this type as well. One agent is pushing information that it judges relevant -- pushing it to an agent representing a human, such as an e-mail program or an "active desktop," pushing it to an AI system, or wherever. Note that the static-ness of these interactions is dependent on the breadth with which one defines the "system", the overall context of consideration. These interactions are static when considered purely on the Internet level. An e-mail is a static object transferred from one Internet agent to another, and when it is received, it just sits there, rather than entering into any particular dynamic. On the other hand, if one defines the overall system to include human computer users as well as computer programs -- justifiably, as humans are the most flexible and powerful Internet agents existing today -- then things work out quite differently. The human who reads the e-mail may enter the e-mail into his mind, where it may well trigger off all sorts of complex dynamics. For instance, it may cause him to send more e-mails, in which case it was a "static being" interaction with the e-mail client, but a process being interaction with the human/e-mail client joint system. PROCESS BEING Agents that trigger processes are quite common today. The Web browser, when it activates a CGI script, is triggering a server process. Standard client-server data mining software resides on this level as well. If one is simply accessing database data, then one is in a sense triggering a process -- a lookup process -- but the essence of the interaction is static, accessing what is there. But if one is asking for a clustering to be performed, or for the future value of a time series to be predicted, then one is asking for the on-the-fly creation of new information: it is really the process one is paying for, as much as the information itself. As online databases become larger and larger, information retrieval necessarily becomes more a matter of process being than one of static being. The abundance of information means that the premium is not on mere possession of information, but on filtering of information, an intelligent process. HYPER BEING Hyper being agent interaction goes beyond triggering of processes -- now we are talking about the seeding of creative self-organization. If the querying of a large database has a focus on the "mining" process, the querying of an intelligent, self-organizing database has a focus on the complex, information-building processes seeded by the query. Asking an intelligent information system for knowledge about "AI technology as related to bovine menstruation" doesn't merely trigger off a search process; it triggers off a learning process within the AI system, which may potentially change the AI system's dynamic memory for good. Hyper being queries may be specific requests for the creation of new self-organizing systems -- as in the case of a manager who wants to build a simulation of his organization within an Internet AI system, knowing that the running of this simulation will structure the way the AI system gathers information from other systems, etc. Or it may be implicit, as in the case of an ordinary query to a self-organizing database. The point regardless is that, rather than just a process, one wants to trigger off a complex process resulting in a system of interlocked informational causes and effects to create a new subsystem of the target system. And of course, hyper being interactions need not be queries. Telling another system something can seed off self-organizations on its own. Preachers, teachers and marketeers are always in search of that magic formulation that will seed off self-organization in the minds of their listeners. But, one thing they lack is the ability to directly implant ideas into their audience's brain. Instead of pushing data to another agent, one Internet may push a small agent, intended to interact with the recipient agent and encourage it in certain directions. The "data" parameter in the Simple Agent Interaction protocol supports this: part of the data passed along may be an agent itself, e.g. in the form of a Java applet. WILD BEING What "wild being" agent interactions means is nothing short of mind meld. This is not so much a query as an undirected open-ness: "Allow my brain to merge with yours and let's see what happens." The "show" command is essential here. One agent may show another portions of its own mind, and in return obtain portions of another agent's mind. The self-organization processes on either end may result in an agent-transcending feedback that binds the two agents into a combined emergent intelligent system. Among appropriately sophisticated agents, wild being interaction could be triggered by a simple "ask" message: Do you want to mind meld? If the "reply" were "Go for it", then a repeated exchange of data would ensue. The data exchanged would not be static information, but rather networks of complex processes. Each agent, having taken some of the other's complex processes into itself, would absorb the other's tacit ways of thinking as well as its data. Of course, this kind of interaction can only occur among agents that have sufficiently similar internal workings to be able to exchange interior segments. And mating, of course, falls into this same category. Mating is a process by which parts of two or more agents come together to form new agents. This is an extreme version of mind meld: instead of one agent taking in a small part of another agent's mind, an agent is formed of roughly equal parts from two others. Again, mating implies that the two agents mating are of the same "species", that they are close enough that combinatory operations are defined. But this specificity requirement is no different from what is found in the biological world: different species coexist, but do not interbreed. If we count humans into the system, wild being interaction happens from time to time on the Net already. E-mail listservers and discussion groups, and Usenet groups, at their best, are a kind of collective thinking. Most often they are collective stupidity, but on rare occasions they can achieve a true emergent intelligence; I have experienced this myself on several occasions. Purely electronically, wild being agent interactions do not seem to be happening yet, because the agents out there are too unsophisticated. But, there are no fundamental obstacles in the way of this happening. All that is needed is the adoption of a sufficiently flexible agent interaction protocol, and the creation of various special-purpose-driven agents using the protocol to communicate. This is something that will arise in the next decade purely due to market pressures, rather than out of any desire on the part of agent engineers to create emergent global intelligence. Just as static being querying gradually gives way to process being querying, as databases become large enough that filtering is more important than raw information; so process being interactions will gradually give way to hyper being interactions, which will gradually give way to wild being interactions. All four levels will remain important, of course, just as they do in biological systems. But wild being interaction will occur in what now seem the most unlikely places. For example, an e-mail/web-browser type client will in the future be a mini-mind, a self-organizing network of user-relevant information. The process of querying a database will be a process of melding the mind of the user's client with the mind of the database, and then submitting simple process or static queries into the resultant emergent information store. And the relevance of this data will be assured by the accuracy with which the client's mini-mind reflects the user's mind, an accuracy obtained through routine daily wild-being interaction between the user and his/her computer.