[Push] New User - Need help to run Push on Windows XP

Lee Spector lspector at hampshire.edu
Thu Apr 27 13:08:56 EDT 2006


Deb,

Welcome.

On the general documentation issues, which apply to both the Lisp and  
C++ versions: The paper you referred to was written in the context of  
the first version of Push, to which we now refer as Push1. Since that  
time there have been two major revisions, and the current version is  
Push3. Most of the core concepts of Push1 have been retained (with  
the exception of the TYPE type) but new features have been added  
which, in our experience, significantly improve the language's  
usability and power in an evolutionary context. There are two things  
that you should probably look at to understand Push3:

- The Push 3.0 Programming Language Description. This is a technical  
report that describes the language pretty concisely, and includes  
comparisons to previous versions of Push, but it doesn't include much  
discussion of motivations, etc. It is available as a pdf from:

    http://www.hampshire.edu/cms_PDF/HC-CSTR-2004-02.pdf

It is also available in html from:

    http://hampshire.edu/lspector/push3-description.html


- A conference paper that describes and demonstrates the efficacy of  
the new features of Push3:

Spector, L., J. Klein, and M. Keijzer. 2005. The Push3 Execution  
Stack and the Evolution of Control. In Proceedings of the Genetic and  
Evolutionary Computation Conference (GECCO-2005), pp. 1689-1696.  
Springer-Verlag. http://hampshire.edu/lspector/pubs/push3-gecco2005.pdf


On the Lisp implementation questions:

You should download all of the files at http://helios.hampshire.edu/ 
lspector/push3/ -- although one of them, auto-simplify.lisp, is  
optional. Then load the "load" file by typing (load "load") to the  
Lisp prompt. This will compile and load all of the necessary files  
AND begin a run of PushGP on the default problem specified in  
pushgp3.lisp, using the configuration parameters in default.pconf.  
Output will be directed both to the screen and to a file called  
pushgp-output. To run the system on a different problem or with  
different parameters quit lisp and then edit the problem  
specification near the bottom of pushgp3.lisp and/or the parameters  
in default.pconf -- and then repeat the process outlined above.

I should note that I haven't tried this in clisp recently (I  
generally use CMU Common Lisp or Macintosh Common Lisp or OpenMCL),  
but the process described above should work. If you run into a  
problem let me know and I'll see what I can do.

On the C++ implementation questions:

I neither wrote nor directly use the C++ implementation, so about all  
I can say is that you can use g++-4.0 (which is free) and I think  
also some older versions of g++. Perhaps one of the C Push folks (HI  
JON AND MAARTEN) can chime in with installation instructions.

This doesn't directly address your questions but you might also be  
interested in the breve simulation environment (http:// 
www.spiderland.org/breve), which includes the C++ implementation of  
Push and a version of PushGP. I find it to be a very user-friendly  
way to use the C++ Push library. If you want to try this then  
download breve and take a look at the "PushRegression" demo.

  -Lee



On Apr 27, 2006, at 12:09 AM, Debabrata Midya wrote:

> Hi!,
>
> I am new to Push and want help to run PushGP in lisp (clisp) as  
> well as
> in C++. Thanks in advance.
>
> 1. PushGP LISP implementation
>
> My main interest is to use PushGP in the LISP environment.
>
> I have installed clisp-2.38 and clisp is running well.
>
> What are the PushGP programs I need? Is there any set of instructions
> available to run PushGP in LISP environment? If it is, please provide
> me.
>
> I am currently going through one of the papers, "Genetic Programming
> and Autoconstructive Evolution with the Push Programming Language".  
> Any
> other technical documents?
>
> 2. PushGP C++ implementation
>
> I have downloaded push-3.1.0.tar.gz. Which C++ compiler can I use and
> it's source of availability please? Can I use any public domain C++
> compiler? Is there any set of instructions to compile and run it?
>
> I am looking forward for your reply.
>
> Regards
>
> Deb
>
> NSW Department of Commerce
> Government Procurement Management
> Level 11
> McKell Building
> 2-24 Rawson Place
> Sydney NSW 2000
>
> Ph.  (02) 9372 8918
> Fax. (02) 9372 8844
> E-mail: debabrata.midya at commerce.nsw.gov.au
>
>
>
> ********************************************************************** 
> ********
>
> This email message, including any attached files, is confidential  
> and intended solely for the use of the individual or entity to whom  
> it is addressed.
>
> The NSW Department of Commerce prohibits the right to publish,
> copy, distribute or disclose any information contained in this email,
> or its attachments, by any party other than the intended recipient.
> If you have received this email in error please notify the sender  
> and delete it from your system.
>
> No employee or agent is authorised to conclude any binding
> agreement on behalf of the NSW Department of Commerce by email. The  
> views or opinions presented in this email are solely those of the  
> author and do not necessarily represent those of the Department,
> except where the sender expressly, and with authority, states them  
> to be the views of NSW Department of Commerce.
>
> The NSW Department of Commerce accepts no liability for any loss or  
> damage arising from the use of this email and recommends that the  
> recipient check this email and any attached files for the presence  
> of viruses.
>
> ********************************************************************** 
> ********
> _______________________________________________
> Push mailing list
> Push at lists.hampshire.edu
> http://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




More information about the Push mailing list