Valentin Marcel

Sylvain Argentieri

Building a Sensorimotor Representation of a Naive Agent's Tactile Space

come

Building a Sensorimotor Representation of a Naive Agent's Tactile Space Valentin Marcel, Sylvain Argentieri and Bruno Gas

Abstract-A new approach of robotics perception, rooted in the sensorimotor paradigm, is proposed in this paper. Making systems able to autonomously adapt themselves to changes in their own body or in their environment is still a challenging task, questioning a lot of different scientific communities. But many works propose either sophisticated adaptive model-based or learning-based techniques as a solution. Recent contributions have shown that it is possible for an agent to discover the structure of its interaction with the environment or its own body via the so-called sensorimotor flow. The presented work is based in this idea, and a method for the building of an internal representation of its sensorimotor interaction is proposed. Importantly, it does not require any a priori knowledge nor model. A careful mathematical formalization is outlined, together with simulations demonstrating the effectiveness of the approach. Several cases are considered allowing a general discussion. Moreover, plausibility of the internal sensorimotor representation is highlighted by showing that it is possible to consider motion planning directly from it.

I. INTRODUCTION

M ORE and more researchers from different scientific fields (psychophysics, artificial intelligence, philosophy, . . . ) raise the question of how can a mobile agent perceive its environment without any model nor on its environment neither on itself. Of course, using a priori models of the environment can make robotic systems really fast, efficient and robust when executing complex predefined tasks. But in the same time such systems may have difficulties to behave autonomously, namely to adapt themselves to unknown environments that have not been modeled or learned before -except by considering that an universal model could be obtained from a learning procedure.

A different path is proposed here, paved by Poincaré more than 100 years ago [START_REF] Poincaré | Paris: La science et lhypotheèse[END_REF], [START_REF]Science and hypothesis[END_REF]. In this line of research, what is called perception is not an innate capacity. It is something that is learned and can not be separated from motor action. Indeed, this sensorimotor flow carries fundamental informations about the external space and its geometry [START_REF]L'espace Et la Géométrie[END_REF]. For instance, Poincaré states that the external space dimension can be extracted from it by an agent endowed with several motor degrees of freedom and sensors whose outputs depend on the 3D position of the system. More generally, the sensorimotor flow indeed reveals some correlations, i.e. sensorimotor contingencies [START_REF] O'regan | A sensorimotor account of vision and visual consciousness[END_REF], which are invariant and carry information about the external environment of the agent. Philipona et al. proposed a mathematical formulation of this idea, but not by using proprioceptive V. Marcel, S. Argentieri and B. Gas are with Sorbonne Universités, UPMC Univ. Paris 06, UMR 7222, ISIR, F-75005 Paris, France and CNRS, UMR 7222, ISIR, F-75005 Paris, France signals as suggested by Poincaré, but by exploiting sensor outputs signals instead [START_REF] Philipona | Is there something out there?: Inferring space from sensorimotor dependencies[END_REF]. The demonstration is based on the study of the sensory manifold and on its dimension. On this basis, the authors have been able to prove Poincaré's intuitions but only when using infinitesimal movement amplitudes. Such a limitation -originating from the use of standard linear mathematical tools-does not allow any experimental validation of the approach. Bootstrapping methods have been proposed to solve this problem [START_REF] Philipona | Perception of the structure of the physical world using unknown sensors and effectors[END_REF]. For instance, Laflaquière et al. succeeded in extending the approach to much more realistic movement amplitudes by coupling a motor bootstrap technique with a Curvilinear Component Analysis (CCA) [START_REF] Laflaquière | A non-linear approach to space dimension perception by a naive agent[END_REF]. But all these approaches were criticized by Frolov in [START_REF] Roschin | A neural network model for the acquisition of a spatial body scheme through sensorimotor interaction[END_REF], claiming that they require a stable external environment during the exploration. Indeed, these works postulate some a priori on the environment that cannot be obtained by the sensory system only. As a solution, Frolov introduced a body endowed with tactile sensors and a mobile arm. While proprioceptive signals still encode the arm movements, the arm end-effector has to touch the body itself so as to ensure a stable perception, thus obtained without any prior hypothesis on the environmental state. Following another way, Laflaquière et al. have shown that, beyond the dimension of space, it is also possible to obtain an external space representation by using appropriate partitions of the motor space [START_REF] Laflaquière | Learning agents spatial configuration from sensorimotor invariants[END_REF], resulting in a much more motor oriented than sensor oriented framework. In this contribution, each end-effector position of an arm is represented by the subset of the motor configurations letting invariant the sensory state, the so-called kernel manifolds. But the limitations pointed out by Frolov apply here again, as a stable environmental state is still required.

This paper is focused on the extension of Laflaquière & al. approach to the building of an internal representation of an agent body, in the vein of Frolov's previous work. As outlined by Gapenne [START_REF] Gapenne | The co-constitution of the self and the world: action and proprioceptive coupling[END_REF], body representation is of great importance in the understanding of the proprio-exteroception coupling, especially when facing the distal perception problem i.e. perceiving objects in space outside of the body. The goal is to prove, at first in a formal way, and then by mean of computer simulations, that the sensorimotor representation of space proposed by Laflaquière & al can be interestingly extended to build an internal representation of the interaction between an agent with its own body. Recently, we have proposed a sketch of this work [START_REF] Marcel | Building the representation of an agent body from its sensorimotor invariants[END_REF]. But the mathematical proof was still inadequate and the simulations were limited to a very specific case. In this paper, an extension of this work is proposed as more complete solution to the body perception problem by using sensorimotor concepts. The in-ternal kernel representation of the external space used in [START_REF] Laflaquière | Learning agents spatial configuration from sensorimotor invariants[END_REF], [START_REF] Marcel | Building the representation of an agent body from its sensorimotor invariants[END_REF] -which is limited in this case to the body shape-is precisely mathematically formalized with proofs relying on the isomorphism theorems. Moreover a proof of the continuity of the internal representation is proposed, coherently with the external space continuity. This result is highlighted by the existence of a homeomorphic relation between the internal representation and the body space. As a result, it is showed that it becomes possible to build new motor commands by making interpolations in the internal kernel space. In other words, the internal representation can be successfully used to plan new movements of the body arm, i.e. movements built from motor configurations that have never been used to obtain the internal representation before. Motion planing is a well known robotics field that has been addressed by many researchers [START_REF] Koditschek | Exact robot navigation by means of potential functions: some topological considerations[END_REF]- [START_REF] Jaulin | Path planning using intervals and graphs[END_REF]. But the focus here is more to show the effectiveness of the internal sensorimotor representation rather than to propose another solution to path planning problematics. In order to validate the approach in an efficient way, two kinds of experimentations are proposed, one using an agent endowed with a end-effector made of one finger, and the other with an end-effector made of two rigidly linked fingers. In both cases, two body shapes are considered, spherical and cubic, allowing a more general conclusion.

The paper is organized as follows. §II is devoted to the mathematical foundations of the proposed approach. Next, §III presents the simulated agents and the building of the internal representation in every considered cases. The results about internal representation are compared and discussed at the end of the section. The last section §IV is devoted to the motion planning problem using the sensorimotor representation. Obtained results with both spherical and cubic agents are presented and discussed. Finally, a conclusion ends the paper.

II. TOWARDS A MATHEMATICAL FORMALIZATION

As a first step, this section is devoted to the formalization of the mathematical foundations required for the building of an internal representation of an agent's sensorimotor invariants. The first subsection is devoted to the formalization of the influence of the sensor pose on the consecutive sensations. Quotient sets will be introduce to mathematically describe the notion of sensory invariance, by regrouping all the sensor poses leading to the same sensation. In a second subsection, the agent body is introduced as a way to actively modify the sensor pose via its motor commands. This will allow to regroup, in a motor quotient set, all the motor commands leading to the same sensation, thus defining sensorimotor invariants. Their mathematical properties will be demonstrated, and exploited in Section III. A small discussion ends this section.

A. Sensory inputs and quotient set

Lets first consider a rigid sensor alone, whose position and orientation in space is entirely captured by its pose X ∈ χ, with χ the pose space. χ is included inside the Special Euclidean group SE(3), which corresponds to the set of all rigid transformations, and is homeomorphic to SO(3) × R 3 , with SO(3) the 3D rotation group. This rigid sensor generates a sensation vector S = (s 1 , s 2 , . . . , s S ) T ∈ S, with S ⊂ R S the sensory space, and . T the transpose operator. Sensation S depends on the sensor pose X through the forward sensory function φ (.) : X → S so that S = φ (X), where represents the environmental state and highlights the dependency between the sensation and the environment. Importantly, by further restricting S to Σ = Im (φ ), φ can be rendered surjective from χ to Σ. In other words, Σ is the set of all "physically" reachable sensory states, and will thus also be called the sensory space. Note that φ is not necessarily hypothesized as being a continuous function.

On the basis on these definitions, one can now define an equivalence relation = φ between any pair of pose (X 1 , X 2 ) of χ, such that

X 1 = φ X 2 ⇔ ∃S ∈ Σ, φ (X 1 ) = φ (X 2 ) = S. (1)
It follows that = φ is by definition the equivalence kernel of φ . For any X ∈ χ such that φ (X) = S, let's now denote by K X the equivalence class of X, with

K X = {R ∈ χ | R = φ X, ∀R ∈ χ} . (2)
K X can then be modded out to form the quotient set χ/ = φ , with

χ/ = φ = {K X | X ∈ χ} . (3)
Then, one can denote π φ the quotient map from χ to its quotient set χ/ = φ , mapping each pose X to its equivalent class K X .

Proposition 1. χ/ = φ is isomorphic to Σ.

Proof. Proposition 1 is trivial. According to the first isomorphism theorem, since φ is surjective from χ to Σ, then χ/ = φ is isomorphic to Σ. Figure 1 highlights the relationships between χ, Σ and χ/ = φ . Regrouping all the sensor poses leading to the same sensation S in the same set K X defines a so-called pose kernel manifold (gray area in χ). Each kernel manifold can then be conceptually represented in χ/ = φ by a point thanks to the equivalence relation = φ (dotted line), each of them being also linked to a unique sensation S (green arrows). Indeed, since the forward sensory function φ is surjective, then Proposition 1 also tells that there exists a bijective function between χ/ = φ and Σ. But χ/ = φ can only be built by regrouping all the sensor poses leading to the same sensation, while the agent does not have any way to actually modify them. To be exact, no agent has ever been considered so far. So lets now introduce the agent and its action capabilities in the formalism.

B. Agent body and motor quotient set

Lets now consider a robotic system whose kinematics is inspired by traditional industrial robots. It is composed of moving rigid parts, each of them being connected to each other via a revolute joint parameterized by a scalar m i ∈ R, i = {1, . . . , M }, see Fig. 2. The motor configuration of the agent is entirely described by the vector M is the motor space, χ is the pose space, Σ is the sensory space, M/= Ψ and χ/= φ both represent the quotient sets the agent will actually build and represent, respectively. motor configuration space. One can assume without any loss of generality that the motor configuration space M is a compact M-dimensional manifold. The sensor previously mentioned in §II-A is now supposed rigidly linked to the end-effector of the system. Then, the sensor pose X will depend on the motor configuration M. Thanks to the forward kinematics model of the system f (.), X can be computed from the motor configuration M, i.e. X = f (M). Due to the possible agent's redundancy, f can be surjective, as different motor configurations can lead to the same sensor pose. The f function also has the property of being a continuous, smooth, mapping from the compact manifold M to the pose space χ which is supposed Hausdorff. By extension, the quotient set χ/ = φ will also be hypothesized as Hausdorff.

M = (m 1 , m 2 , . . . , m M ) T ∈ M, with M ∈ R M the so-called f ⇡ ✏ ⇡ ✏ / = ✏ M M/ = ⌃ S X M K M K M K X K X
As illustrated in Figure 1, a motor configuration M can now be associated to a sensation S thanks to the sensorimotor function Ψ = φ •f . On this basis, and with the same reasoning as in §II-A, an equivalence relation = Ψ can be defined between any pair of vectors (M 1 , M 2 ) of M, such that Lets now denote K M the equivalent class of M, i.e.

M 1 = Ψ M 2 ⇔ ∃S ∈ Σ, Ψ(M 1 ) = Ψ(M 2 ) = S.
K M = {Q ∈ M | Q = Ψ M, ∀Q ∈ M} , = f -1 (K X ), ∀X ∈ χ, φ (X) = S, (5)
which can then be modded out to form the quotient set

M/ =Ψ M/ =Ψ = {K M | M ∈ M} . ( 6
) Proposition 2. M/ =Ψ is homeomorphic to χ/ = φ .
Demonstration of Proposition 2 is written in Appendix A. Considering together Proposition 1 and 2, one can then conclude that if the agent is able to build the quotient set M/ =Ψ by regrouping all the motor commands leading to the same sensations S ∈ Σ, then this quotient can be used by the agent to represent the quotient set χ/ = φ . In other terms, the space of all reachable end-effector poses leading to a sensation S ∈ Σ is accessible to the agent by exploration of its sensorimotor invariants. The way the quotient set M/ =Ψ is actually discovered and used in practice by the agent will be illustrated in section III.

C. Interpretation and discussion

Proposition 2 hides, in some sense, the influence of the environment. Indeed, the existence of the quotient set M/ =Ψ will be relevant to the agent only for a fixed environmental state during its exploration. This is clearly a strong a priori hypothesis faced by a lot of previous works [START_REF] Philipona | Is there something out there?: Inferring space from sensorimotor dependencies[END_REF], [START_REF] Philipona | Perception of the structure of the physical world using unknown sensors and effectors[END_REF]. A first solution has been proposed in [START_REF] Roschin | A neural network model for the acquisition of a spatial body scheme through sensorimotor interaction[END_REF]: instead of independently analyzing proprio and exteroceptive data, the authors have proposed here to make them match together, with the idea that these two modalities must share common properties of space. This idea is illustrated with a simulated system made of a moving arm and a tactile body. With such a system, the approach allows the agent to build autonomously a 3D representation of space, which is obtained thanks to a projection of proprioception and tactile data towards a common representation, when the end effector touches the agent body. As a consequence, the environmental stationarity issue mentioned above does not hold anymore, the agent being in interaction with its own body only. Of course, the conclusions obtained with such an approach are thus limited to a representation of the body only, and do not capture any information about the space in which the agent is immersed. This paper is built on the same idea, and a tactile body will be introduced in the next section to allow the agent to built not only a representation of its own body, but also a topological image of the interaction with itself.

Another comment concerns the forward sensory function φ , which is only supposed surjective thanks to the restriction of S to Σ (see §II-A). Such a property clearly allows to capture every case an agent might met during an exploration. Furthermore, regrouping all the sensor poses leading to the same sensation allows to discard the possible system redundancy, and to build the quotient set χ/ = φ of the pose space χ through sensory invariants considerations. While possibly targeting the same kind of applications, "active approaches" to perception often explicitly model the structure of such a latent space. For instance, this allows to exploit independent variables -whose values can be modified by predefined control laws-in order to drive the system to an a priori targeted perception. The proposed sensorimotor approach allows instead the agent to autonomously build its so-called internal representation M/ =Ψ by motor exploration and sensory invariants considerations without any a priori. So lets now focus on the way Proposition 2 can be exploited by an artifical agent to actually build M/ =Ψ .

III. BUILDING OF THE SENSORIMOTOR INTERNAL REPRESENTATION OF SIMULATED AGENT

The previous section was devoted to the mathematical foundation of the proposed approach. It has been demonstrated that the quotient set M/ =Ψ can be used as an internal representation of the quotient set χ/ = φ . A simulated robotic system will be now introduced in the following to illustrate (i) how M/ =Ψ can actually be built from the sensorimotor flow of the simulated agent, and (ii) how M/ =Ψ can then be used as an equivalent representation of χ/ = φ by the agent. This representation will then be exploited for motion planning applications in Section IV. The description of the proposed simulated agent is proposed in a first subsection. The link between the mathematical considerations from §II and the proposed system will be carefully discussed in there. Then, the simulation setup and the algorithm for the building of M/ =Ψ by the agent is provided in a second subsection. Finally, simulation results are provided in the last subsection.

A. Simulation setup and algorithm 1) Description of the proposed agent setup: In the following, the agent is made of a fixed spherical body covered with S tactile receptive fields and a multi-DoF arm similar to the one illustrated in §II, see Fig. 2. Note that a cubic body will also be introduced in §III-C1 to evaluate the genericity of the approach. The arm basis and the spherical body are sticked together, so that only the arm is able to move thanks to its M = 6 actuators. In order to illustrate the genericity of the approach, 2 different arm end-effectors will be considered. In a first case, the end-effector is made of a single fingertip, i.e. a pointwise tool (see Figure 3-left). In a second case, a double figertip -made of two distinct pointwise fingertips rigidly linked together-is used (see Figure 3-right). Whatever the endeffector, the sensation vector S will originate from the body endowed with a tactile modality, and not from a sensor placed at the end-effector configuration, as hypothesized in §II-B. But the tactile sensation will be supposed different from 0 only when the end-effector is in contact with the body (see Eq.( 7) and ( 8)): in such a case, the origin of the sensation is not relevant anymore, and the formalization proposed in Section II still applies. Of course, the pose space χ will be now restricted to the end-effector pose X, under the constrained of the existence of a contact with the agent body. In other terms, depending on the nature of the contact with the body, χ/ = φ will be different:

• with only one pointwise contact with the body (the one fingertip arm): in this case, the fingertip orientation will not have any influence on the corresponding tactile sensation generated by the body. Consequently, the quotient set χ/ = φ , regrouping all the fingertip poses leading to the same sensation, will be entirely described by 2 latent variables, and can then be directly exploited to represent the 2-sphere body manifold inside a 3D euclidean space;

• with two rigidly linked simultaneous pointwise contacts (the two fingertips case): the fingertip pose will be now entirely described by three parameters: a position on the 2-sphere body and one orientation along the axis joining the two contact points. Lets now precisely explain how the sensation S is actually obtained from the tactile agent body.

2) Sensation generation: Whatever the considered agent (with one or two fingertips), it is hypothesized that a contact with the full end-effector is mandatory to generate a non-null sensation vector S. For the single fingertip end-effector, lets denote X ∈ R 3 the 3D-coordinates of a point in the euclidean space with respect to the arm basis frame. The i th sensory vector component of S is then computed along

s i = φ i (X) =    0, if X is not on the body, exp -K X -C i 2 d body otherwise, (7)
with i = 1, . . . , S. C i denotes the center of the i th sensitive field, K is a normalization constant, and d body represents the spherical body diameter, see Figure 4. For the double fingertip contact case, lets denote X 1 the first fingertip 3D-coordinates and X 2 the second fingertip 3D-coordinates. Then, the i th sensory vector component of S is computed along

s i = φ i (X) =          0, if X 1 or X 2 is not on the body, max k=1,2 exp -K X k -C i 2 d body , k = 1, 2 otherwise. (8)
According to Eq. ( 8), only the smaller distance from each fingertip is considered. This constitute a basic formalization of the masking effect originating from the bigger skin deformation. Note that Eq. ( 7) and ( 8) both define a surjective function φ from χ to Σ whose dependency to the environment has been discarded. Note also that, while being used to obtain the sensation vector S during the simulation, both equations are not known by the agent, which will only has access to the resulting sensation S.

B. Algorithm

This subsection is devoted to the description of the way the agent acquires, stores and processes its sensorimotor flow so as to build the quotient set M/ =Ψ .

1) Rough random motor sampling: As already stated, it is supposed that he agent does not have access to its forward kinematics model f (.). Consequently, the only naive operation it can conduct consists in randomly sampling its motor configuration space M by generating P random motor commands M[p] = (m 1 [p], . . . , m M [p]) T , each of them being next associated with a sensation S[p] = (s 1 [p], . . . , s S [p]) T , p = 1, . . . , P . In all the following, a random walk model is applied to guide the agent motor space exploration, i.e.

m i [p] = mod (m i [p -1] + µ[p] + π, 2π)-π, i = 1, . . . , M , (9)
with µ[p] a realization of the random variable µ ∼ N (0, σ). A total of L trajectories, sampled with V values, are computed for each motor component, so that P = L × V . Note that Eq. ( 9) is reset every V iterations to start a new random motor exploration, see the details in Algorithm 1.

2) Sensory vector generation: Each of the P motor configurations M[p] is associated to a sensor pose X[p] = f (M[p]) (recall that the agent does not have any access to it), together with a perception S[p] along S[p] = Ψ(M[p]). Of course, only a subset of the P sensation vectors are different from 0. This means that only a subset of the P motor commands has led to an arm end-effector in contact with the agent body. Additionally, multiple motor configurations can be related to the same non-null sensory vector because of the agent redundancy. But the random motor configuration sampling prevents the agent to exactly obtain these sets of motor commands without any a priori. Consequently, very close sensations will be regrouped together up to a certain threshold, so as to estimate the motor quotient set. Let's now select N so-called target sensations S (i) , i = 1, . . . , N among all the R non-zero vectors S * [r] ∈ {S [START_REF] Poincaré | Paris: La science et lhypotheèse[END_REF], . . . , S[P ]} ⊂ Σ, r = 1, . . . , R. The N most distant vectors from each others are selected here in order to efficiently represent the sensory space Σ * , see Algorithm 1. One can then form the N sets S (i) regrouping all the S (i) neighbors [START_REF] Gapenne | The co-constitution of the self and the world: action and proprioceptive coupling[END_REF] with d(.) the Euclidean distance between two vectors and δ a threshold. Importantly, δ must be selected so as to avoid any intersection between all S (i) , i.e.

S (i) = S * [r], r = 1, . . . , R | d(S * [r], S (i) ) < δ/2 ,
δ ≤ min i,j∈[1,N ] 2 d(S (i) , S (j) ). (11)
3) Kernel space sampling: On this basis, one can then also form the N kernel sets

K (i)
M regrouping all the motor commands leading to a sensory vector in S (i) , with

K (i) M = {M * [r], r = 1, . . . , R | S * [r] = Ψ(M * [r]) ∈ S i } . ( 12
) In other terms, K (i)
M gathers all the motor commands M * [r] such that the consequent sensor pose X[r] leads to a non-null perception vector S * [r] in the set S (i) .

K (i) M allows then to define an approximation M/ =Ψ of the quotient set M/ =Ψ along M/ =Ψ = K (i) M , i = 1, . . . , N . (13)
4) Metric computations and low-dimensional projection: According to Proposition 2, M/ =Ψ contains topological information about χ/ = φ . It is expected that this property still applies for its discrete approximation M/ =Ψ . Defining a metric on M/ =Ψ will indeed allow to embed it in an Euclidean space where topological considerations can be observed. This can be achieved by considering a low dimensional projection of M/ =Ψ , whose properties will depend on the nature of the contact with the agent body (see §III-A1). Importantly, note that from the agent point-of-view, such a low dimensional projection might not be mandatory. This projection is then only performed here to visualize and interpret the discrete quotient set M/ =Ψ built by the agent.

CCA (Curvilinear Component Analysis [START_REF] Demartines | Curvilinear component analysis: a selforganizing neural network for nonlinear mapping of data sets[END_REF]) will be used to perform such a projection. CCA is a non-linear projection technique which will be used to represent in a low dimensional space every points in M/ =Ψ by preserving the topology of the underlying manifold. This can be achieved by defining a metric in M/ =Ψ to actually obtain its low-dimensional representation. Let's first envisage M/ =Ψ as being a graph G with N nodes defined as the kernel sets K in G, one can then define the (pseudo)-distance ρ(K

(i) M , K (j) M ) along ρ(K (i) M , K (j) M ) = min M * [r]∈K (i) M M * [s]∈K (j) M d(M * [r], M * [s]). (14)
This definition does not allow ρ to be a proper distance as the triangle inequality does not hold. Nevertheless, ρ can be slightly modified so as to define a proper distance between kernel sets. For instance, the Dijkstra's algorithm [START_REF] Dijkstra | A note on two problems in connexion with graphs[END_REF] can be exploited to find the shortest path between graph nodes. One then have a new metric ρ defined as

ρ(K (i) M , K (j)
M ) = dijkstra G, ρ(K (i) M , K (j) M ) . (15)
In all the following, ρ will be used as the input space metric by CCA to obtain a low-dimensional representation of χ/ = φ . Importantly, the a priori knowledge of the output space dimension is not mandatory, as CCA itself can be used to estimate the intrinsic dimension of the input space to be projected. Such an application has already been proposed in [START_REF] Laflaquière | A non-linear approach to space dimension perception by a naive agent[END_REF] by the authors, and will not be addressed in this paper. Finally, Algorithm 1 summarizes all the previous steps and presents their actual implementation.

C. Simulations and results

Lets now apply Algorithm 1 to the two agents quickly depicted in §III-A1. As already outlined, it will lead to two very different representations of the quotient set χ/ = φ through the building of M/ .

1) First case: single fingertip agent: In such a case, the tactile sensation S will only depends on the 3D position of the agent's fingertip on the body, since its orientation will not have any influence on S. Then, χ/ = φ can then be seen as the image of the body 3D shape. This will be illustrated in the two next paragraphs, for two different body shapes (spherical and cubic).

a) Spherical body: In this first scenario, the agent body is made of S = 20 tactile receptive fields, thus forming an icosahedral body with a diameter d body = 100mm. The normalization constant in Eq. ( 7) has been set to K = 20. The body center is placed at position C = [30, 50, 100]mm (to avoid any effect of symmetrization) in the frame B 0 = (O 0 , x 0 , y 0 , z 0 ) centered at the root basis of the robotic arm. The rough motor sampling step is performed with L = 100 trajectories of length V = 10 6 samples with a standard deviation parameter σ = 0.1, while N = 1000 target sensations S (i) distant from a minimal euclidean distance of δ = 40.10 -3 are selected. With all these parameters, Algorithm 1 is run with a final CCA projection performed in a 3D space. Such a low dimensional representation is indeed expected to be sufficient for representing the body topology. Nevertheless, any other larger dimension could be used without any other consequences on the conclusion than the difficulty to interpret the resulting projection. Then, The CCA output should provide a continuously deformed image of the original body shape, thanks to the homeomorphism property between M/ =Ψ and χ/ = φ (see Proposition 2).

But since M/ =Ψ is only approximated, it will be supposed that this property still holds with M/ =Ψ . Additionally, an isometric transformation is applied to the 3D CCA output so as to represent this projection in the euclidean frame B 0 = (O 0 , x 0 , y 0 , z 0 ) of the agent, with a correct orientation and size. This will allow a directly comparison between the N target fingertip positions X (i) such that φ(X (i) ) = S (i) , with Algorithm 1 Computation of the low-dimensional representation of χ L: random walk trajectories number V: trajectories length N: number of target sensations on the body S (i) : i th target sensation δ: minimum distance separating target sensations K % Initialization with a random motor configuration 5:

M[0] = (m 1 [0], • • • , m M [0]) = 2π (rand(M, 1) -0.5) ; 6: for v = 1 : V do 7:
% Random walk, along Eq. (9) 8:

M[v] = mod (M[v -1] + σ randn(M, 1) + π, 2π) -π; 9:
% Collect the corresponding sensation 10: for k = 1 : N do 38:

S[v] = Ψ(M[v]); 11: if S[v] = 0 then 12: M * [r] = M[v]; 13: S * [r] = S[
D(i, k) = ρ(K (i) M , K (k)
M ); % ρ computed along Equation ( 14 the N isometrically-transformed CCA outputs. In practice, the isometric transformation relies on the Horn's quaternionbased method [START_REF] Horn | Closed-form solution of absolute orientation using unit quaternions[END_REF], which aims at minimizing the least square error between the target fingertip positions and the transformed CCA outputs.

Figure 5 (top) exhibits the simulation results. Subfigure 5(a) exhibits the ground-true icosahedral agent body shape together with an artificial shading that has been added to enhance its spatial shape. In this subfigure, the blue points represent the N target end-effector positions X (i) on the body. Subfigure 5(b) represents the N transformed CCA outputs with red points. The added shading highlights a continuous deformation of the body original shape, but the extracted representation remains topologically similar to a sphere. Such a deformation might originate from (i) some projection errors by CCA, but also mainly from (ii) the distances between two motor configurations which is not maintained between the two subsequent end-effector poses. Indeed, since the forward cinematic model f (.) is non-linear, M/ =Ψ (and thus its approximation M/ =Ψ ) is only homeomorphic to χ/ = φ , and not isometric to it.

The blue and red points can be linked by pair as they both represent the same target fingertip position: one by its real position on the body (blue), and the other one by its (projected and isometrically transformed) internal representation (red). These links are represented by arrow in Subfigure 5(c) . Clearly, the two sets of points are consistent to each other, which means that the agent has been able to capture the body topology by using only sensorimotor information.

b) Cubic body: In order to illustrate the genericity of the proposed approach, a second form of the agent body is used in this paragraph. This time, S = 12 tactile receptive fields (two by face) are used together to form a body with a cube shape of length d body = 100mm. The normalization constant in Eq. ( 8) is now set to K = 10. The body center position, together with the number of trajectories L, the samples number V and standard deviation σ remain unchanged, while δ has been now set to δ = 6.10 -3 . All the remaining steps in Algorithms 1 are the same, together with the CCA isometric transformation mentioned in the first simulation. The results are shown in the in Figure 5 (bottom), which again exhibits the target points on the body (blue) and those obtained by the construction of the internal representation (red). As already shown with the spherical body, it can be seen that the cubic shape has been deformed, for the same reason as those highlighted before, but is still recognizable. In other terms, the body topology has been correctly discovered by the agent.

2) Second case: double fingertips agent: Lets now consider the case of the agent endowed with an end-effector made of two rigidly linked fingers. As outlined in §III-A1, the quotient set χ/ = φ will be quite different from the one obtained in the previous subsection. Indeed, according to Eq. ( 8), a sensation S will be generated by the body only if the two fingertips simultaneously touch the body. Thus, all the fingertips poses generating the same sensation S are now entirely described by three independent parameters. This intuition will be shown as correct in the following.

In this subsection, the agent's body is again made of the same spherical body than the one described in §III-C1, with a distance between the two fingertips set to d fingers = d body = 100mm. This time, Algorithm 1 is run with a final CCA projection performed in a 6D space. Consequently, the interpretation of such a projection will be far more complex than when working with a 3D projection like in the first case. The resulting projection and its corresponding interpretation is shown in Figure 6. As already outlined, the only poses of the end-effector in SE(3) which will generate a sensation S are those where the two fingertips are in contact with the body spherical surface. Such a constraint gives rise to a first interpretation of the quotient set χ/ =φ as being the space of latent variables that describes all the possible configurations of two points distant by d fingers on a sphere. This space then forms a manifold subset of SE(3), which can be parameterized with a minimal number of 3 parameters, so that χ/ = φ can be seen as a 3-manifold (manifold of intrinsic dimension equal to 3). Among others, one possible interpretation of these 3 parameters is proposed in Subfigure 6(a): two angles θ and ψ can be used to define the position of the middle-point between the two fingers, and one additional angle α captures the radial axis orientation of the two fingertips system. With such a parameterization, every pose of the two contact points distant by d fingers on the spherical body and leading to the same sensation S can then be obtained.

Thanks to Algorithm 1, an internal (homeomorphic) representation M/ =Ψ of χ/ = φ is obtained. Its corresponding 6D projection is shown in the two Subfigures 6(c) and (d), where the first 3 dimensions, followed by the 3 next ones are represented in two 3D points clouds plots. It is also shown in the same subfigures three different (arbitrary chosen) configurations in red, green and blue. Each color corresponds to a fixed θ and ψ values, and to an α angle ranging from 0 to π. The corresponding configurations on the real agent body are also shown in Subfigure 6(b). Importantly, they are not exactly describing a circle on the spherical body because of the discrete approximation captured by Eq. ( 12). Subfigure 6(c) exhibits the first 3 dimensions of the projected internal representation. It is clear that these 3 first dimensions capture the middle point (joining the two fingertips) position on a sphere with a slightly smaller diameter than the spherical body. Indeed, close middle-points on the body corresponds to close points in this first 3D representation. But one additional parameter needs to be considered to fully capture the internal representation. Indeed, the 3 next dimensions of the 6D pro-jection of the internal representation, shown in Subfigure 6(d), exhibits the influence of the third parameter α, which draws circles on a 2-sphere. Here, each circle corresponds to a specific middle-point position in the first 3 dimensions, and uniting all of them then generates a sphere in the 3 last dimensions of the representation.

Again, all the efforts put to analyze and interpret the lowdimensional projection are only performed here to demonstrate that the quotient set M/ =Ψ , and its approximation M/ =Ψ , actually captures the topology of χ/ = φ . The agent does not need to perform such a projection to actually use the motor quotient set. This will be illustrated in §IV with a motion planning application.

IV. MOTION PLANNING IN THE SENSORIMOTOR INTERNAL REPRESENTATION SPACE

The previous section was devoted to the building of a sensorimotor internal representation of the body agent. But why would the agent build such a map? From the authors point of view, this map is the first step towards the ability to plan a movement of the agent arm on the body. This section is mainly concerned with this kind of application, with the idea that one can infer the successive, never explored, motor commands to be applied so as to reach a given target sensation. Importantly, this target sensation will be provided a priori, i.e. without any insight on an external goal, purpose or motivation of the agent. Such a problematic is out of the scope of this paper, while being a field of research on its own [START_REF] Oudeyer | Intrinsic motivation systems for autonomous mental development[END_REF], [START_REF] Maye | Extending sensorimotor contingency theory: prediction, planning, and action generation[END_REF]. Benefiting from the mathematical proofs in §II, the continuity property of the homeomorphism between the motor and pose quotient sets will be exploited to interpolate successive motor commands towards the sensor pose corresponding to the target sensation. The proposed algorithm allowing such an interpolation will be described in a first subsection. On this basis, the two representations shown in §III-C2 will be used in the second subsection to generate successive, continuous motor orders from one initial sensor pose to the targeted one.

A. Motor interpolation algorithm 1) First step: towards a path in the motor quotient set M/ =Ψ : The overall objective of the proposed sensorimotor motion planning approach is to find a motor strategy, which will allow the agent the reach a given target sensation through adequate, smooth, changes in the pose quotient set χ/ = φ . Thanks to Proposition 2, having smooth changes in χ/ = φ is equivalent to smooth changes in M/ =Ψ , i.e. in the internal representation of the agent, approximated thanks to Algorithm 1. Such a property can be easily obtained by considering a step by step path in M/ =Ψ , going from one kernel set K M ∈ M/ =Ψ to the next closest one. This way, having close kernel sets on the path in M/ =Ψ will conduct to close changes in χ/ = φ , and then to smooth changes of the pose of the sensor during the movement.

Recall that M/ =Ψ can be envisaged as being a graph G = (V, E), with V = {K (i) M , i = 1, . . . , N } its nodes and E all its undirected edges (see §III-B4). Each edge between the i th and j th node is weighted by the distance

d ij = ρ(K (i) M , K (j) M ).
Finding an path in M/ =Ψ is then analog to find an optimal path in a graph, which is a very common task [START_REF] Bondy | Graph theory, ser. Graduate texts in mathematics[END_REF]. Among many others, the following strategy is proposed:

(i) Compute a k-nearest neighbor graph G k = (V, E k ),
where

E k ⊆ E is
These two steps are illustrated in Figure 7. The quotient set M/ =Ψ is made of collection of motor kernel sets K

M . Among them, a k-nearest neighbor graph G k is computed, shown in gray in M/ =Ψ . This graph connects a given motor kernel set K (i) M to its k closest neighbors according to the (pseudo-)distance ρ. From this graph, a path P is extracted (drawn in black), allowing to from

K (p[1]) M to K (p[T ]) M
(with T = 4 here).

2) Second step: trajectory in the motor space M: Even if a path allowing to go from the initial motor kernel set

K (n) M to the final one K (m)
M is defined in M/ =Ψ , one still needs to determine the actual motor configuration M which must be used by the agent to actually move. A path must then be computed in the motor configuration space M between motor kernel sets, but also inside them. Such a problematic is commonly referred to discrete motor planification in traditional mobile robotic, which is very common task [START_REF] Lavalle | Planning Algorithms[END_REF]. Having the objective of minimizing a priori knowledge of the agent, a simple, straightforward and iterative interpolation strategy is proposed in this paper.

Lets consider two successive motor kernel sets

K (p[t]) M and K (p[t+1]) M
in the path P nm obtained from Eq. ( 16), and an initial motor configuration

M 1 ∈ K (p[t]) M
. The proposed algorithm follows the following steps:

M M/ = M1 M 2 M3 K (p[1]) M K (p[4]) M K (p[1]) M K (p[4]) M K (p[2]) M K (p[3]) M P [2]
[3] Fig. 7. Representation of the two steps approach to plan a movement of length T = 4 sensation S (p [1]) to S (p [4]) . (i) The quotient set M/= Ψ can be seen as a graph linking each kernel set it is made of. Using graph exploration algorithms allows to define a path P in M/= Ψ from the kernel sets

K (p[1]) M to K (p[4]) M
. (ii) Then, this path is propagated in M, where motor configuration interpolation is to move smoothly inside a kernel set, but also from one kernel to an other.

(i) determine the motor configuration

M 3 ∈ K (p[t+1]) M such that M 3 = arg min M * [p]∈K (p[t+1]) M d(M * [p], M 1 ). ( 17
)
M 3 is thus the closest motor configuration in the t + 1 th kernel set of the path P nm to M 1 . But jumping from M 1 to M 3 , i.e. directly from one motor kernel set to an other, is suboptimal w.r.t. to the interkernel distance. An additional, intermediate, motor configuration M 2 is then computed. (ii) determine the motor configuration

M 2 ∈ K (p[t]) M such that M 2 = arg min M * [p]∈K (p[t]) M d(M * [p], M 3 ). (18)
M 2 thus define an additional motor configuration in the t th motor kernel set of the path P nm . (iii) interpolate I intermediate motor configuration between M 1 and M 2 , but also between M 2 and M 3 with any interpolation function g(.) (in this paper, the interp1 MATLAB function is used). These three steps are then repeated from one motor kernel set to an other inside the path P nm . The actual implementation of this interpolation in M is shown in Algorithm 2. Additionally to the three steps mentioned above, an optimization is performed so as to find, among all the trajectories starting from a random motor configuration in the initial motor kernel set, the one minimizing the maximal inter-kernels distance.

This simple approach is illustrated in Figure 7. The motor configuration space M is made of multiple motor kernel sets K (i) M . The path found according to §IV-A1 in the motor quotient set M/ =Ψ allows to select successive motor kernel sets in M, starting from K (t [START_REF] Poincaré | Paris: La science et lhypotheèse[END_REF]) M to the final one K (t [START_REF] O'regan | A sensorimotor account of vision and visual consciousness[END_REF]) M in this illustration. Figure 7 also shows the three motor configurations M 1 , M 2 and M 3 determined for the two first kernel sets of P . On the whole, the trajectory in M exhibits different kind of movement. The first one, going from M 1 to M 2 , is a movement inside the motor kernel set K actually focusing on a specific modality, a careful generic mathematical formalization of the notion of "sensorimotor invariants" has been proposed. Based on the properties of motor and sensor pose quotient sets, it allows to demonstrate that an internal motor representation of all reachable sensor poses is accessible to the agent by of its sensorimotor invariants. On this basis, a simulated robotic system, endowed with an arm and a body with tactile capabilities, is introduced so as to illustrate how such a representation can be actually built. An algorithm is then proposed to obtain a low-dimensional projection of it, allowing to understand and interpret the resulting graph. Tested with two tactile body geometries, and two end-effector configurations, results show that the proposed approach can be exploited by the agent to obtain a sensorimotor image of its own body, with minimal a priori information. Then, as an illustrative application, this internal motor representation is used to generate motor commands. While based on a discrete approximation of the quotient sets, a second algorithm iteratively provides interpolated motor commands producing a smooth arm movement, as expected by the theory. The proposed formalism, while illustrated here with an agent endowed with tactile capabilities, is explicitly written in very generic terms. It can then be applied to other sensory modalities, like vision, as partially shown by the authors in [START_REF] Laflaquière | Learning agents spatial configuration from sensorimotor invariants[END_REF]. Concerning the tactile modality, this paper is philosophically close to the approach by A.A. Frolov in [START_REF] Frolov | Physiological basis of 3-D external space perception : approach of Henri Poincaré[END_REF]. But the proposed work goes far beyond the estimation of dimension like in [START_REF] Roschin | A neural network model for the acquisition of a spatial body scheme through sensorimotor interaction[END_REF], as an abstract representation emerges from the sole sensorimotor interaction of the agent with its own body. Furthermore, it can also be exploited by the agent to actually reach any target sensation. Importantly, the proposed formalism is rooted in purely sensorimotor considerations. Consequently, the obtained internal representation only appears thanks to the sensorimotor invariants of its own interaction, and can thus not be considered as an objective representation of the world, as outlined by K.O'Regan in [START_REF] O'regan | A sensorimotor account of vision and visual consciousness[END_REF].

From now on, can we finally say that the agent is actually "perceiving" the world? It is clear that the conclusions outlined in this paper are at best limited to the agent body. Even if the proposed framework is expected to be the first step towards a more complete mathematical formalization of the sensorimotor approach, one still needs to bridge the gap with the environment in which the agent is immersed. Extending the internal representation to capture invariant properties of the interaction between an agent and its environment will undoubtedly constitute a challenging task. But this is mandatory to bring out the more generic notion of "space perception", which will allow the agent to differentiate itself from the environment, and thus to elaborate the notion of distal perception. APPENDIX A PROOF OF PROP. 2: M/ =Ψ IS HOMEOMORPHIC TO χ/ = φ .

The following definitions and propositions are quite classical mathematical considerations [START_REF] Joshi | Introduction to General Topology[END_REF], [START_REF] Bourbaki | General Topology, ser. Actualités scientifiques et industrielles[END_REF]. They are recalled for self-containedness.

Let X be a topological space endowed with the topology T , ∼ be an equivalence relation, and X/ ∼ = {x ∈ X|x ∼ y, y ∈ X} be the quotient space of X with respect to ∼. Let's denote π : X → X/ ∼ the natural surjective map from each point in X to its equivalent class. Then one can endow X/ ∼ with the quotient topology T π by taking the open sets in X/ ∼ that are also open sets in X through π -1 , i.e.

T π = {U ⊆ X|π -1 (U ) ∈ T }.
This constitutes the finest topology on X/ ∼ such that π is continuous. This leads to the following propositions.

(U ) = X -f -1 (U ) is closed in X. f being a closed map, f (X -f -1 (U )) = f ( f -1 (Y ) - f -1 (U )) = f ( f -1 (Y -U )) = Y -U = U is closed. Thus U is open in Y .
Thus f is a quotient map. Proposition 5. Let f : X → Y be a continuous surjective map. If X is compact and Y is Hausdorff, then f is a quotient map.

Proof. Note C a closed set in X. Since X is compact, C is compact too. Thus f (C) is a compact subset of Y , and since Y Hausdorff, f (C) is a closed set in Y . f is then a closed map, hence thanks to Proposition 4, f is a quotient map too. Proposition 6. Let f : X → Y a continuous surjective map and = f the induced equivalence relation. Set

X/ = f = {x ∈ X| f (x) = y ∈ Y }
the quotient space of X with respect to f , let π : X → X/ = f be the projection from any point x ∈ X to its equivalent class K x = {a ∈ X|a = f x}, and give X/ = f the quotient topology T π defined above. If X is compact and Y is Hausdorff, then

h = f • π -1 : X/ = f → Y is a homeomorphism. X Y X/ = f f π h
Proof. To prove that h is a homeomorphism it is sufficient to show that (i) h and (ii) h -1 are continuous, and that (iii) h is a bijection. (i) Let's show that h -1 is continuous: from Proposition 5, f is a quotient map. Let V be an open set in X/ = f , V ∈ T π , and π -1 (V ) ∈ T , so it is an open set in X. Since π -1 (V ) = f -1 (h(V )), and since f is a quotient map, then h(V ) is open in Y . Thus ĥ-1 : Y → X/ = f is continuous. (ii) Let's show that h is continuous: note U ⊂ Y an open set in Y . Since π -1 (h -1 (U )) = f -1 (U ), and since f is continuous, then f -1 (U ) is open. Consequently, h -1 (U ) ∈ T π is open too, so that h is continuous. (iii) From the application of the first isomorphism theorem, one can directly say that h is a bijection. Thus, h is a homeomorphism.

Applying Proposition 6 with X = M compact, Y = χ/ = φ Hausdorff, and f = f •π φ a continuous surjective function by composition of two continuous surjective functions, leads to the proof that there exists a homeomorphism between M/ = f and χ/ = φ . Since M/ = f = M/ =Ψ (= f is equivalent to = Ψ thanks to the bijection between χ/ = φ and Σ), then Proposition 1 follows.

Fig. 1 .

 1 Fig. 1. Schematic representation of the different spaces involved in the paper.M is the motor space, χ is the pose space, Σ is the sensory space, M/= Ψ and χ/= φ both represent the quotient sets the agent will actually build and represent, respectively.

yFig. 2 .

 2 Fig.2. Proposed robotic system. It is made of M = 6 degrees of freedom, each of them being controlled via a motor command m i , i = {1, . . . , M } and moving the end-effector in the 3D space. Blue dots represent revolute joints, green dot depicts spherical joint, and red dot sketches for the end-effector.

Fig. 3 .

 3 Fig. 3. Agent setup. (Left) The arm touches the spherical body endowed with S tactile receptive fields with a single fingertip tool (Right) The arm is now endowed a double fingertip tool.

M

  , i = {1, . . . , N }. Each node is connected to each other through edges weighted by their distances ρ. Taking two nodes/kernel sets K (i) M and K (j) M

M

  : motor kernel set for target sensation S (i) σ: max step size for random exploration d(•,•): Euclidean distance ρ(•, •): distance between kernel sets Ψ(•): sensorimotor function Require: N, δ, L, σ, V 1: {Rough random motor sampling} 2: r=1; 3: for l = 1 : L do 4:

  ) 39: end for 40: end for 41: % Perform Dijkstra's algorithm on the distance matrix D 42: D = dijkstra(D) 43: 44: {Computation of a low-dimensional projection through CCA} 45: C = CCA( D); 46: return C

Fig. 5 .

 5 Fig. 5. Illustration of the agent internal representation for the N target sensations in the robotic 3D frame. (Red) isometrically-transformed internal representation of N target sensations by the agent, (Blue) original end-effector points that led to the target sensations. From the left to the right: (a/d) shaded body shape with target sensations on the surface (b/e) shaded recovered body shape (continuously deformed) with represented target sensation along the surface (c/f) arrows between transformed internal representation and real positions of target sensations on the body with tactile body fields in light gray and inner contours in green.

  Fig. 6. (a) One possible parameterization of the double fingertips quotient space χ/= φ , with ψ ∈ [-π/2, π/2[ the elevation, θ ∈ [0, π[ the orientation of the middle-point between the two fingertips in spherical coordinates, and one parameter α ∈ [0, π[ for the rotation along the radial axis. (b) After fixing three different middle-point positions on the spherical body, trace of fingertips positions (red, green and blue) along the rotation α with the average positions of its middle point in dark gray. (c) Representation in three chosen dimensions in the representation space of the middle point position. (d) Representation of the end-effector orientation α in the three remaining dimensions, with circles fitted to the points.

  composed of the k shortest edges of each nodes. Importantly, k can be determined without a priori by optimization, see §IV-B. (ii) In this graph G k , compute the shortest path from node K (n) M to node K (m) M using Dijkstra algorithm. The resulting path P nm is then an ordered length T list of successive kernel indexes (i), i.e. P nm = [n = p[1], p[2], ..., p[t], ..., p[T ] = m].

.Algorithm 2 6 :Fig. 8 .

 268 Fig. 8. Motion planning, performed with the agent endowed with two fingertips, and for a spherical or cubic body. The two trajectories on the actual agent body are shown in (a) and (d) for the two body geometries. The corresponding path in the discrete motor quotient set M/= Ψ , where the interpolation is actually performed, is shown in (b) and (c) for the spherical body. The same color conventions as in Figure 7 are used.

Proposition 3 .

 3 Let X and Y be topological spaces. The surjective map f :X → Y is called a quotient map if it has the property : U is open in Y ⇔ f -1 (U ) is open in X. Proposition 4. Let f : X → Y be a continuous surjective map. If f is a closed map (takes closed sets in X to closed sets in Y ) then f is a quotient map.Proof. Let's show the property from proposition 3 :⇒ Note U an open set in Y . f continuous implies that f -1 (U ) is open in X. ⇐ Let's take U a subset of Y such that f -1 (U ) is open in X. Thus the complement f -1

  Fig.[START_REF] O'regan | A sensorimotor account of vision and visual consciousness[END_REF]. Agent body tactile setup. (Left) The touch sensation is reproducing a simulated model of pressure sensors (mechanoreceptors) sensitive to a skin deformation. If the fingertip does not touch the skin, each mechanoreceptors send a null signal, otherwise the value of the signal sent by each mechanoreceptor increases with the decrease of the distance with the fingertip. (Right) Surface of the body; each sensory vector component ss depends on the distance between the contact point X and the s th sensitive field center Cs, s = 1, . . . , S. Note that the simulated receptive field depth is not infinitesimal, each of them having the same non-null thickness.

	Physical fingertip
	No Touch
	Skin
	Mechanoreceptors Generated sensation	( s	C s 1 1 )	C s d s 1	X d s ( s ) d s+1	1 ) ( s +
	Touch			C s+1

15:

M = [M, M 2 , M 3 ]; 16:

M 1 = M 3 ; 17:

end for 18:

% Find smallest inter-kernels path 19:

l[r + 1] = max i=2:2:2T d(M (:, i), M (:, i + 1)) 20:

if l[r + 1] < l[r] then 21:

T M = M ; % Backup optimal motor path 22:

end if 23: end for 24: 25: {Interpolation between motor configurations in M } 26: for m = 1 : length(M ) do 27:

for i = 0 : I do 28:

M M (:, (m -1)(I + 1) + i + 1) = g(M, m, i); 29: end for 30: end for 31: 32: return M M

B. Results

Algorithm 2 is run on the spherical and cubic body described in §III-C1. In each case, the graph G contains N = 1000 nodes, one for each motor kernel set K (i) M corresponding to 1000 target sensations S (i) , and 5•10 6 edges. The number of edges is quickly reduced by computing the knearest neighbors graph G k . While the number k of neighbors can be given a priori, it can also be selected by running successive iterations of Algorithm 2, and finding the value producing the minimum maximal inter-kernels distance (see lines 18-21 in Algorithm 2).

One then needs to define a starting and ending target sensation; these have been selected here so that the corresponding poses of the arm end-effector on the body are the farthest possible to each other. The starting and ending poses are shown by the green (start) and blue (end) poses respectively on Subfigure 8 (a) and (d) (more generally, the color conventions between Figure 8 and 7 are identical to ease the interpretation). The optimal number of neighbors k has been found to be k = 12 and k = 15, leading to a path P of length T = 7 and T = 6, for the spherical and cubic body respectively. This path, while being computed directly in the discrete internal representation M/ =Ψ , can also been visualized in its 6D representation shown in the two Subfigures 6(c) and (d). The same representation is shown again in Subfigures 8(b) and (c), together with the motor path P drawn with black lines. In these two subfigures, nodes/motor kernel sets in P are shown as red circles, while the corresponding initial and final ones are again in green and blue respectively. As already outlined, the path P in M/ =Ψ must then be propagated in the actual motor configuration space M of the agent thanks to the second step of Algorithm 2. The resulting successive motor configurations M 1 , M 2 and M 3 (iteratively computed for each motor kernel set) leads to three poses X 1 , X 2 and X 3 shown as red crosses in Subfigure 8 (a) and (d). Next, additional interpolated motor configurations are added in between, leading to the changes in the end-effector pose shown in blue dotted lines. As a result, a trajectory of the arm end-effector (i.e. the two fingertips here), from the initial pose to the final one on the agent body, is extracted. Subfigure 8(a) also shows identical numbers [i] on the trajectory. This number, which represents a lightweight notation for

indicates that the two concerned endeffector poses are obtained from the same motor kernel set (i.e. are obtained with a movement from M 1 to M 2 inside the same motor kernel set). These poses should then be theoretically identical, but the discrete approximation M/ =Ψ of M/ =Ψ prevents this. Nevertheless, it can be seen from these two trajectories computed for two different body geometries, that the end-effector stays smoothly inside the tactile fields of the body along the consequent trajectory. As expected, it moves almost straightly between motor kernel sets, even though the transitional end-effector poses are quite far from each other w.r.t. the body scale 1 .

V. CONCLUSION

This paper was concerned with the building of a sensorimotor representation of a naive agent's tactile space. Before 1 Two video attachments have been uploaded together with this submission. They show the movement performed by the agent for the two cases in Subfigure 8 (a) and (d).