Sunteți pe pagina 1din 148

SISTEMA DE CONTROL INTEGRADO NEUROFUZZY (SCINEF)

LEANDRO GIOVANNI BARAJAS MORA MARA DEL PILAR BARN DUARTE

UNIVERSIDAD DISTRITAL FRANCISCO JOS DE CALDAS FACULTAD DE INGENIERA PROYECTO CURRICULAR DE INGENIERA ELECTRNICA SANTAF DE BOGOT D.C. 1998

SISTEMA DE CONTROL INTEGRADO NEUROFUZZY (SCINEF)

LEANDRO GIOVANNI BARAJAS MORA MARA DEL PILAR BARN DUARTE

Trabajo de Grado para optar al ttulo de Ingeniero Electrnico

Director M.S.M JOAQUIN LUNA

UNIVERSIDAD DISTRITAL FRANCISCO JOS DE CALDAS FACULTAD DE INGENIERA PROYECTO CURRICULAR DE INGENIERA ELECTRNICA SANTAF DE BOGOT D.C. 1998

Nota de aceptacin ____________________ ____________________ ____________________

____________________ Jurado

____________________ Jurado

Santaf de Bogot, 13 de junio de 1998

iv

A mis padres Alba Luca y Edgar, a mis hermanos Mauricio y Nicols, a Mara del Pilar. Con todo mi Amor y agradecimiento por la inspiracin que me brindaron.

Leandro

A mi madre con todo mi amor por su apoyo incondicional, y a Leandro por su paciencia y comprensin. Pilar

vi

AGRADECIMIENTOS

Los autores expresan sus agradecimientos a: Nuestros padres: Alba Luca Mora de Barajas, Edgar Barajas, Josefina Duarte de Barn y Pablo Barn por haber hecho de nosotros quienes somos; apoyndonos durante toda nuestra vida y entregndonos lo ms valioso que un padre puede dar a sus hijos amor, bienestar y educacin. Joaqun Luna, Director del trabajo de grado, por sus valiosos aportes conceptuales. Jess Domnguez, M.S. Computer Science y Gerente de Zeus Technologies Inc., por su constante inters en este trabajo y aporte conceptual. Stephen Wolstenholme por el Neural Planner y su colaboracin desinteresada. Teresa Duarte (Q.E.P.D) y Mery Duarte (Q.E.P.D) por su valioso apoyo econmico. Flor Oles, por su ayuda en el envi de componentes. Wilson Diaz, por su colaboracin en la importacin de los componentes. Universidad Distrital Francisco Jos de Caldas, por brindarnos ms alta calidad acadmica y cientfica. Occidental de Colombia Inc. por su cooperacin en la investigacin y el desarrollo de este proyecto facilitando el acceso a sus instalaciones, personal y recursos. Zworld Inc., Adaptive Logic, Maxim Integrated Products Inc., PC/104 Consortium National Instruments Corp., National Semiconductors Inc., Texas Instruments Inc., Xicor Inc., Motorola Semiconductors Inc., Allied Electronics Inc., Digi-Key Corp., NuHorizons Inc., Linear Tecnologies, Epson Inc, Diamond Systems Corp., Atmel Corp., Microchip Technology Inc., Optrex Corp., Micrel Semiconductors Inc., ISD (Information Storage Devices) Inc., Hamilton Hallmark Inc., Zeus Electronics Inc., AMD Corp., Latice Semiconductor Corp., por su cooperacin, soporte tcnico, envo de muestras y manuales.

vii

RESUMEN
El siguiente trabajo presenta un sistema de control hbrido paralelo que utiliza como herramientas principales la Fuzzy logic y las Redes Neuronales, mostrando la aplicacin prctica que estas tecnologas tienen en la industria. El Sistema de Control Integrado Neuro-Fuzzy (SCINEF) se aplic al control de un generador de potencia de 1 MW para optimizar su punto de operacin, disminuyendo as el consumo de combustible en un 20% y reduciendo el desgaste del generador y de su sistema de refrigeracin. SCINEF comprende mdulos de comunicaciones seriales RS232 y RS485 con velocidades de comunicacin de hasta 115.2 Kbps, entradas y salidas digitales programables, salidas de relevos, puerto paralelo de impresora, conversores AD/DA para la interface anloga con el microcontrolador fuzzy y como entradas y salidas anlogas de propsito general, mdulo de grabacin y reproduccin anloga de voz e interface para tarjetas inteligentes. Como mdulo de computo principal se utiliza un procesador Z80180 programable en lenguajes C y ensamblador en el cual se implement, adems del control digital convencional, la red neuronal. El mdulo de procesamiento fuzzy logic utiliza el Circuito Integrado Anlogo Programable (PAIC) AL220 el cual puede emplear hasta 4 entradas y 4 salidas anlogas, 111 variables fuzzy y 50 reglas que se pueden evaluar con una rata de hasta 500K por segundo. La red neuronal utilizada es del tipo feed forward con dos capas ocultas y se emple como algoritmo de aprendizaje el back propagation. En el desarrollo del hardware se utiliz el estndar PC/104 para las dimensiones fsicas y seales de control, brindando la posibilidad de integrar cualquier tipo y cantidad de perifricos que el sistema requiera. Las principales ventajas de este sistema de control son la alta velocidad de respuesta, probada eficiencia, versatilidad en hardware, flexibilidad en software, elevada capacidad de aprendizaje y que es un sistema de fcil adaptacin a diferentes procesos industriales sin ningn tipo de modificacin de hardware. ABSTRACT This work presents a parallel hybrid control system that uses as main tools Fuzzy Logic and Neural Networks, showing the practical applications that these technologies have in the industry. NeuralFuzzy Embedded Control System (SCINEF) was applied to the control of a 1MW power generator to optimize its set point, diminishing in that way its fuel consumption up to in a 20% and decreasing the generator and refrigeration system wear. SCINEF includes RS232 and RS485 serial communications modules with speeds up to 115.2 Kbps, programmable digital inputs/outputs, relay outputs, parallel printer port, AD/DA converters to the analog interface with the fuzzy microcontroller and how general purpose analog input/output, analog voice play/recording module and Smart Cards interface. As main computing module it uses a Z80180 processor, which can be programmed in C and assembler languages, in which It was implemented, besides the conventional digital control, the neural network. The fuzzy logic processing module use the Programmable Analog IC (PAIC) AL220 which can use up to 4 analog inputs and 4 analog outputs, 111 fuzzy variables, 50 rules that can be evaluated up to 500K rules/sec. The neural network used is a feed forward with 2 inner layers and back propagation was used as learning algorithm. To the hardware develop the PC/104 standard was used for physical dimensions and control signals, giving the possibility of integrate any kind and quantity of peripheral drivers that the system could require. The main advantages of this control system are its high response velocity, proved efficiency, hardware versatility, software flexibility, high learning capabilities and the fact that it is a system easy to adapt to different industrial processes without any kind of hardware modifications. Keywords: Fuzzy Logic, Fuzzy Hardware, AL220, Neural Networks, feed forward, back propagation, Hybrid Control System, parallel processing, PC/104, Smart Card, Analog Voice Recording, Power Generation Control.

xv

TABLA DE CONTENIDO
INTRODUCCIN ........................................................................................................... 1 1. MARCO TERICO ................................................................................................... 3 1.1 FUZZY LOGIC ........................................................................................................ 3 1.1.1 Generalidades....................................................................................................... 3 1.1.2 Aplicaciones .......................................................................................................... 4 1.1.3 Antecedentes ........................................................................................................ 4 1.1.4 Historia .................................................................................................................. 5 1.1.5 Sistemas de Control Fuzzy................................................................................... 6 1.1.6 Caractersticas ..................................................................................................... 6 1.1.6.1 Diferencias entre los sistemas lgicos tradicionales y la fuzzy logic................ 8 1.1.6.2 Modos principales de razonamiento fuzzy ........................................................ 8 1.1.6.3 El valor de los sistemas fuzzy ........................................................................... 9 1.1.6.4 Ventajas y desventajas de la fuzzy logic y el control fuzzy ............................. 9 1.1.7 Conceptos ........................................................................................................... 10 1.1.7.1 El universo del discurso................................................................................... 10 1.1.7.2 Concepto de sintagma..................................................................................... 10 1.1.7.3 Test-score (prueba-calificacin) ...................................................................... 10 1.1.7.4 El concepto de variable lingstica .................................................................. 11 1.1.7.5 Definicin de variable fuzzy............................................................................. 11 1.1.7.7 Sistema fuzzy y la incertidumbre..................................................................... 12 1.1.7.8 Particiones fuzzy.............................................................................................. 12 1.1.7.9 Adecuaciones .................................................................................................. 14 1.1.7.11 Inferencia ....................................................................................................... 16 1.1.8 Fuzzy Hardware................................................................................................. 18 1.1.8.1 Motivos para utilizar tcnicas fuzzy en el control de procesos ...................... 20 1.1.8.2 Reglas fuzzy .................................................................................................... 20 1.1.8.3 Condiciones ..................................................................................................... 21 1.1.8.4 Acciones........................................................................................................... 21 1.1.9 Controlador Fuzzy Logic.................................................................................... 22 1.1.9.1 Estructura del controlador fuzzy ..................................................................... 24 1.1.9.2 Procesamiento de informacin fuzzy .............................................................. 27 1.1.9.3 Arquitectura y tecnologa de procesadores fuzzy ........................................... 28 1.1.9.4. Modalidades de implementacin.................................................................... 29 1.1.9.5 Diseo del controlador con fuzzy logic........................................................... 30 1.1.9.7 Sintonizacin de parmetros .......................................................................... 31 1.1.9.8 Revisin de las reglas de control.................................................................... 31 1.1.10 Sistemas fuzzy como mquina de inferencia................................................... 33 1.1.11 Sistemas Fuzzy como funciones de aproximacin.......................................... 33 1.1.12 El papel de un sistema fuzzy en el control....................................................... 34 1.1.14 Control fuzzy basado en el aprendizaje ........................................................... 36

viii

1.1.15 Sistemas basados en Reglas Fuzzy con Aplicacin en Procesadores de Propsito General ........................................................................................................ 36 1.2 REDES NEURONALES ....................................................................................... 38 1.2.1 Panorama Histrico ............................................................................................ 39 1.2.2 Caractersticas .................................................................................................... 40 1.2.2.1 Ventajas de las redes neuronales .................................................................. 40 1.2.2.2 Desventajas de redes neuronales................................................................... 41 1.2.3 Redes neuronales e inteligencia artificial ........................................................... 41 1.2.3.1 Procesamiento Numrico ................................................................................ 42 1.2.3.2 Procesamiento Simblico ................................................................................ 42 1.2.4 Fundamentos de las Redes Neuronales............................................................ 43 1.2.4.1 Modelo Biolgico............................................................................................. 43 1.2.4.2 Estructura de la neurona ................................................................................ 44 1.2.4.3 Naturaleza bioelctrica de la neurona............................................................ 44 1.2.5 La Neurona Artificial............................................................................................ 45 1.2.5.1 Elementos de una neurona artificial ................................................................ 46 1.2.5.2 Estructura de una red neuronal artificial......................................................... 46 1.2.5.3 Estado de Activacin ....................................................................................... 47 1.2.5.4 Funcin de Salida o de Transferencia............................................................. 47 1.2.5.5 Conexiones entre Neuronas............................................................................ 49 1.2.5.6 Funcin o Regla de Activacin ........................................................................ 49 1.2.6 Arquitecturas ....................................................................................................... 50 1.2.6.1 Tipos de redes ms importantes ..................................................................... 50 1.2.6.2 Topologa de las redes neuronales ................................................................. 52 1.2.6.3 Perceptrn........................................................................................................ 54 1.2.6.4 Implemetacin de las redes neuronales ........................................................ 56 1.2.7 Aprendizaje Redes Neuronales Artificiales ........................................................ 57 1.2.7.1 Reglas de aprendizaje ..................................................................................... 57 1.2.7.2 Mecanismo de Aprendizaje ............................................................................. 58 1.2.7.3 Redes Neuronales con aprendizaje supervisado ........................................... 58 1.2.7.4 Redes con aprendizaje no supervisado .......................................................... 59 1.2.8 Aplicabilidad de las Redes Neuronales Artificial RNA ....................................... 60 1.2.8.1 Redes Neuronales Artificiales en Problemas de Prediccin .......................... 60 1.2.8.2 Modelo de red .................................................................................................. 60 1.2.8.3 Mtodo iterativo para el ajuste de la red ......................................................... 62 1.2.8.4 Algoritmo .......................................................................................................... 64 1.3 RED HBRIDA NEURO-FUZZY (RHND) .............................................................. 66 1.3.1 Justificacin de la fuzzy logic y las redes neuronales........................................ 67 1.3.2 Comparacin entre las caractersticas de las redes neuronales y la fuzzy logic ...................................................................................................................................... 68 1.3.3 Ventajas y desventajas del uso de RHND para controles fuzzy ...................... 69 1.3.4 Pasos de desarrollo de sistemas NeuroFuzzy................................................... 69 1.3.5 Entrenamiento de sistemas Fuzzy Logic con NeuroFuzzy............................... 70

ix

1.3.5.1 Generacin neuronal de reglas de control fuzzy ........................................... 71 1.3.5.2 Ajuste neuronal de funciones de pertenencia fuzzy ...................................... 72 1.3.5.3 Diseo de controladores Neurofuzzy anlogos .............................................. 72 1.3.5.4 Estrategias de Programacin .......................................................................... 73 2. SCINEF ................................................................................................................... 74 2.1 MDULOS............................................................................................................. 74 2.1.1 Mainboard ........................................................................................................... 76 2.1.1.1 Core Module .................................................................................................... 76 2.1.1.2 PIC Slave Processor........................................................................................ 77 2.1.1.3 Basic I/O.......................................................................................................... 79 2.1.1.4 Perifricos ........................................................................................................ 80 2.1.2 Microcontrolador fuzzy logic .............................................................................. 81 2.1.3 Mdulos AD y DA............................................................................................... 83 2.1.4 Comunicaciones ................................................................................................ 83 2.1.5 Digital I/O............................................................................................................ 84 2.1.6 Driver de alta corriente........................................................................................ 85 2.1.7 Interface Smart Card........................................................................................... 85 2.1.8 Interface Mdulo de voz ..................................................................................... 86 2.2 FUZZY LOGIC ..................................................................................................... 86 2.2.1 Microcontrolador Fuzzy AL220.......................................................................... 86 2.2.1.1 Caractersticas ................................................................................................. 87 2.2.2 INSiGTH IIe........................................................................................................ 87 2.2.2.1 Caractersticas ................................................................................................ 87 2.2.3 Proceso de diseo ............................................................................................. 91 2.3 RED NEURONAL ................................................................................................. 92 2.4 COMPONENTES ELECTRNICOS .................................................................... 94 2.4.1 SP720 ................................................................................................................. 94 2.4.2 MAX8215 ............................................................................................................ 95 2.4.3 NE590 ................................................................................................................. 96 2.4.4 MC14052/ MC14053........................................................................................... 98 2.4.5 MC14052............................................................................................................. 99 2.4.6 MC14053........................................................................................................... 100 2.4.7 MC14551........................................................................................................... 101 2.4.8 MC74ABT245 ................................................................................................... 102 2.4.9 MC74ABT373 ................................................................................................... 103 2.4.10 MC74HC374 ................................................................................................... 104 2.4.11 MC74ABT640 ................................................................................................. 105 2.4.12 SPG8640BN ................................................................................................... 106 2.4.13 MX7228........................................................................................................... 107 2.4.14 MAX487E........................................................................................................ 108 2.4.15 MAX202E........................................................................................................ 109 2.4.16 MAX161 .......................................................................................................... 110 2.4.17 MX584............................................................................................................. 111

2.4.18 1.5KE6.8 THRU 1.5KE440CA........................................................................ 112 2.4.19 PALCE22V10.................................................................................................. 113 2.4.20 MC74HC138 ................................................................................................... 113 2.4.21 82C55A ........................................................................................................... 115 2.4.22 HD66100F....................................................................................................... 116 2.4.23 485SDA12....................................................................................................... 116 2.4.24 RTC-72423 ..................................................................................................... 117 2.4.25 MAX691A........................................................................................................ 118 2.4.26 ISD2500 Series............................................................................................... 119 3. APLICACIN DEL CONTROLADOR FUZZY LOGIC......................................... 121 4. FUZZY HARDWARE ............................................................................................. 124 4.1 SISTEMAS DE DESARROLLO PARA FUZZY LOGIC ...................................... 124 4.1.2 Togai InfraLogic - FCA Technology.................................................................. 124 4.1.2.1 VY86C500 FCA Core Library ........................................................................ 125 4.1.2.2 VY86C570...................................................................................................... 125 4.1.2.3 Precio ............................................................................................................. 126 4.1.3 GMD .................................................................................................................. 126 4.1.3.1 Fuzzy Set 001 ................................................................................................ 126 4.1.3.2 Fuzzy Set 002 ................................................................................................ 127 4.1.4 SGS-THOMSON MICROELECTRONICS ....................................................... 127 4.1.4.1 W.A.R.P. 1.1 (WEIGHT Associative Rule Processor) .................................. 128 4.1.4.2 W.A.R.P. 2.0 (WEIGHT Associative Rule Processor) .................................. 128 4.1.4.3 Precio ............................................................................................................. 129 5. CONCLUSIONES ................................................................................................. 130 BIBLIOGRAFIA .......................................................................................................... 133 ANEXOS .................................................................................................................... 135

xi

TABLA DE FIGURAS

Figura 1. Niveles Crisp Sets y Fuzzy Sets ................................................................... 7 Figura 2. Comparacin grfica entre Fuzzy Sets y Crisp Sets ..................................... 7 Figura 3. Disyuncin entre conjuntos fuzzy................................................................. 13 Figura 4. Subconjuntos obtenidos por un - corte de la particin fuzzy.................... 13 Figura 5. Particin fuzzy normalizada ......................................................................... 14 Figura 6. Construccin de la adecuacin a partir de sus adecuaciones marginales . 15 Figura 7. Tipos de funciones de membresa............................................................... 24 Figura 8. Estructura interna de un controlador fuzzy .................................................. 25 Figura 9. a) Procesado de una rgla. b) Conclusin de un conjunto de reglas y defuzzificacin ...................................................................................................... 28 Figura 10. Divisin del proceso en unidades funcionales........................................... 29 Figura 11. Esquema bsico de arquitectura................................................................ 30 Figura 12. Procesamiento de diseo del controlador fuzzy........................................ 31 Figura 13. Funcionamiento de un sistema de control fuzzy ....................................... 32 Figura 14. Sistema Fuzzy como mquina de Inferencia............................................. 33 Figura 15. Proceso de fuzzificacin y defuzzificacin................................................. 34 Figura 16. Sistema fuzzy de control directo ................................................................ 34 Figura 17. Control fuzzy basado en modelamiento .................................................... 35 Figura 18. Control fuzzy basado en el conocimiento .................................................. 36 Figura 19. Esquema de la neurona de McCulloch-Pitts.............................................. 39 Figura 20. Situacin de las redes neuronales en el campo de la inteligencia artificial .............................................................................................................................. 42 Figura 21. Forma general de una neurona.................................................................. 44 Figura 22. Entradas y salidas de una neurona Uj ....................................................... 45 Figura 23. Funcin de Transferencia Escaln ............................................................ 48 Figura 24. Funciones de activacin mixta ................................................................... 48 Figura 25. Funciones de Activacin Continuas (Sigmoides) ...................................... 48 Figura 26. Funcin de Transferencia Gaussiana ........................................................ 49 Figura 27. Esquema de una neurona y el modelo simblico del perceptrn ............. 55 Figura 28. Arquitectura del perceptrn, red feedforward, con una sola capa ............ 55 Figura 29. El perceptrn multicapa, red feedforward completamente conexa con una capa oculta ........................................................................................................... 56 Figura 30. Red Neuronal Multicapa............................................................................. 61 Figura 31. Estructura general de un sistema Neuro-Fuzzy. ....................................... 67

xii

Figura 32. Red con neuronas fuzzy............................................................................. 68 Figura 33. Tecnologa Neurofuzzy .............................................................................. 71 Figura 34. Diagrama de bloques SCINEF (hardware) ............................................... 75 Figura 35. Diagrama de Bloques Mainboard .............................................................. 76 Figura 36. Diagrama de bloques CORE MODULE CM7110..................................... 77 Figura 37. Diagrama de bloques PIC16C74A............................................................. 79 Figura 38. Diagrama de bloques perifricos ............................................................... 81 Figura 39. Diagrama de bloques Controlador Fuzzy Logic ........................................ 82 Figura 40. Diagrama de bloques Mdulo de Comunicaciones................................... 84 Figura 41. Diagrama de bloques Mdulo I/O Digitales ............................................... 85 Figura 42. Diagrama de bloques Driver Alta Corriente ............................................... 85 Figura 43. Diagrama de bloques Smart Card Interface .............................................. 85 Figura 44. Diagrama de bloques mdulo de voz ....................................................... 86 Figura 45. Diagrama de bloques de AL220 ................................................................ 87 Figura 46. Diagrama esquemtico de entradas y salidas AL220 ............................... 87 Figura 47. Funcin de membresa con centro y ancho fijo......................................... 88 Figura 48. Funcin de membresa con ancho fijo y centro variable ........................... 88 Figura 49. Funcin de membresa con centro fijo y ancho variable ........................... 88 Figura 50. Funcin de membresa con centro y ancho variable................................. 89 Figura 51. Tipo de funcin simtrica ........................................................................... 89 Figura 52. Tipo de funcin izquierda ........................................................................... 89 Figura 53. Tipo de funcin derecha............................................................................. 90 Figura 54. Mtodos de salida ...................................................................................... 90 Figura 55. On-line Back Propagation .......................................................................... 92 Figura 56. Red Neuronal.............................................................................................. 93 Figura 57. Diagrama funcional SP720 ........................................................................ 95 Figura 58. Diagrama de bloques MAX8215 ................................................................ 96 Figura 59. Diagrama de bloques NE590 ..................................................................... 97 Figura 60. Esquemtico MC14052 y MC14053 ......................................................... 98 Figura 61. Esquemtico interruptor MC14052 ............................................................ 99 Figura 62. Diagrama de bloques MC14052 ................................................................ 99 Figura 63. Esquemtico interruptor MC14053 .......................................................... 100 Figura 64. Diagrama de bloques MC14053 .............................................................. 100 Figura 65. Diagrama de bloques MC14551 .............................................................. 101 Figura 66. Diagrama de bloques MC74ABT245 ....................................................... 102 Figura 67. Diagrama lgico expandido MC74ABT373 ............................................. 103 Figura 68. Diagrama lgico expandido MC74HC374 ............................................... 104 Figura 69. Diagrama de bloques MC74ABT640 ....................................................... 106 Figura 70. Diagrama de bloques SPG8640/50 ......................................................... 107 Figura 71. Diagrama de bloques MX7228 ................................................................ 108 Figura 72. Configuracin de pines y circuito tpico de operacin MAX487E............ 109 Figura 73. Circuito tpico de operacin...................................................................... 110 Figura 74. Diagrama funcional MAX161 ................................................................... 111

xiii

Figura 75. Diagrama fucional MX584........................................................................ 112 Figura 76. Diagrama de bloques PALCE22V10 ....................................................... 113 Figura 77. Diagrama lgico expandido MC74HC138 ............................................... 114 Figura 78. Diagrama de bloques 82C55 ................................................................... 115 Figura 79. Diagrama de bloques HD66100F ............................................................ 116 Figura 80. Mdulo B&B 485SDA12........................................................................... 117 Figura 81. Diagrama de bloques RTC-72423 ........................................................... 118 Figura 82. Diagrama de bloques MAX691A.............................................................. 119 Figura 83. Diagrama de bloques ISD2500................................................................ 120 Figura 84. Generador................................................................................................ 121 Figura 85. Respuesta del controlador fuzzy AL220 ................................................. 123 Figura 86. Aplicaciones FCA ..................................................................................... 124 Figura 87. Diagrama de bloques VY86C500 ............................................................ 125 Figura 88. Circuito Integrado FCA............................................................................. 126 Figura 89. Diagrama de bloques Fuzzy Set 002....................................................... 127 Figura 90. Diagrama de bloques W.A.R.P. 1.1 ......................................................... 128 Figura 91. Diagrama de bloques W.A.R.P. 2.0 ......................................................... 129

xiv

INTRODUCCIN

La fuzzy logic deriva su nombre de las primera publicaciones en las cuales fue formalmente presentada. Este hecho ocurri en los Estados Unidos alrededor del ao de 1965. Realmente un nombre ms acorde con su concepto sera Lgica Continua ya que el trmino fuzzy tiene una connotacin bastante negativa tanto en ingls como en su errnea traduccin como borroso en espaol. Su creador y principal defensor, L. A. Zadeh1 junto con H. Zimmermann2 sentaron las bases de una tecnologa que llegara a su madurez en Europa con E. Mamdani3 con su control para un generador de vapor, y que finalmente sera comercializada masivamente en el Japn con aplicaciones como el tratamiento de agua y sistemas de metro. En 1994, por ejemplo, Japn exporto productos por un total de 35.000 millones de dlares en los cuales se utilizaba fuzzy logic o redes neuronales4. Unos de los aspectos ms atractivos de la fuzzy logic es que se evita la necesidad de rigurosos modelos matemticos y se reemplazan por descripciones lingsticas autoexplicatorias de la estrategia de control. Por otra parte, la fuzzy logic no es ms que una extensin de la lgica convencional; la clave de su xito es la inteligente combinacin de esta con las tcnicas de control tradicional. Por otra parte, la industria actual necesita controlar los procesos en forma eficiente y que no dependan de operarios humanos expertos sino que las decisiones se tomen basndose en el comportamiento del sistema. Las Redes Neuronales y la Fuzzy Logic solucionan esta dependencia porque a partir de los datos recogidos y las acciones que realiza el operario, el sistema es entrenado para que ejecute el control aprendiendo de cada accin hasta alcanzar el punto de mayor eficiencia. Con este trabajo se implement una aplicacin de tipo industrial (control ptimo de un generador de potencia) con tecnologas de punta para el control de procesos como son las redes neuronales y la fuzzy logic complementando mtodos de control digital tradicionales ya que hasta el momento en nuestro pas, la mayora de los
1

ZADEH, L. A., Fuzzy Sets, Information and Control, Vol. 8, (1965), p. 338-353.

ZIMMERMANN, H. and Thole, U., On the Suitability of Minimum and Product Operators for the Interception of Fuzzy Sets, Fuzzy Sets and Systems, 2, p. 173-186. MAMDANI, E. H., Application of Fuzzy logic to Approximate Reasoning Using Linguistic Synthesis, IEEE Transactions on Computers, Vol. C-26, No. 12 . 1997. p. 1182-1191. VON ALTROCK, Constantin. Fuzzy Logic & Neurofuzzy Applications Explained. Englewood Cliffs: Prentice Hall, 1995. p. IX.
4 3

2 desarrollos en este campo han llegado slo hasta el nivel acadmico siendo raramente aplicadas a problemas concretos. En este proyecto el se complementa la utilizacin de un procesador fuzzy de alta velocidad ms una red neuronal para el ajuste de los parmetros del mismo con un controlador digital convencional obteniendo as un sistema de control perfectamente compatible y expandible con un amplia gama de aplicaciones. Por otro lado, no se busc slo cumplir los requerimientos de este proyecto al disear el controlador sino que se cre para ser flexible, verstil y completamente escalizable siendo posible reemplazar casi cualquier controlador industrial convencional como son los PLCs, maquinas de estados, controladores numricos, microporcesadores digitales, etc. El control fuzzy se realiza con un microcontrolador AL220 en paralelo con un procesador Z80180 que realiza el control digital y calcula el algoritmo de control de la red neuronal. El microcontrolador fuzzy dedicado puede funcionar, variable a variable, tanto para las entradas como para las salidas en modo preprocesador, postprocesador, coprocesador y/o stand-alone. La red neuronal se encarga del control adaptivo variando los parmetros que determinan la operacin del controlador fuzzy. El algoritmo neuronal tambin genera sus propias variables de control constituyndose en un controlador adicional de procesamiento paralelo en conjunto con el procesador fuzzy y el controlador digital convencional. El procesador Z180 utilizado como procesador host es programable en lenguajes C o ensamblador segn se prefiera, soportando tambin la mezcla de los dos. Adicionalmente se utiliza Multi-threaded Real Time Kernel Programming por medio de la cual se realiza la administracin de los distintos tipos de tareas que se le asignan al procesador; soporta adems procesamiento multitarea cooperativo y preemptive los cuales pueden ser utilizados simultneamente o por separado segn lo requiera la aplicacin. El cdigo utilizado en el Z180 puede ser cargado y depurado remotamente ya sea en lenguaje C o ensamblador y gracias al su memoria RAM respaldada por batera es posible cargar el programa en la controladora, desconectar el sistema y sin necesidad de programar la memoria EPROM, llevar la aplicacin a una localidad remota y realizar las pruebas necesarias. Este sistema permite la reprogramacin completa y en tiempo real de todos los parmetros de la red neuronal por diferentes medios como son las tarjetas inteligentes, auto aprendizaje, programacin remota va RS232/485/Modem o por entrada directa del operario. En el caso del microcontrolador fuzzy AL220, el cual posee una memoria EEPROM, se cuenta con un sistema simulador, emulador y programador que puede depurar el programa in situ y en tiempo real desde una interface paralela a un computador porttil haciendo que el desarrollo de aplicaciones fuzzy logic sea bastante verstil y que estas se realicen con gran facilidad, confiabilidad y eficiencia.

1. MARCO TERICO

1.1 FUZZY LOGIC La fuzzy logic es una tcnica novedosa que mejora los sistemas de diseo convencionales con especializacin en ingeniera. Puede ser considerada como una extensin de la lgica clsica, proporciona un marco conceptual adecuado para soportar el problema de la representacin del conocimiento en un entorno de incertidumbre e imprecisin. La representacin del conocimiento en fuzzy logic se basa en semnticas test-score (prueba-calificacin). En estas semnticas, se interpreta una proposicin como un sistema de confinamiento elstico, y el razonamiento se visualiza como la propagacin del confinamiento elstico. 5 Usando fuzzy logic se puede evadir el uso del modelamiento matemtico y los factores complejos de su sistema pueden ser remplazados por descripciones lingsticas autoexplicatorias de la estrategia de control, permitiendo representar importantes piezas de razonamiento comn y calcular su factor de certeza. Uno de los objetivos bsicos de la fuzzy logic es proporcionar un marco computacional para la representacin del conocimiento e inferencia en un entorno de incertidumbre e imprecisin. En tales entornos, es efectiva cuando no se necesita que las soluciones sean precisas y/o se acepta tener una validez disposicional en lugar de categrica para la conclusin. La importancia de la fuzzy logic se deriva del hecho de que existen muchas aplicaciones en el mundo real que cumplen estas condiciones, especialmente en el campo de los sistemas basados en el conocimiento para la toma de decisiones y control. 6 1.1.1 Generalidades Si la lgica es la ciencia de los principios formales y normativos del razonamiento, la fuzzy logic se refiere a los principios formales del razonamiento aproximado, con el razonamiento preciso considerado como caso lmite. El sistema fuzzy provee simplicidad notable que permite encontrar conclusiones definitivas de informacin indefinida, vaga o imprecisa. En un sentido, la fuzzy logic
ZADEH, Lofty. En: Gutirrez R, Julio. Representacin del conocimiento en lgica borrosa. Aplicaciones de la lgica borrosa. Madrid: Consejo superior de Investigaciones cientficas, 1992. 51p. 6 ________.________ 71p.
5

4 se parece a las decisiones hechas por los humanos trabajando una mayor aproximacin de los datos y encontrar definiciones ms precisas, por lo tanto es til para resolver problemas con muchas aplicaciones integradas y procesamiento de informacin. En la lgica clsica se requiere un profundo entendimiento del sistema, ecuaciones exactas o valores numricos precisos. La fuzzy logic incorpora una alternativa de pensamiento, an cuando los sistemas complejos de modelamiento usan un nivel alto de abstraccin originado de su conocimiento y experiencia, adems permite expresar este conocimiento a travs de conceptos subjetivos como muy caliente. 1.1.2 Aplicaciones Esta tecnologa a estado ganado aceptacin durante los ltimos aos. Hay ms de dos mil productos comerciales disponibles que emplean fuzzy logic desde mquinas lavadoras de ropa hasta trenes de alta velocidad, prcticamente todas las aplicaciones pueden realizarse por su desempeo, simplicidad, bajo costo y productividad. Teniendo muchas aplicaciones en el rea de control. Algunas fabricas de la industria automotriz usan tecnologa fuzzy para mejorar la calidad y reducir el tiempo de desarrollo. En la industria aerospacial, la facilita la solucin de problemas en tiempo real usando aproximaciones simples. En electrnica, reduce el tiempo de fabricacin y ayuda a reducir costos. En la manufactura, esta demostrando ser de invariable mejoramiento en la eficiencia de los equipos y en el diagnostico del mal funcionamiento. Los sistemas fuzzy pueden ser usados para estimacin, toma de decisiones, y sistemas de control mecnico tal como en sistemas de aire acondicionado, control automovilstico y an casas inteligentes, como tambin en el control de procesos industriales y patrn en otras aplicaciones. 1.1.3 Antecedentes La lgica Crisp se desarrollo en el siglo cuarto a.C. El Filosofo griego Aristteles tenia ideas de este trabajo a travs sus antecesores Pitagoras y sus seguidores, quienes creyeron que era esencialmente numrico y que el universo se puede definir como relaciones numricas. Su trabajo es acreditado tradicionalmente como el inicio de la fundamentacin geomtrica y la msica occidental. Aristteles extendi la creencia pitagrica de la forma que la gente piensa y toma decisiones aunado a la precisin de la matemtica y la bsqueda de la verdad. En el siglo diez D.C., la lgica de Aristteles era la base del pensamiento europeo y del Oriente Medio. Esta persista por dos razones, simplifica el pensamiento acerca de problemas y hace la certeza o verdad ms fcil de probar y aceptar. Los conjuntos fuzzy se crean como intento de superar la rigidez de la teora clsica, surgen del conocimiento comn a clasificar objetos de un universo conocido que responden a determinada propiedad de manera que slo la verifican o no la verifican,

5 sino que la verifican parcialmente en muchos casos; propiedades que se predican, de los objetos en cuestin, en cierto grado. El aspecto central de los sistemas de fuzzy logic, a diferencia de la lgica clsica es que, tienen la capacidad de modelar modos de razonamiento no preciso, que juegan un papel esencial en la notable habilidad humana de tomar decisiones racionales en entornos de incertidumbre e imprecisin. La fuzzy logic permite representar el conocimiento comn en un lenguaje matemtico especial (el de la teora de los subconjuntos fuzzy y las distribuciones de posibilidad a ellos asociadas) y, a travs de un clculo lgico que flexibiliza la nocin operativa de verdad, vista como un predicado singular, permite efectuar inferencias aproximadas a partir de patrones de razonamiento que reproducen aceptablemente los modos usuales de razonamiento que son, mayormente, de tipo lingstico cualitativo y no cuantitativos. 7 1.1.4 Historia El fuzzy set fue introducido originalmente en 1965 siendo publicado el primer documento sobre este tema por Lotfi Zadeh. An cuando la motivacin original era la de ayudar a manejar la gran imprecisin en el mundo, los primeros practicantes se dedicaron principalmente a escribir teora. Muchos de estos primeros escritos se consagraron a la fundamentacin bsica y aplicaciones potenciales. En la dcada de los sesenta, Lotfi Zadeh invento la fuzzy logic, la cual combino los conceptos de lgica crisp y los conjuntos Lukasiewicz definiendo los grados de membresa. Uno de los principales discernimientos de Zadeh fue que las matemticas pueden ser usadas para relacionar el lenguaje y la inteligencia humana. Muchos de estos conceptos son definidos mejor por palabras que por la matemtica, estos conjuntos de expresiones fuzzy proveen una disciplina que construye mejores modelos de la realidad. Daniel Schwartz, investigador Norteamericano en fuzzy logic, organiz varias palabras fuzzy bajo algunos ttulos. Quantificacin trmino que incluye todo, la mayora, muchos, la mitad, pocos y ninguno. Usualmente incluye siempre, frecuentemente, a menudo, ocasionalmente, raramente y nunca. Posibilidad trminos como ciertamente, probable, incierto, diferente y no cierto. Inicialmente se hacia una fuerte distincin entre fuzzy logic y la teora probabilstica. Como se entiende ahora, la teora fuzzy y la probabilidad son diferentes tipos de incertidumbre. El desarrollo de esta disciplina ha sido manejada con xito, especialmente en Japn, la fuzzy logic se usa para el desarrollo de controles
TRILLAS, Enric. La lgica borrosa. Aplicaciones de la lgica borrosa. Madrid: Consejo superior de Investigaciones cientficas, 1992. 1p.
7

6 simples. Con gran xito mundial se ha usado esta tecnologa para la construccin de modelos complejos de sistemas en ingeniera. La Asociacin Internacional de Sistemas Fuzzy (IFSA) fue establecida en 1984 como la primera organizacin para los tericos y practicantes de la fuzzy logic. IFSA realiza simposios todos los aos a partir de su creacin. Por esta misma poca, se realizaron muchas aplicaciones en Japn particularmente en el campo de control. En 1989, la Sociedad de Teora Fuzzy y Sistemas (SOFT) fue fundada y los Laboratorios Internacionales de Ingeniera Fuzzy (LIFE) fueron inaugurados en Japn. 1.1.5 Sistemas de Control Fuzzy La primera aplicacin industrial data de 1970 en Europa, el ingeniero Britnico Ebrahim Mamdani hizo el primer conjunto fuzzy, desarrollo un sistema de control automtico usando fuzzy logic para controlar una mquina de vapor, ya que el mando no se poda hacer con tcnicas convencionales se utiliz la experiencia del operador. A finales de los setenta, dos ingenieros Daneses, Lauritz Peter Holmblad y Jens-Jurgen Ostergaard, desarrollaron el primer sistema de control fuzzy comercial para un horno de cemento, ellos son los creadores del horno de cal de Suecia. El sistema fuzzy ms espectacular funciona hoy en el metro en la ciudad japonesa de Sendai. Desde 1987, los sistemas fuzzy se utilizan para trenes que rueden rpidamente a lo largo de la ruta, con frenado y aceleracin suave, deslizarse dentro de las estaciones, precisin al parar, sin perder un segundo o incomodar a los pasajeros. Los grandes productos japoneses como Matsushita y Nissan tambin estn optando por utilizar fuzzy logic en el desarrollo de sus productos. Nissan la utiliza para la transmisin automtica y frenos antibloqueo en sus carros. Sony la utiliza para ajustar el contraste, brillo, intensidad y color en sus equipos. Las industrias Mitsubishi disearon un sistema de control fuzzy para elevadores, mejorando la eficiencia en el manejo de la multitud que desea subir al elevador al mismo tiempo. En 1994, Japn exporto productos con un valor total de US$ 35.000 millones que utilizaban fuzzy logic o Redes Neuronales. 1.1.6 Caractersticas El mundo real esta subiendo y bajando, esta en continuo movimiento y cambio, esta lleno de sorpresas. Es decir se comporta en una forma desordenada (fuzzy), las tcnicas de fuzzy logic manejan con xito estas situaciones reales. Crisp sets maneja solo 0s y 1s, Fuzzy sets maneja todos los valores entre 0 y 1.

CRISP
No Si

FUZZY
No Espordicamente Poco Alguno Muchos Mayora Si

Figura 1. Niveles Crisp Sets y Fuzzy Sets

Bajo

Medio

Alto

Bajo

Medio

Alto

Figura 2. Comparacin grfica entre Fuzzy Sets y Crisp Sets8

Las caractersticas de la teora fuzzy se pueden resumir as: Basado en palabras y no en nmeros Cambios no lineales Anlogo (ambiguo) y no digital (si/no) Algunas caractersticas estn relacionadas son: En la fuzzy logic, el razonamiento exacto se visualiza como un caso lmite del razonamiento aproximado. En la fuzzy logic, todo es cuestin de grado Cualquier sistema lgico puede hacerse fuzzy En la fuzzy logic, el conocimiento se interpreta como un conjunto de acotaciones fuzzy elsticas o similar, sobre un conjunto de variables, la inferencia se visualiza como la propagacin de acotaciones elsticas
HILERA, Jos y MARTNEZ, Vctor. aplicaciones. 1995. p.323.
8

Redes neuronales artificiales. Fundamento, modelos y

1.1.6.1 Diferencias entre los sistemas lgicos tradicionales y la fuzzy logic Verdad: En sistemas lgicos bivalentes, la asercin de verdad puede tomar solamente dos valores: verdadero o falso. En sistemas multivaluados, la verdad de una preposicin puede ser un elemento de: a) un conjunto infinito; b) un intervalo como [0,1]; o c) un lgebra de Boole. En la fuzzy logic, el valor de verdad de una proposicin puede ser un subconjunto fuzzy de un conjunto parcialmente ordenado, pero generalmente se asume que es un subconjunto del intervalo [0,1]. Los llamados valores lingsticos de verdad expresados como verdadero, muy verdadero, no muy verdadero, etc., se interpretan como etiquetas de subconjuntos fuzzy del intervalo unidad. Predicado: En sistemas bivalentes, los predicados son ntidos, ej.: par, mayor que. En la fuzzy logic los predicados son fuzzy, ej.: alto, veloz. Modificadores de predicado: En sistemas clsicos el nico modificador de predicados es la negacin no. En la fuzzy logic, existe una variedad de modificadores de predicados que actan como separadores, ej.: muy, ms o menos, bastante. Cuantificadores: En los sistemas lgicos clsicos slo existen dos cuantificadores: universal y existencial. La fuzzy logic admite varios cuantificadores fuzzy, ej.: pocos, muchos, normalmente, etc.; los cuantificadores se interpretan como un nmero fuzzy o una proposicin fuzzy . Probabilidades: En los sistemas lgicos clsicos, la probabilidad se evala numricamente o por un intervalo. En fuzzy, existe la opcin adicional de emplear probabilidades fuzzy ms generales o lingsticas, por ejemplo: apropiado, inapropiado, alto, etc. Tales probabilidades se pueden interpretar como nmeros fuzzy que pueden ser manipulados mediante aritmtica fuzzy. Posibilidades: El concepto de posibilidad en fuzzy logic es gradual en vez de bivalente, las posibilidades pueden ser tratadas como variables lingsticas con valores tales como posible, casi imposible, etc. Tales valores se pueden interpretar como etiquetas de subconjuntos fuzzy. 9

1.1.6.2 Modos principales de razonamiento fuzzy 1) Razonamiento categrico: En este modo de razonamiento las premisas no contienen cuantificadores ni probabilidades fuzzy. 2) Razonamiento Silogstico: En contraste con el razonamiento categrico es el relativo a la inferencia a partir de premisas que contienen cuantificadores fuzzy. 3) Razonamiento disposicional: En el razonamiento disposicional las premisas son disposiciones, esto es, proposiciones que son preponderantemente ms que necesariamente siempre verdaderas. 4) Razonamiento cualitativo: En la fuzzy logic, el termino razonamiento cualitativo se refiere al modo de razonamiento en el que la relacin entrada-salida de un sistema se expresa como un conjunto de reglas if-then fuzzy en las que el antecedente y el
ZADEH, Lofty. En: Gutirrez R, Julio. Representacin del conocimiento en lgica borrosa. Aplicaciones de la lgica borrosa. Madrid: Consejo superior de Investigaciones cientficas, 1992. 54p.
9

9 consecuente involucran variables lingsticas. En este sentido, el razonamiento cualitativo en fuzzy logic guarda alguna similitud con el razonamiento cualitativo en Inteligencia Artificial (IA). Este tipo de razonamiento soportan muchas de las aplicaciones de fuzzy logic en las reas de control y anlisis de sistemas. 1.1.6.3 El valor de los sistemas fuzzy En estos cinco tipos de sistemas la fuzzificacin es necesaria o benfica: Sistemas complejos donde es difcil o imposible el modelamiento Sistemas controlados por humanos expertos Sistemas con entradas y salidas complejas y continuas Sistemas que requieren del uso de la observacin humana de las entradas o se basan en reglas Sistemas con naturaleza indefinida, como esos basados en las reglas sociales y de comportamiento.

1.1.6.4 Ventajas y desventajas de la fuzzy logic y el control fuzzy Ventajas Menor requerimiento de valores, reglas y decisiones Mayor cantidad de variables observadas son evaluadas Son usadas variables lingsticas y no numricas hacindolo similar al pensamiento humano Relaciona entradas a salidas, sin tener que entender todas las variables, permitiendo el diseo de un sistema ms exacto y estable Permite simplicidad en la solucin de problemas sencillos Es posible la rpida caracterizacin porque el diseador del sistema no necesita saber nada del trabajo antes de empezar Son ms baratos de hacer que un sistema tradicional porque son ms fciles de disear Son ms robustos Ellos simplifican la representacin y la adquisicin del conocimiento Unas pocas reglas comprenden grandes complejidades

Desventajas Es difcil desarrollar un modelo de un sistema fuzzy Aunque ellos son fciles de disear y se obtiene rpidamente un prototipo que un sistema de control convencional, los sistemas fuzzy requieren mayor simulacin y afinacin despus de que son puestos en operacin

10 Tal vez la mayor desventaja es la tendencia cultural en favor de la precisin matemtica o los sistemas crips y los modelos lineales de los sistemas de control Perdida de inteligibilidad en la base de conocimiento, cuando se deja libre para que un mdulo de aprendizaje la modifique Poca flexibilidad en los programas de implantacin de sistemas expertos, cuando se desea cambiar un valor particular en una regla Perdida de consistencia en la base de conocimiento cuando las reglas se modifican individualmente a la luz de una labor de aprendizaje

1.1.7 Conceptos Para poder entender los contenidos tericos de fuzzy logic es necesario conocer el significado de algunos conceptos. 1.1.7.1 El universo del discurso El universo de discurso U es un subconjunto EkU del espacio semntico generado por el espacio nuclear K.

1.1.7.2 Concepto de sintagma Un sintagma es una palabra sencilla (predicado vago) o un conjunto de dos palabras agrupadas de acuerdo con una regla gramatical. Generalmente, los sintagmas tienen la forma: nombre-adjetivo. 1.1.7.3 Test-score (prueba-calificacin) El test-score es el proceso de pregunta-calificacin conforme al cual pretendemos reflejar numricamente las intuiciones que un hablante tiene acerca del significado de un sintagma cualquiera. 10 Una idea bsica es que en un lenguaje natural se puede conceptuar como un conjunto de delimitaciones elsticas o, equivalente, fuzzy. La representacin del significado de una proposicin p mediante el uso de semntica test-score involucra las siguientes etapas. 1) Identificacin de las variables X1, ..., Xn cuyos valores estn delimitados en virtud de la proposicin. Generalmente, estas proposiciones son implcitas en p. 2) Identificacin de las delimitaciones C1,...,Cm que han sido inducidas por p. 3) Caracterizacin de cada delimitacin Ci describiendo un procedimiento de test que asocie una calificacin y que represente el grado de cumplimiento de Ci. Normalmente y se representa por un nmero en el intervalo [0,1]. Generalizando
SOBRINO, A. Lgica borrosa y lingstica. Aplicaciones de la lgica borrosa. Madrid: Consejo superior de Investigaciones cientficas, 1992. 95p.
10

11 ms, sin embargo, una calificacin se puede considerar como una distribucin de probabilidad/posibilidad sobre el intervalo unidad. 4) Agregacin de las calificaciones parciales i,...,m en un nmero ms pequeo de calificaciones 1,...,k que se representa en un vector general de calificaciones =(1,..,k). En la mayora de los casos =1, de forma que la calificacin global es un escalar. La semntica test-score se puede ver como una generalizacin de las semnticas verdadero-condicional, posible-universal y modelo-terico. En la semntica test-score, el examen de las delimitaciones impuestas por p se realiza sobre un conjunto de relaciones fuzzy que constituye una base de datos explicativa, o BE. Una suposicin bsica que se suele hacer sobre la base de datos explicativa es que est comprendida por relaciones cuyo significado es conocido por el objeto direccionado en el proceso de representacin del significado. De forma indirecta, entonces, los procedimientos de test y agregacin en una semntica testscore se puede considerar como una descripcin de un proceso mediante el cual el significado de p est compuesto por los significados de las relaciones que constituyen la base de datos explicativa. 11 1.1.7.4 El concepto de variable lingstica Concepto introducido por Zadeh. Se puede decir que una variable lingstica es, en fuzzy logic, el nombre de un predicado vago. Es un esquema lingstico que, en s, tiene un significado poco informativo, pero que es susceptible de ser rellenado por trminos que s lo tienen. El significado de cada una de las restricciones de una variable son subconjuntos fuzzy situados en un universo de discurso.12 1.1.7.5 Definicin de variable fuzzy Una variable est determinada por una tripleta < X,U,R (X)> donde, X es el nombre de una variable U es un universo de discurso R(X) es el rango (frontera) de la variable X,UR(X) Si R(X) hace que algn elemento de U tome un grado de valor, entonces X es fuzzy. En este caso se dice que, si u es un elemento de U, R(X) representa aquel tramo significativo de la variable que hace posible que u sea caracterizada, para algn grado, como elemento de U. Una variable lingstica es una clase especial de variable fuzzy.13 1.1.7.6 Toma de decisiones
ZADEH, Lofty. En: Gutirrez R, Julio. Representacin del conocimiento en lgica borrosa. Aplicaciones de la lgica borrosa. Madrid: Consejo superior de Investigaciones cientficas, 1992. 57p. SOBRINO, A. Lgica borrosa y lingstica. Aplicaciones de la lgica borrosa. Madrid: Consejo superior de Investigaciones cientficas, 1992. 100p
13 12 11

________.________ 95p

12

La toma de decisiones fuzzy es como una especialidad, el lenguaje orientado al sistema fuzzy hace uso del personal que maneja las decisiones en la adquisicin del instrumento. 1.1.7.7 Sistema fuzzy y la incertidumbre Dos mtodos extensos de incertidumbre son los ms usados la probabilstica y la no probabilstica. Probabilstica y tcnicas estadsticas son generalmente ampliadas por todas partes en las ciencias sociales y naturales y se hacen extensivas en la inteligencia artificial. Algunos mtodos no probabilsticos estn ideados para resolver el problema, en una forma inteligente, soluciones computarizadas a problemas del mundo real. Adicionalmente a la fuzzy logic, ellos incluyen lgica por defecto, basados en sistemas de aprobacin y razonamiento cualitativo. 1.1.7.7.1 Tipos de Incertidumbre Incertidumbre Estocstica se refiere a la incertidumbre hacia la ocurrencia de cierto evento. 1.1.7.7.1.2 Incertidumbre del lxico este tipo de incertidumbre esta relacionado con la vaguedad del lenguaje humano y la imprecisin inherente en muchas palabras humanas utilizadas para evaluar conceptos y de los cuales se derivan conclusiones que dependen de diferentes factores. Con la utilizacin de abstraccin y pensamiento en analogas algunas sentencias pueden describir contextos complejos que serian muy difciles de modelar con precisin matemtica. 1.1.7.7.1.3 Incertidumbre del modelamiento lingstico se manifiesta usando categoras subjetivas, es similar a la incertidumbre debida al lxico, tiene un mayor desempeo en la toma de decisiones. Aunque estas afirmaciones no tienen contenido cuantitativo las personas pueden usarlas con xito para evaluaciones complejas, en muchos casos la incertidumbre que queda en la definicin de las palabras agrega una cierta flexibilidad.

1.1.7.8 Particiones fuzzy Una particin estricta de un universo U es una coleccin de subconjuntos disjuntos cuya unin lo reconstruye, una particin fuzzy es una simple coleccin de subconjuntos fuzzy de un universo U. O una coleccin de funciones de pertenencia M={1(x)/i=1,..N; xU}.

13 La particin estricta o clasificacin natural, asociada a una particin fuzzy se construye a partir de la regla de la mxima pertenencia como se muestra en la siguiente figura.

Figura 3. Disyuncin entre conjuntos fuzzy14

C={Ci/i=1,..N;xCii(x)=max[k(x)/k=1,..N]} en el caso en que se encuentre ms de un k para un x dado, se levantar la ambigedad escogiendo el primero encontrado algortmicamente (regla FF: first found). Se llama M-sistema de nivel de partes de U a la coleccin de subconjuntos estrictos obtenidos por un - corte de la particin fuzzy, como se muestra en la figura.

Figura 4. Subconjuntos obtenidos por un - corte de la particin fuzzy15

14 G={Gi/i=1,..N; xGi i(x)> } Los subconjuntos G no son disjuntos, los valores tales que los Gi obtenidos sean disjuntos se llaman - cortes discriminantes, y el menor de ellos es el nivel de separacin de U por M. Dada una particin fuzzy M se le puede asociar una particin fuzzy normalizada N, haciendo: -(x)= mini[(x)] y +(x)=maxi[i(x)] y N={v(x)=( i(x)- -(x))/ (+(x)- -(x)); i=1..N; xU} La siguiente figura muestra una particin fuzzy normalizada y se puede constatar que N es una cobertura de U.

Figura 5. Particin fuzzy normalizada16

A cada clase de particin normalizada corresponde una zona de certidumbre o ncleo en la cual vi(x)=1 y que coincide con una clase de la clasificacin natural asociada.17 1.1.7.9 Adecuaciones La proposicin [x pertenece a Ci] puede ser considerada como la etiqueta lingstica representando la clase Ci, y pudiera ser remplazada por un elemento de un conjunto de etiquetas como {grande, pequeo, mediano, etc.} llamado paradigma lingstico . El valor vi(x) es el nivel de adecuacin de la etiqueta lingstica al elemento x del universo U. La adecuacin es una funcin de U sobre el intervalo unitario [0,1].
AGUILAR, Josep. Clasificacin borrosa. Aplicaciones de la lgica borrosa. Madrid: Consejo superior de Investigaciones cientficas, 1992. 122p. 15 ________.________ 123p.
16 14

________.________ 124p. ________.________

17

15

La adecuacin de cada una de las etiquetas lingsticas, o proposiciones que describen cada atributo de un objeto son llamadas adecuaciones marginales, y para una objeto definido y una clase dada, se forma el vector de las adecuaciones marginales el cual caracteriza la situacin del objeto con respecto a la clase. La adecuacin global del objeto a la clase se puede considerar como una combinacin de las adecuaciones marginales bajo la forma de una proposicin compuesta por las proposiciones marginales unidas por conectivos lgicos. En la siguiente figura se esquematiza la construccin de la adecuacin de un objeto a una clase a partir de sus adecuaciones marginales y con la ayuda de un conectivo de la fuzzy logic.
x1 x2 xi ... ... ... descriptor d 1 descriptor d 2 descriptor d 3 descriptor d i ... ... ... 1 2

. . .
descriptor d n

Adecuacin global a la clase C

xn

Vector objeto X

Vector Clase C

Vector de adecuaciones marginales

Figura 6. Construccin de la adecuacin a partir de sus adecuaciones marginales

Aqu podemos notar que si se escoge como conectivo el producto, se tiene entonces (X)=i=1,..ni(xi) y si se aplica una transformacin logartmica se tiene zi(xi)=log[i(xi)] y z(X)=log[(X)] y por lo tanto z(X)=i=1,..nzi(xi) con lo cual se obtiene una estructura similar a la de una neurona artificial (perceptrn), las funciones de descripcin zi. Los descriptores d de la clase pueden ser asimilados a los pesos sinpticos del perceptrn.18 1.1. 7.10 Mtodos de asignaciones numricas En la asignacin de grados de pertenencia efectuadas a partir de cualquier tipo de escala se pueden distinguir claramente algunos procedimientos tiles: a) Proceso individual o colectivo de asignacin directa. Es el caso de evaluaciones curriculares, valoraciones de precios...,etc. que pueden basarse en procesos ms o menos complicados pero que no se hacen explcitos en el momento de la asignacin.

18

________.________ 124p.

16 b) Procesos estadsticos o probabilsticos. Corresponden a los procedimientos clsicos frecuenciales de distribuciones (variable aleatoria, funcin de densidad, funcin de distribucin..., etc.). c) Proceso de anlisis de alternativas. Establece un modelo para tratar problemas de toma de decisiones, establecimiento de medidas, control, jerarquizacin y protocolos. Usa tcnicas matemticas esenciales las de lgebra lineal, valores propios de matrices, grafos, utilidades, etc. d) Procesos de medicin directa. Basados en magnitudes elementales o derivadas y en general objetivables.19 1.1.7.11 Inferencia En las llamadas reglas categricas de inferencia, se supone que las premisas se llaman en la forma cannica X es A o en la forma cannica condicional X es A si Y es B, donde A y B son predicados fuzzy ( o relaciones). En las reglas silogsticas, las premisas se expresan como Q As son Bs, donde Q es un cuantificador fuzzy y A y B son predicados fuzzy. Las reglas en cuestin son las siguientes: - Reglas categricas X,Y,Z,... variables que toman valores en U, V, W, ejemplo A pequeo, B mucho mayor - Regla de vinculacin X es A A B A(u) B(u), uU X es B - Regla de conjuncin X es A X es B_____________________ X es ABAB(u)= A(u) B(u) - Regla de disyuncin X es A X es B_____________________ X es ABAB(u)= A(u) B(u) - Regla de proyeccin (X,Y) es R______________ X es xRxR(u)=supvR(u,v) - Regla composicional (X,Y) es Rpredicado binario Y es B_________________________ X es A o R AoA(u)=supv(R(u,v) B(v)) - Regla de negacin no (X es A)___________
19

interseccin (conjuncin)

unin (disyuncin)

xR

proyeccin de R sobre U

ALSINA, Claudi. El clculo con subconjuntos borrosos. Aplicaciones de la lgica borrosa. Madrid: Consejo superior de Investigaciones cientficas, 1992. 25p.

17 X es A-A(u)=1-A(u) - Principio de extensin X es A_____ (X) es (A) A=1/u1 + 2/u2+...+n/un (A)= 1/(u1)+ 2/(u2)+...+ n/(un) La ventaja de la forma cannica es que pone de relieve que la inferencia en fuzzy logic se puede interpretar como una proporcin de delimitaciones elsticas, es til en las aplicaciones de la fuzzy logic al control y anlisis de decisin. Ya que en las aplicaciones de control las relaciones entrada-salida se expresan como colecciones de reglas if-then fuzzy. Si X e Y son variables de entrada y Z es la variable de salida, la relacin entre X,Y y Z se puede expresar como Z es C1 si X es A1 y Y es B1 Z es C2 si X es A2 y Y es B2 Z es Cn si X es An y Y es Bn donde Ci, Ai y Bi, =1,...,n son subconjuntos fuzzy de sus respectivos universos de discursos. Reglas silogsticas: Un silogismo fuzzy se puede sopesar como el esquema de inferencia Q1 As son Bs Q2 Cs son Ds Q3 Es son Fs en el que A,B,C,D,E, y F son predicados fuzzy interrelacionados y Q1, Q2 y Q3 son cuantificadores fuzzy. Las interrelaciones entre A,B,C,D,E y F proporcionan una base para la clasificacin de silogismos fuzzy. Los ms importantes son: a) Silogismos Interseccin/ Producto C=AB, E=A, F=CD b) Silogismo de Encadenamiento C=B, E=A, F=D c) Silogismo de Conjuncin del Consecuente A=C=E, F=BD d) Silogismo de Disyuncin del Consecuente A=C=E, F=BD e) Silogismo de Conjuncin del Antecedente B=D=F, E=AC f) Silogismo de Disyuncin del Antecedente B=D=F, E=AC

negacin

18 Uno de los problemas bsicos en razonamiento fuzzy silogstico es el siguiente: Dadas A,B,C,D,E y F, encontrar el cuantificador fuzzy maximalmente especfico Q3 tal que la proposicin Q3 Es son Fs est vinculada con las premisas. En el caso de a), b) y c), esto conduce a los siguientes silogismos: Silogismo Interseccin/ Producto: Q1As son Bs Q2(A y B)s son Cs______ (Q1 Q2) As son (B y C)s donde denota el producto de aritmtica fuzzy. Silogismo de encadenamiento: Q1As son Bs Q2Bs son Cs______ (Q1 Q2) As son Cs Este silogismo se puede visualizar como un caso particular del silogismo interseccin/ producto. Resulta de cuando BA y Q1 y Q2 son antecedentes, esto es, Q1 X Q1 y Q2X Q2, donde Q1 se debe interpretar como al menos Q1. Silogismo de conjuncin del consecuente: es un ejemplo de silogismo bsico que no se deriva del silogismo interseccin/ producto. Su conjuncin se puede expresar como sigue: Q1As son Bs Q2As son Cs____ QAs son (B y C)s Donde Q es un cuantificador fuzzy que viene definido por las inecuaciones O (Q1 Q2 1)QQ1 Q2 en las que , , y son las operaciones de (max), (min), + y - en aritmtica fuzzy.20

1.1.8 Fuzzy Hardware Las caractersticas de la fuzzy logic determinan que para obtener el rendimiento adecuado, es necesario disear sistemas hardware especficos para ello. Los sistemas basados en la fuzzy logic pueden ser procesados y ejecutados perfectamente mediante un computador digital convencional, pero la eficiencia del computador para procesar informacin fuzzy es escasa, de forma que se hace necesario el desarrollo de arquitecturas especificas. Importantes investigaciones muestran el creciente inters en la implementacin de ambos tipos de controladores fuzzy anlogos y digitales, as como en sistemas de fuzzy logic en general.
ZADEH, Lofty. En: Gutirrez R, Julio. Representacin del conocimiento en lgica borrosa. Aplicaciones de la lgica borrosa. Madrid: Consejo superior de Investigaciones cientficas, 1992. 170p.
20

19

La eficiencia de un procesador estar ligada a la proporcin entre la cantidad de informacin que se maneja y la cantidad de informacin necesaria para representarla. Antes de 1980 Takeshi Yamakawa haba desarrollado diseos de circuitos de fuzzy logic usando tecnologa bipolar y haciendo uso de componentes discretos. En 1984 y 1.985 Yamakara y Miki desarrollaron el primer Chip de fuzzy logic usando tecnologas PMOS y CMOS, por esta misma poca Togai Y Watanabe, desarrollaron el primer motor de inferencia de fuzzy logic en un Chip VLSI. Este chip ejecutaba 250000 reglas por segundo. Witold Pedrycs y C.Hart Poskar propusieron un procesador Fuzzy reconfigurable RPF para la implementacin de las operaciones AND, OR diferencia, dominio e inclusin. Las neuronas RPF contienen tres unidades principales : 1. El RPF. 2. La unidad de aprendizaje 3. y Una unidad de memoria local. Hartmut Surmann y Ansgar P. Ungering desarrollaron una tercera generacin de Hardware Fuzzy basado en tablas lookup, optimizacin en el proceso de reglas y modulacin de ancho de pulso digital, esto lo realizaron de la necesidad de tener soluciones rpidas durante la simulacin y optimizacin de sistemas Fuzzy (basados en reglas) usando redes neuronales o algoritmos genticos. En la siguiente tabla se resumen los distintos caminos para implementar sistemas de Fuzzy Logic.
Tabla 1. Modos de implementacin de Sistemas fuzzy

Implementacin Por Software

Ventajas Fcil de implementar, bajo costo Operaciones de Lgica Fcil Programacin Difusa en Microcdigo CPU soportada por Alta velocidad de coprocesador Fuzzy operaciones Fuzzy CPU incluyendo Se incrementa la alta operaciones difusas a velocidad de operacin Fuzzy. nivel de Hardware. Uso de un Motor de Altsima velocidad en inferencia difuso en operaciones Fuzzy. forma exclusiva. (Chip Facilidad de construir estructuras difusas. Fuzzy)

Desventajas Baja velocidad Operacin __________

de

El manejo de datos limita la velocidad de operacin __________

Alto Costo.

20 Se han tenido algunos inconvenientes en el uso del Software, porque se requiere una gran capacidad de procesamiento. Una solucin a este problema es la de adicionar instrucciones de fuzzy logic en microcdigo, otra solucin es la de tener un coprocesador, con esto se logra alta velocidad en las operaciones, pero la adquisicin de datos entre el CPU principal y el Coprocesador externo limita el tiempo total de la operacin. Claramente el camino ms fcil de implementar el procesamiento de fuzzy logic es el de usar un motor de inferencia, esto se puede conseguir bien sea mediante un modelo digital, un modelo anlogo. 1.1.8.1 Motivos para utilizar tcnicas fuzzy en el control de procesos Se llaman clsicos a aquellos sistemas de control que utilizan los algoritmos de control del tipo PID. En los casos que aparecen comportamientos que no son lineales o variaciones en el entorno, los sistemas PID no son directamente aplicables y ha sido necesario crear otros nuevos capaces de realizar el control en estas situaciones; estos mtodos reciben el nombre de adaptivos. Los mtodos adaptivos comparan la salida del proceso a controlar con otra ideal proporcionada por un modelo simulado, que se toma como referencia; el resultado de esta comparacin se utiliza para ajustar los parmetros del controlador, utilizando algoritmos que describen el comportamiento del sistema mediante leyes de tipo fsico o qumico, segn sea el proceso o utilizando mtodos de estimacin de parmetros. En ambos casos es indispensable obtener un modelo matemtico del sistema y de una gran capacidad de clculo. Los sistemas de control fuzzy permiten describir el conjunto de reglas que utilizara un ser humano que controlase el proceso, con toda la imprecisin que poseen los lenguajes naturales y, slo a partir de esas reglas, generan las acciones que realiza el control. Por esta razn, tambin se les denomina controladores lingsticos.21

1.1.8.2 Reglas fuzzy Un controlador fuzzy est formado por un dispositivo que, en un instante determinado, recibe seales de un proceso, la elabora utilizando un conjunto de reglas experimentales y proporciona seales de control la los actuadores; es decir, su resultado es un conjunto de magnitudes fsicas. Esta es la diferencia fundamental con los sistemas expertos (SE) que tambin utilizan tcnicas fuzzy: la naturaleza del resultado. Las acciones de control se definen mediante un conjunto de reglas del tipo:
GARCA ROSA, Ricardo. Tcnicas fuzzy en el control de procesos. Aplicaciones de la lgica borrosa. 1992 Madrid: Consejo superior de Investigaciones cientficas, 1992. 170p.
21

21

SI condiciones ENTONCES acciones Las condiciones siempre son expresiones lgicas que relacionan variables fuzzy. Las acciones pueden ser de dos tipos: expresiones analticas o expresiones fuzzy.22 1.1.8.3 Condiciones Las variables fsicas descritas en las reglas pueden ser tanto discretas como continuas y a cada una de ellas se ha de asociar un conjunto de variables fuzzy que representan los calificativos utilizados; la semntica de estas variables estn determinadas por su funcin de pertenencia (). Cuando las variables fsicas son discretas, las funciones de pertenencia de las lingsticas se definen mediante tablas y, cuando son continuas las variables fsicas, sus lingsticas asociadas toman las formas clsicas de trapecios, tringulos o campanas gaussianas. Las expresiones que configuran las condiciones de las reglas utilizan la fuzzy logic y proporcionan una funcin que describe la expresin; los operadores lgicos que se utilizan en la prctica son slo tres: y o -, con su semntica usual: -A(x)=1-A(x) AoB(x)= 1-max(A(x), B(x)) AyB(x)= 1-min (A(x), B(x)) = 1-A(x) X B(x)) El valor que toma la expresin asociada a los valores en un instante determinado de las magnitudes fsicas se denomina peso de la regla, e indica la cuanta con la que debe participar esta regla en el control a realizar. 1.1.8.4 Acciones El conjunto de las acciones a realizar est definido por el de las partes de la derecha de las reglas; cada una de stas realizar una aportacin al control global que ser funcin de su peso. En el caso de dos variables fsicas de entrada (x1,x2) y una sola de salida (y) que ha de ser controlada; y sean las reglas que describen las acciones de control: regla 1: SI (x1 es A11) Y (x2 es A12) ENTONCES y ser B1 regla 2: SI (x1 es A21) Y (x2 es A22) ENTONCES y ser B2 regla 3: SI (x1 es A31) Y (x2 es A32) ENTONCES y ser B3 donde Aij y Bi son variables lingsticas asociadas a xi y respectivamente. Si en un instante en estudio el valor de las tres variables de entrada es (x1o, x2o, x3o), el problema consiste en determinar cul ha de ser el valor de la variable de salida
22

________.________

22 (yo). El peso (w) de cada una de las reglas puede ser calculado con uno de los mtodos apuntados anteriormente para la funcin Y, el mnimo:

1=mn (A11(x1o), A12(x2o)) 2=mn (A21(x1o), A22(x2o)) 3=mn (A31(x1o), A32(x2o))


o el producto

1=A11(x1o)* A12(x2o) 2=A21(x1o)* A22(x2o) 3=A31(x1o)* A32(x2o)

Para el clculo de la variable de salida (yo), existen varios mtodos: Mtodo de la Media Ponderada: Este mtodo, que es de clculo sencillo, exige que las funciones Bi sean montonas, para que la funcin inversa sea nica. En este caso, de la inversa de io= Bi(yio) puede deducirse yio para cada una de las reglas. o o y o + 2 y 2 + 3 y3 yo = 1 1 1 + 2 + 3 Mtodo del centro de masas: Consiste en crear la funcin auxiliar B* definida como la unin de las funciones de pertenencia Bi multiplicada cada una de ellas por su peso: B* =1B12B23B3 y tomar como valor de salida su centro de masas: B * ( y) y dy yo = B * ( y) dy Mtodo de la Media para Acciones descritas Funcionalmente: Existe una variante del mtodo de la media ponderada que es aplicable cuando las acciones estn descritas por expresiones funcionales no fuzzy del tipo: SI (x1 es Ak1) Y (x2 es Ak2) ENTONCES y=fk(x1, x2) en este caso, el clculo de la media ponderada se har segn: k f k ( x1o , x2o ) 23 o y =

1.1.9 Controlador Fuzzy Logic El control de sistemas utilizando fuzzy logic es una de las aplicaciones ms interesantes de la teora fuzzy, en el diseo de sistemas de control, a partir de unas entradas se deben generar unas salidas para actuar sobre determinados mecanismos.
23

________.________ 172p.

23 La fuzzy logic comenz a utilizarse en controladores por su simplicidad, ya que no requiere de constructores matemticos complejos, permitiendo en cambio disear mediante la descripcin del funcionamiento con lenguaje natural y facilitando las tareas de prueba y mantenimiento del sistema. El propsito del control fuzzy logic es realizar procesos que requieran control humano. La estrategia de control utilizada es el control convencional PID (proporcional- integral- diferencial) cuyas funciones se expresan en funciones matemticas. Esta es la diferencia fundamental con el control humano. Las estrategias de control humano son difciles y no naturales para expresarlas en funciones matemticas. Por otro lado, el control fuzzy puede ser usado para remplazar el pensamiento y la experiencia humana ya que puede ejecutar un pensamiento similar, realizando un control inteligente. Para realizar un control fuzzy, se necesita establecer relaciones fuzzy IF-THEN. Las reglas IF-THEN usadas in el control fuzzy son llamadas reglas de control. Por medio de estas reglas se puede aprovechar el conocimiento de los operarios quien se entiende realmente con el funcionamiento de un sistema determinado. Despus de establecer las reglas fuzzy se puede realizar el control por razonamiento fuzzy. 24 Para realizar una implementacin prctica utilizando fuzzy logic se deben tener en cuenta tres principios bsicos, estos son: representacin del conocimiento, razonamiento estratgico y adquisicin del conocimiento. Reconocimiento que se hace basado en las reglas, entonces la representacin emitida tendr un significado especfico de cmo reglas lingsticas sean representadas numricamente. El razonamiento estratgico concierne el problema de cmo una conclusin razonable (accin) se debe tomar respecto a una situacin. La adquisicin del conocimiento trata de la emisin de cada conjunto de reglas de control a partir de la deduccin.25 Un controlador de fuzzy logic consta de un motor de inferencia fuzzy y un defuzzificador, una entrada a este controlador es una seal proveniente de un sensor que detecta un cambio en una variable de la Planta, y la salida es una seal que controla el actuador de la planta. Estas seales son todas de valor anlogo. La salida del motor de inferencia es un valor Fuzzy, entonces es necesario tener un defuzzificador para convertir el valor Fuzzy a un valor anlogo. En la siguiente figura se muestra la representacin de una funcin de membresa

24

TANAKA, Kazuo. An Introduction to Fuzzy Logic for Practical Applications. New York: Springer. 1997. p.121.

NIE, Junhong y LINKENS, Derek. Fuzzy-Neural Control Principles, algorithms and applications. 1995. p.2.

25

24
Funcin de membresa discreta
2m x (voltage) input x n bits Address MEMORY nxm m bits Data Grado x

2n

5 x (voltage)

Funcin de membresa Continua


input x -5V, 5V Circuito funcin de Membresa 0V, 5V x Grado

0 -5 x 5

Figura 7. Tipos de funciones de membresa

Primero en funcin discreta en la que se usa un dispositivo de memoria convencional con el cual se emplea el mtodo de Tabla Lookup. Cuando una entrada es aplicada al bus de direcciones el grado de pertenencia inmediatamente aparece en el bus de datos de la memoria, esto mediante la relacin el la tabla Lookup. El tiempo de adquisicin depende exclusivamente del tiempo de acceso a la memoria. La resolucin del universo de discurso (2n) determina el nmero de direcciones, y el cdigo binario m-bit del grado de la funcin de membresa representa el contenido del registro. Tambin se presenta la versin anloga, la cual es implementada por las caractersticas de entrada-salida de un circuito anlogo llamado circuito de funcin de membresa (MFC). La exactitud determina la resolucin del universo de discurso as como el grado de membresa. Mientras este circuito es compacto y logra alta velocidad de procesamiento, el no puede generar muchas formas complejas. Funciones de fuzzy logic: las operaciones Min y Max son frecuentemente usadas en inferencia fuzzy y pueden ser implementadas con un comparador y un multiplexor en un circuito digital. Este circuito no puede aceptar ms de dos entradas, para realizar un circuito Min que acepte ms de dos entradas, necesitamos adaptar un circuito en modo serial que sacrifique velocidad o un estructura de rbol que sacrifica rea en el Chip. 1.1.9.1 Estructura del controlador fuzzy La estructura del controlador fuzzy consta de cuatro mdulos principales, a decir: Un mdulo de fuzzificacin,

25 Una base de conocimientos, Un motor de inferencia, y Un mdulo de defuzzificacin.

El mdulo de fuzzificacin normaliza la entrada, es decir, traduce los valores fsicos de las variables de estado a un universo de discurso normalizado, adems, convierte el valor en curso de una variable de estado en un conjunto fuzzy. Existen varias estrategias de fuzzificacin, dos de estas son: Inferencia basada en una composicin, e inferencia basada en la activacin individual de las reglas. La base de conocimientos est integrada por la base de datos y la base de reglas; la funcin bsica de este mdulo es representar de una forma estructurada la poltica de control de un operador de procesos experimentados y/o de un ingeniero de control. El motor de inferencia es el encargado de calcular el valor global de la variable de salida, basado en las contribuciones individuales de cada regla en la base de reglas. El mdulo de defuzzificacin convierte el conjunto de valores de salida en un solo valor puntual, adems de desnormalizar la salida para que sea entendida en el dominio fsico. En la figura se muestra la estructura de un controlador fuzzy

Entrada

Salida

Normalizacin Motor de inferencia Fuzificacin Base de reglas

Desnormalizacin

Defuzificacin

Base de datos
Figura 8. Estructura interna de un controlador fuzzy

Existen diversos mtodos de fuzzificacin, entre los ms comunes tenemos el mtodo del centro de gravedad y el mtodo del centro de las sumas.

26 Mtodo del centro de gravedad o del centroide Este mtodo se puede enunciar de la siguiente manera:

u* = i = 1 l

ui . Maxk (k ) (ui )
i =1

Maxk (k ) (ui )

Consiste en crear para la salida del sistema una funcin de pertenencia a un nuevo conjunto obtenido como unin de aquellos a los que pertenece parcialmente el valor de salida. Esta nueva funcin puede calcularse mediante la suma de las funciones de pertenencia de estos conjuntos, pero multiplicadas aritmticamente por el grado de pertenencia de la salida al subconjunto que fue calculado en la fase de evaluacin de las reglas de control. c(y)= Peso Regla Rici(y) + Peso Regla Rjcj(y) El anterior es el producto aritmtico, utilizando el producto fuzzy se tiene: c(y)= mn (Peso Regla Ri , ci(y)) + mn (Peso Regla Rj ,cj(y)) Mtodo del centro de las sumas

u* = i = 1 l

ui . (k ) (ui )
i = 1k = 1

(k ) (ui )

k =1 n

Donde i es el valor de membresa para las entradas en cada uno de los universos de discurso ui. La accin neta de control se obtiene mediante la defuzzificacin, que es una combinacin adecuada de las acciones individuales que se derivan de cada regla, el mtodo de defuzzificacin de la media ponderada, se puede enunciar de la siguiente manera:

27

u* = i = 1 n

i dui
i =1

i
i i
i=0,1,2,...,n

Adems se tiene el mtodo del centro de gravedad (COG)

1 COG = i =n

Donde i es el grado de membresa y wi es el ancho del i-esimo elemento del universo de discurso. 1.1.9.2 Procesamiento de informacin fuzzy Las operaciones matemticas que han sido descritas en fuzzy logic son muy numerosas y, en general, significan diferentes modos de aproximacin hacia la solucin de diferentes problemas. La investigacin acerca de hardware para el procesamiento de informacin fuzzy depende de los desarrollos tericos y los modelos matemtico existentes. Los sistemas hardware se han restringido a un conjunto estndar de T-normas: El mximo (MAX) y el mnimo (MIN), que viene a sustituir a la Unin e Interseccin clsicas respectivamente, y la diferencia respecto a la unidad (1-X) que sustituye a la complementacin. De esta forma, si se tiene una regla como: Si x es A y y No es B, Entonces f es P los antecedentes habrn de ser procesados obteniendo el mnimo entre las pertenencias de cada variable a su funcin, tal como se ve en la siguiente figura (inciso a))

i =1

28

Figura 9. a) Procesado de una rgla. b) Conclusin de un conjunto de reglas y defuzzificacin26

Las operaciones a ejecutar son el MIN entre los grados de pertenencia de x a A y la de y a (1-B). Una vez obtenido el mnimo, la conclusin de la regla se obtendr truncando la funcin P del consecuente segn el valor de dicho mnimo, lo que es lo mismo de ejecutar la operacin MIN entre el valor obtenido y la funcin P. En cuanto a la conclusin final del conjunto de reglas, sta se obtendr ejecutando la operacin MAX entre todas las conclusiones individuales de cada regla, como se observa en la figura anterior. (inciso b). Se observa que hay componentes contradictorias en la conclusin, tal como sucede en la prctica. El problema que se plantea es el de poder interpretar correctamente el resultado: una medida estndar establecida en fuzzy logic es la extraccin del centro de gravedad (CdG) de la funcin resultante. Parece lgico que la interpretacin se acerque a una medida ponderada como sucede en la mayor parte de los procesos de evaluacin. A este proceso se le denomina defuzzyfication (DEF), ya que se extrae un valor concreto a partir de datos fuzzy. 27 1.1.9.3 Arquitectura y tecnologa de procesadores fuzzy La mayora de los desarrollos hardware que se han llevado a cabo hasta la actualidad se han hecho con el objetivo de emplearlos en aplicaciones de control. Esto se debe a dos razones: relativamente pequeo nmero de reglas necesarias para las aplicaciones normales de control industrial, y la eficacia de la lgica fuzzy en este tipo de aplicaciones, la reduccin de reglas que se consigue es de 10:1.
GUTIERREZ, Julio. Hardware Fuzzy. Aplicaciones de la lgica borrosa Madrid: Consejo superior de Investigaciones cientficas, 1992. 163p.
27 26

________.________

29

CFP

GFP

MR

CFP

M I N

TRUNC

MR

CFP

. . .
MR

M A X

DEF

MR
Figura 10. Divisin del proceso en unidades funcionales

La figura muestra la divisin del proceso en cuestin de unidades funcionales: los Circuitos de Funcin de Pertenencia (CFPs) son tales que la funcin de transferencia coincide con la de pertenencia de cada una de las premisas, de tal forma que la entrada de a la variable correspondiente da lugar en la salida al valor del grado de pertenencia. El circuito MIN extrae el mnimo entre los resultados de los antecedentes. El Generador de Funcin de Pertenencia (GFP) proporciona a su salida la funcin de pertenencia del consecuente, la cual queda truncada mediante el mdulo TRUNC segn el valor obtenido de MIN que tambin es una entrada de TRUNC. La salida de TRUNC es la conclusin de una regla. Al conjunto capaz de procesar una regla se denomina Mdulo de Regla (MR). El circuito MAX establece el mximo entre dos consecuentes. VER FIGxxxx PAGxxxx 163 La arquitectura bsica se ha hecho de acuerdo con las T-normas ms comunes.28

1.1.9.4. Modalidades de implementacin29 Aunque la arquitectura del procesador es simple, hay factores reales que determinan las diferencias al momento de implementar sistemas reales. Los factores ms importante son: Ejecucin Secuencial o Paralela: La opcin del procesado en paralelo es la presentada en la figura. La opcin secuencial consiste en procesar cada una de las reglas del conjunto considerado mediante un solo MR en el que se van introduciendo las reglas sucesivamente en el tiempo. La funcin MAX se ejecuta almacenando en un registro, previamente puesto a cero, el mximo entre el contenido del propio registro y el resultado del consecuente de la regla en curso. La opcin secuencial es ms lenta pero ms sencilla, adems se pueden
28

________.________ 166p. ________.________

29

30 procesar tantas reglas como se quiera con ella sin tener que hacer modificaciones, mientras que en paralelo, es necesario incrementar el nmero de MRs a medida que aumenta el nmero de reglas.
MR

M A X

R E G I S T R O

Figura 11. Esquema bsico de arquitectura

Programabilidad: Las funciones contenidas en las CFPs y GFPs pueden ser fijas (hardware) o programables. La implementacin en firmware puede hacerse de forma ms sencilla, pero sera una mquina dedicada y nunca de propsito general. La mayor ventaja de disear en base a reglas conceptuales es su facilidad de modificacin y adecuacin. Anlogo o Digital: La opcin analgica es la ms complicada de realizar pero su comportamiento puede hacerse ms rpido, ya que los sistemas digitales necesitan sincrona por lo cual la secuencia de operaciones ha de ir controlada por pasos de reloj. Las soluciones hbridas son la que tienen mejor rendimiento. Funciones muestreadas o codificadas: El GFP puede entregar la funcin como un conjunto de muestras, o codificada de otra forma distinta. El muestreo significa la utilizacin de una gran cantidad de informacin (>16), que puede reducirse notablemente con el empleo de otro modo de codificacin. Modo de acceso y transmisin de datos: En caso de que las funciones se representen por muestreo el cableado para transmitir en paralelo es muy pesado. Para evitarlo se emplea la transmisin serie con registros de desplazamiento como terminales. Adecuacin de las arquitecturas convencionales: Es una hibridacin entre la implementacin hardware y software, pero podra dar lugar a sistemas de altas prestaciones.

1.1.9.5 Diseo del controlador con fuzzy logic El diseo del controlador compromete la construccin de reglas de control. En muchos casos, se pueden obtener reglas de control preguntando a los operadores sus acciones en el formato IF-THEN. Por que no algn mtodo genrico de construir reglas de mando. El proceso de diseo incluye los siguientes pasos: construccin de las reglas de control ajuste de los parmetros

31 validacin y revisin de las reglas de control


Establecimiento de las reglas de control Revisin de las reglas de control

Ajuste de parmetros

Validacin

Figura 12. Procesamiento de diseo del controlador fuzzy30

1.1.9.6 Construccin de las reglas de control Las variables de salida estn determinadas implcitamente por el operador. Para las variables de entrada, una desviacin desde el punto de comparacin, esta variacin (derivada), y es acumulativa (integral) son usadas muchas veces. Los controladores tradicionales PID emplean estas mismas variables de entrada.31 1.1.9.7 Sintonizacin de parmetros Luego de establecer las reglas, el siguiente paso es sintonizar los parmetros involucrados. Los parmetros aqu referidos son los parmetros de la funcin de membresa que definen el sistema fuzzy.32 1.1.9.8 Revisin de las reglas de control Al revisar las reglas es posible que se den alguna de estas posibilidades, adicionar reglas y eliminar reglas que afecten adversamente el desarrollo del control. El funcionamiento de un sistema de control tambin se puede analizar en base al siguiente diagrama.

30

TANAKA, Kazuo. An Introduction to Fuzzy Logic for Practical Applications. New York: Springer. 1997. p.122. ________.________ . p.123. ________.________ .

31

32

32

Funciones de Pertenencia

Fuzzificacin de las entradas

Entradas fuzzy

Evaluacin de las reglas de control

Salidas fuzzy

Defuzzificacin de las salidas

Base de reglas

Figura 13. Funcionamiento de un sistema de control fuzzy33

Se pueden distinguir 3 partes fundamentales: una primera etapa de fuzzificacin de los valores de entrada, otra de evaluacin de reglas de control fuzzy y una ltima de defuzzificacin para obtener valores concretos de salida. Fuzzificacin de las entradas: La fuzzificacin es el proceso por el cual se calcula su grado de pertenencia a uno o varios de los conjuntos fuzzy en que se divide el rango de valores posibles para dicha entrada. Cuando se trabaja con conjuntos fuzzy hay que establecer unas funciones de pertenencia de los elementos a los diferentes conjuntos, lo cual permite determinar a partir del valor de un elemento, su grado de pertenencia al conjunto, siendo este un valor real normalizado entre 0 (no pertenece) y 1 (pertenece al 100%). Esta funcin se denota como (x), siendo x el valor del elemento. Evaluacin de las reglas de control: Para gobernar el comportamiento del sistema, el diseador debe establecer una serie de reglas SI (antecedente) ENTONCES (consecuente) para indicar la accin a realizar en funcin del conjunto al que pertenece la entrada al sistema. La forma general de una regla es: R:SI (x es A) ENTONCES (y ser C), tambin se pueden utilizar las anotaciones: R:A -> C y R:(A;C). Una vez ponderadas las reglas que van a gobernar el funcionamiento del sistema, se procede a la defuzzificacin de las salidas.
HILERA, Jos y MARTNEZ, Vctor. aplicaciones. 1995. p. 339
33

Redes neuronales artificiales. Fundamento, modelos y

33 Defuzzificacin de las salidas: Consiste en obtener un valor numrico para cada una de las salidas del sistema a partir de los conjuntos fuzzy a los que pertenecen. Existen varias tcnicas de defuzzificacin, las ms utilizadas, denominadas mtodo del centroide y mtodo de la media ponderada.

1.1.10 Sistemas fuzzy como mquina de inferencia34 Asumiendo que, para un sistema especfico, un conjunto de entradas X y uno de Y salidas Y son identificadas apropiadamente, una regla-base X es derivada desde fuentes disponibles que contienen un conjunto de reglas relacionando X a Y usando niveles lingsticos predefinidos. Con ayuda del conjunto fuzzy y la teora fuzzy logic, un sistema fuzzy a un nivel lingstico puede ser establecido como se observa en la figura.
Mquina de Inferencia

Reglas base

Figura 14. Sistema Fuzzy como mquina de Inferencia


Y Para una entrada X0, la salida correspondiente Y0 es deducida como Y0 = ( X , X 0 ) .

Los mecanismos del sistema para derivar una accin razonable Y0 con respecto a una situacin especfica X0 puede ser interpretada simplemente como ejecucin de Y un proceso racional de dos estados. Observando la regla-base X como un prototipo, la mquina de inferencia primero lleva a cabo un procedimiento de formar parejas entre la situacin X0 y las partes IF de las reglas. Para deducir la accin correspondiente, un procedimiento de interpolacin tiene lugar entre la operacin de las parejas resultantes con las partes THEN de las reglas usando una estrategia de inferencia fuzzy. 1.1.11 Sistemas Fuzzy como funciones de aproximacin35 La mayora de los problemas en ingeniera involucran solo variables numricas, tal como en el caso de control y modelamiento. Al aplicar el sistema fuzzy a aquellos entornos numricos, dos procedimientos, llamados fuzzificacin y defuzzificacin, son normalmente empleados como en la figura.

NIE, Junhong y LINKENS, Derek. Fuzzy-Neural Control Principles, algorithms and applications. Londres: Prentice Hall. 1995. p.3. 35 ________.________ p.5.

34

34
Fuzzification x Numerical inputs F X Mquina de Inferencia Y DF Defuzzification y

Figura 15. Proceso de fuzzificacin y defuzzificacin

Los valores medidos x son convertidos en valores fuzzy X compatibles con la forma del sistema fuzzy. Los valores deducidos Y tienen que ser convertidos a valores crisp y compatibles con la forma del entorno numrico. As, se puede observar que aunque el sistema fuzzy tiene el mismo una asociacin con un nivel fijo, Y=F(X), trazando un conjunto fuzzy X dentro de un conjunto fuzzy Y, el ltimo trazado desde x a y, en realidad representa una funcin determinada y = f ( x ) trazando especficamente x X en y Y . En este sentido, el aumento del sistema fuzzy de la figura anterior puede ser considerado como la realizacin de la funcin numrica la cual es determinada principalmente por la regla-base y asociada con el algoritmo de inferencia. Siendo ms preciso, el sistema fuzzy es una funcin aproximada debido a su naturaleza interpolativa. De esta manera, se observa como una caja negra con su representacin correspondiente y sus esquemas de razonamiento, se pueden construir sistemas fuzzy de sistemas con representacin o funcin desconocida, la funcin puede ser no lineal. 1.1.12 El papel de un sistema fuzzy en el control36 El sistema fuzzy como un razonamiento aproximado o un aproximador funcional puede ser usado en varios sistemas de control. El ms popular y sencillo es el usado como un controlador directo como en la siguiente figura.

+
+

Controlador Fuzzy

Planta

Figura 16. Sistema fuzzy de control directo

El requerimiento bsico para implementar un sistema fuzzy de control directo es el de disponer de un experto en el control que provee el conocimiento necesario para el problema. La segunda utilizacin de un sistema de control es el usado para supervisar, el empleado en este caso es:

36

________.________ p.7.

35

Diseo del Controlador

Modelo fuzzy

Controlador fuzzy

Planta

Set-point

Output

Figura 17. Control fuzzy basado en modelamiento

En lugar de usarlo directamente en las seales de control, la funcin del sistema fuzzy es monitorear el control directo a un bajo nivel para hacer un control directo utilizando los parmetros apropiados. la decisin tomada por el supervisor puede estar basada en el desempeo normal del control o las condiciones de operacin empleadas en la estrategia de control en el sistema. Tratando el sistema fuzzy como un modelo representativo del controlador de la planta, se pueden hallar el tercer uso del sistema, que es, ponerlo en varios modelos basados en estructuras de control encontradas en un sistema tradicional de control y remplazar el modelo tradicional con uno fuzzy. 1.1.13 Control fuzzy basado en modelamiento37 Los principios bsicos de esta aproximacin es la relacin en el proceso de las entradas y las salidas asumidas, las cuales son representadas en el sistema fuzzy por reglas de la forma IF-THEN o ecuaciones relacionadas denominadas modelos fuzzy. Primero, un procedimiento de identificacin es aplicado. Despus el modelo fuzzy es identificado apropiadamente, un conjunto de reglas de control o una ecuacin relacionada con el controlador puede ser creada en la identificacin del modelo. Claramente, este es un esquema basado en el principio de la certeza equivalencia y se adopta a un sistema adaptivo indirecto tradicional donde existen dos fases, identificacin del modelo y rediseo del controlador. Los paradigmas basados en reglas fuzzy son definidos por una matriz relacional, Pedrycz (1985) propone una metodologa semejante al manejo de las ecuaciones pre-identificadas para manejar el proceso de control. Takagi y Sugeno (1985) desarrolla una identificacin capaz de extraer reglas de control desde un operador especializado, y ellos previeron adems que el mtodo pueda ser utilizado para identificar modelos de procesos en forma de reglas y obtuvieron reglas de control para identificacin de modelos. Rhee (1990) presento una estructura de control alternativo. El sistema contena una estructura de conocimiento en forma de celdas que representa la relacin entrada-salida del proceso a controlar en tiempo y en valor. La estructura del conocimiento es establecida durante la fase de aprendizaje y es sucesivamente
37

________.________ p.8.

36 empleada en procesos de control basados en dos conjuntos de reglas de inferencia. Moore y Harris (1992) describi un controlador indirecto fuzzy como el que se tiene en la grfica Control fuzzy basado en modelamiento. Un controlador fuzzy convencional contiene los mismos componentes de la grfica Sistema fuzzy de control directo. 1.1.14 Control fuzzy basado en el aprendizaje38 En contraste con el modelamiento, el mtodo basado en el aprendizaje emula el pensamiento humano aprovechando la habilidad conseguida mediante la operacin del proceso repetidamente y por lo tanto la conducta del proceso no se tiene explcitamente. Aqu, la experiencia tiene una particular importancia y es utilizada intensivamente para crear sistemas de control. As, con un pequeo conocimiento a priori acerca del proceso, la reglas se pueden organizar con el proceso de aprendizaje. Un ejemplo de esta clase es llamado controlador lingstico organizado (self-organizing controller, SOC) que fue desarrollado por Procyk y Mamdani (1979). La estructura del SOC es ilustrado en la siguiente figura.
PIT Modificacin de las reglas

+
+

Set-point

Controlador Fuzzy

Output Planta

Figura 18. Control fuzzy basado en el conocimiento

El lazo de realimentacin es incrementado al controlador bsico. Ejecutando el sistema de control indicando en una ndice cuales reglas fueron creadas o modificadas, este ndice se denomina PIT. Se comienza desde una regla vaca, el SOC puede construir la regla apropiada para ejecutar el control y esta es aceptada en el siguiente nivel del ndice PIT. Por lo tanto, el objeto de modificar esta en controlar la matriz mientras se crean y/o modifican las reglas usadas mediante las cuales se crea la matriz. 1.1.15 Sistemas basados en Reglas Fuzzy con Aplicacin en Procesadores de Propsito General La simulacin y optimizacin de sistemas fuzzy con redes neuronales o algoritmos genticos en procesadores de propsito general requiere implementaciones veloces de sistemas basados en reglas fuzzy.
38

________.________ p.9.

37

Se presentan varios conceptos de implementacin adaptados que analizan precisamente el algoritmo fuzzy basados en tablas de lookup, procesamiento optimizado de reglas y modulacin digital por duracin de pulso. Estos conceptos permiten a los procesadores de propsito general producir soluciones ms rpidas que la segunda generacin de procesadores fuzzy especializados. La idea bsica es incorporar el Know-How de un operador humano entrenado dentro de reglas fuzzy, las cuales pueden ser combinadas por implicaciones fuzzy y reglas de inferencia composicionales. Los controladores lgicos fuzzy (Fuzzy Logic Controlers) y los sistemas basados en reglas fuzzy (Fuzzy Rule-Based Systems) (FRBSs) son herramientas importantes para el modelamiento de sistemas complejos. La base del conocimiento es normalmente o adquirido por un humano experto o por un juego de datos referenciales con algoritmos genticos o neuronales. Trminos Bsicos El algoritmo de control es basado en el razonamiento generalizado, o mdulo de ponderacin, la regla de inferencia: Premisa A es verdadera Implicacin Si A, entonces B Conclusin B es verdadera Las funciones fuzzy luego reemplazan las proposiciones de cresta (crisp) A y B. Estas funciones caracterizan y definen el juego fuzzy sobre el universo U hacia . Se define en tres operaciones fuzzy importantes: Interseccin C = AB c(x) = mn[A(x), B(x)] Unin C= AB c(x) = mx[A(x), B(x)] Complemento (x) = 1- (x)
Tabla 2. Distribucin de tiempo de computacin

Fuzzificacin 1% Inferencia 83% Defuzzificacin 16% Distribucin de tiempo de computacin para un procesador de 64 bits, un nmero de entradas n=8, variables de salida m=4, 8 funciones de membresa y/o variables y 50 reglas. Se pueden caracterizar los ms importantes rasgos de los microprocesadores actuales cuando se implementan con ellos FRBSs por: Operaciones de Adicin, multiplicacin y divisin, las cuales son cerca de 10 a 100 veces ms rpidas con nmeros enteros que con nmeros de punto

38 flotante. Las operaciones de punto flotante no estn disponibles en los microcontroladores. Normalmente las operaciones de mnimo y mximo no son directamente accesibles. Los saltos sobre cortas distancias son rpidos. Los datos utilizados a menudo residen en el cache del procesador o en los registros.

De manera que el clculo optimizado de los algoritmos basados en FBRSs en estos rasgos toma cuatro pasos: Completar las operaciones de clculo con nmeros enteros; esto no es una restriccin porque en aplicaciones de control los nmeros de salida de un ADC son enteros. Almacenar la funciones de membresa en tablas de Lookup de manera que los antecedentes son calculados muy rpidamente. Si la resolucin de entrada se incrementa (a ms de 10 bits), la funcin de membresa es aproximada por medio de lneas rectas. Utilizar el algoritmo ms conveniente para el procesador digital ya que los FRBS son aproximadores universales. Incluir las dependencias de datos, especialmente la propiedad del operador mnimo mn[(x,0)=0], para reducir el nmero de operaciones drsticamente. Si una subpremisa del lado izquierdo de una regla no es activada, esta no es necesaria para evaluar las subpremisas siguientes. Luego, slo unas pocas reglas deben ser completamente evaluadas. La consideracin de las siguientes reglas reduce enormemente el tiempo de computo: Si una subpremisa es cero y operacin conjuncin es interpretada como la operacin de mnimo, la regla no es activada. No hay necesidad de calcular el resto de la regla. De acuerdo con esto, todas las dems reglas que utilicen la misma subpremisa no necesitan ser calculadas. Si subpremisas similares existen en diferentes reglas, no hay necesidad de recalcularlas, y el resultado del primer clculo es reutilizado siempre que sea apropiado. 1.2 REDES NEURONALES

Un red neuronal es una red mono o multicapa de nodos (elementos computacionales) y enlaces (arcos) sopesados utilizados para el reconocimiento de patrones, clasificacin, y otros problemas no numricos. Las Redes Neuronales son conexiones en paralelo de elementos simples usualmente adaptivos y con organizacin jerrquica, las cuales intentan intercalar con los objetos del mundo real del mismo modo que lo hace el sistema nervioso biolgico [Kohien], comprenden

39 arquitecturas de ordenadores caracterizadas por un Procesamiento de Informacin de forma distribuida y no lineal y que tienen su inspiracin en modelos fisiolgicos sensoriales y cerebrales del mundo animal donde la principal tarea de stas es el control centralizado de diferentes funciones biolgicas. Una red alcanza resultados inteligentes por medio de varias clculos paralelos sin el empleo de reglas u otras estructuras lgicas.39 1.2.1 Panorama Histrico El desarrollo de las Redes Neuronales se ha dado por el afn de construir sistemas capaces de realizar procesos con cierta inteligencia siendo esto uno de los principales objetivos y preocupaciones de los cientficos a lo largo de la historia. De los intentos realizados en este sentido se han llegado a definir las lneas fundamentales para la obtencin de mquinas inteligentes. En un principio los esfuerzos estuvieron orientados a la obtencin de autmatas para que desarrollarn trabajos mecnicos, pero su funcin no paso de all. Posteriormente se penso en la construccin de mquinas que realizarn tareas de rango intelectual para ayudarle al hombre, es entonces cuando se explora en las explicaciones tericas del cerebro y el pensamiento llegando as a las primeras mquinas cibernticas, las cuales son basadas en las redes neuronales. El primero en estudiar el cerebro como una forma de ver el mundo de la computacin fue Alan Turin en el ao de 1936. Sin embargo, los primeros tericos que concibieron los fundamentos de la computacin neuronal fueron Warren McCulloch, Neurofisilogo y Walter Pitts, matemtico, quienes, en 1943, lanzaron una teora acerca de la forma de trabajar las neuronas. Ellos modelaron una red neuronal simple mediante circuitos elctricos, el cual consista en un dispositivo no lineal de mltiples entradas con interconexiones peso. En este modelo las interconexiones representaban las dendritas; el cuerpo celular se representaba por una funcin no lineal; la neurona artificial sumaba las entradas ya ponderadas, les aplicaba la funcin no lineal y transmita la salida.
w1i w2i w3i

ui

xi

Figura 19. Esquema de la neurona de McCulloch-Pitts

En 1957, Frank Rosenblatt comenz el desarrollo del Perceptrn, el cual es la red neuronal ms antigua. Este modelo era capaz de generalizar; es decir, despus de haber aprendido una serie de patrones era capaz de reconocer otros similares,

HILERA, Jos y MARTNEZ, Vctor. aplicaciones. 1995 pg 325-337

39

Redes neuronales artificiales. Fundamento, modelos y

40 aunque no se le hubieran presentado anteriormente. Su limitacin era no poder resolver la funcin OR-exclusiva. En 1959, Bernard Widrow y Marcial Hoff, desarrollaron el modelo ADALINE (ADAptative LINear Elements). Esta fue la primera neurona aplicada a un problema real: Filtros Adaptativos para eliminar ecos de las lneas telefnicas. En 1967, Stephen Grossberg de la Universidad de Boston, uno de los mayores investigadores de las redes neuronales, desarrollo una red llamada Avalancha, la cual consista en una serie de elementos discretos cuya actividad variaba en el tiempo en funcin de ecuaciones diferenciales continuas, para resolver actividades tales como reconocimiento continuo del habla y aprendizaje del movimiento de los brazos de un robot. En 1982 James Andensor desarrollo un modelo lineal llamado Asociador Lineal, que consista en neuronas que funcionaban como elementos integradores lineales que realizaban la suma de las entradas, el cual fue mejorado y llamado posteriormente Brain- State-in-a-Box (BSB). En Europa y Japn, Kunihiko Fukushima desarrollo el Neocognitrn, un modelo de red neuronal para el reconocimiento de patrones visuales. En 1982, coincidieron numerosos eventos que hicieron resurgir el inters por las redes neuronales. John Holpfield present su trabajo sobre redes neuronales en la Academia de las Ciencias. En 1985, el Instituto Americano de Fsica comenz una reunin Anual llamada Neural Networks for Computing. En 1987 la IEEE celebr la primera conferencia internacional sobre redes neuronales. En el mismo Ao se formo la International Neural Network Society (INNS) bajo la iniciativa y direccin de Grossberg. En 1988, se dio la unin de INNS e IEEE. La International Joint Conference on Neural Networks (IJCNN) produjo en 1989 ms de 430 artculos.

1.2.2 Caractersticas 1.2.2.1 Ventajas de las redes neuronales Debido a su constitucin y fundamentos, las Redes Neuronales Artificiales presentan un gran nmero de caractersticas similares al cerebro humano. Por ejemplo son capaces de aprender de la experiencia, de generalizar de casos anteriores a nuevos casos, de abstraer caractersticas esenciales a partir de entradas que representan

41 informacin irrelevante, etc. Esto hace que ofrezca un gran nmero de ventajas, las cuales son:40 Aprendizaje Adaptativo. Capacidad de aprender a realizar tareas basada en un entrenamiento o en una experiencia inicial. Tolerancia a Fallos. La destruccin parcial de una red conduce a una degradacin de su estructura; sin embargo, algunas capacidades de la red se pueden retener incluso sufriendo un gran dao. Autoorganizacin. Una Red Neuronal puede crear su propia organizacin o representacin de la informacin que recibe mediante una etapa de aprendizaje. Operacin en tiempo real. Los cmputos Neuronales pueden ser realizados en paralelo, se disean y fabrican mquinas con Hardware especial para obtener esta capacidad. Fcil Insercin dentro de la tecnologa existente. Se pueden obtener chips especializados para redes neuronales que mejoran su capacidad en ciertas tareas. Ello facilitar la integracin modular en los sistemas existentes. 1.2.2.2 Desventajas de redes neuronales Gran cantidad de tiempo en la seleccin y preparacin de los datos de entrenamiento, debido al gran nmero que se requieren para lograr buena generalizacin en la red entrenada Mucho tiempo en el proceso de entrenamiento, an con computadores de alta velocidad La necesidad de entrenar la red con todos los patrones nuevamente, cuando se quiere cambiar un patrn o un punto de operacin dados, con los costos en tiempo de entrenamiento 1.2.2.3 Redes neuronales y computadores digitales Se establecen una serie de diferencias y comparaciones entre dos sistemas los cuales son: Los sistemas Neurolobiolgicos no aplican principios de circuitos lgicos o digitales. Ni las neuronas ni la sinapsis son elementos de memoria biestables. En la computacin neuronal no hay instrucciones de mquina ni cdigos de control. Los circuitos del cerebro no implementan computacin recursiva y por tanto no son algoritmos.41 1.2.3 Redes neuronales e inteligencia artificial Dentro de lo que se entiende por Inteligencia Artificial (I.A.), una de las ramas ms complementadoras es la que corresponde a las denominadas redes de autoproceso, entendiendo como tales aquellas formadas por nodos en los que hay elementos

40 41

________.________ p. 250-37. ________.________

42 procesadores de informacin de cuyas interacciones locales depende el comportamiento del sistema. Como se muestra en la siguiente figura en la Inteligencia Artificial hay dos grandes ramas de las redes de autoproceso: Procesamiento numrico y Procesamiento simblico.
Inteligencia Artificial

Redes de Autoproceso

Procesamiento Numrico

Procesamiento Simblico

Sistemas Asociativos

Sistemas Distribuidos

REDES NEURONALES

REDES SIMBOLICAS

Figura 20. Situacin de las redes neuronales en el campo de la inteligencia artificial42

1.2.3.1 Procesamiento Numrico Reciben directamente la seal de entrada del exterior y operan sobre ella. Esta rama se dedica a los sistemas constituidos por nodos hardware interconectados entre s formando una red; tambin se llaman sistemas conectivistas o conexionistas. Si la conexin entre los nodos se realiza de forma global bajo reglas de composicin, son sistemas distribuidos, si la conexin se realiza agrupando en sub-redes, se denomina sistemas asociados o redes de redes. 1.2.3.2 Procesamiento Simblico

42

________.________

43 Estas redes estn constituidas por conceptos (Nodos de la red) y por reglas sintcticas (Lazos de Interconexin), ambas formas las denominadas bases del conocimiento. La simulacin de estas es casi exclusivamente software. En la siguiente tabla se resumen las diferencias entre la computacin convencional (mquinas tipo Von Neumann), la computacin simblica (I.A) y computacin Neuronal.43
Tabla 3. Formas bsicas de computacin

Computacin Convencional Arquitectura Von Basado en: Neumann Apropiada para: Algoritmos Conocidos Condiciones Pero no para: difusas Precisa esttica Memoria Construida mediante Diseo, programacin prueba Computadores convencionales

Computacin Simblica Lgica Cognitiva Heurstica

Computacin Neuronal Neurolobiloga Adaptacin Clculos precisos Distribuida Configuracin aprendizaje y

Soporte

Causalidad desconocida Bases de conocimiento Representacin y del conocimiento + motor de inferencia Mquinas LISP

Procesadores paralelos

1.2.4 Fundamentos de las Redes Neuronales 1.2.4.1 Modelo Biolgico La teora y modelado de redes neuronales artificiales est inspirada en la estructura y funcionamiento de los sistemas nerviosos, donde la neurona es el elemento fundamental. Existen neuronas de diferentes formas, tamaos y longitudes. Estos atributos son importantes para determinar la funcin y utilidad de la neurona. Una peculiaridad de las redes neuronales biolgicas es su tamao; en todo el sistema nervioso central hay del orden de 1011 neuronas. Parece increble programar las funciones de este sistema. la distribucin de los recursos y los caminos de comunicacin ms importantes estn formados de acuerdo con un plan
43

________.________

44 gentico, mientras que el resto de la programacin en especial la memoria se adquiere despus de nacer. Programar la red puede significar: a) Alterar las estructuras de interconexin entre las clulas, y b) Cambiar las fuerzas de estas interconexiones. 1.2.4.2 Estructura de la neurona Una neurona es una clula viva, la cual consta de un cuerpo celular cuasiesfrico (soma), de la cual sale una rama principal llamado axn y varias ramas ms cortas, llamadas dendritas. A su vez, el axn puede producir ramas en torno a su punto de arranque, y con frecuencia se ramifica extensamente cerca de su extremo.
Dendritas acarrean las seales al interior

Cuerpo de la clula

Axn Transporta la seal hacia el exterior

Punto de Conexin con otra neurona (Sinapsis)

Figura 21. Forma general de una neurona

Esta estructura corresponde con la de un proceso, con sus respectivas funciones de entrada y salida.

1.2.4.3 Naturaleza bioelctrica de la neurona Las seales que utilizan son de dos tipos: elctricas y qumicas. La seal que viaja por el axn es elctrica y en cambio la que se transmite de los terminales axnicos de una neurona y las dendritas de neuronas siguientes son de origen qumico. Estas sustancias fluyen a travs de contactos especiales llamados sinapsis. Las dendritas reciben las seales de las neuronas adyacentes y las transmiten al cuerpo en forma de un potencial elctrico. Estas seales elctricas son integradas por el cuerpo celular (soma). Si este potencial elctrico es superior a un umbral, el soma genera un corto impulso elctrico. Este impulso se transmite por el axn, que es una fibra nerviosa con una longitud que vara entre unos milmetros y varios metros. El axn se ramifica y dirige el impulso a varias neuronas va sinapsis.

45

Hay dos tipos de sinapsis. El primero se llama sinapsis de excitacin, cuyo efecto es incrementar el potencial en la neurona destino. El segundo es la sinapsis inhibitoria cuya misin es hacer decaer el potencial en la neurona de destino. En cada instante, alguna de ellas estarn activas y otras se hallarn en reposo; la suma de los efectos excitadores e inhibidores determina si la clula ser o no estimulada; es decir, si se emitir o no un tren de impulsos y a qu velocidad. Para establecer una similitud directa entre la actividad sinptica y la analoga con las redes neuronales artificiales, se pueden establecer los siguientes aspectos: Las seales que llegan a la sinapsis son las entradas a la neurona; stas son ponderadas (atenuadas o amplificadas) a travs de un parmetro, denominado peso, asociado a la sinapsis correspondiente. Estas seales de entrada pueden excitar a la neurona (sinapsis con peso positivo) o inhibirla (peso negativo). El efecto es la suma de las entradas ponderadas. Si la suma es igual o mayor que el umbral de la neurona, entonces la neurona se activa (da salida). Esta es una situacin todo o nada; cada neurona se activa o no se activa. La facilidad de transmisin de seales se altera mediante la actividad del sistema nervioso. Esta habilidad de ajustar seales es un mecanismo de aprendizaje. Las funciones umbral integran la energa de las seales de entrada en el espacio y en el tiempo. 1.2.5 La Neurona Artificial Su trabajo es simple y nico, y consiste en recibir las entradas de las clulas vecinas y calcular el valor de salida Yi el cual es enviado a las clulas restantes. Hay tres tipos de unidades: de entrada, de salida y ocultas. Las unidades de entrada reciben las seales desde el entorno, estas pueden ser provenientes de sensores o de otros sectores del sistema. Las unidades de salida envan la seal fuera de la red y las unidades ocultas son aquellas cuyas entradas y salidas se encuentran dentro del sistema, no tienen contacto con el exterior, el nmero de niveles ocultos puede estar entre cero y un nmero elevado; las neuronas de las capas ocultas pueden estar interconectadas de distintas maneras, lo que determina, junto con su nmero, las diferentes topologas de redes neuronales.
Unidad U h Yh Unidad U i Yi Unidad U g

F(aj(t),Netj) Netj =aj(t+1) Fj(aj(t+1))=yi

yi

Yg

Figura 22. Entradas y salidas de una neurona Uj44


44

________.________

46

1.2.5.1 Elementos de una neurona artificial Cualquier modelo de red neuronal consta de dispositivos elementales de proceso: las neuronas. A partir de ellas, se pueden generar las presentaciones especificas, de tal forma que un estado conjunto de ellas pueda significar una letra, un nmero o cualquier otro objeto. La red de neuronas artificiales debe emular el siguiente funcionamiento de una neurona biolgica: Recibir estmulos externos, relacionados con el aparato sensorial, que tomara la informacin de entrada. Dicha informacin se transmite a ciertos elementos internos que se ocupan de su procesado. Es en la sinapsis y neuronas correspondientes a este segundo nivel donde se genera cualquier tipo de representacin interna de la informacin. Puesto que no tiene relacin directa con la informacin de entrada ni con la salida, estos elementos se denominan unidades ocultas. Una vez ha finalizado el perodo de procesado, la informacin llega a las unidades de salida, cuya misin es dar la respuesta del sistema. La neurona artificial pretende mimetizar las caractersticas ms importantes de las neuronas biolgicas. Cada neurona isima est caracterizada en cualquier instante por un valor numrico denominado valor o estado de activacin asociado a cada unidad. Existe una funcin de salida Fi que transforma el estado actual de activacin en una seal de salida Yi, la cual es enviada a otras unidades por medio de la sinapsis. Cada entrada de una determinada unidad tiene un determinado peso denominado wji que da una entrada total Netij=iYiWji. Una funcin de activacin F, determina el nuevo estado de activacin aj(t+1) de la neurona teniendo en cuenta la entrada total calculada y el anterior estado de activacin aj(t). La dinmica que rige la actualizacin de los estados de las unidades puede ser de dos tipos: modo asncrono y modo sncrono. En el modo asncrono las neuronas evalan su estado continuamente, segn les va llegando la informacin, y lo hacen de forma independiente. En el caso sncrono, la informacin tambin llega de forma continua, pero los cambios se realizan simultneamente. 1.2.5.2 Estructura de una red neuronal artificial45 Los componentes ms importantes de una red neuronal son: Unidades de procesamiento (la neurona artificial) Estado de activacin de cada neurona Patrn de conectividad entre neuronas
45

________.________

47

Regla de propagacin Funcin de trasferencia Regla de activacin Regla de aprendizaje

Centrados en las caractersticas de cada nodo de la red (microestructura), la red (mesoestructura) est organizada en funcin de: Nmero de niveles o capas Nmero de neuronas por nivel Patrones de conexin Flujo de informacin 1.2.5.3 Estado de Activacin La neurona tiene un estado de activacin en un tiempo t dado por: A(t)= (a1(t), a2(t), ....ai(t),......aN(t)) El procesamiento que realiza la red se ve como la evolucin de un patrn de activacin en el conjunto de unidades que lo componen a travs del tiempo. 1.2.5.4 Funcin de Salida o de Transferencia Entre las unidades o neuronas que forman una red neuronal artificial existe un conjunto de conexiones que unen unas con otras. cada unidad transmite seales a aquellas que estn conectadas a su salida. Asociada a una unidad Ui hay una funcin de salida yi(t) que es funcin del estado de activacin as:

yi (t ) = f i (ai (t ))
El vector que contiene las salidas de todas las neuronas en un instante t es:

Y (t ) = ( f 1 (a1 (t )), f 2 (a2 (t )),..., f i (ai (t )),..., f N (a N (t ))) Existen cuatro tipo de funciones de transferencia:46
Funcin Escaln Funcin Lineal y mixta Sigmoidal Funcin Gaussiana

46

________.________

48
y 1 1 y

-1

Figura 23. Funcin de Transferencia Escaln

y 1 1

-1

Figura 24. Funciones de activacin mixta


y 1 1 /2 y

-1 /2 f(x )= 1 /(1 + e x p (-a x ))

Figura 25. Funciones de Activacin Continuas (Sigmoides)

49
y

Figura 26. Funcin de Transferencia Gaussiana

1.2.5.5 Conexiones entre Neuronas Las conexiones que unen a las neuronas que forman un RNA (Redes Neuronales Artificiales) tienen asociado un peso, que es el que hace que la red adquiera conocimiento. Una neurona recibe un conjunto de seales que le dan informacin del estado de activacin de todas las neuronas con las que se encuentra conectada. Cada conexin sinapsis entre la neurona i la neurona j est ponderada por un peso wji. Como simplificacin se considera que el efecto de cada seal es aditivo, de tal forma que la entrada neta que recibe una neurona (potencial post - sinptico) netj es la suma del producto de cada seal individual por el valor de la sinapsis que conecta ambas neuronas.

net j = w ji . yi
i

Esta regla muestra el procedimiento a seguir para combinar los valores de entrada a una unidad con los pesos de las conexiones que llegan a esa unidad y es conocida como regla de propagacin. 1.2.5.6 Funcin o Regla de Activacin As como es necesario que una regla combine las entradas a una neurona con los pesos de las conexiones, tambin se requiere una regla que combinen las entradas con el estado actual de la neurona para producir un nuevo estado de activacin. Esta funcin F produce un nuevo estado de activacin en una neurona a partir del estado ai que exista y la combinacin de las entradas con el peso de las conexiones, el cual est dado por la funcin de activacin F, la cual est dada as: ai(t+1)= F(ai(t),Neti) En la mayora de los casos F es la funcin identidad por lo que el estado de activacin de una neurona en t+1 coincidir con el Net de la misma en t, de donde: yi(t+1)= (Neti)

50
y1 . . . yj . . . yN W i1 W ij W iN f yj

Como normalmente la funcin no est centrada en el origen, sino que existe un desplazamiento debido a las caractersticas internas de la propia neurona entonces: yi(t+1)=(Neti-i)
y1 . . . yj . . . yN W i1 W ij W iN f,qi yj

1.2.6 Arquitecturas Una red neuronal artificial est formada por un conjunto de neuronas interconectadas entre ellas. El modo en que se inteconectan constituye la arquitectura de la red. 1.2.6.1 Tipos de redes ms importantes A continuacin se muestra una tabla resumen de los tipos de redes ms conocidos, comentando esquemticamente las aplicaciones ms importantes de cada una, sus ventajas e inconvenientes y quin o quienes fueron sus creadores.
Tabla 4. Caractersticas de los tipos de redes neuronales ms importantes47

Nombre de la Red Avalancha

Teora Resonancia Adaptativa ART ADALINE/


47

Aplicaciones Ao Ms Importantes 1967 Reconocimiento de Habla Continua Control Brazos de Robot 1986 Reconocimiento de patrones (radar, sonar). 1960 Filtrado de

Inventada Comentarios Limitaciones Desarrollada por: Stephen Ninguna Red No es fcil Grossberg. alterar la Sencilla Puede hacer velocidad o interpolar el todo esto movimiento Sofisticada Sensible a la Gail Poco Translacin, Canperter. Utilizada Distorsin y Stephen escala. Grossberg. Rpida, Slo es Bernard

HILERA, Jos y MARTNEZ, Vctor. Redes neuronales artificiales. Fundamento, modelos y aplicaciones. Pginas 30-32, 181-320. 1995

51
MADALINE Fcil de Implementar con circuitos analgicos o VLSI 1974 Sntesis de Voz Red ms Popular -85 desde texto. Numerosas Control de Aplicaciones Robots. con xito. Prediccin. Reconocimiento Facilidad De Aprendizaje de Patrones. Potente. Seales, Ecualizador Adaptativo Modems 1985 Memoria Asociativa de acceso por contenido Posible Clasificar Espacios Linealmente Separados Aprendizaje y arquitectura simples Widrow.

Back Propagation

Paul Werbos. David Parker. David Rumelhart

Memoria Asociativa Bidireccional

Mquinas de Boltzman y Cauchy

Aprendizaje Baja y arquitectura Capacidad simples. De Almacenam. Los datos deben ser codificados La mquina 1985 Reconocimiento Redes de Boltzman simples -86 de patrones Capacidad de necesita un (Imgenes, Representac. tiempo muy sonar y radar). largo de ptima de Optimizacin. aprendizaje Patrones

Bart Kosko

Jeffrey Hinton, Terry Sejnowski. Harold Szu. James Anderson

1977 Extraccin de Posiblemente Realizacin y potenciales conocimiento de Mejor aplicaciones Bases de datos Realizacin Que las redes no estudiadas totalmente de Hopfield. Semejante a Requiere Cerebellatron 1969 Control de Avalancha Complicadas movimiento de Entradas los brazos de control. de un robot Counter 1986 Compresin de Combinacin Numerosas Propagation Imgenes de Perceptrn Neuronas y TPM y conexiones Capacidad Hopfield 1982 Reconstruccin Puede ser de patrones Implementad. Y Estabilidad y Optimizacin en VLSI. Fcil de Conceptual. Neocognitrn 1978 Reconocimiento Insensible a Requiere -84 de caracteres la Muchos manuscritos translacin, Elementos BrainEstatein-aBox

David Marr, James Albus, Andrs Pellionez Robert HechtNielsen John Hopfield

K. Fukushima

52
rotacin y escala 1957 Reconocimiento La red ms de caracteres Antigua impresos Construida en H.W. 1980 Reconocimiento Realiza -84 de patrones, Mapas de codificacin de Caracterstic. datos, Comunes de optimizacin los datos aprendidos De Proceso No puede Reconocer Caracteres Complejos Requiere Mucho Entrenamient o

Perceptrn

Frank Rosenblatt

SelfOrganizing Map SOM Topology Preserving Map (TMP)

Teuvo Kohonen

Existen cuatro aspectos que caracterizan una red neuronal: su topologa, el mecanismo de aprendizaje, tipo de asociacin realizada entre la informacin de entrada y de Salida y por ltimo la forma de representacin de estas informaciones. 1.2.6.2 Topologa de las redes neuronales Consiste en la organizacin y disposicin de la red formando capas o agrupaciones ms o menos alejadas de la entrada y salida de la red. En este sentido, los parmetros fundamentales de la red son: el nmero de capaz, el nmero de neuronas por capa, el grado de conectividad y el tipo de conexiones entre neuronas. 1.2.6.2.1 Redes Monocapa En estas redes se establecen conexiones laterales entre las neuronas de la nica capa que constituye la red. Tambin puede existir conexiones autorrecurrentes (salida de una neurona conectada a su propia entrada). Tambin se utiliza en las redes monocapa el modelo de crossbar (barras cruzadas), el cual consiste en una matriz de terminales o barras que se cruzan en unos puntos a los que se le asocia un peso. En la siguiente tabla se muestra la clasificacin de redes monocapa ms conocidas:
Tabla 5. Redes neuronales monocapa48

Tipos de Conexiones CONEXIONES AUTORECURRENTES

CONEXIONES LATERALES

Modelo de Red BRAIN-STATE-IN-A BOX ADDITIVE GROSSBERG (AG) SHUTTING GROSSBERG (SG) OPTIMAL LINEAR ASOCIATIVE MEMORY

HILERA, Jos y MARTNEZ, Vctor. aplicaciones. 1995. p. 71.

48

Redes neuronales artificiales. Fundamento, modelos y

53 EXPLCITAS NO AUTORECURRENTES HOPFIELD BOLTZMAN MACHINE CAUCHY MACHINE LEARNING MATRIX (LM)

CROSSBAR

1.2.6.2.2 Redes Multicapa Las redes multicapa son aquellas que disponen de conjuntos de neuronas agrupadas en varios niveles. La forma de distinguir una neurona es como esta realiza su conexin. Normalmente, todas las neuronas de una capa reciben seales de entrada de otra capa anterior, ms cercana a la red, y envan las seales de salida a una capa posterior, ms cercana a la salida de la red. A estas conexiones se les denomina Conexiones hacia adelante o feedforward. 49 Sin embargo, en un gran nmero de estas redes existe tambin la posibilidad de conectar las salidas de las neuronas de capas posteriores a las entradas de capas anteriores, a estas conexiones se les denomina Conexiones hacia atrs o feedback. En la siguiente tabla se presente los diferentes tipos de redes multicapa segn la conexin que utilizan.

Tabla 6. Redes multicapa50

Tipo de Conexiones

CONEXIONES FEEDFORWARD

CONEXIONES LATERALES IMPLCITAS Y AUTORECURSIVAS

Modelo de Red ADALINE/ MADALINE PERCEPTRON LINEAR/ASSOW/REWAR. PENALTY LINEAR ASSOCIATIVE MEMORY OPTIMAL LINEAR ASSOC MEMORY DRIVE-REINFORCEMENT (DR) LEARNING VECTOR QUANTIZER TOPOLOGY PRESERVING MAP (TMP)

49

________.________ p. 101-180. ________.________ p. 74.

50

54
BIDIRECTIONAL ASSOCIAT. MEMORY (BAM) CONEXIONES SIN CONEXIONES ADAPTIVE BAM ADELANTE/ LATERALES ATRS TEMPORAL ASSOCIATIVE MEMORY FUZZY ASSOCIATIVE MEMORY (FAM) CON CONEXIONES COMPETITIVE ADAPTIVE LATERALES Y BAM AUTORRECURSIVAS ADAPTIVE RESONANCE THEORY (ART) ADAPTE HEURISTIC CONEXIONES SIN CONEXIONES CRITIC (AHC) HACIA LATERALES BOLTZMAN/CAUCHY ADELANTE MACHINES CON CONEXIONES COUNTER PROPAGATION LATERALES BOLTZMAN/CAUCHY MACHINES CONEXIONES ADELANTE ATRS Y BOLTZMAN/CAUCHY LATERALES MACHINES CONEXIONES HACIA ADELANTE BACK PROPAGATION (BPN) FEED FORWARD-FEEDBACK COGNITRON/ JERARQUA DE NIVELES DE CAPAS NEOCOGNITRN BIDIMENSIONALES

1.2.6.3 Perceptrn Este fue el primer modelo de red neuronal artificial desarrollado por Rosenblatt en 1958. El perceptrn puede ser considerado como una aproximacin circuital a un neurn, clula bsica del sistema nervioso. La propiedad ms relevante de un perceptrn es que <<puede aprender lo que puede hacer>>.

T W f
a=f(WXt -T)

55
Figura 27. Esquema de una neurona y el modelo simblico del perceptrn51

La nica neurona de salida del perceptrn realiza la suma ponderada de las entradas, resta el umbral y pasa el resultado a una funcin de transferencia de tipo escaln.

Retropropagacin es un procedimiento mediante el cual el Perceptrn de varias capas, a semejanza del perceptrn simple, aprende a asociar pares de informaciones de estmulo y respuesta. 52
Capa de entradas Capa de salidas

Figura 28. Arquitectura del perceptrn, red feedforward, con una sola capa

1.2.6.3.2 Perceptrn multinivel53 Es una red de tipo feedforward compuesta de varias capas de neuronas entre la entrada y la salida de la misma. Esta red permite establecer regiones de decisin mucho ms complejas que las de dos semiplanos, como en el perceptrn de un solo nivel.
Capa de entradas Capa oculta Capa de salidas

MORAGA, Claudio. Redes neuronales y lgica difusa. Aplicaciones de la lgica borrosa. Madrid: Consejo superior de Investigaciones cientficas, 1992. 152p.
52

51

________.________ 152p. Redes neuronales artificiales. Fundamento, modelos y

HILERA, Jos y MARTNEZ, Vctor. aplicaciones. 1995. p. 113-116.

53

56
Figura 29. El perceptrn multicapa, red feedforward completamente conexa con una capa oculta

Tabla 7. Perceptrn Multicapa

Estructura

Regiones de decisin MEDIO PLANO LIMITADO POR UN HIPERPLANO REGIONES CERRADAS O CONVEXAS
ARBITRARIA COMPLEJIDA D LIMITADA POR EL NMERO DE NEURONAS

Problemas de la XOR
A B

Clases con regiones mezcladas

Formas de regiones ms generales

2 CAPAS

3 CAPAS

4 CAPAS

1.2.6.4 Implemetacin de las redes neuronales Hay varias posibilidades para implementar redes neuronales algunas de ellas son: Por medio de un neurocomputador que es un conjunto de procesadores conectados con cierta regularidad que operan concurrentemente. Entre ellos se tiene Mark III y IV, el ANZA y ANZA Plus o el Delta-Sigma. La realizacin ms simple e inmediata consiste en simular la red sobre un ordenador convencional mediante un software especfico. Es un procedimiento rpido, pero costoso e insustituible por el momento para realizar el entrenamiento y evaluacin de las redes, pero cuya mayor desventaja es que se intenta simular redes que trabajan en paralelo con mquinas que ejecutan secuencialmente las operaciones. Otra forma de realizar redes neuronales es a travs de arquitecturas orientadas a la ejecucin de procesos con un alto grado de paralelismo, tales como redes de transputers, arquitecturas sistlicas, etc. El objetivo de tales redes es acelerar la simulacin de la red neuronal, permitiendo en lo posible, una respuesta en tiempo real. Tambin se pueden realizar redes neuronales mediante su implementacin por uno o varios circuitos integrados especficos. Estos son llamados chips neuronales. Las neuronas y las conexiones se emulan con dispositivos

57 especficos, de forma que la estructura del circuito integrado refleja la arquitectura de la red. Se consigue de esta forma realizaciones que funcionan a alta velocidad, permitiendo en muchas ocasiones el proceso en tiempo real pero a costa de una prdida notable de flexibilidad obteniendo una estructura que se comporte lo ms similar posible a como lo hara una red neuronal. Como diferencia con los neurocomputadores, se puede resaltar el menor nmero de neuronas de los chips neuronales, consecuencia del hecho de que dentro del propio chip se incluyen todas las interconexiones lo cual aumenta su velocidad varios rdenes de magnitud respecto a los neurocomputadores. Aunque la tecnologa microelectrnica parece ser la ms adecuada para la realizacin de redes neuronales, existen varios problemas sin resolver, como es la dificultad de obtener el alto grado de interconexionado, o el problema de la entrada/salida masiva de datos, condicionada por el nmero de pines, o el poder conseguir sinapsis con peso variables, necesarias si se quiere que la red tenga una verdadera capacidad de aprendizaje. El primer problema que supone la solucin microelectrnica corresponde a la eleccin de los siguientes aspectos: Implementacin analgica o digital: es necesario hacer consideraciones sobre los aspectos relacionados con la precisin, velocidad, consumo, inmunidad al ruido, memoria, capacidad de aprendizaje, etc. Arquitectura en matriz de neuronas o de sinapsis: En la matriz de neuronas, cada nodo o neurona est localmente conectado a sus vecinos. El tipo de red y algoritmo definen la necesidad de interconexin la cual esta limitada por la capacidad de integracin del silicio. En una matriz de sinapsis se da una organizacin tipo PLA (Programable Logic Array), con una serie de lneas horizontales correspondientes a los equipotenciales de entrada y una serie de lneas verticales que corresponden a las lneas de suma de neuronas. Cada sinapsis es una multiplicacin. Otra tecnologa que podra ser apropiada en la implemetacin de las redes neuronales es la tecnologa electroptica, con la ventaja de utilizar la luz como medio de transporte de la informacin, permitiendo la transmisin masiva de datos. 1.2.7 Aprendizaje Redes Neuronales Artificiales54 1.2.7.1 Reglas de aprendizaje Aprendizaje se puede definir como la modificacin del comportamiento inducido por la interaccin con el entorno y como resultado de experiencias conducente al establecimiento de nuevos modelos de respuesta a estmulos externos.

54

________.________ p. 35-42.

58 En el caso de las redes neuronales artificiales, se puede considerar que el conocimiento se encuentra representado en los pesos de las conexiones entre neuronas. La caracterstica ms interesante de las redes neuronales artificiales es su capacidad de aprendizaje. Las reglas de aprendizaje especifican cmo adaptar los pesos sinpticos. Esta adaptacin se realiza mediante una interaccin continua entre la red neuronal y el entorno. 1.2.7.2 Mecanismo de Aprendizaje El aprendizaje es el proceso por el cual una neurona modifica sus pesos en respuesta a una informacin de entrada. Los cambios que se producen durante el proceso de aprendizaje se reducen a la destruccin, modificacin y creacin de conexiones entre las neuronas. En las redes neuronales hay dos tipos de aprendizajes: Redes Neuronales con aprendizaje supervisado Redes Neuronales con aprendizaje No supervisado La diferencia fundamental entre ambos tipos esta en la existencia o no de un agente externo (supervisor) que controle el proceso de aprendizaje de la red. Otro criterio utilizado para diferenciar las reglas de aprendizaje se basa en considerar si la red puede aprender durante su funcionamiento habitual (ON LINE) o si el aprendizaje supone la desconexin de la red (OFF LINE). 1.2.7.3 Redes Neuronales con aprendizaje supervisado El aprendizaje supervisado se caracteriza porque el proceso de aprendizaje se realiza mediante un entrenamiento controlado por una gente o revisor externo que determina la respuesta que debera generar a partir de una entrada determinada. Hay tres tipos de aprendizajes supervisados: Aprendizaje por correccin de error Aprendizaje por esfuerzo Aprendizaje estocstico En la siguiente tabla se presenta las redes que tienen este tipo de aprendizaje.55
Tabla 8. Tipos de redes con aprendizaje supervisado

TIPO DE APRENDIZAJE SUPERVISADO

MODELO DE RED ADALINE/ MADALINE

55

________.________ p. 77-82.

59 APRENDIZAJE POR CORRECCIN DE ERROR OFF LINE PERCEPTRON BACKPROPAGATION BRAIN-STATE-IN-A-BOX COUNTER PROPAGATION LINEAR REWARD PENALTY ASSOCIATIVE REW. PENALTY ADAPTIVE HEURIST. CRITIC BOLTZMAN MACHINES CAUCHY MACHINES

APRENDIZAJE POR REFUERZO APRENDIZAJE ESTOCSTICO

ON LINE OFF LINE

1.2.7.4 Redes con aprendizaje no supervisado Estas redes no requieren influencia externa para su aprendizaje, la red no recibe ninguna informacin del entorno para modificar sus pesos, y se puede decir que se pueden autoorganizar. Estas redes deben encontrar las caractersticas, regularidades, correlaciones o categoras que se puedan establecer entre los datos que se presenten en su entrada. En cuanto a los algoritmos de aprendizaje no supervisado se tienen dos tipos: Aprendizaje hebbiano: pretende medir la familiaridad o extraer caractersticas de los datos de entrada. Aprendizaje Competitivo y Cooperativo: se orienta hacia la clasificacin de los datos. En la siguiente tabla se muestran las redes que tienen este aprendizaje y que utilizan alguno de estos dos algoritmos.
Tabla 9. Redes con aprendizaje no supervisado56

TIPO DE APRENDIZAJE NO SUPERVISADO

MODELO DE RED HOPFIELD LEARNING MATRIX TEMPORAL ASSOC. MEMORY LINEAR ASSOC. MEMORY LAM OPTIMAL LAM DRIVE-REFORCEMENT FUZZY ASSOCIATIVE MEMORY ADDITIVE GROSSBERG SHUTTING GROSSBERG BIDIRECTIONAL ASSOC. MEMORY ADAPTIVE BAM LEARNING VECTOR QUANTIZER COGNITRON/NEOCOGNITRN

APRENDIZAJE HEBBIANO

OFF LINE

ON LINE

APRENDIZAJE
56

OFF LINE

________.________ p. 84-100.

60 COMPETITIVO/ COOPERATIVO TOPOLOGY PRESERVING MAP ADAPTIVE RESONANCE THEORY

ON LINE

1.2.8 Aplicabilidad de las Redes Neuronales Artificial RNA57 Algunas de las caractersticas que hacen deseables el empleo de RNA en la solucin de un problema son:

Inexistencia de un modelo o un de un experto en el dominio del problema, o que en el caso de que exista el experto, ste no pueda transmitir adecuadamente su conocimiento para la realizacin de un Sistema Experto. Gran cantidad de datos, adems cuando los datos son ruidosos, contradictorios o incompletos. Necesidad de adaptacin al medio, bien porque el entorno evolucione o bien porque se disponga de nuevos datos que puedan requerir reconfiguraciones parciales o totales del sistema. Cuando el parmetro de tiempo de respuesta es crtico para el sistema. Evidencia de no lineadidad significativa.

1.2.8.1 Redes Neuronales Artificiales en Problemas de Prediccin La prediccin es un intento permanente de anticipacin de un futuro incierto y forma parte de un proceso complejo de toma de decisiones. Las tcnicas de prediccin clasificadas segn el tipo de informacin que utiliza es: Informacin Subjetiva. La prediccin toma como base propia opinin del experto sobre el futuro de la cuestin en estudio. Informacin Histrica. Utiliza la propia evolucin del fenmeno objeto del estudio en perodo anteriores (series temporales). Informacin Relacional o Causal. Toma como base las reglas internas de funcionamiento del tema cuyo comportamiento se trata de predecir. 1.2.8.2 Modelo de red58 El modelo de red que se utilizar ser del tipo multicapa alimentado hacia delante y con clulas analgicas que contienen funciones de activacin sigmoidal. Cada capa recibir seales de la capa inmediatamente siguiente. Como se ve en la siguiente figura.

57

ZAFRA, Jos Luis y CARPINTERO, Antonio. Algunas aplicaciones de las redes neuronales. Consejo superior de investigaciones cientficas. 1992. p. 246.

ROS CARRIN, Juan. Redes de Neuronas Artificiales en problemas de prediccin. Consejo superior de investigaciones cientficas. 1992. p.5.

58

61

Entradas Capas intermedias

Capa de salidas

Figura 30. Red Neuronal Multicapa

Las C capas de clulas sern distinguidas por un ndice c=1,2,...,C. El valor c=0 se reservar para designar el conjunto de entradas de la red. Dentro de cada capa tenemos nc clulas reales, que se designan mediante un ndice que tomar valores de 1 a nc. Adems se usaran las siguientes notaciones: Sip(c): Salida de la i-sima clula de la capa c-sima cuando se presenta el patrn de entrada p. Para c=0 representa la i-sima componente del patrn de entrada p. Oip(c): Es otra notacin para Sip(c). netip(c): Entrada neta de la i-sima clula de la capa c. wij(c): Peso de la sinapsis entre la clula i-sima de la capa c-1 y la i-sima de la capa c. Slo esta definido para 1cC y 1inc. tip: Salida deseada de la i-sima clula de la capa de salida al presentarse el patrn p de entrada. El ndice p representa el patrn de entrada, y s el conjunto de posibles patrones es discreto, p tomar valores enteros entre 1 y P, donde P representa el nmero total de posibles patrones. En tal caso, los elementos definidos anteriormente pueden interpretarse como elementos de matrices. En otros casos el conjunto de patrones ser continuo, y p ser entonces un parmetro que vara continuamente.

Modelo analgico con funcin de activacin sigmoidal ordinaria La funcin de activacin ser la sigmoide 1 F( X ) = 1 + e X y el conjunto de valores de activacin ser el intervalo ser el intervalo abierto (0,1). Modelo analgico con funcin de activacin sigmoidal simtrica su funcin de activacin es la tangente hiperblica e X e X th( X ) = x e + e X y su conjunto de valores de activacin es el intervalo abierto (-1, +1).
Una vez definido el modelo, su modo de funcionamiento se definir as: por cada patrn p de entrada que se presente, los siguientes cmputos son realizados por las clulas de cada capa c de la red:

62
( netipc ) =
j =1...nc1 c Wij S (jp 1)

( ( Sipc ) = F (netipc ) )

Los cmputos se inician en la primera capa de clulas, y se propagan hacia delante a travs de las sucesivas capas c=1,2,...C. 1.2.8.3 Mtodo iterativo para el ajuste de la red El ajuste de una red neuronal consiste en la determinacin de los valores de sus pesos sinpticos que mejor aproximan las salidas reales de la red a las salidas deseadas para cada patrn de entrada. El modo de realizar dicha determinacin consiste en someter a la red a un entrenamiento, durante el cual se le presentan los distintos patrones de entrada, se comparan las salidas proporcionadas por la red con las deseadas, y se modifican los pesos sinpticos de acuerdo con algn algoritmo que asegure una progresiva aproximacin entre las respuestas de la red y las que se desean. El proceso de entrenamiento desde un punto de vista matemtico se puede asimilar a un problema de optimizacin. Primero, hay que definir una funcin distancia entre las salidas reales de la red y las deseadas. Una forma de realizarlo consiste en considerar las salidas como las componentes de un vector, y usar la distancia eucldea. Si la red tiene n clulas de salida, y para el patrn p genera las salidas sp=(s1p,s2p,...snp), siendo tp=(t1p,t2p,...tnp) las salidas deseadas, entonces la siguiente funcin (llamada funcin de error) sirve como medida de la diferencia entre unas y otras:

E p = 1 / 2 (tip sip ) 2
i =1

De hecho la distancia eucldea entre sp y tp es (2Ep) El problema puede plantearse como minimizacin de Ep, o ms minimizacin del promedio de Ep sobre todos los patrones p. Las salidas obtenidas Sip dependen de los pesos sinpticos de la red, y por tanto Ep puede considerarse como una funcin de dichos pesos. El mtodo de optimizacin se dice de orden p cuando el algoritmo de optimizacin posee determinadas propiedades de convergencia. Inicialmente se puede considerar de orden p aquellos algoritmos en los que intervienen las derivadas parciales de la funcin objetivo hasta el orden p. Los mtodos iterativos deterministas para optimizar una funcin f:RnR se basan fundamentalmente en algoritmos de la siguiente forma:

Elegir un punto xoR. Dado xk seleccionar una direccin de bsqueda dk.

63

Seleccionar un nmero real positivo adecuado ak. (Generalmente para minimizar f(xk+ ak dk) Calcular xk+1= xk+ ak dk. Sustituir xk por xk+1 y regresar al paso 2.

Los mtodos deterministas de primer orden para la optimizacin de funciones hacen uso de las derivadas parciales de la funcin objetivo hasta el primer orden para la determinacin de la direccin de bsqueda. Uno de los ms conocidos es el denominado mtodo de descenso de gradiente ( o de ascenso, si se trata de un problema de maximizacin). Se basa en el uso del gradiente (cambiando de signo) de la funcin objetivo como direccin de bsqueda, y su fundamento es: Sea f(x) la funcin a minimizar, donde x=(x1, x2,..., xn). Su desarrollo en serie de Taylor hasta el primer orden es: f(x+h)= f(x)+f(x)h=f(x1, x2,..., xn)+i=1nhi/xi f(x1, x2,..., xn) donde h=f(h1, h2,..., hn) y f(x) = gradiente de f(x), es decir, un vector cuyas componentes son

f(x1, x2,..., xn)/xi


Si se toma h=-hf(x), donde h es una constante positiva lo bastante pequea como para justificar la aproximacin utilizada, se obtiene f(x-hf(x))= f(x)-h(f(x))2 lo que lleva a que el valor de la funcin f(x) tiende a descender al pasar de x a (x)hf(x). Este resultado sirve como fundamento del siguiente algoritmo: tmese un punto arbitrario de partida xo y aplquese reiteradamente la siguiente frmula:

xk=-hf(xk) xk+1=xk+xk
donde h es un pequeo parmetro positivo fijo. Esto proporciona una sucesin {xk} de puntos para los que es de esperar que los valores de la funcin f(xk) vayan descendiendo progresivamente. Este algoritmo tiene varios inconvenientes:

No hay criterio a priori para la eleccin del punto de partida xo y del parmetro h. Sin embargo la eleccin de dichos parmetros puede ser fundamental para el xito del mtodo. Puede conducir a un punto de mnimo relativo (donde f(x)=0) que no sea mnimo absoluto.

64 A pesar de los inconvenientes mencionados anteriormente, el mtodo de descenso de gradiente ha dado origen a uno de los mtodos ms empleados para el ajuste iterativo de redes neuronales: el mtodo de retropropagacin. 1.2.8.4 Algoritmo59 Dada una funcin de error:

E p = 1 / 2 (tip sip ) 2
i =1

la aplicacin del mtodo de descenso de gradiente conduce a la siguiente frmula de actualizacin de pesos: p wij = h(E p / wij ) El problema ahora es el clculo de Ep/wij. Si wij es el peso sinptico de una neurona de salida, el clculo de la derivada parcial no presenta dificultad: E p wij = (tip sip )(sip wij ) = (tip sip ) s jp F ' (neti ) donde neti=jwijsjp. La derivada de la funcin de activacin admite una forma simple en el caso de que sea una sigmoide: F ( x ) = 1 (1 + e x ) F ' ( x) = F ( x)(1 F ( x)) o la tangente hiperblica: F ( x ) = th( x ) F ' ( x ) = 1 ( F ( x)) 2 Para neuronas situadas en capas anteriores, el clculo de Ep/wij es ms difcil, pero puede simplificarse poniendo: ip = E p netip Aplicando la regla de la cadena, tenemos: E p wij = (E p netip )(netip wij ) = ip sip Basta, por tanto, calcular ip para todas las clulas de la red. desarrollando una frmula recursiva. En general se tiene: Esto se logra

ip = (E p sip )(sip netip ) sip netip = F ' (neti )

Para las neuronas de salida se verifica: E p sip = (tip sip ) luego si la i-sima clula es de salida.

ip = (tip sip ) F ' (neti )

59

________.________ p.10.

65 Para las clulas de capas posteriores se tiene: E p sip = (E p net kp )(net kp sip ) = kp wki
k k

donde k recorre las clulas con las que se halla conectada la i-sima neurona. Entonces se obtiene la siguiente frmula recursiva: ip = F ' (neti ) kp wki
k

De este modo los clculos pueden disponerse as:

Alimentacin hacia adelante. Comenzando con las entradas de la red y progresando hacia delante, calcular las salidas: netip = wij s jp
j

sip = F (netip )
Calcular ip para la capa de salida: ip = (tip sip ) F ' (netip ) Calcular ip para las capas anteriores a la salida mediante la siguiente frmula recursiva (retropropagacin): ip = F ' (netip ) kp wki
k

donde el ndice k recorre todas las clulas a las que se halla conectada la i-sima neurona.

Calcular los incrementos de los pesos: p wij = i jp wip

En el modelo de red mostrado, cada neurona se conecta nicamente a clulas de la capa siguiente, lo cual permite expresar el algoritmo haciendo referencia explcita a las capas de clulas. Se usa el ndice c=0,1,2,...C para ello. Con las notaciones utilizadas, el algoritmo de retropropagacin sera as:

Para c=1 hasta C, hacer lo siguiente: ( ( c netipc ) = wijc ) s(jp 1)


j

( c) ip

( = F (netipc ) )

( ( ( Calcular ipc ) = (tip sipc ) ) F ' (netipc ) )

Para c=C-1 descendiendo hasta 1, se hace lo siguiente: ( ( ( c ipc ) = F ' (netipc ) ) (kp+1) wkic+1)
k

Calcular p wij = ip s jp

Una vez calculados los incrementos de pesos pwij, caben dos posibilidades:

66

Actualizacin incremental de pesos. Los pesos se actualizan inmediatamente tras la presentacin de cada patrn: wij (nuevo) = wij (antiguo) + p wij Actualizacin de pesos en lote (batch): los incrementos se acumulan para todos los posibles patrones: wij (nuevo) = wij ( antiguo) + p wij
p

1.3 RED HBRIDA NEURO-FUZZY (RHND)

Esta nueva herramienta es una combinacin entre redes neuronales artificiales y controladores fuzzy, minimizando de esta forma los problemas en las aplicaciones de control inteligente. El uso de tcnicas hbridas resaltan las ventajas y soslayen las desventajas de las tcnicas individuales. Toman su topologa de las Redes Neuronales Artificiales tpicas (RNA) preservando los nodos que desarrollan una funcin simple (sigmoide, logstica o lineal), pero intercalan capas de nodos con funciones internas ms complejas (funciones de pertenencia, implicacin y concrecin en subconjuntos difusos). Las redes neuronales artificiales (RNA) son conocidas por la gran habilidad para aprender las caractersticas de un grupo de patrones de entrada - salida, y la cantidad de generalizacin que entregan cuando se les enfrenta a datos no presentados durante las etapas de entrenamiento. La importancia de la fuzzy logic es la facilidad de expresar los factores complejos de un sistema de control por descripciones lingsticas autoexplicatorias de la estrategia de control permitiendo representar importantes piezas de razonamiento comn y calcular su factor de certeza. El siguiente esquema muestra la estructura general de un sistema Neuro-Fuzzy.
Agente

Traductor

Diligente

67
Figura 31. Estructura general de un sistema Neuro-Fuzzy. 60

El mdulo llamado agente puede ser un Controlador fuzzy o un Sistema Experto (controlador computacional) con fuzzy logic, el mdulo diligente contiene una red neuronal, que continuamente est observando las entradas y salidas del agente y en determinados casos aprende las situaciones nuevas. El mdulo transductor tiene como tarea extraer de la arquitectura resultante de la red neuronal la informacin aprendida y expresarla en reglas utilizando predicados vagos para ser incorporada a un Controlador. 1.3.1 Justificacin de la fuzzy logic y las redes neuronales61 Aunque la tarea de control que cumple un ser humano se realiza de manera adecuada, esta depende del grado de especializacin que alcanzan los operadores, su estado de animo y de los distintos operarios. Por tanto se hace necesario proveer controles automticos adecuados, debido a la complejidad de algunos procesos se tiene una incipiente automatizacin y gran carga de mando manual. Estas limitaciones se deben: alta dimensionalidad del proceso, variacin con el tiempo de las caractersticas del sistema, no linealidad en el comportamiento del proceso, modelamiento pobre de la dinmica del proceso y problemas de medicin bajo incertidumbre. Es aqu, donde se requiere un control que goce de caractersticas inteligentes, con el cual sea posible controlar estos procesos en un grado mucho mayor que el actual y con las mismas o mejores prestaciones con las que lo hace el operador humano. El control inteligente se puede definir como aquel mecanismo que es capaz de razonar, comprender y aprender de la tarea de control que realiza, mejorando permanentemente su desempeo. Para lograr un control inteligente es necesario utilizar nuevas tcnicas que faciliten manejar los procesos, entre estas tecnologas se tiene la fuzzy logic y las Redes Neuronales. Una neurona fuzzy puede modelarse como una unidad de procesamiento que recibe unas seales de entrada a travs de unas sinapsis fuzzy, la entrada es el producto de la salida de la neurona anterior por el peso fuzzy de la conexin. La entrada neta de la neurona no se obtiene como la suma aritmtica de las entradas, sino como la suma fuzzy de las mismas.

MORAGA, Claudio. Redes neuronales y lgica difusa. Aplicaciones de la lgica borrosa. Madrid: Consejo superior de Investigaciones cientficas, 1992. 159p. HILERA, Jos y MARTNEZ, Vctor. aplicaciones. 1995. p.300.
61

60

Redes neuronales artificiales. Fundamento, modelos y

68
1 . . . j . . . N S1 1 . . . i . . . M

Sj

SN

Capa C-1

Capa C

Figura 32. Red con neuronas fuzzy

1.3.2 Comparacin entre las caractersticas de las redes neuronales y la fuzzy logic62

Las redes neuronales se caracterizan por su capacidad de procesamiento paralelo de informacin, mientras que el procesamiento de un programa de fuzzy logic depende de la arquitectura del ordenador si se realiza en software, cuando es realizado en hardware esta limitado por la capacidad del procesador fuzzy (entradas, salidas y funciones de membresa). Una red neuronal (un perceptrn de varias capas) fundamentalmente asocia pares de vectores de informacin (vectores de entrada o estmulos y vectores de salida). El procesamiento de un sistema fuzzy es a nivel de la inferencia lgica. Tanto una red neuronal como el sistema de fuzzy logic exhiben una capacidad de interpolacin en el sentido de procesar adecuadamente elementos nuevos de informacin. Las redes neuronales tienen capacidad de aprendizaje supervisado, sobre la base de ejemplos. Un sistema de fuzzy logic se distingue por su capacidad de realizar inferencia, utilizando la extensin fuzzy del modus ponens. En las redes neuronales se desarrolla un conocimiento a posteriori a travs del proceso de aprendizaje, que se materializa en el ajuste de las ponderaciones de los perceptrones elementales. La fuzzy logic opera sobre la base de reglas de diferencia que presuponen un conocimiento a priori sobre el universo de discurso. Un perceptrn de varias capas es un clasificador ntido; en cambio un sistema de fuzzy logic considerado como clasificador es, obviamente, un clasificador fuzzy. La operacin elemental de un perceptrn es una evaluacin de seleccin sobre el producto escalar de un vector de informacin con un vector de ponderaciones (ajustables) comparado con un vector (umbral) de referencia. Las operaciones en un proceso de inferencias son los conectivos lgicos fuzzy, en particular las llamadas normas y conormas triangulares.

MORAGA, Claudio. Redes neuronales y lgica difusa. Aplicaciones de la lgica borrosa. Madrid: Consejo superior de Investigaciones cientficas, 1992. 152p.

62

69

El procesamiento de informacin en una red neuronal es fundamentalmente no lineal debido a que las funciones de seleccin son sigmoides o escalonadas. El procesamiento de un sistema fuzzy logic puede considerarse como adaptivo, en el sentido de que permite utilizar el grado de precisin requerido por la aplicacin concreta y cambiarlo de una aplicacin a otra con relativa facilidad. Mediante la utilizacin de perceptrones elementales redundantes es posible construir redes neuronales tolerantes a fallas. Esto puede ser considerado como una tolerancia estructural. Un sistema de fuzzy logic puede operar sobre la base de Etiquetas lingsticas, lo cual hace que estos sistemas sean inherentemente robustos.
Tabla 10. Ventajas y desventajas de las Redes Neuronales y la Fuzzy Logic63

Representacin del conocimiento

Entrenabilidad

Redes Neuronales Implcita, el sistema no puede ser fcilmente interpretado o modificado (-) Se entrenan ellas mismas a partir del conjunto de datos (+++)

Fuzzy Logic Explcito, la verificacin y optimizacin son fciles y eficientes (+++) Ninguna, se puede definir explcitamente (-)

1.3.3 Ventajas y desventajas del uso de RHND para controles fuzzy Entre los aspectos que hacen atractivo el uso de Redes Hbridas Neurofuzzy (RHND) con respecto a un Sistema Experto (SE) para la implantacin de controles fuzzy pueden destacarse: Capacidad de aprendizaje sin que se pierda significado de las reglas originales o se presenten distorsiones severas en la implantacin del sistema despus del entrenamiento Disponibilidad de algoritmos de entrenamiento supervisado, ampliamente probados en RNA (Redes Neuronales Artificiales), de los que pueden usarse con muy pocas modificaciones en las RHND Menor tiempo de inferencia frente a las implantaciones con programas de Sistema Experto (SE), adems se procesa en forma paralela, porque se evita las arduas bsquedas en rboles de decisin La facilidad de programacin de un RHND frente a la complejidad inherente de los programas de SE. La principal desventaja es su capacidad limitada de explicacin cuando se compara con la que tienen los programas de SE. 1.3.4 Pasos de desarrollo de sistemas NeuroFuzzy64

70

Obtencin de los datos de entrenamiento. Para esto se obtienen los conjuntos de datos que representan el comportamiento deseado del sistema. Cada conjunto de datos da un valor de salida de ejemplo para una combinacin de variables de entrada. Creacin del sistema fuzzy logic. El proceso de entrenamiento NeuroFuzzy comienza con un sistema fuzzy logic inicial que puede ser definido por el usuario o por un asistente de diseo fuzzy. Cualquier pieza de informacin que se puede incluir en el sistema inicial a parte de la experiencia el algoritmo NeuroFuzzy podra no extraerla de los datos de entrenamiento. Este es un hecho muy importante, debido a que la mala calidad de los datos es la razn que hace que falle con mayor frecuencia el entrenamiento de la red neuronal. La fuzzy logic permite la utilizacin de informacin de mltiples fuentes como son la experiencia de los usuarios y los datos de muestra. Definicin del aprendizaje Neuro-Fuzzy. Se seleccionan las partes del sistema que el mdulo Neuro-Fuzzy puede modificar, esto es una ventaja sobre el aprendizaje en la red neuronal en la cual el sistema completo es siempre entrenado para tener un mejor control del proceso de aprendizaje. Especialmente cuando se utiliza el Neuro-Fuzzy para optimizar un sistema fuzzy logic, se pueden excluir partes del sistema de aprendizaje. Si se han definido reglas por experiencia como parte del sistema fuzzy logic inicial estas pueden ser utilizadas para el aprendizaje. Esto es muy til si no se esta completamente seguro de que reglas o funciones de membresa de las definidas son correctas. Seleccin del mtodo de aprendizaje. El mtodo de aprendizaje define como los errores entre los resultados computados por el sistema fuzzy logic actual y los valores de salida deseados causaran una modificacin de las reglas y las funciones de membresa. Para optimizar el desempeo se puede parametrizar el mtodo de aprendizaje. Dos parmetros son los ms importantes. Uno es la rata de aprendizaje para reglas y el otro la rata de aprendizaje para funciones de membresa. Estos parmetros definen cual fuertemente el algoritmo Neuro-Fuzzy modifica una regla o una funcin de membresa en cada paso de aprendizaje. Fase de entrenamiento. Aplicando lo anterior se seleccionan y modifican las reglas y funciones de membresa hasta minimizar el error segn el criterio utilizado. Optimizacin y verificacin. Por medio de analizadores lgicos, herramientas de desarrollo de software y hardware y pruebas in situ se verifica la correcta operacin del sistema y generalmente por mtodos numricos se realizan diferentes tipos de optimizacin. Una ventaja de la Neuro-Fuzzy respecto a la solucin por medio de redes neuronales es que el cdigo generado es mucho ms eficiente.

1.3.5 Entrenamiento de sistemas Fuzzy Logic con NeuroFuzzy El algoritmo del error back propagation fue el ms utilizado para la implementacin del entrenamiento de las Redes Neuronales. Primero, se selecciona una muestra del
63 64

VON ALTROCK, Constantin. Fuzzy Logic & NeuroFuzzy. New Jersey: Prentice Hall. 1995. p. 69. ________.________ p. 71

71 conjunto de datos de entrenamiento. Segundo, se calcula el valor de la salida de la red neuronal para el conjunto de muestras de entrenamiento actual. Tercero, se compara la salida de la red con la salida deseada de la muestra de entrenamiento. Por ultimo, la diferencia, llamada error determina cual neurona de la red puede o debe ser modificada y como. La asignacin matemtica del error inverso en las neuronas de la red es llamado back propagation del error. Para determinar cual neurona fue la que influenci el algoritmo del back propagation del error, se diferencia matemticamente las funciones de transferencia de las neuronas. Un problema es que la inferencia del fuzzy logic estndar no puede ser diferenciada porque esta utiliza operaciones matemticas como son mnimo y mximo. Para resolver estos problemas algunas herramientas de desarrollo NeuroFuzzy utilizan mtodos de inferencia extendidos para fuzzy logic. La metodologa ms comn es utilizar memorias fuzzy asociativas FAMs (Fuzzy Asociative Memory). En una implementacin simple una FAM es una regla fuzzy logic con un peso asociado. Matemticamente se puede asignar FAMs a neuronas en una red neuronal. Esto permite la utilizacin de un algoritmo de back propagation con error modificado en fuzzy logic.

Figura 33. Tecnologa Neurofuzzy

1.3.5.1 Generacin neuronal de reglas de control fuzzy

72 Las redes neuronales con aprendizaje competitivo sin supervisin permiten establecer clases o categoras de datos (clusterizacin). Con lo cual se puede modificar las redes para establecer las reglas que gobiernan el funcionamiento de un sistema de control fuzzy. Para esto es necesario disponer de un gran nmero de datos, a partir de los cuales la red pueda establecer las relaciones y categoras, que en este caso son las reglas de control. Cuando la red aprende todas las parejas, han establecido a qu clase (regla) pertenece cada una, registrando en sus pesos los centroides o representantes de cada clase. 1.3.5.2 Ajuste neuronal de funciones de pertenencia fuzzy Una posible utilizacin de las redes neuronales en sistemas fuzzy es el ajuste o afinado de las funciones de pertenencia. Para lo cual, se podra caracterizar estas funciones mediante parmetros y utilizar una red sin supervisin, que permita obtener un representante de la funcin de pertenencia a travs de diferentes ejemplares de la misma ofrecidos por varios especialistas diferentes, ajustando una funcin de pertenencia cuya forma es conocida; sin embargo, se puede utilizar una red neuronal con aprendizaje supervisado, para que la propia red establezca la forma de dicha funcin. Se podra utilizar una red backpropagation con tantas neuronas de entrada como entradas el sistema (x1,...,xN), y tantas salidas como diferentes conjunto fuzzy (C1,...,CK) a los que pueden pertenecer las entradas. La red se entrenara presentando diferentes valores de entrada que activaran las salidas correspondientes a los conjuntos a los que pertenece cada valor. Despus de la fase de aprendizaje, se dispone de una red que, aunque en principio se ha entrenado para que genere valores binarios (0 si pertenece al conjunto y 1 si no es as), al disponer de capas de neuronas ocultas, en los correspondientes pesos ocultos la red ha establecido unas formas concretas para las funciones de pertenencia, de tal forma que ante un nuevo valor de entrada genera como salida un valor entre 0 y 1 que representa el grado de pertenencia al conjunto Ci representado por esa salida. 1.3.5.3 Diseo de controladores Neurofuzzy anlogos Se presenta una arquitectura paralela para controladores fuzzy y una metodologa para su realizacin como un chip CMOS anlogo para aplicaciones de baja y media precisin. Estos chips pueden se hechos para aprender a travs de adaptacin o parmetros controlados elctricamente guiados por un algoritmo de aprendizaje compatible con hardware dedicado. Los diseos enfatizan la simplicidad a nivel circuital, un prerequisito para incrementar la complejidad del procesador y su velocidad de operacin. Los juegos fuzzy y la inferencia fuzzy capacitan para discernir acerca de caractersticas locales para predecir las conducta de un sistema, an si una descripcin matemtica exacta es desconocida o mal definida. Por ejemplo, la

73 inferencia fuzzy puede estabilizar un polo invertido en un carro movindose a travs de declaraciones como Si el polo est cayendo rpidamente a la izquierda, luego el carro debe moverse rpidamente hacia la izquierda. Para la inferencia fuzzy, como para el operador humano, no hay necesidad de formulaciones exactas de la dinmica de los sistemas. Hay dos diseos que se aproximan al hardware de inferencia fuzzy: el anlogo y el digital. Hay dos clases de chips fuzzy anlogos: de funcin fija y adaptivos. 1.3.5.4 Estrategias de Programacin Criterios para la evaluacin de estrategias: Variacin del rango de parmetros adaptivos Variacin del rango de parmetros de control Influencia del circuito controlado en rango de entrada de modo comn No uniformidad de la relacin entre parmetros de control y parmetros adaptivos.

2. SCINEF

El Sistema de Control Integrado Neuro-Fuzzy es un sistema completo de control que utiliza como mtodos de control, adems de los tradicionales, fuzzy logic y redes neuronales. El ncleo del sistema es un procesador Z80180S de Zilog Inc. ms un microcontrolador anlogo programable fuzzy AL220 de Adaptive Logic . A este sistema se le adicion la facilidad de conexin del estndar industrial PC104 el cual brinda la posibilidad de integrar cualquier tipo de perifricos al sistema, entre los cuales se destacan los mdulos de Basic I/O, AD/DA, Digital I/O y Comunications.

2.1 MDULOS

75

FUZZY PROCESSOR
OPTO-22 AD / DA CONVERTERS

HIGH VOLTAGE DRIVER

PC 104 BUS INTERFACE

DIGITAL I/O

SERIAL INTERFACE RS232/RS485

CORE MODULE PIC SLAVE PROCESSOR

BASIC PC 104 Interface High Voltage Driver I / O Programmable Oscilator 88C55 Interface
- Parallel Port - Smart Card Interface - Voice Module Interface PC Keyboard Interface Matrix Keypad 16 x 8 5 Ch. 8-bit AD Digital Prog. PWM I2C, SCP Interface SCI (USART) 3 Counter/Timers Buzzer

Figura 34. Diagrama de bloques SCINEF (hardware)

76 2.1.1 Mainboard

DRIVER DE CORRIENTE

BUFFERS/ PC104 INTERFACE

MODULO LCD

PUERTO IMPRESORA IMPRESORA ISD SMART CARD CORE MODULE SUPERVISOR VOLTAJES

PIC SLAVE PROCESSOR 5 Ch. 8-bit AD MATRIX KEYPAD CONTROLLER 3 Counter/Timers I2C, SCP Interface SCI (USART)

PC KEYBOARD CONTROLLER

Digital Prog. PWM

Buzzer

Figura 35. Diagrama de Bloques Mainboard

2.1.1.1 Core Module El Core Module, CM7000 de ZWorld, es una unidad procesadora completa, con sistema de desarrollo integrado para lenguaje C y/o ensamblador y sus principales caractersticas son: Pequeo tamao, 1.80 x 2.05 (45.7 x 52.1 mm) Microprocesador: Z180 con una velocidad de reloj de 9.216 MHz o 18.432 MHz, incluyendo dos canales de DMA, dos puertos seriales y dos temporizadores programables. SRAM: de 32 Kbytes a 512 Kbytes.

77

CM7100 EPROM: base para DIP de 32 pines con el cual puede utilizar memorias EPROM hasta de 512 Kbytes. CM7200 Flash EPROM: puede utilizar memorias hasta de 256 Kbytes. Soporte de direccionamiento directo para perifricos con 6 lneas de seleccin de hasta 64 direcciones cada una. Baja EMI.

Figura 36. Diagrama de bloques CORE MODULE CM7110

Opciones

Supervisor ADM 691: provee de watchdog timer, power on reset, alarma de bajo voltaje y soporte de batera de respaldo. Reloj de tiempo real 72423. CM7100 EEPROM: 512 bytes

2.1.1.2 PIC Slave Processor El PIC16C74A se utiliza como procesador paralelo esclavo y es el encargado de la administracin de perifricos que de ser controlados directamente por el CORE MODULE disminuiran su rendimiento innecesariamente. Este mdulo tambin provee al sistema de funciones de entrada /salida especficas para las cuales, de ser implementadas en discreto emplearan un alto nmero de integrados y algunos circuitos de gran complejidad. Sus mdulos funcionales se describen a continuacin:

PC Keyboard Interface. Interface compatible con teclados para computadores AT de 82, 101 102 teclas. Matrix Keypad 16 x 8. Controlador de teclado matricial con interface de doce pines configurables por software soportando matrices de hasta contactos sin necesidad de hardware adicional y 128 contactos con decodificador de 4 a 16. Su modo de deteccin no es por barrido constante de los contactos activos sino por interrupcin para lo cual se cuenta con 5 entradas con esta funcin.

78

5 Ch. 8-bit AD. Se utiliza el conversor AD del microcontrolador con la referencia de voltaje de 5V siendo posible de esta manera monitorear las fuentes de +5, +12, voltaje de alimentacin del CORE, el voltaje de la batera y un voltaje externo. Digital Programmable PWM. Para este mdulo se utiliza uno de los puertos de captura/comparacin/PWM del integrado permitiendo as generar seales controladas digitalmente de entre 1.22KHz hasta ms de 4MHZ con resolucin de 12-bit y ciclo til de 0 a 100% con resolucin de 10-bit. I2C, SCP Interface. Utilizados para funciones de comunicacin con protocolos de 3 hilos compatibles SPI (serial port interface) SSP (synchronous serial port). Estos puertos utilizan los mismos pines de la interface para teclado PC AT. SCI (USART). Serial communication interface que provee al mdulo de funciones USART. 3 Counter/Timers. Estos contadores pueden ser incrementados incluso encontrandose apagado el integrado (modo sleep) por medio de un reloj externo. Buzzer. Fue implementado por conexin directa con el puerto de PWM (frecuencia variable, ciclo 50%).

79

Figura 37. Diagrama de bloques PIC16C74A

2.1.1.3 Basic I/O Este mdulo se utiliza para adicionar caractersticas esenciales de entrada y salida del sistema como son: Oscilador programable de 1 MHz con divisores que proveen hasta 57 frecuencias diferentes entre 0.5 pulsos por minuto hasta 1 MHz. Con

80 posibilidad de reloj externo o de software. Salidas tree-state tanto para el oscilador fijo a 1 MHz como para el programable. 6 temporizadores contadores de 16 bits para relojes hasta de 10 MHz con 6 modos de funcionamiento independientes cada uno. Un puerto paralelo para impresora. Un puerto paralelo compartido para tarjeta inteligente, grabador/reproductor de voz o impresora. Driver de alta corriente de 8 salidas de hasta 300 mA cada una y hasta 30 V. Puerto auxiliar de salida compatible TTL de 4 bits. 2 led independientes de sealizacin de estados. Interface I/O para display de cristal lquido. Seleccin de perifricos: 6 lneas de seleccin fija de 64 direcciones cada una, 8 lneas de seleccin fija de 4 direcciones cada uno y 20 lneas de seleccin EEPROM programables para seleccin de perifricos. Bufferizacin de todas las seales de control y datos del sistema. Monitor de voltaje para las fuentes de 5, 12 y una auxiliar. Proteccin para voltajes de polaridad inversa en todas sus fuentes. Reset interno y externo. Batera interna y externa. Conector para voltaje de respaldo de memoria RAM. Regulador interno de 5V @ 1A con monitor de voltaje, diodo de proteccin para voltajes de polaridad inversa, voltaje de entrada entre 7.5 a 37 V.

2.1.1.4 Perifricos

81

LCD TECLADO VOICE MODULE INTERFACE

CORE MODULE CM7110

IMPRESORA INTERFACE SMART CARD

OSCILADOR TEMPORIZADOR

Figura 38. Diagrama de bloques perifricos

2.1.2 Microcontrolador fuzzy logic El microcontrolador fuzzy utilizado es un AL220 de Adaptive logic , el cual es un microcontrolador anlogo, econmico, de muy alto rendimiento, y de funcionamiento stand alone el cual incluye conversores A/D D/A. Dado que el AL220 es un controlador dedicado, este ofrece mayor facilidad de utilizacin, desempeo, caractersticas y robustez en ambientes de operacin adversos. El dispositivos posee cuatro entradas anlogas y cuatro salidas anlogas de 8 bits de resolucin. Las salidas pueden ser actualizadas a una velocidad de 0.1 milisegundos (100 veces ms rpido que un microcomputadores de 8 bits).

82

IN

PROCESADOR FUZZY

OUT

CONVERSOR DIGITAL/ ANALOGO

OUT

IN

CONVERSOR ANALOGO/ DIGITAL

CORE MODULE CM7110

RED NEURONAL

DIGITAL OUT

CONTROLADOR DIGITAL

DIGITAL IN

Figura 39. Diagrama de bloques Controlador Fuzzy Logic

83

Otras caractersticas importantes de este controlador son: Todas las salidas son realimentadas por hardware a la entrada. Versiones EEPROM y ROM 256 bytes. Como es basado en reglas se elimina la necesidad de watchdog timer. Empaques plsticos de bajo precio de 18 pin DIP y 20 pin SOIC. Modo de bajo poder. Absolutamente monoltico: solo requiere un oscilador. Posibles circuitos osciladores: RC, resonador cermico, cristal o reloj externo. Reset externo Funcin de preescalizacin para la modificacin de la duracin del ciclo de control. Sistema de desarrollo integrado INSIGHT IIe con capacidad para simular y emular en tiempo real el funcionamiento del dispositivo as como de programarlo. 2.1.3 Mdulos AD y DA Estos mdulos son necesarios debido a que se requiere una interface anloga de entrada y salida con el AL220 y adems como entradas y salidas anlogas de propsito general. Para la implementacin de este mdulo se utilizaron conversores AD/DA de 8 canales 8 bits, adems de buffers entrada y salida para ajustes de nivel y offset, as como sus respectivas protecciones de sobrevoltaje. Se implemento un sistema de multiplexores de tal manera que el conversor AD de 8 canales pueda entregar el valor de 16 seales que son: 8 variables de entrada, 4 seales de salidas del AL220 y las 4 salidas anlogas finales del sistema; el conversor DA de 8 canales utiliza 4 de sus salidas para ser multiplexadas con las salidas del AL220 y otras 4 para remplazar cualquiera de las entradas del mismo. 2.1.4 Comunicaciones Utilizando los dos puertos seriales estndar del Z180 ms algunos puertos de entrada y salida se implementaron mdulos multiplexados para diferentes protocolos e interfaces, los cuales son enumerados a continuacin: Puerto serial 0: 1 puerto serial RS232 con sealizacin CTS/RTS configurable como DTE o DSE y proteccin de sobrevoltaje y sobrecorriente 2 puertos half duplex 485 con sealizacin CTS/RTS. 1 puerto full duplex 485 con sealizacin CTS/RTS . 1 puerto para mdem TTL compatible con selector de canal, PTT, RDY y CTS/RTS. Proteccin de sobrevoltaje y terminadores de lnea para todos los puertos. 2 multiplexores anlogos duales de 4 canales con opcin de ON/OFF.

84 Puerto serial 1: 1 puerto serial RS232 configurable como DTE o DSE y proteccin de sobrevoltaje y sobrecorriente Multiplexor anlogo dual de 4 canales con opcin de ON/OFF.
CORE MODULE CM7110

PUERTO SERIAL 0

PUERTO SERIAL 1

RS232

MODEM

RS485

RS232

Figura 40. Diagrama de bloques Mdulo de Comunicaciones

2.1.5 Digital I/O Este mdulo posee dos unidades completamente compatibles con la interface perifrica programable 8255. Lo cual provee 48 I/O programables en puertos de 4 y 8 bits en tres modos: unidireccional I/O, unidireccional I/O con protocolo y bidireccional I/O con protocolo. Adems de esto se tiene el manejo de 4 fuentes de interrupcin internas, 2 externas y 2 canales de DMA. Estas interrupciones pueden ser de uso exclusivo o compartido ya que el hardware as lo permite. Gracias a la configuracin de sus conectores este mdulo es compatible con el estndar industrial OPTO-22 para dispositivos de entrada y salida tanto anlogos como digitales. Dicha interface posee adems protecciones de sobrevoltaje para proteger todas sus entradas y salidas, y fuentes de alimentacin para dispositivos externos protegidas.

85

CORE MODULE CM7110

PPI 82C55

ESTANDAR OPTO-22

I/O

Figura 41. Diagrama de bloques Mdulo I/O Digitales

2.1.6 Driver de alta corriente


CORE MODULE CM7110 DRIVER ALTA CORRIENTE

RELEVOS

Figura 42. Diagrama de bloques Driver Alta Corriente

ste mdulo comprende dos tipos de salidas: 8 interruptores de estado slido con capacidad de manejar cargas inductivas de hasta 350 mA a 30V y como contactos secos, 8 relevos dobles conmutables (DPDT Relays) que son manejados por un driver interno; cada relevo puede manejar hasta 0.6A @ 110 VDC, 0.6A @ 125 VAC o 1A @ 30VDC. Este trabaja como un puerto estndar de salida y no es posible verificar su estado una vez escrito.

2.1.7 Interface Smart Card

CORE MODULE CM7110

SMART CARD INTERFACE

Figura 43. Diagrama de bloques Smart Card Interface

86 ste mdulo se diseo para se compatible con cualquier puerto paralelo y se basa un lector universal de tarjetas inteligentes que puede leer y escribir cualquier tipo de tarjeta de las disponibles en el mercado hasta la fecha sin importar el tipo de protocolo, nmero de hilos utilizados por la misma o si utiliza encripcin o no. Se adicion al sistema con la intencin de poder reprogramar los diferentes parmetros del sistema por algn medio fsico y como control de acceso al mismo. 2.1.8 Interface Mdulo de voz

CORE MODULE CM7110

VOICE MODULE INTERFACE

Figura 44. Diagrama de bloques mdulo de voz

El diseo de este mdulo lo compatible con cualquier puerto paralelo estndar y se utiliz como interface con el usuario para facilitar el monitoreo del proceso, la generacin alarmas, ayuda para usuarios discapacitados o como ayuda sonora en lnea del sistema en el caso que no sea posible un contacto visual adecuado con el sistema de control. 2.2 FUZZY LOGIC 2.2.1 Microcontrolador Fuzzy AL220 El AL220 es un microcontrolador anlogo fuzzy; el dispositivo tiene 4 entradas anlogas que son digitalizadas por un conversor A/D de 8 bits, estas son latcheadas hacia el comparador (fuzzificador) que compara las entradas con las funciones de membresa para hallar los valores digitales desde los trminos de las variables fuzzy. El comparador hace el clculo de los mximos y mnimos para determinar cual es la regla ganadora. Por ltimo, en el modo de salida (defuzzificador) se determina el valor de la accin de la regla ganadora y se efecta la reconstruye la seal a travs del conversor D/A para las 4 salidas anlogas.

87

MUX entrada

A/D

8-bit latch

Centro digital

8-bit latch

MUX salida

D/A

Almacenamiento de parmetros

Figura 45. Diagrama de bloques de AL220

2.2.1.1 Caractersticas Mximo 4 entradas anlogas con valor entre 0.5 y 4.5 V Mximo 4 salidas anlogas con valor entre 0.5 y 4.5 V, estas salidas se pueden realimentar externa o internamente a las entradas obtenindose de esta forma 8 entradas.

Figura 46. Diagrama esquemtico de entradas y salidas AL220

El AL220 puede ser usado para controlar una gran variedad de sistemas mejorando el desempeo, incrementando la eficiencia y resolviendo los problemas de no linealidad del sistema a controlar. Tiene una memoria EEPROM para almacenar las funciones y los parmetros de las reglas. Es el nico sistema de desarrollo en fuzzy logic que maneja funciones de membresa flotante, adems se puede realizar derivadas, contadores y PWMs.

2.2.2 INSiGTH IIe 2.2.2.1 Caractersticas Para programar el AL220 se dispone de INSiGTH IIe que es programador, simulador y emulador, este aparato facilita la interface entre software y hardware utilizado en

88 fuzzy logic, en software el sistema de desarrollo INSiGTH IIe esta basado en ventanas que proveen las herramientas para introducir los elementos fuzzy necesarios para simular y disear con AL220. Las ventanas principales son: Entradas y salidas: Aqu se le asigna un nombre a cada una de las entradas y salidas. Variables fuzzy: En esta ventana se definen las funciones de membresa. Se pueden tener 111 variables (funciones de membresa) estas se definen por centro, ancho y tipo de funcin. El centro y el ancho pueden ser fijos o flotantes, cuando es fijo se le asigna un valor entero de 0 a 255 para el centro y para el ancho entre 0 y 63, si es flotante se mueve dependiendo del valor de una entrada o salida.

Fijo

Flotante

63

100

63

Figura 47. Funcin de membresa con centro y ancho fijo

Fijo

Flotante

63

I/O

63

Figura 48. Funcin de membresa con ancho fijo y centro variable

Fijo

Flotante

I/O

100

I/O

Figura 49. Funcin de membresa con centro fijo y ancho variable

89

Fijo

Flotante

I/O

I/O

I/O

Figura 50. Funcin de membresa con centro y ancho variable

Maneja seis tipos de funciones: Simtrico inclusivo, simtrico exclusivo, inclusivo izquierdo, exclusivo izquierdo, inclusivo derecho y exclusivo derecho.

Simtrico Inclusivo

Exclusivo

Figura 51. Tipo de funcin simtrica

Izquierdo Inclusivo

Exclusivo

Figura 52. Tipo de funcin izquierda

90

Derecho Inclusivo

Exclusivo

Figura 53. Tipo de funcin derecha

Reglas. Se pueden tener 56 reglas con 56 acciones mximo, una accin es cada variable fuzzy incluida en la regla, en cada regla se pueden adicionar utilizando AND las variables fuzzy que se necesiten. La salida de las regla puede ser inmediata o acumulativa ya sea fija o flotante. La forma inmediata fija le asigna a la salida un valor entero definido por el programador entre 0 y 255, cuando dicha regla sea la ganadora, si es flotante la salida ser el valor de la salida de referencia. La salida acumulativa incrementa o decrementa la salida existente por el valor de la accin de la regla ganadora, este valor puede estar entre -128 y 255 para fija o de la misma forma descrita anteriormente si es flotante.
255 250 200 150 100 50 0 Inmediato/salida digital OUT=200 OUT=150 255 250 200 150 100 50 0 Acumulativo/salida anloga OUT=+25 OUT=+25 OUT=+50 OUT=+25

Figura 54. Mtodos de salida

Posee un editor de ecuaciones para simular el comportamiento del integrado en el computador se puede tener un archivo con los datos de prueba para las entradas o estos datos se generan a partir de ecuaciones, teniendo la oportunidad de corroborar el funcionamiento. Las ecuaciones pueden ser simples utilizando los operadores +,,* y / o funciones matemticas trigonomtricas, de comparacin (=,<,>), logartmicas, y aritmticas (SQR, ABS). En la ventana principal se puede observar el comportamiento del sistema en la simulacin de diferentes formas ya sea grficamente, en matriz o alfanumrico.

91 Adems de simular tambin se emula en tiempo real el sistema a controlar. El emulador tiene las mismas funciones del AL220 con la ventaja de monitorear todas las entradas y salidas disponiendo tambin de las ecuaciones utilizadas para la simulacin. Para la emulacin se puede utilizar el modo STAND ALONG en el cual no es necesaria la conexin al computador ya que se puede almacenar el programa en la EEPROM. La velocidad de emulacin puede ser modificada desde 1MHz hasta 20MHz. 2.2.3 Proceso de diseo Ya se conocen las caractersticas generales del microcontrolador fuzzy y de su programador, ahora es necesario explicar como se aplican. Para llegar obtener las funciones de membresa y las reglas finales para elaborar el control fuzzy fue necesario tabular los datos tomados del sistema y interpretar numricamente los aportes del operario experto. Esta data fue adaptada para poder ser aplicada al microcontrolador AL220, adems fue completada, analizada y organizada de manera que se pudieran agrupar en intervalos cada uno con caractersticas similares clasificados en categoras (variables), a cada intervalo se le asigna una funcin de membresa. Las funciones de membresa se definen con un nombre, centro, ancho y tipo de la funcin, por ejemplo Temp High, Center 191, Wide 30, left Inclusive. Teniendo las funciones de membresa para cada intervalo de cada variable se plantean las reglas que rigen el comportamiento del sistema, estas se forman relacionando las diferentes funciones y buscando que se cumplan las condiciones para lograr el correcto funcionamiento del proceso. Inicialmente se hacen reglas sencillas para cada caso ya que de esta forma es ms fcil comprobar paso a paso el comportamiento, luego de tener el proceso totalmente controlado se van combinando y depurando las reglas hasta obtener el funcionamiento ms ptimo con el menor nmero de ellas. Finalmente, despus de tener la simulacin completa y depurada se emula utilizando el INSIGTH IIe al cual se le aplica datos de entrada similares a los reales y se observa el comportamiento de sus salidas, sino se obtienen los resultados esperados se puede reformar las reglas o las funciones de membresa, teniendo la ventaja de poder probar los cambios fcilmente. Tambin es posible programar el microcontrolador AL220 y colocarlo en el Sistema de Control Integrado Neuro-Fuzzy para ser conectado al proceso que en este caso es un generador de 1MW, esto se debe hacer cuando se hayan hecho todas las pruebas en la simulacin y la emulacin sea satisfactoria porque no se tiene la posibilidad de modificar su contenido.

92 2.3 Red Neuronal

Debido al alto grado de desarrollo en este campo, se dispuso de muchas posibilidades a la hora de la implementacin de la red neuronal. Finalmente se opt por utilizar un algoritmo simple de back propagation para el entrenamiento de la red y para evitar reinventar la rueda, se recurri a uno de los cientos de programas que utilizan este tipo de aprendizaje para entrenar la red; este es el Neural Planner, el cual es un programa ampliamente reconocido por su simplicidad y eficiencia. Otra buena escogencia hubiese sido el Plug-in para Microsoft Excel de Neuro-Solutions pero su desempeo en el aprendizaje de la red es menor que el del Neural Planner en lo referente a velocidad porque en realidad soporta ms opciones pero para el objetivo del proyecto estas salan sobrando. El Neural Planner calcula los valores de las sinapsis y del bias de una red de topologa arbitraria sin importar el nmero de capas de hasta 256 neuronas de entrada, 256 de salida, y 8192 - (neuronas de entrada + neuronas de salida) de neuronas ocultas. Este programa posee dos algoritmos de aprendizaje: On-line Back Propagation y Batch Back Propagation adems de diferentes opciones para el control del proceso de aprendizaje como son:

Figura 55. On-line Back Propagation

93

Rata de aprendizaje Momentum Error objetivo Ciclos por prueba Ciclos antes de prueba Objetivos % correctos o en el rango +/- % Ciclos por refresco Perodo de Actualizacin Algoritmo de Aprendizaje

El Neural Planner Utiliza como funcin de activacin la sigmoide de forma:

F(x) = 1

1 1 + e x

Ecuacin 1. Sigmoide

Donde = 1, obtenindose valores normalizados a la salida de cada capa entre 0 y 1 Para la red principal se utilizaron cuatro variables de entrada que fueron las mismas del controlador fuzzy : Carga, Temperatura, Delta de Carga y el Error entre la Carga y la potencia generada. Obtenindose como variables de salida la potencia generada la refrigeracin, el delta de frecuencia y la corriente mxima. Dicha red utiliza dos capas ocultas con 7 neuronas por capa y se puede apreciar en la Error! Unknown switch argument..

Figura 56. Red Neuronal

Se encontr que el tipo de respuesta obtenida de la red neuronal para el control ptimo en muchos aspectos, incluso en ciertos casos, a pesar de su baja velocidad

94 de respuesta, resulta ser ms acertado que el control fuzzy ya que su grado de aproximacin (interpolacin y extrapolacin) para valores intermedios es mucho mayor y adems con la ventaja de que es posible aprender de experiencias previas. Debido al tiempo empleado por el algoritmo de aprendizaje por backpropagation se hace muy poco prctico implementarlo directamente en el controlador y por tanto se utiliz un procesador Host para esta tarea, el cual calcula los pesos de las sinapsis minimizando el error cuadrtico medio (MRSE) de las salidas de la red con respecto a las muestras de entrenamiento utilizadas. La red neuronal en un comienzo se diseo orientada solamente a la modificacin de tipo adaptivo de los parmetros del sistema fuzzy empero se encontr que con un pequeo incremento en el grado de complejidad de la red, sta tambin poda proporcionar un algoritmo de control neuronal completo para el sistema.

2.4 Componentes Electrnicos

2.4.1 SP720 Electronic Protection Array for ESD and Over-Voltage Protection Es un arreglo de SCRs (estructura de diodo bipolar), se utiliza para proteger la entrada de los circuitos de transientes, sobrevoltajes y descargas electrostticas, tiene dos SCRs de proteccin por entrada uno que protege para voltajes mayores al voltaje V+ y el otro para voltajes menores a V-, V+-V- mximo es 35V. Tiene un total de 14 entradas disponibles que pueden ser usadas para proteger el mismo nmero de seales externas o un bus. Se puede conectar una sola entrada o dos entradas en paralelo, protege para descargas electrostticas directas en conexin sencilla 4kV y para conexin paralela 8kV, para descargas por contacto con el aire 15kV, la capacidad de limitar la corriente de pico es 2A (100seg.) y 5A (4seg.) y su velocidad de conmutacin es de 2nseg.

95

Figura 57. Diagrama funcional SP720 Se emplearon por su facilidad de conexin y manejo, evitan el dao de otros integrados costosos y difciles de adquirir, adems proporcionan confiabilidad de conexin entre diferentes circuitos y sirve de proteccin de las entradas y salidas que estn disponibles por el usuario. En el diseo se utilizaron para proteger los puertos seriales y el puerto paralelo, I/O digitales programables y entradas anlogas del procesador fuzzy. 2.4.2 MAX8215 5V, 12V (15V) Dedicated Microprocessor Voltage Monitors Contiene 5 comparadores de voltaje, 4 para monitorear +5V, -5V, +12V y -12V y el quinto es un comparador auxiliar para monitorear un voltaje fijado por el usuario. Las resistencias necesarias para monitorear estos voltajes estn incluidas en el integrado adems todos los comparadores tienen salidas open-drain independientes, el consumo mximo del dispositivo es 250A. Tiene deteccin de sobrevoltaje y bajovoltaje o un retardo programable usando el comparador auxiliar.

96

Figura 58. Diagrama de bloques MAX8215 Se utiliz en el diseo para monitorear todos los voltajes suministrados por la fuente (+5V, -5V, +12V y -12V) y el comparador auxiliar se emplea como detector del voltaje de +5V del CORE o tiene la opcin de monitorear un voltaje externo.

2.4.3 NE590 Addressable peripheral drivers Es un driver latcheado de alta corriente que posee 8 salidas darlington open-colector para manejar cargas hasta de 250mA (350mA pico). La salida activa se determina por 3 bits de direccin por lo cual puede operar como latch o como demultiplexor, las salidas son intercambiadas de on a off dependiendo del nivel de voltaje a la entrada del pin de datos y la salida seleccionada. Estas son cargadas al aplicar un nivel bajo en /CE, las entradas son de baja carga siendo compatibles con los buses. Se puede escoger cual salida activar independientemente del estado de las otras salidas. Al activar la entrada /CLR todas las salidas son apagadas (desactivadas, puestas en corte).

97

Figura 59. Diagrama de bloques NE590 Tabla 11. Tabla de verdad NE590

98 En el diseo se emple para manejar un puerto de propsito general para dispositivos de alta corriente, del cual dos salidas se utilizan para los ventiladores de refrigeracin del mdulo, teniendo disponible las otras 6 salidas. En total se dispone en todo el sistema de 14 salidas de alta corriente ms 8 salidas de relevos DPDT (Double Position Double Turn) lo que proporciona 16 contactos secos conmutables activados por pares. Cada relevo puede manejar ya sea 30V @ 1A, 110VDC @ 0.6A 125VAC @ 6A con tiempos de conmutacin de tan slo 5ms.

2.4.4 MC14052/ MC14053 Analog Multiplexer/ Demultiplexer Son interruptores anlogos controlados digitalmente.

Figura 60. Esquemtico MC14052 y MC14053 Tabla 12. Tabla de verdad MC14052 y MC14053

99

2.4.5 MC14052 Multiplexor/demultiplexor dual de cuatro canales anlogos. Son 2 interruptores individuales cada uno con cuatro posiciones a seleccionar, la posicin se escoge con las combinaciones posibles de los dos pines de control (ver tabla de verdad) y sale por la lnea correspondiente. As:
X3,Y3 X2,Y2 X1,Y2 X0,Y0 X,Y

Figura 61. Esquemtico interruptor MC14052

Figura 62. Diagrama de bloques MC14052 Se emplea en el mdulo de comunicaciones para multiplexar una de las lneas de transmisin de los puertos seriales y para demultiplexar la lnea de recepcin correspondiente. Fsicamente se posee para este puerto transceptores para los estndares RS232, RS485/422 y un puerto compatible TTL. En la prctica se obtiene un puerto RS232, dos puertos half-duplex y un puerto full-duplex RS485/422 y la

100 interface TTL para mdem con selector de canal y PTT (Push To Talk), todos estos con lneas de protocolo RTS/CTS en sus niveles respectivos. Los mdulos de comunicaciones funcionan con voltaje sencillo de 5V generando internamente 12V para los transceptores que as lo requiera. 2.4.6 MC14053 Analog Multiplexer/ Demultiplexer Multiplexor/demultiplexor triple de dos canales anlogos. Son 3 interruptores individuales cada uno con dos posiciones a seleccionar, la posicin se escoge con el pin de control y se conecta a la lnea comn correspondiente. As:
X1 X X0
Habilitador A: A=0 X=X0 A=1 X=X1

Y1 Y Y0
Habilitador B: B=0 Y=Y0 B=1 Y=Y1

Z1 Z Z0
Habilitador C: C=0 Z=Z0 C=1 Z=Z1

Figura 63. Esquemtico interruptor MC14053

Figura 64. Diagrama de bloques MC14053

101 Se emplean a la entrada y salida del mdulo fuzzy para seleccionar que seales entran o salen del o al procesador fuzzy. A las entradas pueden multiplexarse ya sea uno de dos canales de entrada o la salida del conversor digital-anlogo. Las salidas del procesador fuzzy se pueden multiplexar cada una independientemente con sus canales correspondientes del DAC.

2.4.7 MC14551 Quad 2-channel Analog Multiplexer/ Demultiplexer Interruptor anlogo controlado digitalmente. Multiplexor/Demultiplexor cudruple de dos canales; dependiendo del nivel lgico del pin de control se obtendr en la salida uno de los dos canales. As:

Figura 65. Diagrama de bloques MC14551 Se emplea para seleccionar las entradas al conversor anlogo-digital entre las salidas del procesador fuzzy o del sistema completo y las entradas anlogas disponibles.

102

2.4.8 MC74ABT245 Octal 3-state Non-Inverting Bus Transceiver Transceptor (transmisor - receptor) 3-state no inversor bidireccional es usado para comunicaciones asncronas entre buses de datos. El dispositivo tiene un pin de Output Enable (habilitacin de salida) el cual es activo bajo, que es usado para poner los puertos de entrada-salida en estado de alta impedancia. El pin de Direccin determina si los datos van de A hacia B o de B hacia A.

Figura 66. Diagrama de bloques MC74ABT245

103 Tabla 13. Funcionamiento MC74ABT245

Se utiliza como interface entre el bus de datos y los dispositivos que necesitan acceso al bus para recibir y transmitir informacin al mdulo principal, entre ellos el display LCD. 2.4.9 MC74ABT373 Octal 3-state Non-Inverting Transparent Latch Son registros de 8 bits que latchean los datos de sus entradas hacia las salidas cuando el pin de Latch Enable esta habilitado. El pin de Output Enable no afecta el estado de los latch pero cuando esta en alto forza las salidas a estado de alta impedancia. Los datos pueden ser latcheados cuando las salidas no estn habilitadas.

Figura 67. Diagrama lgico expandido MC74ABT373

104 Tabla 14. Funcionamiento MC74ABT373

Fue utilizando en el mdulo de comunicaciones, se tomaron las seales de recepcin de los puertos RS232 y RS485, por medio de este latch se comunican con el bus de datos y el procesador principal (CORE) para identificar si algn puerto utilizado tiene problemas de conexin defectuosa en la lnea (falla por circuito abierto). 2.4.10 MC74HC374 Octal 3-state Non-Inverting D Flip-Flop Los datos se obtienen en las salidas cuando output enable est habilitado y se ha presentado flanco de subida en el reloj. El pin de Output Enable no afecta el estado de los latch, cuando este est en alto las salidas son forzadas a estado de alta impedancia y adems los datos pueden ser almacenados cuando las salidas no estn habilitadas.

Figura 68. Diagrama lgico expandido MC74HC374 Tabla 15. Funcionamiento MC74HC374

105 En general se utilizan estos integrados como puertos de salida (registros de slo escritura). La decodificacin de direcciones y la lgica de escritura a puerto para todos estos registros se realiza en las PALs. En el mdulo la mainboard se utilizan para cambiar la frecuencia del oscilador programable as como para habilitar o deshabilitar la fuente externa del reloj y las salidas finales de los osciladores. Manejan tambin los leds de usuario disponibles. En el mdulo de los puertos seriales se utilizan como selector para las direcciones del multiplexor/demultiplexor, habilitador del mismo, habilitadores para transmisin y recepcin de los drivers de RS485/422 y como selector de canal y habilitador de PTT en el mdem. En el mdulo fuzzy se utilizan para direccionar los multiplexores tanto de entrada como de salida al procesador fuzzy. A la entrada se puede multiplexar uno de dos canales anlogos y a su vez entre el anlogo seleccionado y la salida respectiva del DAC. La salida se puede demultiplexar ya sea de la salida del procesador fuzzy o de su canal respectivo del DAC. Por ltimo, direccionan los multiplexores del ADC en grupos de cuatro independientemente. 2.4.11 MC74ABT640 Octal 3-state Inverting Bus Transceiver Tiene el mismo funcionamiento de MC74ABT245 pero sus salidas son inversoras. Transceptor (transmisor - receptor) 3-state inversor bidireccional es usado para comunicaciones asncronas entre buses de datos. El dispositivo tiene un pin de Output Enable (habilitacin de salida) el cual es activo bajo, que es usado para poner los puertos de entrada-salida en estado de alta impedancia. El pin de Direccin determina si los datos van de A hacia B o de B hacia A. Tabla 16. Funcionamiento MC74ABT640

106

Figura 69. Diagrama de bloques MC74ABT640 Se utiliza para invertir algunas seales de entrada y salida utilizadas en el estndar PC104 (compatible bus AT, X86) las cuales tienen la lgica invertida con respecto al CORE (CM7100, familia Z86).

2.4.12 SPG8640BN Programmable Type Crystal Oscillator Es un oscilador de cristal programable, sus caractersticas principales son la capacidad de seleccionar 57 frecuencias de salida con 6 pines de control, consumo bajo de corriente (1mA mximo) y tolerancia 100ppm. La frecuencia de oscilacin interna es 1MHz (T=1seg.) la cual se tiene disponible en una salida adicional, adems con los pines de control por software se puede seleccionar desde 1MHz (T=1seg.) hasta 1/120 Hz (T=2 min.) con dos grupos de divisores de frecuencia multiplicables entre s de 1,2,3,4,5,6,10,12 y 1,10,102, 103, 104, 105, 106, 107. Si se necesita una frecuencia patrn diferente a 1MHz se puede aplicar esta por el pin EXC (external clock) y con el pin CSEL (clock select) en nivel lgico alto habilitar a este reloj, el cual puede ser de hasta 1MHz, y tambin por software seleccionar con los pines de control la frecuencia de salida. Adicionalmente se puede utilizar como contador de eventos hasta 12x107.

107

Figura 70. Diagrama de bloques SPG8640/50 En el diseo se consideraron todas las opciones, con el oscilador interno, oscilador externo y como contador de eventos. Todas las salidas del oscilador se tienen disponibles en el conector de seales del PC104, cada seal se puede desactivar envindola a 3-state y en su lugar colocar otra seal independiente del oscilador que puede ser generada por otro de los mdulos del sistema. El reloj se puede seleccionar digitalmente de tres posibles fuentes: Oscilador interno f = 1MHz Oscilador externo f 1MHz Puerto de salida seleccionable por software. Este modo es bastante til cuando se desea utilizar el oscilador como contador de eventos, para sincronizar tareas entre los diferentes mdulos o para generar un reloj sincrnico con la ejecucin del programa. 2.4.13 MX7228 CMOS Octal 8-Bit D/A Converter Conversor Digital-Anlogo de 8 bits con salidas de voltaje, tiene entradas latcheadas separadas y salida buferizadas compatibles con microprocesador e interface con TTL/CMOS. Internamente, la transferencia de datos se realiza por un registro latcheado con una va comn de 8-bit compatible con el bus de entrada TTL/CMOS (5V). Las 3 direcciones determinan cual latch es cargado cuando /WR cambia a bajo.

108

Figura 71. Diagrama de bloques MX7228 Se empleo en el mdulo fuzzy para convertir los datos digitales provenientes del CORE en anlogos y as aplicarlos al demultiplexor para tenerlos disponibles en el procesador fuzzy, o tambin aplicarlos al multiplexor para obtener estas seales en el puerto de salida hacia el proceso dando la posibilidad de enviar datos digitales procesados por el CORE. 2.4.14 MAX487E

15kV ESD-Protected, Slew Rate-Limited, Low-Power, RS-485/RS-422 Transceiver Transceptor de bajo consumo RS-485 y RS-422 para comunicaciones en ambientes hostiles. Cada transmisor de salida y las entradas del receptor estn protegidas contra descargas electrostticas (ESD) sin efecto memoria. Contiene un transmisor

109 y un receptor, se caracteriza por tener en los transmisores un reducido slew-rate que minimiza el EMI (Electromagnetic Interference) y reduce las reflexiones causadas por las terminaciones inadecuadas de los conductores, permitiendo as transmisiones de datos libres de errores hasta de 250kbps. Adems tiene una corriente baja en el modo shutdown porque solo consume 0.5A, y para su alimentacin se utiliza una fuente nica de +5V. Los transmisores tienen limitacin de corriente en corto circuito y estn protegidos contra la disipacin excesiva de potencia por un circuito trmico que coloca estas salidas en estado de alta impedancia. Las entradas del receptor tienen un seguro de falla que garantiza un nivel lgico alto en la salida si la entrada es un circuito abierto.

Figura 72. Configuracin de pines y circuito tpico de operacin MAX487E 2.4.15 MAX202E 15kV ESD-Protected, +5V RS-232 Transceivers Transmisores/receptores de lnea diseados para interface RS-232 y comunicaciones V.28 para ambientes hostiles. Cada salida transmisora y cada entrada receptora esta protegida contra descargas electrostticas hasta de 15kV. Los transmisores y receptores garantizan una rata de datos de hasta 120kbps y 3V/seg de slew-rate como mnimo. Consiste en tres secciones: La conversin de +5V a 10V es ejecutada por conversores de voltaje duales charge-pump y cuatro condensadores externos de 0.1F. Drivers RS-232 (transmisores). Con Vcc=5V, la excursin tpica del voltaje a la salida del transmisor es 8V cuando esta cargado con un valor nominal de 5k del receptor RS-232. Las entradas son compatibles con CMOS/TTL. Receptores RS-232. Los receptores convierten las seales RS-232 a niveles lgicos de salida CMOS. Garantizan un umbral en la entrada de los receptores de 0.8V y 2.4V lo cual cumple las especificaciones de EIA/TIA-232.

110

Figura 73. Circuito tpico de operacin En el mdulo de comunicaciones se empleo el puerto serial 1 como transceptor para comunicaciones de datos bidireccionales y crear una interface entre el usuario y el sistema de control. Este puerto utiliza interface RS232. El puerto serial 0 se multiplexa y demultiplexa para transmisin y recepcin entre una interface RS232, 2 puertos half-duplex RS485, 1 puerto full-duplex RS485 y una interface TTL para mdem con selector de canal y habilitador de PTT. 2.4.16 MAX161 CMOS 8-Bit 8-Channel Data Acquisition System Es un sistema de adquisicin de datos, cada integrado incluye conversor A/D de 8bits, multiplexor de 8 canales, puerto RAM dual 8x8 y I/O lgicas compatibles con microprocesador. Tiene implementacin directa para el control de offset y ganancia para todos los canales.

111

Figura 74. Diagrama funcional MAX161 Se utiliz como conversor anlogo-digital en el mdulo fuzzy tomando los datos anlogos salientes del procesador fuzzy o provenientes del sistema que se esta controlando para convertirlos en digitales y de esta forma puedan ser procesados en el CORE. Los datos pueden ser accesados en cualquier momento ya que se dispone de un puerto RAM para su lectura y no es necesario esperar el fin de la conversin. Este puede interrumpir al procesador con el fin de conversin de cada uno de los canales o de todos como grupo; adems dicha interrupcin puede ser habilitada y deshabilitada tanto por software como por hardware. 2.4.17 MX584 Pin Programmable Precision Voltage Reference Es un compensador de temperatura, agrupa varias referencias de voltaje programable por un pin, estas referencias son +2.5V, +5V, +7.5V y +10V para estas

112 salidas no necesita componentes externos, pero se necesitan otros voltajes pueden ser programados con resistencias externas. Es diseado para ser utilizado con conversores A/D y D/A de 8 a 14 bits.

Figura 75. Diagrama fucional MX584

Se emplea en el mdulo fuzzy para generar la referencia de voltaje negativa que necesitan el ADC (MAX161) y la positiva del DAC. Tambin como referencia para la tierra virtual del DAC a 0.5V para ajustar los niveles de seal con los del procesador fuzzy. 2.4.18 1.5KE6.8 THRU 1.5KE440CA GLASS PASSIVATED JUNCTION TRANSIENT VOLTAGE SUPPRESSOR Breakdown Voltage - 6.8 to 440 Volts Peak Pulse Power - 1500 Watts Supresores de voltajes transientes. Voltaje de ruptura 15V, potencia pico 1500W capacidad de 10/1000seg. con rata de repeticin (ciclo til) de 0.05%, tiempo de respuesta bajo tpicamente menor a 1.0ps desde 0V a V (unidireccional) y 5.0ns para tipos bidireccionales. Para dispositivos con V(BR)10V, ID tpico menor a 1.0A. Se utiliz 1.5KE15CA bidireccional junto con PCTs (Positive Coeficient Termistors) en los puertos seriales para proteger las I/O de los puertos RS-232 y RS-485 de los voltajes transientes.

113 2.4.19 PALCE22V10 24-Pin EE CMOS Versatile PAL Device Implementa funciones de transferencia de la familia lgica Booleana. Es un arreglo AND programable manejando un arreglo fijo OR. El arreglo AND fue programado para crear trminos de productos y el OR para trminos basados en sumas. Tiene 10 macroceldas programables como registros o combinacionales, activo alto o activo bajo segn las necesidades del usuario. Interconexin con componentes perifricos (PCI), reset asncrono global y preset sincrnico para inicializacin.

Figura 76. Diagrama de bloques PALCE22V10 Se utilizaron dos PALs para evitar las compuertas lgicas que eran necesarias para manejar los bits de control de latch y buffers a travs de todo el diseo, PIC, PPI y LCD. Una PAL se encarga del direccionamiento bsico de los integrados de I/O en todos los mdulos (excepto el fuzzy) y la otra de todos los bits de control del mdulo fuzzy tanto del procesador como de los conversores, latch, buffers que estn involucrados para seleccionar los datos que se manejaran tanto a la entrada como a la salida de dicho procesador. 2.4.20 MC74HC138 1 of 8 Decoder/Demultiplexer El decodificador tiene tres bit de direccin para seleccionar cual de las ocho salidas se activara (activo bajo). El dispositivo tiene tres entradas de Chip Select, dos activa baja y dos activo alto para facilitar la demultiplexacin y conexin en cascada.

114

Figura 77. Diagrama lgico expandido MC74HC138 Tabla 17. Tabla de verdad MC74HC138

115 Se empleo para decodificar el Chip Select 6 (CS6) para direccionar todos los dispositivos de la main-board y los puertos seriales ya que el procesador principal (CORE) solo dispone de 6 CS con 64 direcciones asignadas a cada uno. En el mdulo fuzzy adems del direccionamiento local del mdulo, activa o desactiva los pines de control del procesador fuzzy, del oscilador y de las interrupciones . 2.4.21 82C55A CHMOS PROGRAMMABLE PERIPHERAL INTERFACE Interface Perifrico Programable. Compatible con todos los dispositivos INTEL y otros microprocesadores. 24 pines de entrada/salida que pueden ser programados individualmente en dos grupos de 12 y utilizados en tres modos de operacin. En el modo 0 cada grupo de 12 pines I/O pueden ser programados en conjuntos de 4 y 8 para ser entradas o salidas. En el modo 1, cada grupo puede ser programado para tener 8 lneas de entrada o salida, 3 de los 4 pines restantes son utilizados por lneas de protocolo o handshaking y seales de control de interrupcin. El modo 2 configura el grupo A como bus bidireccional con protocolo.

Figura 78. Diagrama de bloques 82C55 Se emplearon en el mdulo de I/O digitales de propsito general y sus entradas/salidas se configuraron para cumplir con el estndar OPTO-22 que da acceso al manejo de gran variedad de dispositivos comerciales para adquisicin de datos y control de procesos. En la mainboard se utiliz un 82C55 para el puerto de

116 impresora y la interface para tarjeta inteligente (Smart Card) e ISD (Information Storage Devices), el cual es un chip monoltico para grabacin y reproduccin de voz. 2.4.22 HD66100F LCD Driver with 80-Channel Outputs Esta compuesto por un circuito de salidas interno que maneja 80 segmentos de LCD, circuitos internos con funciones de conversin serial/paralelo, registros bidireccionales de 80-bit y un circuito latch de 80-bit.

Figura 79. Diagrama de bloques HD66100F No se utiliz directamente en el diseo como integrado independiente, va incluido en el display LCD empleado y en combinacin con otros integrados controla su funcionamiento. Se utiliza su hoja de datos como referencia para la utilizacin de sus funciones avanzadas. 2.4.23 485SDA12 Addressable RS-485 Data Acquisition Module Mdulo de adquisicin direccionable RS-485. Es una fcil solucin para la adquisicin serial de datos. Ofrece 11 canales de entrada A/D de 12 bits (resolucin de 0.610mV @ 2.5VDC de referencia), 3 salidas digitales TTL (0VDC a 5VDC) y 3 entradas digitales (-30 VDC a +30 VDC). Deteccin automtica de rata de baudios y 256 direcciones nicas definidas por el usuario. Con estas caractersticas el mdulo puede ser usado para sensar un variedad de condiciones externas y controlar varios dispositivos.

117

Figura 80. Mdulo B&B 485SDA12 Por medio de este mdulo y a travs de la interface RS485 se pueden extender las capacidades de monitoreo y control hasta distancias superiores a 1.2 Km a una velocidad de 9600 bps. 2.4.24 RTC-72423 4-bit REAL TIME CLOCK MODULE Mdulo de reloj de tiempo real con interface de 4-bit. Incorpora un cristal de cuarzo que hace innecesaria cualquier tipo de ajuste o calibracin y permite diseos sencillos. Posee compatibilidad directa con el bus del microprocesador (tiempo de acceso 120nseg.). Tiene un reloj (hora, minutos, segundos) y calendario (ao, mes, semana, da). Funcin para seleccionar 12/24 horas y salto automtico de ao. Enmascaramiento de interrupcin.

118

Figura 81. Diagrama de bloques RTC-72423 Este integrado es utilizado por el procesador principal (CORE CM7100) para tener un reloj de tiempo real independiente del procesador principal y para mantener una referencia de tiempo an cuando el procesador se encuentre apagado ya que su alimentacin proviene de la batera de respaldo. 2.4.25 MAX691A Microprocessor Supervisory Circuit Circuito supervisor de microprocesador. Este integrado se ocupa de la deteccin de la PFI (Power Failure Interrupt), generacin de la seal de RESET y de la administracin de energa para la memoria RAM. Tiene desempeo mejorado con corrientes de consumo de 30A y corriente de standby de 1A, retraso para activar el reset tpicamente de 200ms en power-up y 6ns de retraso en la propagacin del chip-enable (habilitador). Proteccin de escritura de la CMOS RAM o EEPROM, salidas separadas de watchdog , intercambio para iniciar el uso de la batera de respaldo, y una salida de RESET que es valida con Vcc menor a 1V. Tiene un voltaje umbral de reset de 4.65V. Monitor de voltaje para falla de la alimentacin o advertencia de batera baja.

119

Figura 82. Diagrama de bloques MAX691A 2.4.26 ISD2500 Series Single-Chip Voice Record/Playback Device 60-, 75-, and 90-Second Durations ISD (Information Storage Device) dispositivo para almacenamiento de informacin. Almacena informacin de voz en forma anloga, sus principales caractersticas son: alta calidad en la reproduccin de la voz humana, un slo integrado graba y reproduce la informacin de voz. El dispositivo CMOS incluye un oscilador, preamplificador para el micrfono, control automtico de ganancia, filtro antialiasing (efecto no deseado causado por mtodos de muestreo impropios), filtro de suavizado y amplificador para parlante. Adems, el ISD2500 es compatible con cualquier tipo de microprocesador. Las grabaciones son almacenadas en celdas de memoria no voltiles, retencin de mensajes hasta por 100 aos, posee direccionamiento completo para manejo de mltiples mensajes, para aumentar la duracin se pueden conectar varios integrados en cascada, para minimizar el consumo tiene Power-down automtico.

120

Figura 83. Diagrama de bloques ISD2500

3. APLICACIN DEL CONTROLADOR FUZZY LOGIC

El control fuzzy se realiza con el microcontrolador anlogo AL220, el proceso a emular para demostrar el funcionamiento del Sistema de control integrado NeuroFuzzy es un generador de potencia de 1 MW utilizado en un campo petrolero.

Figura 84. Generador

Las variables a controlar directamente por el controlador fuzzy son: potencia generada, temperatura del sistema, corriente mxima y frecuencia para lo cual se cuenta con las variables de entrada: Carga, variacin de carga y temperatura equivalente. La carga varia desde 0 hasta 1 MW y la potencia generada debe suplir esta demanda, para lo cual es necesario conocer la variacin de carga y as producir la potencia requerida para consumo evitando de esta forma perdidas de energa por produccin excesiva de potencia. La temperatura equivalente depende de las temperaturas de los cilindros del generador, del refrigerante y del ambiente. La ecuacin que las relaciona es: Teq = 0.5Tcyl + 0.3Trefr + 0.2Tamb

122 La temperatura equivalente varia porque a medida que el generador produce potencia, el movimiento de los cilindros hace que aumente la energa disipada en forma de calor. El refrigerante se utiliza para disminuir la temperatura de los cilindros, porque a medida que esta temperatura aumenta es necesario incrementar la velocidad con que el refrigerante fluye a travs de ellos para que la temperatura del sistema disminuya por intercambio de calor entre el refrigerante, los cilindros y el intercambiador de calor. La temperatura ambiente no se puede controlar por que depende de cambios atmosfricos, tiene menor influencia en la temperatura equivalente porque no esta ligada muy estrechamente con el sistema. Pero es necesario tomarla en cuenta por que un cambio brusco puede afectar el punto de operacin de los generadores. La frecuencia normal de funcionamiento es de 60 Hz 1 Hz, cuando la carga le exige ms potencia de la que puede generar es necesario aumentar la frecuencia para que el voltaje que es normalmente de 13.5 KV se mantenga y as se tenga la potencia requerida, si las condiciones de carga son normales se debe mantener la frecuencia en 60.0 Hz. El lmite de corriente mxima nominal es de 75A pero este debe ser controlado dinmicamente colocndolo al menos 10A por encima del consumo actual siempre y cuando la potencia generada sea superior al 40% ya que de lo contrario debe permanecer constante en 40A as: 75 A * 0.4 + 10 = 40 A , esto con el objeto de poder evitar cambios bruscos en la corriente de salida por eventos tales como: sobrecargas, cortos circuitos, problemas de interconexin con la red pblica de distribucin de energa, atentados terroristas a torres y lneas de transmisin, y malos funcionamientos causados por problemas en la red de transporte de crudo. Para hacer el control con fuzzy logic fue necesario contactar a un experto en el manejo del sistema para saber que cambios se realizan en una determinada situacin, esta informacin fue tabulada, analizada y modificada para optimizar el control. De la informacin suministrada los comportamientos crticos son: El generador esta produciendo una determinada potencia que suministra la energa necesaria a la carga, pero si la carga se incrementa y la potencia no alcanza el requerimiento el generador debe incrementar la potencia para la nueva carga. Si disminuye la carga, la potencia se debe decrementar porque si se mantiene al mismo nivel se estar perdiendo energa, pero este decremento no debe ser muy grande porque se corre el riesgo que la potencia no sea suficiente para los requerimientos de carga.

123 Si la carga es mxima y la potencia es mxima pero hay un incremento de carga el generador no podr suministrar la potencia necesaria en condiciones normales de frecuencia, voltaje y corriente. Para poder suministrar la potencia se aumenta la frecuencia hasta 1 Hz. Cuando la carga disminuye y la potencia es suficiente la frecuencia debe volver a su valor normal de 60.0 Hz. Cuando la temperatura equivalente aumenta se debe disminuir para evitar recalentamiento del generador, para lo cual se aumenta la velocidad con que fluye el refrigerante por los cilindros. Cuando la temperatura a disminuido lo suficiente se puede bajar la velocidad de circulacin. Para que el generador funcione eficientemente se debe tener una temperatura mnima por lo tanto al iniciar el funcionamiento del sistema cuando la temperatura de los cilindros y el refrigerante es bastante baja se debe evitar refrigerar los cilindros para lograr un punto de operacin eficiente en el generador, empero tampoco se debe detener el flujo del refrigerante ya que se necesita que este se caliente tambin uniformemente sino que se debe mantener su flujo lo ms bajo posible.

El comportamiento final del controlador observando la respuesta de las entradas y salidas respectivamente se tiene en la siguiente figura.

Figura 85. Respuesta del controlador fuzzy AL220

4. FUZZY HARDWARE

4.1 SISTEMAS DE DESARROLLO PARA FUZZY LOGIC 4.1.2 Togai InfraLogic - FCA Technology En fuzzy hardware Togai InfraLogic tiene disponible el sistema de desarrollo FCA (Fuzzy Computational Accelerator), el cual es una tecnologa basada en un ncleo (CORE) que provee un diseo VLSI rpido y fcil. Togai InfraLogic ofrece dos complementos para implementar un sistema FCA: Coprocesador fuzzy VY86C570 y la librera para el CORE FCA VY86C500. La caractersticas principales de la tecnologa FCA son: Escalizable desde 8 a 32 bits Optimizacin de reglas basado en formatos Rpida ejecucin de reglas fuzzy Defuzzificacin calculada en el CORE por: mtodo de centroide, altura y alfa Flexibilidad en las reglas Varias premisas en representacin mbf incluyendo mapas, listado de puntos Operaciones fuzzy AND, OR y NOT Provee una evaluacin completa de las reglas fuzzy (evaluacin de premisas alfa, conclusin mbf, composicin y defuzzificacin).

Figura 86. Aplicaciones FCA

125

4.1.2.1 VY86C500 FCA Core Library Es un elemento de la librera de fuzzy logic que provee el manejo de 12 bit para propsito general. Requiere memoria RB y un Observacin/ Conclusin/ Datos temporales (OCTD) y Memoria de intercambio (SMI). El CORE desempea los clculos fuzzy incluyendo la evaluacin de las funciones de membresa, evaluacin de reglas, composicin de las funciones de membresa de salida y defuzzificacin. La inferencia se realiza por los mtodos de suma de productos, centroide, altura o mtodos alfa de defuzzificacin.

Figura 87. Diagrama de bloques VY86C500

4.1.2.2 VY86C570
FCA Chip Es un coprocesador fuzzy de alto desempeo con un ncleo FCA (Fuzzy Computational Acceleration) de 12 bit, 4K x 12 OCTD (Observation, Conclusion, & Temporaly Data), RB(Rule Base) SMI (Shared Memory Interface), y una interface lgica. Todo esto combinado en un solo integrado.

Caractersticas: Bajo consumo, < 250mW Alto desempeo. opera a 20 MHz

126 Alta resolucin, opera a 12 bit Extremadamente rpido, interface de 70seg., evaluacin hasta de 800.000 reglas fuzzy por segundo Hasta 1024 entradas o salidas (dependiendo de la memoria RB implementada) Defuzzificacin calculada en el CORE por los mtodos de centroide, altura o alfa

4.1.2.3 Precio Este sistema de desarrollo fuzzy de InfraLogic Technology, solo ORTECH ENGINEERING INC. y su costo es: HFDP (FCA Kit de evaluacin e incluye lo descrito anteriormente) FC110 Chips (VY86C570 adicional) OEI552 (Kit de desarrollo) TILShell (software de desarrollo edicin estndar) es distribuido por $ 950.00 $ 75.00 $ 495.00 $1650.00

Figura 88. Circuito Integrado FCA

4.1.3 GMD 4.1.3.1 Fuzzy Set 001


A Reconfigurable Analog Fuzzy Controller Es un controlador fuzzy con 2 entradas y una salida. Utiliza como mtodo de inferencia la operacin min-max de Mamdani y para la defuzzificacin emplea el mtodo de centro de gravedad. Cada entrada salida consiste de 5 trminos lingsticos: NL, NS, Z, PS, PL. El controlador implementa 13 reglas fuzzy, las cuales se seleccionan por pines de control. Sus caractersticas principales son: 2 entradas y 1 salida en modo de voltaje 13 reglas configurables Operacin hasta 6 MFLIPS Definicin ajustable de trminos fuzzy para cada entrada y salida Opera a +6V y -6V

127 4.1.3.2 Fuzzy Set 002


A Reconfigurable Analog Fuzzy Controller Esta diseado para aplicaciones fuzzy en tiempo real y sistemas fuzzy hardware de alta velocidad. Utiliza como mtodo de inferencia la operacin min-max de Mamdani y para la defuzzificacin emplea el mtodo de centro de gravedad. Sus principales caractersticas son: Mtodo de inferencia max-min Defuzzificador incluido en el integrado Alta velocidad de procesamiento, hasta 4.3 MFLIPS Soporta S-, Z-, MFs (Membership Function) triangular y trapezoidal Hasta 125 reglas (3 antecedentes, 1 consecuente) 3 entradas y 1 salida en modo voltaje 8 bit de direccin y 8 bit de bus de datos Disponibilidad de herramientas de desarrollo

Figura 89. Diagrama de bloques Fuzzy Set 002

Los precios de estos integrados fueron imposibles de encontrar, se consiguieron la referencias y las hojas tcnicas con Liliane Peters en Alemania (liliane.peters@gmd.de) pero fue fallido todo nuevo intento de colaboracin. 4.1.4 SGS-THOMSON MICROELECTRONICS W.A.R.P. FAMILY - HCMOS FUZZY DEDICATED MICROPROCESSORS

128 La familia W.A.R.P. son microprocesadores para fuzzy logic operan con variables lingsticas y razonamiento humano. Esta familia esta compuesta por dos integrados: W.A.R.P. 1.1 y W.A.R.P.2.0. 4.1.4.1 W.A.R.P. 1.1 (WEIGHT Associative Rule Processor) Se caracteriza por: Alta velocidad en el procesamiento de reglas Funciones de membresa para los antecedentes con una forma Funciones de membresa Hasta 256 reglas (4 antecedentes, 1 consecuente) Hasta 16 variables de entrada configurables Hasta 16 funciones de membresa por cada variable de entrada Hasta 16 variables de salida Hasta 128 funciones de membresa para todos los consecuentes Mtodo de inferencia: MAX-DOT Defuzzificador incluido en el integrado Disponibilidad de herramientas de software y emuladores

Figura 90. Diagrama de bloques W.A.R.P. 1.1

4.1.4.2 W.A.R.P. 2.0 (WEIGHT Associative Rule Processor)


8-Bit Fuzzy Co-Processor Sus caractersticas principales son: Co-Procesador Digital Fuzzy de 8-bit I/O Alta velocidad de procesamiento de reglas 4 entradas, 2 salidas, 32 reglas en 33.1seg.

129 Hasta 256 reglas (4 antecedentes, 1 consecuente) Hasta 8 variables de entradas configurables Hasta 16 funciones de membresa para los antecedentes con forma triangular y trapezoidal Hasta 4 variables de salida Hasta 256 funciones de membresa para todos los consecuentes Defuzzificador en el mismo integrado Mxima frecuencia de reloj de 40 MHz Pulso prefijado para iniciar la conversin A/D Interface directa a los microprocesadores ms comunes Operacin STAND ALONE Polaridad prefijada para la seal de handshaking Alimentacin de +5V Disponibilidad de herramientas de software y emuladores

Figura 91. Diagrama de bloques W.A.R.P. 2.0

4.1.4.3 Precio El sistema de desarrollo fuzzy de SGS-THOMSON, es distribuido por NUHORIZONS INC. y su costo es: Sistema de desarrollo $1000.00 W.A.R.P. 1.1/W.A.R.P. 2.0 $ 6.00

5. CONCLUSIONES

Las redes neuronales, aunque son difciles de modificar debido a que su base de conocimiento se encuentra distribuida en todos sus elementos, son muy fciles de entrenar en base modelos o ejemplos, es decir ya sea con aprendizaje supervisado o no supervisado, mientras que los sistemas basados en fuzzy logic son bastante difciles de entrenar y afinar, aunque sus modificaciones son muy fciles de realizar y el cambio en una regla, si este se realiza correctamente, no afecta para nada el funcionamiento total de sistema; por lo cual se pueden localizar y corregir rpidamente cualquier tipo de inconveniencias en la respuesta del mismo sin necesidad de una reconfiguracin total de la base de conocimientos. Es vital para el entrenamiento y afinamiento tanto de controladores basados en fuzzy logic como en redes neuronales que los datos sean suministrados en forma coherente, es decir, teniendo en cuenta que no se le deben entregar datos ideales, libres de todo ruido o perturbacin, sino que al contrario, se debe procurar en lo posible que al realizar las pruebas, estas se hagan en condiciones extremas, incluso aquellas a las que el sistema, se supone, nunca va a ser sometido para de esta manera asegurar que se obtendr un sistema robusto, con la suficiente tolerancia a fallas de todo tipo, como pueden ser los errores de deriva, calibracin o comunicaciones con los sensores o transductores externos e incluso en el caso de una posible falla total de una de las variables de entrada o en uno de los actuadores de salida. Para mejorar el tiempo de respuesta del sistema es aconsejable seguir la misma filosofa anterior, y aun cuando los controladores no cubran los requerimientos de las muestras o modelos de entrenamiento, por ejemplo en cuanto a ancho de banda, slew rate, precisin, etc., como dichos requerimientos estn muy por encima de los del problema real, este ser sin lugar a dudas, dentro de lo posible, ptimamente solucionado. An cuando gran cantidad de problemas a resolver por medio de redes neuronales solo requieren la utilizacin de una capa oculta, por razones de generalizacin y considerando el estado actual de desarrollo de los recursos computacionales, es preferible utilizar redes con dos capas ocultas las cuales, tericamente son capaces de resolver cualquier tipo de problema as este no sea de tipo lineal, tenga mltiples entradas y/o mltiples salidas y sus clases no sean linealmente separables. Los resultados obtenidos demuestran que las implementaciones de redes neuronales mediante software an cuando adolecen de una baja velocidad de procesamiento al ser ejecutadas en microcontroladores sin coprocesador matemtico, en la mayora de los casos son ms que suficientes para la solucin de una amplia variedad de problemas, sin necesidad alguna de realizar cambios

131 drsticos en su estructura. El mismo algoritmo de aprendizaje aplica a diversos tipos de sistemas; lo nico que se modifica son las muestras, las cuales a su vez hacen que se modifiquen los pesos de las sinapsis y el bias de las neuronas pero manteniendo intacta la topologa del sistema. Existen actualmente gran cantidad de herramientas computacionales para utilizacin en problemas de ingeniera aplicada como son paquetes de simulacin, procesamiento de datos, estadstica, control de procesos, adquisicin de datos, CAD, CAM, etc. entre los cuales se destacan los siguientes: Labview, Mathcad, Matlab, Intellution, Excel, Orcad, Pspice, EWB, etc. y con los cuales se pueden realizar todo tipo de procesos a la informacin que entra o sale de los sistemas, dando valiosa informacin a cerca de como mejorarlos y sobre todo ahorrando gran cantidad de tiempo en el desarrollo de proyectos. Todos estos programas soportan directa o indirectamente la utilizacin de mdulos, tool-boxs, libreras u otro tipo de interfaces con sistemas de procesamiento tanto de fuzzy logic como de redes neuronales que reducen considerablemente el esfuerzo realizado para la realizacin de proyectos que envuelvan este tipo de tecnologas. Como se mostr en el diseo y realizacin de este proyecto, las tecnologas actuales debido a su nivel de integracin y complejidad, permiten e incluso a veces, requieren, que la lgica de control utilizada sea muy compleja, lo que hace muy poco prctica la utilizacin de lgica cableada (compuertas, decodificadores, etc. interconectados entre s) dejando solo la opcin de la lgica programable, la cual es una herramienta muy poderosa para el desarrollo de este tipo de proyectos. Por ejemplo, en el diseo bsico del SCINEF dos PAL elctricamente reprogamables, las cuales al ser reemplazadas por lgica cableada se convertiran en al menos 11 integrados, los cuales a su vez ocuparan 10 veces mas espacio en el circuito impreso y consumiendo, adems, 8 veces ms corriente que la actual. Otra ventaja adicional de la lgica programable es que se puede reconfigurar con extrema facilidad en solo minutos en caso de modificaciones en las condiciones de la lgica control del sistema por adicin de perifricos u otros aspectos; estos mismo sera imposible si se tuviese un diseo con lgica cableada. (Por cierto la relacin de costos es mayor de 10:1 en favor de la lgica programable). Al solucionar todos los detalles de un proyecto tanto en software como en hardware, cuando llega el momento de resolver el problema macro, esto se realiza casi de forma inmediata o como consecuencia de lo ya desarrollado ya que todos los problemas de interface entre componentes ya se encuentran solucionados. En niveles bsicos de ingeniera, se toman los componentes que se tienen a disposicin y se adaptan para la tarea que se necesita realizar; esto en general puede llegar a ser algo econmico financieramente hablando pero un desperdicio total en tiempo. Cuando se desea realizar un proyecto con los ms altos estndares de calidad no se puede recurrir a lo anteriormente mencionado, ya que si se considera el estadio actual de desarrollo de las comunicaciones y de los medios de transporte, el comercio con cualquier pas del mundo (especialmente con los Estados Unidos) se encuentra relativamente al alcance de la mano. Por ejemplo, si

132 se requiere un tipo de integrado que realice una funcin especfica a cierta velocidad, con cierto consumo de potencia, con un rango de costo determinado, con un voltaje de operacin especial, empaque, etc., no se busca el equivalente ms cercano o compatible y se mira que pasa; se busca quienes lo fabrican, por intermedio de quien lo venden y cuanto tiempo se demora en enviarlo al lugar donde es requerido; lo cual gracias al Internet es labor tal vez de unas pocas horas o a lo sumo das. Seguramente en esta bsqueda se encontrarn referencias mejores que cumplan los requerimientos exigidos mucho mejor de lo planteado inicialmente, obteniendo con esto, como ya se haba dicho, estndares de calidad, robustez, rendimiento, velocidad y ciclo de vida til mayores a los esperados.

BIBLIOGRAFIA

CHEN, C.H, Fuzzy Logic and Neural Networks Handbook. Mc Graw Hill, Inc. 1996

CONSEJO SUPERIOR DE INVESTIGACIONES CIENTIFICAS. Aplicaciones de la lgica borrosa. Madrid: Julio Gutirrez Ros Editores, 1992.

DIAZ, Adenso y Otros. Optimizacin Heurstica y Redes Neuronales. Madrid: Editorial Paraninfo S.A., 1996. FAUSETT, Laurence. Fundamentals of Neural Netrworks. Architectures, Algoritms and applications. Englewood Cliffs: Prentice Hall, 1994. HAYKIN, Simon. Neural Networks, A Comprehensive Foundation. New York: Macmillan College Publishing Company, 1994. HERNANDEZ, Germn y Otros. Memorias del Primer Congreso Colombiano de Neurocomputacin. Santaf de Bogot, D.C.: Editora Guadalupe Ltda., 1996. HILERA, Jos y MARTINEZ, Vctor. Redes Neuronales Artificiales. Fundamentos, Modelos y Aplicaciones. Adison-Wesley Iberoamericana, 1995. KLIR, George y FOLGER, Tina. Fuzzy Sets, uncertanty and information. KOSKO, Bart. Neural Networks and fuzzy system, A dinamical system approach to mackhine intelligence. ________. Neural Networks for signal processing. Englewood Cliffs: Prentice Hall, 1992. MAMDANI, E. H., Application of Fuzzy Logic to Approximate Reasoning Using Linguistic Synthesis, IEEE Transactions on Computers, Vol. C-26, No. 12 (1997), p. 1182-1191. MCNEILL, Martin y THRO, Ellen. Fuzzy Logic, A practical Approach. Cambridge: Ap Profesional, 1994. NIE, Junhong y LINKENS Derek. Fuzzy-Neural Control, Principles, algorithms and applications. Englewood Cliffs: Prentice Hall, 1995

134

TANAKA, Kazuo. An Introduction to Fuzzy Logic for Practical Applications. Springer. 1997. SKAPURA, David. Building Neural Networks. Adison-Wesley Iberoamericana, 1995. VON ALTROCK, Constantin. Fuzzy Logic & Neurofuzzy Applications Explained. Englewood Cliffs: Prentice Hall, 1995. ZADEH, L. A., Fuzzy Sets, Information and Control, Vol. 8, (1965), p. 338-353. ZIMMERMANN, H. and THOLE, U., On the Suitability of Minimum and Product Operators for the Interception of Fuzzy Sets, Fuzzy Sets and Systems, 2, p. 173-186.