Saturday, May 3, 2008

A Positonic Introduction

Hi all

This page is intended to throw some ideas out onto the web about an area of AI that interests me - the process of percepetion and how that might be replicated in silicon.

I want to know if anyone else is thinking in this direction - but if they are, they are unlikely to have used my syntax - since it is of my own invention - so how do I find them?

This is an 'is there anybody out there?' type of blog.

I will attempt to explain - forgive me a long explanation......................

Positonics - a Perception Paradigm

I have been fascinated in this particular area of AI for some while. I believe that for a system to interact successfully with humanity, it must perceive its surroundings in a radically different way to anything that I have seen to date. I am interested in the potential processes of such machine perception.

If compared to the human brain, the processes I am thinking of are predominantly ‘below’ the neocortex – in the evolutionary and the physical senses of the word, although it seems likely that the mechanisms of consciousness are an elaboration of those older processes of perception.

I have worked in control and protection engineering for decades now, so I have some experience of engineering simple systems to interact to produce apparently sophisticated behaviour. I have always been interested in the process by which the mind emerges from the brain.

I have been thinking on these lines long enough to be forced to evolve some concepts and language to frame an alternative paradigm to that afforded by neural networks or orthodox programming (I had not heard of HTM until recently) in trying to model mental activity.

It seems that the mechanisms of perception must include endemic feedback, as idea informs sensation to such an extent. This being so, the exclusively feed-forward nature of neural networks seems a fundamental problem if you seek to use them as a paradigm for mental activity. As I understand it the outputs of a neural network are linear functions of their inputs, as dictated by there analogue nature.

It seems that perception must run on a discontinuous engine to be as non-linear, fed-back and protean as it seems, without being irretrievably chaotic (i.e. a neuron fires or does not fire – a discontinuous response). It also seems that learning in neural networks is external to the network itself, in so far as it relies on error functions, growing and pruning and the rest.

The limitations of the computational paradigm of perception surely need no comment.

In looking for an alternative I have gone some way down a “road less travelled”. I think the road is promising, but it becomes progressively harder to follow alone. If I am to go further, I need to discuss and test these ideas – so I hope they may be of interest to someone here.

This path owes a lot to the late-great Asimov and (less obviously) to the work of Professor Walter J Freeman. Alas, I never knew Asimov, except through the page. I met Freeman at a symposium on AI in New Zealand (at AUT Auckland) where he presented a paper on his use of chaos mathematics in modelling patterns of neural-firing in the brain(1).

If his work can be described as modelling the mind as a self-organising emergent complex system that perceives the world via interacting populations of cellular automata formed from patterns of neuronal firing (my interpretation) then my interest is in producing similar engineered systems.

Self organisation is fascinating, but too unpredictable for most AI purposes. I want to keep the interactions of perception, without the self-organisation. It needs to be engineered. I discussed briefly with Prof. Freeman what level of abstraction of his ideas would allow the description and manipulation of such systems and I have been thinking about that since.

This is the genesis of the thinking behind Positonics

Positonics

Intelligence has been defined in many ways, but it seems likely that any intelligent system must be capable of expectation and recognition – or perception, as I define it.

Perception is not easily viewed within a traditional computational model, since it is necessarily pre-dialectic; existential.

I have explored the paradigm of an ecosystem of self-replicating cellular automata; each associated with a test for an expectation: this I term a positonic system. Individual positons replicate within their event-space when they encounter assonance to their expectation. Like an individual neuron firing, there is no higher local purpose or function(2), but interaction between positons produces more complex behaviour. The term ‘positon’ is meant to describe a type of behaviour within a complex system, rather than a particular computational method or neuronal network architecture.

Positons

Positons replicate in an event-space, if they can find sufficient ‘nourishment’. Their ‘food’ is assonance, the successful testing of an idea or posit(3) against data within the event-space.

The idea came to me while playing the ‘Game of Life’ in an old version with a bounded event space, on my PC. I fell to considering the emergent behaviours exhibited and how the ecosystem of successful ‘bugs’ was affected by the boundaries of the event space. It seemed to me that the persistence of certain bugs at the edge (and only at the edge) of the frame was a form of recognition of the edge by the ecosystem. Positons are a development of that idea.

Positons exist as types, with each type carrying a posit with respect to the event-space and a test for assonance of the posit with the event-space data. A type can exist in many instances (places and times within the event-space).

To replicate a positon needs a test for assonance that produces positonic potentials(4)

More Positons

I see these classes of positon: -

Assotons: “low level” positons that feed on assonance to their posit in the event-space. This event space might be the field of view of a TV camera, for example.

Posiraptors:‘predator’ positons that feed on assoton instances, that is to say they carry a posit of assoton demography. They produce potentials for their own type and for their prey types. This creates a positive feedback loop within the positon demography exactly opposite to normal predation. This last idea is sufficiently important to me to require naming, so I call it Posiraptation.

Ecoraptors: high level posiraptors that feed on wider positonic system demography and thereby encode/recognise more abstract posits. They may produce potentials for any positon type; their own, prey types, or other types.

Bumraptors:(5) negative posiraptors or predators. They consume or suppress potentials for another positon type, like lions and zebra. Necessary to suppress chaotic or fixated behaviour, I imagine.

Potentials

Positon potentials could then arise in four ways: -

Positonic inheritance: an inheritance potential points to an instance of probable assonance for a positon type, based on a known assonant instance of that type. (i.e. edge -> edge)

Posiraptation: a raptored potential points to an instance of probable assonance for a type, based on a known assonant instance of a posiraptor that feeds on that type. (i.e. line - > edge)

Positonic genesis: a genesis potential points to a an instance of a type, based on an assonant instance of another type(i.e. line->curve)

Protean: protean potentials are produced at random.

Potentials for a type can then arise in four pathways associated with the type and event-space, a Genesis Pathway, an Inheritance Pathway, a Raptored Pathway and a Protean Pathway.

Any positon will seek to replicate at all instances of known assonance and then to all potentials, subject to pathway inhibition, arising from limited pathway bandwidth. A positon can only replicate at an instance if that instance is assonant.

I imagine pathway inhibition as a key determinant of positonic dynamic demography and vital to the suppression of chaotic behaviour within the recognition process. Pathway bandwidth allocation would allow for a natural or internal mode of learning (i.e needing no error-functions or external rule manipulation) if we allow the idea that successful ecoraptors may reinforce band-width down their food-chains and simultaneously act as bumraptors to restrict the band-width down the food-chains of competing ecoraptors.

These classes of positon, in their varying types and demography, interacting through their various pathways, would form a positonic system akin to an ecological system in complexity and subtlety of response to external change.

In Summary

A positonic system comprises populations or fields of positons within a common event space, linked through positonic pathways.

A positonic system would recognise events or features within the event space through positon demography arising from posit assonance processed through the non-linear effects of inheritance and posiraptation, with chaotic behaviour modified or harnessed by competition for limited pathway bandwidth and assonance.

Learning, encoded by ecoraptors in pathway bandwidth allocation, would predispose particular demographic responses to particular stimuli in the event-space. This does not demand an external algorithm or a ghost in the machine, as far as I can see.

A positonic system could be encoded in any medium of sufficient richness (pathway bandwidth), whether computational or neural (biological or otherwise) or Hofstadter’s ants nests.

An Example - A Positonic System for Visual Recognition

I will use the example of a computer program. I believe the same approach would be valid in studying neurobiology, but I don’t have the expertise to follow it through. A positonic system for visual recognition could be coded in a computer as follows: -

Starting with an event-space of grey-scale pixels in an array, fed from a camera, with each pixel having Cartesian co-ordinates and brightness.

Sensed brightness = S(x,y)

We define an algorithm whereby we process a three by three array of pixels, centred at pixel (x,y)

For each adjacent pixel (a,b), we compare brightness to the brightness at (x,y) and set a bit : 1 if S(x,y)>=S(a,b), else 0.

Process the eight bits and arrange as an integer. We then have 255 different possible sensed results, which can be used to find potentials in a look up table. The lookup table is an edge positon type. Running the algorithm for specific values of x and y is an instance of that type. The potentials can be returned as relative displacements from (x,y) which are positonic potentials from the current positon generation.

For instance, take this sensor data for the pixels around S:-

So positon notation P=11111000=248.

If we have a five by five array of possible potentials for the positon, so bottom left is (-2,-2), top right is (2,2) and (x,y) is(0,0), then for this sensed result potentials would be at (2,0) and (-2,0) i.e. we seem to have a horizontal edge running through (x,y), so it is likely to carry on through (x+2,y+0) and (x-2,y+0).

So the complete entry in the lookup table is P(248)=(2,0),(-2,0)

Similarly
P(0)=(0,0),(0,0) null result
P(232)=(2,-1),(-2,1)
P(233)=(2,-2),(-2,2) etc.

This notation would require 2 bytes per result, so the lookup table can reside in 512 bytes. The algorithm required for the test of assonance is quick, being only the accumulation of the number P and a relative jump, which could be realised easily enough in a real computer system. We require many instances and types for a complex system(6), so a parallel processor architecture is likely to be optimal.

In this case the lookup table defines the posit of the ‘edge’ positon type ‘P’ and the test algorithm is its inheritance pathway. It feeds on ‘edgeness’ (geometrically consistent discontinuities in pixel brightness). The random pathway for type P would point to instances based on a random distribution in the field of view.

We can then define a “line” posiraptor ‘L’, which feeds on the presence of P assotons to produce a line notation with potentials for its own extension and for further P type assotons (i.e. there is a raptored pathway from L to P).

Take this 'P' assoton demography - each X being an assonant instance of P:

An ‘L’ line posiraptor notation might use a starting point (x,y), a direction notation d and a repetition notation r, so the full notation is L=(x,y),d,r.

The notation d reflects the expected repeating unit of edge assotons for a line in a particular direction, which can be defined in another table.




That table would be: -

d x’, y’

1 7,-1
2 6,-1
3 5,-1
4 4,-1
5 3,-1
6 2,-1
7 1,-1
8 1,-2
9 1,-3
10 1,-4
11 1,-5
12 1,-6
13 1,-7
14 0,-1
15 -1,-7
16 -1,-6
17 -1,-5
18 -1,-4
19 -1,-3
20 -1,-2
21 -1,-1
22 -2,-1
23 -3,-1
24 -4,-1
25 -5,-1
26 -6,-1
27 -7,-1
28 -1,0

d = 1 to 28 covers 180 degrees in direction. The differences in angle are not equal, since they code directly for P types in patterns of Cartesian positions. The opposite direction to d would then equal -d.

E.g.

L= (x,y,6,1) in red

L=(x+4,y-2,6,2) in blue

L and P are related so that, by genesis(7):
P(248) assonant at (x,y)=>L(x,y,+/-28,0)
P(232) assonant at (x,y)=>L(x,y,+/-6,0)
P(233) assonant at (x,y)=>L(x,y,+/-7,0) etc.

If we have an assonant instance of L=(x,y,d,r) it has potentials
L=(x,y,d,r+1) and L=(x,y,-d,1) by inheritance and also produces raptored potentials for P. For example L shown in blue above produces P shown in green.


We can then define a curve ecoraptor ‘C’

If we have an L demography as below

where
L1=L(-5,0,-28,5)
L2=L(0,0,7,5)
L3=L(5,-5,8,3)
L4=L(8,-11,9,4)


The notation for C would be C=x,y,d,r,d,r,d,r.........



An assonant instance of C for this demography is C1=C(-5,0,-28,7,5,8,3,9,4), with start and end points: Cs=(-5,0) Ce=(12,-23)

Any assonant instance of L is a genesis potential of C
L(x,y,d,r) assonant => C(x,y,d,r)

Any assonant instance of L(x,y,d,r) where (x,y)=Ce or Cs is a genesis potential for an extension of C
L(x,y,d,r) assonant AND (x,y)=Ce => C=C+L
L(x,y,d,r) assonant AND (x,y)=Cs => C=L+C

Raptored potentials from C to L might include

L=Ce,9,1 L=Ce,10,1 L=Ce,11,1 L=Ce,12,1 etc. (i.e. curve continues)

L=Ce,9+14,1 L=Ce,9-14,1 (90 degree corner) and so-on.

I think it would be possible to extend this hierarchy into further levels of increasingly abstract or “conscious” ecoraptors e.g.

edge, line, curve, feature, face, person

or

edge, line, curve, geometry, object

As one goes up a hierarchy there would tend to be a stronger expectation of persistence, for instance one might expect a face to persist in the field of view, even though some of the features are hidden or have changed position. This expectation could be produced through random potentials for the established high-level ecoraptors, giving a distribution of likely or expected position and orientation which would be passed down to the lower level positons by posiraptation.

An ecology of high-level ecoraptors is in some ways like an HTM network – but with the probabilities encoded in competition between ecoraptors, rather than within the output of the unit. The output of an ecoraptor is a set of raptored potentials, with each potential being yes/no – rather than maybe.

However, too much posiraptation, arising from excessive raptored pathway bandwidth, would produce a fixated response with false positives and an inability to respond to new stimuli.


Positonic Dynamics, Chaos and Fixation

So far all the feedback in the system is positive. That might give our positonic system a fit (or at least a migraine), so a general damping is necessary, using pathway inhibition (limitation of pathway bandwidth) to control the chaotic behaviour.

The tuning of pathway bandwidth would be critical to positonic system dynamics, which has been rather lost in the explanation up till now.

For instance, to avoid fixation, it would be necessary to suppress the currently dominant assotons and ‘look’ for new ones. That is the role of the Bumraptors and the Protean pathways.

That is as far as my thinking has taken me, but I have found this model can explain some of the behaviours I have read about in psychology books as emergent behaviours arising from the dynamics of complex positon demography. I play a game with myself trying to explain different conditions and experimental results (as they get into New Scientist) in these terms. With some success.

For instance it seems to give a way to explain Markoff models for speech recognition and model based vision systems, through to various neuropathologies, as far as I understand them.

The “Positonic Theory”, if I may call it that, seems not to fit in any subject area I know of - it seems similar to HTM in some ways, but is significantly different.

I have felt for some time that a mechanism such as this must underlie human perception and the emergence of mind from brain. I have been interested in recent years by published results which seem in accord with such a model.

That’s it: I’m done.

(1) See his book “How Brains Make Up Their Minds” – a great book, but not an easy read.

(2) The effects occurring in large populations of positons exposed to the stimulus of sensory data would, I think, produce emergent behaviours (as per some theories of complexity). I believe the dynamics of that process can be a model of perception; perhaps of consciousness, but an individual positon is just a machine – this is not a reductionist paradigm.

(3)I intend a wider meaning for “posit” than might be associated with “idea”. An idea can be termed a high level posit, encoding expectation of an abstract and perhaps conscious nature. Low level posits can encode for more concrete expectations; a test for a discontinuity in the light level at a point within the field of view would be a posit of “edgeness”.

(4) A potential is a pointer from a known assonant instance to a probable instance.

(5) No offence intended

(6) A simple positon demography would not be functional, or at least not interestingly so

(7) => is used to mean “implies”