ENTRENAMIENTO DE UN MODELO DIFUSO TIPO MAMDANI MEDIANTE EL MÉTODO DE FUERZA BRUTA DETERMINÍSTICA

15
FUNDACIÓN UNIVERSITARIA KONRAD LORENZ FACULTAD DE INGENIERÍA ESPECIALIZACIÓN EN INFORMÁTICA Y CIENCIAS DE LA COMPUTACIÓN SISTEMAS INTELIGENTES Septiembre de 2005 Prof. Nelson Obregón Neira ENTRENAMIENTO DE UN MODELO DIFUSO TIPO MAMDANI MEDIANTE EL MÉTODO DE FUERZA BRUTA DETERMINÍSTICA Pervys Rengifo Rengifo 1 , Leonardo Jiménez 2 y Sara Serrato 3 El presente trabajo tiene como propósito la aplicación de un sistema de inferencia difusa (FIS) para hallar la relación de dependencia entre el porcentaje de crecimiento del PIB, la Tasa Cambiaria, y el Gasto Público Nacional, a partir de la información de estas variables en el periodo comprendido entre 1952 y 2003 inclusive. La información seleccionada para resolver este problema, consistió en las series cronológicas: Porcentaje del crecimiento del PIB (como variable dependiente), el gasto público Nacional, y la tasa real cambiaria (como variables independientes), información tomada desde 1952 hasta el año 2003, todas ellas deflactadas a precios de 1975, como se observa en las siguientes páginas Datos Originales Datos transformados Utilizados como patrones de entrenamiento Año % PIB Gastos totales Tasa de cambio real Log GT Log TC % PIB 1952 0.063 457 44,96 2.66 1.65 0.063 1953 0.061 666 42 2.82 1.62 0.061 1954 0.069 713 38,73 2.85 1.59 0.069 1 Ingeniero, estudiante del Programa de Especialización en Informática y Ciencias de la Computación de la Fundación Universitaria Konrad Lorenz( FUKL) 2 Matemático, estudiante del Programa de Especialización en Informática y Ciencias de la Computación de la Fundación Universitaria Konrad Lorenz (FUKL). 3 Psicóloga, estudiante del Programa de Especialización en Informática y Ciencias de la Computación de la Fundación Universitaria Konrad Lorenz (FUKL) .

description

ESTE TRABAJO FUE PRESENTADO DENTRO DEL CURSO DE SISTEMAS INTELIGENTES, CONDUCIDO POR EL ING. NELSON OBREGÓN. ESTE CURSO HACE PARTE DE LA ESPECIALIZACIÓN EN INFORMÁTICA Y CIENCIAS DE LA COMPUTACIÓN QUE OFRECE LA FUNDACIÓN UNIVERSITARIA KONRAD LORENZ( FUKL, http:\\www.fukl.edu)

Transcript of ENTRENAMIENTO DE UN MODELO DIFUSO TIPO MAMDANI MEDIANTE EL MÉTODO DE FUERZA BRUTA DETERMINÍSTICA

Page 1: ENTRENAMIENTO DE UN MODELO DIFUSO TIPO MAMDANI  MEDIANTE EL MÉTODO DE FUERZA BRUTA DETERMINÍSTICA

FUNDACIÓN UNIVERSITARIA KONRAD LORENZFACULTAD DE INGENIERÍA

ESPECIALIZACIÓN EN INFORMÁTICA Y CIENCIAS DE LA COMPUTACIÓNSISTEMAS INTELIGENTES

Septiembre de 2005Prof. Nelson Obregón Neira

ENTRENAMIENTO DE UN MODELO DIFUSO TIPO MAMDANI MEDIANTE EL MÉTODO DE FUERZA BRUTA DETERMINÍSTICA

Pervys Rengifo Rengifo1, Leonardo Jiménez2 y Sara Serrato3

El presente trabajo tiene como propósito la aplicación de un sistema de inferencia difusa (FIS) para hallar la relación de dependencia entre el porcentaje de crecimiento del PIB, la Tasa Cambiaria, y el Gasto Público Nacional, a partir de la información de estas variables en el periodo comprendido entre 1952 y 2003 inclusive.

La información seleccionada para resolver este problema, consistió en las series cronológicas: Porcentaje del crecimiento del PIB (como variable dependiente), el gasto público Nacional, y la tasa real cambiaria (como variables independientes), información tomada desde 1952 hasta el año 2003, todas ellas deflactadas a precios de 1975, como se observa en las siguientes páginas

Datos Originales Datos transformados

Utilizados como patrones deentrenamiento

Año % PIB Gastos totalesTasa de

cambio realLog GT Log TC

%PIB

1952 0.063 457 44,96 2.66 1.65 0.0631953 0.061 666 42 2.82 1.62 0.0611954 0.069 713 38,73 2.85 1.59 0.0691955 0.039 903 40,56 2.96 1.61 0.0391956 0.041 1,055 46,13 3.02 1.66 0.0411957 0.022 1,186 59,67 3.07 1.78 0.0221958 0.025 1,289 76,33 3.11 1.88 0.0251959 0.072 1,264 71,75 3.10 1.86 0.0721960 0.043 1,582 72,54 3.20 1.86 0.0431961 0.051 1,783 69,09 3.25 1.84 0.0511962 0.054 2,160 70,12 3.33 1.85 0.0541963 0.033 3,284 71,78 3.52 1.86 0.0331964 0.062 3,232 62,36 3.51 1.79 0.0621965 0.036 4,084 67,67 3.61 1.83 0.0361966 0.052 4,362 77,36 3.64 1.89 0.0521967 0.041 4,726 79,24 3.67 1.90 0.041

1 Ingeniero, estudiante del Programa de Especialización en Informática y Ciencias de la Computación de la Fundación Universitaria Konrad Lorenz( FUKL)2 Matemático, estudiante del Programa de Especialización en Informática y Ciencias de la Computación de la Fundación Universitaria Konrad Lorenz (FUKL).3 Psicóloga, estudiante del Programa de Especialización en Informática y Ciencias de la Computación de la Fundación Universitaria Konrad Lorenz (FUKL).

Page 2: ENTRENAMIENTO DE UN MODELO DIFUSO TIPO MAMDANI  MEDIANTE EL MÉTODO DE FUERZA BRUTA DETERMINÍSTICA

1968 0.059 6,100 87,85 3.79 1.94 0.0591969 0.061 7,069 89,08 3.85 1.95 0.0611970 0.062 9,924 93,98 4.00 1.97 0.0621971 0.060 13,473 97,60 4.13 1.99 0.0601972 0.077 16,905 101,21 4.23 2.01 0.0771973 0.067 20,808 99,72 4.32 2.00 0.0671974 0.057 21,994 99,79 4.34 2.00 0.0571975 0.023 27,183 100,00 4.43 2.00 0.0231976 0.047 33,139 98,74 4.52 1.99 0.0471977 0.042 46,863 85,34 4.67 1.93 0.0421978 0.085 48,325 85,47 4.68 1.93 0.0851979 0.054 67,773 84,62 4.83 1.93 0.0541980 0.041 93,784 82,23 4.97 1.92 0.0411981 0.023 141,022 76,00 5.15 1.88 0.0231982 0.009 181,198 71,32 5.26 1.85 0.0091983 0.016 247,977 72,95 5.39 1.86 0.0161984 0.034 312,725 77,41 5.50 1.89 0.0341985 0.031 374,394 102,41 5.57 2.01 0.0311986 0.058 501,676 115,10 5.70 2.06 0.0581987 0.054 627,133 115,92 5.80 2.06 0.0541988 0.041 798,172 114,92 5.90 2.06 0.0411989 0.034 1,038,570 121,80 6.02 2.09 0.0341990 0.043 1,418,503 132,30 6.15 2.12 0.0431991 0.020 1,938,646 115,90 6.29 2.06 0.0201992 0.040 2,719,305 109,80 6.43 2.04 0.0401993 0.054 3,835,823 111,40 6.58 2.05 0.0541994 0.058 6,230,343 103,90 6.79 2.02 0.0581995 0.057 6,690,176 105,50 6.83 2.02 0.0571996 0.022 9,571,244 101,00 6.98 2.00 0.0221997 0.031 11,917,001 93,70 7.08 1.97 0.0311998 0.006 15,487,900 104,30 7.19 2.02 0.0061999 -0.042 21,280,000 109,20 7.33 2.04 -0.0422000 0.029 23,492,007 122,20 7.37 2.09 0.0292001 0.014 28,537,000 115,50 7.46 2.06 0.0142002 0.016 32,111,000 134,10 7.51 2.13 0.016

2003 (pr) 0.037 37,573,000 138,80 7.57 2.14 0.037

Tabla No. 1 PORCENTAJE DE CRECIMIENTO DEL PIB, GASTOS DEL GOBIERNO NACIONAL Y TASA REAL DE CAMBIO, ORIGINALES Y COMPACTADAS, DEDE 1952 A 2003 (BASE 1975)

MODELO CONCEPTUALCon base en la información anterior y haciendo sentido de estas variables, se propone construir un modelo para hallar la relación ( que sospechamos que existe, esta nuestra hipótesis de trabajo), entre la el porcentaje de crecimiento del PIB( variable dependiente), a la que se referirá como PIB, y las variables Tasa cambiaria(TC) y Gasto Público(GP)( variables predictoras).El modelo se puede ilustrar mediante el siguiente esquema:

Page 3: ENTRENAMIENTO DE UN MODELO DIFUSO TIPO MAMDANI  MEDIANTE EL MÉTODO DE FUERZA BRUTA DETERMINÍSTICA

Gráfica No. 1 Modelo Conceptual

Con el fin de tener una estructura inicial del sistema de inferencia difusa se establecieron las reglas con base en el criterio no experto del Profesor Benigno Lozano, quien ofició de experto para esta tarea. Con el editor del Toolbox de Lógica Difusa se eligió un sistema tipo Mamdani y se procedió a fijar los parámetros básicos para cada variable de entrada y la variable de salida, al igual que las reglas difusas, que como se mencionó antes, se establecieron de acuerdo con el buen criterio del experto.

DISCRETIZACIÓN DIFUSA DE LAS VARIABLESA partir del rango de variación de las variables se establecen subintervalos que corresponderán a las categorías correspondientes. A continuación se muestran las etiquetas y los subintervalos correspondientes a cada variable.

VARIABLE INTERVALOS ETIQUETAGASTO PÚBLICO (Independiente) [0.0, 3,25] BAJO

[2.94,5.2] MEDIO[4.0,6.5] ALTO[5.5,8.0] MUY ALTO

TASA DE CAMBIO(Independiente) [0.0, 1.92] BAJA[1.72, 2.13] MEDIA[1.92, 3.0] ALTA

PORCENTAJE DE CRECIMIENTO DEL PIB [-0.0579, 0.015] CRITICO(Dependiente de la serie original) [-0,05 , 0.053] MODERADO

[0.0359, 0.071] BUENO [0.056,0.1] MUY BUENO

Tabla No. 2 Discretización difusa de de las variables para el sistema de inferencia difusa

Las siguientes son las funciones de membresía definidas para cada variables

Page 4: ENTRENAMIENTO DE UN MODELO DIFUSO TIPO MAMDANI  MEDIANTE EL MÉTODO DE FUERZA BRUTA DETERMINÍSTICA

Gráfica No.2 Funciones de membresía establecidas inicialmente para el sistema de inferencia difusa

Las siguientes fueron las reglas de inferencia difusa establecidas por el expertos

Gráfica No. 3 Reglas para el sistema de inferencia difusa, establecidas por el experto

El sistema se ingresa al Toolbox, utilizando el Editor correspondiente, la estructura del sistema de inferencia difusa de ilustra en la gráfica No. 4.

Gráfica No. 4 Estructura general del sistema de inferencia difusa tipo Mamdani.

En la gráfica No. 5 se muestra un ejemplo de la operación del sistema de inferencia difusa tipo Mamdani para el problema del PIB

Page 5: ENTRENAMIENTO DE UN MODELO DIFUSO TIPO MAMDANI  MEDIANTE EL MÉTODO DE FUERZA BRUTA DETERMINÍSTICA

Gráfica No. 5 Ejemplo de operación del sistema de inferencia difusa inicial

La superficie de interpolación del sistema de inferencia difusa inicial, junto con los datos obervados( se muestra como punto azules), se muestra a continuación

Gráfica No. 6 Superficie de interpolación del modelo de inferencia difusa inicial. Como estrellas azules se muestran los puntos observados.

En la gráfica No. 6 se aprecia que el modelo inicial presenta un desempeño pobre

SALIDA OBSERVADA Y SIMULADA. SISTEMA DE INFERENCIA DIFUSA INICIAL

-0.06

-0.04

-0.02

0

0.02

0.04

0.06

0.08

0.1

1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51

AÑO

PIB

PIB SIMULADO

PIB OBSERVADO

Page 6: ENTRENAMIENTO DE UN MODELO DIFUSO TIPO MAMDANI  MEDIANTE EL MÉTODO DE FUERZA BRUTA DETERMINÍSTICA

PIB OBSERVADO VS. PIB SIMULADO

y = 0.5909x + 0.028R2 = 0.2207

-0.06

-0.04

-0.02

0

0.02

0.04

0.06

0.08

0.1

-0.02 0 0.02 0.04 0.06

PIB SIMULADOP

IB O

BS

ER

VA

DO

Gráfica No. 7 Comportamiento del modelo de inferencia difusa inicial

En la gráfica No. 7 se confirma lo que se observa en la figura No. 6, es decir el modelo inicial tiene un desempeño muy deficiente. A continuación se incluye un resumen del sistema difuso inicial para el PIB[System]Name='Modelo PIB'Type='mamdani'Version=2.0NumInputs=2NumOutputs=1NumRules=12AndMethod='min'OrMethod='max'ImpMethod='min'AggMethod='max'DefuzzMethod='centroid'

[Input1]Name='Gasto_Publico'Range=[0 8]NumMFs=4MF1='Bajo':'trapmf',[0 0 2.66 3.25]MF2='Medio':'trimf',[2.94 4.07 5.2]MF3='Alto':'trimf',[4 5.25 6.5]MF4='Muy_Alto':'trapmf',[5.55555555555556 7.67 8 8]

[Input2]Name='Tasa_cambiaria'Range=[0 3]NumMFs=3MF1='Baja':'trapmf',[0 0 1.59 1.92]MF2='Media':'trimf',[1.72 1.91 2.13]MF3='Akta':'trapmf',[1.92 2.14 3 3]

[Output1]Name='PIB'Range=[-0.05 0.1]NumMFs=4MF1='Crìtico':'trapmf',[-0.0579 -0.0579 -0.0499 0.0156746031746032]MF2='Moderado':'trimf',[-0.005 0.024 0.053]MF3='Bueno':'trimf',[0.0359 0.0545634920634921 0.071]

Page 7: ENTRENAMIENTO DE UN MODELO DIFUSO TIPO MAMDANI  MEDIANTE EL MÉTODO DE FUERZA BRUTA DETERMINÍSTICA

MF4='Muy_Bueno':'trapmf',[0.0565476190476191 0.085 0.1 0.1]

[Rules]1 1, 2 (1) : 11 2, 2 (1) : 11 3, 4 (1) : 12 1, 2 (1) : 12 2, 3 (1) : 12 3, 3 (1) : 13 2, 2 (1) : 13 3, 2 (1) : 14 1, 1 (1) : 14 2, 1 (1) : 14 3, 2 (1) : 13 1, 1 (1) : 1

ESTRATEGIA DE ENTRENAMIENTO: METODO DE FUERZA BRUTA DETERMINÍSTICA

El método de fuerza bruta determinística consiste en dividir al intervalo de variación de cada parámetro a calibrar y luego mediante un ciclo anidado explorar exhaustivamente todas las combinaciones posibles de los valores discretos adoptados por los parámetros.

ESTABLECIMIENTO DE LOS INTERVALOS DE VARIACIÓN DE CADA PARÁMETROS

A partir del modelo *.fis exportado en el editor del Toolbox, se creo desde la línea de comando el modelo para poder manipularlo mejor.En el modelo anterior se definieron 22 parámetros que podían variar durante el proceso de entrenamiento.Esto de puede ilustrar en el siguiente código de matlaba=newfis('pib');

a=addvar(a,'input','GastoPublico',[0 8]);a=addmf(a,'input',1,'Bajo','trapmf',[0 0 par(1) par(2)]);a=addmf(a,'input',1,'Medio','trimf',[par(3) 4 par(4)]);a=addmf(a,'input',1,'Alto','trimf',[par(5) 5.25 par(6)]);a=addmf(a,'input',1,'Muy_Alto','trapmf',[par(7) par(8) 8 8]);a=addvar(a,'input','TasaCambiaria',[0 3]);a=addmf(a,'input',2,'Baja','trapmf',[0 0 par(9) par(10)]);a=addmf(a,'input',2,'Media','trimf',[par(11) 1.8 par(12)]);a=addmf(a,'input',2,'Alta','trapmf',[par(13) par(14) 3 3]);a=addvar(a,'output','PIB',[-0.05 0.1]);a=addmf(a,'output',1,'Critico','trapmf',[-.0579 -.0579 par(15) par(16)]);a=addmf(a,'output',1,'Moderado','trimf',[par(17) 0.025 par(18)]);a=addmf(a,'output',1,'Bueno','trimf',[par(19) 0.06 par(20)]);a=addmf(a,'output',1,'Muy_Bueno','trapmf',[par(21) par(22) 0.1 0.1]);

Lo que aparece con el nombre par(i), corresponde al parámetro i, a optimizar durante el proceso de entrenamiento.

Page 8: ENTRENAMIENTO DE UN MODELO DIFUSO TIPO MAMDANI  MEDIANTE EL MÉTODO DE FUERZA BRUTA DETERMINÍSTICA

A continuación se determina el intervalo de variación de cada parámetro, que asegure problemas de inconsistencia al interior de las funciones de membresía(los parámetros deben tener un orden, con respecto a su magnitud). En la siguiente tabla se muestran los intervalos elegidos

parámetro Valor mínimo Valor máximo1 0.01 2.652 2.66 4.0;3 1 34 4.1 5.55 4 5.246 5.26 7.97 5 6.98 7 89 0 1.4910 1.5 1.7911 1 1.7912 1.81 313 1.82 2.314 2.4 2.915 -0.049 -0.02916 -0.024 0.02517 -0.04 0.02418 0.026 0.0619 0.026 0.05920 0.061 0.121 0.061 0.07922 0.08 0.1

Tabla No. 3 Intervalos de variación de los parámetros del modelo de inferencia difusa

Luego se construye una función que reciba como argumento el conjunto de parámetros y los datos, y retorne alguna medida de error, que para este caso, se escogió, la suma de la diferencia absoluta entre las salidas retornadas por el sistema de inferencia y la salida deseada.

Después de esto, se hace el ciclo básico de iteración:incremento=0% para ajustar diferente conjunto de parámetrosdivisiones=20% numero de divisiones en que se divide el intervalo de variación de cada parámetrocont=zeros(22,1)% contador definido por facilidad de programación%CICLO PRINCIPALfor i1=1:divisiones, cont(1)=i1; for i2=1:divisiones, cont(2+incremento)=i2;% for i3=1:divisiones,% cont(3+incremento)=i3;

Page 9: ENTRENAMIENTO DE UN MODELO DIFUSO TIPO MAMDANI  MEDIANTE EL MÉTODO DE FUERZA BRUTA DETERMINÍSTICA

% for i4=1:divisiones,% cont(4+incremento)=i4;% for i5=1:divisiones,% cont(5+incremento)=i5;% for i6=1:divisiones,% cont(6+incremento)=i6;% for i7=1:divisiones,% cont(7+incremento)=i7;% for i8=1:divisiones,% cont(8+incremento)=i8;% for i9=1:divisiones,% cont(9+incremento)=i9;% for i10=1:divisiones,% cont(10)=i10;% for i11=1:divisiones,% cont(11)=i11;% for i12=1:divisiones,% cont(12)=i12;% for i13=1:divisiones,% cont(13)=i13;% for i14=1:divisiones,% cont(14)=i14; for k=1+incremento:22+incremento, par(k)=pmin(k)+(pmax(k)-pmin(k))/divisiones*cont(1); [error y]=economia(par', datos); if(error<errormax) errormax=error pmax1=par(); error end end end end % end% end% end% end% end% end% end% end% end% end% end% end

Page 10: ENTRENAMIENTO DE UN MODELO DIFUSO TIPO MAMDANI  MEDIANTE EL MÉTODO DE FUERZA BRUTA DETERMINÍSTICA

En este script se hace para 22 contadores (hasta i22), con el fin de poner a variar todos los parámetros. La variable divisiones controla el número de divisiones a considerar en el intervalo de variación de cada parámetro.Tal y como está expresado aquí esto requeriría algo así como 22*divisiones^22, que resulta en un tiempo intolerable, para las condiciones actuales de cómputo, y el tiempo que tenemos disponible para concluir esta tarea, por lo tanto se variaron sólo algunos parámetros, con el fin de poder hacer este ejercicio y mostrar resultados. En el futuro se espera dejar corriendo este script en algún computador, con el fin de hacer una exploración mucho más exhaustiva del espacio de parámetros.La gráfica de los errores durante el entrenamiento se presenta a continuación:

Gráfica No. 8 Variación del error absoluto sobre todos los patrones, durante en entrenamiento

A continuación se incluye los resultados obtenidos en la mejor corrida

Gráfica No. 9 Funciones de membresía del modelo de inferencia entrenado

Page 11: ENTRENAMIENTO DE UN MODELO DIFUSO TIPO MAMDANI  MEDIANTE EL MÉTODO DE FUERZA BRUTA DETERMINÍSTICA

Gráfica No.10 Superficie de interpolación del sistema de inferencia difusa entrenado( Como puntos azules aparecen los datos observados)

En la gráfica No. 10 Se puede observar una leve mejoría en el desempeño de este modelo en relación con el inicial

ENTRENAMIENTO: SALIDA SIMULADA VS. SALIDA OBSERVADA

y = 0.4415x + 0.0224R2 = 0.2644

-0.06

-0.04

-0.02

0

0.02

0.04

0.06

0.08

0.1

-0.02 0 0.02 0.04 0.06 0.08 0.1

SALIDA SIMULADA

SA

LID

A O

BS

ER

VA

DA

ENTRENAMIENTO MODELO PIB: SALIDA SIMULADA Y SALIDA OBSERVADA

-0.06

-0.04

-0.02

0

0.02

0.04

0.06

0.08

0.1

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52

AÑO

PIB

SALIDA SIMULADA

SALIDA OBSERVADA

Gráfica No. 11 Desempeño del modelo de inferencia obtenido al final del proceso de entrenamiento.

Lo que se aprecia es que el comportamiento del modelo no mejoró mucho con respecto al anterior, y también presenta un desempeño muy pobre. Esto indicaría que es necesario aplicar un entrenamiento más intenso, luego del cual se podría tomar la decisión de replantear las reglas

Page 12: ENTRENAMIENTO DE UN MODELO DIFUSO TIPO MAMDANI  MEDIANTE EL MÉTODO DE FUERZA BRUTA DETERMINÍSTICA

establecidas, dado que se establecieron con base en el sentido común del experto( que en este caso no es un experto en economía). También podrían cambiarse los tipos de las funciones de membresía, y en últimas el modelo conceptual, lo cual implicará una profunda investigación de las variables económica y su relación con el PIB.

CONCLUSIONES

Al igual que en otros procesos de modelación, la definición de un modelo conceptual adecuado, con base en el conocimiento del dominio, es fundamental para obtener un modelo difuso que describa adecuadamente un conjunto de observaciones de un sistema. Es decir que a pesar de que un modelo sea conducido por datos, o sea un modelo de caja negra, la concepción de las relaciones de dependencia deben proceder de un análisis cuidadoso que asegure capturar la información relevante y suficiente de la variabilidad del sistema. Es decir, que en estos casos, resulta conveniente combinar la aproximación basada en datos, con una concepción basada en el conocimiento.