Está en la página 1de 4

Asignatura: Computación Evolutiva

Máster Universitario en Investigación en Inteligencia Artificial


Universidad Nacional de Educación a Distancia

ACTIVIDAD 2
1. PRERREQUISITOS
La presente actividad deberá ser realizada tras el estudio de los temas 3 y 5 del texto base
[Carmona&Galán-2020]. Dichos temas son necesarios para comprender y dominar todas
las características relacionadas con el paradigma basado en estrategias evolutivas (tema
3) y con el basado en evolución diferencial (tema 5). El tema 9 también será necesario
para realizar la actividad, pero se supone que ya fue estudiado durante la realización de
la actividad 1.
Antes de proceder al estudio de los temas indicados, se recomienda la consulta del
documento PDF “Lista de erratas”, asociado al texto base y disponible en el curso virtual.
Igualmente, se recomienda la lectura previa de la sección del curso virtual dedicada a
preguntas más frecuentes, en particular aquellas que puedan estar relacionadas con los
algoritmos que se proponen usar en esta actividad.

2. DEFINICIÓN DEL PROBLEMA


Encontrar el mínimo de las siguientes funciones mediante una estrategia evolutiva.

2.1 Función suma de Powell


Esta función es multi-dimensional, continua, convexa, no-diferenciables y unimodal.
Se define de la siguiente forma:
𝑛𝑛

𝑓𝑓(𝑥𝑥̅ ) = �|𝑥𝑥𝑖𝑖 |𝑖𝑖+1


𝑖𝑖=1

El dominio de definición se restringe al hipercubo −1 ≤ 𝑥𝑥𝑖𝑖 ≤ 1, 𝑖𝑖 = 1, … , 𝑛𝑛. El mínimo


global corresponde al valor 𝑓𝑓(𝑥𝑥̅ ) = 0 y se alcanza en 𝑥𝑥𝑖𝑖 = 0, 𝑖𝑖 = 1, … , 𝑛𝑛.

2.2 Función Nº 4 de Xin-She Yang


Se trata de una función altamente multimodal, con un gran número de mínimos locales
distribuidos regularmente por todo el espacio de búsqueda, es también no-convexa y
no-diferenciable. Se define de la siguiente forma:
𝑛𝑛 𝑛𝑛 2 𝑛𝑛 2 ��|𝑥𝑥 |�
𝑓𝑓(𝑥𝑥̅ ) = �� 𝑠𝑠𝑠𝑠𝑠𝑠2 (𝑥𝑥𝑖𝑖 ) − 𝑒𝑒 − ∑𝑖𝑖=1 𝑥𝑥𝑖𝑖 � 𝑒𝑒 − ∑𝑖𝑖=1 𝑠𝑠𝑠𝑠𝑠𝑠 𝑖𝑖
𝑖𝑖=1

El dominio de definición se restringe al hipercubo −10≤ 𝑥𝑥𝑖𝑖 ≤ 10, 𝑖𝑖 = 1, … , 𝑛𝑛. El


mínimo global corresponde al valor 𝑓𝑓(𝑥𝑥̅ ) = −1 y se alcanza en 𝑥𝑥𝑖𝑖 = 0, 𝑖𝑖 = 1, … , 𝑛𝑛.
3. ACTIVIDADES A REALIZAR
A continuación, se describen las actividades a realizar:

Representación gráfica
1. Representar gráficamente cada una de las funciones para el caso n=2. Aunque, como
se verá más adelante, cada problema de optimización se planteará para valores de n>2,
esta visualización gráfica permitirá al alumno hacerse una idea de la complejidad del
problema a resolver.

Estrategias Evolutivas
2. Implementar una estrategia evolutiva (EE). Para ello, el alumno podrá realizar la
implementación desde cero o reutilizar código de librerías de uso público ya
existentes, pero el código final deberá personalizarlo para realizar lo exigido en esta
actividad. El alumno deberá entregar el código fuente y el ejecutable usados y, en su
caso, deberá indicar la librería o librerías públicas usadas de referencia.
3. Aplicar la EE implementada para encontrar el mínimo de la función suma de Powell.
Para ello, se buscará una configuración que resuelva el problema y que esté basada en
las siguientes directrices:
- Número de variables de la función a optimizar n=10.
- µ=30 y λ=200 (estos valores pueden modificarse si se considera necesario).
- Máximo número de generaciones NG=1200 (este valor puede modificarse si se
considera necesario).
- Use, compare y justifique el tipo de mutación que considere más apropiado para
este tipo de problema (función monomodal), eligiendo entre mutación no
correlacionada de 1-tamaño de paso o de n-tamaños de paso.
- Use, compare y justifique el tipo de recombinación que considere más apropiado
para este tipo de problema (función monomodal), eligiendo entre discreta global
o intermedia 1 global.
- Use, compare y justifique el tipo de selección de supervivientes que considere más
apropiado para este tipo de problema (función monomodal), eligiendo entre (µ,λ)
y (µ+λ).
- Tenga en cuenta que también deberá elegir el valor del resto de parámetros del
algoritmo (tipo de inicialización, método de selección de supervivientes, εo, τ y τ’,
entre otros).
- Dada la naturaleza estocástica de un algoritmo evolutivo, cada una de las pruebas
realizadas en cada uno de los apartados anteriores debe estar basada en varias
ejecuciones (por ejemplo, mayor o igual a 5).
4. Repetir el paso anterior, pero considerando ahora que la función a optimizar es la
función Nº 4 de Xin-She Yang (función multimodal).

1
Para evitar la aparición de nuevos parámetros (parámetro 𝑟𝑟𝑖𝑖 ), utilice la denominada recombinación
intermedia promediada (véase el texto base [Carmona&Galán-2020]).
Evolución Diferencial
5. Implementar un algoritmo basado en evolución diferencial (ED). Para ello, el alumno
podrá realizar la implementación desde cero o reutilizar código de librerías de uso
público ya existentes, pero el código final deberá personalizarlo para realizar lo
exigido en esta actividad. El alumno deberá entregar el código fuente y el ejecutable
usados y, en su caso, deberá indicar la librería o librerías usadas de referencia.
6. Aplicar ED para encontrar el mínimo de la función suma de Powell. Para ello, se
buscará una configuración que resuelve el problema y que esté basada en las
siguientes directrices:
- Número de variables de la función a optimizar n=10.
- Tamaño de población: 30 (este valor puede modificarse si se considera necesario).
- Máximo número de generaciones NG=1200 (este valor puede modificarse si se
considera necesario).
- Use, compare y justifique el tipo de variante más apropiado para este tipo de
problema (función monomodal), eligiendo entre “DE/rand/1/bin” y
“DE/best/1/bin”.
- Tenga en cuenta que también deberá elegir el valor del resto de parámetros del
algoritmo (tipo de inicialización, F y CR, entre otros).
- Dada la naturaleza estocástica de un algoritmo evolutivo, cada una de las pruebas
realizadas en cada uno de los apartados anteriores debe estar basada en varias
ejecuciones (por ejemplo, mayor o igual a 5).
7. Repetir el paso anterior, pero considerando ahora que la función a optimizar es la
función Nº 4 de Xin-She Yang.

Sobre la presentación de resultados


8. Para facilitar la comparativa de los resultados obtenidos en los pasos 3, 4, 6 y 7, haga
uso de los índices TE 2, VAMM y PEX (ver tema 9 del texto base). En virtud de estos
índices, justifique cuál es el algoritmo más adecuado para resolver cada uno de los
dos problemas planteados (monomodal y multimodal). En la comparativa, indique
también el grado de dificultad a la hora de configurar cada uno de los dos algoritmos.

4. CRITERIOS DE EVALUACIÓN

Sobre la presentación de la memoria (2 puntos sobre 10)


Debe incluir las siguientes secciones: (a) Descripción del problema a resolver, (b) Método
para resolverlo (aquí se debe analizar la idoneidad o no del uso de EEs y ED para resolver
los problemas planteados). Además, se debe incluir la expresión matemática de la función
de evaluación empleada y la descripción de los diferentes operadores de variación y
selección empleados; (c) Los resultados de los distintos experimentos realizados; (d) Un
análisis y comparación de resultados; (e) Una sección de conclusiones; y (f) Una
descripción del código implementado. Se evaluará positivamente la claridad en la
redacción de la memoria, la capacidad de síntesis y la justificación de las decisiones
tomadas.

2
Para calcular la TE, no olvide indicar el criterio utilizado para establecer lo que se considera un éxito.
Sobre la configuración de los algoritmos (4 puntos sobre 10)
Dado que las EEs y ED, como el resto de algoritmos evolutivos, dependen de un conjunto
de parámetros, se valorará, para cada problema, el procedimiento seguido por el alumno
a la hora de elegir la mejor configuración de parámetros del algoritmo.

Sobre el análisis y comparación de resultados, y conclusiones (4 puntos sobre 10)


Se valorará la forma de interpretar y comparar los diferentes resultados obtenidos en los
experimentos realizados para cada problema y las respuestas proporcionadas a las
preguntas planteadas en esta actividad. Es muy importante que dicha valoración se haga
siempre en términos de los índices TE, VAMM y PEX, y cualquier otra gráfica que
considere oportuna como, por ejemplo, las curvas de progreso.

5. REFERENCIAS

[Carmona&Galán-2020] E. J. Carmona y S. Fernández-Galán. Fundamentos de la


Computación Evolutiva”. Marcombo, 2020.

También podría gustarte