You are on page 1of 8

SOMI XV CIB 3

DISEO Y SIMULACIN DE UNA RED NEURONAL DE HOPFIELD APLICADA A OPTIMIZACIN.


Z. Hernndez, R. Alejos. Departamento de Ingeniera Electrnica. Universidad de las Amricas - Puebla. Sta. Catarina Mrtir, Cholula; Puebla, Mxico. A.P. 100 CP. 72820 Telfono: (2)2 29 26 80, Fax (22) 29 2606. email: zulmajhp@prodigy.net.mx, ralejos@mail.udlap.mx RESUMEN. La popularidad que las redes neuronales han cobrado en los ltimos aos, nos ha llevado a realizar investigaciones en esta rea, de ah fue que surgi el trabajo Sistema Neurofuzzy como alternativa al control Adaptable[1] donde se utiliz una red neuronal de Hopfield aplicada al problema de optimizacin, en virtud de que los resultados obtenidos fueron satisfactorios, se propuso continuar la investigacin pero ahora enfocando el trabajo en el diseo analgico que lleve a la implementacin de la red neuronal en VLSI. ABSTRACT This work shows the development of an artificial neural network working in combination with a fuzzy knowledge base to perform an adaptive control. An artificial neural network has been designed using the well-known Hopfield & Tank architecture in optimization problems, which realize the adjustment of the controls fuzzy sets. The reference model adaptive approach has been used to implement adaptive control. Also, the works presents the implementation in VLSI technology of the proposed circuits. I. INTRODUCCIN. El presente trabajo tiene como objetivo, retomar el reporte de Hopfield y Tank [1] y los resultados obtenidos en [1] para as, mediante la implantacin de la funcin de energa obtener el comportamiento de la red neuronal diseada en software, esta implantacin se llevara a cabo utilizando componentes electrnicos bsicos (amplificadores operacionales, resistencias, capacitores). Una vez que se haya observado el comportamiento deseado, se sustituir al amplificador operacional por un amplificador formado con transistores MOS, lo anterior con la finalidad de sentar las bases para la posterior implementacin en circuito integrado (VLSI). Para el planteamiento del problema, centraremos nuestra atencin en el diseo de la red neuronal de Hopfield presentada en[1], as como en su interaccin con el algoritmo de adaptacin. II. DESCRIPCIN DEL SISTEMA. Para el proyecto[1] se utiliza un controlador en Lazo Cerrado Adaptable por modelo de Referencia[1], as el controlador neurofuzzy adaptable que se estudia, adopta la estructura mostrada en la figura 1:

Figura 1. Controlador Neurofuzzy Adaptable

Figura 2. Forma de los conjuntos Difusos de la Base de Conocimientos del Controlador.

CONGRESO NACIONAL DE INSTRUMENTACION

SOMI XV CIB 3

Se seleccion como planta a controlar al sistema del Pndulo Invertido, y en el Mdulo de Referencia se coloc un Modelo de Referencia Difuso [1]. El mdulo de referencia recibir el ngulo y la velocidad angular , y generar el valor de y deseados. El Mdulo de Control contiene conjuntos triangulares como se muestra en la figura 2, y la estrategia de adaptacin ser desplazar los puntos de la base y/o el centro de cada conjunto para modificar la accin de control. Para determinar la secuencia de adaptacin se ha diseado una Red Neuronal Hopfield que acta como el elemento de adaptacin, cuyo propsito es modificar los conjuntos difusos del controlador difuso a partir del gradiente de error generado entre el comportamiento de la planta respecto al del modelo de referencia. III ALGORITMO DE ADAPTACIN. El procedimiento de adaptacin se explica a continuacin. En la figura 2, encontramos 21 puntos posibles a modificar, a partir de los cuales se gener una tabla de prioridad que contiene los nueve puntos ms relevantes en el control; estos son los puntos: B6, B7, B8, B9, B10, B11, B12, B13, B14, que representan a los tres conjuntos difusos centrales. Para realizar la modificacin de los conjuntos se determin un orden de prioridad (tabla 1). Dicho orden fue asignado con el fin de actuar sobre los puntos de mayor peso dentro de la etapa de control alrededor del estado estacionario[1]. Lo anterior tiene el fin de mover la base de los conjuntos difusos modificndolos simtricamente. Esto es, se movern al mismo tiempo el punto indicado por el ndice y el punto siguiente dentro de la tabla. En el de ajuste, cuando es necesario adaptarse, se toma el ndice de prioridad el cual apunta sobre la pareja de puntos que actualmente se modifican, se realiza el movimiento del punto en virtud del valor devuelto por la Red Hopfield y se decidir si se contina actuando sobre ellos (el control mejora) se adelanta el ndice (hasta localizar los puntos especficos a modificar, que propicien una mejora en el control), para tomar la pareja de puntos siguientes de acuerdo a la tabla de prioridad [1].
Tabla 1. Tabla de prioridades.

Figura 3. Funcionamiento de la Red de Hopfield. B8 y B12 es la pareja de puntos que ser modificada en primer lugar.

Figura 4. La red de Hopfield acta sobre el punto de mayor prioridad.

CONGRESO NACIONAL DE INSTRUMENTACION

SOMI XV CIB 3

Figura 5. Forma de los conjuntos difusos despus de que B8 y B12 fueron modificados.

Figura 6. Red Hofield Continua Implementada.

Ejemplifiquemos grficamente lo descrito anteriormente. Dentro de la pareja que se indica (figura 3), la prioridad ms alta la tiene B8, entonces como se muestra en la figura 4, se modifica primero ese punto y despus B12. Una vez que se modifica B8, los conjuntos difusos toman la forma que se muestra en la figura 5. Si el comportamiento del sistema no mejor con el ajuste hecho, se regresa a la regla original y se avanza el ndice; el procedimiento se repite sucesivamente hasta llegar al fin de la tabla para regresar al ndice cero.

IV REALIZACIN DEL SISTEMA. Para implementar el algoritmo, las entradas a la red neuronal sern el error actual y el error deseado, mientras que a la salida obtendremos una palabra binaria de control, la cual indicar si el desplazamiento sobre el punto en cuestin es hacia la izquierda, hacia la derecha o permanece sin modificacin. Para establecer la estrategia de adaptacin se usa una red Hopfield continua[1], la cual es recomendada para problemas de memoria asociativa como para problemas de optimizacin[12-7]. La red neuronal implementada est compuesta por tres neuronas interconectadas como se muestra en la figura 6. Se asume que la seal de salida (Y) representa la palabra de control binaria arrojada por el sistema. La seal de entrada (Y) es el valor numrico del error que se desea obtener, y R representa el valor de referencia. La red estar operando apropiadamente siempre y cuando cada uno de los cdigos binarios (vi) entregados nos indique perfectamente la forma en que se va a realizar el desplazamiento. La funcin de energa de la red es[1]:

E =

3 1 3 3 ( 2i + j 2 ) vi v j ( 22i 3 + 2i 1Y ) vi 2 i =1 j =1 i =1

(1)

La seal de salida est dada al aplicar la funcin sigmoidal (en el intervalo de 0 a 1)[1-4], la cual se expresa como:

vi = g(ui) = 0.5 (1+ tanh(ui))

(2)

CONGRESO NACIONAL DE INSTRUMENTACION

SOMI XV CIB 3

El procedimiento de diseo adoptado se muestra en la figura 7, mientras que en la tabla 2 se muestran los valores obtenidos despus del anlisis del programa de simulacin previamente desarrollado [1]. El siguiente paso es trasladar la informacin anterior a una implementacin con componentes electrnicos, para ello se retoma el reporte de Hopfield y Tank [2].
Tabla 2 Datos obtenidos del software que simula el funcionamiento de la Red. Tiempo de Retardo .006s Valores para Pesos Sinpticos .5, 1, 2, 4, 8 Modelado de la Funcin de Disparo Vi= g(ui) 0.5(1+tanh(ui)) Seales de Entrada a la Red Tipo analgico, en el rango .3<error1 Seales de Salida Digitales, esto es: 0 o 1

La estructura general de una red analgica que resuelve problemas de optimizacin se muestra en la figura 8. La estructura mostrada posee las tres formas principales de organizacin en paralelo encontradas en un sistema neuronal: procesamiento paralelo de las seales de entrada, procesamiento paralelo para las seales de salida, y conexiones entre las unidades de procesamiento. Los elementos de procesamiento o "neuronas", se modelan con amplificadores operacionales, en unin con circuitos de retroalimentacion formados por alambres, capacitores y resistencias; organizados de forma tal que sean capaces de modelar las caractersticas bsicas de las neuronas, como son los axones, la arborizacin dentrtica, el retardo en el paso de informacin de una neurona a otra y las conexiones sinpticas.

Figura 7. Ciclo de la metodologa de diseo.

Figura 8. Estructura analgica de una red neuronal.

La sinapsis entre dos neuronas est definida por una conductancia Tij [2-10-11] la cual conecta una de las salidas del amplificador j a la entrada del amplificador i, esta conexin se realiza con un resistor de valor:

Rij= 1/| Tij|.

(3)

La matriz Tij define la conectividad entre las neuronas. en el caso de conexiones simtricas (Tij = Tji) las ecuaciones motoras para las redes de procesos analgicos [2-10-11], siempre conducen hacia la convergencia con estados estables. Cuando los elementos de la diagonal son 0 (Tii = 0) y el ancho de la transicin de la curva en g(u) (figura 9) es estrecho, los estados estables de la

CONGRESO NACIONAL DE INSTRUMENTACION

SOMI XV CIB 3 red son localizados como mnimos locales de la funcin de energa de las redes de procesos analgicos. Cuando se implementa la red neuronal de forma analgica, se deben tomar en cuenta las siguientes consideraciones fsicas [2-5-10-11]: El voltaje de alimentacin del amplificador operacional. El voltaje de entrada mximo a la red. El voltaje de referencia que representa el umbral del error permitido antes de activar la neurona.

Figura 9. Relacin entrada-salida entre neuronas implementadas con amplificadores.

Figura 10. Implementacin de una neurona, el bloque denotado por Tij, representa las conexiones de las otras unidades, as como las conexiones a la entrada y a la referencia.De [1] =.006, R=100K, C=60nF.

V. IMPLEMENTACIN DE LA CELDA NEURONAL. La red objeto de nuestro estudio es del tipo de arquitectura paralela simple, esto es, cada procesador toma una decisin basndose en el anlisis de las seales que recibe de forma paralela de otros procesadores. Cada neurona ser sustituida por la configuracin de la figura 10 [2-10-11]. De acuerdo con el funcionamiento requerido [1], el valor de referencia es de:VR = -0.3V. Si el valor del error actual es menor a la tolerancia o referencia (0.3 V), la red neuronal no actuar, en caso contrario se activar la red. Esta activacin se ejecutar cuando el error este dentro del rango: 0.3 < error 1, de acuerdo con [1], estos valores de entrada nos proporcionarn la palabra de control que indicar si el punto indicado por el ndice[1], se mueve a la izquierda, a la derecha o se quede igual. Para fines de implementacin [1-2], y tomando en cuenta la funcin de energa del sistema dada en la ecuacin

E =1 2i + j 2 vi v j 22i 3 + 2i 1Y vi 2
i =1 j =1 j =1 el valor de cada conexin se muestra en la tabla 3.

(4)

De esta forma, despus de realizarse las operaciones indicadas (tabla 3), se respetan los valores de las conductancias propuestas en [1]. Una vez que calculamos los valores de cada conexin, se procede a calcular el valor de la resistencia correspondiente a cada una de las conductancias anteriores, para ello empleamos la relacin dada por la ecuacin 3.

CONGRESO NACIONAL DE INSTRUMENTACION

SOMI XV CIB 3 SIMULACIN DE CIRCUITO Como los valores obtenidos para las resistencias fueron muy pequeos, para efectos de simulacin y de implementacin reales, stos se normalizaron a un valor de 100K. En lo que se refiere a la implementacin de las neuronas, el circuito empleado para obtener la seal de salida sigmoidal requerida, es un comparador. Para lograr que la respuesta este entre 0 y 1, se coloca un rectificador a su salida. Para la implementacin de las entradas inhibitorias a las neuronas se emplea un amplificador inversor con ganancia unitaria. Todo esto se muestra a continuacin en el circuito de la figura 11. En la simulacin se utiliza primero el modelo de amplificador tl081(con un voltaje de alimentacin de 5V), y una vez se haya observado el comportamiento deseado, se sustituir a este por un amplificador operacional MOS [12-13] integrado mostrado en la figura 12. Las dimensiones geomtricas del amplificador son:

W(m) L(m)

M1 M2 M3 M4 M5 M6 M7 M8 54 54 40 40 410 100 20 20 2 2 2 2 2 2 2 2

Con una ibias de 40A, Cc=10pF. El voltaje de alimentacin es de 5V.

Tabla 3. Especificacin de los pesos de las conexiones. Aqu, Ci denota la conexin de entrada, y CVR denota la conexin al voltaje de referencia. Las especificaciones deben satisfacer el valor de las conductancias calculado previamente en [1]. Tipo de Conexin Conexin sinptica Valor de la Conexin
Tij = 2 (i + j 2 ) + 2 i + j V BB

Tabla 4. Cdigo obtenido por la red, en respuesta a los valores de error de entrada que se muestran, empleando un amplificador operacional TL081 y un amplificador CMOS.

Especificacin para Implementar


VBB= voltaje mximo de entrada al amplificador operacional: 5 V.

Conexin de Entrada Conexin de la Referencia

Ci =

2 i 1 VH

VH = voltaje mximo de entrada: 1 V.


VR = Voltaje de Referencia: 0.3V.

CVR =

2 ( 2i 3) VR VR

Valor del Error .35 .4 .5 .6 .7 .8 .9 1 <1

Cdigo Obtenido V1 V2 V3 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1

Cdigo Esperado V1 V2 V3 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1

VI. RESULTADOS DE SIMULACIN. Los resultados obtenidos de la simulacin tanto con el amplificador TL081 como con el amplificador MOS se muestran en la tabla 4. Estos resultados tambin se muestran de forma grfica en las figuras 13(a) y (b), donde V11 corresponde al bit de mayor peso, y V5 al de menor peso; V1, es el voltaje de entrada a la red. Podemos observar que ambos resultados corresponden al cdigo esperado, y que la red converge rpidamente a este. El programa empleado en la simulacin es pspice(v5.3)[14-15].

CONGRESO NACIONAL DE INSTRUMENTACION

SOMI XV CIB 3

Figura 11. Circuito Simulado.

Figura 12. Configuracin del amplificador MOS.

Figura 13. Error epp=.35. (a) Grfico obtenido con CMOS una vez estabilizada la red. (b) Grfico obtenido(CMOS) al arrancar la red.

VII. CONCLUSIONES. De acuerdo con los resultados obtenidos, podemos decir que se cumpli con el objetivo planteado al principio de la investigacin. La implementacin de la red se hace mediante componentes electrnicos bsicos, tales como resistencias, capacitores, rectificadores, amplificadores operacionales, lo cual nos facilita su simulacin. Se logr implementar la funcin sigmoidal empleando un comparador y un rectificador. Es importante mencionar que el funcionamiento de la red fue el deseado a pesar del escalamiento realizado a las resistencias, validando los resultados mediante simulacin. Se sentaron las bases para la implementacin de la red en VLSI, quedando como trabajo futuro la realizacin de resistencias y capacitores mediante tcnicas de diseo y fabricacin como pueden ser capacitores conmutados. REFERENCIAS.
[1] [2] [3] Hernndez Pea Jorge D. Sistema Neurofuzzy, Como Alternativa al Control Adaptable. Tesis de Maestra: CINVESTAV-IPN/UDLAP. 1997. Hopfield J.& Tank D. Simple Neural Optimization Networks: An A/D Converter, Signal Decision Circuit and a Linear Programming Circuit. Vol. Cass 33, No. 5. Mayo 1986. Bang W. Lee & Sheu Bing J. Hardware Annealing in Analog VLSI Neurocomputing. Editorial Kluwer Academic Publishers.1991. Cap. 1,2.

CONGRESO NACIONAL DE INSTRUMENTACION

SOMI XV CIB 3
Hopfield J.& Tank D. Neurons with Graded Response have Collective Computational Properties like those two-state Neurons. Procceding of the National Academic of Sciences.Vol.81 1984. Pgs. 30883092. [5] Lau Clifford & Snchez-Sinencio E. Artificial Neural Networks; Paradigms, Application and Hardware Implementations. Editorial IEEE Press.1992. Pgs. 25 -29. [6] Maren A. Handbook of Neural Computing Applications. Editorial Academic Press. 1990. [7] Mc Eliece. The Capacity of the Hopfield Associative Memory. IEEE Transactions on Information Theory. Vol 33, Julio 1987. Pgs. 461-482. [8] Hertz J. Introduction to the Theory of Neural Computation. Editorial Addison Wesley.1991. [9] Grant P. A Comparision of Neural Networks and Matched Filter Processing for Detecting Lines in Images. AIP Conference Procedings: Neural Networks for Computing. 1986. Pgs.194 -199. [10] Freeman James A. & Skapura David M.. Redes Neuronales, Aplicaciones y Tcnicas de Programacin. Editorial Addison Wesley. 1992. Cap. 1-4. [11] Hopfield J.& Tank D. "Neural" Computation of Desicions in Optimization Problems. Biological Cybernetics.Vol.52 1985. Pgs. 141-152. [12] Geiger, Allen & Strader. VLSI Design Techniques For Analog and Digital Circuits. Editorial Mc Graw Hill. 1990. Cap. 6 [13] Vzquez Glez. & Espinosa G. El Mtodo de Superficies de Respuesta Como Herramienta en el Diseo de Circuitos Integrados Analgicos. Conielecomp'99. Memoria Tcnica. Pgs. 99-103. [14] Baz David. Microsim Pspice Anlisis de Circuitos por Computadora. Editorial Alfaomega. 1995. [15] Aguilar, Domenech, Garrido. Simulacin Electrnica con PSPICE. Editorial Alfaomega. 1995. [16] Rubn Alejos Palomares, Jorge Dimas Hernndez, Sergio Chapa Vergara. "Sistema NeuroFuzzy como alternativa al Control Adaptable." SAAEI 98, Pamplona Espaa. [4]

CONGRESO NACIONAL DE INSTRUMENTACION

You might also like