View
3.095
Download
1
Embed Size (px)
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
Citation preview
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
Temas
1. Problema y Proyecto
2. Marco Teórico del Proyecto
3. Aplicativo y Solución de Problema
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
Marco Teórico
del Proyecto
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
Aplicativo
Y
Solución de Problema
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