This is true of Minimize
. But NMinimize
can get trapped in a local min. In this example of course it does just fine:
In[109]:= NMinimize[f[x], x, Method -> "SimulatedAnnealing"]
Out[109]= {-3.0233, {x -> -0.711232}}
Also one should bear in mind that any method based on simulated annealing can get trapped. It just doesn't happen for this example and the implementations presented.