Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Français - Português - Русский

Please note that the recommended version of Scilab is 6.1.1. This page might be outdated.
However, this page did not exist in the previous stable version.

Scilabヘルプ >> Simulated Annealing > Utilities > temp_law_fsa

# temp_law_fsa

The Szu and Hartley Fast simulated annealing

### Syntax

T_out = temp_law_fsa(T_in,step_mean,step_var,temp_stage,n,param)

### Arguments

T_in

the temperature at the current stage

step_mean

the mean value of the objective function computed during the current stage

step_var

the variance value of the objective function computed during the current stage

temp_stage

the index of the current temperature stage

n

the dimension of the decision variable (the x in f(x))

param

not used for this temperature law

T_out

the temperature for the temperature stage to come

### Description

• This function implements the Fast simulated annealing of Szu and Hartley.

### Examples

function y=rastrigin(x)
y = x(1)^2+x(2)^2-cos(12*x(1))-cos(18*x(2));
endfunction

x0 = [-1, -1];
Proba_start = 0.8;
It_intern = 1000;
It_extern = 30;
It_Pre    = 100;

mprintf('SA: the FSA algorithm\n');

T0 = compute_initial_temp(x0, rastrigin, Proba_start, It_Pre, neigh_func_default);
mprintf('Initial temperature T0 = %f\n', T0);

saparams = init_param();
saparams = add_param(saparams, "neigh_func", neigh_func_fsa);
saparams = add_param(saparams, "temp_law", temp_law_fsa);

[x_opt, f_opt, sa_mean_list, sa_var_list, temp_list] = optim_sa(x0, rastrigin, It_extern, It_intern, T0, Log = %T, saparams);

mprintf('optimal solution:\n'); disp(x_opt);
mprintf('value of the objective function = %f\n', f_opt);

scf();
subplot(2,1,1);
xtitle('Fast simulated annealing','Iteration','Mean / Variance');
t = 1:length(sa_mean_list);
plot(t,sa_mean_list,'r',t,sa_var_list,'g');
legend(['Mean','Variance']);
subplot(2,1,2);
xtitle('Temperature evolution','Iteration','Temperature');
plot(t,temp_list,'k-');

### See also

• optim_sa — A Simulated Annealing optimization method
• temp_law_huang — The Huang temperature decrease law for the simulated annealing
• neigh_func_default — A SA function which computes a neighbor of a given point

### Comments

Add a comment:
Please login to comment this page.

 Report an issue << temp_law_default Utilities temp_law_huang >>

 Scilab EnterprisesCopyright (c) 2011-2017 (Scilab Enterprises)Copyright (c) 1989-2012 (INRIA)Copyright (c) 1989-2007 (ENPC)with contributors Last updated:Tue Feb 14 15:10:31 CET 2017