Thematic Intelligence Revised AI Theory by Kevin MotzDownload the .PDF version of this page |
Introduction
As the title suggests, this is a revised version of an earlier theory I
wrote. There have been some major changes to the original structure of the machine, but I
have retained many of the ideas presented before. There has been some clarification and
refinement on the earlier ideas. I also have named this theory after the Thematization
Matrix which I consider to be the most important part of the theory. I will still call my
machine the Android Control Unit or ACU for short.
ACU Processes
Fig.1 shows the major processes of the ACU and thier relationship
to each other.The arrows indicate data flow. |
Mediation-This is the decision making part of the
ACU. Control signals to other parts of the ACU are formed here. Other functions of the
mediation process include, sensory and conceptual learning using loci of learning rules,
syntactic scene analysis is used to faciliate iconic and symbolic linking and for
formulation of return action and symbolic relations.
Visualization-visualization is accomplished with the
syntactic scene analysis processor under the control of the heuristic processor.
Representation-representation is not a hardware setup
or a programming scheme but is a result of the two. For instance when a sensory input is
fixed into the neural net, the code given to the input is a representation of the input.
The data stream from the thematization processor is a representation of the environment
around the ACU itself. Representation is also part of the return action initiation and
takes the form of subsumption routines.
Pattern Fixing-pattern fixing is the process of learning in
the neural nets and in long term memory.
Communication-Efferent communication is in the form of
vocalization or motorization. This occurs through the return action initiator.
Afferent communication is the environmental effects on the sensors of
the android. This occurs through the sensors and the neural nets.
Concepts The most basic type of concept is the output of the neural nets which is a generalized representation of the environment around the android. This kind of concept is an 'elementary' concept. An elementary concept can take two forms: |
The spatial and temporal relationships can be directly infered from
the thematization matrix. Temporal concepts are infered from the row they are in in the
thematization matrix. Spatial concepts are infered from the sensory registration data and
imply temporal relationships since objects in the same general space can be assumed to be
there at the same time.
A concept which is a part of what it stands for such as a motor act is
known as a 'signifier'. When a concept is symbolically linked to what it represents,such
as spoken or written language it is known as a 'distinct signifier'.
When concepts are linked together with spatial or temporal lables they
become 'abstract concepts'.
Abstract concepts are used to build heuristic rules in the heuristic
processor. Abstract concepts can be signifiers or distinct signifiers or any combination
of both. Abstract concepts take the following forms:
Spatial and temporal relations can again be infered from the thematization matrix or from other concepts. The functional relations are LEARNED relations and therefore take longer to form. |
Figure 2 shows the block diagram of the ACU. The boxes labeled Visual, Audio and Tactile are the respective sensors and the analog to digital conversion circuitry of each sense. The output of these are sent to the Iconic Processor where preliminary processing is done.
Some of the processing done in the Iconic Processor is: Threshold Detection-this process is very important for reflexive actions in the ACU. It detects when an input is above a certain threshold and triggers the associated reflex. Blob detection-this is a visual process and detects multiple items in the visual field. Also creates a visual register map for each item. Visual saccades-when the multiple items are detected by the former process this process jumps from one to the next in a predetermined order. This is because the neural nets are trained on items that are centered in the visual field so they have to be centered in the visual field to be identified. |
Multi-Modal Infromation-Sensory registration maps for each sense are
continuosly updated by the Iconic Processor for use in other parts of the ACU.
Iconic Imaging-This is the process of manipulating
actual sensory inputs,such as a visual picture that has been percieved or retreived from
long term memory.
After processing in the Iconic Processor the sensory input data is sent to the neural
nets. The neural nets are N-Tuple classifiers that output a classification lable and
confidence in the form of a percentage for each given input.
The output of the neural nets goes to the Heuristic Processor.
Heuristic means'rule of thumb' which is how this part of the ACU operates, on rules of
thumb in the form of if-then declarative statements. This is the main decision making part
of the ACU.
The output of the Heuristic Processor is sent to the Return Action
Initiator. This is where output actions of the ACU are formed. The Return Action Initiator
(or RAI for short) is a subsumption processor. Basic output is in the form of 'reflexive
movements'. More complicated movements are composed of collections of these 'reflexive
movements'. They are called 'complex movements' Output actions are sent to the Effectors
which are stepper motors or air muscles or whatever is used to move the android around.
The Interoreceptors are internal sensors which are attached to the
effectors and various other internal parts of the android.They are used for feedback to
the RAI.Another important role of the Interoreceptors is the 'Mechorythym'. This variable
determines the speed or 'urgency' of any action that is undertaken by the ACU. It is tied
to the battery charge and can be triggered into a faster state by reflex routines.
The Long Term Memory contains all the knowledge of the ACU and is
shared by the Iconic and Heuristic processors. The Iconic and Heuristic Processors also
share some of the same variables. Access to the Long Term Memory is prioritized with the
Heuristic Processor getting precidence.
The line going from the Heuristic Processor to the Neural Nets is the
neural net teach line. This is what fixes the patterns in the neural nets to gain
experiance. The line going from the Iconic Processor to the Heuristic Processor is the
Multi-Modal registration line.
ACU variables
The ACU uses certain variables in its operation. These variables are global in that they are used by more than one part of the ACU. Some of these variables are as follows:
Visual: Frame Store-Array Visual Registration-Area,Percentage Neural Net Classification-Lable, Percentage Blobs-Area |
Audio: Tone Store-Frequency vs Time Graph Audio Registration-Inter Aural Intensity Graph Neural Net Classification-Label,Percentage |
Tactile: Tactile Registration-Area,Percentage Neural Net Classification-Label,Percentage |
Interoreceptors: Effector feedback Battery Charge Mecho-rythym,function of battery charge and reflexive behaviors. |
Iconic Processor
The Iconic Processor prepares the sensory data in ways that other parts
of the ACU need for thier function. Much of the learning process in the ACU begins in the
Iconic Processor or IP.
One of the functions of the IP is Threshold detection. The threshold
value works on two levels. The first is when a certain threshold is surpased by sensory
data it can trigger attending patterns. The attending pattern that is called is the All or
None pattern. This pattern focuses attention on the presence or absence of data in the
sensory field. One of the functions of the all or none pattern is the Blob Detector. This
is a visual data process. What it does is detect large contiginous objects in the field of
vision and mark its place in a data matrix. One of the ways it picks out large contigious
objects is by finding areas of maximum contrast. Multiple objects are then centered in the
field of view by succesive visual saccades.
This is done because the Neural Nets are
trained with the field of vision centered on the object of interest and to recognize an
object it has to be centered on the object. Also if the object is unknown it is centered
in the field of view for neural net training. This is actually a part of the attention
mechanism. Since various parts of the ACU are at any one time competing for resources, the
visual saccades can be subsumed by other parts of the ACU. The other level that Threshold detection works is on a hardware level. When a certain level is surpassed in a sensory value it can call a reflex action.This is a direct subsumtion routine calling action. This can be equated with a painful sensation in a biological entity. Another function of the IP is Multi-Modal sensory infromation. This is the data matrix that marks the location of objects in the field of view. Other senses also have sensory modal maps. These maps are all 'registered' with each other.In this way if only a sound is heard the direction of the sound can tell the ACU which way to look. |
The Multi-Modal infromation is also registered in time with the associated sensory data. This would tell the ACU that the top of a tall object is 'up' for example (See sensory registration next section).
The IP would also store and manipulate sensory data frames. This is for the purpose of 'visualizing' and is known as syntactic scene analysis. This process is used to plan out complex actions that may not be allready present as subsumtion routines. Can also build new complex actions in the RAI.
Sensory Registration
Each sense(Visual,Audio and Tactile)Has a registration Scheme.This means they are
spatially oriented to each other.The visual field is divided into different areas that are
1/4 of the total visual field.The following pictures detail how they are arranged... |
The tactile registration takes the form of an appendage
mapping for whatever form the android may take on. There is also a registration for the interoreceptors such as the joint position, air pressure, battery charge and the effector stretch. These registrations could be most responsable for the androids feeling of 'self' as they are personal to the androids physical being. Partitioning the sensory fields in this way allows the Iconic processor to lable each item identified in the sensory field with a spatial lable that allows subsequent areas of the ACU to determine the aproximate area the items are in. |
Neural Nets
The Neural Nets are networks of memory elements which classify patterns presented to them
in a binary matrix. It is known as the N-Tuple method. The network is constructed as in
Fig.8.
Each memory element has an N-Bit address
field. In this case N=4 Each memory element samples its N-Tuple of subpattern in the
binary matrix, and this is the address for each memory element. I will use SRAM's for my
experimental robot. Each layer of memory elements covers the binary matrix once and is
known as a discriminator. The formula for finding the amount of storage required for each discriminator is S=(X*Y/n)*2EXPn, where X= horizontal resolution Y=vertical resolution and n is the N-Tuplesize.
|
There are as many discriminators as possable, each one being 'trained' on a representative set of subpatterns from a different class of data. During a training cycle the subpattern is presented to the desired discriminator then the data in terminals are set to logical '1'.
During a 'use' cycle the binary matrix accesses a subpattern in each
discriminator. The data outputs of the ram's in each discriminator are summed and the
discriminator with the highest output is said to classify the data. The response of the
discriminators is in the form of a percentage of the total possable responses:
Rj=Cj/K%
Where Rj is the response of the jth discriminator, Cj is the integer
response of the jth discriminator and K is the number of data outputs in the
discriminator.
Present situation
The outputs of the neural nets and thier respective sensory
registrations are placed into a data matrix called the 'Present Situation'. This data
matrix is a representation of the environment around the ACU as depicted by the neural
nets. From this present situation data matrix a return action or some other form of
processing is determined.
As the ACU carries out it actions,the
environment around the ACU changes from the actions of the ACU's effectors or outside
influences. When there is a large change in the data stream from the neural nets the
present situation data matrix is updated. The older present situation data is placed into
the Thematization Matrix.
Thematization Thematization is the process of organizing and relating experiance in the long term memory of the ACU. The Thematization Matrix makes this process almost automatic and saves a large amount of computation. It also makes the process more 'natural' and 'lifelike'. The sensory input data is put into data storage matrix's in a regular pattern. Certain constants can be 'infered' about the data in these matrix's and how that data is received. These inferences can be used to build a knowledge base in the long term memory of the ACU. |
1-Neural Net Loci of Learning rules are used for pattern
fixing in the neural nets.These rules work off of the data in the thematization matrix.
2-Inference rules are used on the thematization matrix
to build knowledge frames in long term memory-3.
Note: The thematization matrix can be thought of as short
term memory in the ACU.
The thematization matrix receives the perceptual input data in a constant stream from the present situation data matrix. As you can see from Fig.10 the thematization matrix can be thought of as rows and columns in memory. The columns are each related to a different sensory input. The rows are slices in time of the input data stream.Inferences can be drawn from the relationships of different 'cells' in the matrix to each other.
|
Spatial relationships are drawn across the rows of the matrix.
Temporal relationships are drawn from the positions of different rows
to each other regardless of the column.
Thematization loci of learning rules:
1-Spatial relation-data that resides on the same row in the
matrix is probably spatially and sensorially related.
2-Temporal 1-a cell that is in a row above another
cell happens 'before' the other.
3-Temporal 2- a cell that is in a row below another cell
happens 'after' the other.
4-Temporal 3-Spatial relation implies a temporal
relation also.
5-If neural net output of one sense is of high
confidence and is different or points to a different knowledge frame than the other
outputs, then concentrate attention on that sense. This is a part of the attention
mechanism.(Discrepency)
Spatial relations are dependant on sensory registration.
Temporal relations are dependant on internal timing.(Mechorytyms).
Neural Net Loci of Learning. The fixing of data in the neural nets
begins in the thematization matrix. This is acomplished with the neural net loci of
learning rules:
*If all senses are of low confidence, then fix input data into the net
and assign an arbitrary lable.
*If one or more sense is of high confidence and the other senses are of
low confidence and the sensory registrations are equal, then fix the low confidence
sensory data and lable with the lable of the high confidence input.
By using the thematization matrix as a process
in the ACU perceptual relationships can be made almost automatically thereby lessening the
computational power needed.
The Heuristic Processor
This is where the mediation process of the ACU occurs. The neural net
output is put into the present situation data matrix. The highest confidence neural net
output is then used to search long term memory for past action scripts in with similar
situations. These scripts are ranked according to similarity and the highest ranking
script is chosen and sent on for further processing.
The heuristic processor takes data from the thematization matrix and
uses it to build 'Knowledge frames'. These frames take the same basic form as the
thematization matrix itself, namely rows and columns. The top row of the knowledge frame
is the identity of the frame. The frame can be recalled by the heuristic processor with
any of its data items (signifiers,distinct signifiers). An example of a knowledge frame
follows:
1.Discrimination of the word 'CAT' 2.Sound a cat makes Aa.Visual input of a cat at rest Ab.Visual input of a cat moving its mouth Ac.Visual input of a pleased cat B.Visual input of a cat with its fur raised |
Horizontally across the frame there is a direct connection between
each slot in the frame. Vertically the connection is symbolic. The top slots in the frame
are the identity of the frame. There is a definate similarity in form between the
knowledge frame and the thematization matrix. Also notice that the identity of the frame,
which would be the earliest instance of the knowledge,is towards the top of the frame.
Recall temporal inference rule #1. This setup works very nicely as you can see.
Inferences can be drawn from the locations of data in the frame. For
instance, if the android only hears the cat (Meow2) it can scan to the top of the frame
and determine it hears a cat. It can also scan horizontally across the frame and load an
iconic image of a cat or scanning horizontally and vertically be fairly certain it would
not get bit.
Knowledge frames are further organized into scripts. The input data
stream to the thematization matrix can be thought of as an 'unstructured' script. Once
this data has been experianced and assimilated into the long term memory of the ACU it is
a 'structured' past action script. Scripts do not contain entire knowledge frames, only
the neural net classification data that was used in the creation of the script is used.
The knowledge frames are recalled for more detail when necessary.
Declarative statements take the following general form:
FOR(signifier)IF(anticedent)THEN(consequent)
There can be as many antecedents and consequents as needed linked
together with logical operators (AND,OR,Etc..) Consequents can also be chained together as
such:
---->THEN(Consequent) THEN (Consequent) etc..
The consequent side can also be empty or null or point to another
statement.
The heuristic processor takes the highest confidence neural net data
from the present situation data matrix and search's long term memory for similar past
action scripts. The resulting list of past situations is ranked according to the amount of
similarity to the present situation. The highest ranking script is chosen as the one to
use.
The result of this action is compared against
the internal state diagram to determine if it was a 'good or bad' action. For instance if
the action resulted in a beneficial result to the android (such as a battery charge) then
the script is kept. If it results in a non-beneficial result (such as bumping into a wall)
then the script is discarded.
The most important script in the ACU is the 'Root script'. This is the actual program of the android of what the owner wishes it to do. It is composed of duties and actions to be performed in its everyday routine. These duties and actions are themselves composed of scripts that detail the actions necessary to perform these duties. One root script that should possably be included in every android is the 'Three laws of robotics' created by Issac Asimov (I won't repeat them here).
If there is no past action script a reflex behavior is tried. Possable reflex behaviors
could be...Curiousity(always), Feed(when hungry), Jump(when startled), Run(when scared).
If there is no reflex situation then a genetic algorythym is applied to the present
situation script. The internal state diagram is used as a fitness test for the result. The
consequent of the chosen past action script or reflex action script is sent to the Return
action initiator.
The Return Action Initiator
An android would be built with a certain number of effector
mechanism's. In the case of the effectors being air muscles of the McKibben type, each
muscle would have three states Fill, Empty and Hold. The control signals to the air valves
are created by the RAI mcu's. These signals would be pulsed by the mechorythym which
controls the rate of fill or empty of the muscles.
The effectors are grouped together by anatomical location, such as
Hand, Forearm, Upper arm, etc..Each group of effectors has its own MCU controlling them.
All of the mcu's are conected together by an I2C data bus. This
bus carries control signals from the mcu's to the effectors. It also carries interorecptor
infromation from the mcu's to the heuristic processor. Control signals take the following
form: Right Hand : Open The mcu for the right hand takes this command and forms the necessary control signals to the individual effectors of the right hand. The heuristic processor can also control subgroups of larger groups of effectors as follows: Right Index Finger : Extend |
The mcu for the right hand would take this signal and form the necessary control signals to the effectors of the right index finger. Each effector and joint would have a feedback sensor to create a sensory registration map for the appendages of the android.
Interoreceptors and Mechorythym
There are several different kinds of interoreceptors which are important to providing
internal infromation of the android to the ACU.
Effector strech:
In the case of McKibben air muscles being used as effector organs, a resistive strech
sensor is used to determine the amount of extension or retraction of the effectors.
Air pressure:
When McKibben air muscles are uesd for effectors, a source of compressed air is needed. A
way of detecting system air pressure is used to determine operating efficiency. This
reading is also used for the internal state diagram and to determine the mechorythym.
Joint position:
Resistive bend sensors are used on the joints to give a positional reference of the
androids appendages. These readings are very important for sensory registration and as a
feedback loop to the heuristic processor.
Battery charge:
As in the air pressure reading this reading is used for calculating
mechorythym and in the internal state diagram.
gegobyte@aol.com