[Insight-users] OnePlusOneEvolutionary optimizer returns misleading string from GetStopConditionDescription

Alex Taylor Alex.Taylor at mathworks.com
Wed Sep 7 15:16:45 EDT 2011


All,

I'm trying to use the OnePlusOneEvolutionaryOptimizer to solve registraiton problems as is done in Examples/Registraiton/ImageRegistration11.cxx.

It seems to me like the output of GetStopConditionDescription is incorrect when the reason for convergence is that Epsilon has been reached. When convergence has occurred, the GetStopConditionDescription reports that the MaximumNumberOfIterations has been reached, which is misleading.

If you just modify ITK/Examples/Regsitration/ImageRegistration11.cxx and make Epsilon really really large (4000000000000000), convergence should occur immediately, yet you still receive:

Optimizer stop condition: OnePlusOneEvolutionaryOptimizer: Maximum number of iterations (40000000) exceeded.

As the output of:

registration->GetOptimizer()->GetStopConditionDescription()

Does anyone know how to get an accurate StopConditionDescription from the optimizer?

Am I incorrect in thinking that the StopConditionDescription is wrong? I set the maximum number of iterations to be large so that I could verify that 40000000 iterations couldn't possibly have really happened, since the algorithm stops immediately.

I've included the .cxx file that reproduces this issue as an attachment.

-Alex.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.itk.org/pipermail/insight-users/attachments/20110907/f2ecad80/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OnePlusOneIssue.cxx
Type: application/octet-stream
Size: 12054 bytes
Desc: OnePlusOneIssue.cxx
URL: <http://www.itk.org/pipermail/insight-users/attachments/20110907/f2ecad80/attachment.obj>


More information about the Insight-users mailing list