0

The project aims to implement the Simulated Annealing (SA) algorithm to optimize the 15-dimensional Rastrigin function, which is known for its difficulty due to the large number of local minima. The function is mathematically defined as follows: Rastrigin function d = 15: the number of dimensions.

xᵢ ∈ [−2, 2] for each i = 1, 2, ..., 15.

The goal is to find the global minimum of the function, which occurs at the point xᵢ = 0 for all i, with the corresponding value f(x) = 0.

The problem we are facing is that despite getting decimal numbers very close to zero, there is no effect on the parameters such as temperature and cooling degree. I think the problem is with the function that creates new neighbors. This is it. private static double[] generateNeighbor(double[] solution) { double[] neighbor = solution.clone(); int index = random.nextInt(DIMENSION); neighbor[index] = LOWER_BOUND + (UPPER_BOUND - LOWER_BOUND) * random.nextDouble(); return neighbor; } Can anyone help me?

0 Answers0