www.pudn.com > Matlab_Markov.rar > SA.m


function x = SA(y,mu,sigma,x,beta,M,invT)

[row_max,col_max] = size(y);

for row = 1:row_max
for col = 1:col_max
 s = [row,col];
 for k = 1:2
  E(k) = energy(k,s,y,mu,sigma,x,beta);
 end

 deltaE = E(2)-E(1);
 prob = 1/(1+exp(-deltaE));

 r = random('Uniform',0,1,1,1);
 if r