Modelado y Simulación Neuronal en el Web

 

Título

Modelado y Simulación Neuronal en el Web

Programa

CONACYT

Proyecto

Red de Investigación en Informática (Redii)

Tiempo

1998-2000

Instituciones Participantes

Instituto Tecnológico Autónomo de México (ITAM) *

Principales Investigadores

Dr. Alfredo Weitzenfeld (ITAM)

 *Red Nacional de Investigación en Informática

 

Objetivos del Proyecto

El proyecto Modelado y Simulación Neuronal en el Web tiene como objetivo diseñar y construir un repositorio (base de datos) con acceso directo desde el Web para el modelado y simulación de sistemas basados en redes neuronales. Se considerarán cuatro niveles de modelado con posible integración entre niveles: (1) agentes robóticos autónomos, (2) comportamiento de agentes, (3) redes neuronales y (4) neuronas detalladas. Este repositorio servirá como marco de trabajo para la simulación, publicación y mantenimiento electrónico de modelos computacionales de sistemas neuronales, además de ofrecer un ambiente de desarrollo y simulación en línea de nuevos modelos. Una motivación importante para este proyecto es permitir que se prueben ampliamente modelos existentes para así afianzar la confianza que se tiene en ellos y proveer un ambiente de análisis de las fortalezas y debilidades de estos modelos. A su vez se busca apoyar la aplicación de metodologías de desarrollo de modelos que promuevan el reuso de componentes de los modelos existentes. Se busca en un futuro no solo expandir la base de datos con nuevos modelos pero también crear herramientas que permitan a los diversos investigadores en el mundo criticar los modelos existentes, desarrollar nuevas versiones de estos y contribuir con modelos adicionales. Este proyecto define nuevos objetivos y extiende los anteriores del proyecto de colaboración actualmente en desarrollo entre el laboratorio CANNES del ITAM y el laboratorio BRAIN LAB dirigido por el Dr. Arbib en la Universidad del Sur de California. En particular sirve como apoyo electrónico al libro titulado The Neural Simulation Language NSL: System and Applications, Version 3.0 a publicarse por MIT Press a principios de 1999 teniendo como autores a Weitzenfeld, Arbib y Alexander. El proyecto propuesto se coordinará con un proyecto de mucho mayor alcance dirigido por el Dr. Arbib titulado, Brain Models on the Web (BMW) perteneciente al Human Brain Project, proyecto que tiene como objetivo principal el diseño y desarrollo de bases de datos federadas para la colaboración de científicos en el área de neurociencias abarcando actualmente un gran número de investigadores en el mundo.

Antecedentes del Proyecto

 El laboratorio CANNES (Comportamiento Adaptivo Neuronal, Neurociencias y Simulaciones) fué fundado por el Dr. Alfredo Weitzenfeld y el Dr. Francisco Cervantes en el ITAM en 1995. Los objetivos principales del laboratorio son: (1) el desarrollo de modelos computacionales que expliquen los mecanismos neuronales básicos responsables para el comportamiento de los animales a diferentes niveles de abstracción; (2) el diseño de lenguajes de y arquitecturas de software distribuidas para apoyar este modelado y su simulación; y (3) la aplicación de estos modelos dentro del marco de la teoría del cerebro y psicología cognitiva para el diseño de agentes robóticos autónomos y aplicaciones en inteligencia artificial distribuida. Dos proyectos de investigación NSF-CONACyT apoyan estos objetivos: Robots Ecológicos: Un Enfoque Teórico Esquemático [Weitzenfeld, Cervantes y Arkin (Georgia Tech)] y Metodología de Simulación de Nivel Múltiple: Un Enfoque Computacional y Experimental para Sistemas Neuronales [Weitzenfeld, Cervantes, Arbib (University of Southern California) y Rudomin (CINVESTAV, Mexico)]. (Para mayor información sobre estos proyectos favor de accesar el servidor Web de CANNES: http://cannes.rhon.itam.mx.)

En término de modelos computacionales, se está desarrollando una metodología de simulación a partir de sistemas neuronales de nivel múltiple para responder algunas de las preguntas que los modelos de un sólo nivel no son capaces de responder. En particular, cuatro diferentes niveles de análisis son estudiados: agentes robóticos autónomos, comportamiento de agentes, redes neuronales y neuronas detalladas:

En relación a los ambientes de simulación, y dando especial énfasis al modelado neuronal, el Lenguaje de Simulación Neuronal (NSL por sus siglas en inglés), es un sistema de simulación para redes neuronales generales de gran escala. NSL provee un ambiente de simulación que simplifica la tarea de modelar redes neuronales, apoyando, en particular, modelos neuronales que tienen como estructura de datos capas de neuronas sencillas con propiedades y patrones de conexión similares, donde las neuronas se modelan como integradores con fuga y las interconexiones están sujetas a diferentes reglas de aprendizaje. NSL sigue un diseño orientado a objetos, ofreciendo abstracciones de programación de alto nivel correspondientes a elementos neuronales. NSL ha sido utilizado en diversos laboratorios en el mundo para la enseñanza e investigación de redes neuronales. Actualmente se está desarrollando en NSL la liga entre múltiples niveles de modelado neuronal pudiendo expresar el hecho de que las propias redes neuronales pueden ser interconectadas de manera jerárquica, creando ensamblajes como medio de composición, tales como los que se describen en el Lenguaje de Esquemas Abstracto (ASL por sus siglas en inglés). ASL, lenguaje integrado al de NSL, incorpora además aspectos de la programación orientada a objetos concurrentes [Wegner 1990], donde un esquema es representado como un template del cual muchas instancias pueden ser creadas. ASL utiliza un modelo jerárquico, permitiendo diseños de arriba hacia abajo y de abajo hacia arriba, apoyado por un lenguaje concurrente que permite una implementación distribuida, además de integrarse con las redes neuronales descritas en NSL. Otras características de ASL son su naturaleza dinámica y asíncrona, y la inclusión de ensamblajes de esquemas dinámicos como base para la composición. De acuerdo a su comportamiento, se describe cómo las instancias de un esquema responderán a comunicaciones externas. Cada instancia de un esquema cuenta con un conjunto de múltiples puertos de entrada y salida a través de los cuales la comunicación toma lugar. Un ensamblaje de esquemas, la base para agregación, es una red de instancias de esquemas, y puede considerarse un esquema para su procesamiento. Cómo un esquema puede ser descompuesto en cualquier número de "sub-esquemas", pudieran haber virtualmente cualquier número de niveles de abstracción.

Actualmente se está completando la integración de NSL y ASL para apoyar la simulación en los niveles de agentes robóticos autónomos, comportamiento de agentes y redes neuronales. Este trabajo incorpora los siguientes componentes: lenguajes compilados para describir modelos, lenguajes interpretados para controlar interactivamente las simulaciones, lenguajes de programación visual, interfaces gráficas, técnicas de visualización, procesamiento concurrente (múltiples hilos) y distribuido, arquitecturas meta-nivel, herramientas de análisis numéricos y metodologías de simulación. Existen dos implementaciones de NSL, NSLJ en Java y NSLC en C++.

Descripción del Proyecto

El proyecto propone diseñar y construir un repositorio (base de datos) con acceso directo desde el Web para apoyar el modelado y simulación de sistemas basados en redes neuronales con diferentes niveles de abstracción. Se consideran las siguientes áreas.

Repositorio (base de datos)

El repositorio tiene como objetivo guardar cuatro tipos de estructuras principales en la base de datos:

El manejador de la base de datos deberá permitir acceso concurrente de usuarios desde el Web además independiente de esta a las diferentes estructuras. Entre las funciones que se desea apoyar se incluye:

Modelos

En la actualidad se cuenta con un conjunto de modelos escritos en NSL por diversos investigadores en el mundo. A estos modelos se les debe actualizar y optimizar de acuerdo a la última versión de NSL y se debe incluir documentos de apoyo para su comprensión, además de diseñar interfaces que simplifiquen su simulación. Se busca definir un conjunto de modelos representativos como apoyo a un curso de modelado y simulación neuronal. Como parte de este proyecto son necesarios los siguientes aspectos en relación a los modelos:

Simulación en el Web mediante NSL

El apoyo a la simulación y creación de modelos directamente del Web incluye los siguientes aspectos:

Ambiente Virtual para Control y Visualización de Múltiple Nivel

Aspectos de investigación tratados dentro del proyecto general:

Entregables

Cabe resaltar que aunque el proyecto propuesto es parte de un marco de investigación mucho mas amplio, nada de lo aquí descrito ya está hecho ni por el investigador responsable en el ITAM ni dentro del marco mas amplio de colaboración con la Universidad del Sur de California. Los entregables del proyecto son aspectos complementarios a los proyectos ya existentes y consisten de lo siguiente:

  1. Desarrollo y documentación del servidor de base de datos como repositorio a los modelos neuronales descritos en Weitzenfeld, Arbib y Alexander, The Neural Simulation Language NSL: System and Applications, Version 3.0, MIT Press, actualmente siendo terminado y a publicarse a principios de 1999.
  2. R revisión, actualización, y documentación de los modelos escritos en NSL a incluirse en el servidor (aproximadamente 10 modelos abarcando redes neuronales artificiales, redes neuronales biológicas y extensiones para robótica).
  3. Desarrollo y documentación del ambiente de control y visualización para el modelado a múltiples nivelves y simulación de NSL.
  4. Desarrollo del manual de usuario en línea para el sistema NSL y apoyo general para obtención y configuración del simulador.
  5. Publicación del trabajo hecho aquí en foros internacionales.
  6. Preparación de material de apoyo para un curso en neurocomputación en base a lo desarrollado en este proyecto. (Esto es parte de un vínculo con el CINVESTAV y posiblemente con la UNAM.)