1

I am currently trying to understand the Generalized Simulated Annealing (GSA) optimization algorithm proposed by Tsalis and Stariolo in their paper. In the GSA algorithm, they try to generalize the "Classical Simulated Annealing" (CSA) and the "Fast Simulated Annealing" (FSA) algorithm. They do that by introducing two Parameter $q_A$ (for the acceptance probability) and $q_V$ (for the visiting distribution).

The $q_V$ parameter controls the so called "visiting distribution", which decides, by what distribution the next random vector will be chosen ("visited"). It also controls the temperature reduction, which influences how often worse solutions will be accepted. The function, that calculates the temperature is defined as following:

$$ T_{q_v}(t) = T_{q_v}(1)\frac{2^{q_v-1}-1}{(t+1)^{q_v-1}-1} $$

Also the parameter $q_A$ controls how the probability for accepting new vectors will be calculated. That function is defined as

$$ P_{q_a}(x_t \rightarrow x_{t+1}) = \left\{ \begin{matrix} 1 & \text{if } E(x_{t+1}) < E(x_t) \\ \frac{1}{\left( 1 + (q_a-1)\frac{(E(x_{t+1})-E(x_t)}{T_{q_a}^A} \right)^{\frac{1}{(q_a-1)}}} & \text{if }E(x_{t+1}) \geq E(x_t) \end{matrix} \right. $$

My question appears, when they write in the paper, that choosing $q_A = 1 = q_V$ will recover CSA. When I try to put 1 for both parameters, I immediately find myself dividing through 0, which is a problem. Do I overlook something, which tells us how we ignore dividing by 0? Do we maybe just look at the limit of that function at 1? I could not find the reason why dividing by 0 would be possible or fine here.

0 Answers0