regresion simbolica y programaciÓn genetica fundaciÓn universitaria konrad lorenz -fukl

Post on 26-Jun-2015

3.097 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

ESTA PRESENTACIÓN SE PREPARÓ COMO PARTE DE UNA JORNADA DE SOCIALIZACIÓN DE LOS RESULTADOS DEL PROCESOS INVESTIGATIVO REALIZADO EN EL PROGRAMA DE INGENIERÍA DE SISTEMAS DE LA FUNDACIÓN UNIVERSITARIA KONRAD LORENZ

TRANSCRIPT

Desarrollo de una Herramienta Computacional de Programación Genética Aplicada a la Regresión

Simbólica

Pervys Rengifo

Leonardo Jiménez

Noviembre 16 de 2006

F. U. K. L.

FUNDACIÓN UNIVERSITARIA KONRAD LORENZFACULTAD DE MATEMÁTICAS E INGENIERÍAS

PROGRAMA DE INGENIERÍA DE SISTEMAS

GRUPO DE INVESTIGACIÓN EN INTELIGENCIA COMPUTACIONAL-PROMENTE

LÍNEA DE INVESTIGACIÓN: SISTEMAS COMPUTACIONALES BIOINSPIRADOS

La Regresión

¿Cómo evidenciar las relaciones que existen entre una variable dependiente (Y) y una o más variables independientes (X1, ... , Xn)?

¿Cómo evidenciar las relaciones que existen entre una variable dependiente (Y) y una o más variables independientes (X1, ... , Xn)?

Para:PredecirPronosticarConocerControlar

Para:PredecirPronosticarConocerControlar

X Y

-2.83308301 -0.26250423-2.81140506 -0.25047367-2.79015438 -0.25249567

... ...-1.20842096 -0.33939681-1.15769186 -0.43758607-1.12866135 -0.41101900-1.12594982 -0.41997381-0.99460309 -0.42000773-0.83890773 -0.48780787-0.83662124 -0.40463053-0.81536601 -0.43173314-0.80970794 -0.42229634-0.78491938 -0.43632888-0.78422673 -0.42490195-0.77738345 -0.45909481-0.76852811 -0.45325278

... ...

Base de DatosBase de Datos

Solución Clásica: Regresión Numérica

Debido a simplicidad analítica, la forma funcional que más se utiliza

en la práctica son funciones lineales o linealizables

Ye=b0+b1F1(X)+...+bnFn(X)Ye=b0+b1F1(X)+...+bnFn(X)

Se postula una relación funcional entre las variables

Lineal

Polinómica

Logarítmica

Exponencial

Potencial

Logística...

La regresión clásica se limita a calcular los coeficientes a la relación

funcional propuesta (optimización numérica)

Ej:

Inconvenientes del Enfoque Clásico

Formas muy limitadas de la relación funcional.

La estructura de la relación funcional es fijada a priori.

No facilita el descubrimiento de la verdadera estructura

funcional de la relación entre las variables.

Los conocimientos y habilidades que exige su aplicación

No aprovechan todo el conocimiento disponible en los datos históricos

registrados.

Suposiciones que se hacen en cuanto a distribuciones de probabilidad y

en cuanto a linealidad y estacionariedad de los procesos

Objetivo del Proyecto

Generar un Aplicativo que permita hallar al mismo tiempo

tanto la forma funcional conveniente como los valores de los

coeficientes (Regresión Simbólica) empleando Programación

Genética

Ventajas de este enfoque

Permite obtener expresiones matemáticas que modelen el

comportamiento de un sistema únicamente a partir de un conjunto de tuplas

entrada-salida, sin presumir la estructura de la expresión.

Permite obtener tanto la estructura de la expresión como los coeficientes

numéricos de manera automática.

No requiere conocimiento del problema a solucionar.

Regresión Simbólica con Programación Genética

Programación GenéticaProgramación Genética

PG considera una población conformada por individuos, cada uno de los

cuales representa la estructura de interés (expresión matemática en el

caso de regresión simbólica)

PG utiliza los métodos evolutivos de la naturaleza.

Población de n IndividuosPoblación de n Individuos

Regresión Simbólica con Programación GenéticaProgramación Genética: Población InicialProgramación Genética: Población Inicial

El programa crea aleatoriamente una población inicial conformada por

individuos, sintácticamente correctosLos Individuos de población inicial se crean a partir de funciones

primitivas.

Funciones Primitivas

Funcion PesoTerminal Constante 0.1Terminal Variable 0.4

+ ...* .../ ...

exp ...ln ...

Sen ...Cos ...Tan ...

ArcSen ...ArcCos ...

... ...

*

cos +

x 7 x

Equivale a:Cos(x) * (7 + x)

Regresión Simbólica con Programación Genética

Programación Genética: Evaluación del IndividuoProgramación Genética: Evaluación del Individuo

Evaluación del Individuo:Cos(x) * (7 + x)

......

-2.96374574-0.27941987

-2.96462983-0.27937055

-2.97802995-0.27862448

-2.99004805-0.27795786

Y(Valor Deseado)X

......

-2.96374574-0.27941987

-2.96462983-0.27937055

-2.97802995-0.27862448

-2.99004805-0.27795786

Y(Valor Deseado)X

*

cos +

x 7 x

...

6.4599264

6.4600652

6.4621634

6.4640353

Y(Valor Estimado)

...

6.4599264

6.4600652

6.4621634

6.4640353

Y(Valor Estimado)

Función Aptitud

Regresión Simbólica con Programación Genética

Programación Genética: Operadores EvolutivosProgramación Genética: Operadores Evolutivos

A los individuos, se les aplica probabilísticamente un

operador evolutivo

Los operadores evolutivos toman individuos y crean nuevas

variedades de individuos, hasta renovar toda la población:

nueva generación.

Cruce

Mutación

Clonación

Regresión Simbólica con Programación Genética

Programación Genética: EvoluciónProgramación Genética: Evolución

Población Inicial (Generación Aleatoria):

Función de Aptitud

(Evaluación)

OperadoresEvolutivos

Nueva Generación:

¿Alguno Cumple Condición

Aptitud=UMBRAL?

Ciclo Evolutivo

*

cos +

x 7 x

+

exp seno

x /

x1

+

exp tan

*

3x

+

tanx

3

+

exp seno

x /

x1

*

invm

senh

*

3x

+

lnx

3

invm

+

lnx

3

Regresión Simbólica con Programación Genética

Programación Genética: Validación de la Mejor ExpresiónProgramación Genética: Validación de la Mejor Expresión

Se realiza VALIDACIÓN con un conjunto de datos de validación

Se realiza VALIDACIÓN con un conjunto de datos de validación

+

exp seno

x /

x1

Medidas estadísticascon datos de

validación

R2

Medidas del Error...

Medidas estadísticascon datos de

validación

R2

Medidas del Error...

Al final del proceso se obtiene una individuo (expresión matemática) que ajusta los datos, dentro de la tolerancia de error especificada.

¿MEMORIZACION?

¿APRENDIZAJE?

¿MEMORIZACION?

¿APRENDIZAJE?

Resultados Obtenidos

Informe de Investigación

Software

Marco Teórico

Algoritmos

Metodología de Desarrollo del Software

Solución de Problemas

Análisis de Soluciones Obtenidas

Conclusiones

Versión Inicial. Regresión Simple y Multivariada

Punto de Partida para Nuevas Investigaciones y Desarrollos

Uso en Ambiente Académico como Herramienta de Aprendizaje

Regresión Simbólica con Programación Genética

SOFTWARE AMIGABLE PARA RESOLVER PROBLEMAS DE REGRESIÓN SIMPLE O MULTIVARIADA

SELECCIÓN DE ARCHIVO DE PARÁMETROSSELECCIÓN DE ARCHIVO DE DATOSSELECCIÓN DE ARCHIVO DE SALIDA

VISUALIZACIÓN DEL COMPORTAMIENTO DE LA EVOLUCIÓN (OPCIÓN PARA APRENDIZAJE)

INFORMES:MEJOR EXPRESIÓN MATEMÁTICAMEDIDA DE LA APTITUD Y R2

HISTÓRICO DEL PROCESO EVOLUTIVO

Aplicación de Regresión Simbólica

Conjunto de DatosExperimentales(150 entradas)

Problema a Solucionar

Datos Experimentales conruido de amplitud máxima 0.1

(error de medición)

Gráfico de la Función Buscada

-5

0

5

10

15

20

25

-3.0 -2.0 -1.0 0.0 1.0 2.0 3.0

X

Y

Gráfico de la Función Buscada - Ampliación en Rango [-0.5,0.5]

-1

1

2

3

-0.5 -0.4 -0.3 -0.2 -0.1 0.0 0.1 0.2 0.3 0.4 0.5

X

Y

X Y

-2.83308301 -0.26250423-2.81140506 -0.25047367-2.79015438 -0.25249567

... ...-1.20842096 -0.33939681-1.15769186 -0.43758607-1.12866135 -0.41101900-1.12594982 -0.41997381-0.99460309 -0.42000773-0.83890773 -0.48780787-0.83662124 -0.40463053-0.81536601 -0.43173314-0.80970794 -0.42229634-0.78491938 -0.43632888-0.78422673 -0.42490195-0.77738345 -0.45909481-0.76852811 -0.45325278

... ...

Aplicación de Regresión Simbólica

Conjunto de DatosExperimentales(150 entradas)

Solución clásica utilizando herramientas tradicionales

X Y

-2.83308301 -0.26250423-2.81140506 -0.25047367-2.79015438 -0.25249567

... ...-1.20842096 -0.33939681-1.15769186 -0.43758607-1.12866135 -0.41101900-1.12594982 -0.41997381-0.99460309 -0.42000773-0.83890773 -0.48780787-0.83662124 -0.40463053-0.81536601 -0.43173314-0.80970794 -0.42229634-0.78491938 -0.43632888-0.78422673 -0.42490195-0.77738345 -0.45909481-0.76852811 -0.45325278

... ...

Expresión: 3.000x+2.7247Coeficiente de determinación R^2 0.7136

Expresión: 1.0851*e1.0159x

R^2 0.8274

Expresión:

y = -0.0012x6 + 0.0391x5

+ 0.0687x4 - 0.2037x3 +

0.4465x2 + 2.2627x + 1.0345

R^2 0.9944

Regresión Lineal

Regresión Exponencial

Regresión Polinómica

Salida Deseada vs Obtenida (Regresión Polinómica)

R2 = 0.9944

-2

3

8

13

18

23

-2 3 8 13 18 23

Vr Deseado

Vr

Ob

ten

ido

Aplicación de Regresión Simbólica

Conjunto de DatosExperimentales(150 entradas)

Solución clásica utilizando herramientas tradicionales

X Y

-2.83308301 -0.26250423-2.81140506 -0.25047367-2.79015438 -0.25249567

... ...-1.20842096 -0.33939681-1.15769186 -0.43758607-1.12866135 -0.41101900-1.12594982 -0.41997381-0.99460309 -0.42000773-0.83890773 -0.48780787-0.83662124 -0.40463053-0.81536601 -0.43173314-0.80970794 -0.42229634-0.78491938 -0.43632888-0.78422673 -0.42490195-0.77738345 -0.45909481-0.76852811 -0.45325278

... ...

Gráfico de Residuales (Regresión Polinómica)

-1.5

-1.0

-0.5

0.0

0.5

1.0

1.5

-2 3 8 13 18 23

Pronosticado

Res

idua

l

Expresión: 3.000x+2.7247Coeficiente de determinación R^2 0.7136

Expresión: 1.0851*e1.0159x

R^2 0.8274

Expresión:

y = -0.0012x6 + 0.0391x5

+ 0.0687x4 - 0.2037x3 +

0.4465x2 + 2.2627x + 1.0345

R^2 0.9944

Regresión Lineal

Regresión Exponencial

Regresión Polinómica

Aplicación de Regresión Simbólica

Conjunto de DatosExperimentales(150 entradas)

Solución utilizando Regresión Simbólica con PG

X Y

-2.83308301 -0.26250423-2.81140506 -0.25047367-2.79015438 -0.25249567

... ...-1.20842096 -0.33939681-1.15769186 -0.43758607-1.12866135 -0.41101900-1.12594982 -0.41997381-0.99460309 -0.42000773-0.83890773 -0.48780787-0.83662124 -0.40463053-0.81536601 -0.43173314-0.80970794 -0.42229634-0.78491938 -0.43632888-0.78422673 -0.42490195-0.77738345 -0.45909481-0.76852811 -0.45325278

... ...

Salida Deseada vs Obtenida (Regresión Simbólica)

R2 = 1

-2

3

8

13

18

23

-2 3 8 13 18 23

Vr Deseado

Vr

Ob

ten

ido

Gráfico de Residuales (Regresión Simbólica)

0.00

0.02

0.04

0.06

0.08

0.10

0.12

-2 3 8 13 18 23

Pronosticado

Re

sid

ua

l

Aplicación de Regresión Simbólica

Conjunto de DatosExperimentales(150 entradas)

Solución utilizando Regresión Simbólica con PG

X Y

-2.83308301 -0.26250423-2.81140506 -0.25047367-2.79015438 -0.25249567

... ...-1.20842096 -0.33939681-1.15769186 -0.43758607-1.12866135 -0.41101900-1.12594982 -0.41997381-0.99460309 -0.42000773-0.83890773 -0.48780787-0.83662124 -0.40463053-0.81536601 -0.43173314-0.80970794 -0.42229634-0.78491938 -0.43632888-0.78422673 -0.42490195-0.77738345 -0.45909481-0.76852811 -0.45325278

... ...

Salida Deseada vs Obtenida (Regresión Simbólica)

R2 = 1

-2

3

8

13

18

23

-2 3 8 13 18 23

Vr Deseado

Vr

Ob

ten

ido

Gráfico de Residuales (Regresión Simbólica)

0.00

0.02

0.04

0.06

0.08

0.10

0.12

-2 3 8 13 18 23

Pronosticado

Re

sid

ua

l

Nivel de Ruido

Aplicación de Regresión Simbólica

Solución utilizando Regresión Simbólica con PGMejor Solución Encontrada

--------------------------------------------------EJECUCION: 5 de 5 - GENERACION: 299 de 300--------------------------------------------------Mejor Individuo: 591(seno((X0)^(-1))+exp(X0))

Numero de Aciertos: 118Aptitud Estándar: 0.4319299463860158Aptitud Ajustada: 0.6983581861136821Promedio Aptitud Ajustada de la Poblacion: 0.0248168460618023R Cuadrado: 0.9999747166486699Complejidad: 6Tiempo acumulado: 30 segundos--------------------------------------------------TERMINADA LA EVOLUCION--------------------------------------------------Semilla Inicial: 1173675008NO SE HAN UTILIZADO CONSTANTES

--------------------------------------------------INFORMACION SOBRE EL MEJOR INDIVIDUODE LA EJECUCION ACTUAL--------------------------------------------------NO SE HAN UTILIZADO CONSTANTESY( -2.8330829999999998 ) = (seno((X0)^(-1))+exp(X0)) = -0.2868572477306238Y( -2.7901543000000002 ) = (seno((X0)^(-1))+exp(X0)) = -0.2893675303350527Y( -2.7874352999999998 ) = (seno((X0)^(-1))+exp(X0)) = -0.2895276925346337...

--------------------------------------------------EJECUCION: 5 de 5 - GENERACION: 299 de 300--------------------------------------------------Mejor Individuo: 591(seno((X0)^(-1))+exp(X0))

Numero de Aciertos: 118Aptitud Estándar: 0.4319299463860158Aptitud Ajustada: 0.6983581861136821Promedio Aptitud Ajustada de la Poblacion: 0.0248168460618023R Cuadrado: 0.9999747166486699Complejidad: 6Tiempo acumulado: 30 segundos--------------------------------------------------TERMINADA LA EVOLUCION--------------------------------------------------Semilla Inicial: 1173675008NO SE HAN UTILIZADO CONSTANTES

--------------------------------------------------INFORMACION SOBRE EL MEJOR INDIVIDUODE LA EJECUCION ACTUAL--------------------------------------------------NO SE HAN UTILIZADO CONSTANTESY( -2.8330829999999998 ) = (seno((X0)^(-1))+exp(X0)) = -0.2868572477306238Y( -2.7901543000000002 ) = (seno((X0)^(-1))+exp(X0)) = -0.2893675303350527Y( -2.7874352999999998 ) = (seno((X0)^(-1))+exp(X0)) = -0.2895276925346337...

Aplicación de Regresión Simbólica

Solución utilizando Regresión Simbólica con PG

Mejor Solución Encontrada:

Otras Soluciones:

ex + seno (1 / x)ex + seno (1 / x)

R2 = 0.999974R2 = 0.999974

Apt. Ajustada: 0.698Apt. Ajustada: 0.698

Expresión R2

(atan(seno(X))+exp(X)) 0.994570119

(seno(seno(X))+exp(X)) 0.994157937

(seno(((seno(exp(seno(seno(seno(seno(exp(seno(((seno(seno(seno(seno(exp(seno(seno(seno(X)))))))))/(seno(seno(seno(seno(seno(seno(seno(seno(seno(((((X)/(X)))/(exp(seno(seno(((seno(exp(X)))/(seno(X))))))))))))))))))))))))))))/(X)))+exp(X))

0.99997193

Resultados Obtenidos

0.9992Compleja25010020Problema de la Tensión Arterial12

0.9966Compleja25020020Problema Movilidad de Electrones11

0.8624Compleja25020020Problema del IPC10

0.9876Compleja25020020Problema de Moody9

*****Efecto del Ruido8

0.9942Y = e -1 - e-expX50015020Integral: Area bajo distribución normal7

112/5*X/(8/5*X/(-X-13/10)+8/5)50015020y = v0*t+ (a*t2)/26

1(x / cos(x)2 - x ) / x5001505tan2x5

0.9857log10(e(X1+X0)-1)50025020Y = (cosX0-cosX1) / (X0-X1)4

0.9978Compleja40020020Sucesión (1+1/X)X3

1.6 E-7Compleja25015020Valor Pi2

1Compleja2501502Y = eX + seno( 1/X )1

R2SoluciónPoblaciónGeneracionesCorridasEvaluación

0.9992Compleja25010020Problema de la Tensión Arterial12

0.9966Compleja25020020Problema Movilidad de Electrones11

0.8624Compleja25020020Problema del IPC10

0.9876Compleja25020020Problema de Moody9

*****Efecto del Ruido8

0.9942Y = e -1 - e-expX50015020Integral: Area bajo distribución normal7

112/5*X/(8/5*X/(-X-13/10)+8/5)50015020y = v0*t+ (a*t2)/26

1(x / cos(x)2 - x ) / x5001505tan2x5

0.9857log10(e(X1+X0)-1)50025020Y = (cosX0-cosX1) / (X0-X1)4

0.9978Compleja40020020Sucesión (1+1/X)X3

1.6 E-7Compleja25015020Valor Pi2

1Compleja2501502Y = eX + seno( 1/X )1

R2SoluciónPoblaciónGeneracionesCorridasEvaluación

CONCLUSIONES

La regresión simbólica permite una aproximación hacia el descubrimiento científicos asistido por computador

La idea detrás de la PG, puede aplicarse a cualquier población de individuos, en donde estos individuos pueden ser poemas, canciones, melodías, estructuras o redes hidráulicas de un edificio, redes neuronales ,etc. Lo que se necesita es una representación conveniente, la definición adecuada de los operadores(cruce o mutación) y el establecimiento de una medida de desempeño.

La PG, ha trascendido lo puramente académico y se ha convertido en una técnica para la solución de problemas reales

Una variación natural de La PG, es su hibridación con otras técnicas de inteligencia artificial , ya que la PG utiliza algoritmos genéticos para la búsqueda, pero podrían ser utilizados otros algoritmos como simulated annealing, algoritmos inmunológicos, tabú, GRASP, PSO, ACO, algoritmos meméticos o algoritmos culturales,etc

top related