Introducci¢´on a la Computaci¢´on ccoello/compevol/clase12-2018.pdf¢  Clase No. 12 2018. Introducci¢´on

  • View
    0

  • Download
    0

Embed Size (px)

Text of Introducci¢´on a la Computaci¢´on...

  • Introducción a la Computación Evolutiva Dr. Carlos A. Coello Coello

    Introducción a la Computación Evolutiva

    Dr. Carlos A. Coello Coello

    Departamento de Computación

    CINVESTAV-IPN

    Av. IPN No. 2508

    Col. San Pedro Zacatenco

    México, D.F. 07300

    email: ccoello@cs.cinvestav.mx

    http: //delta.cs.cinvestav.mx/~ccoello

    Clase No. 12 2018

  • Introducción a la Computación Evolutiva Dr. Carlos A. Coello Coello

    Fundamentos Teóricos de los Algoritmos

    Genéticos

    Algunos autores (por ejemplo De Jong) han argumentado elocuentemente que, contrario a lo que se cree, los AGs no son optimizadores, sino que más bien son satisfactores de metas (o decisiones) secuenciales que pueden modificarse para actuar como optimizadores de funciones.

    Clase No. 12 2018

  • Introducción a la Computación Evolutiva Dr. Carlos A. Coello Coello

    Fundamentos Teóricos de los Algoritmos

    Genéticos

    Si bien en la práctica han tenido un gran éxito como optimizadores, la realidad es que los AGs suelen tener dificultades para encontrar máximos globales en ciertas clases de problemas (como por ejemplo el del viajero) sumamente susceptibles a la representación o aquellos en los que la evaluación de la función de aptitud resulta sumamente costoso.

    Clase No. 12 2018

  • Introducción a la Computación Evolutiva Dr. Carlos A. Coello Coello

    Fundamentos Teóricos de los Algoritmos

    Genéticos

    La teoŕıa de los esquemas se ha usado por algunos en la comunidad de los AGs para proponer una respuesta a la pregunta: “¿qué hace que un problema sea dif́ıcil para un AG?” La panorámica actual es que la competencia entre los esquemas procede aproximadamente de particiones de esquemas de bajo orden a particiones de esquemas de orden alto.

    Clase No. 12 2018

  • Introducción a la Computación Evolutiva Dr. Carlos A. Coello Coello

    ¿Qué es lo que hace dif́ıcil

    un problema para un AG?

    La panorámica actual es que la competencia entre los esquemas procede aproximadamente de particiones de esquemas de bajo orden a particiones de esquemas de orden alto. Bethke [1981] infirió que seŕıa dif́ıcil para un AG encontrar el óptimo de una función de aptitud si las particiones de bajo orden conteńıan información errónea acerca de las particiones de orden más alto.

    Clase No. 12 2018

  • Introducción a la Computación Evolutiva Dr. Carlos A. Coello Coello

    ¿Qué es lo que hace dif́ıcil

    un problema para un AG?

    Consideremos un ejemplo, un tanto extremo, de lo dicho en el punto anterior. Llamemos al esquema H “ganador” si su aptitud estática promedio es la más alta en su partición. Supongamos que cualquier esquema cuyos bits definidos sean todos unos es un ganador, excepto por el esquema de longitud L 1111 . . . 1, y hagamos que 0000 . . . 0 sea un ganador.

    Clase No. 12 2018

  • Introducción a la Computación Evolutiva Dr. Carlos A. Coello Coello

    ¿Qué es lo que hace dif́ıcil

    un problema para un AG?

    En principio, será dif́ıcil para un AG encontrar 0000..,0, porque toda partición de bajo orden da información equivocada sobre dónde es más probable encontrar el óptimo. A este tipo de función de aptitud se le llama “con decepción total”.

    Clase No. 12 2018

  • Introducción a la Computación Evolutiva Dr. Carlos A. Coello Coello

    ¿Qué es lo que hace dif́ıcil

    un problema para un AG?

    Afortunadamente, nadie ha podido encontrar un problema del mundo real que exhiba decepción total. Sólo se han encontrado problemas reales con decepción parcial.

    Clase No. 12 2018

  • Introducción a la Computación Evolutiva Dr. Carlos A. Coello Coello

    ¿Qué es lo que hace dif́ıcil

    un problema para un AG?

    También es posible definir funciones de aptitud con menores cantidades de decepción (es decir, algunas particiones dan información correcta acerca de la localización del óptimo). Bethke [1981] usó la “Transformada de Walsh” (análoga a la transformada de Fourier) para diseñar funciones de aptitud con varios grados de decepción. La transformada de Walsh constituyen un medio fácilmente manipulable de análisis de paisajes de búsqueda binarios, con el valor agregado de que hay una correspondencia natural entre las particiones de Walsh y los esquemas.

    Clase No. 12 2018

  • Introducción a la Computación Evolutiva Dr. Carlos A. Coello Coello

    ¿Qué es lo que hace dif́ıcil

    un problema para un AG?

    Hoy en d́ıa, la investigación en torno a la decepción ha disminuido considerablemente, aunque existen todav́ıa varios investigadores interesados en esta área.

    Clase No. 12 2018

  • Introducción a la Computación Evolutiva Dr. Carlos A. Coello Coello

    ¿Qué es lo que hace dif́ıcil

    un problema para un AG?

    Varios investigadores han cuestionado la relevancia del análisis de los esquemas en la comprensión del funcionamiento verdadero de los AGs [Grefenstette, 1993; Mason, 1993; Peck, 1995].

    Clase No. 12 2018

  • Introducción a la Computación Evolutiva Dr. Carlos A. Coello Coello

    ¿Qué es lo que hace dif́ıcil

    un problema para un AG?

    Por ejemplo, Grefenstette [1993] afirma que mucho del trabajo efectuado en teoŕıa de los AGs ha asumido un versión más fuerte de lo que él llama la “Hipótesis Estática de los Bloques Constructores” (HEBC):

    Dada cualquier partición de esquemas de bajo orden y reducida longitud de definición, se espera que un AG converja al hiperplano (en esa partición) con la mejor aptitud promedio estática (el ‘ganador esperado’).

    Clase No. 12 2018

  • Introducción a la Computación Evolutiva Dr. Carlos A. Coello Coello

    ¿Qué es lo que hace dif́ıcil

    un problema para un AG?

    Esta formulación es más fuerte que la original, puesto que dice que el AG convergerá a los “verdaderos” ganadores de cada competencia entre particiones cortas y de bajo orden en vez de que converja a esquemas con la mejor aptitud observada.

    Clase No. 12 2018

  • Introducción a la Computación Evolutiva Dr. Carlos A. Coello Coello

    ¿Qué es lo que hace dif́ıcil

    un problema para un AG?

    La HEBC no es lo que propuso Holland [1975], y nunca se ha demostrado o validado emṕıricamente, pero impĺıcitamente involucra la premisa de que las funciones de aptitud con decepción serán dif́ıciles para un AG.

    Clase No. 12 2018

  • Introducción a la Computación Evolutiva Dr. Carlos A. Coello Coello

    ¿Qué es lo que hace dif́ıcil

    un problema para un AG?

    Grefenstette proporciona 2 razones posibles por las que la HEBC puede fallar:

    1. Convergencia Colateral: Una vez que la población comienza a converger hacia algún punto, las muestras de algunos esquemas dejarán de ser uniformes.

    Clase No. 12 2018

  • Introducción a la Computación Evolutiva Dr. Carlos A. Coello Coello

    ¿Qué es lo que hace dif́ıcil

    un problema para un AG?

    Por ejemplo, supongamos que las instancias de 111 ∗ . . . ∗ son muy aptas y que la población ha convergido más o menos a esos bits (o sea, casi todos los miembros de la población son una instancia de ese esquema). Entonces casi todas las muestras de, por ejemplo, ∗ ∗ ∗000 ∗ ...∗, serán realmente muestras de 111000 ∗ ...∗. Esto puede impedir que el AG haga una estimación precisa de û(∗ ∗ ∗000 ∗ ...∗). Aqúı la û(H) denota la aptitud promedio estática de un esquema H (el promedio sobre todas las instancias del esquema en el espacio de búsqueda).

    Clase No. 12 2018

  • Introducción a la Computación Evolutiva Dr. Carlos A. Coello Coello

    ¿Qué es lo que hace dif́ıcil

    un problema para un AG?

    2. Elevada Varianza de la Aptitud: Si la aptitud promedio estática de un esquema tiene una varianza alta, el AG puede no ser capaz de efectuar una estimación precisa de esta aptitud promedio estática.

    Clase No. 12 2018

  • Introducción a la Computación Evolutiva Dr. Carlos A. Coello Coello

    ¿Qué es lo que hace dif́ıcil

    un problema para un AG?

    Consideremos, por ejemplo, la siguiente función de aptitud:

    f(x) =

    2 si x ∈ 111 ∗ ...∗ 1 si x ∈ 0 ∗ ...∗ 0 de lo contrario

    La varianza de 1 ∗ ...∗ es alta, aśı que el AG converge a las subregiones de aptitud elevada de este esquema. Esto sesga a todas las muestras subsecuentes de este esquema, impidiendo que se puede obtener un estimado preciso de su aptitud estática.

    Clase No. 12 2018

  • Introducción a la Computación Evolutiva Dr. Carlos A. Coello Coello

    ¿Qué es lo que hace dif́ıcil

    un problema para un AG?

    Esto tiene relación directa con la importancia de la decepción en el comportamiento de los AGs, porque las funciones de aptitud con decepción se definen completamente en términos de las aptitudes estáticas promedio de los esquemas.

    Clase No. 12 2018

  • Introduccio