• No results found

La Búsqueda Dispersa es un enfoque evolutivo basado en el principio de que los

métodos sistemáticos usados para crear nuevas soluciones brindan beneficios superiores

a los producidos cuando las soluciones se forman de manera aleatoria.

La descripción algorítmica de esta metaheurística fue presentada por Glover en

1998. En esta versión se genera un conjunto inicial de soluciones que garantiza cierto

nivel de diversidad, y luego se aplican procedimientos heurísticos, diseñados para el

problema bajo consideración, para intentar mejorar este conjunto de soluciones.

Inicialmente se selecciona un conjunto de referencia, Refset,, constituido por un

subconjunto de las mejores soluciones obtenidas en términos de calidad y diversidad.

Luego se generan nuevas soluciones, aplicando combinaciones estructuradas entre

subconjuntos de Refset,, y se aplican procedimientos de mejora con el fin de optimizarlas.

en el procedimiento de mejora. Estas etapas se repiten hasta que Refset, permanece sin

cambios.

El algoritmo propuesto por Glover se compone de cuatro partes destinadas a

ejecutar las siguientes tareas: Diversificación-Generación, Mejora de Soluciones,

Generación y Actualización de Refset, Generación de Subconjuntos y Combinación de

Soluciones. En la siguiente subsección se describen los métodos desarrollados para llevar

cabo estas tareas con el fin de resolver el PDRS (Carnero y col., 2006, 2009).

3.4.1 Algoritmo basado en Búsqueda Dispersa 3.4.1.1. Generación-Diversificación

Para generar una colección de soluciones de prueba se utilizó el mismo método

descripto en 3.3.1.1. Cada solución garantiza que todas las variables claves son

estimables. Sin embargo, en este conjunto existen tanto soluciones factibles como no

factibles, esto garantiza un cierto nivel de diversidad, que es necesario para mejorar la

capacidad exploratoria de la técnica.

Las soluciones más diversas con respecto a la F definida por la ecuación 3.13 se

incorporan en un conjunto U de tamaño Us, donde Us es un parámetro del algoritmo.

Las soluciones se ordenan de acuerdo al valor de la F. El conjunto U se forma con la

colección de las Us/2 soluciones con menor valor de la F y las Us/2 peores soluciones.

3.4.1.2. Mejora de Soluciones

Se diseñaron dos procedimientos para mejorar cada una de las soluciones incluidas

Método de Mejora 1 (MM1)

El MM1 consiste en una búsqueda local que inspecciona una vecindad definida por

el conjunto de soluciones que se alcanzan desde la actual mediante el intercambio de dos

variables. Si I´ representa el conjunto de sensores de una solución, entonces cada

elemento de I´ puede reemplazarse por un instrumento perteneciente al conjunto I /I´,

siendo I el conjunto de todos los sensores disponibles. El tamaño de la vecindad y por

lo tanto el esfuerzo computacional asociado a este mecanismo de mejora es elevado para

problemas de dimensiones considerables. Por esta razón no se aplica a todas las

soluciones sino que sólo se utiliza en dos situaciones: como rutina de mejora para las

soluciones de la fase de generación de soluciones diversas y cuando el mecanismo

alternativo de mejora no logra incorporar nuevas soluciones a Refset.

Método de Mejora 2 (MM2)

El MM2 se desarrolla con el fin de identificar bloques constructivos que comparten

las soluciones de alta calidad, y generar vecindades de las mismas que respeten dichas

estructuras. Para ello se comparan pares de soluciones, y se halla un esquema de solución

parcial a partir del cual se construye la vecindad. Ésta se forma con el conjunto de todas

las soluciones completas alcanzables desde la parcial.

Por ejemplo si q1= [1 1 1 1 1 1 0] y q2= [0 1 1 1 1 0 1] son soluciones obtenidas por

combinación, entonces el esquema parcial es [* 1 1 1 1 **], y la vecindad generada a

partir de él es el conjunto:

N (q1,q2)={[0 1 1 1 1 0 0]; [0 1 1 1 1 1 0]; [0 1 1 1 1 1 1]; [1 1 1 1 1 0 0];

3.1.1.1 Generación y Actualización del Conjunto de Referencia

La construcción del conjunto de referencia se realiza mediante la selección de Rf

soluciones contenidas en U. La mitad de ellas corresponden a las Rf /2 soluciones de

mejor valor de F. Los restantes elementos del conjunto se eligen entre las soluciones

más diversas contenidas en U teniendo en cuenta su dH tal como se detalló en la

subsección 3.3.2.

3.1.1.2 Generación de Subconjuntos y Combinación de Soluciones

La combinación de soluciones es una operación que se define sobre un subconjunto

de Refset. El criterio de formación de subconjuntos utilizado fue el de parejas teniendo en

cuenta que los métodos de combinación propuestos resultan en operadores que requieren

dos soluciones como argumento de entrada. Para cada par de soluciones de Refset se

implementaron dos mecanismos de combinación diferentes, sugeridos en la literatura

(Glover y Laguna, 2002), con el objetivo de comparar su desempeño. A continuación se

detallan los aspectos fundamentales de los mismos.

Mecanismo de combinación 1 (MC1)

1) considerar a cada variable binaria de la solución combinada, qi, como una

variable aleatoria discreta Xi.

2) asignar a la variable aleatoria Xi la siguiente distribución de probabilidades:

( ) ( ) Pr( 1) ( ) ( ) Pr( 0) 1 Pr( 1) 1 2 l l 1 i 2 i i 1 2 i i F l q F l q X F l F l X X ⋅ + ⋅ = = + = = − = (3.16) En la expresión anterior, l1 i q y l2 i

q representan el valor de la i-ésima variable

binaria en las soluciones l1 y l2 respectivamente. Éstas forman el par de

soluciones pertenecientes a Refset que fueron seleccionadas para

5) generar una muestra aleatoria de tamaño uno de la variable Xi. La probabilidad

asignada a Xi se compara con un número aleatorio nal, y se define el valor de qi

en la solución combinada utilizando el siguiente criterio:

1 Pr( 1) 0 Pr( 1) al i i al i si n X q si n > X ≤ =  = =  (3.17)

De las ecuaciones anteriores se deduce que: 1) si las componentes homólogas de

las soluciones de partida son iguales, el valor de qi de la solución combinada es igual al

de aquellas; 2) si las componentes homólogas de las soluciones de partida son diferentes,

una buena solución tiene mayor probabilidad de copiar sus componentes en la solución

combinada dado que el numerador de la ecuación 3.16 se pondera utilizando el valor

binario de la componente correspondiente.

Mecanismo de combinación 2 (MC2)

El MC2 corresponde a un cruzamiento uniforme. Por lo tanto no introduce un

sesgo hacia la solución de referencia de mejor calidad tal como sucede al aplicar el MC1.

Este mecanismo consiste en intercambiar todas las componentes homólogas entre

las dos soluciones seleccionadas para combinación con una probabilidad del 50%. Se

genera una máscara en forma aleatoria de la misma dimensión que las soluciones

involucradas y se procede de la siguiente manera: si el bit i de la máscara es 1, se copia

la componente i de la primera solución considerada, de lo contrario la solución combinada

hereda en la posición i el valor correspondiente a la segunda solución.

En la Figura 3.3 de describe el pseudocódigo del algoritmo de BD propuesto para

U = Ø

U = método de Generación- Diversificación (Us)

U = método de Mejora 1(U )

RefSet =método de Generación y Actualización de RefSet (U, Rf) RefSet =Sort(RefSet)

qbest =solución de menor valor de F

qworst= solución de mayor valor de F

Nueva Solución = TRUE

while (Nueva Solución)

Nueva Solución = FALSE

Generar subconjuntos de RefSet, usando el método de Generación de Subconjuntos

while (exista al menos un subconjunto sin evaluar)

Seleccionar el subconjunto y rotular como evaluado

Aplicar métodos de combinación de soluciones en el subconjunto

Aplicar método de Mejora 2 a cada solución obtenida por combinación. Sea

q la solución mejorada,

if F(q)es mejor que F(qworst) y q no está incluida en RefSet

qworst = q

RefSet =Sort(RefSet ) Nueva Solución = TRUE

else

q= método de Mejora 1(q)

if F(q )< qbest solución en RefSet qbest =q NuevaSolución = TRUE endif endif endwhile endwhile

Figura 3.3. Pseudocódigo para el algoritmo de Búsqueda Dispersa