[Insight-users] Why itk::LBFGSBOptimizer and itk::LBFGSOptimizer are classed as single-variant optimisers?

Karthik Krishnan karthik.krishnan at kitware.com
Wed Nov 7 09:49:53 EST 2007


Ali:

I'd suggest that you clarify your interpretation of multi-variant.

Nearly all optimizers minimize a function of n variables. f( vector ). ie
multi-variate
It is quite another thing to minimize multiple functions concurrently. ie
multi-valued . for instance minimizing two metrics during registration.

-- 
Karthik Krishnan
R&D Engineer,
Kitware Inc.

On 11/7/07, Stefan Klein <stefan at isi.uu.nl> wrote:
>
>  Hi,
>
> The itk/vxl::LBFGS(B)Optimizer implementation IS multivariate. The
> 'multivariate' label refers to the number of variables (input arguments of
> the cost function) over which is optimised.
>
> the optimisaton problem is:
>
> min_x f(x)
>
> On the site http://www.alglib.net/optimization/  a multivariate
> optimisation method means that dim(x) >1 is allowed.
>
> The LBFGSOptimizer is not suitable for MultipleValuedCostFucnction, as far
> as I know, only for SingleValuedCostFunctions.
>
> singlevalued means: dim(f) = 1
> multiplevalued means: dim(f) > 1
>
> The vnl_cost_function indeed inherits from the vnl_unary_function, but the
> vnl_unary_function is templated over a vector of doubles, which contains the
> input argument x:
>
> class vnl_cost_function : public vnl_unary_function<double,
> vnl_vector<double> >
>
> with kind regards,
> stefan
>
>
> At 08:35 7-11-2007, Luis Ibanez wrote:
>
>
> Hi Ali,
>
>
> 1) It is not a "problem", it is an "implementation feature".   :-)
>
>
>
> 2) It is not in ITK, it is in VXL,
>
>    Please look at the implementation in the file:
>
>         Insight/Utilities/vxl/core/vnl/vnl_lbfgs.h
>
>    Where the optimizer takes as input a vnl_cost_function
>    object, that derives from the vnl_unary_function class.
>
>
>
> 3) It will be great to have multi-variate implementations
>    of these optimizers. If you are motivated to write one,
>    it will make a great contribution to the Insight Journal.
>
>
>
>     Regards,
>
>
>        Luis
>
>
>
> -------------
> Ali - wrote:
>
> Hi,
> The VNL wrappers itk::LBFGSBOptimizer and itk::LBFGSOptimizer are
> classified as single-variant optimiser, while being based on the
> quasi-Newton method, they are multi-variant optimisers by nature -- see
> http://www.alglib.net/optimization/ . Is this the ITK wrapper problem or a
> VNL issue?
> _______________________________________________
> Insight-users mailing list
> Insight-users at itk.org
> http://www.itk.org/mailman/listinfo/insight-users
>
> _______________________________________________
> Insight-users mailing list
> Insight-users at itk.org
> http://www.itk.org/mailman/listinfo/insight-users
>
>
>
> _______________________________________________
> Insight-users mailing list
> Insight-users at itk.org
> http://www.itk.org/mailman/listinfo/insight-users
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://public.kitware.com/pipermail/insight-users/attachments/20071107/f5148711/attachment.html


More information about the Insight-users mailing list