Simulated annealing is a heuristic algorithm that is used to optimize functions in cases where they happen to have multiple local minima. We at CMSoft bring you a code that uses the GPU via OpenCL to accelerate this algorithm and we also display a graphical representation of the method so the user can understand its evolution.
We have been able to achieve accelerations of the order of 500x in the Simulated Annealing, making it useful to speed up otherwise slow calculations (the method can be very slow even for a moderate amount of variables).
- Simulated annealing - CPU time - Technique for minimizing functions - Live demonstration of function in 3D and the evolution of the algorithm - Simulated annealing with OpenCL: room for parallelization - Comparison of OpenCL time and GPU time - More dimensions in OpenCL compute - Limitations in number of variables: local memory - Try inserting new functions for minimization