La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Ajustando el Algoritmo al problema Universidad Nacional Oscar Lozano.

Presentaciones similares


Presentación del tema: "Ajustando el Algoritmo al problema Universidad Nacional Oscar Lozano."— Transcripción de la presentación:

1 Ajustando el Algoritmo al problema Universidad Nacional Oscar Lozano

2 Temario IntroducciónIntroducción Control de Parámetros en A. Evolutivos.Control de Parámetros en A. Evolutivos. Ilustrando el caso con un NLPIlustrando el caso con un NLP Taxonomía de las técnicas de control.Taxonomía de las técnicas de control. Posibilidades para los parámetros de control.Posibilidades para los parámetros de control. –Representación. –Función de Evaluación –Operadores de mutación y sus posibilidades. –Operadores de cruce y sus posibilidades. –Selección de padres. –Población. Formas de combinar parámetros de control.Formas de combinar parámetros de control.

3 Introducción En general, todos los algoritmos son controlados por algún conjunto de parámetros. Ej: Simulated Annealing Temperatura. Cronograma de Reduc. de la T. Hill Climbing Control del tamaño de la Pobla. Tabu Search Reglas para la memoria.En general, todos los algoritmos son controlados por algún conjunto de parámetros. Ej: Simulated Annealing Temperatura. Cronograma de Reduc. de la T. Hill Climbing Control del tamaño de la Pobla. Tabu Search Reglas para la memoria. Los algoritmos evolutivos tienen aún más parámetros que es necesario controlar.Los algoritmos evolutivos tienen aún más parámetros que es necesario controlar.

4 Introducción (2) Se deben considerar muchas otras cosas: La representación.La representación. La función de evaluación.La función de evaluación. Los operadores de evaluación.Los operadores de evaluación. Tamaño de la población.Tamaño de la población. El criterio de parada.El criterio de parada. Es necesario hacer un gran esfuerzo

5 Introducción (3) El método de ensayo y error para encontrar valores a los parámetros es una aventura tediosa y costosa en tiempo.El método de ensayo y error para encontrar valores a los parámetros es una aventura tediosa y costosa en tiempo. Lo ideal es que exista teoría que guie el proceso, pero desafortunadamente la que existe solo funciona para algunos casos específicos.Lo ideal es que exista teoría que guie el proceso, pero desafortunadamente la que existe solo funciona para algunos casos específicos. Buscar formas automatizadas para optimizar los parámetros. Ej: Evolución de la evolución.Buscar formas automatizadas para optimizar los parámetros. Ej: Evolución de la evolución.

6 Parámetros de control en AE(Algoritmos Evolutivos) El reto: Una vez tendido el puente entre el problema y el algoritmo (Función de Evaluación). ¿Qué puede seguir? Los operadores de variación a usar (Generar los hijos (offspring)). ¿Mutación, y/ó, Combinación? Si usamos combinación (CrossOver(One-Point, Two-Point, n-point, Uniform,Arithmetic) ó Majority Logic).

7 Parámetros de control en AE(2) ¿Cuál escoger? Escoger Majority Logic(Comparar mínimo 3). ¿Cuántos Padres tomar para decidir? Escogemos 20 de la población para decidir. ¿Voto mayoritario o Probabilidad? Ej: (1,0,...,0,1) (1,1,...,0,1) (0,0,...,0,1)...... (1,0,...,1,1) (1,0,...,1,0) 20 en total.

8 Parámetros de control en AE (3) Cualquier decisión que se tome es muy importante. Malas deciciones Resultados Pobres.Cualquier decisión que se tome es muy importante. Malas deciciones Resultados Pobres. Sea cual fuere el método hay que ajustar los parámetros al problema particular. ¿Lo que funcionó bien para otros, funcionará bien para mi problema? Ej: De Jong – Grefenstette – Davis 5 Problemas NLP(s). El espacio de configuración de parámetros óptimos es necesariamente reducidoSea cual fuere el método hay que ajustar los parámetros al problema particular. ¿Lo que funcionó bien para otros, funcionará bien para mi problema? Ej: De Jong – Grefenstette – Davis 5 Problemas NLP(s). El espacio de configuración de parámetros óptimos es necesariamente reducido

9 Parámetros de control en AE Manualmente -Experimentación Una alternativa de ajustar parámetros manualmente, ó, haciendo muchas pruebas: Confiar en el análisis matemático.Una alternativa de ajustar parámetros manualmente, ó, haciendo muchas pruebas: Confiar en el análisis matemático. Ajustar los parámetros manualmente esta lleno de problemas. Solo un parámetro a la vez (Interacción compleja).Ajustar los parámetros manualmente esta lleno de problemas. Solo un parámetro a la vez (Interacción compleja). Ajustarlos simultaneamente implica realizar una gran cantidad de experimentación.Ajustarlos simultaneamente implica realizar una gran cantidad de experimentación.

10 Desventajas de la experimentación: Los parámetros no son independientes, pero tratar de hacer todas las posibles combinaciones es imposible. Los parámetros no son independientes, pero tratar de hacer todas las posibles combinaciones es imposible. El proceso de ajuste de los parámetros requiere de muchos tiempo, aún si son optimizados uno a la vez. El proceso de ajuste de los parámetros requiere de muchos tiempo, aún si son optimizados uno a la vez. Los resultados a menudo son malos, aún cuando se ha hecho una gran gasto de tiempo. Los resultados a menudo son malos, aún cuando se ha hecho una gran gasto de tiempo. Se logra, ó, se «muere» en el intento. Parámetros de control en AE Manualmente -Experimentación

11 Parámetros de control en AE Analogía - teoría Confiar en la aparente similitud(analogía) de el problema con otro(s). No es muy claro como medir la similitud entre problemas.Confiar en la aparente similitud(analogía) de el problema con otro(s). No es muy claro como medir la similitud entre problemas. Se puede confiar en una teoría que ayuda en la escogencia de parámetros, pero en la actualidad esas teorías son muy escasas y con un rango muy pequeño de problemas.Se puede confiar en una teoría que ayuda en la escogencia de parámetros, pero en la actualidad esas teorías son muy escasas y con un rango muy pequeño de problemas.

12 Parámetros de control en AE Cambio en el tiempo Los algoritmos AE son dinámicos e involucran procesos adaptativos. Ej: En un principio se necesitan mutaciones muy grandes(recorrer el espacio de búsqueda), pero pequeñas mutaciones al final para refinar o ajustar la búsqueda. Solución:Los algoritmos AE son dinámicos e involucran procesos adaptativos. Ej: En un principio se necesitan mutaciones muy grandes(recorrer el espacio de búsqueda), pero pequeñas mutaciones al final para refinar o ajustar la búsqueda. Solución: Cambiar P por una función p(t), donde t es un contador de generaciones. Cambiar P por una función p(t), donde t es un contador de generaciones.

13 Parámetros de control en AE Usándose a sí mismo Una última opción es hacer uso de un AE para ajustar el algoritmo de un problema en particular.Una última opción es hacer uso de un AE para ajustar el algoritmo de un problema en particular. Usar alguna regla heurística. Retroalimentación. Usar alguna regla heurística. Retroalimentación. Incorporar parámetros a la estructura que representa la solución (Evolucionar los parámetros). Incorporar parámetros a la estructura que representa la solución (Evolucionar los parámetros).

14 Ilustrando el caso con un NLP Ejemplo: Optimizar f(x) = f(x 1,……..,X n ). Sujeto a: g i (x) <= 0 (i=1,2,….,q) y h j (x) = 0(j=q+1,….,m). Dominio de las variables:l i <=x i <=u i para 1<=i<=n. Cada individuo se representa como un vector de valores de punto flotante: x=(x 1,……..,X n ).

15 Ilustrando el caso con un NLP Mutación Se usa una mutación aleatoria Gausiana N(0, ) (0 = Media = desviación estandar) Mutación (Para cada componente): x i = x i + N(0,1) Variar, puede ser beneficioso: Primero: Remplazar el parámetro por una función (t). Ej: (t) = 1-0.9(t\T).

16 Ilustrando el caso con un NLP Mutación Segundo: Incorporando retroalimentación: if (t mod n =0) then (t-n)/c,si p s > 1/5 (t) (t-n)*c, si p s 1/5 (t) (t-n)*c, si p s < 1/5 (t-n), si p s = 1/5 else (t) (t-1) n = un número de generaciones. p s = frecuencia relativa de mutación exitosa.

17 Tercero: Asignar una mutación específica para cada vector. x=(x 1,…..x n, ). x=(x 1,…..x n, ). rige como los valores de x i pueden mutar y esta sujeta a si misma a variación. = * e N(0, 0 ), 0 = 1/(n) 1/2 xi= xi + N(0, ) rige como los valores de x i pueden mutar y esta sujeta a si misma a variación. = * e N(0, 0 ), 0 = 1/(n) 1/2 xi= xi + N(0, ) Ilustrando el caso con un NLP Mutación

18 Ahora podemos aplicar variaciones a cada uno de los componentes del individio(no al individuo como tal). x=(x 1,…..x n, 1,…, n ). Usando la misma variación que la anterior. Ilustrando el caso con un NLP Mutación

19 Taxonomía de las Técnicas de Control. Aspectos a considerar:Aspectos a considerar: 1. 1.Qué es exactamente lo que está siendo modificado(representación, función de evaluación, operadores, proceso de selección, rata de mutación)? 2. 2.Comó es que estos cambios se están haciendo(heurística determinística, heurística basada en retroalimentación, ó, autoadaptativos)? 3.Cuál es el alcance o nivel del cambio(Poblacional, Individual)? 4.Qué estadística o evidencia se usa para afectar los cambios(monitoreo del rendimiento de los operadores, la diversidad de población)?

20 Taxonomia de las Técnicas de Control. (Que es lo que cambia) Un lista de todos los componentes del AE.Un lista de todos los componentes del AE. –Representación de individuos. –La función de evaluación. –Los operadores de evaluación y sus probabilidades asociadas. –El operador de selección (o remplazo) y las reglas asociadas. –La población en términos del tamaño, topología, etc.

21 Taxonomia de las Técnicas de Control. (Que es lo que cambia) Cada componente puede ser parametrizado. Ej: Combinación aritmética. V = ( 1 x 1,….., n x n ). Tamaño y número de subpoblaciones. Ratas de migración entre subpoblaciones. Etc..Cada componente puede ser parametrizado. Ej: Combinación aritmética. V = ( 1 x 1,….., n x n ). Tamaño y número de subpoblaciones. Ratas de migración entre subpoblaciones. Etc..

22 Taxonomía de las Técnicas de Control. (Que es lo que cambia) Manteniendo la atención en lo que cambia, podemos localizar donde un específico mecanismo tuvo efecto directoManteniendo la atención en lo que cambia, podemos localizar donde un específico mecanismo tuvo efecto directo

23 Taxonomía de las Técnicas de Control. (Qué es lo que cambia) Clasificación de métodos para el cambio de valores Determinístico: El valor de los parámetros varía con una regla determinística.Determinístico: El valor de los parámetros varía con una regla determinística. Adaptativos: Cuando se utiliza alguna forma de retroalimentación de la búsqueda, para determinar la dirección y/o la magnitud del cambio.Adaptativos: Cuando se utiliza alguna forma de retroalimentación de la búsqueda, para determinar la dirección y/o la magnitud del cambio. Autoadaptativos: La idea de la evolución de la evolución. Los parámetros son codificados y colocados en la estructura de datos, y los mejores son usados en el algoritmo.Autoadaptativos: La idea de la evolución de la evolución. Los parámetros son codificados y colocados en la estructura de datos, y los mejores son usados en el algoritmo.

24 Taxonomía Global Configuración de parámetros Ajuste de ParámetrosParámetros de Control Adaptativos Auto-adaptativos Determinístico offlineonline

25 Cualquier cambio puede afectar un componente, un individuo, a toda la población,ó, a la función de evaluación. Ej: Un cambio en la desviación estandar puede afectar todo.Cualquier cambio puede afectar un componente, un individuo, a toda la población,ó, a la función de evaluación. Ej: Un cambio en la desviación estandar puede afectar todo. Taxonomía de las Técnicas de Control. (Espacio o nivel de adaptación)

26 Posibilidades para los parámetros de control - Representación Los mayores esfuerzsos se han concentrado en estructuras binarias. Ej: Hamming Clift. Ej: 7 y 8 en binarios es 0111 y 1000).Los mayores esfuerzsos se han concentrado en estructuras binarias. Ej: Hamming Clift. Ej: 7 y 8 en binarios es 0111 y 1000). Hay manera de hacer la representación de forma adaptativa. Ej: Usando parámetros de control adaptativos.Hay manera de hacer la representación de forma adaptativa. Ej: Usando parámetros de control adaptativos.

27 Posibilidades para los parámetros de control – Función de Evaluación Incorporar funciones de castigo dentro de la evaluación de una solución, permite adaptar la función durante la búsqueda evolutiva.Incorporar funciones de castigo dentro de la evaluación de una solución, permite adaptar la función durante la búsqueda evolutiva. Variar los castigos de acuerdo a un programa predefinido determinístico. Ej: eval(X, )=f(X) + 1/(2 )* f 2 j (x) se disminuye cada vez que el algoritmo converge.Variar los castigos de acuerdo a un programa predefinido determinístico. Ej: eval(X, )=f(X) + 1/(2 )* f 2 j (x) se disminuye cada vez que el algoritmo converge.

28 Resolver problemas de satisfacer restricciones, que cambian la función de evaluación del rendimiento en una ejecución. Ej: Aumentar los pesos a las restricciones que viola el mejor individio.Resolver problemas de satisfacer restricciones, que cambian la función de evaluación del rendimiento en una ejecución. Ej: Aumentar los pesos a las restricciones que viola el mejor individio. Posibilidades para los parámetros de control – Función de Evaluación

29 Posibilidades para los parámetros de control – Mutación Una opción es determinar la rata de mutación. Ej: Con base en datos experimentales, determinarla (Funciona solo para ejemplos específicos).Una opción es determinar la rata de mutación. Ej: Con base en datos experimentales, determinarla (Funciona solo para ejemplos específicos). Han determinado que la rata de mutación para funciones binarias de problemas de optimización que son linealmente separable por: 1/L (L número de var. Binarias.)Han determinado que la rata de mutación para funciones binarias de problemas de optimización que son linealmente separable por: 1/L (L número de var. Binarias.)

30 Cambio de los parámetros de mutación para el problema de counting-ones problem. Pm(t) = ( / ) 1/2 * ((exp(- t/2)/( *L 1/2 ))), Donde, y son constantes, es tamaño de la población y t el tiempo(contador de generaciones).Cambio de los parámetros de mutación para el problema de counting-ones problem. Pm(t) = ( / ) 1/2 * ((exp(- t/2)/( *L 1/2 ))), Donde, y son constantes, es tamaño de la población y t el tiempo(contador de generaciones). Posibilidades para los parámetros de control – Mutación

31 Bäck and Schútz restringieron una función para el control de la probabilidad de la mutación inciando desde P m (0)= 0.5 y usando P m (T)= 1/L como un máximo valor de T evaluaciones:Bäck and Schútz restringieron una función para el control de la probabilidad de la mutación inciando desde P m (0)= 0.5 y usando P m (T)= 1/L como un máximo valor de T evaluaciones: P m = (2+((L-2/T)*t) -1, si 0<= t <= T. P m = (2+((L-2/T)*t) -1, si 0<= t <= T. Uso de mutaciones no uniformes. Ej: Buscar uniformemente al principio y muy localmente al final. Uso de mutaciones no uniformes. Ej: Buscar uniformemente al principio y muy localmente al final. Auto adaptaciónAuto adaptación Posibilidades para los parámetros de control – Mutación

32 Determinar ratas combinación con base en trabajos previos realizados. Ej: Entre 0.6 y 0.95 (Para representaciones binarias).Determinar ratas combinación con base en trabajos previos realizados. Ej: Entre 0.6 y 0.95 (Para representaciones binarias). Premiando a los que más éxito tengan en la optención de hijos.Premiando a los que más éxito tengan en la optención de hijos. Autoadaptativas, agregando un bit extra a cada individuo, que indica que tipo de combinación usar para cada uno(Dos diferentes opciones).Autoadaptativas, agregando un bit extra a cada individuo, que indica que tipo de combinación usar para cada uno(Dos diferentes opciones). Posibilidades para los parámetros de control – Operadores de Combina.

33 Determinar el número y localización de puntos de combinación. Introduciendo marcas en la representación indicando donde debe ocurrir la combinación.Determinar el número y localización de puntos de combinación. Introduciendo marcas en la representación indicando donde debe ocurrir la combinación. Aplicar combinación a diferentes padres(más de dos). - Se divide la población en subpoblaciones - Cada una con diferentes tipos de combinación. - Migración.Aplicar combinación a diferentes padres(más de dos). - Se divide la población en subpoblaciones - Cada una con diferentes tipos de combinación. - Migración. Posibilidades para los parámetros de control – Operadores de Combina.

34 El criterio de Metrópolis para definir la presión de selección ( Cronograma de Enfriamiento). p[aceptada j] = exp(E i – E j /k b * T) E i y E j = niveles de energía. K b = Kte. de Boltzmann. T = temperatura.El criterio de Metrópolis para definir la presión de selección ( Cronograma de Enfriamiento). p[aceptada j] = exp(E i – E j /k b * T) E i y E j = niveles de energía. K b = Kte. de Boltzmann. T = temperatura. Ranking Lineal (proprocional a cada individuo) p(i)= [((2- b + 2i(b-1)/ t. población))/ t. población] b = Número de hijos esperados.Ranking Lineal (proprocional a cada individuo) p(i)= [((2- b + 2i(b-1)/ t. población))/ t. población] b = Número de hijos esperados. Posibilidades para los parámetros de control – Selección de padres.

35 Definida desde un principio.Definida desde un principio. Usando experimentación.Usando experimentación. Variando en función de la calidad(modificar el tamaño).Variando en función de la calidad(modificar el tamaño). «Etiquetando» a los individuos («esperanza» de vida basado en la calidad.)«Etiquetando» a los individuos («esperanza» de vida basado en la calidad.) Posibilidades para los parámetros de control – Población.

36 La gran mayoría se basan en controlar un solo aspecto a la vez. - Se realizó experimentalmente. - Es más fácil obtener resultados.La gran mayoría se basan en controlar un solo aspecto a la vez. - Se realizó experimentalmente. - Es más fácil obtener resultados. Es muy difícil. - No se entiende aún como puede afectar.Es muy difícil. - No se entiende aún como puede afectar. La mayoría de estudios empíricos tratan de entender la interación entre varios parámetros. - Modelos estocásticos (Cadenas de Markov)La mayoría de estudios empíricos tratan de entender la interación entre varios parámetros. - Modelos estocásticos (Cadenas de Markov) Formas de combinar parámetros de control.

37 El más común es el relacionado con mutación. - Nivel global. - Para cada solución - Un componente dentro de una soluc.El más común es el relacionado con mutación. - Nivel global. - Para cada solución - Un componente dentro de una soluc. Combinar la adaptación a diferentes parámetros de mutación. - Gaussiana, Cauchy con la desviación estandar.Combinar la adaptación a diferentes parámetros de mutación. - Gaussiana, Cauchy con la desviación estandar. La combinación de adaptar múltiples parámetros de control que gobiernen diferentes componentes en AE.La combinación de adaptar múltiples parámetros de control que gobiernen diferentes componentes en AE. Formas de combinar parámetros de control(2).

38 Mientras la adaptación de parámetros estáticos para varios componentes de un AE es compleja, lo es mucho mas la adaptación dinámica de los mismos. La autoadaptación parece ser la forma más prometedora de hacerlo. Formas de combinar parámetros de control(3).

39 Los algoritmos evolutivos son una herramienta nueva para la búsqueda de soluciones, donde mucho está por hacer. CONCLUSIÓN


Descargar ppt "Ajustando el Algoritmo al problema Universidad Nacional Oscar Lozano."

Presentaciones similares


Anuncios Google