On Mon, February 11, 2008 10:05 pm, John Mark Swafford said:
> Dear All,
>
>     I have been running a series of experiments where I am calling
> pyrobot from within another python program. I am working with
> grammatical evolution (an evolutionary algorithm that evolves executable
> code from a grammar). When the code I am evolving is executed from
> within another python program, it should solve a maze and return a
> fitness. According to my results, the code I am generating does not
> solve the maze and does not have a good fitness. My problem lies in that
> when I use the same generated code in the pyrobot GUI, it does in fact
> solve the maze and should return a high fitness. I copied my fitness
> function, just the robot's geographical distance from the end of the
> maze divided by the total distance between the starting point and the
> finish, so that it is the same in both the python executed code and the
> GUI executed code. Can anyone suggest a reason as to why this is
> happening?

Differences in timing could result from things like socket communication
and other "real" sources of randomness. There are generally two options:

1) try to evolve code that is resistant to such timing differences and is
robust to transference to slightly different contexts. You could try to
accomplish this by adding randomness.

2) make your code run exactly the same when testing and evolving, ie get
rid of any source of "real" randomness (don't use sockets). If you test
exactly in the same manner as you evolve, you should be fine.

To diagnose this further, I'd have to see how you are evolving and testing.

-Doug

> Kind Regards,
> John Mark S.
>
> _______________________________________________
> Pyro-users mailing list
> [email protected]
> http://emergent.brynmawr.edu/mailman/listinfo/pyro-users
>


-- 
Douglas S. Blank
Associate Professor, Bryn Mawr College
http://cs.brynmawr.edu/~dblank/
Office: 610 526 6501

_______________________________________________
Pyro-users mailing list
[email protected]
http://emergent.brynmawr.edu/mailman/listinfo/pyro-users

Reply via email to