Artificial neural networks are simple systems made out of many interconnected "neurons", modelled crudely on the cells of the animal nervous system. A network of such neurons can (for example) learn how to make a robot recognise situations and respond accordingly.

A system like this acts purely "in the moment". In an animal, however, the neurons may be acted on by hormones, whose concentrations vary over time. This might allow a robot which has just been in a stressful situation to behave differently for a short while afterwards, until the hormone concentration drops. Artificial neuroendocrine systems (AESs) add neurons which can release hormones (via a "gland") which then affect other neurons throughout the system.

Such a system should be able to maintain certain important variables in a homeostatic manner — rather like a thermostat, they should react when the variables are going out of a "safe" range, to move them back in. The biological endocrine system contains many important homeostatic mechanisms, such as the insulin/glucagon system which maintains blood sugar levels. Even adrenaline can be seen as a homeostatic hormone: the actions it causes an animal to take are designed to keep it operating safely, by getting out of (or eliminating) danger.

Currently, AES networks are designed in an ad-hoc manner, and only systems of a few neurons and hormones have been explored. I intend to use a genetic algorithm to "breed" such systems, such that "good" systems are kept and allowed to breed again, resulting in an improved population. Eventually, good solutions to test problems should emerge. As well as providing a design method, this may give insights into the design of a good AES. It may also reveal aspects of the evolutionary history of the biological endocrine system, and how it functions in biological systems today.

My initial test problem is robotic sailing. Sailing downwind is easy: turn the rudder until we're moving towards our destination and set the sail according to a simple set of rules. Sailing upwind is much harder, and involves repeatedly turning either side of the wind ("tacking"). I am currently attempting to breed AES/neural networks which can beat to windward in this manner, going from a straight track to an oscillating track as conditions demand. This is a useful first problem because it involves simple temporal dynamics and a bifurcation — a switch between two modes of behaviour — both attributes typical of endocrine systems.

Following this more complex behaviours, such as power-sensitive activity scheduling and danger avoidance, can be layered on top of the system. New problem domains in different architecture, such as planetary rovers, will also be explored. The nature of the adaptive landscapes and dynamical systems constructed by the algorithms will be analysed, and compared with those of other evolutionary robotic systems such as continuous-time recurrent neural networks.


Other materials