So here is my trouble:
I wanted to test whether my estimation method is correct, so what I did was to simulate a data set with a group of parameters: (a=200, b=0.3, c=0.4, d=0.5, for example). If my estimation method is correct, then when it's applied to the generated data set, it should be able to recover the 4 parameters at their "true values".
The thing is, I figured out my objective function has many local optima and suffers from starting point. If I let initial "a" be 200 (the true value), and (b,c,d) be random draws then after trying different (b,c,d) starting points, the estimates with minimum objective function value will give me the recovered parameters correctly. But, if I let the starting "a" be far off the true value (say 100 or 150), then I could never be able to recover the parameters, because the optimization will always find some "local optima" near the starting point.
What should I do?