This blog post is part of my series on seeing the world in terms of computation. I think this is a very powerful technique which will bring new insights and solve old problems.
Today I will be looking at the human mind and will concentrate on coming up with a good computational model for it (no details just overall structure). As I am doing this I shall point out some implications of the model for AI and human intelligence.
Practically all modern computers are what we know as serial computers. They perform instructions in strict sequence with occasional branches to subroutines. This branching happens incredibly fast with modern processors running at 3 billion operations a second. Brains on the other hand have several billion neurons each of which is performing a complicated calculation about 100 times a second. Brains are highly parallel and this has important implications for human intelligence.
The human brain should be very good at tasks which are parallel in nature such as locating one object amongst many, solving mazes and finding reasonable solutions to real world traveling sales man problems. Modern computers on the other hand should be very good at tasks where no substantial speed up can be gained from parallel processing. There are surprisingly few real world tasks of this type! Most examples I can think of are related to encryption.
Modern computers have separate memory and processor units. Human's have regions of the brain devoted to static memory but much of what the brain remembers (procedural memory) is stored in the pattern of use of synapses. The regions of the human mind which store memories are heavily connected to the other parts of the human brain. So for computers to simulate the human mind they would need highly efficient transfer of information from the memory to the processor unit.
Having memory units tightly integrated with processor units clearly could make various types of processing much more efficient. Most of the reason that your computer takes ages to start up is due to how comparatively slowly memory can be accessed. Computer scientists should look for ways to more tightly integrate random access memory with the processor and also (more important) with scaling up the amount of RAM available and reducing power demands for the RAM when not in use (flash memory is a good example). Computers will perform much better and have more chance of running powerful AIs if they can solve these problems.
The human brain has a very high bandwidth connection to the outside world. Until recently computers had very little in the way of sensory equipment. This is slowly changing. But if AI is ever to match the human mind in its capacity for physical acts such as dancing and sports, if AI is ever to match the human mind in its experience and sense of connection with the world then the sensory and motor equipment AI has must achieve a higher degree of sophistication. A human arm has many muscles in it and thousands of sensory devices that detect heat and pressure. We are still a long way from making an input device for a computer which matches the arm in its development (let alone the hand).
1) The brain is parallel, computers are serial (but getting more parallel).
2) The brain is highly integrated, computers separate distinct tasks such as storage and calculation.
These together go some way to explaining the differing strengths of humans and computers. However, there are clear trends in computer design moving towards parallel processing. These are the development of more better quality RAM, the development of multi core processors and the integration of some RAM on to processor chips.
What I haven't gone into in this post is in what ways computers have advantages over humans. I haven't gone into this because I already have a couple of posts   on this and I don't yet have anything more to say.