- Does your yellow line have a better fit than the orange line? If so, the solver might have just not found an optimum. Try seeding the initial values of the parameters from the orange parameters instead.
- You didn't mention what solver you were using, but you can try "focusing" some components of the data by weighting the maximum points more heavily using a weighting function.
- Try using a different solver entirely; perhaps a local, non-parametric one would work?
design optimization: changing cost function paying special attention to maxima
1 回表示 (過去 30 日間)
古いコメントを表示
I built a simscape model of a system with a motor current as output. I also got a measured motor current curve. The model consists some parameters which I want to estimate to fit the output curve of the model to the measured curve. After trying to fit the parameters to the measured data, I am not quite happy with the results.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/153406/image.png)
In the picture the blue data is the measured data, the red one the results after using design optimization. The yellow data is a simulation where I changed one of the parameters to have a better fit at the maximum.
Is it possible to give special attention to maxima? I used sum squared error as cost function. This should work better than "sum-absolute error" because the fit to the left and right of the maxima gets worse when changing the parameter by hand.
Thank you!
1 件のコメント
jgg
2016 年 1 月 19 日
編集済み: jgg
2016 年 1 月 19 日
I'm not an expert on Simulink models, but it looks to me like the issue is the fitting function you're using has the wrong concavity; you can see it especially at the end of the data where it fits the step-point incorrectly. Can you adjust this?
Some other suggestions:
回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Statistics and Machine Learning Toolbox についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!