Sender: |
|
Date: |
Sun, 28 Sep 2008 17:44:46 +0100 |
Reply-To: |
|
Content-Transfer-Encoding: |
7bit |
Subject: |
|
From: |
|
Content-Type: |
text/plain; charset=ISO-8859-1; format=flowed |
In-Reply-To: |
|
MIME-Version: |
1.0 |
Comments: |
|
Parts/Attachments: |
|
|
Hi Ondrej,
In the past I've written individuals out to a C source file, compiled
them using GCC and run them through a processor simulator. It is fairly
straightforward to implement, I use makeCTree and override this method
where necessary.
It is quite slow, but there are plenty of ways to speed up the process
of compiling and evaluating, depending on the nature of the problem
you're trying to solve. I've also recently started using Master-Slave
evaluation to run my experiments across machines, which is a very
scalable way of dealing with this situation. Whether it will be fast
enough for your work depends on the problem you're solving (e.g. can you
compile the individual and evaluate it in a single execution? or would
you have to re-compile or execute multiple times?) and the number of
generations and population size.
Cheers
David
Ondrej Pacovsky wrote:
> Hi,
>
> I was wondering whether someone tried converting the GP individual to
> java (or other) code (perhaps by the ECJ to Java converter) and
> compiling it before actually running the evaluation. This is of course
> quite slow, but for symbolic regression on many training values could be
> interesting. Thinking of 10^3 and more evals per individual per
> generation.
>
> -- Ondrej
--
David R White
Research Student
Department of Computer Science
University of York
York YO10 5DD
United Kingdom
Phone: +44 (0)1904 434756
|
|
|