^{1}

^{*}

^{1}

^{2}

^{2}

^{1}

^{2}

Edited by: Li Wen, Beihang University, China

Reviewed by: Yinyan Zhang, Jinan University, China; Yu Cao, Huazhong University of Science and Technology, China

This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.

In this article, we present a new scheme that approximates unknown sensorimotor models of robots by using feedback signals only. The formulation of the uncalibrated sensor-based regulation problem is first formulated, then, we develop a computational method that distributes the model estimation problem amongst multiple adaptive units that specialize in a local sensorimotor map. Different from traditional estimation algorithms, the proposed method requires little data to train and constrain it (the number of required data points can be analytically determined) and has rigorous stability properties (the conditions to satisfy Lyapunov stability are derived). Numerical simulations and experimental results are presented to validate the proposed method.

Robots are widely used in industry to perform a myriad of sensor-based applications ranging from visually servoed pick-and-place tasks to force-regulated workpiece assemblies (Nof,

In contrast to industrial robots, the human brain has a high degree of adaptability that allows it to continuously learn sensorimotor relations. The brain can seemingly coordinate the body (whose morphology persistently changes throughout life) under multiple circumstances: severe injuries, amputations, manipulating tools, using prosthetics, etc. It can also recalibrate corrupted or modified perceptual systems: a classical example is the manipulation experiment performed in Kohler (

From an automatic control point of view, a sensorimotor model is needed for coordinating input motions of a mechanism with output sensor signals (Huang and Lin,

Classical methods in robotics to compute this model (see Sigaud et al.,

For the latter (structure-free) category, we can further distinguish between two main types (Navarro-Alarcon et al.,

As a solution to these issues, in this paper we propose a new approach that approximates unknown sensorimotor models based on local data observations only. In contrast to previous state-of-the-art methods, our adaptive algorithm has the following original features:

It requires few data observations to train and constrain the algorithm (which allows to implement it in real-time).

The number of minimum data points to train it can be analytically obtained (which makes data collection more effective).

The stability of its update rule can be rigorously proved (which enables to deterministically predict its performance).

The proposed method is general enough to be used with different types of sensor signals and robot mechanisms.

The rest of the manuscript is organized as follows: section 2 presents preliminaries, section 3 describes the proposed method, section 4 reports the conducted numerical study, and section 5 gives final conclusions.

Along this note we use very standard notation. Column vectors are denoted with bold small letters _{t}, where the subscript ∗_{t} denotes the discrete time instant. Gradients of functions ^{⊺}.

Consider a fully-actuated robotic system whose instantaneous configuration vector (modeling e.g., end-effector positions in a manipulator, orientation in a robot head, etc.) is denoted by the vector ^{1}_{t}. Some examples of these types of configuration-dependent feedback signals are: geometric features in an image (Tirindelli et al.,

Let

_{t})

In our formulation of the problem, it is assumed that the robotic system is controlled via a standard position/velocity interface (as in e.g., Whitney, _{t} by the servo controller's time step d_{t}/d_{t}.

The expression that describes how the motor actions result in changes of feedback features is represented by the first-order difference model^{2}_{t} and denote it as _{t} = _{t}). The flow vector _{t}.

Representation of a configuration trajectory _{t}, its associated transformation matrices _{t} and motor actions _{t}, that produce the measurements _{t} and sensory changes _{t}.

The sensorimotor control problem consists in computing the necessary motor actions for the robot to achieve a desired sensor configuration. Without loss of generality, in this note, such configuration is characterized as the regulation of the feature vector _{t} toward a constant target ^{*}. The necessary motor action to reach the target can be computed by minimizing the following quadratic cost function:
_{t} that forward-projects into the sensory space (via the interaction matrix _{t}) as a vector pointing toward the target ^{*}. By iteratively commanding these motions, the distance

To obtain _{t}, let us first compute the extremum ∇_{t}) = _{t}, gives rise to the motor command that minimizes _{t} has a full column/row rank (depending on whichever is larger

Note that the computation of (6) requires exact knowledge of _{t}. To analytically calculate this matrix, we need to

Since the (generally non-linear) feature functional (1) is smooth, the Jacobian matrix _{t} = ∂_{t} is also expected to smoothly change along the robot's configuration space. This situation means that a _{t} around a configuration point _{i} is also valid around the surrounding neighborhood (Sang and Tao,

It has been proved in the sensor-based control community (Cheah et al., _{t} (combined with the rectifying action of feedback) are sufficient for guiding the robot with sensory signals. However, note that large deviations from such configuration point _{i} may result in model inaccuracies. Therefore, the local neighborhoods cannot be too large.

Consider a system with ^{l} ∈ ℝ^{n} represents a configuration _{t} of the robot where ^{l}. The purpose of the structure _{t} = {_{t}, _{t}, _{t}}, that are collected around the vicinity of ^{l} through babbling-like motions (Saegusa et al., _{i} and _{i+1} are typically not consecutive time instances. The total number τ of observations is assumed to satisfy τ >

Representation of the

We propose an adaptive method to iteratively compute the local transformation matrix from data observations. To this end, consider the following quadratic cost function for the

The scalar ^{lk} represents a Gaussian neighborhood function centered at the ^{lk}, the observations' contribution to the cost (9) proportionally decreases with the distance to ^{l}. The dimension of the neighborhood is defined such that ^{k}. In practice, it is common to approximate the Gaussian shape with a simple “square” region, which presents the highest approximation error around its corners (see e.g., _{τ+1} is within its boundary).

To compute an accurate sensorimotor model, the data points in (8) should be as distinctive as possible (i.e., the motor observations _{t} should not be collinear). This requirement can be fairly achieved by covering the uncertain configuration with curved/random motions.

The following gradient descent rule is used for approximating the transformation matrix _{t} at the _{k} and _{k}, respectively.

In this section, we analyse the stability properties of the proposed update rule by using discrete-time Lyapunov theory (Bof et al., _{j} around the neighborhood defined by ^{l}). Therefore, we can locally express around ^{l} the sensor changes as:
^{l} = [^{l11}, ^{l12}, …, ^{lmn}]^{⊺} ∈ ℝ^{mn} denotes the vector of ^{lij} as the ^{l}). To simplify notation, we shall denote _{k} = _{k}).

_{k},

^{mn×mn} defined as follows:
^{mτ×mn} constructed with τ matrices _{k} as follows:
^{⊺}

_{t}.

1: γ ← initial value < 1, μ ← small step |

2: |

3: γ←γ−μ |

4: |

Once the cost function (9) has been minimized, the computed transformation matrix

The associated local training data (8) must then be released from memory to allow for new relations to be learnt—if needed. However, for the case where changes in the sensorimotor conditions occur, the model may contain inaccuracies in some or all computing units, and thus, its transformation matrices cannot be used for controlling the robot's motion. To cope with this issue, we need to first quantitatively assess such errors. For that, the following weighted _{t}, and if found to be larger than an arbitrary threshold _{t} > |ε|, new motion and sensor data must be collected around the

The update rule (13) computes an adaptive transformation matrix ^{3}

The motor command with adaptive model is implemented as follows:
_{t}, hence, the existence of the pseudo-inverse in (26) is guaranteed; A regularization term (see e.g., Tikhonov et al.,

In this section, we validate the performance of the proposed method with numerical simulations and experiments. A vision-based manipulation task with a deformable cable is used as our case of study (Bretl and McCarthy,

Representation of the cable manipulation case of study, where a vision sensor continuously measures the cable's feedback shape _{t}, which must be actively deformed toward

For this study, we consider a planar robot arm that rigidly grasps one end of an elastic cable, whose other end is static; We assume that the total motion of this composed cable-robot system remains on the plane. A monocular vision sensor observes the manipulated cable and measures its 2D contour in real-time. The dynamic behavior of the elastic cable is simulated as in Wakamatsu and Hirai (

Let the long vector _{t} that characterizes the object's configuration. For that, we use the approach described in Digumarti et al. (_{t} with truncated Fourier series (in our case, we used four harmonics), and then constructs _{t} with the respective Fourier coefficients (Collewet and Chaumette, _{t}.

To construct the data structure (8), we collect τ = 40 data observations _{t} at random locations around the manipulation workspace. Next, we define local neighborhoods centered at the configuration points ^{1} = [0.3, 0.5], ^{2} = [0.5, 0.5], ^{3} = [0.5, 0.3], and ^{4} = [0.5, 0.5]. These neighborhoods are defined with a standard deviation of σ = 1.3. With the collected observations,

^{l} and the shape that is approximated (red dashed line) with the feedback feature vector _{t} (i.e the Fourier coefficients). It shows that four harmonics provide sufficient accuracy for representing the object's configuration. To evaluate the accuracy of the computed discrete configuration space and its associated matrices ^{l}. The following energy function is computed throughout this trajectory:

Various configurations of the visually measured cable profile (black solid line) and its approximation with Fourier series (red dashed line).

Profile of the function

In this section, we make use of the approximated sensorimotor model to guide the motion of a robotic system based on feedback features. To this end, various cable shapes are defined as target configurations ^{*} (to provide physically feasible targets, these shapes are collected from previous sensor observations). The target configurations are then given to the motion controller (26) to automatically perform the task. The controller implemented with saturation bounds of |sat(·)| ≤ 2 and a feedback gain λ = 0.1.

_{0} and the intermediate configurations are represented with solid black curves, whereas the final shape ^{*} is represented with red dashed curves. To assess the accuracy of the controller, the following cost function is computed throughout the shaping motions:

Initial and final configurations of four different shape control simulations

Minimization process of the energy function

Now, consider the setup depicted in _{t} must be constructed with the 3-DOF pose (position and orientation) vectors of both robot manipulators as ^{6}. Training of the sensorimotor model is done similarly as with the single-robot case described above; The same feedback gains and controller parameters are also used in this test.

Representation of a two-robot setup where both systems must jointly shape the cable into a desired form.

_{0} and intermediate configurations (black solid curves), as well as the respective final shape ^{*} (red dashed curve) of the cable. Note that as more input DOF can be controlled by the robotic system, the object can be actively deformed into more complex configurations (cf. the achieved S-shape curve with the profiles in _{t} toward the target ^{*}.

Initial and final configurations of the shape control simulation with two robots.

We now compare the performance of our method (using the same manipulation task shown in

Minimization process of the energy function

To validate the proposed theory, we developed an experimental platform composed of a three degrees-of-freedom serial robotic manipulator (DOBOT Magician), a Linux-based motion control system (Ubuntu 16.04), and a USB Webcam (Logitech C270); Image processing is performed by using the OpenCV libraries (Bradski,

The experimental robotic setup.

We conduct similar vision-guided experiments with the platform as the ones described in the previous section. For these tasks, the elastic tubing must be automatically positioned into a desired contour. The configuration dependant feedback for this task is computed with the observed contour of the object by using two harmonic terms (Navarro-Alarcon and Liu,

^{*}. For these two targets, _{t} used during the experiments are depicted in

Snapshots of the initial (left) and final (right) configurations for two shape control experiments

Asymptotic minimization of the error functional

Control input (with normalized units of pixel/s) of the experiment shown in

Control input (with normalized units of pixel/s) of the experiment shown in

In this paper, we describe a method to estimate sensorimotor relations of robotic systems. For that, we present a novel adaptive rule that computes local sensorimotor relations in real-time; The stability of this algorithm is rigorously analyzed and its convergence conditions are derived. A motion controller to coordinate sensor measurements and robot motions is proposed. Simulation and experimental results with a cable manipulation case of study are reported to validate the theory.

The main idea behind the proposed method is to divide the robot's configuration workspace into discrete nodes, and then, locally approximate at each node the mappings between robot motions and sensor changes. This approach resembles the estimation of piecewise linear systems, except that in our case, the computed model represents a differential Jacobian-like relation. The key to guarantee the stability of the algorithm lies in collecting sufficient linear independent motor actions (such condition can be achieved by performing random babbling motions).

The main limitation of the proposed algorithm is the local nature of its model, which can be improved by increasing the density of the distributed computing units. Another issue is related to the scalability of its discretized configuration space. Note that for 3D spaces, the method can fairly well approximate the sensorimotor model, yet for multiple DOF (e.g., more than 6) the data is difficult to manage and visualize.

As future work, we would like to implement our adaptive method with other sensing modalities and mechanical configurations, e.g., with an eye-in-hand visual servoing (where the camera orientation is arbitrary) and with variable morphology manipulators (where the link's length and joint's configuration are not known).

The original contributions presented in the study are included in the article/supplementary material, further inquiries can be directed to the corresponding author/s.

DN-A conceived the algorithm and drafted the manuscript. JQ and JZ performed the numerical simulation results. AC analyzed the theory and revised the paper. All authors contributed to the article and approved the submitted version.

The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.

^{1}This can be easily obtained with constant kinematic transformations.

^{2}This difference equation represents the discrete-time model of the robot's differential sensor kinematics.

^{3}For simplicity, we initialize _{0} = _{n×n} with a zero matrix.