Download REDES NEURONALES ARTIFICIALES APLICADAS AL
Document related concepts
Transcript
REDES NEURONALES ARTIFICIALES APLICADAS AL DISEÑO EN INGENIERÍA J. M. Cervantes Martínez, T. H. Neri Vitela y G. Mendoza García * Instituto Mexicano del Petróleo Eje Central Lázaro Cárdenas No. 152 C.P. 07730, México, D.F. RESUMEN El objetivo de este trabajo es dar a conocer el gran potencial que tiene el empleo de las redes neuronales artificiales (RNA) para automatizar el diseño estructural. Esta área de la Inteligencia Artificial permite dotar de cierta capacidad de aprendizaje a los sistemas de cómputo y es el complemento idóneo de sistemas expertos ya existentes. Una RNA se puede definir como una aplicación informática que emula el modelo biológico de aprendizaje, empleando elementos simples fuertemente interconectados (neuronas artificiales), procesando de forma paralela la información y respondiendo dinámicamente a estímulos externos. SUMMARY The objective of this paper is to show the great potential of neural networks for automating of structural design. This area of the Artificial Intelligence let to include learning capacity to computer systems and is ideal complement to expert systems. Neural networks can be defined as a computational application. They simulate the biological model of learning and consist of many simple computing elements interconnected together by connections of varying strength. Neural networks are massively parallel and help solve problems with natural mechanisms of generalization. INTRODUCCIÓN La automatización del diseño en ingeniería es una área en constante evolución, desde las primeras aplicaciones de cómputo para ingeniería, se han desarrollado programas para resolver una amplia variedad de problemas, en un principio los más exitosos fueron aquellos problemas cuya solución podía plantearse por medio de un algoritmo bien definido en que no se empleaba un amplio conocimiento formal y heurístico para tomar decisiones. Sin embargo, aquellos en que no es posible establecer un algoritmo y que requieren del juicio y experiencia del ingeniero no habían podido ser tratados adecuadamente. Ahora se puede proporcionar a la computadora aspectos cualitativos de la ingeniería que no pueden ser capturados como números o algoritmos, en otras palabras, ahora se puede programar razonamiento conceptual, reglas para evaluar, juicios, etc. La rama de la computación que ofrece las metodologías y herramientas de programación para hacer lo anterior es la inteligencia artificial, específicamente, el área de redes neuronales artificiales ofrece la posibilidad de implementarle una cierta capacidad de aprendizaje a estos sistemas. FUNDAMENTOS DE REDES NEURONALES Antecedentes En la década de los 50´s se realizaron varios intentos para adoptar distintos modelos de redes, El análisis de las redes neuronales comenzó a partir del interés de querer determinar la forma en que trabaja el cerebro así como la manera en que se logra el aprendizaje. El primer investigador en estudiar el cerebro fue Alan Turing quién estudió al cerebro desde un punto de vista computacional; posteriormente, surgió Warren McCulloch y Walter Pitts quienes establecieron los fundamentos de la neurocomputación, proponiendo la teoría del funcionamiento de las neuronas la cual se basa en elementos de cómputo como elementos binarios (1-activo. 0-inactivo). Una de las neuronas más antiguas fue desarrollada por Frank Rosenblantt, denominada como Perceptrón; la cual consiste en dos capas de neuronas una de entrada y una de salida. Para 1950 Bernard Widrow y Marcial Hoff crearon la red denominada Adaline, la cual ajusta sus pesos de acuerdo a las entradas y a las salidas, la aplicación principal fue de telefonía mediante filtros. Sobre la base de esta se crea el Madaline cuya primordial característica es tener varias neuronas a la salida. En 1967 Stephen Grossberg desarrollo la red denominada avalancha, su particularidad es el reconocimiento de la voz, en 1969 comienza una crisis en cuanto a investigación sobre las redes neuronales añadiendo a todo esto, se publica el libro Perceptrón por Marvin Minsky y Seymour Paper, en el que se presentaba un análisis matemático del perceptrón y sobre un estancamiento en cuanto a tecnología se refiere (Knight, 1991). En ese entonces el fisiólogo Dolald Hebb, estableció que las neuronas del cerebro se encontraban conectadas entre las distintas neuronas del cerebro para obtener como resultado la transmisión de información, a este proceso se le denominó Sinapsis. Todo ello mediante un incremento en la conductividad eléctrica entre cada neurona, el estudio de esta fase, dio como resultado el inicio básico del aprendizaje de las Redes Neuronales Artificiales. Los modelos de RNA han logrado tener gran auge así como exitosos resultados en diversos campos como la ingeniería, medicina, finanzas, química, etc. Entre las aplicaciones específicas de redes neuronales están el reconocimiento de imágenes y sistemas con capacidad de aprendizaje. Tipos de Neuronas Para entender que es una Red Neuronal fue necesario estudiar el funcionamiento del cerebro, incluyendo el proceso del pensamiento en el estudio de las conexiones neuronales. La neurona es la unidad principal del sistema nervioso de todo ser humano, su principal función es la de dirigir las funciones biológicas, como la respiración y el sistema cardiovascular. De hecho la diferencia primordial de una neurona con respecto a las demás células vivas es su capacidad de comunicarse con otras neuronas, otra es su capacidad de cambiar de tamaño y estructura durante y después de la niñez. Algunas neuronas se encuentran conectadas al medio ambiente (externo) y reciben el nombre de unidades de entrada y de salida. Usualmente las neuronas se dividen en tres tipos: • Neuronas que reciben información mediante estímulos del exterior, este proceso se realiza a la entrada de la neurona. • Neuronas que toman información y al mismo tiempo la procesan (sinapsis), a estas se les denomina Unidades Ocultas, la característica principal es que no tienen relación alguna con la información de entrada ni la de salida. • Neuronas de salida, después de haber realizado los pasos anteriores, la información pasara a esta en donde se le dará respuesta al sistema. Las neuronas están conformadas por un cuerpo celular llamado soma; en donde brotan raíces denominadas dendritas, esta a su vez tiene una fibra llamada axón, la cual esta dividida en su extremidad en pequeñas ramas. Las dendritas son las receptoras de señales adyacentes, el axón es el transmisor que se activa hacia otra neurona. La sinapsis es la unión que existe entre el axón y otra neurona. Comunicación entre Neuronas Las señales nerviosas son transmitidas mediante un proceso electroquímico, en donde las neuronas fungen como nodos de acumulación, recibiendo las señales de otras neuronas. Estas señales pueden ser excitatorias o inhibitorias; esto es, si la neurona recibe determinado incremento de voltaje, mandara la información a otra neurona a través del axón, pero si sucede lo contrario y no recibe el incremento adecuando, la neurona permanecerá inactiva. Al proceso de enviar impulsos de una neurona a otra se le denomina divergencia y cuando recibe los impulsos de otras neuronas se llama convergencia. El Sistema Nervioso es considerado una red de comunicaciones, que se encuentra tendida en el cuerpo, sus partes primordiales son el cerebro y la medula espinal, en las redes neuronales computacionales, los cables serán considerados como las fibras nerviosas que conducen los mensajes en forma de impulsos. Una Red Neuronal es el intento de copiar en una computadora la representación del cerebro humano. De hecho es una colección de neuronas ligadas entre sí, las cuales tienen como misión principal transmitir información de un lado a otro. CARACTERÍSTICAS DE NEURONAS ARTIFICIALES Una Red Neuronal Artificial (RNA) (fig. 1) intenta simular el comportamiento del al cerebro, y obtener como resultado la capacidad de aprendizaje, este trabajo se lleva a cabo mediante herramientas de programación y equipo de procesamiento en paralelo. De antemano podemos decir que una RNA genera representaciones específicas, de tal forma que un conjunto de estas será capaz de mostrar letras, números y cualquier otro tipo de objeto que se desee. La característica primordial de una RNA es su capacidad de presentar un gran número de objetos similares a las del cerebro humano, algunos ejemplos de estas similitudes son: • • • Capacidad de aprender cualquier cosa mediante la experiencia. Extensión de situaciones nuevas. Abstracción de características esenciales. Parámetros de Comportamiento. Los pesos de una neurona son los valores que toman los parámetros que definen el comportamiento de la neurona, estos se ajustan durante la etapa de aprendizaje de la red y experimentan un ajuste continuo pero menor durante la etapa de operación (fig. 2). Las redes con pesos adaptables emplean leyes de aprendizaje para poder ajustar el valor de la fuerza de la interconexión con otras neuronas. Pero si las neuronas utilizan pesos fijos entonces tendrán la particularidad de que las tareas ya se encontraran definidas (Roger, 1997). Para determinar los pesos será necesario realizar una descripción completa del problema, por otra parte, los pesos adaptables son indispensables si no se conocen con anterioridad el valor correcto de estos. Tipos de Aprendizaje. Las neuronas utilizan dos diferentes tipos de aprendizaje, los cuales permites llegar a soluciones deseadas, el aprendizaje se realiza mediante entrenamiento basándose en estímulos, los tipos de aprendizaje que existen son: • • Supervisado. No Supervisado. El aprendizaje supervisado consiste en proporcionar a la red todas las entradas necesarias así como las salidas exactas, el trabajo de la red será ajustar sus pesos minimizando el error de su salida. El entrenamiento no supervisado es aquel en que se presentan estímulos y la red trata de ajustar sus conexiones basándose en estos estímulos y a la salida de la propia red. Estos procesos de aprendizaje son necesarios para que la red pueda ajustar sus pesos utilizando funciones de error o algún otro tipo, de hecho las conexiones que unen a las neuronas utilizan los pesos para hacer que la red adquiera conocimiento (aprenda), dando como resultado un cambio en las conexiones posteriores por el proceso de aprendizaje. Las redes están estructuradas por capas (multicapas), esta característica se da dependiendo del tipo de conexión que se tenga, la forma de distinguir la capa a la que pertenece una neurona, consiste en ver el origen de las señales que se recibe a la entrada y el destino de la señal de salida; existen dos tipos muy comunes hacia delante (feedforward) o hacia atrás (feedback). La conexión hacia adelante es aquella en la que todas las neuronas que se encuentran en una capa reciben señales de entrada a otra capa posterior, más cercana a la salida de la red (Freeman, 1991). De hecho la mayor parte de las señales se propagan hacia delante a través de las capas de la red, pero nunca por ningún motivo se realizaran conexiones a otra red o a ella misma. Mientras que las conexiones de redes hacia atrás tienen la posibilidad de realizar conexiones desde las salidas de las neuronas a capas posteriores y a las capas anteriores, circula información tanto adelante como hacia atrás. Otro tipo más de neuronas, es en donde se tienen bicapas (dos capas), en la que existen dos tipos de pesos los cuales atañen a las conexiones de entrada hacia la salida, así como las conexiones de la salida a la capa de entrada. Este tipo de capa asocia la información de entrada en la primera capa con otra información o patrón de salida, esta recibe el nombre de heteroasociación. Por último, el tipo de red multicapa hacia delante y hacia atrás o conocida como Neocognitron, en donde las neuronas tienen asignadas capas bidimiensionales eliminando de esta forma los tamaños, giros y desplazamientos que representan la información de entrada. El objetivo de toda neurona es el de aprender a través del conocimiento, el aprendizaje es la causa primordial por la cual la neurona tiende a modificar sus pesos todo ello en respuesta a la información que se tiene a la entrada. Todos y cada uno de los cambios que se realizan durante el proceso de aprendizaje darán como resultado una reducción en la destrucción y creación de conexiones entre las neuronas, la creación de nuevas conexiones implica pesos distintos a cero, de lo contrario si el valor de los pesos es igual a cero la conexión será destruida. Durante el proceso de aprendizaje las neuronas se encuentran en constante interacción, sufriendo varias modificaciones en cuento a su peso, cuando esta mantiene sus pesos estables dará como resultado el aprendizaje. Cuando se desea que la red vuelva a aprender se necesitará establecer los pesos, para ello es necesario especificar determinados criterios a lo que se conoce como reglas de aprendizaje, el objetivo de las leyes de aprendizaje, es determinar la forma de cómo la red debe ajustar sus pesos, mediante funciones de error, con los dos diferentes tipos de aprendizajes antes ya mencionados MODELOS ADALINE Y MADALINE Las Redes Adaline y Madaline deben su existencia a la red denominada como Perceptrón creada por Frank Rosenblant en el año de 1957. Este tipo de redes consta de una arquitectura similar, con conexión hacia delante entre cada neurona. Una de sus principales aplicaciones es ser un excelente clasificador de patrones, por ejemplo, el reconocimiento de la voz, mediante el aprendizaje supervisado. Esta red se encuentra constituida primordialmente por varias neuronas en forma lineal. Capaces de generalizar después de haber aprendido una serie de patrones similares. El Perceptrón se encuentra constituido de una capa de entrada y una de salida con una única neurona. El tipo de aprendizaje que llega a utilizar esta neurona esta dado por el aprendizaje supervisado. Los modelos de redes ADALINE (ADAptive LINear Element) (fig. 3) y MADALINE (Múltiple Adaline) (fig. 4) desarrolladas por Bernier Widrow, después de la red Perceptrón, conservan la misma arquitectura del perceptrón, con funciones de transferencia tipo “Escalón” como primordial característica. La diferencia entre ambas, es que Adaline (fig. 5) se encuentra dada por una única neurona de salida, mientras que Madaline utiliza una regla conocida como Delta (Hidrow-Hoff) o regla de mínimos cuadrados, dada por la búsqueda del mínimo error entre cada salida, obtenida antes de aplicarle la función de activación tipo escalón frente a la salida binaria utilizada en el caso del perceptrón (Hilera, 1995). Ambas redes utilizan un aprendizaje fuera de línea con un supervisor denominado de mínimos cuadrados mencionado anteriormente. Las siglas Madaline significan Muchos Adalines. Organizada con una arquitectura multicapa, esta tiene como principal característica asemejarse a una red neuronal ordinaria. Se podrán presentar vectores de grandes dimensiones (Kosko, 1991). El algoritmo de mínimos cuadrados es aplicado a la capa de salida, para poder entrenarla, recordemos que en este caso se pueden definir las entradas con anterioridad así que el vector de salida será conocido, lo que no se conoce es la salida deseada para un nodo dado de una de las capas ocultas. Otro tipo de entrenamiento es el MADALINE (MRII), el cual se basa en una reducción del número de neuronas de salida incorrectas para cada una de las tramas que se den como entrada, esto se puede aplicar mediante el siguiente algoritmo. 1. Se aplica un vector a las salidas del Madaline y se hace que se propague hasta la unidad de salida. 2. Se cuenta el número de valores incorrectos que haya en la capa de salida, identificando como error a este número. 3. Para todas las capas de salida se llevará a cabo el procedimiento que se describe a continuación: • Se seleccionara al primer nodo, siempre y cuando este no haya sido seleccionado anteriormente y cuya salida analógica se encuentre más próxima a cero. (En esta neurona se tendrá la opción de poder cambiar el valor de su peso, teniendo prioridad el proceso de aprendizaje, a este proceso se le denomino mínima perturbación). • En la neurona seleccionada se cambiaran los pesos de tal modo que exista la opción de cambiar de salida bipolar de la unidad. • Se propaga el vector de entrada hacia delante, partiendo de las entradas y en dirección a las salidas una vez más. • Se admite un cambio de peso, dando lugar a una reducción del error, en caso contrario, se restauran los pesos originales. 4. Se repite el paso 3 para todas las capas, excepto la de la salida. 5. Para todas las unidades de la capa de salida se realiza lo siguiente: 6. • Se selecciona el par de neuronas que no hayan sido seleccionadas con anterioridad y las salidas estén próximas a cero. • Se aplica una corrección de peso a ambas neuronas, con el fin de modificar la salida bipolar de ambas. • Se hace que se propaguen hacia adelante y hasta culminar con las salidas. • Se admite el cambio de pesos, dando lugar a una reducción del error, en caso contrario, se restaurarán los pesos originales. Se repite el paso 5 para todas las capas, excepto la de entrada. Los paso 5 y 6 pueden repetirse siempre y cuando sean grupos de tres, cuatro o mayor número de neuronas. Se considera que las parejas son apropiadas para redes que tienen un máximo de 25 neuronas por capa aproximadamente Mientras que Adaline, tiene casi totalmente la misma estructura de la red Perceptrón, dispositivo que cuenta con un único elemento de procesamiento, como tal puede ser considerado como filtro. Inicialmente Adaline era denominado como Neurona Adaptativa Lineal (ADAptataive Linear Neuron), su primordial característica es tener un combinador adaptativo lineal (ALC), con el cual se obtiene una salida para aplicarla a otro elemento bipolar; y, siempre y cuando la salida del ALC sea positiva, se podría obtener como salida del la red Adaline un valor de +1, pero si sucede lo contrario y la salida del ALC es negativa, se tendrá como salida de la neurona una valor de –1. En el ALC se llevará a cabo una suma de productos, empleando los vectores de entrada y de peso aplicados a una función de salida para obtener un valor único. FUNDAMENTOS DEL DISEÑO EN INGENIERÍA Generalidades sobre Diseño. El diseño es quizás una de las tareas más difíciles que realizan los ingenieros, es una tarea que requiere gran cantidad de conocimiento del campo específico y considerable habilidad en la solución de problemas. Sin embargo, no existe una definición universalmente aceptada de lo que es el diseño. Entre otras se entiende por diseño como la actividad dirigida a logra un objetivo que tiene que cumplir con un conjunto de restricciones, resultado de esta actividad es un plan para lograr el objetivo. Otra lo define como la actividad que produce una descripción de un objeto en términos de su forma, dimensiones, materiales y funcionamiento. En ingeniería el resultado del diseño es un conjunto de especificaciones para construir un objeto a diferencia del diseño en otros campos cuyo producto es un objeto terminado. Esto implica que el principal aspecto del diseño en ingeniería es la forma como se describen estas especificaciones, la cual debe ser clara, concisa y sin ambigüedades. De lo anterior se puede dar la siguiente definición del diseño en ingeniería considerándolo como un proceso: "el diseño en ingeniería es la elaboración y evaluación sistemática de especificaciones para construir un objeto, cuya forma, dimensiones, materiales y funcionamiento cumplen con los objetivos establecidos y satisfacen las restricciones especificadas”. En el diseño de sistemas complejos se presentan varias dificultades, las principales son las siguientes: las consecuencias del diseño no son aparentes durante el proceso de diseño, así que muchas alternativas tienen que ser consideradas, se tiene que satisfacer un gran número de condiciones impuestas por diversas fuentes y el diseño por su complejidad se divide en un conjunto de subtareas y la interacción entre éstas debe ser cuidadosamente manejada. También la toma de decisiones es difícil por que generalmente las subtareas la efectúan diferentes individuos y el diseñador debe tener una idea global del diseño con el fin de que pueda dar una solución óptima a nivel local. Clasificación del diseño El diseño se puede clasificar considerando la dificultad que se presenta en la toma de decisiones, en la integridad del conocimiento generado y en los inconvenientes para controlar los procesos de búsqueda, en las siguientes clases: creativo, innovador, rediseño y rutinario. En el diseño creativo no existe una solución a priori del problema y se caracteriza porque los objetivos no son precisos, ni puede hacerse una descomposición efectiva del problema. Este tipo de diseño requiere de considerable capacidad para resolver problemas. En la actualidad no es susceptible de incorporarse a un sistema de cómputo debido principalmente a que no se comprenden todavía los procesos del pensamiento creativo en el hombre. En el diseño innovador la descomposición del problema es conocida pero las alternativas de cada parte no existen y deben ser sintetizadas, estas alternativas pueden ser una combinación de componentes existente. El rediseño consiste en tomar un diseño existente para modificarlo y así incorporar los cambios necesarios, dependiendo de si estos cambios llegan a ser funcionales o no, este tipo de diseño se vuelve bastante complicado. En el diseño rutinario existe un plan a priori, las subpartes y alternativas son conocidas, quizás como resultado de un diseño creativo o innovador. La solución consiste en encontrar para cada subparte las alternativas apropiadas para satisfacer las condiciones dadas. El diseño creativo es confuso, espontáneo, caótico e imaginativo, por el contrario, el diseño rutinario es preciso, predeterminado, sistemático y de naturaleza matemática. Diseño Estructural El proceso de diseño estructural tiene como resultado final un conjunto de especificaciones que debe cumplir una estructura, tal que su configuración estructural sea capaz de soportar las cargas aplicadas satisfaciendo la condiciones de resistencia, servicio y costo que se establecieron como objetivos. Este proceso tiene tres etapas, la de diseño preliminar, análisis y diseño detallado. En el diseño preliminar se propone una configuración estructural inicial y dimensiones estimadas de los elementos estructurales, las cuales cubren algunas de las condiciones claves del diseño (criterios de diseño). La automatización de este paso es factible por medio de un sistema experto. El análisis consiste en modelar el sistema estructural y determinar la respuesta de la estructura correspondiente a las cargas aplicadas. El análisis debe satisfacer las condiciones de equilibrio, compatibilidad y relaciones esfuerzo deformación de los materiales. Se tiene tres pasos en está etapa: establecer el modelo matemático, análisis de este modelo matemático e interpretación física de los resultados. El diseño detallado implica la selección del material, del tipo de sección transversal y del dimensionamiento de los componentes estructurales satisfaciendo todas las condiciones de diseño. Esta etapa también se subdivide en varios subproblemas jerárquicos, por ejemplo, el dimensionamiento de los principales componentes estructurales (vigas, columnas, etc.) seguido del detallado de sus subcomponentes (conexiones, refuerzo, etc.). En cada subproblema existe una subdivisión adicional conforme a algunas condiciones de control (resistencia de diseño, pandeo, etc.) seguida de la evaluación de condiciones secundarias. AUTOMATIZACIÓN DEL DISEÑO EN INGENIERÍA La aplicación de la computación en ingeniería estructural se remonta a la década de los 50's y ha dado lugar a un sinnúmero de programas de cómputo, cuyo propósito principal es el de automatizar las actividades de análisis y diseño. Estos programas de cómputo se pueden agrupar de acuerdo al tipo de tarea que realizan, estas aplicaciones son los sistemas para la administración de bases de datos, los programas de análisis de propósito general y específico, interfases de usuario, sistemas de procesamiento estándar y sistemas para diseño estructural. Los programas de análisis estructural de propósito general y específico son los que más se han desarrollado, por ejemplo, los que realizan análisis a gran escala como son los métodos de los elementos finitos y de los elementos de frontera. Disponiéndose también de una amplia variedad de programas que resuelven problemas más particulares que auxilian en el análisis de componentes estructurales o estructuras especiales. Los sistemas de procesamiento estándar sirven para dos propósitos: revisar los diseños para que estén conforme a las especificaciones y estándares de diseño; y, dimensionar los componentes estructurales para que se comporten satisfactoriamente bajo las condiciones de resistencia y servicio. Muchos de estos programas contienen las normas de los reglamentos de diseño y, generalmente, no son flexibles para el usuario, es decir, no pueden adaptarse fácilmente a las necesidades del usuario. Los sistemas de diseño estructural son los primeros intentos para crear sistemas integrados para el diseño estructural. Estos sistemas realizan tareas de propósito especial que se ocupan del diseño de componentes específicos como son las losas, vigas y marcos. Presentan varias ventajas, por ejemplo, realizan síntesis limitada, incluyen algunas reglas heurísticas, consideran ciertas normas de reglamentos como condiciones para la selección de componentes, dimensionamiento y revisión. Las desventajas que tienen son que realizan una síntesis limitada y son altamente especializados e inflexibles. Los programas descritos anteriormente proporcionan el medio para resolver un amplio intervalo de problemas de ingeniería estructural. Sin embargo, estos programas son de naturaleza algorítmica y no son capaces de resolver eficientemente muchos problemas que requieren de un juicio basado en la experiencia. Además, estos programas generalmente no comparten información de forma directa. Pero ahora con los sistemas expertos y redes neuronales junto con los tradicionales programas de ingeniería y diseño asistido por computadora se dispone de la metodología y herramientas de programación para superar las limitaciones de los actuales sistemas. Los sistemas expertos permiten formalizar y emplear el conocimiento de un campo específico de conocimiento, pero tienen una limitada habilidad para aprender de diseños anteriores, lo cual no permite adicionar de forma significativa nuevos conocimientos de naturaleza heurística. En esta etapa de la automatización del diseño, es posible implementarles una cierta capacidad de aprendizaje empleando redes neuronales artificiales. MODELO CONCEPTUAL DE UN SISTEMA PARA DISEÑO BASADO EN REDES NEURONALES ARTIFICIALES El proceso de diseño se puede tratar desde el punto de vista del diseño de sistemas. De esta manera el diseño consta de varias partes: la entrada y salida del sistema, la parte interna que realiza el proceso de transformación de la entrada en la salida deseada (fig. 6). En este proceso se toma un gran número de decisiones utilizando el conocimiento formal y heurístico del área en cuestión, así como de los reglamentos y normas vigentes. La idea básica del modelo conceptual que se propone consiste en el uso de neuronas o capas de neuronas en cada uno de los nodos de decisión de este proceso. Así que uno de los primeros pasos para implementar un sistema de este tipo es identificar y establecer el conjunto de todas las decisiones que se hacen para diseñar una estructura específica. Es conveniente buscar la generalización de la red de decisiones para formular un sistema de propósito general para diseño. Entrada del Sistema. La información que alimentará al sistema, será almacenada en una capa externa de neuronas, esta capa también incluirá la interfase con el usuario. Los datos que la conforman son las bases del diseño, el conocimiento formal y heurístico y los reglamentos y normas de diseño. Salida del Sistema. Otra capa externa de neuronas estará encargada de generar los datos necesarios para elaborar las salidas del diseño, es decir, la información documental del diseño que es la representación final de todo el proceso. Las principales salidas son: la memoria de cálculo en las que se registran principalmente los criterios y metodología empleada durante el diseño; los dibujos que describen de forma clara y precisa las especificaciones para la construcción de la estructura diseñada; y, la cuantificación del material requerido para calcular los volúmenes de obra requeridos. Estructura Interna del Sistema. Las capas internas están constituidas de cuatro partes: el diseño preliminar, la interacción con el módulo de análisis, la revisión del diseño y la interacción con un sistema experto para diseño. Las capas que se ocupan de la interacción son descritas posteriormente. La capa dedicada al diseño preliminar, se ocupará de tomar las decisiones relativas a la identificación y selección de las diversas configuraciones posibles que podrá tener la estructura, cumpliendo con las bases de diseño tanto en lo referente a las dimensiones, forma y función, como a su resistencia y buen comportamiento conforme a las especificaciones mínimas establecidas por los reglamentos y normas que aplique. Otra capa se ocupará de la revisión del diseño, en esta se contemplan las decisiones para aceptar o rechazar el diseño preliminar propuesto, satisfaciendo también lo impuesto en los reglamentos y normas vigentes. El tipo de neuronas utilizadas estarán de tal forma interconectadas que permitirán una alta retroalimentación de todo el sistema, esto es debido a que el proceso de diseño es de naturaleza iterativa. Entrenamiento del Sistema. La identificación y elaboración de los casos para entrenar a la red son determinantes para incrementar la confiabilidad del sistema. Éstos deben cubrir de preferencia todo el espectro de salidas (soluciones) del diseño, aun a pesar de saber que las redes trabajan con datos incompletos e imprecisos. Esta tarea se realiza de forma interdisciplinaria con los expertos de las áreas de ingeniería involucradas en el diseño. Integración con el Módulo de Análisis El análisis se lleva a cabo en programas tradicionales que serán integrados en un módulo que estará ligado al sistema por medio de una interfase. El análisis se realiza de manera recurrente para el diseño preliminar y sus posteriores revisiones. Lo componen los modelos matemáticos y numéricos que determinan el comportamiento estructural del sistema diseñando (Espino, 1999). Los resultados se requieren en la capa de revisión del diseño, generalmente, estos resultados están en términos de los esfuerzos y deformaciones de los componentes del sistema, que son los que determinan su resistencia y comportamiento. Estos parámetros de diseño son comparados con las especificaciones mínimas que deben cumplir según los reglamentos y normas vigentes y con el conocimiento heurístico de diseño (experiencia de los expertos humanos), si las cumplen satisfactoriamente la solución revisada se convierte en el diseño final aceptado. Integración con un Sistema Experto. Prácticamente, las primeras aplicaciones de Inteligencia Artificial para automatizar el diseño fueron los sistemas expertos (Russell, 1995). Por ello es importante, tener en mente que el sistema basado en redes neuronales eventualmente tendrá que ligarse con sistemas expertos. Como los sistemas expertos están limitados en su capacidad de aprendizaje (Sierra, 1995), la integración con el de redes neuronales, estará dirigida a implementar esta capacidad en tales sistemas. El sistema de redes neuronales podrá utilizar gran parte de los módulos y base de conocimiento que constituyen un sistema experto para diseño, ya que estos últimos requieren de módulos de entrada de información referente a las bases de diseño y reglamentos y normas, de generación de salidas de información documental del diseño, de un módulo de análisis y del módulo central que incluye la base de conocimiento y el mecanismo de inferencia. CONCLUSIONES De lo planteado anteriormente, se concluye que la automatización del diseño en ingeniería está en una nueva época de desarrollo, en el que se disponen de nuevas metodologías y herramientas que permitirán una implementación más integral de todas las etapas del proceso de diseño, principalmente, en la toma de decisiones que requieren de amplio conocimiento formal y heurístico. En particular, el empleo de redes neuronales permitirá crear sistemas de diseño que aprendan de forma autónoma acumulando experiencias de diseños anteriores. El término autónomo no implica que serán sustituidos los expertos humanos. Por el contrario, estos sistemas serán sus asistentes para realizar el trabajo repetitivo y rutinario, mientras los expertos humanos se ocuparán de llevar a cabo diseños innovadores y creativos. REFERENCIAS Espino, F. (1999), “Aplicación de las Redes Neuronales Artificiales al Análisis Estructural, Método de Rigides y el Método Finito”, Tesis de maestría, IPN, págs 1-66. Freeman A. J. y Skapura M. D. (1991), “ Redes Neuronales Algoritmos, Aplicaciones y Técnicas de Programación ”, Addison-Wesley/Diaz de Santos, págs 1-92. Hilera R. J. y Martínez J. V. (1995), “Redes Neuronales Artificiales Fundamentos, Modelos y Aplicaciones”, Addison-Wesley Iberoamericana, págs 1-154. Knight, R. (1991), “Artificial Intelligence”, International, págs 487-525. Kosko B. (1991),“Neural Networks and Fuzzy Systems”, Prentice Hall, págs 38-109. Roger J., Sun C. y Mizutani E. (1997), “Neuro-Fuzzy and Soft Computing, A Computing Approach to Learning and Machine Intelligence”, Prentice Hall, págs 1-7, 197-251. Russell S. y Norvig P. (1995), “ Inteligencia Artificial, Un Enfoque Moderno”, Prentice Hall, págs 595630. Sierra J., Bonsón E., Nuñez C. y Orta M. (1995), “Sistemas Expertos en Contabilidad y Administración de Empresas”, Rama, págs 27-58. FIGURA 1. Modelo de una Neurona Artificial (Sierra, 1995). FIGURA 2. Diagrama Estándar de un Combinador Adaptativo Lineal (ALC) con Múltiples Entradas y un Término de Tendencia (Freeman, 1995). FIGURA 3. Estructura General de una Red Neuronal Tipo ADALINE (Freeman, 1995). FIGURA 4. Estructura General de una Red Neuronal Tipo MADALINE (Hilera, 1995). FIGURA 5. Estructura de la Red ADALINE Compuesta por un Combinador Adaptativo Lineal y una Función de Salida Bipolar (Hilera, 1995). FIGURA 6. Modelo Conceptual de un Sistema de Diseño Basado en Redes Neuronales.