Sunteți pe pagina 1din 2

Los algoritmos de búsqueda local estocástica (SLS, por sus siglas en inglés) son el método de

elección para resolver problemas de decisión y optimización computacionalmente difíciles


desde una amplia gama de áreas, incluyendo ciencias de la computación, investigación de
operaciones, ingeniería, química, biología y física.

La SLS comprende un espectro de técnicas que van desde procedimientos de mejora


constructivos e iterativos simples hasta métodos más complejos, como el recocido simulado, la
búsqueda local iterada o los algoritmos evolutivos. Como se desprende del término búsqueda
local estocástica, la dominación del funcionamiento puede, y con frecuencia lo hace,
desempeñar un papel destacado en estos métodos.

Las opciones aleatorias se pueden usar en la generación de soluciones iniciales o en la decisión


de varios pasos posibles de búsqueda que se realizarán a continuación, a veces simplemente
para romper lazos entre alternativas equivalentes y, a veces, para seleccionar heurísticamente
y de forma probabilística de grandes y diversos conjuntos de posibles candidatos. El uso juicioso
de la aleatorización puede, sin duda, simplificar el diseño del algoritmo y ayudar a lograr un
comportamiento robusto del algoritmo.

El concepto de algoritmo SLS se ha definido formalmente [67] y proporciona un marco unificador


para varios tipos de algoritmos, incluidos los procedimientos de mejora constructivos e
iterativos mencionados anteriormente, pero también una amplia gama de métodos de
búsqueda más complejos conocidos comúnmente como metaheurísticas.

Los procedimientos de mejora constructiva e iterativa de Freedy son algoritmos SLS


importantes, ya que típicamente sirven como bloques de construcción en algoritmos SLS más
complejos, cuyo rendimiento depende fundamentalmente de las opciones de diseño y el ajuste
fino de estos componentes subyacentes.

Los algoritmos constructivos codiciosos y los procedimientos de mejora literarios terminan


naturalmente cuando se genera una solución completa o se alcanza un óptimo local de una
función de evaluación determinada, respectivamente.

Una forma posible de obtener una mejor solución es reiniciar estos procedimientos básicos de
SLS desde posiciones de búsqueda iniciales elegidas al azar. Sin embargo, este enfoque ha
demostrado ser relativamente poco efectivo en la práctica para casos de problemas de tamaño
razonable (y se “descompone” para casos grandes [111]).

Para superar estas limitaciones, en las últimas décadas, se ha introducido un gran número de
métodos SLS más sofisticados y de propósito general [67]; a menudo se denominan
metaheurísticas [46], ya que se basan en esquemas de nivel superior para controlar uno o más
procedimientos de búsqueda heurística subsidiaria.

Dividimos estos métodos SLS de propósito general en tres clases amplias:

 Métodos SLS basados en población, híbridos y simples.


 Métodos simples de SLS generalmente usan una relación de vecindad durante la
búsqueda y modifican el criterio de aceptación para los pasos de búsqueda, permitiendo
aceptar de vez en cuando los pasos de empeoramiento, o modifican la función de
evaluación que se usa durante el proceso de búsqueda local. Los ejemplos de métodos
SLS simples incluyen recocido simulado [83, 20] y búsqueda tabu (simple) [48, 49, 50,
57].
 Métodos de SLS que combinaron diferentes tipos de pasos de búsqueda, por ejemplo,
pasos de construcción y pasos de búsqueda local perturbativos, o introducen
modificaciones mayores ocasionales en las soluciones candidatas actuales, para
proporcionar posiciones de búsqueda adecuadas para la posterior búsqueda de mejoras
iterativas. Los ejemplos de tales métodos híbridos de SLS incluyen GRASP [43] y
búsqueda local iterada [86]. Finalmente, varios métodos de SLS mantienen y manipulan
en cada iteración un conjunto, o población, de soluciones candidatas, lo que
proporciona una forma natural de aumentar la diversificación de búsqueda.

2 LA NATURALEZA Y CONCEPTO DE SLS

Ejemplos de tales métodos de SLS basados en la población incluyen algoritmos evolutivos [62,
54, 106, 114], dispersión búsqueda [47, 53], y optimización de colonias de hormigas [34, 35, 36].

Nuestra clasificación en métodos SLS simples, híbridos y basados en la población no es la única


posible, y ciertos algoritmos SLS podrían considerarse como pertenecientes a más de una
categoría. Por ejemplo, muchos de los métodos de SLS basados en la población también son
híbridos, ya que utilizan diferentes operadores de búsqueda o combinan la manipulación de la
población de soluciones candidatas con la mejora iterativa de los miembros de la población para
lograr un mayor rendimiento. De hecho, hay una tendencia creciente a diseñar y aplicar
algoritmos SLS que no se basan simplemente en un único método de SLS de propósito general
bien establecidos, sino que se combinan de manera flexible elementos de diferentes métodos
SLS o incorporar mecanismos tomados de algoritmos de búsqueda sistemática, tales como
ramificación y encuadernación o programación dinámica. El marco conceptual de SLS acomoda
naturalmente este desarrollo, y la composición de algoritmos SLS más complejos a partir de
componentes conceptualmente más simples, es explícitamente compatible, por ejemplo, por el
concepto de máquinas de búsqueda local generalizadas [67]. En este contexto, las cuestiones
metodológicas relacionadas con la ingeniería de los algoritmos SLS [122, 123] están ganando
cada vez más importancia. Del mismo modo, la explotación de técnicas de configuración
automática de algoritmos y, más en general, la programación por paradigma de optimización
[66] permite el desarrollo sistemático de SLS de alto rendimiento.

En este capítulo, ofrecemos una descripción general de los conceptos principales que subyacen
en el marco de SLS y describimos algunas de las técnicas más relevantes de SLS. También
discutimos algunas direcciones de investigación recientes importantes en el área de búsqueda
local estocástica. El resto de este capítulo está estructurado de la siguiente manera. En la Sección
2, situamos la noción de SLS dentro del contexto más amplio de paradigmas de búsqueda
fundamentales y revisamos brevemente la definición de un algoritmo de SLS. En la Sección 3,
resumimos los principales problemas y tendencias en el diseño de algoritmos codiciosos de
mejora constructiva e iterativa, mientras que en las Secciones 4 a 6, ofrecemos una visión
general concisa de algunos de los métodos SLS simples, híbridos y basados en la población más
utilizada . Finalmente, en la Sección 7, discutimos algunos temas recientes de interés, como el
diseño sistemático de los algoritmos SLS y los métodos para la configuración automática de los
algoritmos SLS.

S-ar putea să vă placă și