Optimization gives only small changes in each step, Why and how to solve it?
Show older comments
I am using Optimization toolbox optimset to solve for a vector (x1 x2 x3). In each step, the minimization yields a small change around the initial input. After the algorithm is finished running, the final output is still very close to the initial guess and far from the real solution whatever the initial guess is. Why does this happen? How can I resolve this problem?
Accepted Answer
More Answers (1)
Michael
on 28 Nov 2011
0 votes
Which MATLAB function are you using? Certain ones allow you to input parameters that relate to how far you anticipate the minimum may be from the starting point, (eg. lsqcurvefit using a LMF algorithm) and the default may be set too small for your particular parameter space.
2 Comments
Walter Roberson
on 28 Nov 2011
Kun, Michael meant "Which MATLAB minimization function are you using?"
Walter Roberson
on 30 Nov 2011
Kun, the question is: are you using fzero(), fsolve(), fminbnd(), fgoalattain(), bintprog() or so on? Which minimizer routine are you calling to find the minimum of your function?
Please do not repeat that "it is a very complicated function" comment from above. We read that already, and it is not important at the moment. We want to know which routine in the Optimization Toolbox you are calling. You mentioned optimset earlier, but that is the name of the routine to construct an "options" structure to be used by the minimizer; we need to know which routine you are passing the optimset to.
Categories
Find more on Linear Programming and Mixed-Integer Linear Programming in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!