Neuroengineers have came up with the idea of artificial neural networks, massively parallel computing machines inspired by biological nervous systems. Such systems offer a new paradigm, where learning from examples or learning from interaction} replaces programming. They are basically composed of interconnected simple processing elements (i.e., artificial neurons or simply neurons).
A predominant approach in the field of artificial neural networks consists of using a database to train the system by applying a so-called learning algorithm to modify the interconnection dynamics between artificial neurons, using a predetermined network topology (i.e., the number of artificial neurons and the way they are interconnected). When the training process ends, the system remains fixed, and can be considered a learned system.
However, in applications where the entire training database is not available or may change in time, the learning process must persist, giving rise to learning systems. A problem of such systems is how to preserve what has been previously learned while continuing to incorporate new knowledge. Learning systems overcome such problems by a local adaptation process and by offering the possibility of dynamically modifying the network's topology.
Most artificial neural network applications today are executed as conventional software simulations on sequential machines with no dedicated hardware. Reconfigurable hardware can provide the best features of both dedicated hardware circuits and software implementations: high-density and high-performance designs, and rapid prototyping and flexibility.
The main goal in this thesis was therefore the development of structure-adaptable digital neural networks with continual learning capabilities, using field-programmable logic devices. Neural network models with modifiable structure have already been developed, but are usually computationally intensive. Therefore, we have developed the FAST neural architecture, an unsupervised learning with Flexible Adaptable-Size Topology that does not require intensive computation to learn and reconfigure its structure, and can thus exist as a stand-alone learning machine that can be used, for example, in real-time control applications, such as robot navigation.
The FAST learning system was conceived to handle the problem of dynamic categorization or online clustering. In this thesis, we are interested in two different categorization tasks: in the first task, related to image processing, the process of color categorization is used for image segmentation, while in the second task, related to neurocontrol, an autonomous ``intelligent'' system self-categorizes (or clusters) its sensor readings in order to integrate the relentless bombardment of signals coming from the environment (i.e., its sensations). In this second system, a different learning process had to be considered to allow the system to generate behavioral responses as a function of its sensations. Indeed, other types of learning, such as reinforcement learning, seem to be essential to learn through interactions with the environment.
We have used this latter paradigm to learn
game strategies and solve Markovian and non-Markovian maze tasks. Finally,
we combined the capabilities of the FAST neural architecture with reinforcement
learning techniques and developed a neurocontroller architecture, which
we tested with the inverted pendulum problem, and then used in a navigation
learning task with an autonomous mobile robot. Finally, we devised a digital
implementation of these neurocontrollers and developed an FPGA board to
control an off-the-shelf miniaturized mobile robot.