Sender: |
|
Date: |
Sun, 28 Sep 2008 21:41:09 +0200 |
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: |
|
|
David R White wrote:
> 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.
This is quite interesting, is the source available somewhere ?
> 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.
I need to re-compile each individual each time it changes (usually every
generation). But my fitness eval means calling >10^3 times the same
individual, so the cost of compilation could be overcome if the single
tree eval call is significantly faster after compilation.
Ondrej
>
> 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
>
|
|
|