41 research outputs found
Towards modeling complex robot training tasks through system identification
Previous research has shown that sensor-motor tasks in mobile robotics applications can be modelled automatically, using NARMAX system identi�cation, where the sensory perception of the robot is mapped to the desired motor commands using non-linear polynomial functions, resulting in a tight coupling between sensing and acting | the robot responds directly to the sensor stimuli without having internal states or memory. However, competences such as for instance sequences of actions, where actions depend on each other, require memory and thus a representation of state. In these cases a simple direct link between sensory perception and the motor commands may not be enough to accomplish the desired tasks. The contribution to knowledge of this paper is to show how fundamental, simple NARMAX
models of behaviour can be used in a bootstrapping process to generate complex behaviours that were so far beyond reach. We argue that as the complexity of the task increases, it is important to estimate the current state of the robot and integrate this information into the system identification process. To achieve this we propose a novel method which relates distinctive locations in
the environment to the state of the robot, using an unsupervised clustering algorithm. Once we estimate the current state of the robot accurately, we combine the state information with the perception of the robot through a bootstrapping method to generate more complex robot tasks: We obtain a polynomial model which models the complex task as a function of predefined low level sensor motor controllers and raw sensory data. The proposed method has been used to teach Scitos G5 mobile robots a number of complex tasks, such as advanced obstacle avoidance, or complex route learning
Robot training using system identification
This paper focuses on developing a formal, theory-based design methodology to generate transparent robot control programs using mathematical functions. The research finds its theoretical roots in robot training and system identification techniques such as Armax (Auto-Regressive Moving Average models with eXogenous inputs) and Narmax (Non-linear Armax). These techniques produce linear and non-linear polynomial functions that model the relationship between a robot’s sensor perception and motor response.
The main benefits of the proposed design methodology, compared to the traditional robot programming techniques are: (i) It is a fast and efficient way of generating robot control code, (ii) The generated robot control programs are transparent mathematical functions that can be used to form hypotheses and theoretical analyses of robot behaviour, and (iii) It requires very little explicit knowledge of robot programming where end-users/programmers who do not have any specialised robot programming skills can nevertheless generate task-achieving sensor-motor couplings.
The nature of this research is concerned with obtaining sensor-motor couplings, be it through human demonstration via the robot, direct human demonstration, or other means. The viability of our methodology has been demonstrated by teaching various mobile robots different sensor-motor tasks such as wall following, corridor passing, door traversal and route learning
Complex robot training tasks through bootstrapping system identification
Many sensor-motor competences in mobile robotics applications exhibit complex, non-linear characteristics.
Previous research has shown that polynomial NARMAX
models can learn such complex tasks. However as the complexity of the task under investigation increases, representing the whole relationship in one single model using only raw sensory inputs would lead to large models. Training such models is extremely difficult, and, furthermore, obtained models often exhibit poor performances.
This paper presents a bootsrapping method of generating
complex robot training tasks using simple NARMAX models.
We model the desired task by combining predefined low level
sensor motor controllers. The viability of the proposed method is demonstrated by teaching a Scitos G5 autonomous robot to achieve complex route learning tasks in the real world robotics experiments
An application of lyapunov stability analysis to improve the performance of NARMAX models
Previously we presented a novel approach to program a robot controller based on system identification and robot training techniques. The proposed method works in two stages: first, the programmer demonstrates the desired behaviour to the robot by driving it manually in the target environment. During this run, the sensory perception and the desired velocity commands of the robot are logged. Having thus obtained training data we model the relationship between sensory readings and the motor commands of the robot using ARMAX/NARMAX models and system identification techniques. These produce linear or non-linear polynomials which can be formally analysed, as well as used in place of “traditional robot” control code.
In this paper we focus our attention on how the mathematical analysis of NARMAX models can be used to understand the robot’s control actions, to formulate hypotheses and to improve the robot’s behaviour. One main objective behind this approach is to avoid trial-and-error refinement of robot code. Instead, we seek to obtain a reliable design process, where program design decisions are
based on the mathematical analysis of the model describing how the robot interacts with its environment to achieve the desired behaviour. We demonstrate this procedure through the analysis of a particular task in mobile robotics: door traversal
Learning by observation through system identification
In our previous works, we present a new method
to program mobile robots —“code identification by
demonstration”— based on algorithmically transferring
human behaviours to robot control code using
transparent mathematical functions. Our approach
has three stages: i) first extracting the trajectory of the
desired behaviour by observing the human, ii) making
the robot follow the human trajectory blindly to
log the robot’s own perception perceived along that
trajectory, and finally iii) linking the robot’s perception
to the desired behaviour to obtain a generalised,
sensor-based model.
So far we used an external, camera based motion
tracking system to log the trajectory of the human
demonstrator during his initial demonstration of the
desired motion. Because such tracking systems are
complicated to set up and expensive, we propose an alternative method to obtain trajectory information, using the robot’s own sensor perception.
In this method, we train a mathematical polynomial using the NARMAX system identification methodology which maps the position of the “red jacket” worn by the demonstrator in the image captured by the robot’s camera, to the relative position of the demonstrator in the real world according to the robot.
We demonstrate the viability of this approach by teaching a Scitos G5 mobile robot to achieve door traversal behaviour
Visual task identification and characterisation using polynomial models
Developing robust and reliable control code for autonomous mobile robots is difficult, because the interaction between a physical robot and the environment is highly complex, subject to noise and variation, and therefore partly unpredictable. This means that to date it is not possible to predict robot behaviour based on theoretical models. Instead, current methods to develop robot control
code still require a substantial trial-and-error component to the software design process. This paper proposes a method of dealing with these issues by a) establishing task-achieving sensor-motor couplings through robot training, and b) representing these couplings through transparent mathematical functions that can be used to form hypotheses
and theoretical analyses of robot behaviour. We demonstrate the viability of this approach by teaching a mobile robot to track a moving football and subsequently modelling
this task using the NARMAX system identification technique
Robot programming by demonstration through system identification
Increasingly, personalised robots — robots especially
designed and programmed for an individual’s needs
and preferences — are being used to support humans in
their daily lives, most notably in the area of service robotics. Arguably, the closer the robot is programmed to the individual’s needs, the more useful it is, and we believe that giving people the opportunity to program their own robots, rather than programming robots for them, will push robotics research one step further in the personalised robotics field. However, traditional robot programming techniques require specialised technical skills from different disciplines and it is not reasonable to expect end-users to have these skills. In this paper, we therefore present a new method of obtaining robot control code — programming by demonstration through system identification which algorithmically and automatically transfers human behaviours into robot control code, using transparent, analysable mathematical functions. Besides providing a simple means of generating perception-action mappings, they have the additional advantage that can also be used to form hypotheses and theoretical analysis of robot behaviour. We demonstrate the viability of this approach by teaching a Scitos G5 mobile robot to achieve wall following and corridor passing behaviours
Comparing robot controllers through system identification
In the mobile robotics field, it is very common to find different control programs designed to achieve a particular robot task. Although there are many ways to evaluate these controllers qualitatively, there is a lack of formal methodology to compare them from a mathematical point of view. In this paper we present a novel approach to compare robot control codes quantitatively based on system identification: Initially the transparent mathematical models of the controllers are obtained using the NARMAX system identification process. Then we use these models to analyse the general characteristics of the cotrollers from a mathematical point of view. In this way, we are able to compare different control programs objectively based on quantitative measures. We demonstrate our approach by comparing two different robot control programs, which were designed to drive the robot through door-like openings
Recommended from our members
Fish optimize sensing and respiration during undulatory swimming
Previous work in fishes considers undulation as a means of propulsion without addressing how it may affect other functions such as sensing and respiration. Here we show that undulation can optimize propulsion, flow sensing and respiration concurrently without any apparent tradeoffs when head movements are coupled correctly with the movements of the body. This finding challenges a long-held assumption that head movements are simply an unintended consequence of undulation, existing only because of the recoil of an oscillating tail. We use a combination of theoretical, biological and physical experiments to reveal the hydrodynamic mechanisms underlying this concerted optimization. Based on our results we develop a parsimonious control architecture that can be used by both undulatory animals and machines in dynamic environments