SlideShare una empresa de Scribd logo
TEMA

        INTRODUCCIÓN AL AJUSTE DE PARÁMETROS:
        AFINAMIENTO Y CONTROL (TRABAJO DE A.E. EIBEN Y S.K. SMIT)
FECHA                       PONENTE
        15/04/2011                    PABLO GARCÍA SÁNCHEZ
Índice
Introducción

Vocabulario

Utilidad

Tipos de Afinadores

Midiendo el esfuerzo

Consideraciones
Introducción
En la práctica los valores de los parámetros se
eligen:

  Por convención (ej: mutación baja),

  Elecciones ad-hoc (usemos crossover
  uniforme!)

  Comparativas experimentales a escala
  limitada (testear 3 combinaciones de tres
  tasas de crossover y 3 de mutación)
Afinamiento Vs. Control
                           PARAMETER SETTING

   ANTES DE LA EJECUCIÓN                      DURANTE LA EJECUCIÓN




PARAMETER TUNING                         PARAMETER CONTROL



                              DETERMINISTIC                          SELF-ADAPTATIVE
                                                  ADAPTATIVE
Afinamiento Vs. Control
                           PARAMETER SETTING

   ANTES DE LA EJECUCIÓN                      DURANTE LA EJECUCIÓN




PARAMETER TUNING                         PARAMETER CONTROL



                              DETERMINISTIC                          SELF-ADAPTATIVE
                                                  ADAPTATIVE
Objetivos del artículo
Discutir la noción de un parámetro de un EA y su
relación con los EAs y las instancias de un EA

Considerar los aspectos más importantes del
problema de afinar los parámetros

Resumen de los métodos de afinamiento de
parámetro existentes

Detalles sobre metodología y recomendaciones
para próximas investigaciones
EAs, Parámetros e
instancias de algoritmos
Parámetros cuantitativos y cualitativos (aunque
otros autores los nombran distinto)->Dos niveles

Instanciar un parámetro es darle un valor

El número de parámetros para un EA no es fijo.
Ejemplo: elegir torneo implica elegir tamaño
(sub-parámetro).

Dos algoritmos son diferentes si difieren en uno
de los parámetros cualitativos.
Diseño de algoritmos y
afinamiento de parámetros
Un EA con buenos valores para los parámetros
puede ser ordenes de magnitud mejor que uno
con valores mal elegidos
      Design layer      Design layer

OPTIMIZES                       ALGORITHM QUALITY

    Algorithm layer    Algorithm layer

OPTIMIZES                       SOLUTION QUALITY
      Application        Application
Vocabulario
                   Problem Solving          Parameter Tuning
Method at work       evolutionary           tuning procedure
 Search space         algorithms
                   solution vectors         parameter vectors
    Quality      fitness (determinístico)    utility (depende)
  Asessment            evaluation                  testing
Formalización del
problema
El problema del afinamiento de parámetros se
puede resumir en un problema de búsqueda
<S,u> en el espacio de parámetros:

    S=Q1 x ⋅⋅⋅ × Qm × R1 × ⋅⋅⋅ × Rn
         ESTRUCTURAL    PARAMÉTRICO
Utilidad: u(p) p∈S

Espacio de utilidad
Utilidad, rendimiento del
 algoritmo y funciones test
Hay dos medidas atómicas para los EAs:

  Calidad de la solución

  Esfuerzo de búsqueda: tiempo, número de evaluaciones, etc.

Se pueden combinar. P.ej:

  Dado un máximo tiempo obtener la mejor solución

  Dado un mínimo nivel de fitness obtener el tiempo en llegar a él

  Dado un máximo de tiempo y un mínimo fitness determinar si
  llega (true o false)
Métricas de rendimiento


MBF: Mean Best Fitness

AES: Average number of evaluations to solution

SR: Success rate
Afinadores especialistas
vs. generalistas
Afinador especialista: un EA es muy bueno
resolviendo una instancia de un problema.

Sin embargo se buscan instancias EA robustas,
por lo que se usa un conjunto de
funciones→afinador generalista. (NFL!)

Al usar varios fitness la utilidad no es un sólo
número→multiobjetivo o media de utilidades (o
usando pesos o ordenes lexicográficos o lo que
sea)
Resumen de terminología
1. Los vectores solución tienen valores de fitness, basados en la
   función objetivo relacionado con la instancia del problema a resolver

2. Las instancias de los EAs tienen valores de rendimiento, basados
   en la información relacionada con el fitness y tiempo de ejecución de
   una o más instancias del problema (funciones objetivo)

3. Los vectores de parámetros tienen valores de utilidad, definidas
   por el rendimiento de las instancias de EA correspondientes y las
   instancias del problema (funciones objetivo) usadas para afinar.

               Función de
                utilidad
                                           Conjunto de
                              Afinador



                Algoritmo                    buenos
                Evolutivo                 valores de los
                                           parámetros!
               Problema(s)
                 de test
Aproximaciones algorítmicas
al afinamiento de parámetros
Afinadores iterativos
vs. no iterativos

Procedimientos multi-
etapa vs. mono-etapa

Cómo medir el
esfuerzo de la
búsqueda
Afinadores iterativos vs.
no iterativos
No Iterativos: generan un conjunto fijo de
vectores en la inicialización. Cada uno de esos
vectores se testea durante la fase TEST para
encontrar el mejor vector de ese conjunto.

Iterativos:empiezan con un conjunto inicial
(aleatorio, grid sistemático o abarcando el
espacio de búsqueda) y crean nuevos vectores
durante la ejecución.
Mono y multi-etapa


Mono-etapa: realizan el mismo número de test
para cada vector dado

Multi-etapa: seleccionan los vectores más
prometedores para hacer test más exhaustivos
Midiendo el esfuerzo
                          AxBxC

A. Número de vectores de parámetros a usar por el
   afinador

B. Número de tests (ej, ejecuciones del EA) por vector

C.Número de evaluaciones de una función fitness en cada
  ejecución. Relacionado con la estimación del
  rendimiento antes de terminarlo.

  Se usa para la Clasificación de los métodos de
  afinamiento
Reducir número de
vectores de parámetros
Suelen usarse métodos iterativos→Apropiados para parámetros
cuantitativos

Meta-EAs →Sólo existen en la literatura meta-EAs con GA, ES,
EDA (Estimation Distribution Algorithm) (no hay PSO ni DE)

meta-GA y meta-ES son parecidos, es con EDA donde se obtiene
más información al distribuir por el espacio de búsqueda.

REVAC (Relevance Estimation and Value Calibration) method
(Eiben, muchas citas). Crea distribuciones de probabilidad
implícitas de acuerdo a los parámetros para que los parámetros
que han demostrado ser buenos tienen más posibilidades que
los peores. Al terminar se obtiene el rango de los parámetros
prometedores y la relevancia de cada uno.
Reducir el número de
  tests (B)
   Realizar sólo unos pocos test al principio e incrementar este número al
   nivel mínimo para obtener comparaciones entre parámetros
   estadísticamente significativo: statistical screening, ranking y selection.

   Maron et al. introducen racing. Método no iterativo dado un conjunto P
   de vectores y un número B máximo:

1. Testear todos los vectores p una vez (es decir, ejecutar un EA)

2. Determinar cual es mejor p con utilidad media mejor (pmejor)

3. Determinar P' los vectores cuya utilidad no es significativamente peor
   que pmejor (¿cómo?)

4. P = P'

5. if P >1 y numTest<B ir a 1
Midiendo las diferencias
significativas de la utilidad
En el paso 3. es donde difieren los métodos de racing. La
diferencia significativa se mide con:

  ANOVA

  Kruskal-Wallis

  Hoeffding's bound

  Unpaired Student T-Test

Multi-etapa (se eligen los más prometedores para realizar
tests más exhaustivos) y se pueden usar para parámetros
cuantitativos y cualitativos
Utilizando un número pequeño de
  vectores de parámetros y tests
  (A y B)
  Yuan et al. combinan racing con meta-EAs en dos métodos:

A. Los parámetros cuantitativos se evolucionan con una meta-
   (1+ λ )-ES, y en cada creación λ vectores se crean
   utilizando una distribución Gausiana centrada en el mejor.
   Luego se usa racing para ver cual tiene la mayor utilidad
   (así no hay que evaluarlos todos B veces, ya que algunos
   de ellos se eliminan después de unos pocos tests)

B. Utilizan mutación, selección y recombinación pero se
   evalúan los vectores cuantitativos con todas las
   combinaciones de los parámetros cualitativos. También
   usa racing.
Utilizando un número pequeño de
vectores de parámetros y tests
(A y B)
SPOT: procedimiento iterativo. Vectores de parámetros distribuidos
(ej LHD, Latin Hypercube Design).

  Se testean B0 veces para estimar la utilidad y se crea un modelo
  de predicción.

  Se crean l nuevos vectores y su utilidad se estima usando el
  modelo sin ejecuciones adicionales del EA. Usan estimaciones de
  predicción y error. Los puntos más prometedores se evalúan B
  veces (valor bajo que puede ir subiendo si no se encuentra una
  buena utilidad). En el paso inicial hay pocos vectores (1 a 4).
  Puede combinarse con racing.

REVAC++: REVAC + sharpening + racing (como add-ons) Cita a un
artículo que se muestran las ventajas de racing y sharpening.
Utilizando un número
pequeño de evaluaciones (C)
En verano de 2009 no hay ninguno en la
literatura (?) Sólo un tipo deja fijos parámetros
salvo tamaño de población y los ejecuta en
paralelo y cancela los EAs que van peor (la
utilidad es el fitness en este caso).

Idea: terminar la ejecución si no se va a
encontrar un umbral de utilidad. Parecido a
racing, pero reduciendo el número de
evaluaciones (C) en lugar de tests (B).
Casos exitosos en el
afinamiento de EAs
Comparativas de algoritmos afinados vs a mano
o con fuerza bruta.

Estudios indican que no todos los EAs requieren
el mismo coste para afinarlos.

SA y ES afinados con DACE y regresión
simbólica

Otros afinadores para otros algoritmos
Consideraciones para
afinar EAs
Problemas repetitivos Vs. una-vez (en unos prima el coste
computacional y en otros la calidad de la solución). Los
primeros se usan más en el mundo académico.

Beneficios del afinamiento para profesionales que se
enfrentan a problemas reales y académicos que quieran
avanzar el mundo de los EAs en general.

Para ambos: "Afina tus algoritmos con un algoritmo afinador
(e informa de los efectos de la afinación)".

El problema de las "constantes mágicas" escondidas en el
código. Por ejemplo en CMA-ES descendencia=4+3*log(n) y
poblacion = desc/2. → también deberían tunearse
Consideraciones finales
“Mi nuevo algoritmo es mejor que el antiguo en algunos
casos” ☹

Gastando X esfuerzo en tunear mi nuevo algoritmo, tenemos
una instancia que es mejor que el viejo sin tunear.☺

La mejor instancia del nuevo algoritmo es mejor que la mejor
instancia del viejo algoritmo, donde las mejores de estas
instancias se han obtenido con X esfuerzo en tunearlas.☺☺

Así nos enfocamos mejor en los operadores que en las
instancias
Conclusiones
 Hay que usar afinadores y gastar un día extra en
 afinar tus algoritmos. Hay software disponible!

 P. Ej. MOBAT (Java y paralelo) Meta-Heuristic
 Optimizer Benchmark and Analysis Tool
  Rendimiento




                                     Rendimiento




                EA1   EA2                          EA1   EA2
Parámetros ad-hoc sin afinamiento Parámetros óptimos con afinamiento
Bibliografía
Eiben A. E. and Smit S. K., Parameter Tuning for Configuring and Analyzing
Evolutionary Algorithms , Swarm andEvolutionary Computation , 2011

Eiben A. E. and Smit S. K., Evolutionary Algorithm Parameters and Methods
to Tune them , Y. Hamadi E. Monfroy and Saubion F. (eds.) , Autonomous
Search , Springer , 2011

Smit S. K. and Eiben A. E., Beating the 'world champion' evolutionary
algorithm via REVAC tuning , IEEE Congress on Evolutionary Computation ,
IEEE Press , 2010 , pp. 1-8

Eiben A. E. and Smith J.E., Parameter Control in Evolutionary Algorithms,
Introduction to Evolutionary Comuting, Springer, 2005, pp. 129-151.

Kang P. et al. Dynamic Tuning of Algorithmic Parameters of Parallel
Scientific codes, International Conference on Computational Science, ICCS
2010, 2010, pp. 145-153.
MUCHAS GRACIAS!
PROYECTO




           (POR SU ATENCIÓN)
FECHA                    EMAIL
           15/04/2011            PGARCIA@ATC.UGR.ES

Más contenido relacionado

PPT
Tema 4 calibraciones y regresión
PDF
Econometria Vanessa Santiago
PDF
PDF
Evopar12 Validating a P2P EA
PPSX
Sandpile evo star 2011
PDF
Optimizing Strategy Parameters in a Game Bot
PDF
CONTEXT-AWARENESS IN A SERVICE ORIENTED E-HEALTH PLATFORM
PDF
Evolving Evil: Optimizing Flocking Strategies through Genetic Algorithms for ...
Tema 4 calibraciones y regresión
Econometria Vanessa Santiago
Evopar12 Validating a P2P EA
Sandpile evo star 2011
Optimizing Strategy Parameters in a Game Bot
CONTEXT-AWARENESS IN A SERVICE ORIENTED E-HEALTH PLATFORM
Evolving Evil: Optimizing Flocking Strategies through Genetic Algorithms for ...

Destacado (20)

PDF
Sistemas clasificadores
PDF
Designing and Evolving an Unreal Tournament 2004 Expert Bot
PPS
FSM-Based Agents for Playing Super Mario Game
PDF
Evolutionary Deckbuilding in Hearthstone
PPTX
Adaptative bots for real time strategy game via map characterization
PDF
Endpoint practica de redes
PDF
Banque de détail
PPT
Presentación Proyecto Centro Guadalinfo Almensilla (Sevilla)
PDF
Annexes AG Fédération nationale des Villages étapes
PPTX
Drupalcamp Nantes - Présentation entités
PPS
Couleurs pour les yeux
PPTX
Expo proyectos joha 2012
PDF
Padecer por Cristo
PDF
Die Transferstärke Methode
PDF
Jenui2011 webservices
PDF
Open Access - Offener Zugang zu wissenschaftlichem Wissen
PPT
Mercado laboral e competencias no territorio
PDF
Mural conto terror 1º curso
PDF
PPTX
Tarte flambée recette
Sistemas clasificadores
Designing and Evolving an Unreal Tournament 2004 Expert Bot
FSM-Based Agents for Playing Super Mario Game
Evolutionary Deckbuilding in Hearthstone
Adaptative bots for real time strategy game via map characterization
Endpoint practica de redes
Banque de détail
Presentación Proyecto Centro Guadalinfo Almensilla (Sevilla)
Annexes AG Fédération nationale des Villages étapes
Drupalcamp Nantes - Présentation entités
Couleurs pour les yeux
Expo proyectos joha 2012
Padecer por Cristo
Die Transferstärke Methode
Jenui2011 webservices
Open Access - Offener Zugang zu wissenschaftlichem Wissen
Mercado laboral e competencias no territorio
Mural conto terror 1º curso
Tarte flambée recette
Publicidad

Similar a Parameter Tuning (20)

DOCX
Teoria de optimizacion by. manuel rivas
PPT
Estudio R & R Mejia
PDF
Machine learning: evaluación de hipótesis
PDF
PRESENTACION PROGRAMACION OPERADORES Y EXPRESIONES
PPTX
S02.Elementos de un problema de toma de desiciones,Proceso de Analisis Jerarq...
PDF
Capítulo 07 interpretación de resultados
PDF
Capítulo 07 interpretación de resultados
PPTX
Presentación optimizacion de sistema
PPTX
Evaluación de expresiones - Método divide y vencerás
PPTX
Presentacion MeM
DOC
Análisis estadístico y consideraciones diversas de la aplicación del análisis...
PPTX
métodos multicriterios_qlv..............................tsfe3uh.pptx
PPT
Introduccion a los algoritmos parte 1
PPT
Introducci+¦n a los algoritmos1
PPTX
Optimización de sistemas y funciones
PPT
Simulación: Teoría y aplicaciones con Promodel
PPTX
EXPOSICION GRUPAL.pptx
PPTX
Transformar en spss
PPT
Diagramas de-flujo.
PDF
reglajes formula uno electre
Teoria de optimizacion by. manuel rivas
Estudio R & R Mejia
Machine learning: evaluación de hipótesis
PRESENTACION PROGRAMACION OPERADORES Y EXPRESIONES
S02.Elementos de un problema de toma de desiciones,Proceso de Analisis Jerarq...
Capítulo 07 interpretación de resultados
Capítulo 07 interpretación de resultados
Presentación optimizacion de sistema
Evaluación de expresiones - Método divide y vencerás
Presentacion MeM
Análisis estadístico y consideraciones diversas de la aplicación del análisis...
métodos multicriterios_qlv..............................tsfe3uh.pptx
Introduccion a los algoritmos parte 1
Introducci+¦n a los algoritmos1
Optimización de sistemas y funciones
Simulación: Teoría y aplicaciones con Promodel
EXPOSICION GRUPAL.pptx
Transformar en spss
Diagramas de-flujo.
reglajes formula uno electre
Publicidad

Último (20)

PDF
ADMINISTRACIÓN DE ARCHIVOS - TICS (SENA).pdf
PPTX
modulo seguimiento 1 para iniciantes del
PPTX
ANCASH-CRITERIOS DE EVALUACIÓN-FORMA-10-10 (2).pptx
PPTX
Power Point Nicolás Carrasco (disertación Roblox).pptx
PPTX
Historia Inteligencia Artificial Ana Romero.pptx
PDF
capacitación de aire acondicionado Bgh r 410
PDF
CyberOps Associate - Cisco Networking Academy
PPTX
IA de Cine - Como MuleSoft y los Agentes estan redefiniendo la realidad
PPTX
historia_web de la creacion de un navegador_presentacion.pptx
PPTX
la-historia-de-la-medicina Edna Silva.pptx
PDF
Instrucciones simples, respuestas poderosas. La fórmula del prompt perfecto.
PDF
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN
PPTX
Presentación PASANTIAS AuditorioOO..pptx
PDF
Influencia-del-uso-de-redes-sociales.pdf
PDF
informe_fichas1y2_corregido.docx (2) (1).pdf
PPTX
Presentacion de Alba Curso Auditores Internos ISO 19011
PDF
TRABAJO DE TECNOLOGIA.pdf...........................
PPT
introduccion a las_web en el 2025_mejoras.ppt
PPTX
sa-cs-82-powerpoint-hardware-y-software_ver_4.pptx
PDF
SAP Transportation Management para LSP, TM140 Col18
ADMINISTRACIÓN DE ARCHIVOS - TICS (SENA).pdf
modulo seguimiento 1 para iniciantes del
ANCASH-CRITERIOS DE EVALUACIÓN-FORMA-10-10 (2).pptx
Power Point Nicolás Carrasco (disertación Roblox).pptx
Historia Inteligencia Artificial Ana Romero.pptx
capacitación de aire acondicionado Bgh r 410
CyberOps Associate - Cisco Networking Academy
IA de Cine - Como MuleSoft y los Agentes estan redefiniendo la realidad
historia_web de la creacion de un navegador_presentacion.pptx
la-historia-de-la-medicina Edna Silva.pptx
Instrucciones simples, respuestas poderosas. La fórmula del prompt perfecto.
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN
Presentación PASANTIAS AuditorioOO..pptx
Influencia-del-uso-de-redes-sociales.pdf
informe_fichas1y2_corregido.docx (2) (1).pdf
Presentacion de Alba Curso Auditores Internos ISO 19011
TRABAJO DE TECNOLOGIA.pdf...........................
introduccion a las_web en el 2025_mejoras.ppt
sa-cs-82-powerpoint-hardware-y-software_ver_4.pptx
SAP Transportation Management para LSP, TM140 Col18

Parameter Tuning

  • 1. TEMA INTRODUCCIÓN AL AJUSTE DE PARÁMETROS: AFINAMIENTO Y CONTROL (TRABAJO DE A.E. EIBEN Y S.K. SMIT) FECHA PONENTE 15/04/2011 PABLO GARCÍA SÁNCHEZ
  • 3. Introducción En la práctica los valores de los parámetros se eligen: Por convención (ej: mutación baja), Elecciones ad-hoc (usemos crossover uniforme!) Comparativas experimentales a escala limitada (testear 3 combinaciones de tres tasas de crossover y 3 de mutación)
  • 4. Afinamiento Vs. Control PARAMETER SETTING ANTES DE LA EJECUCIÓN DURANTE LA EJECUCIÓN PARAMETER TUNING PARAMETER CONTROL DETERMINISTIC SELF-ADAPTATIVE ADAPTATIVE
  • 5. Afinamiento Vs. Control PARAMETER SETTING ANTES DE LA EJECUCIÓN DURANTE LA EJECUCIÓN PARAMETER TUNING PARAMETER CONTROL DETERMINISTIC SELF-ADAPTATIVE ADAPTATIVE
  • 6. Objetivos del artículo Discutir la noción de un parámetro de un EA y su relación con los EAs y las instancias de un EA Considerar los aspectos más importantes del problema de afinar los parámetros Resumen de los métodos de afinamiento de parámetro existentes Detalles sobre metodología y recomendaciones para próximas investigaciones
  • 7. EAs, Parámetros e instancias de algoritmos Parámetros cuantitativos y cualitativos (aunque otros autores los nombran distinto)->Dos niveles Instanciar un parámetro es darle un valor El número de parámetros para un EA no es fijo. Ejemplo: elegir torneo implica elegir tamaño (sub-parámetro). Dos algoritmos son diferentes si difieren en uno de los parámetros cualitativos.
  • 8. Diseño de algoritmos y afinamiento de parámetros Un EA con buenos valores para los parámetros puede ser ordenes de magnitud mejor que uno con valores mal elegidos Design layer Design layer OPTIMIZES ALGORITHM QUALITY Algorithm layer Algorithm layer OPTIMIZES SOLUTION QUALITY Application Application
  • 9. Vocabulario Problem Solving Parameter Tuning Method at work evolutionary tuning procedure Search space algorithms solution vectors parameter vectors Quality fitness (determinístico) utility (depende) Asessment evaluation testing
  • 10. Formalización del problema El problema del afinamiento de parámetros se puede resumir en un problema de búsqueda <S,u> en el espacio de parámetros: S=Q1 x ⋅⋅⋅ × Qm × R1 × ⋅⋅⋅ × Rn ESTRUCTURAL PARAMÉTRICO Utilidad: u(p) p∈S Espacio de utilidad
  • 11. Utilidad, rendimiento del algoritmo y funciones test Hay dos medidas atómicas para los EAs: Calidad de la solución Esfuerzo de búsqueda: tiempo, número de evaluaciones, etc. Se pueden combinar. P.ej: Dado un máximo tiempo obtener la mejor solución Dado un mínimo nivel de fitness obtener el tiempo en llegar a él Dado un máximo de tiempo y un mínimo fitness determinar si llega (true o false)
  • 12. Métricas de rendimiento MBF: Mean Best Fitness AES: Average number of evaluations to solution SR: Success rate
  • 13. Afinadores especialistas vs. generalistas Afinador especialista: un EA es muy bueno resolviendo una instancia de un problema. Sin embargo se buscan instancias EA robustas, por lo que se usa un conjunto de funciones→afinador generalista. (NFL!) Al usar varios fitness la utilidad no es un sólo número→multiobjetivo o media de utilidades (o usando pesos o ordenes lexicográficos o lo que sea)
  • 14. Resumen de terminología 1. Los vectores solución tienen valores de fitness, basados en la función objetivo relacionado con la instancia del problema a resolver 2. Las instancias de los EAs tienen valores de rendimiento, basados en la información relacionada con el fitness y tiempo de ejecución de una o más instancias del problema (funciones objetivo) 3. Los vectores de parámetros tienen valores de utilidad, definidas por el rendimiento de las instancias de EA correspondientes y las instancias del problema (funciones objetivo) usadas para afinar. Función de utilidad Conjunto de Afinador Algoritmo buenos Evolutivo valores de los parámetros! Problema(s) de test
  • 15. Aproximaciones algorítmicas al afinamiento de parámetros Afinadores iterativos vs. no iterativos Procedimientos multi- etapa vs. mono-etapa Cómo medir el esfuerzo de la búsqueda
  • 16. Afinadores iterativos vs. no iterativos No Iterativos: generan un conjunto fijo de vectores en la inicialización. Cada uno de esos vectores se testea durante la fase TEST para encontrar el mejor vector de ese conjunto. Iterativos:empiezan con un conjunto inicial (aleatorio, grid sistemático o abarcando el espacio de búsqueda) y crean nuevos vectores durante la ejecución.
  • 17. Mono y multi-etapa Mono-etapa: realizan el mismo número de test para cada vector dado Multi-etapa: seleccionan los vectores más prometedores para hacer test más exhaustivos
  • 18. Midiendo el esfuerzo AxBxC A. Número de vectores de parámetros a usar por el afinador B. Número de tests (ej, ejecuciones del EA) por vector C.Número de evaluaciones de una función fitness en cada ejecución. Relacionado con la estimación del rendimiento antes de terminarlo. Se usa para la Clasificación de los métodos de afinamiento
  • 19. Reducir número de vectores de parámetros Suelen usarse métodos iterativos→Apropiados para parámetros cuantitativos Meta-EAs →Sólo existen en la literatura meta-EAs con GA, ES, EDA (Estimation Distribution Algorithm) (no hay PSO ni DE) meta-GA y meta-ES son parecidos, es con EDA donde se obtiene más información al distribuir por el espacio de búsqueda. REVAC (Relevance Estimation and Value Calibration) method (Eiben, muchas citas). Crea distribuciones de probabilidad implícitas de acuerdo a los parámetros para que los parámetros que han demostrado ser buenos tienen más posibilidades que los peores. Al terminar se obtiene el rango de los parámetros prometedores y la relevancia de cada uno.
  • 20. Reducir el número de tests (B) Realizar sólo unos pocos test al principio e incrementar este número al nivel mínimo para obtener comparaciones entre parámetros estadísticamente significativo: statistical screening, ranking y selection. Maron et al. introducen racing. Método no iterativo dado un conjunto P de vectores y un número B máximo: 1. Testear todos los vectores p una vez (es decir, ejecutar un EA) 2. Determinar cual es mejor p con utilidad media mejor (pmejor) 3. Determinar P' los vectores cuya utilidad no es significativamente peor que pmejor (¿cómo?) 4. P = P' 5. if P >1 y numTest<B ir a 1
  • 21. Midiendo las diferencias significativas de la utilidad En el paso 3. es donde difieren los métodos de racing. La diferencia significativa se mide con: ANOVA Kruskal-Wallis Hoeffding's bound Unpaired Student T-Test Multi-etapa (se eligen los más prometedores para realizar tests más exhaustivos) y se pueden usar para parámetros cuantitativos y cualitativos
  • 22. Utilizando un número pequeño de vectores de parámetros y tests (A y B) Yuan et al. combinan racing con meta-EAs en dos métodos: A. Los parámetros cuantitativos se evolucionan con una meta- (1+ λ )-ES, y en cada creación λ vectores se crean utilizando una distribución Gausiana centrada en el mejor. Luego se usa racing para ver cual tiene la mayor utilidad (así no hay que evaluarlos todos B veces, ya que algunos de ellos se eliminan después de unos pocos tests) B. Utilizan mutación, selección y recombinación pero se evalúan los vectores cuantitativos con todas las combinaciones de los parámetros cualitativos. También usa racing.
  • 23. Utilizando un número pequeño de vectores de parámetros y tests (A y B) SPOT: procedimiento iterativo. Vectores de parámetros distribuidos (ej LHD, Latin Hypercube Design). Se testean B0 veces para estimar la utilidad y se crea un modelo de predicción. Se crean l nuevos vectores y su utilidad se estima usando el modelo sin ejecuciones adicionales del EA. Usan estimaciones de predicción y error. Los puntos más prometedores se evalúan B veces (valor bajo que puede ir subiendo si no se encuentra una buena utilidad). En el paso inicial hay pocos vectores (1 a 4). Puede combinarse con racing. REVAC++: REVAC + sharpening + racing (como add-ons) Cita a un artículo que se muestran las ventajas de racing y sharpening.
  • 24. Utilizando un número pequeño de evaluaciones (C) En verano de 2009 no hay ninguno en la literatura (?) Sólo un tipo deja fijos parámetros salvo tamaño de población y los ejecuta en paralelo y cancela los EAs que van peor (la utilidad es el fitness en este caso). Idea: terminar la ejecución si no se va a encontrar un umbral de utilidad. Parecido a racing, pero reduciendo el número de evaluaciones (C) en lugar de tests (B).
  • 25. Casos exitosos en el afinamiento de EAs Comparativas de algoritmos afinados vs a mano o con fuerza bruta. Estudios indican que no todos los EAs requieren el mismo coste para afinarlos. SA y ES afinados con DACE y regresión simbólica Otros afinadores para otros algoritmos
  • 26. Consideraciones para afinar EAs Problemas repetitivos Vs. una-vez (en unos prima el coste computacional y en otros la calidad de la solución). Los primeros se usan más en el mundo académico. Beneficios del afinamiento para profesionales que se enfrentan a problemas reales y académicos que quieran avanzar el mundo de los EAs en general. Para ambos: "Afina tus algoritmos con un algoritmo afinador (e informa de los efectos de la afinación)". El problema de las "constantes mágicas" escondidas en el código. Por ejemplo en CMA-ES descendencia=4+3*log(n) y poblacion = desc/2. → también deberían tunearse
  • 27. Consideraciones finales “Mi nuevo algoritmo es mejor que el antiguo en algunos casos” ☹ Gastando X esfuerzo en tunear mi nuevo algoritmo, tenemos una instancia que es mejor que el viejo sin tunear.☺ La mejor instancia del nuevo algoritmo es mejor que la mejor instancia del viejo algoritmo, donde las mejores de estas instancias se han obtenido con X esfuerzo en tunearlas.☺☺ Así nos enfocamos mejor en los operadores que en las instancias
  • 28. Conclusiones Hay que usar afinadores y gastar un día extra en afinar tus algoritmos. Hay software disponible! P. Ej. MOBAT (Java y paralelo) Meta-Heuristic Optimizer Benchmark and Analysis Tool Rendimiento Rendimiento EA1 EA2 EA1 EA2 Parámetros ad-hoc sin afinamiento Parámetros óptimos con afinamiento
  • 29. Bibliografía Eiben A. E. and Smit S. K., Parameter Tuning for Configuring and Analyzing Evolutionary Algorithms , Swarm andEvolutionary Computation , 2011 Eiben A. E. and Smit S. K., Evolutionary Algorithm Parameters and Methods to Tune them , Y. Hamadi E. Monfroy and Saubion F. (eds.) , Autonomous Search , Springer , 2011 Smit S. K. and Eiben A. E., Beating the 'world champion' evolutionary algorithm via REVAC tuning , IEEE Congress on Evolutionary Computation , IEEE Press , 2010 , pp. 1-8 Eiben A. E. and Smith J.E., Parameter Control in Evolutionary Algorithms, Introduction to Evolutionary Comuting, Springer, 2005, pp. 129-151. Kang P. et al. Dynamic Tuning of Algorithmic Parameters of Parallel Scientific codes, International Conference on Computational Science, ICCS 2010, 2010, pp. 145-153.
  • 30. MUCHAS GRACIAS! PROYECTO (POR SU ATENCIÓN) FECHA EMAIL 15/04/2011 PGARCIA@ATC.UGR.ES

Notas del editor