1

I was confused because using optim() SANN was returning different results for same input. I did not find a global minimum for a given starting point and fn, and I concluded that SANN cannot find it for that given fn and starting point. My conclusion was wrong since SANN is stochastic.

My question is: Let's say I use SANN and I am unlucky and I can't find a global minimum. How can I avoid concluding that SANN will not find a global minimum? is it the only way re-running it 20 times and seeing if I always get the same value?

More generally, my question would be how do you justify SANN (or any other) can potentially find a global optimum? (for a given particular starting point and function).

I do know this "we could never have a computer algorithm that is guaranteed to". From book 'computational statistics' from James E. Gentle.

Chicago1988
  • 970
  • 3
  • 14
  • 35
  • 2
    Apart from simple/low-dimentional and analyticly solvable models, I don't think there is ever certainty that any, such as SANN, optimization algorithm will give you global optimum. From high-school you might remember analyzing one-dimentional functions wrt global minima but that's almost never the case in real life applications. Re-running optimization routine with different initial guesses is the only way to explore parameter space. A suggestions I can offer is to use latin-hypercube algorithm to produce intial guesses covering parameter space efficiently and better then uniform sampling. – mjs Mar 14 '19 at 13:41

0 Answers0