Proposals:Refactoring of optimization framework
From KitwarePublic
Jump to navigationJump to search
Refactor Optimization Framework Based on Available Function Derivative Information
Modification to cost function hierarchy
Currently all cost functions are subclasses of itk::SingleValuedCostFunction or itk::MultipleValuedCostFunction. These two classes are pure virtual, forcing the user to implement a GetDerivative() method. This assumes that the optimized function is differentiable. When this is not the case, developers either provide a bogus derivative which is problematic if they unintentionally use an optimizer that utilizes this information or they can throw an exception.
The