CANNES

Investigación
Areas
Proyectos
Publicaciones
Simuladores
Tesis


Gente
Directores
Administrador
Miembros

Laboratorio
Actividades
Infraestructura
Oportunidades

Cursos
Licenciatura
Maestría
Diplomados

[English Version]

ASL - Lenguaje de Esquemas Abstracto

La Teoría de Esquemas (Arbib 1992) busca definir aspectos de los comportamientos animales. Varios sistemas de simulación han sido desarrollados en diferentes dominios de aplicación.

  • En el dominio robótico, RS, Esquemas Robóticos (Lyons and Arbib 1989), basados en autómata de puertos, ha servido como base para la simulación de sistemas robóticos altamente estructurados, donde las características principales de RS son su naturaleza estática y síncrona, y su noción de ensamblajes de esquemas como base para la composición.
    En el dominio de visión por computadora, VISIONS (Draper et al. 1989), basado en una arquitectura de pizarrón distribuida, ha servido como base para aplicaciones de comprensión de imágenes, donde las características principales de VISIONS son su naturaleza dinámica y asíncrona, y también su noción de ensamblajes como base para lo composición.
  • Estos sistemas tienen ciertas limitaciones, como que RS está demasiado restringida por su naturaleza estática, mientras que VISIONS se basa en una arquitectura particular restringiendo su utilización en otros dominios. Además, ni RS ni VISIONS incluyen características para integrar procesamiento de redes neuronales.

Para sobreponerse a estas restricciones, se diseño ASL (Abstract Schema Language) en base a estos dos sistemas, añadiendo nuevas características como una arquitectura general basada en la programación orientada a objetos concurrentes, e integración a redes neuronales

  • ASL representa un esquema como un "template" del cual muchas instancias pueden ser creadas de manera similar a la de los sistemas orientados a objetos (Wegner 1990). ASL incorpora aspectos de la programación orientada a objetos concurrentes, y se implementa utilizando dicha tecnología. 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, a demás de integrarse con redes neuronales. 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. Un esquema describe, de acuerdo a su comportamiento, 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. Como un esquema puede ser descompuesto en cualquier número de "sub-esquemas", pudieran haber virtualmente cualquier número de niveles de abstracción.

Algunos de los aspectos más importantes introducidos en ASL:

  • Delegación: La implementación de esquemas puede hacerse de manera dinámica, por medio del lenguaje de alto nivel de ASL, por ejemplo, a redes neuronales.
  • "Wrapping": Código previamente definido puede ligarse estáticamente dentro de un esquema.
  • Heterogeneidad: Incorporación de dos conceptos distintos de programación, procesamiento neuronal y procesamiento procedural, en un sólo modelo
    Encapsulación: Una instancia de un esquema incluye una interfaz pública mientras que todos los datos y su implementación están ocultas, ofreciendo flexibilidad y extensibilidad dado que cambios locales a su estructura e implementación no afectan su interacción con otros esquemas. Más aún, la abstracción de comunicación de los puertos de entrada y salida permite un entorno donde los esquemas pueden diseñarse independientemente sin conocer la arquitectura particular donde estos posteriormente ejecutarán.
  • Reusabilidad: Siguiendo las abstracciones orientadas a objetos, tales como herencia, la definición de esquemas como "templates" compartidos de donde ocurre la instanciación de esquemas, permite su reusabilidad en nuevas definiciones de esquemas.

Una meta actual de desarrollo es integrar ASL y NSL - Lenguaje de Simulación Neuronal en un sólo ambiente de simulación como un paso necesario para poder desarrollar modelos más complejos, basados en redes neuronales e inspirados por sistemas biológicos.

itam