Wednesday, October 12, 2005

on evolving minimal controllers

I now know the circle-diamond (fixed size) task can be solve by a reactive controller. One important implication of this result can be illustrated by always attempting to evolve for the simplest controller.

An interesting way of making this point is by using the exact same set up as Randy in his circle-diamond paper but change the fitness function to add two more costs: (a) cost for recurrent connections and (b) cost for big time constants.

So the fitness of an individual is given by:
f = 0.5A + 0.25B + 0.25C
where A is the fitness function used by Randy (i.e. points for catching circles and avoiding diamonds), B attempts to minimise the absolute value of the weights which are recurrent towards nil while C attempts to minimise the value of the time constant towards its minimum (i.e. one).

In order to cope with the unlikeliness of having a weight which is exactly zero, the simulation is changed so that all weights between -1 and 1 are effectively treated as zero. Similarly for time-constants, as it is unlikely to have a time-constant which is exactly 1.0, time-constants smaller than 1.5 are changed to 1.0.

As a test it was checked when the weight of A was reduced to zero the evolved network would straightforwardly go towards a reactive one which it did.

There is one very significant doubt which I have about the time-step of simulation which is 0.2 at the moment. As this value is fixed (obviously not evolved) there is no chance for changing it in the middle of the experiment.. Would a network which has no recurrent connections and all time-constants set to 1 be reactive regardless of the time-step of integration being less than 1? If not, is there at least the possibility that, once evolved, that network be able to perform when the simulation is changed to a time-step of 1?


Post a Comment

<< Home