In this paper we address the question of "Why is it that a mobile robot, programmed in a certain way and placed in some environment to execute a program, behaves in the way it does?". We present three real world experiments in which we first obtain transparent controllers to express sensor-motor couplings of a mobile robot. We then use these models to analyze the robot behaviour formally; in particular to understand how the sensor readings are related to motor commands, to evaluate the derived controllers from a mathematical point of view and even to predict the behaviour of the robot in untested environments.
I. MOTIVATIONThe research in the field of robotics so far embraces more of an engineering approach where effort is focused on solving a specific task through experience without necessarily the requirement of understanding the solution. This is partly due to the complex interplay of robot, task and environment which compels roboticists to resort to empirical trial and error processes and partly due to economical constraints which inherently favors "Get it done!" to "How things work?" approach. It is undeniable that the engineering mindset has quickened due to robots in real world applications for instance in the field of industrial robotics [1]. The methodology has proven useful especially in static environments where iterative refinement of robot control code would eventually converge to the design requirements.However in dynamic scenarios ([2], [3]) where one or any combination of robot-task-environment trilogy are subject to change we need to look over the code generation process in order to accommodate appropriate and timely adaptation strategies. Moreover as robots get more involved in our daily lives formal evaluation of the controllers is key to ensure safety. As comprehensively discussed in [4] the prerequisite of such improvements lies in the ability to gain insight into the fundamental principles which govern robot-environment interaction, more specifically:1.) How sensor signals are related to motor commands? 2.) How control signals translate into the robot behaviour within the given environment? 3.) How robot actions modify the environment and influence the perception of the robot?This work addresses point 1. We first derive mathematical models to express sensor-motor couplings transparently and then analyze these models to form hypotheses and theoretical analyses of robot behaviour.
A. Background: Controller IdentificationPreviously we have shown in ([5], [6]) that navigation based sensor-motor tasks in constrained environments can be generated automatically and algorithmically within a framework which combines robot training and system identification -expressing input-output relationships via mathematical models from measured data. Accordingly, the programmer interacts with the robot to present the desired task, through a reinforcing feedback signal, human demonstration via the robot, direct human demonstration, or by other means. During this time the robot logs its own sensor readings and the ...