[Push] minor push3 updates
Lee Spector
lspector at hampshire.edu
Sat Jul 31 21:06:39 EDT 2004
FYI I just made a couple of minor changes to the push3 files I posted
yesterday, spelled out below. On the factorial example (now the default
example in pushgp3.lisp), check out the following (simplified) evolved
factorial function:
(1 INTEGER.MAX 1 EXEC.DO*RANGE INTEGER.*)
This now replaces the example that was in push3-description.html -- I
had neglected to notice that that one (which was identical except that
it lacked the initial "I INTEGER.MAX") gave the wrong answer for the
special case of input=0.
Also, I've uploaded my "auto-simplify.lisp" utility to the same
directory. This is a simple "hill-climber" that tries random deletions,
replacements with junk symbols, and flattenings, accepting every change
that maintains fitness. Simple but very handy. For the above case it
simplified it from a fairly big beast to exactly what you see except
that in place of "1" in both places it had "INTEGER.STACKDEPTH" --
since I could see that the stack depth was always 1 in both cases, I
could make the substitution.
-Lee
push3-description.html:
20040731: - Fixed typos, added "Pushkin," other minor fixes.
- Fixed factorial examples for input of zero.
push3.lisp:
20040731: Changed *TOP-LEVEL-PUSH-CODE* *TOP-LEVEL-POP-CODE* to take
TRUE/FALSE
rather than T/NIL. This required a tweak to
defpushparameter.
Added generate-full-config-code function.
Prevented ENV.TYPES and ENV.INSTRUCTIONS from appearing in
automatically
generatied configuration files.
pushgp3.lisp:
20040731 - Added "flatten" mutation method.
- Made the factorial example (elaborated with configuration
code)
the default (since it can now be solved!)
--
Lee Spector
Dean, Cognitive Science + Professor, Computer Science
Cognitive Science, Hampshire College, Amherst, MA 01002
lspector at hampshire.edu, http://hampshire.edu/lspector/
Phone: 413-559-5352, Fax: 413-559-5438
More information about the Push
mailing list