How WebmindTM Works

     The nitty-gritty details of the WebmindTM 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 generality, and may help the reader to grasp the system's essential nature.  Essentially, Webmind is a complex network of  nodes, packages of software and data, which interact with each other in creative and innovative ways.  Its organization is analagous to that of the brain which is a complex network  of neuronal groups which interact with each other to create
thoughts.  A node can be thought of as a mini artificial intelligence program, including both instructions and data.  It is similar to a neuronal group in the brain.  Each node interacts with other nodes, just as neuronal groups in the brain interact with each other, causing changes in each other.  It is this complex process of interaction which makes the WEBMIND similar to the way the brain functions.
     A single WebmindTM system consists of a collection of nodes called a Psynet, analogous to the brain as a whole, which spans a collection of one or more WebmindTM servers, each one running on its own (possibly multiprocessor) machine (just as the brain depends on the body which supplies it with blood, oxygen, etc.). The intelligent core of a WebmindTM server is its collection of nodes, which is called a PsynetLobe (analagous to a large cluster of neuronal groups). Each PsynetLobe, in turn, consists of multiple pods (analagous to small to moderate sized clusters of neuronal groups).  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 WebmindTM servers thus connected can act as an emergent whole; whereas Internet connections are too slow. Thus, one can think of the intranet as the Webmind 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 (or "World Wide Brain") will become achievable.
     Every WebmindTM 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 categorization, a PsyContext pod for real-time information processing, a pod for query processing, and other pods devoted to such tasks as creative brainstorming, self-reflection, socialization, etc. (each of these is analagous to specific components of the brain, although scientists are not entirely certain of what each component of the brain does.)  Other pods will be application-specific: e.g., a WebmindTM 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.  (This is true of humans as well, each of us has certain specialized bodies of knowledge, which we obtain through study and work, brain to brain transfer is not, however, not a matter of a simple download.)
     Now we will move from a discussion of the organizational structure of Webmind, its "statics," to a discussion of how the different components interact with each other over time, its "dynamics."  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.  (In the brain, "heat" can be measured by the amount of oxygen going to a brain component.)
     There is one Pod, the PsyContext pod that bears a special relation to the outside world. This pod is WebmindTM's short-term memory, containing information regarding what Webmind has recently experienced, and other things judged to be associated to these recent experiences.  WebmindTM's "lineal awareness" system consists of a loop that takes in new data, processes it in conjunction with the agents in the PsyContext, and then places it in the PsyContext, 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.  There are similar specialized regions of the human brain for each of these functions.
     The starting-point for WebmindTM'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.  This is where Webmind is different from the human brain, which gets its information from visual, auditory and other sensual organs.  Webmind might be expanded, of course, to include graphic inputs of various kinds.  As in the brain, 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 WebmindTM'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 WebmindTM's various internal agents.  We believe that intelligence in the brain emerges in much the same way.
     What is universal to all nodes in WebmindTM 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 (Current knowledge of the brain does not include any close analogy to Wanderers, they might be analogous to quantum resonance between distant brain regions, or some unknown chemical process, or this may be a case where Webmind's structure is different from that which the brain uses.  Of course, the brain may also have many processes which Webmind does not currently mimic.).
    All WebmindTM nodes follow 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."  Insights which Peirce reached from his analysis of how the brain works have been incorporated in Webmind's fundamental logic.
     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. WebmindTM similarly enters the world with these pre-existing abilities, albeit in somewhat different form.
     First of all, WebmindTM starts with two low-level "perceptual" modules: one containing nodes for text processing, another containing nodes for numerical data processing. Text and numbers are WebmindTM'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, WebmindTM 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.  WebmindTM does not have a separate "natural language system" as such. Language processing is carried out by the Lineal Awareness system, and nodes concerned with categorization, and mobile agents concerned with recognizing similarity and other relationships, in a way that is thoroughly integrated with the Psynet. To disentangle language from thought is to remove most of what is interesting and important about language.
     The first part of WebmindTM's language understanding is linguistic categorization, which is carried out by category nodes according to the normal dynamics of the Psynet. WebmindTM'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 WebmindTM has been exposed to.
     The Webmind 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 resolving ambiguities in 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. WebmindTM'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 WebmindTM 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, creating a 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 WebmindTM 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.  This is a close analogy to how thinking works in the human brain, to make sense of information we have to give it meaning in some way.
     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 WebmindTM 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 (a fuzzy set is a group of things that does not always have a sharp or consistent boundary with other things) 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 WebmindTM, 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.  Introspection is also an important feature of human intelligence.
     The actual mechanics of symbol grounding is carried out in within WebmindTM 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 genetic algorithm in WebmindTM 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. There are people with this problem, too, but they have a hard time functioning outside of institutions.  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.  WebmindTM contains node-resident and mobile agents whose specific purpose is to carry out this dynamic of building new links from old.
    Reasoning allows WebmindTM to extend conclusions from grounded domains to ungrounded domains. For example, if WebmindTM 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 -- WebmindTM's analogue of the parts of the brain performing cross modal 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.  WebmindTM'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 WebmindTMä to do one thing the human mind cannot: carry out hundreds or thousands of simultaneous trains of thought, and keep them all straight!
     Finally, WebmindTM contains a social module, with specialized nodes mediating its interaction with humans and with other WebmindTMs. UserNodes representing human users are an essential part of the user-interaction system, allowing WebmindTM to resolve ambiguities in questions based on its knowledge of the particular user who asked the question. FriendNodes representing other WebmindTMs are essential in the task of figuring out, when the answer to a query is not known, which other WebmindTM to direct the query to. Furthermore, within the same multi-machine Psynet, FriendNodes are needed to control the exchange of nodes between machines (each node naturally moving to the machine with whose population it shares the most meaning).
     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.