Mime-Version: |
1.0 (Apple Message framework v746.2) |
Sender: |
|
Date: |
Thu, 29 Dec 2005 14:50:03 -0800 |
Reply-To: |
|
Subject: |
|
From: |
|
Content-Transfer-Encoding: |
7bit |
In-Reply-To: |
|
Content-Type: |
text/plain; charset=US-ASCII; delsp=yes; format=flowed |
Comments: |
|
Parts/Attachments: |
|
|
On Dec 29, 2005, at 2:43 PM, Sean Luke wrote:
> Liviu is our coevolution man, but I believe this will do the
> following:
>
> For each individual i in the population
> If the individual has not yet had GROUPSIZE evaluations
> Pick a random individual j from the population that
> has not yet had GROUPSIZE evaluations
> evaluate i and j together once, assigning fitness to
> each
>
> Sometimes it happens that there's no one on left to evaluate against,
> in which case a random person j is chosen and his fitness is not
> assigned.
Okay, that would explain some things. Is an individual ever matched
against itself?
> During breeding, except for a few GP modifiers which had a bug in
> them, individuals modified to the next generation should be marked as
> not evaluated. Individuals which are direct copies will be marked as
> evaluated. However CompetitiveEvaluator will evaluate individuals no
> matter how they're marked.
In other words, individuals will always be marked as not evaluated?
If so, how can I set the initial fitness of an unevaluated individual
just once?
> Your GoProblem example is odd though: it appears in
> postprocessPopulation you're just trimming fitnesses to between 0 and
> 100. Why would you want to do that?
I set the minimum to zero in the belief that fitnesses have to be
nonnegative. Is this true?
I set the maximum to 100 so that an individual could not build up a
huge fitness by winning many early games, then never be knocked down
by later losses.
Is this bad reasoning?
Peter Drake
Assistant Professor of Computer Science
Lewis & Clark College
http://www.lclark.edu/~drake/
|
|
|