MATLAB: It seems that patternsearch does not use the initial guess.

MATLABpatterensearch

Greetings,
I am working on a optimization problem by patternseach. I have a initial guess vector whose objective function is about 13.5. However, when I used the patterensearch, the objective function is 63.59 far from my initial guess; even after 2200 iterations, it is still far from my inital guess. I checked the x0 of patteren search at iter 0 and found it used [1 0 0…] as x0, instead of my inital guess vector or (my inital guess vector + [1 0 0 …]).
I wish it can search from my initial guess and the range I provided. Are there any good suggestions?

Best Answer

Hi,
After checking your code I've seen your write to time lb(222) and the second time you specify lb(222)=0 BUT your initial guess doesn't meet the lower bound (para0(222) = -0.0098). That's why patternsearch was changing your initial guess