Wednesday, 13 February 2013

How to define an open-ended space of games to play during development < 5 months of age?

Right. I've now coded some basic action molecules! Actions activate each other with 0/1 probability and an integer delay. There are root actions and non-root actions. In one behavioural generation all root actions are activated one by one, and this generates the action molecules whose fitness is to be assessed and assigned to each atom in that molecule.


How do define games? 

The question now is, how to define a game. Some possibilities are as follows.

1. Random generation of target state vectors. A game may specify a desired/target sensory vector, e.g. maximize x value of the accelerometer, or maximize leg joint angles, or maximize foot weight sensors, or maximize USS sensor readings, etc..

2. Instructed generation of target state vectors, or target state trajectories (mutated from the currently observed state trajectories). A game may be generated/initialized by the sensory effects of actions that are generated by the population of actors that exist. This is a kind of covering (instructed) initialisation of games, inspired by modifications (perhaps systematic modifications) of sensory events generated during the current motor repertoire. These might produce static states as desired states, or may even be movement trajectories (and mutations of such trajectories).

3. For now consider only atomic games (not composite games). A game may specify some efficiency property, e.g. to achieve the largest range of motor angles with the least amount of current, i.e. some kind of energy minimisation with some over sensory feature being maximised.

4. Games using Higher-Order Perceptual Features which are generated by unsupervised learning algorithms applied to the sensory inputs observed during the current behaviour generation.

5. The rate of progress on a compression algorithm (unsupervised learning algorithm/autoencodeer/DBN etc) could itself be a measure of interest, e.g. one game may be to try to geneate actions that increase compression efficiency of the smMatrix during that action (might be hard to do this), or try to decrease compression efficiency (might be easy for actors to do this)

6. Maximize MI between motor and sensory states. 
All these games replicate with variation, and the fundamental fitness function that selects between games is the variance of actors on that game. The higher the variance on that game, the fitter that game. That part is very clear to me, and thats why I'm building NAO robots with fabric sensors etc... so it can play these consciousness creating games.


No comments:

Post a Comment