Monday, 20 May 2013

Memetic algorithms

One of the standard optimization strategies in computer science is genetic algorithms. These emulate organic evolution by using mutation and selection to identify the solutions of optimization problems.

Memetic algorithms are similar - but in addition to mutation and selection, they make use of individual learning, social learning and teaching. As Moscato (1989) put it:

While genetic algorithms have been inspired in trying to emulate biological evolution. Memetic algorithms would try to mimic cultural evolution.
Memetic algorithms were inspired by the observation that cultural evolution appears to have dramatically increased the rate of evolution of human civilization. If memevolution is, in some sense, faster than genevolution, maybe we can harness the power of memevolution to solve optimisation problems.

Direct thought transfer

Evolution took billions of years to produce creatures sophisticated enough to produce an open-ended type of cultural evolution based on behavioural imitation. This is because observing the actions of another and then recreating them is not a trivial task. Detailed imitation of behaviour is technically quite a difficult reverse-engineering task, which requires complex cognition to perform.

Do we have to wait until we have human-level machine intelligence before memetic algorithms can make useful contributions? No. we can engineer virtual environments in which even the relatively dumb artificial agents that we can build today can enjoy the benefits of cultural transmission. This effectively bypasses the whole problem.

Rather than passing on cultural information by clumsy processes based on behavioural imitation, memetic algorithms can work with creatures which have been designed for direct thought transfer. This can take a variety of forms. One possibility is the ability to directly pass on experiences. We can imagine the creatures have a recording device, and a device to replay the recordings to other creatures. This would be broadly similar to how humans can help each other to learn by sharing audio-visual experiences with video cameras. Other possibilities include knowledge and skill transfer. If the virtual creatures can be persuaded to represent their knowledge and skills in a portable format, this information can be transmitted directly from one creature to the next.

Collective intelligence

Groups of virtual agents being involved can potentially result in the effects associated with collective intelligence. Group-related dynamics are possible in more traditional genetic algorithms too - but social learning forces the creatures together, encouraging cooperation, and hopefully resulting in group dynamics that facilitate solving collective action problems.


Genetic algorithms are normally considered to be a type of competitive process - but one of the aims of memetic algorithms is to harness the power of cooperation. Letting the creatures to learn from each other encourages them to form social groups, and to work together.


Memetic algorithms may include a genetic component - and thus may exhibit meme-gene coevolution. Not DNA genes - of course - but rather the same kinds of genes that are involved with genetic algorithms. In cases where both memes and genes are involved, there needs to be a tradeoff made between the resources expended on each type of evolution. Managing this trade-off is a non-trivial problem.

Hybrid systems

Of course, machines don't need to have their own virtual world to be able to participate in cultural evolution. They can participate directly - by coevolving with humans on the internet. This is sometimes known as the man-machine symbiosis. It produces a kind of "impure" memetic algorithm - in which the components involved are a messy mixture of organic and machine elements. Of course such "messy memetic algorithms" are currently of great importance. This is partly because the humans and the machines can usefully compensate for each others' weaknesses. However in the future, it seems likely that we will increasingly see more machine dominated spaces - in which humans are too slow and stupid to be able to usefully contribute. Ultimately, it seems likely that we will see a memetic takeover.

Cultural algorithms

Cultural algorithms appear to be a subsequent reinvention of memetic algorithms by different researchers. The names appear to be close synonyms and the subject area appears to be the same. As far as I can tell, these were independent inventions.

Success story

Memetic algorithms has been one of the success stories of memetics in academia. There have been a long series of books, conferences and papers on memetic algorithms and memetic computing. Geeks tend to be meme-friendly, I have noticed.

Machine intelligence

Memetic algorithms lie directly on the path which leads towards machine intelligence. Cultural evolution in humans represents the process machines will need to master if they are to make very much progress. Machines are masters of mind-to-mind thought transfer, which makes it easy for them to engage in social learning. If you have a partly-intelligent machine, one obvious thing you can do to boost its power is to network it together with other similar machines - and let them cooperate with each other. The dense environment provided by modern data centers provides an ideal environment for machines to engage in social activity with each other.

Overall, it seems highly likely that memetic algorithms will play a key role in the development of machine intelligence. Memetic algorithms will thus probably prove to be the most important application of memetics - in the long term.


No comments:

Post a Comment