Multiple solutions using fsolve and fmincon
显示 更早的评论
I used four known parameters (origional parameters) and performed some calculations using fsolve and fmincon to fit the data (final data set) and it works very well. Then, I came across the data (final data set) where I don't know the origional parameters but know the final data set. I tried to optimize the origional parameters using fmincon so that I can get unique solution but unsuccessful.
I am getting different answers if I provide different inital guess. Please assist me if I can solve this problem.
4 个评论
Star Strider
2020-6-24
Nonlinear parameter estimation (that soulnds like what you are doing) is very sensitive to the initial parameter estimates. The best way I have found to deal with this problem is to use the ga (genetic algorithm) function to search the entire parameter space for the best set of parameters. The default options may work in your situation, however it may be necessary to create your own InitialPopulationMatrix to determine them most efficiently. (The ga function requires the Global Optimization Toolbox.)
Usman Hamid
2020-6-25
Walter Roberson
2020-6-25
Optimization terminated: average change in the fitness value less than options.FunctionTolerance.
There can be more than one reason to get that message, but the major reason is that it is unable to find a nearby location with lower value -- that is, that it has found a local minima (that might or might not be a global minima.)
You can set the Display option to 'none' to supress the message.
Be sure to check the exit flag.
Usman Hamid
2020-6-26
回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 Solver Outputs and Iterative Display 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!