Principles
Our work is grounded in the embodiment of processing power into physical and complex systems evolving in a flow of continuous input/output signals. Our embodied agents are homeostats with an artificial physiology built on unconventional SDP-computing that is massively parallel, distributed, decentralized, made of simple units with local communication. Inspired by the animal world and supported by the embodiment theory, we consider this kind of coupling embodied in a dynamical system to be the most promising in order to bring the emergence of structuring cognitive skills. Thus, we want to research modular SDP-bricks with unsupervised learning and self-organizing mechanisms, that can be aggregated and that, once put into physically situated devices, will develop interesting behaviors through functional specialization.
As shown on the figure, our SDP-computation approach is structured around three axes with strong dependencies. The SDP-implementation axis is dedicated to questions dealing with the compatibility of our SDP-bricks with constraints coming from the hardware implementation on decentralized, massively parallel, simple and local computation units. The SDP-machinery axis, on a more functional level, studies mechanisms to foster modularization and specialization through learning and self-organization. The SDP-behavior axis takes inspiration from the reinforcement learning framework in order to study various means to guide and adjust the functionalities of the SDP-bricks so as to improve the overall behavior of the system.
Long-term goal
Based on the principles mentioned above, our ambition is to design the software and hardware of elementary computing bricks, called SDP-bricks. These bricks are initially quite similar (homogeneous) and can be assembled so as to build various structures, in a Lego-like way. The resulting architecture evolves in a sensorimotor flow and the structure of the assembly defines the data flow received and processed by each brick. The local computing resources of the bricks continuously adapt themselves to the data flow, using local learning rules and this produces an emergent behavior at the macroscopic level. The resulting behavior depends on the structure of the assembly, on the local computation and adaptation of the bricks but also on the interactions of the system with its environment. As such, our objective is not to design precise cognitive functions but, more broadly, to study the various mechanisms that are needed to build such SDP-bricks and an exploration-based approach of emergent decentralized computation.
The figure above exemplifies this long term goal, where several types of SDP-bricks are available, some being linked to specific sensorimotor modalities. Each brick relies on a homogeneous decentralized computing SDP-substrate. Bricks can be assembled in various ways, giving birth to many different structures. Through interaction with sensorimotor data, local and short-sighted SDP-mechanisms adapt and specialize computation of the bricks. A global behavior, whose characteristics and relevance can only be assessed by experimentation, slowly emerges and gives some feedback to the individual SDP-bricks.
Methodology
The exploration of the characteristics and capabilities of our unconventional computing systems is largely based on conducting experiments as SDP-systems are not suitable to formal and analytical mathematical studies. It is only through large-scale simulations (as an example, see our implementations on clusters for the InterCell regional project http://intercell.supelec.fr) that their rich dynamics can emerge and that one can assess their computing capabilities. The emerging characteristics of the system are not explicitly specified in the dynamics of the system, nor in the local rules of the SDP-bricks, nor in their learning rules. This leads us to an uncommon and splinter methodology for our field as we want to explore a computer science where what can be specified has no direct and clear impact on what can be expected from the algorithm. To put it another way, we can only study our SDP-systems by executing them, as it is the case for all emergent systems. We consider that a top-down approach to the studying of the behavior of a living or artificial agents reached limits that cannot be overcome without turning to a much more radical bottom up approach.
Context
The research program we propose lies at the crossroad of complex systems, spatialized and localized computing, robotics, artificial intelligence and neurosciences. We tackle it from the computer science point of view, focusing on what kind of computation can emerge from the complex dynamics of the SDP-bricks where computation is massively parallel, distributed and decentralized. Our goal is not to propose a new calculus model, as Turing did, but rather to understand what kind of calculus one can expect from SDP-computation.
Our main inspiration source is the natural word, and in particular the nervous systems. We aspire at computing nicely and efficiently some interesting behaviors for autonomous agents situated in their environment. We do not seek to model or understand the central nervous system. We only take the brain, and decentralized living systems, as inspiration sources for computer science, in order to explore new computation principles.