[Insight-developers] itkInitializationBiasedParticleSwarmOptimizerTest: intermittent failures

Bill Lorensen bill.lorensen at gmail.com
Sun Sep 18 15:35:35 EDT 2011


You may need to add a method for the optimizer to set a seed. Many
commercial applications will want repeatability, especially for
regression testing.

Bill

On Sun, Sep 18, 2011 at 3:32 PM, Bill Lorensen <bill.lorensen at gmail.com> wrote:
> Ziv,
>
> It should stay as a unit test. Perhaps the test can provide a fixed
> seed. If we have to, we can experiment to get the test to pass on all
> platforms.
>
> Bill
>
> On Sun, Sep 18, 2011 at 3:27 PM, Yaniv, Ziv
> <ZYaniv at childrensnational.org> wrote:
>>
>>
>> --
>> Ziv Yaniv, PhD.,
>> Principal Investigator,
>> The Sheikh Zayed Institute for Pediatric Surgical Innovation
>> Children's National Medical Center
>> 6th Floor Main Hospital, Room M7740
>> 111 Michigan Ave., N.W
>> Washington, D.C 20010
>> Phone: 202-476-1288
>> email: zyaniv at childrensnational.org
>>
>> Hi Bill,
>>
>> This is not a bug but a feature (excuses, excuses). The theory of this
>> heuristic family of algorithms does not guarantee convergence to a local
>> optimum. The method's claim to fame is as an efficient approach to searching
>> the parameter space.
>> Most often a standard optimizer is run afterwards to ensure that the end
>> result is indeed a local optimum. The problem is with the way I designed the
>> tests and not the algorithm. I don't have a good idea of how to design a
>> better unit test for this optimizer. If I run a standard algorithm
>> afterwards it is a combined test for two optimizers. Does this seem like a
>> valid approach to you?
>>
>>           thanks
>>              Ziv
>>
>>
>> -----Original Message-----
>> From: Bill Lorensen [mailto:bill.lorensen at gmail.com]
>> Sent: Sun 9/18/2011 2:57 PM
>> To: Yaniv, Ziv
>> Cc: Insight Developers
>> Subject: itkInitializationBiasedParticleSwarmOptimizerTest: intermittent
>> failures
>>
>> Ziv,
>>
>> The subject test is having intermittent failures. I realize that the test
>> use random numbers for initialization, but the failure indicates that even
>> though the convergence criterion is met, the results does not pass a
>> tolerance test. This may indicate a bug in selecting the parameters after
>> convergence.
>>
>> Bill
>>
>>
>


More information about the Insight-developers mailing list