help-gsl
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Help-gsl] Re: Help: working with large gsl_vector


From: Toan T Nguyen
Subject: [Help-gsl] Re: Help: working with large gsl_vector
Date: Tue, 14 Dec 2004 15:10:28 -0800
User-agent: KMail/1.7.2

Hi, thank you for the analysis. Apparently, my analytical calculation is able 
to guess the minimum reasonably good, so I need only 20000 iterations to find 
the minimum. 

However, the strange thing is if I take the final minimized vector and run it 
through the conjugate gradient routine again, the energy (my function to 
minimize) keeps going down for a few more 1000s iterations (albeit it change 
only the 4th significant digit). Do you know what's wrong?

I follow the example in the GSL document and set my success criteria as

status = gsl_multimin_test_gradient (s->gradient, 1e-20);

The initial setup of the vector is

T = gsl_multimin_fdfminimizer_conjugate_pr;
s = gsl_multimin_fdfminimizer_alloc (T, 3*nparts);
gsl_multimin_fdfminimizer_set (s, &energy, x, 0.001, 1e-12);

For clarity, I used dimensionless units so ALL the nearest neighbor distances 
and the coupling constants are of the order of unity. nparts is the number of 
particles which is about 100000.

Could you give some advises? Thanks a lot in advance.

Toan



On Monday 13 December 2004 10:50, Fabrice Rossi wrote:
> Toan T Nguyen wrote:
> > I'm using the multidimensional minimization procedure in GSL and have
> > problem with large vectors. The dimensionality of my vectors is 300000
> > which means my index variable is of long integer type.
>
> Hum. I authored the initial version of the multidimensional minimization
> functions which have been improved by others, but I don't think they
> have been improved in such a way that optimization in dimension 300 000
> is possible. Even for a quadratic function and using a conjugate
> gradient algorithm, it will take 3e5 iterations to the algorithm to
> complete. As each iteration implies a linear search for minimum that
> will use at least around 10 evaluations of your function, your a looking
> for 3e6 function evaluation. Unless you have a very special problem, I
> would guess that a function evaluation take at least 3e5 operations to
> complete, which implies 9e11 operations (a.k.a. 2^39 operations). That's
> a lot. And we are talking about a quadratic form, remember ?
>
> Perhaps you could tell us a little bit more about your application ?
>
> Fabrice
>
> PS : Support Vector Machine algorithms have proven that it is indeed
> possible to do quadratic optimization under constraints in high
> dimensional space (like 10000 dimensions), but they use _very_ complex
> methods.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]