A SA function which allows to compute the initial temperature of the simulated annealing
T_init = compute_initial_temp(x0,f,proba_init, ItMX [, param] )
the starting point
the objective function which will be send to the simulated annealing for optimization
the initial probability of accepting a bad solution (usually around 0.7)
the number of iterations of random walk (usually around 100)
optional, a data structure managed with the parameters module.
optim_safunction is sensitive to the following fields.
a function which computes a neighbor of a given point. The default neighbourhood function is
the type of acceptation function. If the type is equal to "sa", then the initial temperature is computed from
T_init = - f_sum ./ log(proba_init). If the type is equal to "vfsa", it is computed from
T_init = abs(f_sum / log(1/proba_init - 1)).
The initial temperature corresponding to the given probability of accepting a bad solution
This function computes an initial temperature given an initial probability of accepting a bad solution. This computation is based on some iterations of random walk.
deff('y=f(x)','y=sum(x.^2)'); x0 = [2 2]; Proba_start = 0.7; It_Pre = 100; x_test = neigh_func_default(x0); saparams = init_param(); saparams = add_param(saparams,'neigh_func', neigh_func_default); T0 = compute_initial_temp(x0, f, Proba_start, It_Pre, saparams);
- optim_sa — A Simulated Annealing optimization method
- neigh_func_default — A SA function which computes a neighbor of a given point
- temp_law_default — A SA function which computed the temperature of the next temperature stage
|Report an issue|
|<< accept_func_vfsa||Utilities||neigh_func_csa >>|