MantisBT - ITK
View Issue Details
0003606ITKpublic2006-08-14 08:452010-11-06 23:43
Luis Ibanez 
brian avants 
urgentminoralways
assignedopen 
 
 
0003606: RegularStepGradientDescentOptimizer reports current position out of sync in iteration event
In the RegularStepGradientDescentBaseOptimizer the IterationEvent is invoked at a moment where the current position has already been computed for the next iteration. This results in mismatch between the "current position" and the "m_Value" reported.

Lines 263 and 267 should be reverted.
No tags attached.
related to 0003205assigned Ziv Yaniv Record the best value visited by an optimizer 
Issue History
2010-11-05 00:26Cory W QuammenRelationship addedrelated to 0003205
2010-11-06 23:39Luis IbanezAssigned ToLuis Ibanez => brian avants
2010-11-06 23:43Luis IbanezNote Added: 0022935

Notes
(0004638)
Luis Ibanez   
2006-08-14 08:46   
We should check whether a similar problem happens in other optimizers.
(0004639)
Luis Ibanez   
2006-08-14 08:48   
There is also an issue with not keeping the position of the actual lowest value:

http://public.kitware.com/pipermail/insight-users/2006-August/019041.html [^]
(0022935)
Luis Ibanez   
2010-11-06 23:43   
This still seems to be the case.

itkRegularStepGradientDescentBaseOptimizer.cxx: 266

  this->InvokeEvent( IterationEvent() );

at the end of the AdvanceOneStep() method.

which means that the Current position is the new one,
but the cached value is the one of the previous position.