Introduction toGeneral Artificial Intelligence using Software
ContentsQuick View 3Current AI Limitations 8GAIuS Advantage 10Overview 15Representations of Concrete or Abstract Objects 18Composite Vectors and Canonical Vector Pursuit 29Sequencing, Beliefs, and Prediction 39GAIuS Framework 46GAIuS Decisions & Actions 60Meta-Knowledge Operations 71Configurations & Topologies 76Appendix 1 Qualitative Comparisons 83Appendix 2 Planned Future Work 89
Black Box Intelligence Attach Any GetApplication Answers COMMAND &MULTIPLE-SOURCE CONTROL UNSTRUCTURED PREDICTIONS NON-LINEAR DECISIONS DATA INFORMATION KNOWLEDGE Agent
Peeking Inside the Black Boxny Oucation P M Ans P P M P M P M CTURED COM INEAR PATA CON Configured by dials, switches, and topologies.
Internal Connections DataSource Op erato 1 r Op erato r Structured P Operator Predictions (Primitive) & Other Data Operat or InformationSource NManipulatives operate & feed data to Primitives.
Diving Inside a Primitive Time Time Action Independent Dependent Knowledge Knowledge Knowledge Base Base Base Sequencer Observer Associator Classifier Decider Actor Predictor
Overview or Decider Agent Predictor Sequencer Classifier Actor AssociatorSit! Observer Input Utility Output Sit!
Current AI LimitationsJournal of Experimental and Theoretical Artificial Intelligence: “Only after extensive hand-coding is completed is the representation allowed to be manipulated by the machine.”Scientific American: “Given even a simple problem, just slightly beyond AI program expertise, it would usually get a wrong answer, without any recognition that it was outside of its range of competence.”
Current AI LimitationsWhat current applications do not have:✦ Requires manually pre-solving the problem and pre- programming the solution.✦ Requires manually structuring the data.✦ Unable to share knowledge or representations.✦ Any changes require new manually written code.✦ Skate to where the “puck” is now, rather than where the “puck” will be. (Cannot predict non-linear data.)
GAIuS AdvantageAdvantage Overview✦ Has Universal Application✦ Maintains Domain Independence✦ Transparently Resolves Problems✦ Requires No Initial Pre-Programming
GAIuS AdvantageHas Universal Application✦ Framework able to create intelligent applications capable of sharing knowledge and representations.✦ Able to process unstructured and non-linear data.✦ Adapts to its environment.✦ Automates many coding requirements.✦ End-users able to intuitively train.✦ Agents can benefit from automated improvements (e.g. genetic algorithms).
GAIuS AdvantageMaintains Domain Independence ✦ No commingling of AI and Application code. ✦ Application Developers need not be AI experts. ✦ AI can be revised without modifying application. ✦ Application can be revised without modifying AI. ✦ AI revisions can be transparently shared between applications. ✦ Open source model drives rapid improvements.
GAIuS AdvantageTransparently Resolves Problems ✦ High-level command and control output constructed from low-level percepts extracted from the application environment. ✦ Experienced-based and self-modeling through positive and negative reinforcement. ✦ Support for hierarchical, network, or hybrid structures to associate or classify objects. ✦ Support for both time-independent and time- dependent representations. ✦ Support for meta-knowledge “plug-in” modules.
OverviewFramework✦ Behavior “programmed” by choosing configuration values and graph topologies for agent.✦ DNA-like configuration parameters are saved as a “genome”.✦ Procedurally extracts and processes knowledge from data.✦ Modular elements can be connected in many ways. ✦ Nodes (“primitives”) always process data in the same way and retain all learned knowledge. ✦ Edges (“manipulatives”) are operators on data. Each edge can be a different operation.✦ Different connection pathways provide different procedures.
OverviewFramework (continued)✦ Genome can be evolved using Genetic Algorithms to automate creation of new agents or improve existing ones.✦ This can automatically create novel information processing pathways that are useful in the agent’s environment.✦ Multiple supporting processes. ✦ Consolidates and cleans gained knowledge. ✦ Discovers new information pathways. ✦ Switches agents between different “growth” stages. ✦ Reduces processing on useless nodes.
OverviewInformation Extraction & Processing✦ 1. Observe the environment. ✦ Input manipulatives provide data. ✦ Utility manipulatives provide usefulness information.✦ 2. Classify the observation. ✦ Choice between pre-built or custom classifiers.✦ 3. Sequence the classes. ✦ Find what’s the important sequence and memorize it.✦ 4. Predict what’s happening or what’s coming next. ✦ Pattern search against known situations.✦ 5. Act or React to the prediction by deciding on best action to take. ✦ Output manipulatives
Representations of Concrete or Abstract Objects
GKR RepresentationStrings: Examples:✦ Any input object string is converted to a “GKR” object. “apple” “hat”✦ Contains frequency, association, predecessor, “cat” and successor information. “October” “cacophony”✦ All other knowledge representations inherit “Argentina” from the GKR class. “sunset”
VectorObject RepresentationVector: = <shape: >✦ Can represent any perceived object.✦ Classifies object ? through unique and = distinguishing detail. = <shape: , color: > = <shape: , color: >
SequenceObject RepresentationSequences:✦ Uses the string names of time-independent representations to build time-dependent sequences.✦ Objects in each event are grouped together.✦ Events are sequenced in time.✦ Concept of an apple includes sequence of growth, ripening, falling from tree, being eaten, decay, etc.
VectorObject RepresentationVector Name: object1 =Uniquely derived by <shape: ,hashing vector. color: > ✦ vectorHash(v1) = “object1” ✦ vectorHash(v2) = object4 = “object4” <shape: ,✦ Vector names are substitutions for vectors. color: >✦ Symbolic manipulations are done on names.
Vector Deﬁnitions✦ Component: Smallest vector that describes an object or part of an object.✦ Composite: Vector comprised of two or more components.✦ Canonical Vector Pursuit (CVP): Real-time ICA algorithm able to decompose composite vectors into component vectors for use in object discovery and recognition.
Vector Deﬁnitions✦ Hyperblobs: “Grouping” of similar vectors that do not need to be contiguous. Used in environments with uncertainties in values.✦ Hyperblob Categorization (HC): Generalized equivalent to Support Vector Machines (SVM) where any vector within a group is replaced by a canonical vector that represents that group.
Hyperblob Knowledge Base ✦ Blob: Represents a concept.A ✦ Enhanced SVM: Able to support unlimited number of classifications. ✦ Shape: Hyperblob is sculpted by sequence. B ✦ Conversion: Any vector in a blob can be C replaced by its canonical vector.
Composite VectorsComposite Vectors:Created when a sensor isincapable of separatingperceived objects.Example: Separating voicedata from backgroundnoise.
Canonical Vector PursuitCVP: Proprietary real-time IndependentComponent Analysis (ICA) method to distillperceived composite vectors into componentvectors.Vector Knowledge Base
Canonical Vector PursuitComposite Vector:Comprised of component vectors.Percepts:Form components into resultant Resultant vector is avector. composite of known vectors. Vector Knowledge Base Multi- dimensional coordinate system. All known vectors have positive lengths.
Canonical Vector PursuitVector Arithmetic:Decomposes compositevector into itscomponents. Vector Knowledge Base
Canonical Vector PursuitVector Sum:Components must fit thecomposite from head to tail. Vector Knowledge Base
Canonical Vector PursuitIDDFS:Iterative-Deepening Depth-First Search interrogatesknowledge base to locate bestvector match. Vector Knowledge Base
Canonical Vector PursuitAuto Search: New object vectorEvent Vector launches search forVector Set having positive vectorLengths closest to the Null-vector.New Object Discovery:Difference between Event Vectorand set of Known Vectors.Auto Insertion:New Object Vector added into Known object vectorsVector KB.
Canonical Vector PursuitVector Collision:Composite vector can beformed by multiple paths ofknown vectors. Vector Knowledge Base
Canonical Vector PursuitRich Contexting:Expands vector basedefinitions to moreuniquely define objects.Increases multi-dimensional space toreduce the potential ofvector collisions.
Sequencing, Beliefs, Prediction, and Reinforcement Learning
Prediction Criteria of Intelligence✦ Intelligence: Gauged by Sit! trainability of breed.✦ Anticipation: Decisions based on what will happen instead of what has happened.
Prediction Criteria of Intelligence✦ Prior Events: Action Sequencing enables prediction. Sit!✦ Prior Experience: Dog remembers. Sit!✦ Positive Reinforcement: (treat) Dog chooses appropriate t=now t=now+1 t=now+2 action.✦ Prediction = Belief: Time Dog believes it will get a treat if it sits.
Active Sequence Search✦ Discover: Active E1 E2 E3 E4 sequences based upon observed evidence. Current WORLD Sequence✦ Resolve: Incomplete information - missing or extraneous (noise) objects.✦ Analyze: Observe frequency of object and sequencing.✦ Predict: Known sequences create future matching set expectations. Sequence KB
What can it predict?What happens next? Math and physics models use formulas. d = v0 t + ½(at 2 )
Prediction Beyond Physics?What happens next? GAIuS formulas predict the motion of the ball and ...
What Only People Know GAIuS adds thePhysics can’t predict! human knowledge to know a child is chasing the ball.
Primitive Internals WORLD Observer Associator Classifier Sequencer Decider Actor Output ManipulativesInput Manipulatives Time Time Action Independent Dependent KnowledgeUtility Manipulatives Knowledge Knowledge Base Base Base
Manipulative(s) 1 1 Observer Associator Classifier Sequencer Decider Actor 2 3 4 5 6 7Manipulative(s):✦ Codelet - Small file of code from standard library or custom developed.✦ Interface - Application developer data access (external or internal).✦ Raw data - Encoded as a Vector/Object and dispatched to the Observer.✦ Types - Input, Output, Utility, or Combination.
Classiﬁer Classifier 1 Observer Associator Sequencer Decider Actor 1 2 3 4 5 6 7Classifier:✦ Recognizer - Attempts to match incoming objects against known objects in time-independent KB.✦ Discoverer - If object is not matched, inserts as a new a object in time-independent KB.✦ Sourcer - Replaces objects in working memory with richer objects from KB.
Sequencer Sequencer 1 Observer Associator Classifier Decider Actor 1 2 3 4 5 6 7Sequencer:✦ Collator - Utilizes incoming time-independent objects to create time-ordered sequence objects.✦ Memorizer - Stores objects in Sequence KB.✦ Predictor - Matches fragments to known sequences.✦ Comparator - expected and observed.
Decider Decider 1 Observer Associator Classifier Sequencer Actor 1 2 3 4 5 6 7Decider:✦ Evaluator - Weighs expected utilities, frequencies, action costs, action weights, and sequence potentials.✦ Selector - Chooses best action out of all possible futures.
Actor Actor 1 Observer Associator Classifier Sequencer Decider 1 2 3 4 5 6 7Actor:✦ Executor - Invokes the proper Output Manipulative to implement an Action initiated by the Decider.
Primitive Information Source Primitive (source of processed information) ✦ What objects do I know? ? ✦ What objects am I observing now? ✦ What sequences do I know? or What beliefsQuery Manipulative do I have? ✦ What sequences am I observing now? or What do I believe is occurring now? ✦ What is missing or extraneous? ✦ What do I predict will happen next? ✦ How will that affect my utility score? ✦ What actions can I take to improve my overall utility score?
Concept AbstractionsTransformations:Converts low-level Primitivepercepts into high-levelabstractions via systematichierarchical association ofvector and sequenceobjects. Primitive PrimitiveAssociations: Vectoradditions of VectorObjectsand/or time-correlatedobject names. World
Concept Abstractions Primitive Manipulatives interface GAIuSApplication with the world…DeveloperchoosesManipulativesfrom a Primitive Primitive ...otherstandard library Primitives...or creates aunique version. ...and other GAIuS Instances. World
Concept Abstractions Sequence and Primitive association information flows down. Processed Primitive Primitive information flows up.Raw dataflows up. World
Hierarchical Framework “BANANA” Abstract Layer Shape Color Sound World “BANANA”
GAIuS Actions Decider✦ Requires: One or more “output Predictor manipulatives”. Sequencer Classifier Actor✦ Optional: One or Associator more “utility Observer manipulatives”.✦ Uses: “Decider” Output Utility and “Actor” workers.
Output Manipulatives✦ Output Manipulatives: Application developer created functions that define Primitive what actions the AI can make. Output✦ Actions: Contain “weight” and “cost” values.
Utility Manipulatives Decider✦ Emotions. Predictor✦ Provides goals and Sequencer drives. Classifier Actor Associator✦ Positive & Negative Observer reinforcement training mechanism. Output Utility
Decider✦ Processes: Predictions Decider choose the most Predictor favorable outcome. Sequencer✦ Selection: Optimizes Classifier Actor Associator future environment by Observer suggesting best action.✦ Algorithm: Random Output weighting identifies novel alternative actions.
Decider ? Decider✦ Decisions: Predictor Hierarchical nodes Sequencer can overrule Classifier Actor Associator subordinate Observer decisions. Output
Actor Decider Predictor Sequencer✦ Executes actions. Classifier Actor✦ Configurable from risk- Associator Observer averse to risky aggressive. Output
How does Decider know what is the best choice?Evaluator: Interrogates acquiredknowledge about: ✦ What is happening now. ✦ Usefulness of what may happen next.
How does Decider know what is the best choice?Selector:✦ Utilizes prior experience to understandwhat is currently happening.✦ Maximizes internal utility score.
How does Decider know what is the best choice? Matched Sequence Patterns E1 E2 E3 E4 A1 F1 F2 F3 +5 E1 E2 E3 E4 A2 F4 F5 F6 F3 +100 E1 E2 E3 E4 A3 F6 F7 F3 -10 Matched Predicted What Sequence KB E1 E2 E3 E4 Action? Current SequenceWORLD Decision (action weight, action cost, utility value)
How does Decider know what is the best choice?Meta-Knowledge processing✦ Novel Situations: ✦ If there’s no prior experience, then multiple pattern discovery strategies can be employed using OUTPUT manipulatives. ✦ Chosen output relies on the closest known sequence match that has provided the maximum utility in the past. If none exist, the choice becomes random.
What is Meta-Knowledge?✦ Knowledge about knowledge: ✦ Minimizes manually coded solutions. ✦ Generalizes problem-solving strategies.✦ Finite problem-space: ✦ Limited set of operators on SequenceObjects that predict or reason about information.✦ Determined by agent: ✦ what is important ✦ what is unimportant ✦ relationships between knowledge elements.
Meta-Knowledge Example✦ Ex: Sequence_KB contains two similar sequences with the following objects: ✦ Sequence1 = “A,B,C1,D,E,F” with frequency = 15 ✦ Sequence2 = “A,B,C2,D,E,F” with frequency = 5✦ If no other sequences of “A,B,Cx” end with something different from “D,E,F”, then for the purposes of prediction and reasoning, C1 = C2.✦ Therefore, one of the sequences can be dropped and all future observations of C1 or C2 can be equated to, say, “C”.✦ “C” is now considered the canonical vector for all “Cx”- like objects.
Meta-Knowledge Operations✦ Not task specific and finite in number.✦ Consolidates knowledge to reduce the size of the Sequence_KB.✦ Can be hardwired in the genome: ✦ Manually determined. ✦ Via genetic algorithms.✦ Can be set as actions: ✦ Dynamically determines best operator for current situation.
Meta-Knowledge Operations✦ As similar patterns are discovered, successful problem-solving strategies can be shared with other primitives.✦ Problem-Solving via Analogies. Known Sequence in Similar Patterns Primitive 2 with Solution “S” A B B A S A A B +5 What Try “S”! X Y Y X Action? X Current Sequence in and X X Y +5WORLD Primitive 1 predict with unknown futures.
Conﬁgurations✦ Parameters: Primitives and Manipulatives have configurable parameters (dials & switches) that affect the behavior. Ex: ✦ Which classifiers to use? ✦ Length of sequences in working memory? ✦ Time unit duration?✦ Genetic: Values are stored as “genes” that can be evolved using genetic algorithms.
Wiring Primitives✦ Cognition: Primitive pathways are analogous to pathways in the brain.*✦ Pathways: Creating hierarchies and/or networks by connecting primitives with manipulatives.✦ Behavior: Determined by both configuration values of primitives/manipulatives, and connection topologies.✦ Genetic Algorithms: Automation technique to scale wiring of large numbers of primitives. *See Human Connectome Project www.humanconnectomeproject.org.
Wiring PrimitivesAgent: The collectiveconfigurations of primitives and Agentmanipulatives coupled to anapplication.Hierarchy: Lower primitives feedsummarized data into higherlayers.✦ Abstraction increases as it rises in the hierarchy.✦ Understanding increases through wiring optimizations. World
Wiring PrimitivesGlue Manipulatives:✦ Functions as wires.✦ Can operate on data Agent passing through.Higher layer wiring can beautomated.Application Developer:Provides input, output, and utilitymanipulatives. World
Automated Wiring of PrimitivesPros:✦ Eliminates the need to write Agent glue manipulatives.✦ Favorable over manual wiring for complex artifacts.Cons:✦ Behavior may deviate from expectations.Mix-and-Match:✦ Faster development and improved intelligence by combing manual and automated methods
Automated Wiring of Primitives Genetic algorithms evolve artifact intelligence.
Comparisons against ClassiﬁersArtificial Neural Networks Require fixed, pre-determined Vector based time-(ANN) outputs. independent data encompasses infiniteUsed as low-level classification space.classification. Difficult to troubleshoot – no All processing uses known view into hidden layers. mathematical techniques. No hidden layers.Support Vector Machines Limited to binary or binary- Unlimited classification types(SVM) derivative classification types. can co-exist in the same space.Used for low-levelclassification.Bayesian Belief Networks Requires pre-determined low- Builds a causal BBN from(BBN) level classes. low-level classes and time- ordered events.Used for high-levelclassification.
Comparisons against Decision EnginesCognitive Architectures Pre-determined Time-independent and time-(e.g. Soar, ACT-R, Prodigy, representations make dependent representationsIcarus, Theo) assumptions about what is are dynamically created. important data in the world. The framework decides whatUsed for high-level is important data based onreasoning. how the data helps it achieve its goals. Rule-based systems are Real-world data is the source limited by the skills of a of the systems knowledge. knowledge engineer. Require learning a Uses web services to interact programming language with software written in any specific to the architecture. language. Centralized “glass box” Modular knowledge bases knowledge bases require are stored where they are large databases that used. Scaling has minimal negatively affect scaling. impact.
Current AI Limitations Shortcomings of Traditional AI“The traditional approach in artificial intelligence has Chalmers, D.J., French, R.M. And Hofstadter, D.R. been to start by selecting not only a (1992) High-Level Perception, preferred type of high-level representational Representation, and Analogy: A Critique of structure, but also the data assumed to be Artificial Intelligence Methodology. Journal of relevant to the problem at hand. These data Experimental and Theoretical Artificial are organized by a human programmer who Intelligence 4: 189 – 211. appropriately fits them into the chosen representational structure. Usually, researchers use their prior knowledge of the nature of the problem to hand-code a representation of the data into a near-optimal form. Only after all this hand-coding is completed is the representation allowed to be manipulated by the machine. The problem of representation-formation, and thus the problem of high-level perception, is ignored.”“...perceptual processes cannot be separated from other cognitive processes even in principle.”
Current AI Limitations Shortcomings of Traditional AI“...programs that fueled AI hype were not savants but Lenat, Douglas B. “Programming Artificial idiot savants. These so-called expert Intelligence” , Understanding Artificial systems were often right, in the specific Intelligence, Ed. Scientific American. New areas for which they had been built, but they York: Byron Preiss Visual Publications, 2002. were extremely brittle. Given even a simple 23-29 problem just slightly beyond their expertise, they would usually get a wrong answer, without any recognition that they were outside their range of competence.”“Furthermore, these programs could not share their knowledge...Each represented its bit of the world in idiosyncratic and incompatible ways because developers had cut corners by incorporating many task-specific assumptions. This is still the case today.”
Current AI Limitations Shortcomings of Traditional AI“If you understand something in only one way, then Minsky, Marvin. “Will Robots Inherit the Earth” , , you do not really understand it at all. This is Understanding Artificial Intelligence, Ed. because if something goes wrong you get Scientific American. New York: Byron Preiss stuck with a thought that just sits in your Visual Publications, 2002. 131-137 mind with nowhere to go. The secret of what anything means to us depends on how we have connected it to all the other things we know. This is why, when someone learns by rote, we say that they do not really understand. However, if you have several different representations, when one approach fails you can try another.” “...well-connected representations let you turn ideas around in your mind, to envision things from many perspectives, until you find one that works for you. And that is what we mean by thinking!” “In order to think effectively, you need multiple processes to help you describe, predict, explain, abstract and plan what your mind should do next.”
Future Work✦ Near-term: ✦ Create meta-knowledge operators and the manipulatives that use them. Develop agent creation GUI. ✦ Develop and test genetic algorithms for evolving agents. ✦ Create more demos. ✦ Quantitative comparisons against current methods.
Future Work✦ Long-term: ✦ Apply genetic algorithms to a library of developed manipulatives to create higher quality AIs. ✦ Possible automated creation of input, output, and utility manipulatives. ✦ Combining the two above will allow for a self-evolving artificial intelligence.