Friday, 5 June 2015

How to build a simple model of something as complex as the brain

In trying to model the human brain's basic mechanisms, and how it's evolution can be explained it is important not to be overwhelmed by some of the numbers involved. One approach, which is adopted in other models of other large problems, is to stop worrying about how big the numbers are and simply to assume the number approaches infinity. You can then assume that building a complete model that tries to reproduce everything that might be happening is impossible, and concentrate on looking for simplifying generalizations.


A good example of such a simplifying generalisation, well known to anyone with a training in the physical sciences, is the model used to predict the behaviour of a gas at various temperatures and pressures. The number of atoms is large, involving Avogadro's number – which is approximately 600,000,000,000,000,000,000,000. The “ideal gas” approach assumes that all molecules in the gas are identical and are continually colliding with their nearest neighbours. In addition it is assumed that they are in an infinitely big container – so you can forget about collisions with the walls. One ends up with a statistical model which is not a prefect fit – but the model helps to explain the deviations between the calculated “ideal” and the observed behaviour of real gases.

Another example is the theory of evolution itself. There are currently many million different species and summed over many millions of years there could well be in excess of a billion. Some species (particularly at the microscopic level) may have trillions of individual organisms alive at any one time. So to fully define how the kingdom of living things came about one is talking about very large numbers. The “evolutionary” solution is to assume that all organisms are equivalent in one essential respect – they either produce offspring or they don't. Whether an individual organism produces offspring depends on interactions with nearby organisms - for instance “eat or be eaten”. In each individual case the survival will depend on what is happening in the immediate environment at the time. The evolution model basically says that averaged over a large number instances species will change because some individual organisisms are more likely to survive than others. The evolution “survival of the fittest” model does not predict that we should have humans or crocodiles or oak trees – simply because these are just a few of an almost infinite number of alternatives. The model provides a framework which help us to explain what has happened.

Of course there are many billions of different human brains each containing many billions of neurons with many trillion interconnections. Each brain will record a vast number of different experiences. Instead of throwing up our hands in despair at the large numbers why not assume that the possibilities are infinite and look for a simple model which takes infinity for granted! What one needs to do is to find some aspect of the way that the brain stores and processes information which applies (at least to a first approximation) wherever you look.

In fact modelling the brain was the last thing on my mind when the CODIL research started. I was a new systems analyst in a very large company who was asked to familiarize myself with what was probably on of the most complex computerized sales accounting systems working in the 1960s. The plan was to move it from a magnetic tape based batch computer to more modern computer with direct access storage with at least some online terminals. At the time no-one had tried to move such a major application online in this way – so there were no guidelines as how to do it. However I had spent a year programming and had become very aware of some of the problems with the old system. I thought “What the company wants is a flexible system, with the sales management in control. The new system should be able to rapidly adjust to changing markets and novel sales strategies”. However I realized that any precisely predefined model (i.e. conventional program, 1960s style) cannot, by definition, automatically cope with unexpected market changes or genuinely novel sales strategies. The company had a very large number of products (say 5000 ranging from propane gas via petrol to tarmac), many different customers (fsay 250,000 ranging from private houses to major international organisations) and many different forms of contract and (viewed with hindsight) what I was saying that we should build a system on the basis that we had, in theory, an infinite number of different products, customers and contracts. I therefore designed a system where the sales staff and the computer could work as a symbiotic team - and I had no idea I was saying anything out of the ordinary.

OK. The system was never built but at this point I moved to a new employer in a market research post relating to big commercial customer requirements in the next generation of computers. I discovered that there were a lot of similar problems which were too complex to specifc easily – and where a good human-computer symbiotic interface would be useful. I realised that my invoicing model could be generalised into a recursive information representation model (explicible in terms of simple sets) and a simple pattern matching algorithm which made decisions. Pushing the idea to infinity I considered the ideal test user would be someone whose task was totlally unknown to me in advance. 

Because I was working for a computer manufacturer no one thought of the underlying theory – the commercial priority was to show the approach would work and then hopefully get it on the market ASAP. While enough was done to show the idea worked – and in some areas the approach was significantly better that the almost universally accepted stored program computer model – work was finally abandoned because of lack of support.

So more than 25 years after the project was dropped I decided to re-assess the research in term of 21st century knowledge. In the original research I had been thinking very much about serial processing on a digital platform - concentrating on the technology of getting something to work. What I discover is a mathematically equivalent way of relating the CODIL model onto a model made up on interconnected neurons working in parallel.

The basic features of the neural network model is described in From the Neuron to HumanIntelligence: Part 1: The “Ideal Brain” Model. The universal pattern storage unit is the “memode.” Memodes are recursively defined hierarchies of interacting neurons in a network that can change dynamically with time. Every memode can be considered to represent a concept. Some memodes will only consist of a single neuron and the concept represented could be that a single sense cell is sending a message to the brain. In a human some memodes may consist of many millions of interconnected neurons and represent a complex abstract concept such as “evolution.”

In any region of the brain the number of active memodes is limited (circa 7 in the case of short term memory). All active memodes are functionally identical however complex – which means that the complexity of a memode can be ignored – and can be given the name of the concept it represents. Looked at in this way CODIL (leaving out advanced frills such as the ability to do arithmetic) can be considered as the symbolic language for describing how the brain processes concepts.


While I would be the first to agree that the memode/CODIL model is not a perfect model of a real brain it suggests a mechanism for storing patterns, and making decisions which is independent of how big the neural net is or the complexity of the concepts the patterns represent. It also predicts “faults” in the human brain – such as confirmation bias, and areas where the model might be improved. These matters will be discussed separately.

No comments:

Post a Comment