projects + research + code



Athens public transport trip planner
Visualisation of Athens Public Transport Network
Athens Taxi Cost Calculator | Blog
Athens historic, neoclassical and eclectic architecture map
UK bus stop locations map

NeuroEvolution of Augmenting Topologies (NEAT)

NeuroEvolution of Augmenting Topologies (NEAT) is a neuroevolution technique -- a genetic algorithm for evolving artificial neural networks -- developed by Ken Stanley while at The University of Texas at Austin. It notably evolves both network weights and structure, attempting to balance between the fitness and diversity of evolved solutions. It is based on three key ideas: tracking genes with historical markings to allow crossover between different topologies, protecting innovation via speciation, and building topology incrementally from an initial, minimal structure ("complexifying"). -- wikipedia

java src -- NEAT applied to XOR problem


betamax started off as a simple command line based 'chatter-bot' based on simple natural language engineering algorithms. Betamax was then connected to irc networks via pirbot java api, where it began to learn english. Using markov models to generate sentences from previously observed conversations, Betamax appeared to posses intelligence. Having had some fun, it was then decided to form a longer term project from Betamax - to explore machine conciousness.

Initially, using irc as an environment, betamax was improved by representing the meaning of sentences and observing the context of conversation. A java msn api was then developed based on protocol specifications from to enable betamax to talk to individuals via msn. External tools used so far in the development of betamax include Stanford Log-linear Tagger for part-of-speech tagging and Wordnet - a "lexical reference system whose design is inspired by current psycholinguistic theories of human lexical memory"

A Heterogeneous Multi-Agent System For Urban Disaster Recovery

The RoboCup Rescue project was formed in 2001 following the success of the RoboCup soccer project. The project tackles the problem of real-world urban disasters, in which emergency forces (agents) must co-operate within a volatile and heavily constrained environment in order to minimise human casualties and structural damage. I've developed a Heterogeneous Multi-Agent System, using Neural Networks and Genetic Algorithms for tactical scheduling of resuce agents. It is designed to operate within the RoboCup Rescue urban disaster simulator.

java src
© 2009