General Intelligence and Seed AI is ©2001 by Singularity Institute for Artificial Intelligence, Inc.  All rights reserved.

Next: 1: Paradigms Bookmark
Up: General Intelligence and Seed AI Monolithic
Prev: Preface


Executive Summary and Introduction

Please bear in mind that the following is an introduction only.  It contains some ideas which must be introduced in advance to avoid circular dependencies in the actual explanations, and a general summary of the cognitive architecture so you know where the ideas fit in.  In particular, I am not expecting you to read the introduction and immediately shout:  "Aha!  This is the Secret of AI!"  Some important ideas are described, yes, but just because an idea is necessary doesn't make it sufficient.  Too many of AI's past failures have come of the trophy-hunting mentality, asking which buzzwords the code can be described by, and not asking what the code actually does.
This document is about general intelligence - what it is, and how to build one.  The desired end result is a self-enhancing mind or "seed AI".  Seed AI means that - rather than trying to build a mind immediately capable of human-equivalent or transhuman reasoning - the goal is to build a mind capable of enhancing itself, and then re-enhancing itself with that higher intelligence, until the goal point is reached.  "The task is not to build an AI with some astronomical level of intelligence; the task is building an AI which is capable of improving itself, of understanding and rewriting its own source code.  The task is not to build a mighty oak tree, but a humble seed."  (From 1.1: Seed AI.)

General intelligence itself is huge.  The human brain, created by millions of years of evolution, is composed of a hundred billion neurons connected by a hundred trillion synapses, forming more than a hundred neurologically distinguishable areas.  We should not expect the problem of AI to be easy.  Subproblems of cognition include attention, memory, association, abstraction, symbols, causality, subjunctivity, expectation, goals, actions, introspection, caching, and learning, to cite a non-exhaustive list.  These features are not "emergent".  They are complex functional adaptations, evolved systems with multiple components and sophisticated internal architectures,  whose functionality must be deliberately duplicated within an artificial mind.  If done right, cognition can support the thoughts implementing abilities such as analysis, design, understanding, invention, self-awareness, and the other facets which together sum to an intelligent mind.  An intelligent mind with access to its own source code can do all kinds of neat stuff, but we'll get into that later.

Different schools of AI are distinguished by different kinds of underlying "mindstuff".  Classical AI consists of "predicate calculus" or "propositional logic", which is to say suggestively named LISP tokens, plus directly coded procedures intended to imitate human formal logic.  Connectionist AI consists of neurons implemented on the token level, with each neuron in the input and output layers having a programmer-determined interpretation, plus intervening layers which are usually not supposed to have a direct interpretation, with the overall network being trained by an external algorithm to perform perceptual tasks.  (Although more biologically realistic implementations are emerging.)  Agent-based AI consists of hundreds of humanly-written pieces of code which do whatever the programmer wants, with interactions ranging from handing data structures around to tampering with each other's behaviors.

Seed AI inherits connectionism's belief that error tolerance is a good thing.  Error tolerance leads to the ability to mutate.  The ability to mutate leads to evolution.  Evolution leads to rich complexity - "mindstuff" with lots of tentacles and interconnections.  However, connectionist theory presents a dualistic opposition between stochastic, error-tolerant neurons and the crystalline fragility of code or assembly language.  This conflates two logically distinct ideas.  It's possible to have crystalline neural networks in which a single error breaks the chain of causality, or stochastic code in which (for example) multiple, mutatable implementations of a function point have tweakable weightings.  Seed AI strongly emphasizes the necessity of rich complexity in cognitive processes, and mistrusts classical AI's direct programmatic implementations.

However, seed AI also mistrusts that connectionist position which holds higher-level cognitive processes to be sacrosanct and opaque, off-limits to the human programmer, who is only allowed to fool around with neuron behaviors and training algorithms, and not the actual network patterns.  Seed AI does prefer learned concepts to preprogrammed ones, since learned concepts are richer.  Nonetheless, I think it's permissible, if risky, to preprogram concepts in order to bootstrap the AI to the point where it can learn.  More to the point, it's okay to have an architecture where, even though the higher levels are stochastic or self-organizing or emergent or learned or whatever, the programmer can still see and modify what's going on.  And it is necessary that the designer know what's happening on the higher levels, at least in general terms, because cognitive abilities are not emergent and do not happen by accident.  Both classical AI and connectionist AI propose a kind of magic that avoids the difficulty of actually implementing the higher layers of cognition.  Classical AI states that a LISP token named "goal" is a goal.  Connectionist AI declares that it can all be done with neurons and training algorithms.  Seed AI admits the necessity of confronting the problem directly.

In the human brain, there's at least one multilevel system where the higher levels, though stochastic, still have known interpretations: the visual processing system.  Feature extraction by the visual cortex and associated areas doesn't proceed in a strict hierarchy with numbered levels (seed AI mistrusts that sort of thing), but there are definitely lower-level features (such as retinal pixels), mid-level features (such as edges and surface textures), and high-level features (such as 3D shapes and moving objects).  Together, the pixels and attached interpretations constitute the cognitive object that is a visual description.  It's also possible to run the feature-extraction system in reverse, activate a high-level feature and have it draw in the mid-level features which draw in the low-level features.  Such "reversible patterns" are necessary-but-not-sufficient to memory recall and directed imagination.  Memory and imagination, when implemented via this method, can hold rich concepts that mutate interestingly and mix coherently.  A mental image of a red sausage can mutate directly to a mental image of a blue sausage without either storing the perception of redness in a single crystalline token or mutating the image pixel by independent pixel.  David Marr's paradigm of the "two-and-a-half dimensional world", multilevel holistic descriptions, is writ large and held to apply not just to sensory feature extraction but to categories, symbols, and other concepts.  If seed AI has a "mindstuff", this is it.

Seed AI also emphasizes the problem of sensory modalities (such as the visual cortex, auditory cortex, and sensorimotor cortex in humans), previously considered a matter for specialized robots.  A sensory modality consists of data structures suited to representing the "pixels" and features of the target domain, and codelets or processing stages which extract mid-level and high-level features of that domain.  Sensory modalities grant superior intuitions and visualizational power in the target domain, which itself is sufficient reason to give a self-modifying AI a sensory modality for source code.  Sensory modalities can also provide useful metaphors and concrete substrate for abstract reasoning about other domains; you can play chess using your visual cortex, or imagine a "branching" if-then-else statement.  Sensory modalities provide a source of computational "raw material" from which concepts can form.  Finally, a sensory modality provides intuitions for understanding concrete problems in a training domain, such as source code.  This makes it possible for the AI to learn the art of abstraction - moving from concrete problems, to categorizing sensory data, to conceptualizing complex methods, and so on - instead of being expected to swallow high-level thought all at once.

Sensory modalities are the foundations of intelligence - a term carefully selected to reflect necessity but not sufficiency; after you build the foundations, there's still a lot of house left over.  In particular, a codic modality does not write source code, just as the visual cortex does not design skyscrapers.  When I speak of a "codic" sensory modality, I am not extending the term "sensory modality" to include an autonomous facility for writing source code.  I am using "modality" in the original sense to describe a system almost exactly analogous to the visual cortex, just operating in the domain of source code instead of pixels.

Sensory modalities - visual, spatial, codic - are the bottom layer of the AI, the layer in which representations and behaviors are specified directly by the programmer.  (Although avoiding the crystalline fragility of classical AI is still a design goal.)  The next layer is concepts.  Concepts are pieces of mindstuff, which can either describe the mental world, or can be applied to alter the mental world.  (Note that successive concepts can be applied to a single target, building up a complex visualization.)  Concepts are contained in long-term memory.  Categories, symbols, and most varieties of declarative memory are concepts.  Concepts are more powerful if they are learned, trained, or otherwise created by the AI, but can be created by the programmer for bootstrapping purposes.  (If, of course, the programmer can hack the tools necessary to modify the concept level.)  The underlying substrate of the concept can be code, assembly language, or neural nets, whichever is least fragile and is easiest to understand and mutate; this issue is discussed later, but I currently lean towards code.  (Not raw code, of course, but code as it is understood by the AI.)

Concepts, when retrieved from long-term memory, built into a structure, and activated, create a thought.  The archetypal example of a thought is building words - symbols - into a grammatical sentence and "speaking" them within the mind.  Thoughts exist in the RAM of the mind, the "working memory" created by available workspace in the sensory modalities.  During their existence, thoughts can modify that portion of the world-model currently being examined in working memory.  (Not every sentence spoken within the mind is supposed to describe reality; thoughts can also create and modify subjunctive ("what-if") hypotheses.)  Thoughts are identified with - supposed to implement the functionality of - the human "stream of consciousness".

The three-layer model of intelligence is necessary, but not sufficient.  Building an AI "with sensory modalities, concepts, and thoughts" is no guarantee of intelligence.  The AI must have the right sensory modalities, the right concepts, and the right thoughts.

Evolution is the cause of intelligence in humans.  Intelligence is an evolutionary advantage because it enables us to model, predict, and manipulate reality, including that portion of reality consisting of other humans and ourselves.  In our physical Universe, reality tends to organize itself along lines that might be called "holistic" or "reductionist", depending on whether you're looking up or looking down.  "Which facts are likely to reappear?  The simple facts.  How to recognize them?  Choose those that seem simple.  Either this simplicity is real or the complex elements are indistinguishable.  In the first case we're likely to meet this simple fact again either alone or as an element in a complex fact.  The second case too has a good chance of recurring since nature doesn't randomly construct such cases."  (Robert M. Pirsig, "Zen and the Art of Motorcycle Maintenance", p. 238.)

Thought takes place within a causal, goal-oriented, "reductholistic" world-model, and seeks to better understand the world or invent solutions to a problem.  Some methods include:  Holistic analysis:  Taking a known high-level characteristic of a known high-level object ("birds fly"), and using heuristics (thought-level knowledge learned from experience) to try and construct an explanation for the characteristic; an explanation consists of a low-level structure which gives rise to that high-level characteristic in a manner consistent with all known facts about the high-level object ("a bird's flapping wings push it upwards").  Causal analysis:  Taking a known fact ("my telephone is ringing") and using heuristics to construct a causal sequence which results in that fact ("someone wants to speak to me").  Holistic design:  Taking a high-level characteristic as a design goal ("go fast"), using heuristics to reduce the search space by reasoning about constraints and opportunities in possible designs ("use wheels"), and then testing ideas for specific low-level structures that attempt to satisfy the goals ("bicycles").

Both understanding and invention are fundamentally and messily recursive; whether a bicycle works depends on the design of the wheels, and whether a wheel works depends on whether that wheel consists of steel, rubber or tapioca pudding.  Hence the need for heuristics that bind high-level characteristics to low-level properties.  Hence the need to recurse on finding new heuristics or more evidence or better tools or greater intelligence or higher self-awareness before the ultimate task can be solved.  Solving a problem gives rise to lasting self-development as well as immediate solutions.

When a sufficiently advanced AI can bind a high-level characteristic like "word-processing program" through the multiple layers of design to individual lines of code, ve can write a word-processing program given the verbal instruction of "Write a word-processing program."  (Of course, following verbal instructions also assumes speech recognition and language processing - not to mention a very detailed knowledge of what a word-processing program is, what it does, what it's for, how humans will use it, and why the program shouldn't erase the hard drive.)  When the AI, perhaps given a sensory modality for atoms and molecules, can understand all the extant research on molecular manipulation, ve can work out a sequence of steps which will result in the construction of a general nanotechnological assembler, or tools to build one.  When the AI can bind a high-level characteristic like "useful intelligence" through the multiple layers of designed cognitive processes to individual lines of code, ve can redesign vis own source code and increase vis intelligence.

Developing such a seed AI may require a tremendous amount of programmer effort and programmer creativity; it is entirely possible that a seed AI is the most ambitious software project in history, not just in terms of the end result, but in terms of the sheer depth of internal design complexity.  To bring the problem into the range of the humanly solvable, it is necessary that development be broken up into stages, so that the first stages of the AI can assist with later stages.  The usual aphorism is that 10% of the code implements 90% of the functionality, which suggests one approach.  Seed AI adds the distinction between learned concepts and programmer-designed concepts.  If so, the first stage might be an AI with simplified modalities, preprogrammed simple concepts, low-level goal definitions, and perhaps even programmer-assisted development of the stream-of-consciousness reflexes needed for coherent thought.  Such an AI would hopefully be capable of manipulating code in simple ways, thus rendering the source code for concepts (and in fact its own source code) subject to the type of flexible and useful mutations needed to learn rich concepts or evolve more optimized code.  The skeleton AI helps us fill in the flesh on the skeleton.

...
..
.

Have you got all that?

Good.

Take a deep breath.

We're ready to begin.


Next: 1: Paradigms
Up: General Intelligence and Seed AI
Prev: Preface