gusucode.com > 十大算法matlab程序说明 > 十大算法matlab程序说明/遗传退火法/一个Matlab的模拟退火算法工具箱/historyupdate.m
function Eh = historyupdate(Eh,Ev,t,T) % Temperature & Energy history update method supplied with SA Tools. % Copyright (c) 2002, by Richard Frost and Frost Concepts. % See http://www.frostconcepts.com/software for information on SA Tools. % % Eh = historyupdate(Eh,Ev,t,T) % INPUT: % Eh = previous Eh array % Ev = energy (cost) history at T % i = arbitrary index % Ev(i,1) = step # % Ev(i,2) = walker # % Ev(i,3) = an energy visited during T % Ev(i,4) = energy attempted from Ev(i,1:3) during T % t = index of current temperature step % T = current temperature % OUTPUT: % Eh = energy and temperature history % i = 1, ..., 1+(steps*walkers), etc. % Eh(i,1) = index t of temperature step % Eh(i,2) = T corresponding to t % Eh(i,3) = equilibrium step #j at T % Eh(i,4) = walker #k % Eh(i,5) = energy E visited by walker k at step j during T % Eh(i,6) = energy E' attempted from E by walker k at step j during T % sizeEh = size(Eh) ; sizeEv = size(Ev) ; m = sizeEh(1) ; n = sizeEv(1) ; clear sizeEh sizeEv ; for i=1:n m = m + 1 ; Eh(m,1) = t ; Eh(m,2) = T ; Eh(m,3:6) = Ev(i,1:4) ; end