Adaptation and personalisation

We investigate the complexity of mutual interaction between learner, teachers and educational software developing new approaches for educational content adaptation, personalising the support and educational services to teachers and learners. Our aim is to create new opportunities for knowledge communication and learning meeting unique and specific needs, characteristics and preferences of individuals, groups and communities . We employ state-of-the-art technologies, such as ontologies,† artificial and nature-inspired intelligence paradigms, user modelling, and data mining, aiming to strike a balance between technologies, learners/teachers and their environments, between adaptation and accommodation.

Genetic Programming Representations for Complex Systems Modelling
Wednesday, 28 May 2008







†PhD Project
Tony E Lewis

Primary PhD Supervisor
George D Magoulas† This e-mail address is being protected from spam bots, you need JavaScript enabled to view it

Secondary PhD Supervisor
Boris Mirkin†† This e-mail address is being protected from spam bots, you need JavaScript enabled to view it

Project Details
† College Studentship

October 2007-September 2010

† Genetic Programming



Genetic Programming Representations for Complex Systems Modelling

Project Aims

Genetic Programming (GP) researchers have proposed several forms of computer program (or representations) to be used for artificial evolution.† Typically, representations are highly effective during the initial search phases of evolution but stagnate before deep levels of complexity are developed.† The research aims to find methods of improving the
long term acquisition of novel features in GP.

TREAD: A New GP Representation

The research has generated a new representation, TREAD (Tangle Representing Execution And Data), which combines aspects of flow of execution and flow of data systems.† TREAD evaluation is performed in an iterated manner which allows for complex solutions to tackle complex problems.† TREAD has several novel features:

  • Each node has a "state of execution" (indicating whether a node is computing new values during a given iteration). The state of execution is determined by the sign of the value at an extra "trigger" input socket. An extra "activated" output socket indicates the current state of execution.
  • A node's input sockets are permitted to have multiple input connections. The value used by the node is the sum of the values from the input connections.
  • Each connection has a real valued (possibly negative) weight which its signal is multiplied by.

To offset the computation required for these complex programs, evaluation is accelerated with†GPU computation using nVidia's CUDA technology.†











A randomly created TREAD program.† The trigger socket is displayed at the top of the node and the activated socket at the bottom.† Weights are displayed near their connections.

Future work

Planned research includes investigating the effects of TREAD's features, investigating the role of modularity on long term complexity growth and using the findings to attack new kinds of complex problems.


"TREAD: A New Genetic Programming Representation Aimed at Research of Long Term Complexity Growth", to appear in the Proceedings of the Genetic and Evolutionary Computation Conference (GECCO) 2008.


23-29 Emerald Street, London WC1N 3QS††† phone: +44 (0)20 7763 2174††††