Discusión sobre el artículo "Algoritmos de optimización de la población: Algoritmo de recocido simulado (Simulated Annealing, SA). Parte I"

 

Artículo publicado Algoritmos de optimización de la población: Algoritmo de recocido simulado (Simulated Annealing, SA). Parte I:

El algoritmo de recocido simulado es una metaheurística inspirada en el proceso de recocido de los metales. En nuestro artículo, realizaremos un análisis exhaustivo del algoritmo y mostraremos cómo muchas percepciones comunes y mitos que rodean a este método de optimización (el más popular y conocido) pueden ser incorrectos e incompletos. Anuncio de la segunda parte del artículo: "¡Conozca el algoritmo de recocido Isotrópico Simulado (Simulated Isotropic Annealing, SIA) del propio autor!"

El algoritmo de optimización de recocido simulado (Simulated Annealing) fue desarrollado por Scott Kirkpatrick, George Gelatt y Mario Vecchi en 1983. En el estudio de las propiedades de líquidos y sólidos a alta temperatura, se comprueba que el metal pasa al estado líquido y las partículas se distribuyen aleatoriamente, mientras que el estado de mínima energía se alcanza bajo la condición de una temperatura inicial suficientemente alta y un tiempo de enfriamiento suficientemente largo. Si no se cumple, el material terminará en un estado metaestable con una energía no mínima, lo cual se denomina "recocido", que es el enfriamiento brusco del material. En este caso, la estructura de los átomos no tiene simetría (estado anisótropo, o de no uniformidad de las propiedades del material dentro de la red cristalina).

No obstante, durante el proceso de recocido lento, el material también pasa a un estado sólido, pero con átomos organizados y con simetría, por lo que se propuso utilizar este proceso para desarrollar un algoritmo de optimización que pudiera encontrar un óptimo global en problemas complejos. El algoritmo también se ha propuesto como método para resolver problemas de optimización combinatoria.

De esta manera, la idea básica del algoritmo se basa en un análogo matemático del proceso de recocido de metales. Durante el proceso de recocido, para distribuir uniformemente su energía interna, el metal se calienta a una temperatura elevada y luego se enfría lentamente, lo cual permite que las moléculas metálicas se muevan y se ordenen en estados más estables, al tiempo que se alivian las tensiones internas del metal y se eliminan los defectos intergranulares. El término "recocido" también está relacionado con la energía libre termodinámica, que es un atributo del material y depende de su estado.

El algoritmo de optimización de recocido simulado usa un proceso similar, y aplica operaciones similares al calentamiento y el enfriamiento de un material. El algoritmo comienza con una solución inicial, que puede ser aleatoria o derivada de iteraciones anteriores. Luego aplica operaciones de cambio de estado de la decisión, que pueden ser aleatorias o controladas, para obtener un nuevo estado, aunque sea peor que el actual. La probabilidad de tomar la peor decisión viene determinada por una función de "enfriamiento" que disminuye la probabilidad de tomar la peor decisión con el tiempo, lo cual permite al algoritmo "saltar" temporalmente de los óptimos locales y buscar mejores soluciones en otros lugares del espacio de búsqueda.

Autor: Andrey Dik