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 hypothetic.org 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.