File Exchange

image thumbnail

Evolutionary curve fitting

version 1.0.0.0 (141 KB) by Bartlomiej Ufnalski
Particle swarm optimization is used to perform the thermal transient impedance curve fitting.

5 Downloads

Updated 05 Oct 2014

View License

Obviously, it is nothing new. You can use Matlab's fminsearch() or Curve Fitting Toolbox. There are also many alternatives such as EzyFit for Matlab, Scilab's optimization tools, Octave's optimization tools, etc. However, as long as your current tool uses a gradient-based approach, its success rate strongly depends on starting point in the case of non-convex problems. It is then your not-so-easy job to select this point. Some time ago, I found this task quite challenging when trying to identify the Foster-type representation of the thermal transient impedance of transistors, diodes and heat sinks. So I have switched to PSO. This script illustrates evolutionary identification of the 3rd order Foster-type RC ladder network for a real-life IGBT switch. I hope that you will find it easy to modify for any curve fitting task you encounter in your engineering practice. It should be noticed that gradient-free curve fitting is nothing new and the PSO-based curve fitting is not an exception here. This is just one more interpretation of the method.

Cite As

Bartlomiej Ufnalski (2020). Evolutionary curve fitting (https://www.mathworks.com/matlabcentral/fileexchange/48026-evolutionary-curve-fitting), MATLAB Central File Exchange. Retrieved .

Comments and Ratings (2)

sadegh

anyone can help how to change the code to multivariable? this code is for one variable.

Francois

very good nice tool
easy to use - good results
best in class
Thanks a lot!!

MATLAB Release Compatibility
Created with R2013a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!