[Insight-users] LevenbergMarquardt Optimizer
Luis Ibanez
luis.ibanez@kitware.com
Fri, 20 Sep 2002 10:47:16 -0400
Mark, Jim,
Yes, this request was made some time ago and
was floating on the TODO list...
I'm right now adding the access following in
part Mark's suggestion:
1) The following methods have been added to
Insight/Code/Numerics/itkMultipleValuedVnlCostFunctionAdaptor
void UseGradient(bool);
void UseGradientOn() { this->UseGradient( true ); };
void UseGradientOff() { this->UseGradient( false ); };
2) And access to the functionality is granted from
Insight/Code/Numerics/itkMultipleValuedNonLinearVnlOptimizer
by the methods:
void UseCostFunctionGradient(bool);
void UseCostFunctionGradientOn() {
this->UseCostFunctionGradient( true ); };
void UseCostFunctionGradientOff() {
this->UseCostFunctionGradient( false ); };
I'm running a couple of tests before checking this in.
Luis
=================================================================
Miller, James V (Research) wrote:
> I believe this has been discussed and I thought that some was going
> to allow access to the LevenbergMarquardt routine without having a
> gradient function.
>
> Luis, Do you remember who was going to added this capability?
>
>
>>-----Original Message-----
>>From: Mark Hastenteufel [mailto:M.Hastenteufel@dkfz-heidelberg.de]
>>Sent: Friday, September 20, 2002 9:50 AM
>>To: ITK Users
>>Subject: [Insight-users] LevenbergMarquardt Optimizer
>>
>>
>>Hello!
>>
>>I'm wondering about the usage of the LevenbergMarquardt algorithm for
>>optimization of multiple valued costfunctions. One have to implement a
>>gradient function, even though it is possible from vnl library to use
>>LevenebergMarquardt without implementing the gradient function.
>>Therefore one have to set
>>vnl_least_squares_function::UseGradient=no_gradient. But one have no
>>access to vnl_least_squares_function and
>>itkMultipleValuedVnlCostFunctionAdaptor, respectivly. The appropriate
>>method GetCostFunctionAdaptor (void) in
>>itkMultipleValuedNonLinearVnlOptimizer is declared protected. I think
>>this should be a public method or there should be a method like
>>itkMultipleValuedNonLinearVnlOptimizer->UseGradient() and
>>itkMultipleValuedNonLinearVnlOptimizer->UseNoGradient().
>>
>>Any comments about that? Thanks in advance,
>>
>>
>>Mark
>>
>>
>>--
>>Mark Hastenteufel
>>Deutsches Krebsforschungszentrum (German Cancer
>>Research Center)
>>Div. Medical and Biological Informatics H0100 Tel: (+49)
>>6221-42 2353
>>Im Neuenheimer Feld 280 Fax: (+49)
>>6221-42 2345
>>D-69120 Heidelberg e-mail
>>M.Hastenteufel@DKFZ.de
>>Germany
>>
> http://www.dkfz.de/mbi/people/markh.html
> _______________________________________________
> Insight-users mailing list
> Insight-users@public.kitware.com
> http://public.kitware.com/mailman/listinfo/insight-users
> _______________________________________________
> Insight-users mailing list
> Insight-users@public.kitware.com
> http://public.kitware.com/mailman/listinfo/insight-users
>
>