Wednesday, 3 April 2013

The Idea of Atom Classes: Atoms of the Reservoir Class

Implementing a Liquid State Machine Atom in Brian or Oger 

Having discussed with Goren Gordon [an extremely clever physicist who totally 'gets it'], it is essential he says to define formally sensible classes of atoms that are mutationally robust, i.e. atoms within the same class can be substituted with each other without a semantic fuck-up. The molecule should still function semantically after a within-class substitution. In other words this is a grammatically valid substitution of atoms. The formalisation we're trying to produce basically defines an valid set of grammatically valid mutational transformations.

The atoms I describe here will fall into the class of atoms known as 'resevoirs', i.e. they take an input vector in real-time and inputs this into a reservoir and outputs the state of that reservoir.

Here I implement a LSM atom which can become involved in the motor molecule to produce a potentially rich motor dynamics.

I think the easiest thing is to use Brian the neural network simulator in Python...

http://briansimulator.org/?utm_source=twitterfeed&utm_medium=twitter

Another option is to use Oger

http://organic.elis.ugent.be/oger/tutorials

Or simply to code a reservoir from scratch.

Goren's website with papers is here... Take a look at his wonderful work. His idea of the hierarchical curiosity loop was one of the major inspirations for this work.

http://gorengordon.com/


Visualisation of Actor Molecules in Real-Time

Think I'll try to use http://networkx.github.com/documentation/latest/index.html to visualise the activation of the actor molecule in real-time as evolution is running. This will slow things down a bit I suppose, but will be critical for debugging. I believe the mutation operators are not doing quite the right thing. 

Making graphs: http://networkx.github.com/documentation/latest/tutorial/tutorial.html
Drawing the graphs: http://networkx.github.com/documentation/latest/reference/drawing.html

Graph drawing completed. Running a long run over night now, with pop size = 100 with optimisation of accelerometer 143. 


No comments:

Post a Comment