University-Edinburgh, Leipzig, Göttingen
Videos
Loading the player ...
- Offer Profile
Our robots have a fixed morphology (no structural self-organization
considered so far) with a "brain" consisting of two artificial neural
networks, one for the control and another one for cognition, i.e. the "understanding"
of the robots reactions to the controls. The essential point of our approach
is that learning in both networks is self-supervised, driven by an objective
function which is completely domain invariant, depending exclusively on the
robots sensor values.
Product Portfolio
The world of self-organized creatures
- Self-organization is one of the most striking
phenomena of our world. Even evolution may be seen as the way nature
realized self-organization under the constraints of mortal beings in an
eternal fight for resources. As a consequence evolution is an incremental
process building on solutions once they are established. Robots can be
thought free of these suffocating constraints. Instead they are potentially
immortal and free of energy restraints. Then, our question is how to
organize the self-organization in such a world opening for each robot the
way for an individual open ended development.
Our robots have a fixed morphology (no structural self-organization
considered so far) with a "brain" consisting of two artificial neural
networks, one for the control and another one for cognition, i.e. the
"understanding" of the robots reactions to the controls. The essential point
of our approach is that learning in both networks is self-supervised, driven
by an objective function which is completely domain invariant, depending
exclusively on the robots sensor values. The objective is mainly to make the
robot sensitive so that small variations in sensor values induce large
variations in motor values resulting in even larger sensorial responses and
so on. This would drive the robot towards a hyperactive, chaotic behavior.
The way into complete chaos is counteracted by both the physics of the robot
itself (inertia, cross relations, ...) and the decline of understanding in
the chaotic regime. As a solution of these conflicting effects the robot
develops a kind of self-exploration of its bodily affordances in a more or
less playful way with a tendency to development due to increasing cognitive
abilities.
We here present a number of examples demonstrating that this principle,
called also the principle of homeokinesis, can be translated into a
reliable, extremely robust algorithm which governs the parameter dynamics of
the neural networks for both the self-model and the controller. Videos are
from simulated environments as well as from real world experiments.
Information and complexity
Measures of complexity are of immediate interest for the field of autonomous
robots both as a means to classify the behavior and as an objective function
for the self-organization and autonomous development of robot behavior. In a
recent paper and in a presentation we consider predictive information in
sensor space as a measure for the behavioral complexity of a chain of
two-wheel robots which are passively coupled and controlled by a closed-loop
reactive controller for each of the individual robots. The predictive
information (approximated by the mutual information in the time step) of the
sensor values of an individual robot is found to have a clear maximum for a
controller which realizes the spontaneous cooperation of the robots so that
the chain as a whole can develop an explorative behavior in the given
environment. In the videos the robots are driven by a controller which sees
the current wheel velocities x(i) as sensor inputs and produces motor values
(nominal wheel velocities) y(i) as
y(i) = tanh( C[i,1] x(1) + C[i,2] x(2))
where i = 1,2 is the wheel index. There are no other sensors like reporting
collisions or measuring the coupling forces between robots. Each robot in
the chain has a controller with the same set of parameters. The behavior of
the robot chain depends in a very sensitive way on the parameters C[i,j] of
the individual controller. Coarsely speaking, the parameters define a kind
of geheralized feed back strength in the sensorimotor loop. If the feed back
is around a critical value, the controllers react very sensitively to the
perturbations, exerted by the other robots in the chain, on the wheel
velocities, so that synchronization of wheel velocities becomes possible. In
the videos below we present behaviors with different values of the
predictive information both at and away from the maximum.
In order to unserstand the relation between the behavior and the predictive
information (PI) we note, as a rule of thumb, that the PI is high if both
the behavior is rich (high acitivity, exploring the space of sensor values)
but not too chaotic or random so that the future sensor values (here in the
next time step) ar still predictable to a certain degree at least.
Conclusion & Outlook
Our approach to self-organised control can be considered as a step towards
autonomous early robot development, meaning the scenario where an unbiased
robot
might learn the essential sensorimotor coordination by self-exploration.
Deprivation of the internal model is prevented by the generation of
purposive actions. Our approach is completely domain invariant, so that the
emerging behaviours are dictated by the physical properties of the body and
the environment. Future research will be directed into shaping behaviours
and higher level control.
Software
On this page you will find the software that is developed by our group. The
comprehensive software package is called lpzrobots and contains many
subprojects. The most important ones are selforg and ode_robots. The first
one is a framework for implementing controllers that also contains the
implementation of the home kinetic controller in different versions.
ode_robots is a 3D physically realistic robot simulator. Both projects are
mostly developed by Georg Martius. You can get it either as a all-in-one
buddle or download sub projects independently (only some are available as
standalone packages at the moment). To easy the installation we also provide
precompiled libraries and devel files for the external libraries which are
required. All software is developed under Linux and will probably not
compile somewhere else. Most of our code is licensed under GPL. However some
parts, especially the controllers are copyrighted with Creative Commons
Attribution-NonCommercial-ShareAlike 2.5 License.
The lpzrobots project is programmed in C++ and includes:
selforg: our controller for self-organised behavior together with a small
framework for using them.
guilogger: application that coordinates multiple gnuplot windows and allows
to switches channels on or of. Data can be sent per pipe, or can be read
from a file.
ode_robots: a 3D robot simulator. It uses ODE (Open Dynamics Engine) and OSG
(OpenSceneGraph). The simulator is not available as a standalone package,
because it needs all the other modules anyway.
opende: copy of the ODE which works nicely with our simulator (0.9)