Simulated Annealing Optimization
Simulated annealing is an optimization algorithm that skips local minimun. It uses a variation of Metropolis algorithm to perform the search of the minimun. It is recomendable to use it before another minimun search algorithm to track the global minimun instead of a local ones.
Usage: [x0,f0]sim_anl(f,x0,l,u,Mmax,TolFun)
INPUTS:
f = a function handle
x0 = a ninitial guess for the minimun
l = a lower bound for minimun
u = a upper bound for minimun
Mmax = maximun number of temperatures
TolFun = tolerancia de la función
OUTPUTS:
x0 = candidate to global minimun founded
f0 = value of function on x0
Example:
The six-hump camelback function:
camel= @(x)(4-2.1*x(1).^2+x(1).^4/3).*x(1).^2+x(1).*x(2)+4*(x(2).^2-1).*x(2).^2;
has a doble minimun at f(-0.0898,0.7126) = f(0.0898,-0.7126) = -1.0316
this code works with it as follows:
[x0,f0]=sim_anl(camel,[0,0],[-10,-10],[10,10],400)
and we get:
x0=[-0.0897 0.7126]
Zitieren als
Héctor Corte (2024). Simulated Annealing Optimization (https://www.mathworks.com/matlabcentral/fileexchange/33109-simulated-annealing-optimization), MATLAB Central File Exchange. Abgerufen .
Kompatibilität der MATLAB-Version
Plattform-Kompatibilität
Windows macOS LinuxKategorien
Tags
Quellenangaben
Inspiriert von: General simulated annealing algorithm
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Live Editor erkunden
Erstellen Sie Skripte mit Code, Ausgabe und formatiertem Text in einem einzigen ausführbaren Dokument.
Version | Veröffentlicht | Versionshinweise | |
---|---|---|---|
1.0.0.0 |