Exploration and Exploitation in Visuomotor Prediction of Autonomous Agents

09/19/2013 ∙ by Laurens Bliek, et al. ∙ 0

This paper discusses various techniques to let an agent learn how to predict the effects of its own actions on its sensor data autonomously, and their usefulness to apply them to visual sensors. An Extreme Learning Machine is used for visuomotor prediction, while various autonomous control techniques that can aid the prediction process by balancing exploration and exploitation are discussed and tested in a simple system: a camera moving over a 2D greyscale image.



There are no comments yet.


page 7

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

1 Introduction

If robots are ever supposed to work in real, complex and uncontrolled environments, they should be able to learn autonomously rather than be preprogrammed with all the information necessary for their specific task. One way to achieve this is by using prediction: making use of the available sensor values and motor commands to predict the sensor data of the future. If this can be learned succesfully, the robot can correctly predict the effect of its own motor commands on its sensor data. One consequence would be the ability to make a distinction between effects on a robot’s sensors that are caused by itself or the environment, and those that are caused by others. For example, if a robot mounted with a camera would move to the left, it is expected that the camera pixels will move to the right, and after performing this command it can choose to perform this command again or choose to do something else. In the field of computer vision, the focus lies mainly on extracting information from the sensor data alone (like in object recognition), while the focus in this paper is to let an agent extract sensorimotor information autonomously. This can be done by making use of the known motor commands and the ability to control them. In theory, this should be possible without providing any of this information to the agent.

Of course, one issue is how to control these motor commands. In control theory, the goal is to choose those motor commands that will move a system towards a desired state by using a reference signal. Prediction techniques can be used to aid in this process. But for the problem described above, there is no external reference signal, since only autonomous agents are considered. The control problem is reversed: prediction (as defined in the next section) is the goal, while control can be used as an aid in the prediction process. How to control the motor commands in such a way that prediction is optimised, is still an open question, especially for visual sensors.

The problem can be divided into two parts: the prediction part and the control part. The control part also contains two subproblems, which can be seen as an exploration vs. exploitation trade-off: exploitation in this case is equivalent to moving towards predictable parts of the sensorimotor space so that prediction is performed correctly, while exploration is equivalent to moving towards new parts of the sensorimotor space so that the predictor can learn to predict there as well.

There has been some progress in this area in the past years, like the playful machines of Ralf Der and Georg Martius [3], or the playground experiment of Kaplan and Oudeyer [8]. These techniques have been applied in both simulated and real robots, with impressive results. However, the sensors of these robots were usually low-dimensional, and the predictors were not always very complex. The contribution of this paper is to extend these techniques to agents with visual sensors and more complex predictors to cope with the dynamics of these systems. Visual sensors have the advantage that there is a direct effect of the motor commands on the sensor data, but a drawback is that visual data is in general high-dimensional.

In Section 2 the prediction problem and the used prediction technique will be presented, while Section 3 will focus on control techniques that are able to find a balance between exploration and exploitation in the context of prediction for autonomous robots. In Section 4, some of these techniques are applied in an experiment with a moving pixel camera. Section 5 shows the results of these experiment, and Section 6 concludes this paper.

2 Prediction

2.1 Problem

Suppose there is an agent with no knowledge about itself or its environment. It contains sensors and motors to interact with the environment, and some computational power to make calculations and store information. The goal of the agent is to ‘understand’ its environment and the influence of its own motor commands on the sensor data. There is no clear definition of this understanding, but since prediction techniques will be used, the goal can be defined as follows: correctly predict the next sensor values , given the current sensor values and motor commands , for as much of the reachable sensorimotor space as possible. Here, is the timestep in discretised time, is the -dimensional sensor space, is the -dimensional motor space, and , . It is also assumed that .

Using this notation, prediction can be seen as a function , and the mean-square prediction error should be minimised for multiple . This section will discuss one technique to minimise this error, while being able to handle visual data.

The agent should not be told from the outside what is ‘good’ or ‘bad’: the sensor and motor data are all the information it has access to. Although no external signal is available, the prediction problem is still a supervised learning problem, since the desired output is available after one timestep. Not all supervised learning techniques are fit for this problem, because of the following properties:

  • Nothing is known about the properties of the data (like the noise and structure, or the relation between motor and sensor values).

  • The mapping from input to output can be complex (nonlinear, non-deterministic, etc.).

  • Both input and output are high-dimensional.

  • Good generalisation is necessary for dealing with noise or with new situations.

  • Learning needs to be done online.

One technique that can deal with most of these properties, is a relatively new neural network technique.

2.2 Extreme Learning Machines

Extreme Learning Machines [4]

(ELMs) are an efficient method for training a single hidden layer feedforward neural network. Instead of tuning the output and hidden layer by backpropagating the error, the hidden layer is initialised randomly and remains fixed during the learning process, while the output weights are the only adaptable parameters. Since the output neurons are chosen to be linear, this leads to a linear least-squares problem, while the nonlinear hidden neurons still allow the network to approximate nonlinear functions. The output weights can be computed by using a pseudo-inverse of the hidden layer output.

The ELM algorithm can be summarised as follows:

  1. Given a training set , with and ,

    , initialise a single hidden layer feedforward neural network by choosing an activation function

    , the number of hidden neurons , and weight matrices and that consist of the connections between input and hidden layer and between hidden and output layer respectively. A threshold can also be chosen for the hidden neurons.

  2. Calculate the hidden layer matrix consisting of the values of hidden neurons for each training sample by using for the columns of .

  3. Keep the weights in fixed, but adapt the output weights by using the Moore-Penrose pseudo-inverse [9]: , with the matrix consisting of desired output values in each column.

The above algorithm gives the minimum norm least-squares solution to , where is the output of the neural network with fixed hidden layer parameters. Compared to traditional backpropagation algorithms, this algorithm has several advantages:

  • Very large learning speed.

  • Good generalisation performance because of the small output weights.

  • Convergence to global minimum instead of possible local minimum entrapment.

  • No need to adjust the learning rate.

Most of these advantages follow from the fact that there is a direct solution to the linear least-squares problem.

The current sensor values and motor commands of the agent can be used as an input of the ELM: . If the next sensor value is chosen as the desired output of the ELM, i.e. , the ELM can be used for visuomotor prediction. This gives:


3 Control

There are several possibilities for choosing a control that will aid the prediction process of the agent. The controller should make the agent explore its sensorimotor space while letting the predictor learn the relation between current sensor and motor values and the sensor values of the next timestep. As will be shown in this section, these are two contradictory goals, and several techniques for finding a balance between these goals will be discussed, as well as their applicability to agents with high-dimensional sensor data. The problem is closely related to the cognitive bootstrapping problem and the exploration vs. exploitation trade-off.

Note that no external reference signals are available. The goal of the controller is not to move the system towards a desired state, but to aid the prediction process. Therefore, only functions of internal signals can be used in the controller. To be more precise, the motor command at timestep is allowed to depend on the current sensor values and the past sensor and motor values only:


Since the prediction error also depends only on the current sensor values and the past sensor and motor values, it makes sense to use this error to choose the control. Several control techniques that can aid the prediction process are discussed below.

3.1 Random movement

To explore the sensorimotor space, the controller can choose random motor values:


where is any

-dimensional probability distribution (continuous or discrete) that does not depend on the sensor or motor values. This technique is also called motor babbling. Given enough time, we can assume that the whole sensorimotor space will be explored just by performing random actions, if the probability for this is nonzero.

However, the curse of dimensionality prevents the practical use of this for high-dimensional problems, because the number of training samples required to get a good prediction for large parts of the sensorimotor space grows exponentially with the dimension of the space 

[2]. There is also no guarantee that the predictor can succesfully predict the result of a random movement. Besides that, random movements might cause the system to move towards states where no new information is provided to the predictor, reducing the efficiency and increasing the required number of timesteps to predict large parts of the sensorimotor space even more. The controller should aid the predictor by choosing actions efficiently. Nevertheless, interesting results have been obtained by combining this approach with chaotic search [14, 13] or confidence [10].

3.2 Minimise prediction error

By letting the controller choose those actions that minimise the prediction error, the controller can cooperate with the predictor, since now there are two subsystems that are adapted according to the same objective:


Note that the prediction error is not yet known at timestep , but it can be approximated by looking at past prediction errors.

This control technique should greatly increase the efficiency of the prediction process, and the prediction error is expected to decrease in a very short amount of time. However, the sensorimotor space will in general not be fully explored, and the predictor might only specialise in a small part of it (homeostasis), for example by predicting what will happen when the agent does not move. The controller should aid the predictor by providing exploratory behaviour so that the predictor can minimise the prediction error for a large part of the sensorimotor space.

3.3 Maximise prediction error

To get exploratory behaviour, the controller could choose the actions in such a way that the prediction error is maximised:


Since the predictor still minimises the prediction error, this approach causes the controller and predictor to be adversaries rather than to cooperate with each other. The controller makes sure the sensorimotor space is explored, while the predictor uses the new information in its learning process. This approach might work in theory, but several researchers [11, 12, 5] pointed out that there are some drawbacks: since the controller is actually an adversary for the predictor, it might find ways to prevent the predictor from learning. For example, it might provide such instable motor behaviour that the sensor data becomes very noisy. Or it might move the system towards a part of the environment that is noisy. If it is possible to move the system towards a part of the sensorimotor space where no learning is possible, this approach can cause practical problems. The controller and predictor should not be adversaries, but complement each other, and there should be a balance between exploratory behaviour and predictability.

3.4 Maximise learning progress

Kaplan and Oudeyer [5]

used reinforcement learning to drive an agent to situations where the learning progress was maximised. The learning progress is defined as the difference between the prediction errors of a few timesteps ago and the next prediction errors, for example:

where is the learning progress and is the mean of the errors between timesteps and , for a certain sliding window .

If the agent is learning, the prediction error is decreasing so there is a high learning progress. If the agent has learned its current situation, there is no progress, and if the agent cannot learn a specific situation there is also no progress. This solves the problem of staying in simple predictable or complex unlearnable situations. However, the new drawback is that if both simple and complex situations are available, the agent will alternate between them to let the error rise and drop everytime. The same authors have proposed solutions to this problem [6].

3.5 Other approaches

The four approaches mentioned above are by far not the only ones. There are many more approaches to the problem of finding internal rewards that lead to a balance between explorative and predictive behaviour. An example is the playful machine of Ralf Der and Georg Martius [3], where the concept of homeokinesis is introduced. Information-theoretic approaches also became popular over the past years [1]. An overview of both information-theoretic and predictive approaches concerning internal rewards is given in [7].

4 Experiment

Figure 1: Experimental setup: a simulated pixel camera can move over a greyscale image and has to learn the effects of its own movements on its sensor data using a neural network. The green rectangle on the left represents the part of the image that can be seen by the camera, the image on the right represents the output produced by the neural network after learning.

To test whether the techniques discussed above can indeed be applied to agents with visual sensors, as a first experiment an active camera moving over a 2D picture has been simulated (see Figure 1). The picture contains greyscale pixels, the camera . The ELM technique from Section 2 has been used for the predictor, in a neural network with

hidden neurons. This number of neurons was found manually to give decent approximation capabilities while not requiring too much computation time, but it is not an optimal quantity. The predictor has to predict the next camera pixel values, given the current camera pixel values (with some added white noise) and the horizontal and vertical speed of the camera. For the control, the four techniques of Section

3 were compared, with a controller that could choose the horizontal and vertical speed of the camera. The four techniques that were compared are: Random movement (RM), Minimise prediction error (MinPE), Maximise prediction error (MaxPE), and Maximise learning progress (MaxLP). The motor space was discretised into possible motor actions: move one pixel up, down, left or right, or stand still.

For the MinPE control, a simple method was used to minimise the error: at timestep , look at the errors in the past up to a certain window , and find the timestep where the error was minimal. At timestep , the same motor command as the one used at timestep is chosen. Besides this, at every timestep there is a probability of that a random motor command will be chosen. A value of has been chosen in this experiment. The MaxPE and MaxLP experiments use a similar approach. In the RM experiment, and each motor command has the same probability of being chosen. All experiments were run for timesteps.

5 Results

The explorative behaviour and the ability to predict were tested for the four different control techniques over several simulations. Most simulations of the same control technique gave similar results, and the outcome of one simulation for each technique is shown in Figure 2. The prediction errors can be found in Figure 3. Since there is no clear metric for explorative behaviour, this has to be deduced from the camera movement. The camera movement for the four control techniques can be found in Figure 2. The effects of choosing each control technique will be discussed in this section.

In the RM approach, all motor commands were chosen with equal probability. Because of the symmetry in the available motor commands (move up, down, left, right, or stand still), this resulted in the camera moving around near its initial position. As such, only a small part of the sensor space was explored. The prediction error is higher than that of other approaches, probably due to the fast switching between commands.

In the MinPE approach, only those motor commands were chosen that gave the smallest prediction error. In general, this caused the camera to repeat the same command for several timesteps, until another command would give a lower error. Since standing still usually gave the lowest error, this action was chosen a lot. This behaviour could be called homeostatic, and no explorative behaviour emerged. The prediction error was lowest in this approach, because mainly those actions were chosen that are easy to predict.

The MaxPE approach did result in explorative behaviour. Large parts of the sensor space were explored. Standing still usually gave a low error, so this action was not chosen that often. The drawbacks mentioned about this approach in Section 3.3 did not appear in this experiment because there were no unlearnable parts of the sensorimotor space: the prediction error was still low in most cases. Interestingly, the prediction error was lower than that of the Random Movement approach. This is probably due to the repeating of motor commands: the motor commands were chosen equal to the command that gave the highest error in the past, up to a certain timewindow. A different implementation of this approach might lead to a higher prediction error, especially if the environment contains unlearnable or very noisy parts.

Figure 2: Movement of the center of the camera during timesteps of one simulation for four different control techniques: (a) Random Movement (RM), (b) Minimise Prediction Error (MinPE), (c) Maximise Prediction Error (MaxPE), (d) Maximise Learning Progress (MaxLP).
Figure 3: Prediction error during timesteps of one simulation of four different control techniques (RM, MinPE, MaxPE, MaxLP). Other simulations gave similar results. Note that the vertical axis has logarithmic scale. At the last timestep, RM has the highest error, followed by MaxPE, then MaxLP, and MinPE has the lowest error.

The MaxLP approach gave results similar to the MaxPE approach. The emerging behaviour was similar to the one in the MaxPE approach, i.e. exploratory. The prediction error was lower than that of the MaxPE approach, because the prediction error was no longer maximised, but it was not as low as in the MinPE approach. The result is a balance between exploration and exploitation. The experiment in this work was simple enough not to cause any of the drawbacks mentioned in Section 3.4 about this approach. For more complex experiments, this approach might get stuck in alternating between highly predictable and unpredictable parts of the sensorimotor space, but here the ELM predictor was able to keep the prediction error low for most timesteps.

Compared to other neural network applications, the speed of the simulations was very high. The simulations of this experiment with the ELM predictor only took about minutes for timesteps, while using the standard backpropagation algorithm would require at least several hours, and possibly would have a worse performance depending on the learning rate. For a smaller number of timesteps (around ), it was also possible to use the ELM technique in the same amount of time when the number of pixels was , which would never be possible with the backpropagation algorithm. Choosing a higher number of hidden neurons would probably result in a lower prediction error, but even with the small number of neurons used in this experiment, approximation was decent and the differences in the various control techniques were clear. Using more neurons, timesteps, and pixels usually resulted in memory problems.

6 Conclusion

In this paper, an Extreme Learning Machine was used for visuomotor prediction, and several control techniques that can aid in the prediction process were discussed. It was shown experimentally that at least some of these techniques can be applied to autonomous agents with visual sensors. Four control techniques were tested by applying them to a simulated pixel camera that could autonomously control its horizontal and vertical movement. The results showed that these techniques can indeed let a high-dimensional system correctly predict its future sensor values, given its current sensor values and motor commands, while exploring the sensorimotor space, though only one of the tested techniques (MaxLP) provided a balance between exploration and exploitation. No information about the agent itself or the environment was necessary for the prediction process. Further research will show whether this can be extended to more complex experiments and real-world applications.


This research was performed at Almende B.V. in Rotterdam, the Netherlands. The author would like to thank Anne van Rossum for his supervision during this research, and Giovanni Pazienza for providing valuable feedback on this paper.


  • [1] Nihat Ay, Nils Bertschinger, Ralf Der, Frank Güttler, and Eckehard Olbrich. Predictive information and explorative behavior of autonomous robots. The European Physical Journal B - Condensed Matter and Complex Systems, 63(3):329–339, 2008.
  • [2] Christopher M Bishop.

    Neural networks for pattern recognition

    Oxford university press, 1995.
  • [3] Ralf Der and Georg Martius. The Playful Machine: Theoretical Foundation and Practical Realization of Self-Organizing Robots, volume 15. Springer-Verlag Berlin Heidelberg, 2012.
  • [4] Guang-Bin Huang, Qin-Yu Zhu, and Chee-Kheong Siew. Extreme learning machine: theory and applications. Neurocomputing, 70(1):489–501, 2006.
  • [5] Frédéric Kaplan and Pierre-Yves Oudeyer. Maximizing learning progress: an internal reward system for development. In

    Embodied artificial intelligence

    , pages 259–270. Springer, 2004.
  • [6] Pierre-Yves Oudeyer. Intelligent adaptive curiosity: a source of self-development. 2004.
  • [7] Pierre-Yves Oudeyer and Frederic Kaplan. What is intrinsic motivation? a typology of computational approaches. Frontiers in Neurorobotics, 1, 2007.
  • [8] Pierre-Yves Oudeyer, Frédéric Kaplan, Verena V Hafner, and Andrew Whyte. The playground experiment: Task-independent development of a curious robot. In Proceedings of the AAAI Spring Symposium on Developmental Robotics, pages 42–47. Stanford, California, 2005.
  • [9] C Radhakrishna Rao and Sujit Kumar Mitra. Generalized inverse of a matrix and its applications. J. Wiley, New York, 1971.
  • [10] Ryo Saegusa, Giorgio Metta, Giulio Sandini, and Sophie Sakka. Active motor babbling for sensorimotor learning. In Robotics and Biomimetics, 2008. ROBIO 2008. IEEE International Conference on, pages 794–799. IEEE, 2009.
  • [11] Jürgen Schmidhuber. Adaptive confidence and adaptive curiosity. Citeseer, 1991.
  • [12] Jürgen Schmidhuber. Curious model-building control systems. In In Proc. International Joint Conference on Neural Networks, Singapore. Citeseer, 1991.
  • [13] Jun Tani. Proposal of chaotic steepest descent method for neural networks and analysis of their dynamics. Electronics and Communications in Japan (Part III: Fundamental Electronic Science), 75(4):62–70, 1992.
  • [14] Jun Tani. Model-based learning for mobile robot navigation from the dynamical systems perspective. Systems, Man, and Cybernetics, Part B: Cybernetics, IEEE Transactions on, 26(3):421–436, 1996.