top of page

CHI-COG theory - How and Why it works

Introduction

 

This page is intended to provide concrete reassurance to the skeptic. I was once an avowed skeptic, and I remember most of the objections I had to the way the entire enterprise of Cognitive Science was run. Hopefully, my memory of those objections is fresh.

 

The results produced by this research are, to a large degree, expected. CHI-COG has produced a design which, considered from an abstract perspective, resembles that of the digital computer. The amazing stuff, like consciousness, was discovered mainly because of due diligence, and is not a result of genius, but of detective work; treating the problem like a 'whodunnit'. A full two thirds of the work involved is working out where other scientists took a wrong turn, or made mistakes, and fixing it up. There is really only one authentic 'genius' moment, comparable to the moment when Einstein realised that, since non-inertial (accelerating) spatial reference frames were equivalent to gravity, space was 'curved'. In this moment, I realised that all words have latent 'path' descriptors, just like files and directories in a hierarchical file system, because they inherit their semantics from a dependency based learning mechanism. This is the only idea which literally popped into my head from 'left field'. The provenance of all the other new concepts can be traced back to lots of reading stuff in libraries, professional expertise, and work experience.

 

For example, consider the robotic movie camera I designed in 1993, together with the company founder, John Edwards, who was my programmer and electrical/electronic engineer. I was mechanical engineer, and system integrator. One of the most important theoretical things I learned from the project was that, as far as 3D spatial rotation is concerned, relative rotations (pan,tilt,roll) commute, while absolute ones don't. Any combination of whole or partial pans, tilts and rolls will cause the object under motion to end up in the same final orientation. Their order doesn't matter, as long as the total amount is conserved. For any computational system that controls a moving body, and must plan compound motions before using them, this is a useful, perhaps essential property for those motions to have.  It means that multi-tasking (combining motion control with other tasks in the job queue) will be successful. But more than this specific lesson, it opened my eyes to the preference that nature has for (a) rotations, over translations (2) combinations, over permutations; especially where semantics (overall meaning, end goal, connative or teleological target value) is concerned.

 

Figure 1 represents a visual summary of the completed design solution. It has six layers, which are each highly complex sub-solutions in their own right.

 

 

 

Data Representation Layer


The lowest layer in the CHI-COG machine (see figure 1) is the data representation layer (DRL). This is roughly equivalent to the physical layer in the ISO computer/internet protocol. The commonplace term is 'hardware'. Another closely related concept is that of memory. In order to 'capture' the widest possible interpretation we must broaden our most basic definitions of what a computer is, and what parts it contains. First, lets consider memory.
Memory is mechanism. This sounds like a design mantra, but it happens to be true. We can be more specific. Memory is internal mechanism, and mechanism is external memory. Either can (and does) act in place of the other. Furthermore, applying the statement to subjective data (perceptions) as well as objective data (conceptions, constructions) means that memory can be 'out there' as well as 'in here'.
 

Figure 2 - Organism or Braitenburgian'Vehicle' with internal and external memory


The types of pattern storable by the memory is limited to the positional configurations of its constituent mechanism. Digital memory 'cells' have two possible configurations, or 'states', '0' and '1' (or equivalently, 'on' and 'off'). Putative 'molecular' memory mechanisms (eg using DNA to store computer data) rely on the cellular molecules adopting a set of configurational states, or 3D orientations between adjacent C-H bonds. For reasons which will become clear later, representing perceptual situations (ie  complex states of 'self-in-world') with multi-scale combinations of angles is a more biologically plausible strategy than using digital (binary) numbers. This strategy is depicted in figure 3.

In the diagram, a generic configurational state with two degrees of freedom ( Ω1 and Ω2 ) is represented in two ways, concurrently (combinationally, as a 'structure') and sequentially (permutationally, as a 'process')[ These terms must be interpreted in as flexible and broadminded a way as possible, in order that their full explanatory power be utilized. ].

There is good evidence that biological information at a basic level is stored this way. One such piece of evidence is the classic 1960's investigation on developmental progress of newborn kitten vision by Hubel and Wiesel[ Hubel DH, Wiesel TN (January 1962). "Receptive fields, binocular interaction and functional architecture in the cat's visual cortex". The Journal of Physiology 160 (1): 106–54. PMC 1359523. PMID 14449617.], who found that neurones in the striate (visual) cortex of newborn kittens didn't react to the intensity of the light that fell, as one would expect from a position-based map coding theory, but the direction of light-dark and dark-light boundaries, as predicted by an orientation-based map code.

Lets put this into language that makes sense to computer scientists. In other words, the neurons in mammalian striate cortex are not raster coded, but vector coded. This presumably applies to the other parts of the cerebral cortex, which exhibit morpho-structural similarity under the microscope. Raster coding is scale-dependent- it depends on how big your pixels are- but vector coding is scale-independent. A pattern coded in vector terms can be scaled to suit the end use 'at the last moment', in terms of the procedural execution operations necessary. This is called 'late binding' and is a general characteristic of more flexible (and therefore, more intelligent) programming strategies.

Another way of thinking about it is in terms of human DNA. We inherit an equal set of genes from our male and female parents. The DNA does not 'know' in advance how large the animal is, rather, they code for scale independent behaviours. Of course, there are gene mutations like dwarfism which produce demonstrably small organisms, but these are mutations. Generally speaking, genes code for 'shape' not 'size' because the higher order functions made from them are also scale independent. In contemporary software engineering terms, this maximises something called 'code re-use'. A gene that is useful to a hamster sized creature can therefore be re-used for a mammoth sized creature. Indeed, many of the typical metabolic functions that characterize mammals, and differentiate them from reptiles, such as better control over internal temperature, are clearly scale-independent, in general terms[ Actually, its a little more complex than that. The surface-to-volume ratio of animals affects the ratio of heat dissipation to heat generation, and S/V ratio is size dependent. But the metabolic function of involuntary temperature control, in cybernetic terms, is a development introduced by the first mammals, which were the size of rats, yet found continued usefulness in the largest mammals, which are the megacetaceans, like the blue whale, the largest animals of any kind that ever lived. It is not the ability to keep warm or cold, but the ability to adjust the temperature, that is the scale independent function that is preserved in the design of the hypothalamus.].

 

Again, and again, we will be using software engineering terminology to rationalise design decisions, which is expeected. We will develop a totally new viewpoint in this analysis, but one that is, when held up to the light, eminently reasonable. This viewpoint is that everything we humans do is 'natural'. We are as much a part of nature as any other animal. Therefore, there is no such thing as 'artificial'. The things we do look different, because we choose to regard them as such. It suits us to view other animals as 'stupid machines' because for one thing, activities like farming which involve treating animals like metabolic inputs to mass-consumption, rather than our living brothers and sisters, would become too uncomfortable for many of us to bear- an issue of the natural rights of living things. Later we will see where this line of thinking leads- should very intelligent computers also be included in such a 'co-empathic systems' category?

When computer scientists learn about hardware, they learn about how digital memory encodes the most useful mathematical categories, like positive and negative natural numbers (ie 'integers'), and floating point numbers, which are the most scale-independent of all the numerical measures. Floats are encoded as a mantissa (the size) and an exponent, (the scale). For example, 2.33 x 10-2 means 0.0233. Remember also that the idea of a multi-bit register itself is a multi-scale concept.

Figure 4 - representation of number with digital ARRAY (RAM)


Now what we have drawn in figure 4 is a very common thing. Almost all computer scientists will have the reaction 'so what'. This is how most modern computer memory is constructed, either RAMor DISK.  To change the number, just change the contents of the registers from MSB (i=7) to LSB (i=0). But here's the thing...there is another way of encoding data, and that is to use a MAP. In a map, no writing of data ever occurs. Maps are Read-Only memories, or ROMs. Lets re-draw figure 4 as a map.

Figure 5 - representation of number decimal 183 with digital MAP (ROM)

 


In figure 5, pointers (depicted by the little arrows) are used to select a subset of the possible values contained in the ROM map. Amongst an average group of computer scientists[ Really they are computer engineers. A misnomer, but one that is so pervasive as to pass under our semantic radars. ], 'hardware people' are much happier with the idea of ROMs than are 'software people', who tend to equate computer memory with RAM, either volatile semiconductor-based RAM, or non-volatile, magnetic oxide-based DISK.



Neuronal memories are ROMs


If I said to almost any computer scientist that, at the lowest data levels, computers are based on ROM's, they wouldn't bat a single eyelid between them. "Of course, that's what 'firmware' is!" would then be their collective reply.  If I said the same thing to a set of neural network engineers, the most polite amongst them would respectfully, but nevertheless somewhat impatiently, point me to the seminal papers by Warren McCulloch and Walter Pitts. Don't be silly, they would almost certainly add- neurons of all types, either artificial or biological, encode data by means of varying synaptic weights.

If we look at computer science practice, we see that maps (which are ROMs) are used throughout any computer where data must be accessed very quickly, and modified infrequently. If any variants are needed, pointers are used to access different parts of the map. This is wasteful of space. This wastefulness can be seen by comparing figure 5 to figure 4. They both store the same number, but in figure 5, twice the memory 'area' (ie the number of data storage cells) is needed. However, moving pointers (in this case, each pointer consists of a single bit) is a much faster operation than reading and writing data to specific memory addresses.

In the case of a memory based on orientations (angles), we might expect to see a ROM that looks something like this, where we have pre-stored five orientations, [-90,-45, 0, +45, +90] where the numbers are in degrees[ For a truly scale-free measure, we could use radians, where the angle itself is expressed as an irrational length ratio, so that 2Π radians reprsents a complete revolution of 360 degrees.]. This orientation-based ROM is called a Pose Vector Array Processor, where the word 'array' is sometimes omitted as being somewhat redundant. Figure 6 below depicts such a Read-Only memory device. This is like all ROM's - fast to use, but wasteful on space. If one thinks about the cerebral cortex, this argument can also be applied to that memory device. Indeed, it is so wasteful of space, that it has been folded up to fit into the available space in the primate skull's brain cavity.

bottom of page