• No se han encontrado resultados

afinaciones

Los algoritmos cuyas afinaciones forman las poblacionesAyB son un AG genera- cional simple, recocido simulado y b´usqueda aleatoria. Los dos primeros fueron elegidos debido a su popularidad y por tanto a lo ´util que pueden resultar las conclusiones a que se llegue despu´es de analizar los posibles problemas tendenciosos —beneficiando al AG o beneficiando al recocido simulado— que se obtengan, ya que extrapolar estas conclusiones a problemas reales puede servir en una mejor elecci´on del algoritmo a utilizar.

Otro motivo en espec´ıfico para elegir al AG es que es quiz´as el ´unico algoritmo para el que existen teor´ıas bien desarolladas sobre qu´e es dif´ıcil para ´el, de entre las cuales destacan la teor´ıa de enga˜no (Goldberg, 1989; Whitley, 1991) y NK landscapes (Kauffman, 1993) con las cuales comparar los problemas tendenciosos a obtener. En cuanto a la b´usqueda aleatoria a pesar de que intuitvamente uno pensar´ıa que tanto un AG como recocido simulado deben ser en general mejores que simplemente buscar al azar resulta interesante determinar si es posible encontrar problemas tendenciosos en los que sucede lo contrario.

4.2.1.

AG generacional simple

El AG a utilizar en el ACI es aquel cuyos pasos b´asicos son los de la tabla 1 del cap´ıtulo anterior, cuyos operadores de cruce y mutaci´on son explicados m´as adelante en este cap´ıtulo.

En cuanto a la forma de hacer la selecci´on de acuerdo a la aptitud de cada indi- viduo, se aplicaselecci´on de torneo. En selecci´on de torneo de tama˜nopse realizan los siguientes pasos (Valenzuela-Rend´on, 2004):

1. La poblaci´on se mezcla en cuanto a la posici´on de cada individuo en el arreglo donde se guarda la poblaci´on.

2. Cada individuo participa en p torneos con los individuos que est´an en posiciones adyascentes a las suya. Los individuos que participan en estos torneos se ob- tienen corriendo una ventana de tama˜nopsobre la poblaci´on considerando que el individuo en la ´ultima posici´on es adyascente al individuo en la primera posici´on. 3. En cada torneo resulta ganador el mejor de los individuos. A este individuo se le asigna una copia para realizar cruce sobre ella apare´andola al azar con otra copia seleccionada.

En el valor esperado, selecci´on de torneo de tama˜no p asigna p copias al mejor individuo,p/2 a la mediana y cero al peor.

Cada afinaci´on del AG que forma a la poblaci´on A o B del ACI est´a codificada por una cadena de 32 bits. La tabla 4.1 muestra los par´ametros a afinar, los bits que les corresponden y los rangos en que se encuentran sus posibles valores.

Par´ametro Bits Rango

Tama˜no de poblaci´on [ 1 , 8 ] [ 50 , 250 ] Tama˜no de torneo [ 9 , 16 ] [ 2 , 10 ] Probabilidad de cruce [ 17 , 24 ] [ 0.75 , 1 ] Probabilidad de mutaci´on [ 25 , 32 ] [ 0 , 0.1 ]

Tabla 4.1: Codificaci´on de la afinaci´on del AG

4.2.2.

Recocido simulado

Recocido simulado es un algoritmo de optimizaci´on de b´usqueda local que se basa en el proceso metal´urgico llamado recocido en el cual se somete a un material a un calentamiento a temperatura muy alta y se despu´es se le deja enfriar lentamente, con lo cual sus mol´eculas se acomodan de tal forma que la energ´ıa potencial es m´ınima, siguiendo en cada temperatura el estado del material la distribuci´on de Boltzman. En el caso de que se busque maximizar una funci´on f partiendo de un punto incial u

con energ´ıa f(u) y definiendo un par´ametro de control c(k) que cumple la funci´on de la temperatura, con valor inicial c0, los pasos b´asicos del recocido simulado quedan

sintetizados por la tabla 4.2 (Valenzuela-Rend´on, 2004), en donde Lk es el n´umero de

Inicializar (u0, c0, L0)

k←0

u←u0

repetir

para l ←hasta Lk hacer

Generar vecino v deu sif(v)≥f(u) entonces u←v si no sialeatorio[0,1)<exp−f(u)c−f(v) k entonces u←v fin-si fin-si fin-para k ←k+ 1 Calcular longitudLk Calcular controlck

hastaque se cumpla criterio de terminaci´on

Tabla 4.2: Pasos b´asicos del recocido simulado

En la implementaci´on del recocido utilizada cada actualizaci´on del par´ametro de controlckequivale a multiplicarlo por una constante de decremento, mientras que todas

las cadenas de Markov que forman la corrida del algoritmo tienen la misma longitud. Cada afinaci´on del recocido simulado que forma a la poblaci´on A o B del ACI est´a codificada por una cadena de 32 bits. La tabla 4.3 muestra los par´ametros a afinar, los bits que les corresponden y los rangos en que se encuentran sus posibles valores.

Par´ametro Bits Rango

Longitud de cadena de Markov [ 1 , 10 ] [ 5 , 25 ] Valor inicial del par´ametro de control [ 11 , 20 ] [ 103 , 106 ]

Constante de decremento [ 21 , 32 ] [ 0.75 , 0.99 ] Tabla 4.3: Codificaci´on de la afinaci´on del recocido simulado

La peculiaridad del recocido simulado es que es un buscador que, partiendo de un punto en un espacio de b´usqueda, tiene la capacidad de aceptar moverse hacia puntos vecinos peores con la posibilidad de a futuro encontrar vecinos mejores, capacidad que var´ıa de forma proporcional a la temperatura por lo que al final se espera que el comportamiento resulte muy parecido al de una b´usqueda avara.

a una cadena de 20 bits, donde los 10 primeros corresponden a una posici´on en X1 y

los otros 10 a una posici´on enX2, en la implementaci´on del recocido simulado usada se

generan vecinos cambiando al azar un bit en la parteX1 y en la X2.

4.2.3.

B´usqueda aleatoria

La b´usqueda aleatoria utilizada consiste en obtener al azar una cadena de 20 bits generando por separado las partes X1 y X2. Este proceso no requiere afinaci´on, por

lo que cuando se emplea este algoritmo se tiene una poblaci´on virtual de afinaciones donde todas son igualmente buenas. Suponiendo que se tiene la poblaci´on virtualA, el ajuste de la aptitud para cada afinaci´on del algoritmoB despu´es de cada competencia se realiza mediante la ecuaci´on

SB(t+ 1) =SB(t) +RBtanh(2EB)−CBSB(t) (4.3)

Documento similar