Monday, February 14, 2011

Intelligent Computer Chess, Part II



In Part I, I described Animal's brain as a spiking neural network driven by discrete signals called spikes. These are generated either by sensors in response to changes in the environment or by other neurons for various operational purposes. Animal's learning mechanism is universal because it consists entirely of discovering the temporal relationships that exists in a stream of discrete sensory signals, regardless of their provenance. Animal stores its learned temporal patterns in a hierarchical tree of knowledge (TOK) in computer memory. Animal's intelligence derives from its ability to use the TOK to make predictions about possible outcomes and act accordingly. In today's post, I describe Animal's sensory mechanism. But first, a few words on the philosophy behind temporal learning.

Temporal Learning

A spike is a discrete signal, a temporal marker that indicates that some environmental property has just changed. Its lifetime is very short. It is the length of time it takes for it to be generated, transmitted and received. A sensor is a cell that generates a spike when it detects a phenomenon, i.e., a change in some environmental property. An example of a phenomenon is the sudden onset or offset of illumination on a retinal cell. Animal's neural network is not programmed with any hard coded indication as to what the environmental properties are. It uses the same principle (algorithm or program if you wish) to process all incoming spikes regardless of their source.

The beauty of the learning approach used in Animal is that the information carried by a discrete sensory signal is solely a function of its temporal correlations with other signals, i.e., whether or not it arrived before, after or concurrently with one or more other signals. The assumption is that there is a logic in the environment such that changes will generate unique recurring temporal patterns that can be learned or captured by the network.

The Eye, Invariant Recognition and Attention

Most of Animal's sensors are contained in its eye, a 3x3 array that can move around on the chess board. In each of the nine locations of the eye there are multiple sensors, one for every chess piece. The eye also has sensors that detect the gripper used by the opponent and Animal's own gripper. These sensors can detect whether or not a gripper is holding a piece.

Click to Enlarge

If the eye could not move, Animal's brain would be completely blind unless the user uses his gripper to handle or move a piece across Animal's field of vision. I suppose that I could have designed a fixed visual sensor array as big as the entire board. However, I wanted to demonstrate two capabilities that I think are essential to intelligence. The first is Animal's invariant recognition ability: Animal must be able to recognize that a chess piece seen in one corner of the eye is still the same piece after the eye moves and the piece is located at, say, the center of the eye. Secondly, I wanted to give the human observer a sense of what Animal is thinking about, that is, what it is paying attention to at any one time. This is why Animal's eye is represented on the board as a moving circle.

Complementary Sensors

Complementarity is one of the fundamental principles of Animal's brain. One of the things that gives meaning to the signals generated by Animal's sensors is that they all come in complementary types. In other words, if there is a sensor that detects when a pawn has moved out of a given location in the eye, there must also be a sensor that detects when a pawn has moved to that location. It is for this reason that there are two types of sensors for every chess piece. I have also added complementary sensors to detect such things as the eye moving left, right, down and up. In addition, there are visual sensors for game-ended, game-started, check, checkmate, your-turn, my-turn, etc. These are sensors that are designed to detect special markers that appear on the board when appropriate. The markers are strictly controlled by the board's logic, not Animal's brain.

Coming Up

In Part III, I will describe the first neuron layer in Animal's brain, the retina. This is where Animal's brain detects movements, directions and other fixed correlations.

See Also:

The Brain: Universal Invariant Recognition


Aleks said...

This is fascinating. You're trying to mimic a human brain using computer language? I've only seen this in sci-fi books and movies, it will be really interesting to see your project progress.

I'm into computer science so once I finish high school I'll go study that and I'll watch your project. I want to see it develop. Keep up the good work.

Louis Savain said...


Thanks for the comment and the encouragement. The Animal project is a lot closer to completion than it appears. I think I have figured out most of what's needed to make a functional artificial intelligence patterned after the brain.

Unfortunately I don't have as much time to work on it as I would like. This is why I want to publish as much about the theory behind it as I can. This way, if something should happen to me or should I become incapacitated for any reason, someone else might take over and finish it.