Free Web Hosting Provider - Web Hosting - E-commerce - High Speed Internet - Free Web Page
Search the Web

Universidad Nacional de Colombia
Facultad de Ingeniería
Postgrado en Automatización Industrial

Sociedad Nacional de la Cruz Roja Colombiana
Dirección General de Operaciones y del Socorro Nacional
Coordinación de Tecnología.

Desarrollo de nuevos modelos matemáticos para el precálculo básico de daños causados por acción de fenómenos naturales sobre comunidades vulnerables, basado en el uso de técnicas de inteligencia artificial (Redes Neuronales).

Autor: Ing. Oscar Mauricio Barajas Pinzón

2001


2. APLICACION DE TECNICAS DE INTELIGENCIA ARTIFICIAL PARA EL MODELAMIENTO MATEMATICO DE FENOMENOS

2.1. REDES NEURONALES:

En esencia una Red Neuronal es un modelo matemático acerca del funcionamiento del cerebro en donde los sencillos elementos de cálculo aritmético equivalen a las neuronas ( células que procesan información en el cerebro) y la red en general equivale a un conjunto de neuronas conectadas entre sí. [11], [55].

Además de sus útiles propiedades de cómputo, las redes neuronales son idóneas para el estudio de diversos fenómenos complejos que requieren simular las capacidades funcionales del cerebro.

Se ha demostrado matemáticamente, Funahashi ( 1989, 1990 ), que una red neuronal multicapa puede aproximar cualquier función no lineal o mapa no lineal multivariable [12]:

Ecuación 5. Aproximación de una función no lineal.

Donde:

F(x) representa la función no lineal.

Rn representa la dimensión del conjunto a la que pertenece la función.

R representa la nueva dimensión de la función. La función ha sido aproximada.

Por lo que puede servir para generar un modelo matemático que pueda precalcular daños por desastres naturales que afectan a comunidades vulnerables.

2.2. APLICACIONES DE LAS REDES NEURONALES:

Jhon Denker afirma que "las redes neuronales es la segunda mejor opción para hacer cualquier cosa ", aunque podría parecer una exageración, es un hecho que el desempeño de las redes neuronales en muchas tareas que resultarían difíciles de realizar mediante otras técnicas de programación puede considerarse como aceptable.

La aplicación de las Redes Neuronales ha sido muy eficiente en el reconocimiento de patrones, el análisis de series de tiempo, el reconocimiento de caracteres escritos, estudios financieros, verificación de firmas, procesamiento de imágenes y control de pequeños robots. [11], [12].

A continuación se describen algunas aplicaciones:

El programa NETtalk (Sejnowski y Rosenberg, 1987) es una Red Neuronal que aprende a pronunciar un texto escrito. La entrada es una secuencia de caracteres que se presenta en una ventana que va deslizándose a través del texto. La capacitación consistió de un texto de 10024 palabras cuyos rasgos fonémicos se transcribieron en forma manual. NETtalk aprende a realizar su tarea con un 95% de precisión en el escenario de la capacitación luego de revisar 50 veces los datos.

ALVINN (Autonomus Land Vehicle In a Neural Network, vehículo terrestre autónomo en una red neuronal) (Pomerleau, 1993) es una red neuronal cuyo desempeño ha sido bastante satisfactorio en dominios donde otros métodos han fracasado. Es capaz de aprender a conducir un vehículo en un solo carril basándose en la actuación de un conductor humano. Los resultados obtenidos con la capacitación de la Red son impresionantes. ALVINN ha conducido a velocidades superiores a los 105 kilómetros por hora, a través de más de 135 km, en carreteras públicas cercanas a Pittsburgh. También ha conducido a velocidades normales en caminos de terracería de un solo carril, caminos pavimentados para bicicletas y calles de dos carriles de los suburbios.

Se entrenó una Red Neuronal para aprender a predecir la pluviosidad en la Sabana de Bogotá. La serie está expresada en "días de lluvia/mes" y se extiende desde 1972 hasta 1990 (19 años), los datos se normalizan dividiendo por 30. Después de múltiples análisis la estructura seleccionada fue una Red Multicapa de 40 entradas, 12 neuronas en la capa intermedia y 12 neuronas en la capa de salida, con un error de generalización promedio de 10.38 días/mes.

La compañía IBM en Escocia ha desarrollado un sistema neurona de inspección para detectar imperfecciones muy pequeñas para el ojo humano en circuitos impresos. Este sistema desarrollado en el Reino Unido se introducirá en Japón y en Estados Unidos.

La calidad de la soldadura es crítica en el ensamblaje de circuitos impresos para la industria de computadoras. La tarjeta principal de una computadora personal puede tener hasta 4000 puntos de soldadura y cuando se producen 5000 tarjetas diarias, el control de calidad es un problema importante.

La industria de alimentos utiliza bombas para transportar productos líquidos entre equipos de proceso. Aunque el proceso es robusto, cuando ocurren bloqueos, el producto que pasa por la bomba se puede dañar. La Universidad de Brunel y Neural Technologies Limited han desarrollado un sistema para detección temprana de fallas en bombas utilizando una red neuronal. El sistema contiene una Red Neuronal de 256 entradas, 10 neuronas en la capa intermedia y una salida y un micrófono montado cerca a la bomba, la salida de la Red activa una luz de alarma cuando se detecta un posible bloqueo. El sonido del micrófono se procesa antes de entregarlo a la Red Neuronal, la señal análoga del sonido se convierte a digital y luego se calcula el nivel de sonido en 256 bandas de frecuencia (espectro de frecuencia ).

Varias organizaciones financieras han encontrado donde aplicar el cómputo neuronal efectivamente. El fondo de pensiones Deere y Company ha estado manejando un portafolio de U$ 100 millones desde Diciembre de 1993 usando Redes Neuronales.

El Fondo supervisa 1000 acciones en los Estados Unidos semanalmente, para cada una de las acciones hay una red neuronal que modela el futuro de la acción como función de 40 factores técnicos y producen un estimado del cambio del precio semanal. La compañía selecciona luego un portafolio de las 1000 mejores acciones y distribuye los dineros del fondo proporcionalmente. El programa de Deere y Co. Está soportado por 4 personas, empezó negocios en Diciembre de 1993 y sus ganancias son del 30% lo cual es un buen margen según el estándar financiero.
 

2.3.RED MULTICAPA:


FIGURA 8. Esquema de una Red Neuronal Multicapa

Una red neuronal es una estructura paralela que procesa información en forma distribuida y está constituida por elementos de procesamiento, llamados neuronas, interconectados con canales unidireccionales. Cada elemento de procesamiento tiene una conexión de salida, la cual se ramifica en tantas conexiones colaterales como se requiera ( cada una lleva la misma señal, la salida del elemento procesador).[12],[13] [14],[15].

Aquí se muestra una red neuronal multicapa, la estructura es n-N-m. Hay n nodos de entrada, N neuronas ocultas y m neuronas de salida. Los nodos de entrada reciben los valores a procesar xj ( j=1...,n), las neuronas ocultas reciben las entradas xj ponderadas por los pesos wij y producen las salidas hi ( i=1...N), finalmente los nodos de salida hacen la suma ponderada de las salidas de las neuronas ocultas.

La red neuronal multicapa puede resolver problemas de clasificación de patrones no separables linealmente como la función lógica XOR.

Para la red mostrada, la salida de las neuronas ocultas está dada por [12], [13], [14],:


Ecuación 6. Salida de las neuronas ocultas.

Donde:

Xj representa las condiciones de vulnerabilidad de la comunidad.

Wij representa el valor de los pesos de entrada.

Wi0 representa el valor de los pesos umbrales de entrada.

s representa la función Tanh, que es la función de activación en la primera capa de la Red Neuronal.

Las salidas de la red son:

Ecuación 7. Salidas de la Red Neuronal.

Donde:

FL representa las consecuencias y los daños producidos por la acción del desastres.

hi representa el valor de las salidas de la primer capa de la Red Neuronal.

CLi representa el valor de los pesos de salida.

2.4. ENTRENAMIENTO CON EL ALGORITMO DE PROPAGACION INVERSA RED MULTICAPA:

Para entrenar una Red Neuronal se asume que las neuronas tienen una función de activación continua y se utiliza el gradiente de la función de error para actualizar el vector de pesos.

Si consideramos la red multicapa 3-3-2 se utilizará la ley general de aprendizaje, basada en gradiente, [12], [13], [15], [16], [17]:

Ecuación 8. Ley general del aprendizaje basada en el gradiente.

Donde:

Wk+1 representa el nuevo valor del peso.

Wk representa el valor del peso sin actualizar.

a representa la rata de aprendizaje del sistema.

-Ñk representa el valor del gradiente.

Las entradas a la red son x1, x2 y x3, y las correspondientes salidas deseadas son d1, d2, un patrón entradas salidas es el vector ( x1,x2,x3,d1,d2). Las salidas de la red son y1,y2, por lo tanto los errores entre salidas deseadas y salidas actuales son: e1=d1-y1, e2=d2-y2.

Durante la presentación de un patrón, el error cuadrático de la salida está dado por:

Ecuaciones 9. Error cuadrático de la salida.

Donde,

.e representa el valor del error.

.d1 representa el valor deseado de la salida en 1.

.d2 representa el valor deseado de la salida en 2.

Y1 y Y2 es el valor de salida real de la Red Neuronal.

.h1, h2, h3 representan los valores de las salidas de la primer capa de la Red Neuronal.

C representa los valores de los pesos de salida.

Estas ecuaciones representan las entradas, las salidas y el error cuadrático para una Red Neuronal de dos salidas y una capa intermedia de tres neuronas.

El error es cero si los errores para cada salida son cero. Calculando el gradiente del error cuadrático respecto de los pesos de salida de la red neuronal tenemos,

Ecuación 10. Gradiente del error cuadrático.

Donde:

.e representa el valor del error.

.hi representan los valores de las salidas de la primer capa de la Red Neuronal.

C representa los valores de los pesos de salida.

Entonces la regla para actualizar los pesos de salida es,

Ecuación 11. Regla para actualizar los pesos de salida.

Donde:

.e representa el valor del error.

.hi representan los valores de las salidas de la primer capa de la Red Neuronal.

C representa los valores de los pesos de salida.

a representa la rata de aprendizaje del sistema.

l=1...m.

i=1...N.

La salida de las neuronas ocultas está dada por,

Ecuaciones 12. Cálculo de las salidas de las neuronas ocultas.

Donde:

hi representa el valor de las salidas de la primer capa de la Red Neuronal.

Xj representa las condiciones de vulnerabilidad de la comunidad.

Wij representa el valor de los pesos de entrada.

s representa la función Tanh, que es la función de activación en la primera capa de la Red Neuronal.

El gradiente del error cuadrático respecto de los pesos de la capa oculta de la red neuronal es,

Ecuación 13. Cálculo del gradiente del error cuadrático respecto a los pesos de la capa oculta de la red neuronal.

Donde el error especial es:

Ecuación 14. Error especial.

Donde:

d representa el valor del error especial.

.e representa el valor del error.

.d1 representa el valor deseado de la salida en 1.

Y1 es el valor de salida real de la Red Neuronal.

C representa los valores de los pesos de salida.

Entonces la regla para actualizar los pesos de entrada es:

Ecuación 15. Regla para actualizar los pesos de entrada.

Donde:

hi representa el valor de las salidas de la primer capa de la Red Neuronal.

Xj representa las condiciones de vulnerabilidad de la comunidad.

Wij representa el valor de los pesos de entrada.

.e representa el valor del error.

.hi representan los valores de las salidas de la primer capa de la Red Neuronal.

C representa los valores de los pesos de salida.

a representa la rata de aprendizaje del sistema.

d representa el valor del error especial.

l=1...m.

i=1...N.

s representa la función Tanh, que es la función de activación en la primera capa de la Red Neuronal.


Regrezar a la página principal: