ASL - Abstract Schema Language
Schema Theory (Arbib 1992) tries to define aspects from animal
behavior. Several simulation systems have been developed in different
application domains.
- In the robotics domain, RS, Robot Schema (Lyons and Arbib 1989),
based on port automata, has served as basis for the modeling of
highly structured robotics environments, where RS' main characteristics
are its static and synchronous nature, and its notion of schema
assemblages as a basis for composition.
- In the computer vision domain, VISIONS (Draper et al. 1989),
based on a distributed blackboard architecture, has served as
a basis for image understanding applications, where VISIONS main
characteristics are its dynamic and asynchronous nature, and also
permitting the inclusion of the assemblage abstraction as a basis
for composition.
These systems have certain limitations, such as RS restrictive
static nature, and VISIONS particular architecture limiting its
application to other domains. Moreover, neither RS nor VISIONS includes
capabilities for integrating neural network processing.
To overcome these modeling restrictions, ASL (Abstract Schema Language)
was designed based on these two systems, adding new aspects such
as a general architecture based on concurrent object-oriented programming,
and integrating with neural network.
- ASL represents a schema as a "template" from which
many instances can be created similar to object-oriented systems
(Wegner 1990). ASL incorporates concurrent object oriented programming
aspects, while implemented with such technology. ASL uses a hierarchical
model, enabling top-down and bottom-up designs, supported by a
concurrent language enabling a a distributed implementation, besides
integrating with neural networks. ASL´s other characteristics
are its dynamic and asynchronous nature, and the inclusion of
dynamic schema assemblages as the basis for composition. The behavioral
description of a schema describes how an instance of that schema
will behave in response to external communications. Each schema
instance has a set of multiple input and output ports through
which communication takes place. A schema assemblage, the basis
for aggregation, is a network of schema instances, and it may
be considered a schema for further processing. Since a schema
may be decomposed into any number of component schemas, there
may be virtually any level of abstraction.
Some of the most important aspects introduced in ASL:
- Delegation: Schema implementation may be chosen in a dynamic
way, via the ASL high-level language or by delegating processing
to neural networks
Wrapping: Previously developed code may be statically linked within
a schema.
- Heterogeneity: Incorporation of two different programming concepts,
neural processing and procedural processing, into a single model.
- Encapsulation: A schema instance includes a public interface
while all data and its particular implementation are internal,
thus providing flexibility and extensiblity since local changes
to its internal data structure and implementation do not affect
its interaction with other schema instances. Furthermore, the
communication abstraction of input and output ports permits greater
flexibility in communication and in the design of schema architectures.
- Reusability: Following object-oriented abstractions, such as
inheritance, the definition of schemas as shared templates from
which schema instantiation takes place, permits their reusability
in new schema definitions.
A current research goal is to integrate schemas and neural networks
in a seamless simulation environment as a necessary step if we are
to develop more complex models, inspired by biological systems,
serving as foundation for adaptive and learning systems. In the
ASL and NSL - Neural Simulation Language synthesis, schemas will
be specified directly, or in terms of underlying neural networks,
allowing the structured analysis of complex networks, and the control
of versioning as subsystems are revised in a modular way to better
adapt a complex model to a large body of data.
|