Article written by Her Majesty's Office of Information.
1996.

Antibodies teach computers to learn


The human immune system is being used as the model to create unique new software that will provide a radically different way for computers' to learn.

This breakthrough has been achieved by a small team of researchers at the Centre for Intelligent Systems at the University of Wales Aberystwyth.

The immune system is a naturally occurring learning system that protects the body from disease that bind to the various antigens and destroy them.

As far as computer software is concerned, the crux is that the system not only learns about new antigens, it can also instantly recognise familiar antigens and neutralise them. In addition it will also allow immunity to fade when no longer required. Thus replacement antibodies generated by the bone marrow are only allowed to proliferate if there is an invader to fight.

This approach has now been adapted by computer scientist Dr. John Hunt and biochemist Dr. Denise Cooke as the basis of a cyber package. Their program uses the software equivalent of bone marrow to generate small pieces of computer code that take on the role of antibodies. The antigens are represented by the tasks that the program is trying to carry out. The software antibodies must try and match the requirements of these tasks.

"With the natural immune system you have to go back to the doctor every few years to get re-immunised with shots," said Dr. Hunt. "This gave us the clue because in a computer-based learning system being able to forget little-used information is very important. Neural networks or case-based reasoning systems, for example, can easily get too specialised and so sidetracked because they can't forget anything. In other words, they become over trained. This does not happen with the immune system and so, by deleting redundant data, it can always be ready to deal with a lot of different problems."

A good example of the immune system approach is where the computer is playing noughts and crosses, or tic-tac-toe. Here its antibodies must try and match the antigens represented by winning moves that create a row of three noughts or crosses.

Initially the program generates about 50 pieces of antibody computer code that have random characteristics. The range of characteristics they might possess depends on the task in hand. In the tic-tac-toe example, they would be positions in which a nought or a cross could be written, along with winning and losing moves.

All the software antibodies keep an internal record of their stimulation level, which is a measure of how closely they resemble other antibodies and how closely they match the task being attempted. Every so often, those antibodies with a stimulation level lower than the survival threshold are deleted and replaced by newly generated code. Any antibody that has a high stimulation level clones itself, because it must be well suited to the task in hand. When their is a new task to learn, antibody populations rise swiftly and then decline as some of the antibodies being to match the requirements of the antigens more closely.

This new approached has created a niche of applications in data mining for areas which neural networks and genetic algorithms are not very suitable. This is a very tough area where it is necessary to process vast amounts of data to discover if any significant patterns or clusters exist in it.

One application the Aberystwyth team are looking at is patterns of fraud in loan or mortgage applications. Another is the gigabytes of sales data generated daily by most supermarkets. The immune system program can quickly filter out patterns relating to specific products and customer groups so that they may be successfully targeted in various ways.

There is another advantage. People working with neural networks spend a large portion of their time trying to tune and tweak the program until it achieves an adequate level of performance. With the immune system there is a lot of self-tuning and optimisation involved and this has been encapsulated into the software. So on receipt of the data it can work out by itself the majority of the performance parameters and the required performance element.

Of course there are situations where such a program would be in apporpriate. It would be no use in controlling anything such as a nuclear power station. It could not cope with a situation where there are a lot of inputs constantly coming in which need to go through a list of classifiers to discover the current situation and take the appropriate action.

"The artificial immune system has advantages over the normal approach to computing because it does not have a central controller and is quick to learn a task," said Dr. Hunt. "For example, it only took a couple of days to learn to recognise DNA sequences, a task that has taken a neural network development team ten months."

"As far as the extraction of statistically significant patterns from vast amounts of data, such as loan applications, supermarket sales, or large medical trials involving numerous drugs and a variety of patients, the immune system based software certainly seems to have only be limited by the human imaaagination itself."

The artificial immune system is currently being developed as part of the ISYS project funded by the UK Government's Engineering and Physical Sciences Research Council.

(Contact:@ Dr. Simon Garrett, CASIS, Dept. Computer Science, University of Wales, Aberystwyth, Penglais, Aberystwyth, Ceredigion SY23 3DB. Email: smg@aber.ac.uk).


jjh@aber.ac.uk
11th Sept. 1996