Actually, it's a bug in the first generation loop of CMA-ES: we were not scaling the covariance matrix by sigma, but rather leaving it as the identity matrix the first time around. This is a minor bug but could result in CMA-ES going into, effectively, an infinite loop as it tries and fails to generate individuals within unusual min/max gene bounds.
We've fixed it as follows. First, we fixed the bug. Secondly, we added the ability to prescale the covariance matrix by min/max gene bounds to reduce the loop time; and third, we added an alternative individual-generation process to further reduce loop time. See the manual for more explanation.
Anyway, fix pushed out.
Sean
On Mar 30, 2016, at 9:59 AM, Sean Luke <[log in to unmask]> wrote:
> This doesn't appear to be due to segments, but rather due to the small min/max range of the segments, which is causing an inordinate number of invalid individuals. However that should *not* be an issue, so we'll look into what the initialization issue is.
>
> Sean
>
> Begin forwarded message:
>
>> From: "Eric 'Siggy' Scott" <[log in to unmask]>
>> Subject: CMA-ES hangs when segments are used
>> Date: March 29, 2016 at 9:45:49 PM EDT
>> To: [log in to unmask]
>> Reply-To: ECJ Evolutionary Computation Toolkit <[log in to unmask]>
>>
>> Using the latest snapshot from GitHub, I find that, if I use segments in my genome, CMA-ES silently gets stuck before the first generation is evaluated.
>>
>> Attached is a MWE.
>>
>> I'm guessing that some background thread has silently crashed while the main thread was waiting for it?
>>
>> Siggy
>>
>> --
>>
>> Ph.D student in Computer Science, George Mason University
>> CFO and Web Director, Journal of Mason Graduate Research
>> http://mason.gmu.edu/~escott8/
>
|