Please note that the recommended version of Scilab is 2024.1.0. This page might be outdated.
See the recommended documentation of this function
compute_initial_temp
A SA function which allows to compute the initial temperature of the simulated annealing
Calling Sequence
T_init = compute_initial_temp(x0,f,proba_init, ItMX [, param] )
Arguments
- x0
the starting point
- f
the objective function which will be send to the simulated annealing for optimization
- proba_init
the initial probability of accepting a bad solution (usually around 0.7)
- ItMX
the number of iterations of random walk (usually around 100)
- param
optional, a data structure managed with the parameters module.
The
optim_sa
function is sensitive to the following fields.- "neigh_func"
a function which computes a neighbor of a given point. The default neighbourhood function is
neigh_func_default
.- "type_accept"
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 fromT_init = abs(f_sum / log(1/proba_init - 1))
.
- T_init
The initial temperature corresponding to the given probability of accepting a bad solution
Description
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.
Examples
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);
See Also
- 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 >> |