• No se han encontrado resultados

Propuesta de Diseño de Sistemas Complejos Basada en Autómatas Celulares Difusos no Uniformes y Algoritmos Evolutivos.

N/A
N/A
Protected

Academic year: 2020

Share "Propuesta de Diseño de Sistemas Complejos Basada en Autómatas Celulares Difusos no Uniformes y Algoritmos Evolutivos."

Copied!
108
0
0

Texto completo

(1)

PROPUESTA DE DISEÑO DE SISTEMAS COMPLEJOS BASADA EN AUTÓMATAS CELULARES DIFUSOS NO UNIFORMES Y ALGORITMOS

EVOLUTIVOS.

Presentado por:

OSCAR ENRIQUE MUNAR SUAREZ 20061005050 JOHN FREDY PIÑEROS HERNÁNDEZ 20061005100

UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS FACULTAD DE INGENIERÍA

(2)

PROPUESTA DE DISEÑO DE SISTEMAS COMPLEJOS BASADA EN AUTÓMATAS CELULARES DIFUSOS NO UNIFORMES Y ALGORITMOS

EVOLUTIVOS.

Presentado por:

OSCAR ENRIQUE MUNAR SUAREZ 20061005050 JOHN FREDY PIÑEROS HERNÁNDEZ 20061005100

Director:

Miguel Alberto Melgarejo Rey Profesor Asociado

UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS FACULTAD DE INGENIERÍA

(3)

NOTA DE ACEPTACIÓN

(4)

A mi familia: mi padre, mi madre y mi hermana, porque cada uno ha sido partícipe de mis logros alcanzados durante este recorrido.

(5)

RESUMEN

En este trabajo se presenta una propuesta de diseño para modelar sistemas complejos basada en autómatas celulares difusos, cuyas celdas no son iguales en estructura ni se encuentran distribuidas de la misma manera en el autómata, y algoritmos evolutivos, para este caso un algoritmo diferencial.

El inicio de este proyecto surgió de la necesidad de dar continuidad al diseño de alternativas, que hacen uso de técnicas de inteligencia computacional, para modelar sistemas complejos y entender sus comportamientos, brindando herramientas relevantes para posteriores trabajos. Los sistemas complejos a modelar se encuentran relacionados con problemas como: crecimiento urbano, propagación y crecimiento de células y virus, comportamiento de redes inalámbricas, dinámicas de flujo vial y tráfico, consumo energético (eléctrico), entre muchos otros temas sin explicación formal.

Inicialmente se realiza una revisión exhaustiva de las referencias agrupadas en un marco teórico; incluyendo una introducción a los sistemas complejos, una revisión de conceptos básicos de algunos estadísticos, autómatas celulares, sistemas de inferencias difusa (FIS), celdas difusas y la construcción de autómatas celulares difusos, y la evolución de dichos autómatas para ser sintonizados. Además, como aspecto importante, se revisan los resultados de la anterior propuesta realizada para modelar sistemas mediante la técnica de evolución de autómatas celulares difusos homogéneos [24].

Con la recopilación de esa información se plantea una primera propuesta de modelamiento considerando un autómata celular difuso no uniforme, tipo TSK, en el que se establecen dos estructuras para la celdas del autómata y su disposición dentro de la grilla del mismo, y, se diseñan unas funciones de rendimiento para el algoritmo evolutivo que sintonizará el autómata celular difuso, con el ánimo de recrear algunos estadísticos.

Posteriormente se realiza el proceso experimentación y validación de la propuesta. Para esta experimentación se emplean problemas diferentes de autómatas celulares continuos citados en la literatura como son: Reacción – Difusión y Onda Reactiva.

(6)

Agradecimientos

A nuestras familias, por regalarnos su apoyo durante el largo recorrido que hemos realizado hasta acá.

Al Ingeniero Miguel Melgarejo, por servirnos de valiosa guía en la construcción del presente trabajo y compartir con nosotros su preciado conocimiento y experiencia para llegar hasta aquí.

(7)

7 CONTENIDO

CONTENIDO ... 7

Lista de Figuras ... 9

Lista de Tablas ... 15

CAPITULO 1. INTRODUCCIÓN ... 16

1.1. PLANTEAMIENTO DEL PROBLEMA ... 16

1.2. OBJETIVOS ... 18

1.2.1. OBJETIVO GENERAL ... 18

1.2.2. OBJETIVOS ESPECÍFICOS ... 18

1.3. SOLUCIÓN PROPUESTA ... 18

CAPITULO 2. MARCO REFERENCIAL ... 20

2.1. SISTEMAS COMPLEJOS ... 20

2.1.1. Propiedades de los sistemas complejos ... 20

2.2. AUTÓMATAS CELULARES ... 21

2.2.1. Condiciones de frontera ... 22

2.2.2. Autómata celular no uniforme ... 22

2.3. AUTÓMATAS CELULARES DIFUSOS ... 23

2.3.1. Algoritmos genéticos ... 24

2.4. PARÁMETROS ESTADÍSTICOS ... 25

2.4.1. Promedio ... 25

2.4.2. Desviación Estándar ... 25

2.4.3. Correlación ... 26

2.5. RESUMEN ... 26

CAPITULO 3. PROPUESTA DE MODELAMIENTO DE SISTEMAS COMPLEJOS A TRAVÉS DE AUTÓMATAS CELULARES DIFUSOS NO HOMOGÉNEOS EVOLUCIONADOS A TRAVÉS DE ALGORITMOS GENÉTICOS. ... 27

3.1 PROPUESTA PARA EL MODELADO DE SISTEMAS COMPLEJOS ... 27

3.2 SISTEMA COMPLEJO ... 29

3.2.1 Implementación en Python ... 30

3.3 AUTÓMATA CELULAR DIFUSO ... 30

(8)

8

3.4 ALGORITMO EVOLUTIVO ... 32

3.5 FUNCIÓN DE RENDIMIENTO ... 34

3.5.1 Función de rendimiento promedio ... 34

3.5.2 Función de rendimiento desviación estándar ... 35

3.5.3 Función de rendimiento promedio-desviación ... 36

3.5.4 Función de rendimiento correlación ... 36

3.5.5 Función de rendimiento promedio-desviación estándar-correlación ... 36

CAPITULO 4. PROBLEMAS DE PRUEBA ... 37

4.1. Reacción – Difusión ... 37

4.2. Onda Reactiva... 37

4.3 METODOLOGÍA DE EXPERIMENTACIÓN. ... 38

4.4 RESULTADOS ... 41

4.4.1 Reacción – Difusión ... 41

Estadístico promedio. ... 41

Estadístico desviación estándar... 46

Estadístico Coeficiente de correlación. ... 51

Estadísticos promedio y desviación estándar. ... 56

Estadísticos promedio, desviación estándar y coeficiente de correlación. ... 63

4.4.2 Onda Reactiva. ... 70

Estadístico Promedio. ... 70

Estadístico desviación estándar... 77

Estadístico Coeficiente de correlación. ... 82

Estadístico promedio y desviación estándar. ... 87

Estadísticos promedio, desviación estándar y coeficiente de correlación. ... 94

4.3. DISCUSIÓN ... 101

CAPITULO 5. CONCLUSIONES Y TRABAJO FUTURO... 104

5.1. APORTES ORIGINALES ... 104

5.2. TRABAJO FUTURO ... 104

(9)

9

Lista de Figuras

Figura 2.1. Vecindad tipo Von Neumann y tipo Moore [35]. 19 Figura 2.2. Esquema de una célula para un autómata celular difuso [22], [24]. 20

Figura 2.3. Pseudo código de un algoritmo genético. 21

Figura 3.1. Propuesta para el modelamiento de sistemas complejos. 25

Figura 3.2. Estructura de la población. 30

Figura 3.3. Estructura cromosoma individuo propuesto. 30

Figura 4.1. Regla de transición de estados para una onda no lineal en el vacío [30]. 31 Figura 4.2. Histograma resultado experimentos en la observación del sistema para un FIS de

2 reglas. 39

Figura 4.3. Diferencia entre el promedio del sistema y el modelo propuesto, error, para el

mejor individuo obtenido en la observación del sistema. 40

Figura 4.4. Estadístico promedio acumulado en t instantes de tiempo. 36 Figura 4.5. Estadístico promedio acumulado observación del sistema en t instantes de

tiempo. 37

Figura 4.6. Respuesta del sistema complejo y el modelo propuesto para diferentes instantes

de tiempo. 38

Figura 4.7. Respuesta del sistema complejo y el modelo propuesto para diferentes instantes

de tiempo. 38

Figura 4.8. Estadístico promedio acumulado en t instantes de tiempo. 38 Figura 4.9. Histograma resultado experimentos en la observación del sistema para un FIS de

8 reglas. 42

(10)

10

Figura 4.12. Estadístico desviación estándar acumulada para t instantes de tiempo. 44 Figura 4.13. Respuesta del sistema complejo y el modelo propuesto para diferentes instantes

de tiempo. 44

Figura 4.14. Respuesta del sistema complejo y el modelo propuesto para diferentes instantes

de tiempo. 45

Figura 4.15. Estadístico desviación estándar acumulada en t instantes de tiempo. 46 Figura 4.16. Histograma de resultados experimentos para un FIS de 2 reglas para el error en

la observación del sistema. 47

Figura 4.17. Error de entrenamiento para el estadístico Coeficiente de correlación. 48 Figura 4.18. Estadístico coeficiente de correlación acumulado en t instantes de tiempo. 48 Figura 4.19. Estadístico coeficiente de correlación acumulado en t instantes de tiempo. 49 Figura 4.20. Respuesta del sistema complejo y el modelo propuesto para diferentes instantes

de tiempo. 50

Figura 4.21. Respuesta del sistema complejo y el modelo propuesto para diferentes instantes

de tiempo. 50

Figura 4.22. Estadístico coeficiente de correlación acumulado en t instantes de tiempo. 51 Figura 4.23. Histograma resultado experimentos en la observación del sistema para un FIS

de 4 reglas. 54

Figura 4.24. Error entrenamiento para la función de rendimiento 54 Figura 4.25. Respuesta estadístico promedio acumulado para t instantes de tiempo. 55 Figura 4.26. Respuesta estadístico desviación estándar acumulada para t instantes de

tiempo. 55

Figura 4.27. Respuesta error estadísticos promedio y desviación estándar para t instantes de

tiempo. 56

Figura 4.28. Respuesta del sistema complejo y el modelo propuesto para diferentes instantes

(11)

11

Figura 4.29. Respuesta del sistema complejo y del modelo propuesto para diferentes instantes

de tiempo. 57

Figura 4.30. Respuesta del error de los estadísticos promedio, desviación estándar y la

función de rendimiento para t instantes de tiempo. 58

Figura 4.31. Respuesta estadísticos promedio y desviación estándar acumulados para t

instantes de tiempo. 59

Figura 4.32. Histograma de resultados de experimentos para un FIS de 2 reglas para el error

en la observación del sistema. 60

Figura 4.33. Error de entrenamiento para la función de rendimiento con tres estadísticos 61 Figura 4.34. Estadístico promedio acumulado en t instantes de tiempo. 61 Figura 4.35. Estadístico desviación estándar acumulada en t instantes de tiempo. 62 Figura 4.36. Estadístico coeficiente de correlación acumulado en t instantes de tiempo. 63 Figura 4.37. Respuesta error estadísticos promedio, desviación estándar y coeficiente de

correlación para t instantes de tiempo. 63

Figura 4.38. Respuesta del sistema complejo y el modelo propuesto para diferentes instantes

de tiempo. 64

Figura 4.39. Respuesta del sistema complejo y el modelo propuesto para diferentes instantes

de tiempo. 65

Figura 4.40. Respuesta error de los estadísticos promedio, desviación estándar y la función

de rendimiento para t instantes de tiempo. 65

Figura 4.41. Estadísticos promedio, desviación estándar y coeficiente de correlación

acumulados en t instantes de tiempo. 66

Figura 4.42. Histograma de resultados de experimentos para un FIS de 2 reglas para el error

en la observación del sistema. 68

(12)

12

Figura 4.46. Estadístico promedio acumulado en t instantes de tiempo. 70 Figura 4.47. Respuesta del sistema complejo y el modelo propuesto para diferentes instantes

de tiempo. 71

Figura 4.48. Respuesta del sistema complejo y el modelo propuesto para diferentes instantes

de tiempo. 72

Figura 4.49. Promedio para cada instante de tiempo del sistema complejo y el modelo

propuesto. 72

Figura 4.50. Histograma resultado experimentos en la observación del sistema para un FIS

de 4 reglas. 74

Figura 4.51. Error entrenamiento para la función de rendimiento. 75 Figura 4.52. Estadístico desviación estándar acumulada en t instantes de tiempo. 77 Figura 4.53. Estadístico desviación estándar acumulada en t instantes de tiempo. 78 Figura 4.54. Respuesta del sistema complejo y el modelo propuesto para diferentes instantes

de tiempo. 79

Figura 4.55. Respuesta del sistema complejo y el modelo propuesto para diferentes instantes

de tiempo. 79

Figura 4.56. Estadístico desviación estándar acumulada en t instantes de tiempo. 80 Figura 4.57. Histograma de resultados experimentos para un FIS de 8 reglas para el error en

la observación del sistema. 81

Figura 4.58. Error de entrenamiento para el estadístico Coeficiente de correlación. 82 Figura 4.59. Estadístico coeficiente de correlación acumulado en t instantes de tiempo. 82 Figura 4.60. Estadístico coeficiente de correlación acumulada en t instantes de tiempo. 83 Figura 4.61. Respuesta del sistema complejo y el modelo propuesto para diferentes instantes

de tiempo. 83

Figura 4.62. Respuesta del sistema complejo y el modelo propuesto para diferentes instantes

de tiempo. 84

(13)

13

Figura 4.64. Histograma resultado experimentos para el error en la observación del sistema

para FIS de 2 reglas. 86

Figura 4.65. Error de entrenamiento para la función de rendimiento. 86 Figura 4.66. Respuesta estadístico promedio acumulado para t instantes de tiempo. 87 Figura 4.67. Respuesta estadístico desviación estándar acumulada para t instantes de

tiempo. 88

Figura 4.68. Respuesta error estadísticos promedio y desviación estándar para t instantes de

tiempo. 89

Figura 4.69. Respuesta del sistema complejo y el modelo propuesto para diferentes instantes

de tiempo. 89

Figura 4.70. Respuesta del sistema complejo y el modelo propuesto para diferentes instantes

de tiempo. 90

Figura 4.71. Respuesta error de los estadísticos promedio, desviación estándar y función de

rendimiento para t instantes de tiempo. 91

Figura 4.72. Respuesta estadísticos promedio y desviación estándar acumulados para t

instantes de tiempo. 91

Figura 4.73. Histograma de resultados de experimentos para un FIS de 2 reglas en la

observación del sistema. 93

Figura 4.74. Error de entrenamiento para la función de rendimiento con tres estadístico. 93 Figura 4.75. Estadístico promedio acumulado en t instantes de tiempo. 94 Figura 4.76. Estadístico desviación estándar acumulada en t instantes de tiempo. 94 Figura 4.77. Estadístico coeficiente de correlación acumulado en t instantes de tiempo. 95 Figura 4.78. Respuesta error de los estadísticos promedio, desviación estándar y coeficiente

de correlación para t instantes de tiempo. 96

Figura 4.79. Respuesta del sistema complejo y el modelo propuesto para diferentes instantes

de tiempo. 96

Figura 4.80. Respuesta del sistema complejo y el modelo propuesto para diferentes instantes

(14)

14

Figura 4.81. Respuesta error para los estadísticos promedio, desviación estándar, coeficiente de correlación y la función de rendimiento para t instantes de tiempo. 98 Figura 4.82. Estadísticos promedio, desviación estándar y coeficiente de correlación para t

instantes de tiempo. 98

(15)

15 Lista de Tablas

Tabla 3.1. Tipos de complejidad para Autómatas Celulares 2D, tomado de [30] 22 Tabla 4.1. Parámetros sistema complejo Reacción - Difusión. 32

Tabla 4.2. Parámetros Sistema complejo Onda Reactiva. 33

Tabla 4.3. Parámetros Sistema de inferencia difusa. 33

Tabla 4.4. Parámetros Algoritmo de evolución diferencial. 33

Tabla 4.5. Parámetros modificados experimentalmente. 34

Tabla 4.6. Porcentaje de error obtenido en el entrenamiento y observación del sistema para

el estadístico promedio. 35

Tabla 4.7. Estadística de los experimentos realizados para el estadístico desviación

estándar. 39

Tabla 4.8. Estadística de los experimentos realizados para el estadístico coeficiente de

correlación. 46

Tabla 4.9. Estadística de los experimentos realizados para el estadístico promedio y

desviación estándar. 52

Tabla 4.10. Resultados estadísticos de los experimentos realizados para los estadísticos promedio, desviación estándar y coeficiente de correlación. 59 Tabla 4.11. Resultados estadísticos de los experimentos realizados para calcular el estadístico

promedio. 67

Tabla 4.12. Estadística de los experimentos realizados para el estadístico desviación

estándar. 73

Tabla 4.13. Estadística de los experimentos realizados para el estadístico coeficiente de

correlación. 80

Tabla 4.14. Resultado estadístico de los experimentos realizados para los estadísticos

promedio y desviación estándar. 85

(16)

16

CAPITULO 1. INTRODUCCIÓN

1.1. PLANTEAMIENTO DEL PROBLEMA

El entorno del hombre se encuentra inmerso en diversos sistemas, que han tratado de ser modelados para explicar su comportamiento y obtener una utilidad de los mismos. Estos sistemas que se encuentran en la realidad son en su mayoría sistemas complejos y para ser modelados se debe tener en cuenta las variables que rigen su comportamiento de una forma directa o indirecta [1]. Se han realizado estudios de varios sistemas de este tipo [42], en los cuales se ha observado que presentan comportamientos dinámicos que pueden ser modelados con un grado de aproximación en diferentes campos de las ciencias convirtiéndose en un área interdisciplinaria [2].

Los sistemas complejos tienen la característica de que cada elemento que los compone, no puede ser estudiado de forma independiente para conocer el comportamiento global del sistema. Las diferentes interacciones y dependencias que existe entre éstos impiden hacer observaciones locales para generar conclusiones globales [2]. En los últimos años se ha aumentado el estudio de los sistemas complejos, a pesar que en los años 50 J. Von Neumann estudió este tipo de fenómenos creando el concepto de autómata celular para modelar sistemas dinámicos inicialmente [3], después fue formalizado teóricamente por S. Wolfram [4].

Los autómatas celulares son modelos matemáticos y computacionales sencillos que se utilizan para representar sistemas complejos en la actualidad [5]. Los autómatas celulares son una herramienta que por su estructura permite modelar sistemas físicos, químicos, biológicos, procesos de ingeniería entre otros, donde los elementos que componen estos sistemas se relacionan entre sí para producir una serie de comportamientos interesantes de base para diferentes estudios. Algunos ejemplos de donde se implementan autómatas celulares en diversos campos son: modelo de crecimiento urbano [6], modelo de células y virus [7], modelo de mercados financieros [8], modelo de fluidos [9], modelo de redes de sensores inalámbricos para la gestión del tráfico y seguridad vial [10], algoritmos de encriptación [11], modelo para la predicción de consumo eléctrico [12], simulación de formación de cristales para la creación de semiconductores [13], entre otros.

(17)

17

El autómata celular ha sido objeto de varias propuestas para el modelamiento de sistemas complejos, entre ellas utilizando algoritmos evolutivos [17] y sistemas de inferencia difusa (Fuzzy Inference Systems – FIS) en cada una de las celdas del autómata celular continuo [6], [13], [15], [16], [17]. Estas propuestas han tenido acogida puesto que la extracción de la información es ambigua por las reglas de transición que rigen cada celda, la no linealidad de sus componentes y la imprecisión al momento de observarlos [1]. Estas características son tenidas en cuenta en algunos ejemplos donde se tienen modelos basados en sistemas difusos para autómatas celulares homogéneos [18], [19], [20], [21], creándose el concepto de Autómata Celular Difuso [22]. En las investigaciones realizadas hasta el momento no se ha encontrado información relacionada con Autómata Celular Difuso heterogéneo.

Una de las propuestas que más ha llamado la atención es la integración de las mencionadas anteriormente, es decir, utilizar un algoritmo genético para adaptar un Autómata Celular Difuso y dar una calibración a los diferentes parámetros de cada célula del autómata de forma automática. Cabe resaltar que este tipo de propuesta tiene un costo computacional considerable y más si se trata de modelamiento de sistemas complejos.

Para el caso de autómatas celulares homogéneos se ha desarrollado una propuesta que modela sistemas complejos por medio de autómatas celulares difusos sintonizados con un algoritmo simbiótico [23], [24]. Esta propuesta tuvo resultados aceptables para un sistema complejo específico, sin embargo al aumentar la complejidad del sistema no presentó resultados satisfactorios. Las posibles causas pueden ser la sencillez del autómata celular para modelar éste tipo de sistemas complejos, las métricas utilizadas para el entrenamiento y validación y el tipo de algoritmo que se utilizó para la sintonización del autómata celular. Por lo tanto se busca una propuesta que se acerque más a la naturaleza de sistemas con mayor complejidad, es por lo cual que se pensaría en considerar los autómatas celulares no uniformes (heterogéneos) [15], [25], [26].

Los autómatas celulares no uniformes tienen un espacio de reglas más amplio que los autómatas celulares homogéneos, las cuales pueden aplicar diferentes reglas locales para cada celda y su aplicación también puede variar dependiendo el radio [26], estas principales características hacen que el autómata celular no uniforme sea más complejo. Por lo tanto la no uniformidad de este tipo de autómatas celulares reduce los requisitos de conectividad entre las células para permitir una disminución de la zona observada para el modelamiento de sistemas complejos [14], [27].

(18)

18 1.2. OBJETIVOS

1.2.1. OBJETIVO GENERAL

Desarrollar e implementar una propuesta de diseño de sistemas complejos basada en autómatas celulares difusos no uniformes (Heterogéneos) y adaptados mediante algoritmos genéticos.

1.2.2. OBJETIVOS ESPECÍFICOS

 Diseñar la estructura y conexiones de un autómata celular difuso no uniforme que utilice dos tipos de celdas diferentes.

 Proponer un algoritmo genético como medio de evolución de las celdas heterogéneas del autómata celular difuso, y cuya función objetivo esté orientada a hacer emerger un estadístico1 macroscópico de interés del autómata celular difuso.

 Integrar e implementar el autómata celular difuso no uniforme con el algoritmo genético mediante una herramienta de cómputo libre.

 Validar la propuesta de diseño en dos casos de sistemas complejos.

1.3. SOLUCIÓN PROPUESTA

Este trabajo pretende mostrar una propuesta, desarrollando una metodología basada en el sustento teórico recopilado, para modelar sistemas complejos. Dicha propuesta se encuentra basada en autómatas celulares difusos y algoritmos evolutivos, en este caso un algoritmo ampliamente utilizado como lo es el Algoritmo Diferencial. Todo se encuentra desarrollado sobre un lenguaje de uso libre como lo es Python.

En primera instancia se elabora una propuesta de modelamiento, sustentada en la base teórica recopilada y descrita en el marco referencial, y que se compone de diferentes etapas. Inicialmente se debe tener a disposición una base de datos del sistema complejo a modelarse. Por lo tanto fue necesario realizar una búsqueda bibliográfica sobre los autómatas celulares continuos reportados en la literatura. Luego, se elige la clase de autómata con el que se desea trabajar; para este caso, el autómata celular difuso empleado es no uniforme de dos dimensiones, de vecindad tipo Von Neumman, con condiciones de frontera periódica y con dos tipos de celda difusa que definirán la no uniformidad. Paso seguido se elige la

(19)

19

distribución de las celdas del autómata, dado que es un autómata no uniforme; dicha distribución se elige conforme la evolución y el comportamiento del sistema complejo. Finalmente se propone un algoritmo evolutivo para obtener los parámetros adecuados de las celdas difusas que componen la grilla del autómata, tanto para conjuntos del antecedente como del consecuente.

(20)

20

CAPITULO 2. MARCO REFERENCIAL

Se presenta un esquema de cómo está organizada la información con los conceptos teóricos que darián solución a la pregunta que se ha formulado anteriormente.

2.1. SISTEMAS COMPLEJOS

Los sistemas complejos en los últimos años se han convertido en una disciplina científica, en especial de forma interdisciplinaria. Los sistemas complejos son sistemas que poseen muchos elementos que interactúan entre sí, permitiendo tener comportamientos emergentes [1]. Estos sistemas se encuentran en la mayoría de áreas del saber, desde ciencias como física, matemática, química, entre otras, hasta antropología, ciencias sociales, economía. Es decir se encuentran en nuestro alrededor este tipo de sistemas complejos.

La complejidad es un fenómeno que está profundamente basada en las leyes de la naturaleza, donde los sistemas que interactúan tienen un gran número de elementos que están en todas partes. Cada elemento o parte del sistema no se puede entender solo, para a partir de allí sacar una conclusión del comportamiento del sistema complejo de forma general. Las dinámicas que tiene cada elemento del sistema con respecto a los otros de acuerdo a las variaciones y cómo se relacionan hacen que el sistema tenga un comportamiento determinado.

2.1.1. Propiedades de los sistemas complejos

Los sistemas complejos tienen unas características comunes que permiten realizar una clasificación de éstas. Esto se hace para observar que propiedades poseen los sistemas complejos y poder obtener una descripción del mismo.

 Elementos (y su número).  Interacciones (y su fuerza).

 Formación / Operación (y sus escalas de tiempo).  Diversidad / Variabilidad.

(21)

21

En resumen el estudio de los sistemas complejos es una nueva disciplina que está cambiando el campo científico, todo con el fin de entender la universalidad que surge de dicha complejidad [38].

2.2. AUTÓMATAS CELULARES

En la década de los cincuenta, J. Von Neumann propuso el concepto de lo que se conoce hoy como autómatas celulares [3]. Posteriormente este concepto fue sustentado matemáticamente por S. Wolfram mediante su formulación teórica acerca del autómata celular; concibiendo al autómata celular como un sistema matemático del cual emergen características de auto-organización que desembocan en una estructura ordenada, pese a presentar un comportamiento desorganizado al inicio. La auto-organización presente en los autómatas celulares se manifiesta en la disminución de la entropía a través del tiempo; contrastando con los sistemas basados en la segunda ley de la termodinámica en la que la entropía crece al transcurrir el tiempo [4]. La evolución de los autómatas celulares se podría interpretar como el cómputo que procesa una determinada información entregada en un instante 𝑡 para posteriormente evolucionar al siguiente estado 𝑡 + 1 [24].

Un autómata celular de dimensión d se modela mediante un conjunto que involucra varios parámetros: (ℤ𝑑, 𝑆, 𝛺, 𝛿: 𝑆𝑛+1 ⟶ 𝑆), donde 𝑆 es el conjunto de estados finitos, 𝛺 es un

subconjunto de ℤ𝑑 de radical 𝑛 llamado vecindad y 𝛿: 𝑆𝑛+1 ⟶ 𝑆 son las reglas de transición local del autómata celular [31].

Para un autómata celular de dos dimensiones, donde 𝑆𝑥𝑡𝑖,𝑗 es el estado de una célula 𝑥 𝑖,𝑗, en

la posición 𝑖, 𝑗, en el tiempo 𝑡 y 𝑆𝑥𝑖,𝑗

𝑡+1 es el estado de la célula en el tiempo 𝑡 + 1. Entonces

Sxi,j

t+1= δ (S xi,j t , S

Ωi,j

t ) (2.1)

Considerando la célula misma como un miembro de su vecindad, la ecuación 2.1 puede ser escrita como:

𝑆𝑥𝑖,𝑗𝑡+1= 𝛿 (𝑆𝛺𝑡𝑖,𝑗) (2.2)

(22)

22

Debido a la dependencia de las celdas con respecto a sus vecinas es necesario determinar el tipo de vecindad que regirá el autómata. Los dos principales tipos de vecindad son el Von Neumann y el Moore de las figura 1.

Figura 2.1. Vecindad tipo Von Neumann y tipo Moore [35].

2.2.1. Condiciones de frontera

Para realizar una implementación práctica, se debe considerar el autómata celular como una colección de celdas finitas que interactúan entre ellas, en vez de una red de celdas infinitas. De esta manera a las celdas que se encuentran en los bordes se les debe definir algún tipo de interacción con las demás. La implementación de este tipo de interacciones entre las células del borde se les conoce como condición de frontera [33].

De acuerdo con [34] y [24] se pueden definir cuatro tipos de condiciones de frontera acorde al tipo de problema, algunas pueden ser:

Frontera abierta. Fuera de la red del autómata, todas las células tienen un valor fijo. Frontera periódica. Los extremos de la red de celdas se tocan. En un autómata de

dimensión 1 se puede interpretar como una circunferencia, mientras que en uno de dimensión 2, la red de células podría visualizarse como toroide.

Frontera reflectora. Una célula que estuviera junto al borde de la red tomaría como valor el de la célula que esté junto al borde de la red, dentro de ella.

Sin frontera. Se hace crecer dinámicamente el uso de memoria de la red implementada, mediante algún tipo de implementación, para asumir que cada vez que las células deben interactuar con células al exterior de la red, esta crece para posibilitar estas interacciones. 2.2.2. Autómata celular no uniforme

(23)

23

Un autómata celular no uniforme es un autómata que tiene diferentes formas para llegar a un estado en un instante de tiempo (t+1). La no uniformidad de un autómata celular se presenta cuando sus parámetros son diferentes para cada celda [26], generalmente los parámetros que se ven afectados son la vecindad y las reglas de transición de un estado a otro.

Las reglas de transición de un estado a otro varían para cada celda del autómata celular, haciendo que el espacio de reglas sea de diferentes tamaños [14], [26]. Este espacio de reglas depende del número de celdas diferentes que se deseen aplicar. Por otro lado la vecindad se modifica de acuerdo al radio de la vecindad y el tipo de vecindad, aunque es más frecuente cambiar el radio de la vecindad [26]. En el caso del autómata celular uniforme, el radio de la vecindad es típicamente uno para todas sus celdas, para el autómata no uniforme el radio puede varias en valores constantes de 1 hasta el tamaño del autómata [25], [26].

2.3. AUTÓMATAS CELULARES DIFUSOS

Involucrar sistemas de inferencia difusa (FIS) en la solución de problemas ha sido una alternativa varios autores han tomado como alternativa para abordar diversas aplicaciones [18],[19],[20],[21],[22],[23].

La inclusión de este tipo de sistemas hace que la celda del autómata celular sea remplazada totalmente por un FIS. Este cambio permite que el FIS pre-procese los datos de entrada de cada célula del autómata [24]. En la entrada de la celda se encuentra un fusificador, que tiene como tarea asignar un valor de pertenencia a la entrada que se encuentra representada en forma de vector; la siguiente etapa se compone de una base de reglas de la forma “si-entonces”, en la que se encuentra soportada toda la base de conocimiento; un motor de inferencia combina las reglas y les da una asignación desde los conjuntos difusos de entrada a los conjuntos de salida; finalmente a partir de la salida del proceso de inferencia, un defusificador tipo TS entrega una valor puntual. En la figura 3 se encuentra un esquema que corresponde a lo anteriormente expuesto.

Fusificador Motor de

Inferencia Defusificador Base de Reglas

Estados vecinos

Estado siguiente

(24)

24 2.3.1. Algoritmos genéticos

Los algoritmos genéticos son procesos iterativos de búsqueda basados en lo que es la selección natural, evolución biológica [39]. El algoritmo genético es un algoritmo matemático, con características de paralelismo, el cual toma un conjunto de individuos (Población) representados mediante una cadena de símbolos (genotipo). Todo esto está relacionada a determinadas reglas de adaptación con el medio, lo que lleva a una población diferente (siguiente generación) [39].

Para obtener la siguiente generación, se toman la mayoría de individuos con mejor grado de adaptación y se genera la siguiente generación implementando operadores genéticos. Los operadores genéticos básicamente son dos:

Cruce: Este operador hace un barrido de toda la información almacenada en la población para poder combinarla entre dos individuos, llamados padres, con una probabilidad de cruce 𝑝𝑐𝑟𝑜𝑠𝑠 para crear dos nuevos individuos. Estos nuevos individuos se colocan en la

nueva generación.

Mutación: Este operador produce nuevas soluciones, partiendo de la modificación de cierto número de genes ya existentes, esto para fomentar la variabilidad en la población con una probabilidad 𝑝𝑚𝑢𝑡. De igual forma este se introduce para evitar una convergencia

prematura a un óptimo local, donde se puede llegar a perder información a través de las mutaciones.

Figura 2.3. Pseudo código de un algoritmo genético. begin GA

g:=0 { generation counter }

Initialize population P(g)

Evaluate population P(g) { i.e., compute fitness values }

while not done do

g:=g+1

Select P(g) from P(g-1)

Crossover P(g)

Mutate P(g)

Evaluate P(g)

end while

(25)

25

La forma general de un algoritmo genético está dado por el pseudo-código de la Figura 2.3 [40].

En el anterior pseudo-código se observan los operadores genéticos, así como la selección de los mejores individuos para cada generación, la cual nos determina el número de iteraciones a tener el algoritmo genético.

Los algoritmos genéticos tienen un rendimiento en diferentes procesos de optimización y búsqueda de soluciones, donde se realizan un número de iteraciones que le permiten realizar combinaciones para poder obtener el mejor individuo, basadas en soluciones parciales de intentos anteriores.

2.4. PARÁMETROS ESTADÍSTICOS

2.4.1. Promedio

El Promedio o también conocido como medida de tendencia central, es un valor típico representativo de un conjunto de datos denotados, dentro de los cuales se pueden encontrar: la media aritmética, moda, mediana y media geométrica [36][41].

La media aritmética o simplemente media 𝑋̅, para un conjunto de datos 𝑋, con 𝑁 número de datos, se denota según lo establece la Ecuación 2.3.

𝑋̅ =𝑋1+ 𝑋2+ 𝑋3+ ⋯ + 𝑋𝑁

𝑁 =

∑𝑁𝑗=1𝑋𝑗

𝑁 (2.3)

2.4.2. Desviación Estándar

La desviación típica es una medida de dispersión de un conjunto de datos, que al igual que el rango, la desviación media, rango semi-intercuartil y rango percentil 10-90, mide cuan esparcidos están el conjunto de datos [36][41].

La desviación típica o desviación estándar 𝑠, dependiente del número de muestras de un conjunto de datos 𝑋 con promedio 𝑋̅ y 𝑁 número de datos, se denota por la Ecuación 2.4.

𝑠 = √∑ (𝑋𝑗− 𝑋̅)

2 𝑁

𝑗=1

(26)

26 2.4.3. Correlación

El grado de interconexión entre variables que intenta determinar con qué precisión describe o explica la relación entre variables una ecuación lineal o de cualquier otro tipo se denomina correlación [36][41].

La relación existente entre dos conjuntos de datos 𝑋 y 𝑌 determinada mediante el coeficiente de correlación 𝑟, con promedios 𝑋̅ y 𝑌̅, desviaciones estándar 𝑠𝑋 y 𝑠𝑌, y 𝑁 número de datos,

se puede obtener por medio de la Ecuación 2.5 [36][41].

𝑟 = 𝑁 ∑ 𝑋𝑗𝑌𝑗

𝑁

𝑗=1 − (∑𝑁𝑗=1𝑋𝑗)(∑𝑁𝑗=1𝑌𝑗)

√𝑁 ∑𝑁 𝑋𝑗2

𝑗=1 − (∑𝑁𝑗=1𝑋𝑗)2√𝑁 ∑𝑁𝑗=1𝑌𝑗2− (∑𝑁𝑗=1𝑌𝑗)2

= 𝑠𝑋𝑌

𝑠𝑋𝑠𝑌 (2.5)

Donde 𝑠𝑋𝑌 se denomina la covarianza de 𝑋 y 𝑌.

2.5. RESUMEN

(27)

27

CAPITULO 3. PROPUESTA DE MODELAMIENTO DE SISTEMAS

COMPLEJOS A TRAVÉS DE AUTÓMATAS CELULARES DIFUSOS NO HOMOGÉNEOS EVOLUCIONADOS A TRAVÉS DE ALGORITMOS

GENÉTICOS.

En el presente capítulo se dará a conocer la propuesta para el modelamiento de sistemas complejos a través de autómatas celulares difusos (FCA), siendo estos evolucionados a través de algoritmos genéticos; soportado en la consulta bibliográfica realizada y en la base teórica recopilada.

De manera descriptiva se expone Inicialmente la propuesta, inmediatamente después se presenta el sistema complejo a modelar, posteriormente se da paso a la ilustración del autómata celular difuso no homogéneo (no uniforme) junto con sus tipos de células, acto seguido se especifica el método de sintonización a través de algoritmos evolutivos y las funciones de rendimiento adecuadas a los diferentes estadísticos a recrear, para finalmente mostrar la metodología y el proceso de experimentación con el que se pretende validar el modelo diseñado.

3.1PROPUESTA PARA EL MODELADO DE SISTEMAS COMPLEJOS

La propuesta de modelado de sistemas complejos se muestra en la figura 3.1 y está conformada por: los datos de interés del sistema a modelar, tomados de un sistema complejo; el autómata celular difuso no homogéneo con el que se recreará el sistema complejo de referencia, compuesto de dos tipos de celda difusa, pues esto determinará la no uniformidad del autómata; el estadístico o medida a tomar para medir en el sistema complejo y en el modelo; y, el algoritmo evolutivo para la búsqueda de parámetros del autómata para recrear el estadístico. Para comprender su funcionamiento es necesario tener en cuenta varias consideraciones.

Se debe contar con una base de conocimiento que contenga las salidas del sistema complejo y los datos de interés a representar, ya que de esta base se deberán obtener los estadísticos o medidas a replicar con el modelo propuesto. Esta base de datos se debe separar en dos partes, una parte para entrenamiento y otra para validación.

(28)

28

resultados de la evolución en el tiempo que arrojó el fenómeno a recrear, en este caso el sistema complejo.

Cada una de los tipos de celda, a pesar de tener una estructura diferente, está compuesta en esencia por una función de base difusa (FIS) tipo Takagi-Sugeno de primer orden. La interpretabilidad del sistema difuso no es primordial y el número de reglas será establecido de manera fija. La vecindad de las celdas será de tipo Von Neumann y las condiciones de frontera tipo periódica.

El algoritmo evolutivo, que se encarga de encontrar los parámetros del autómata que recrearán el comportamiento del sistema complejo a modelar, es de tipo diferencial y su realimentación está provista por una función de rendimiento. Las función de rendimiento (en realidad serán varias como se verá posteriormente), se creó tomando como referencia otras funciones de costo utilizadas en la medición de series de tiempo unidimensional (VAF RMSE), pero cambia al tomar como parámetro principal la medida o estadístico(s) a recrear en lugar de perseguir una dinámica temporal.

Celda Difusa 1 Algoritmo Evolutivo Datos de Interés

Autómata Celular Difuso No Uniforme Celda Difusa 2 Conjuntos entrada Conjuntos entrada Conjuntos Salida Conjuntos Salida Función de Rendimiento Estadístico o medida a

tomar Estadístico

o medida a tomar

Sistema Complejo

(29)

29 3.2SISTEMA COMPLEJO

A continuación se muestra la manera en la que la información de interés, obtenida del sistema complejo a modelar, se organiza para cumplir con el esquema propuesto para modelar sistemas complejos. Los datos que se obtienen son muestras de valores continuos en dos dimensiones de la evolución del sistema complejo en diferentes instantes de tiempo.

El sistema complejo estructuralmente está conformado por un autómata celular de dos dimensiones (𝑖, 𝑗), que evoluciona a través del tiempo (𝑘), arrojando un conjunto de datos para cada instante de tiempo de la forma (𝑖, 𝑗, 𝑘). Este conjunto está compuesto por valores reales que corresponden a los valores espaciales (𝑖, 𝑗) y valores enteros que corresponden a los diferentes instantes de tiempo (𝑘). Por lo tanto, para cada instante de tiempo se tiene una matriz de datos y consecuentemente, para todos los instantes de tiempo a tener en cuenta, un conjunto de matrices 𝑅(𝑖, 𝑗, 𝑘) que constituyen la dinámica del sistema a modelar.

Algunos autores dan luces sobre una posible determinación del grado de complejidad de los autómatas celulares continuos de dos dimensiones como sistemas complejos, aun cuando cada uno de éstos tiene dinámicas diferentes [30]. Este aspecto que sirve como guía para determinar el grado de complejidad del sistema complejo a modelar, debido a que es un autómata, se encuentra sintetizado en la Tabla 3.1.

Tipo de complejidad Tipo Wolfram Comportamiento

I 1 Muere (estado estable)

II a 2 Espacio fijo

II b 2 Ciclo periódico

III a 4 Auto-organizados

III b 4 Estructuras aisladas

IV 3 Pseudo-aleatorio

Tabla 3.1. Tipos de complejidad para Autómatas Celulares 2D, tomado de [30].

Además, la Tabla 3.1 muestra el comportamiento a los que llegan los distintos tipos de sistemas complejos según la literatura explorada. Sobresalen los tipo 2, mostrando comportamientos que pueden ser periódicos en el tiempo o repetitivos en el espacio, y los tipo 4 reflejando comportamientos de auto-organización o subestructuras complejas aisladas [23],[24].

(30)

30 3.2.1 Implementación en Python

La implementación (del sistema complejo y posteriormente del modelo), se realizó mediante el lenguaje de programación Python, un lenguaje interpretable, orientado a objetos y cuya principal característica es la intuitiva sintaxis de programación; a través de la distribución libre Anaconda, que contiene paquetes de procesamiento de datos y en especial una librería optimizada para el manejo de arrays llamada Numpy; y utilizando el intérprete (comand shell) ipython. Además, se hizo uso de un IDE incluido en la distribución llamado Spyder, caracterizado por tener una interfaz de trabajo similar a suites de procesamiento matemático como Matlab.

Conforme a la propuesta de modelado vista anteriormente, se definió una arquitectura de desarrollo. Dicha arquitectura de la aplicación consta de scripts de instrucciones con funciones independientes, diseñadas para ser parametrizables y reutilizadas acorde a cada uno de los experimentos a realizarse.

3.3AUTÓMATA CELULAR DIFUSO

El capítulo anterior entrega la base teórica acerca de los modelos de autómatas celulares difusos propuestos en la literatura. Conforme a esto, es propuesto un modelo de Autómata Celular Difuso, ilustrado en la Figura 3.3, que no necesita de la intervención de un experto para sintonizar los FIS de cada célula.

El sistema complejo arroja los datos de interés, es decir, la base de conocimiento que definirá el tamaño de la grilla del autómata difuso. Así mismo, la naturaleza del sistema complejo en sí determina las condiciones de frontera y el tipo de vecindad a emplear, es decir, mayor o menor influencia de las células circundantes. El modelo propuesto considera una vecindad tipo Von Neumann, donde cada célula tiene en cuenta la salida de cuatro celdas vecinas. En el Autómata Celular Difuso (FCA), cada celda está compuesta por un sistema difuso tipo TSK (Takagi-Sugeno-Kang) de primer orden; aprovechando sus ventajas sobre otros modelos, tales como sensibilidad en el cambio de los datos de entrada y presencia de ruido [44], y sus propiedades inherentes como aproximador universal.

La definición formal de los autómatas difusos, presentada en el capítulo anterior, determina el autómata tipo TSK como un conjunto 𝐴𝐶 = {𝐶, 𝑂, 𝐹, 𝑃}, donde 𝐶 es el espacio del autómata celular, 𝑂 la vecindad, 𝐹 la función que determina el estado futuro de la célula y 𝑃

es el conjunto de estados que puede tomar la celda en un rango de valores reales dado. Para este modelo, 𝐹 es una función no lineal implementada mediante un FIS (Fuzzy Inference System). La ecuación 3.1, establece las reglas para cada celda difusa del autómata.

(31)

31

Las entradas para este modelo, es decir para cada celda difusa, son cuatro, debido a que tiene vecindad tipo Von Neumann. Entonces, el estado futuro de cada celda se basa en la espacialidad de la celda y la dinámica de sí misma: en lo concerniente a su dinámica, tiene en cuenta su estado presente y pasado; y en cuanto a la espacialidad sobre la grilla, se basa en el estado presente de sus vecinos. En la ecuación 3.2 mostrada a continuación, se encuentra expresada la salida de cada celda.

𝑓(𝑥) =∑ 𝑦𝑖𝑤𝑖

𝑀 𝑖=1

∑𝑀𝑖=1𝑤𝑖

(3.2) 𝑤𝑖 = ∏ 𝜇𝐴 𝑗 𝑖(𝑥𝑖) 6 𝑗=1 (3.3)

Siendo 𝑀 el tamaño de la base de reglas y 𝑤𝑖 el nivel de ponderación de la i-ésima regla, calculada conforme lo muestra la ecuación 3.3. El índice 𝑗 puede tener valores de 1 a 6, que corresponden a los cuatro estados presentes de los vecinos de la celda y a sus dos estados presente y pasado [43].

3.3.1 Estructura y distribución de Celdas difusas

Para el modelo de autómata celular del presente libro, al ser un autómata no homogéneo, se diseñaron dos tipos de celdas difusas que tomaban como base una misma estructura. Dicha estructura comprende el mismo número de entradas para cada una de las celdas, diferenciándose entre sí por la función de transición que presentaba cada una para cada sistema complejo.

La distribución de las celdas dentro de la rejilla del autómata celular se realizó teniendo en cuenta el comportamiento que mostraba el sistema complejo a modelar como se mostrará posteriormente.

(32)

32

3.4ALGORITMO EVOLUTIVO

El método de optimización usado fue el algoritmo evolutivo diferencial.

Una idea del nivel de dificultad para obtener, de manera manual, un conjunto de parámetros para un grupo de sistemas de inferencia difusa TSK, se puede tener con la ecuación 3.4.

𝑃 = 3 × 𝐼 × 𝑅 × 2𝑏 (3.4)

Donde 𝑏 corresponde a la cantidad bits empleados para codificar los parámetros a ser sintonizados, 𝑅 la cantidad de reglas del FIS, 𝐼 la cantidad de reglas del sistema y 𝑃 la cantidad de posibles soluciones. Para un FIS TSK con seis entradas, de dos reglas con funciones Gaussianas en el antecedente y codificación real a 64 bits se tiene un 𝑃 de

6.641𝑒20.

La apreciación anterior muestra la utilidad de los algoritmos evolutivos en problemas como el que se pretende abordar en el presente proyecto. Sin embargo, según sea el tipo de problema que se pretenda abordar no todos los algoritmos brindan resultados satisfactorios, esto puede deberse a su tipo de codificación, su lenta convergencia, imprecisión, entre otros factores.

Conforme a este modelo se deben considerar algoritmos evolutivos que trabajen con parámetros reales dada la naturaleza de los estados continuos de nuestro sistema. También es importante tener en cuenta la cantidad de variables que puede manejar, y el costo computacional al implementar dicho algoritmo [24].

3.4.1 Construcción del Cromosoma

Población

Para realizar la optimización utilizando un algoritmo evolutivo, es necesario sintonizar una población la cual es representada por un conjunto de individuos, que en este caso está conformada por una matriz que tiene un tamaño de filas acorde al número de individuos de la población. Cada individuo tiene un cromosoma asociado cuya longitud 𝐿 está dada por la Ecuación 3.5. 𝑅 es el número de reglas, 𝑁 la longitud del vector de entrada del sistema difuso y 𝑃 es el número de parámetros que caracterizan la forma de las funciones de pertenencia del antecedente.

𝐿 = 𝑅 ∗ 𝑁 ∗ 𝑃 + 𝑅 ∗ 𝑁 (3.5)

En la Figura 3.2 se muestra la estructura que tiene una población de forma general, donde

(33)

33

constantes de la combinación lineal). De acuerdo a la propuesta de modelamiento de un autómata celular no uniforme diseñado con dos celdas diferentes, los parámetros de las funciones de pertenencia del antecedente y consecuente deben ser diferentes.

En la Figura 3.3 se muestra la estructura del cromosoma propuesto para un autómata celular no uniforme con dos tipos de celda.

Figura 3.2. Estructura de la población.

(34)

34 Inicialización de la Población

3.5FUNCIÓN DE RENDIMIENTO

La realimentación del algoritmo evolutivo se realiza a través de una medida de desempeño que, a pesar de haberse inspirado en una función de costo para replicar series temporales, toma como parámetro principal el número estadístico a obtener a través del modelo, como se mencionó en el capítulo anterior; comparando el modelo del autómata celular difuso con el sistema complejo. Dicha función de costo está diseñada especialmente para recrear el(los) estadístico(s) deseado(s) del sistema complejo. Por ende, se cuenta en realidad con un conjunto de funciones de costo que funcionan individualmente conforme se requieran recrear uno o varios estadísticos con el modelo.

3.5.1 Función de rendimiento promedio

A continuación en la ecuación 3.6 se muestra la función de rendimiento correspondiente al valor promedio.

(35)

35

Ésta función calcula la función de error de los promedios del sistema complejo (ecuación 3.7) y del promedio de las celdas difusas del modelo (ecuación 3.8).

𝑓𝑚𝑒𝑎𝑛𝐵𝐷 = 1 𝑚 ∗ 𝑛∑ ∑ ( ∑𝑛𝑡 𝑓𝐵𝐷(𝑖, 𝑗, 𝑡) 𝑡=1 𝑛𝑡 ) 𝑛 𝑖=1 𝑚 𝑗=1 (3.7)

𝑓𝑚𝑒𝑎𝑛𝑒𝑓𝑏𝑑 = 1

𝑚 ∗ 𝑛∑ ∑ ( ∑𝑛𝑡 𝑓𝑒𝑓𝑏𝑑(𝑖, 𝑗, 𝑡) 𝑡=1 𝑛𝑡 ) 𝑛 𝑖=1 𝑚 𝑗=1 (3.8)

De manera extendida se puede ver la ecuación 3.6 en la ecuación 3.9.

𝑓𝑚𝑒𝑎𝑛 = √[ 1

𝑚 ∗ 𝑛∑ ∑ (

∑𝑛𝑡𝑡=1𝑓𝐵𝐷(𝑖, 𝑗, 𝑡)

𝑛𝑡 ) 𝑛 𝑖=1 𝑚 𝑗=1 − 1 𝑚 ∗ 𝑛∑ ∑ (

∑𝑛𝑡𝑡=1𝑓𝑒𝑓𝑏𝑑(𝑖, 𝑗, 𝑡)

𝑛𝑡 ) 𝑛 𝑖=1 𝑚 𝑗=1 ] 2 (3.9)

Donde, 𝑓𝐵𝐷(𝑖, 𝑗, 𝑡) es la función de transición del sistema complejo para una celda;

𝑓𝑒𝑓𝑏𝑑(𝑖, 𝑗, 𝑡) es la función de base difusa del modelo; 𝑚 y 𝑛 son las dimensiones del autómata celular (filas, columnas); y, 𝑛𝑡 instantes de tiempo de evolución del sistema.

3.5.2 Función de rendimiento desviación estándar

La ecuación 3.10 muestra la función de rendimiento de la desviación estándar.

𝑓𝑠𝑡𝑑 = √[𝑓𝑠𝑡𝑑𝐵𝐷− 𝑓𝑠𝑡𝑑𝑒𝑓𝑏𝑑] 2 (3.10) 𝑓𝑠𝑡𝑑𝐵𝐷 = 1 𝑚 ∗ 𝑛∑ ∑ √( ∑𝑛𝑡 [𝑓𝐵𝐷(𝑖, 𝑗, 𝑡) − 𝑓̅̅̅̅̅]𝐵𝐷 𝑡=1

𝑛𝑡 − 1 )

𝑛 𝑖=1 𝑚 𝑗=1 (3.11) 𝑓𝑠𝑡𝑑𝑒𝑓𝑏𝑑 = 1 𝑚 ∗ 𝑛∑ ∑ √(

∑𝑛𝑡𝑡=1[𝑓𝑒𝑓𝑏𝑑(𝑖, 𝑗, 𝑡) − 𝑓̅̅̅̅̅̅̅]𝑒𝑓𝑏𝑑

𝑛𝑡 − 1 )

𝑛

𝑖=1 𝑚

𝑗=1

(36)

36

Donde, 𝑓𝐵𝐷(𝑖, 𝑗, 𝑡) es la función de transición del sistema complejo para una celda;

𝑓𝑒𝑓𝑏𝑑(𝑖, 𝑗, 𝑡) es la función de base difusa del modelo; 𝑓̅̅̅̅̅𝐵𝐷 es el promedio de la celda (𝑖, 𝑗) en el tiempo, para el sistema complejo; 𝑓̅̅̅̅̅̅̅𝑒𝑓𝑏𝑑 es el promedio de la celda (𝑖, 𝑗) en el tiempo, para el modelo propuesto; 𝑚 y 𝑛 son las dimensiones del autómata celular (filas, columnas); y, 𝑛𝑡

instantes de tiempo de evolución del sistema.

3.5.3 Función de rendimiento promedio-desviación

La función de rendimiento promedio-desviación, como se observa en la ecuación 3.13, es una combinación entre la ecuaciones 3.7 y 3.10.

𝑓𝑖𝑡𝑛𝑒𝑠𝑠2 = 𝑓𝑚𝑒𝑎𝑛 ∗ 𝑓𝑠𝑡𝑑 (3.13)

3.5.4 Función de rendimiento correlación

Para establecer una relación entre los datos proporcionados por las señales generadas con el modelo y los datos generados por las señales del sistema complejo, se propone una función de rendimiento de correlación mostrada a continuación en la ecuación 3.15.

𝑟𝑖,𝑗=

𝑛𝑡 ∑𝑛𝑡𝑡=1𝑓𝐵𝐷(𝑖, 𝑗, 𝑡)𝑓𝑒𝑓𝑏𝑑(𝑖, 𝑗, 𝑡)− (∑𝑛𝑡𝑡=1𝑓𝐵𝐷(𝑖, 𝑗, 𝑡))(∑𝑛𝑡𝑡=1𝑓𝑒𝑓𝑏𝑑(𝑖, 𝑗, 𝑡))

√𝑛𝑡 ∑𝑛𝑡𝑡=1(𝑓𝐵𝐷(𝑖, 𝑗, 𝑡))2 − (∑𝑛𝑡𝑡=1𝑓𝐵𝐷(𝑖, 𝑗, 𝑡))2√𝑛𝑡 ∑𝑛𝑡𝑡=1(𝑓𝑒𝑓𝑏𝑑(𝑖, 𝑗, 𝑡))2 − (∑𝑛𝑡𝑡=1𝑓𝑒𝑓𝑏𝑑(𝑖, 𝑗, 𝑡)))2

(3.14)

𝑐𝑜𝑟𝑟𝑖,𝑗= {𝑟𝑖,𝑗 𝑠𝑖 𝑟𝑖,𝑗 > 0

0 𝑠𝑖 𝑟 ≤ 0 (3.15)

𝑓𝑐𝑜𝑟𝑟 = 1

1

𝑚 ∗ 𝑛∑𝑚𝑗=1∑𝑛𝑖=1(𝑐𝑜𝑟𝑟𝑖,𝑗)

(3.16)

3.5.5 Función de rendimiento promedio-desviación estándar-correlación

La función de rendimiento promedio-desviación estándar-correlación, como se observa en la ecuación 3.17, es una combinación entre la ecuaciones 3.7, 3.10 y 3.16.

(37)

37

CAPITULO 4. PROBLEMAS DE PRUEBA

De acuerdo a los objetivos planteados, se toman dos sistemas complejos para validar el diseño del autómata celular difuso. Los sistemas complejos escogidos son: reacción difusión y onda reactiva.

4.1. Reacción – Difusión

Este es un sistema de reacción química que tiene un comportamiento relevante para nuestro estudio, en el que los componentes se están difundiendo. Para el sistema complejo de prueba se considera el comportamiento de dos sustancias: un autocatalizador activador y una sustancia inhibidora que es producida por el autocatalizador [42].

Los sistemas de tipo reacción-difusión son sistemas fuera de equilibrio, químicos, descritos matemáticamente mediante ecuaciones diferenciales no lineales similares a la ecuación 4.1, que es una ecuación tipo reacción difusión, en donde se evidencia la evolución espacio-temporal de sus variables dinámicas[45].

(4.1)

Hace tiempo Turing estableció el principio teórico de este comportamiento, ahora en los últimos años se están buscando nuevas reacciones con las que encontrar aplicaciones industriales a estos fenómenos[45].

Los sistemas del presente libro utilizan el esquema de ecuación diferencial Meinhardt [30] que tiene una regla de difusión del activador-inhibidor con saturación del activador. De acuerdo a los parámetros del esquema de ecuación diferencial Meinhardt se pueden obtener sistemas de reacción difusión con diferentes tipos de complejidad. Para el caso de prueba se implementa un sistema de complejidad tipo IIa. En la Tabla 4.2 se tienen los parámetros del sistema complejo.

La regla de transición de estados de un sistema reacción-difusión se puede observar en la Tabla 4.1.

4.2.Onda Reactiva

(38)

38

utiliza una ecuación de onda. En la Tabla 4.2 se muestran los parámetros del sistema complejo.

Su comportamiento consta de la combinación de la ecuación de estado de una onda no lineal en el vacío y una ecuación de estado de un sistema de reacción-difusión. Una onda no lineal en el vacío, tiene un patrón de comportamiento similar al de una cacerola con agua hirviendo y su regla de transición de estados se puede observar en la Figura 4.[30]

Figura 4.1. Regla de transición de estados para una onda no lineal en el vacío[30].

Como se puede ver en la Tabla 4.2, la regla de transición de una onda reactiva es una combinación de las reglas de transición de la onda no lineal en el vacío (Figura 4.1) y una regla de transición de un sistema reacción-difusión (Tabla 4.1).

4.3METODOLOGÍA DE EXPERIMENTACIÓN.

En la Tabla 4.1 y Tabla 4.2 se muestran los parámetros del sistema complejo de Reacción – Difusión y Onda Reactiva respectivamente, implementados para evaluar el diseño del modelo propuesto. Las bases de datos de los sistemas de prueba se obtuvieron mediante la evolución de cada uno para modelar el problema. Se empleó un autómata celular de 10x10 celdas, en 500 instantes de tiempo para el sistema de Reacción– Difusión y 200 instantes de tiempo para el sistema de Onda Reactiva, ambos con condiciones iniciales aleatorias.

La base de datos se separó en dos partes, una para entrenamiento y otra para validación. Se tomó el 90% de los datos para realizar el entrenamiento y el 10% para la validación. Este porcentaje se obtuvo después de realizar varios experimentos previamente.

Teniendo en cuenta las características del FCA y del algoritmo de evolución diferencial, se definieron parámetros constantes para los experimentos. En la Tabla 4.3 y Tabla 4.4 se observan los parámetros constantes para el sistema de inferencia difusa y el algoritmo de evolución diferencial respectivamente. En la Tabla 4.5 se muestran los parámetros que se modificaron en los experimentos.

(39)

39

durante el proceso de validación. El mejor individuo se obtiene a partir de la función de rendimiento (error en el estadístico o estadísticos) durante el entrenamiento y la validación. Con los mejores individuos de cada experimento se realiza un histograma para observar la distribución hallada con respecto a la función de rendimiento. Con el mejor individuo de los 100 experimentos, se muestra la variación de la función de rendimiento durante el proceso de evolución y se compara el sistema complejo real con el obtenido por el FCA, en diferentes instantes de tiempo en el entrenamiento y validación.

(40)

40

Tabla 4.2. Parámetros Sistema complejo Onda Reactiva.

Sistema de inferencia Difusa

Modelo de Base Difusa Takagi-Sugeno

Entradas 7

Tipo de función de pertencia Gaussiana

Método "Y" Producto

Método de Defusificación Promedio de centros

Método de Implicación Producto

Método de Agregación Adición.

Tabla 4.3. Parámetros Sistema de inferencia difusa.

Algoritmo de Evolución Diferencial

Número de Experimentos 100

Número de Generaciones 100

Tamaño de la población 10

Codificación Real

Probabilidad de cruce 0,9

Tasa de mutación 0,8

Porcentaje de entrenamiento 90%

(41)

41

Sistema de inferencia Difusa

Número de Reglas 2, 4 y 8

Algoritmo de Evolución Diferencial

Función de Costo

Estadístico: Promedio, desviación estándar, coeficiente de correlación.

Tabla 4.5. Parámetros modificados experimentalmente.

4.4 RESULTADOS

En esta sección se muestran las estadísticas de las pruebas realizadas con los dos problemas de prueba.

4.4.1 Reacción – Difusión

Para este sistema complejo, se obtuvieron resultados con respecto al porcentaje de error de validación y entrenamiento pequeños, comparándolos con el valor máximo obtenido en la base de datos del sistema complejo real. El mejor resultado obtenido se presentó cuando se calculó la función de rendimiento que toma el error de los estadísticos promedio y desviación estándar. Este error se obtuvo con un FIS de 2 reglas con un valor de 0.0026% para el mejor individuo en la validación. Cabe destacar que el error de validación en todos los experimentos realizados para el mejor individuo en la validación no superó el 1%.

Esta función de rendimiento también presentó los mejores resultados con respecto a la media de todos los experimentos realizados y a la desviación estándar, los cuales fueron 2.7% y 5.7% respectivamente. Esto indica que la mayoría de experimentos la función de rendimiento presentó errores pequeños comparando con el valor máximo de la base de datos.

Estadístico promedio.

(42)

42

Tabla 4.6. Porcentaje de error obtenido en el entrenamiento y observación del sistema para el estadístico promedio.

De acuerdo con la Tabla 4.6 se puede observar que para 4 reglas se tuvieron los mejores resultados para el entrenamiento con un error muy pequeño comparado con el error que se obtuvo con 2 y 8 reglas. El error medio de todos los experimentos en la observación del sistema se presentó entre 13.7% y 16.33%, lo cual indica que la mayoría de experimentos se aproximaron al promedio del sistema complejo de Reacción – Difusión.

En la Figura 4.2 se muestra el histograma del porcentaje de error de la función de rendimiento para el estadístico promedio en la observación del sistema de los experimentos realizados para 2 reglas. Se puede observar que la mayoría de experimentos tuvieron un porcentaje de error menor del 10%.

(43)

43

Figura 4.3. Diferencia entre el promedio del sistema y el modelo propuesto, error, para el mejor individuo obtenido en la observación del sistema.

En la Figura 4.3 se tiene el comportamiento del error del promedio entre el sistema complejo y el modelo propuesto para cada generación en el entrenamiento. Se puede observar que este error decrece rápidamente para las condiciones iniciales aleatorias. En la mayoría de los experimentos realizados para todas las reglas, el error de entrenamiento era menor al 1% y alrededor de 50 generaciones se obtenía el menor error.

(44)

44

El estadístico promedio acumulado hace referencia al promedio del autómata celular para el instante de tiempo t=0 hasta cierto instante de tiempo. En la Figura 4.4 y Figura 4.5 se puede observar el valor que va tomando el promedio del sistema complejo y del modelo propuesto a medida que aumentan los instantes de tiempo. En la Figura 4.4 se muestra como en el entrenamiento el promedio del modelo propuesto se acerca al promedio del sistema complejo.

Figura 4.5. Estadístico promedio acumulado observación del sistema en t instantes de tiempo.

(45)

45

Figura 4.6. Respuesta del sistema complejo y el modelo propuesto para diferentes instantes de tiempo.

Figura 4.7. Respuesta del sistema complejo y el modelo propuesto para diferentes instantes de tiempo.

El comportamiento en el tiempo del modelo propuesto es diferente al sistema complejo, esto se puede ver en la Figura 4.4 y Figura 4.5 donde se compara la respuesta en el tiempo en el entrenamiento y observación del sistema respectivamente entre el sistema complejo y el modelo propuesto. Se tomaron los mismos instantes de tiempo en cada caso.

(46)

46

Al obtener el mejor individuo en los experimentos realizados, se realizó una simulación del modelo propuesto para observar el comportamiento del estadístico promedio acumulado para un intervalo de instantes de tiempo t entre (500,1000]. En la Figura 4.8 se observa en líneas punteadas el comportamiento del estadístico promedio para el sistema complejo, el modelo propuesto y el error cuando t es mayor a 500 instantes de tiempo. Como se puede ver el error entre el estadístico del sistema complejo y el modelo propuesto va aumentando en una pequeña proporción a medida que aumenta el tiempo.

Estadístico desviación estándar.

Los experimentos realizados para el estadístico desviación estándar tuvieron un porcentaje de error menor al 1% para el mejor individuo con 2, 4 y 8 reglas en la observación del sistema. El mejor individuo se presentó con 8 reglas con un porcentaje de error de 0.0014%. En la Tabla 4.7 se muestran los porcentajes de error para cada regla para el mejor individuo, media y desviación estándar de los experimentos realizados.

Tabla 4.7. Estadística de los experimentos realizados para el estadístico desviación estándar. El porcentaje de error del mejor individuo para los tres casos es aproximadamente 10 veces menor que el porcentaje de error para 2 reglas y 2.5 para 4 reglas. A pesar de que el mejor individuo es para 8 reglas, la media y la desviación estándar son las más altas, 27,9% y 1554,55% respectivamente, si se compara con los resultados de 2 y 4 reglas. Se puede observar que media para 2 y 4 reglas tienen un porcentaje de error similar y teniendo en cuenta la desviación estándar para cada caso, los porcentajes de error estuvieron entre 0% y 5% aproximadamente.

(47)

47

Figura 4.9. Histograma resultado experimentos en la observación del sistema para un FIS de 8 reglas.

(48)

48

La Figura 4.10 muestra el error para cada generación para el algoritmo diferencial del mejor individuo obtenido. Entre la generación 40 y 60 sufre una disminución casi hasta cero. El error final en el entrenamiento es de 0.00035. Este error representa un porcentaje de 0.013%, parecido al obtenido en la observación del sistema.

Figura 4.11. Estadístico desviación estándar acumulada para t instantes de tiempo.

En la Figura 4.11 se puede observar el promedio del estadístico desviación estándar hasta cada instante de tiempo en el entrenamiento del autómata celular. De forma general se puede decir que el estadístico del modelo propuesto al cabo de 10 instantes de tiempo empieza a disminuir para tener el mismo estadístico que el sistema complejo.

El promedio del estadístico desviación estándar hasta cada instante de tiempo t en la observación del sistema se muestra en la Figura 4.12. Como se puede ver, la respuesta es similar entre el modelo propuesto y el sistema complejo. El error es casi cero.

(49)

49

Figura 4.12. Estadístico desviación estándar acumulada para t instantes de tiempo.

(50)

50

Figura 4.14. Respuesta del sistema complejo y el modelo propuesto para diferentes instantes de tiempo.

En la Figura 4.15 se muestra la respuesta en el tiempo del estadístico desviación estándar acumulada del sistema complejo y del modelo propuesto con el mejor individuo obtenido. Se quiere comprobar la respuesta del modelo para instantes de tiempo más allá de los utilizados para entrenar y observar el sistema y ver su comportamiento. En líneas punteadas se tiene la respuesta del estadístico para instantes de tiempo t entre (500,1000].

(51)

51

Figura 4.15. Estadístico desviación estándar acumulada en t instantes de tiempo.

Estadístico Coeficiente de correlación.

El porcentaje de error de los experimentos realizados para el estadístico coeficiente de correlación, mostraron un error superior al 100% en la mayoría de los casos. Estos porcentajes hacen que sea el estadístico con el peor comportamiento al momento de modelarlo con el autómata celular no uniforme propuesto. El mejor individuo se obtuvo para un FIS de 2 reglas con un porcentaje de error de 125.85%.

(52)

52

En la Tabla 4.8 se puede observar los resultados estadísticos de los experimentos realizados para 2, 4 y 8 reglas para el coeficiente de correlación. Estos porcentajes son altos debido a que el coeficiente de correlación indica un grado de correlación lineal entre dos señales en el tiempo [referencia] y dada la función de rendimiento implementada, el autómata celular no uniforme propuesto no logra emerger el comportamiento de este estadístico con los parámetros utilizados en el algoritmo genético.

El mejor resultado de la media y desviación estándar se obtuvieron con 8 reglas, con un porcentaje de error de 400.52% y 88.17% respectivamente. La media para los tres casos estuvo alrededor de 400%, y la desviación estándar es alta para 2 reglas comparándolas con 4 y 8 reglas. Esto muestra que los porcentajes de error fueron uniformes para 4 y 8 reglas, a pesar que con 2 reglas se obtuvo el mejor individuo.

Figura 4.16. Histograma de resultados experimentos para un FIS de 2 reglas para el error en la observación del sistema.

En la Figura 4.16 se puede observar la distribución de los porcentajes de error de los experimentos realizados con el estadístico coeficiente de correlación. Esta distribución es parecida a una campana de gauss, donde la mayor concentración es aproximada a la media de los experimentos realizados para 2 reglas.

Figure

Figura 2.2.  Esquema de una célula para un autómata celular difuso [22], [24].
Tabla 4.6. Porcentaje de error obtenido en el entrenamiento y observación del sistema  para el estadístico promedio
Figura 4.6. Respuesta del sistema complejo y el modelo propuesto para diferentes  instantes de tiempo
Figura 4.9. Histograma resultado experimentos en la observación del sistema para un  FIS de 8 reglas
+7

Referencias

Documento similar

En este proyecto se utiliza para la implementaci´ on de la base de datos tanto para los usuarios del sistema como para los dispositivos asociados a dichos usuarios.. Adem´ as,

Nuestro mundo tecnológico se ha vuelto totalmente dependiente de la disponibilidad continua del suministro eléctrico. En la mayoría de los países, el suministro

El proyecto está centrado en el desarrollo de un prototipo de VANT controlado a través de una aplicación de Smartphone para el sistema operativo Android.. Se empleará una placa

The part I assessment is coordinated involving all MSCs and led by the RMS who prepares a draft assessment report, sends the request for information (RFI) with considerations,

o Si dispone en su establecimiento de alguna silla de ruedas Jazz S50 o 708D cuyo nº de serie figura en el anexo 1 de esta nota informativa, consulte la nota de aviso de la

Al no observar una significante relación con el valor de p=0,165 (p>0,05) y correlación muy baja de r=0,071, se considera que no existe relación significativa entre

El fenómeno del cuidado, emerge como necesidad la simbiosis entre el proceso de enfermería y su transcendencia en la investigación científica a través de la enfermería basada

5, demuestran que con mayor número de bits, la velocidad de convergencia es mayor, pero cuando el número de bits es mayor a ocho, el error cuadrático medio diverge, debido a que