[Push] First Actual GP Runs
Lee Spector
lspector at hampshire.edu
Sun May 2 10:11:56 EDT 2010
Hi Rud,
Yes -- running random code is a good way to find bugs!
With no genetic operators your improvement in population fitness was just the concentration of the initially better programs in the population, but I see that that's useful for debugging too.
To get more evolution happening you'll want not only genetic operators but also a fitness test that provides more of a gradient -- presumably a term (aside from the penalties for no integer or non-completion) that gives a heuristic indication of how far a candidate is from being a solution. In your present case that's probably just the difference between the result and 5.
-Lee
On May 2, 2010, at 2:12 AM, Rud Merriam wrote:
> Late Saturday night I finally got some testing done with populations. My simple goal is to get a 5 on the integer stack. The fitness test right now 20 is points for having something on the integer stack and -10 points for not completing.
>
> First observation is that generating a lot of random code finds a lot of bugs in the Push instruction implementation. Having the unit tests I mentioned in my last update really helps. I can create a specific test for the bug, get a fix for the bug, and then fix all the problems in all the other unit tests that the fix causes. Sometimes that meant fixing the results expected from the test!
>
> For this first run there were no genetic operators only population selection. Even that is very simplistic. If an individual scored above zero it stayed in the population. Any individuals who failed were replaced with new random code.
>
> The population count is 20 and within 10 generations the overall fitness of the population increased nicely.
>
> I realize this is nothing dramatic but I just had to share.
>
>
> - 73 -
> Rud Merriam K5RUD
> http://mysticlakesoftware.com/
>
> _______________________________________________
> Push mailing list
> Push at lists.hampshire.edu
> https://lists.hampshire.edu/mailman/listinfo/push
--
Lee Spector, Professor of Computer Science
School of Cognitive Science, Hampshire College
893 West Street, Amherst, MA 01002-3359
lspector at hampshire.edu, http://hampshire.edu/lspector/
Phone: 413-559-5352, Fax: 413-559-5438
Check out Genetic Programming and Evolvable Machines:
http://www.springer.com/10710 - http://gpemjournal.blogspot.com/
More information about the Push
mailing list