**Autonomous Motion Adaptation Against Structure Changes Without Model Identification**

Yuki Funabora1, Yoshikazu Yano2, Shinji Doki1 and Shigeru Okuma1

<sup>1</sup>*Nagoya University* <sup>2</sup>*Aichi Institute of Technology Japan*

### **1. Introduction**

26 Will-be-set-by-IN-TECH

28 The Future of Humanoid Robots – Research and Applications

Veskos, P. & Demiris, Y. (2005). Developmental acquisition of entrainment skills in robot

Žlajpah, L. (2006). Robotic yo-yo: modelling and control strategies, *Robotica* 24(2): 211–220. Williamson, M. (1999). Designing rhythmic motions using neural oscillators, *Intelligent Robots*

Williamson, M. M. (1998). Neural control of rhythmic arm movements, *Neural Networks*

Villani, L. & J., D. S. (2008). *Handbook of Robotics*, Springer, chapter Force Control.

pp. 87–93.

Vol. 1, pp. 494 –500 vol.1.

11(7-8): 1379 – 1394.

swinging using van der pol oscillators, Vol. 123, Lund University Cognitive Studies,

*and Systems, 1999. IROS '99. Proceedings. 1999 IEEE/RSJ International Conference on*,

It is expected that humanoid robots provide various services to help human daily life such as household works, home security, medical care, welfare and so on(Dominey et al., 2007; Okada et al., 2003; 2005). In order to provide various services, humanoids have multi degree-of-freedom(DOF), sophisticated and complicated structure. These humanoid robots will work under human living environments which are not definable beforehand. So humanoids have to provide their given services under not only the designed environments but also unknown environments. Under unknown environments, robots cannot perform as planned, and they may fall or collide with obstacles. These impacts will wreak several unexpected structure changes such as gear cracks, joint locking, frame distortions and so on. Because of the designed motions are optimized to the robot structure, if the robot structure has changed, the services from robots cannot be provided. Because general users have no expertise knowledge of robots, thus, quick repairs under human living environments cannot be expected. Even in that case, it is expected that the robots should provide services to help human daily life as possible. In the case the humanoid robots cannot get rapid repair service, they have to provide the desired services with their broken body. In addition, using tools to provide some services can be considered as one of the structure changes. Therefore, it is necessary for future humanoids to obtain new motions which can provide the required services with changed structure.

We propose an autonomous motion adaptation method which can be applied to sophisticated and complicated robots represented by humanoids. As a first step, we deal with the simple services based on trajectory control; services can be provided by following the correct path designed by experts. When robot structure has changed, achieving the designed trajectories on changed structure is needed. As the conventional methods, there are two typical approaches. One is the method based on model identification (El-Salam et al., 2005; Groom et al., 1999). Robots locate the occurred changes, identify the changed structure, recalculate inverse kinematics, and then obtain the proper motions. If the changed structure is identified, inverse kinematics leads the proper motions for new properties of changed structure. However, it is so difficult to identify the complicated structure changes in sophisticated robots. In additions, the available solving methods of inverse kinematics for multi DOF robots is non-existent according to the reference (The Robotics Society of Japan, 2005). So model identification method cannot be applied for humanoids. Another approach is

World coordinate system

X Y

X Y

X Y

X Y

*s(t)*

X Y

*s' (t)*

*N*

*1*

*θ*

*2*

*N*

*θ*

*1*

*θ*

*2*

*N*

*N*

*θ*

*1*

*θ*

*1*

*θ*

Fig. 1. The outline of propsed method

*N*

*θ*

*θ*

*θ*

*1*

*θ*

Joint coordinate system

*<sup>θ</sup> <sup>θ</sup> θ*

*<sup>θ</sup> <sup>θ</sup> θ*

*<sup>θ</sup>* : Typical points X

*N-1 <sup>2</sup>*

*N-1 <sup>2</sup>*

: Proper joint angle vectors : Estimated transformation vector *r*

achieving the desired trajectory

*<sup>θ</sup> <sup>θ</sup>*

: Transformation vector *r*<sup>X</sup>

vectors only at the typical points

*(t)*

*θ*

*θ θ*

*N-1*

*N-1*

*θ θ*

the designed joint angle vectors

angle vectors before structure changes

*(t)*

*θ* Z

*(t) s(t)*

Autonomous Motion Adaptation Against Structure Changes Without Model Identification 31

(a) The desired trajectory and the designed joint

Joint coordinate system World coordinate system

(b) The changed trajectory after structure changes

Joint coordinate system World coordinate system

*N-1 <sup>2</sup>* : Changed positions *s'*<sup>X</sup>

(c) Extraction a small number of typical points from

Joint coordinate system World coordinate system

: Target positions *s*<sup>X</sup> : Explored typical points X

(d) Exploration the corresponding joint angle

Joint coordinate system World coordinate system

*^*

(e) Estimation all the proper joint angle vectors

*θ*

Z

Z

Z

Z

the exploration method (Peters & Schaal, 2007); finding the new motions achieving the desired trajectories after structure has changed. In order to obtain the proper motions achieving the desired trajectories, joint angles are varied by trial and error. Injured robots will obtain the proper motions without complicated model identification, but this approach needs huge exploration costs. New motion adaptation method with low exploration costs and without model identification is needed. In this paper, we show one approach to adapt designed motions to changed structure without model identification.

#### **2. Proposed methods**

We propose a motion adaptation method to generate new proper motions on changed structure without model identification. Even if robot has unobservable changes in mechanical structure, robot generates new motions which achieve the trajectories matching to the desired ones as much as possible.

Fig.1 shows the outline of proposed method. Left side shows the robot joint coordinate system and right side shows the world coordinate system. The robot has the designed motions achieving the desired trajectory *S*. To follow the desired trajectory accuracy, *T* number of target positions *s*(*t*)(1 ≤ *t* ≤ *T*) are put on the trajectory. All the designed motions are expressed with time-series joint angle vectors *θ*(*t*) which consit of *N* number of joint angles like this *θ*(*t*) = [*θ*1(*t*), *θ*2(*t*), ..., *θN*(*t*)]. Here, we assume the speed and timing should be controled by other control system, we deal with only the position recovery.

When a joint angle vector *θ*(*t*) is given to robot, robot will take a posture, and his end-effector indicates the target position *s*(*t*)(Fig.1(a)). The robot can measure the position of the end-effector through the sensors such as cameras or local GPSs. When structure changes have occurred, robot will take another posture even if the same joint angle vector *θ*(*t*) is given to the robot(Fig.1(b)). The robot can detect structure changes indirectly through measuring the changed position of end-effector *s*� (*t*). In this case, it is needed to modify all the joint angles to achieve the desired trajectories, but exploration for all the target positions s(t) needs huge exploration costs. So in proposed method, the number of exploration points is reduced using typical points. The robot extracts some combinations of joint angle vectors as typical points *θ<sup>X</sup>* which representative of all the designed joint angle vectors *θ*(Fig.1(c)). By applying conventional exploration method only at typical points, the robot obtains the corresponding joint angle vectors *θ*�� *<sup>X</sup>* achieving the target positions *sX* on changed structure(Fig.1(d)). To generate the other corresponding joint angle vectors, the robot estimates all the proper joint angle vectors *θ*��(*t*) based on exploration results*θ*�� *<sup>X</sup>* and *<sup>θ</sup>X*(Fig.1(e)).

The reachable area where the robot can indicate as target positions depends on the robot structure such as frame length, joint range of motion and so on. So structure changes cause the reachable area to be deteriorated. Also it has possibilities that the robot cannot indicate some target positions in designed joint DOF. Generally, humanoids have multi DOF and they have redundant joints which are not used for expressing the designed motions. If structure changes have occured and the target positions cannot be expressed, expansion of joint DOF using redundant joints is needed to extend the robot reachable area for encompassing all the target positions.

#### **2.1 Recovery of the desired trajectories with low explration**

In order to recover the desired trajectories, proposed adaptation method consists of three phases. Vector Quantization(VQ)(Furui et al., 1998) is applied in order to extract typical

2 Will-be-set-by-IN-TECH

the exploration method (Peters & Schaal, 2007); finding the new motions achieving the desired trajectories after structure has changed. In order to obtain the proper motions achieving the desired trajectories, joint angles are varied by trial and error. Injured robots will obtain the proper motions without complicated model identification, but this approach needs huge exploration costs. New motion adaptation method with low exploration costs and without model identification is needed. In this paper, we show one approach to adapt designed

We propose a motion adaptation method to generate new proper motions on changed structure without model identification. Even if robot has unobservable changes in mechanical structure, robot generates new motions which achieve the trajectories matching to the desired

Fig.1 shows the outline of proposed method. Left side shows the robot joint coordinate system and right side shows the world coordinate system. The robot has the designed motions achieving the desired trajectory *S*. To follow the desired trajectory accuracy, *T* number of target positions *s*(*t*)(1 ≤ *t* ≤ *T*) are put on the trajectory. All the designed motions are expressed with time-series joint angle vectors *θ*(*t*) which consit of *N* number of joint angles like this *θ*(*t*) = [*θ*1(*t*), *θ*2(*t*), ..., *θN*(*t*)]. Here, we assume the speed and timing should be

When a joint angle vector *θ*(*t*) is given to robot, robot will take a posture, and his end-effector indicates the target position *s*(*t*)(Fig.1(a)). The robot can measure the position of the end-effector through the sensors such as cameras or local GPSs. When structure changes have occurred, robot will take another posture even if the same joint angle vector *θ*(*t*) is given to the robot(Fig.1(b)). The robot can detect structure changes indirectly through measuring

angles to achieve the desired trajectories, but exploration for all the target positions s(t) needs huge exploration costs. So in proposed method, the number of exploration points is reduced using typical points. The robot extracts some combinations of joint angle vectors as typical points *θ<sup>X</sup>* which representative of all the designed joint angle vectors *θ*(Fig.1(c)). By applying conventional exploration method only at typical points, the robot obtains the corresponding

generate the other corresponding joint angle vectors, the robot estimates all the proper joint

The reachable area where the robot can indicate as target positions depends on the robot structure such as frame length, joint range of motion and so on. So structure changes cause the reachable area to be deteriorated. Also it has possibilities that the robot cannot indicate some target positions in designed joint DOF. Generally, humanoids have multi DOF and they have redundant joints which are not used for expressing the designed motions. If structure changes have occured and the target positions cannot be expressed, expansion of joint DOF using redundant joints is needed to extend the robot reachable area for encompassing all the

In order to recover the desired trajectories, proposed adaptation method consists of three phases. Vector Quantization(VQ)(Furui et al., 1998) is applied in order to extract typical

(*t*). In this case, it is needed to modify all the joint

*<sup>X</sup>* achieving the target positions *sX* on changed structure(Fig.1(d)). To

*<sup>X</sup>* and *<sup>θ</sup>X*(Fig.1(e)).

controled by other control system, we deal with only the position recovery.

motions to changed structure without model identification.

**2. Proposed methods**

ones as much as possible.

the changed position of end-effector *s*�

angle vectors *θ*��(*t*) based on exploration results*θ*��

**2.1 Recovery of the desired trajectories with low explration**

joint angle vectors *θ*��

target positions.

(a) The desired trajectory and the designed joint angle vectors before structure changes

(b) The changed trajectory after structure changes

(c) Extraction a small number of typical points from the designed joint angle vectors

(d) Exploration the corresponding joint angle vectors only at the typical points

(e) Estimation all the proper joint angle vectors achieving the desired trajectory

Fig. 1. The outline of propsed method

An estimation transformation vector ˆ

ˆ �*r*(�*θ*(*t*)) =

*<sup>γ</sup>*∗(�*h*) = <sup>1</sup>

*γ*(�*h*;�*a*) =

*σ*<sup>2</sup> = *E* � (ˆ

estimation transformation vectors ˆ

= −

�*θ*(*t*) and the estimated transformation vector ˆ

*K* ∑ *i*=1

*K* ∑ *j*=1

Hera, *E* denotes the average. Under the constraints(∑*<sup>K</sup>*

the desired trajectory can be genereted autonomously.

2

⎧ ⎪⎨ *a*<sup>0</sup> + *a*1( <sup>3</sup> 2 ||�*h*|| *<sup>a</sup>*<sup>2</sup> <sup>−</sup> <sup>1</sup>

⎪⎩

�*r*(*t*) <sup>−</sup>�*r*(*t*))<sup>2</sup>

two samples(�*θ*X(*i*) and �*θ*X(*j*)(*i*, *<sup>j</sup>* ∈ {1, ...,*K*})) is calculated as (3).

*<sup>γ</sup>ij* <sup>=</sup> <sup>1</sup> 2

transformation vector ˆ

of�*h* like (4).

as (5).

�*θ*(*t*) into the proper one �*θ*��(*t*) is estimated by Kriging based on sets of �*θ<sup>X</sup>* and�*rX*.

*K* ∑ *k*=1 *wk*

Based on *K* sets of typical points �*θX*(*k*) and transformation vectors�*rX*(�*θX*(*k*)), an estimation

Autonomous Motion Adaptation Against Structure Changes Without Model Identification 33

�*r*X(�*θ*X(*k*)),

Here, weight *wk* is derived from variogram *γ* which is calculated from *K* number of sample sets(�*θ<sup>X</sup>* and�*rX*). A variogram is an indicator of spatial autocorrelation. The variogram for any

Here, we define�*<sup>h</sup>* <sup>=</sup> �*θ*X(*i*) <sup>−</sup>�*θ*X(*j*), the experimental variogram cloud *<sup>γ</sup>*<sup>∗</sup> is shown as a function

The variogram *γ* is determined by modeling of the experimental variogram cloud *γ*∗. We adopt a spherical model which is commonly used in geostatistics. A spherical model is shown

Here, �*a*(*a*0, *a*<sup>1</sup> ≥ 0, *a*<sup>2</sup> > 0) shows model parameters and is determined by applying least squares to fit to the experimental variogram cloud. We assume that the joint coordinate system

by applying Lagrange's method of undetermined multipliers to minimize the *σ*2. The

The proper joint angle vectors �*θ*��(*t*) is calculaed as (7) using the designed joint angle vector

By applying (7) to all the designed joint angles �*θ*, the proper joint angle vectors �*θ*�� achiving

�*θ*��(*t*) = �*θ*(*t*) + ˆ

�*r*(�*θ*(*t*)).

is satisfied locally stationary, an estimation varience of Kriging *σ*<sup>2</sup> is calculated as (6).

*wiwjγ*(�*θ*X(*i*) <sup>−</sup>�*θ*X(*j*)) + <sup>2</sup>

�

<sup>2</sup> { ||�*h*||

*<sup>a</sup>*<sup>0</sup> <sup>+</sup> *<sup>a</sup>*1, ||�*h*|| <sup>&</sup>gt; *<sup>a</sup>*<sup>2</sup> 0, ||�*h*|| <sup>=</sup> <sup>0</sup>

�*r*(�*θ*(*t*)) at arbitrary joint angle vector �*θ*(*t*) is calculated as (2).

*K* ∑ *k*=1

�*r*(*t*) which transforms the designed joint angle vector

*Var*[�*r*X(�*θ*X(*i*)) <sup>−</sup>�*r*X(�*θ*X(*j*))]. (3)

*Var*[�*r*X(�*θ*X(*j*) +�*h*) <sup>−</sup>�*r*X(�*θ*X(*j*))], (∀*<sup>j</sup>* ∈ {1, ..., *<sup>K</sup>*}). (4)

*<sup>a</sup>*<sup>2</sup> }3), 0 <sup>&</sup>lt; ||�*h*|| ≤ *<sup>a</sup>*<sup>2</sup>

*K* ∑ *k*=1

�*r* is calculated from aquired *wk* and (2).

*wk* = 1. (2)

*wkγ*(�*θ*X(*k*) <sup>−</sup>�*θ*(*t*)). (6)

*<sup>k</sup>*=<sup>1</sup> *wk* = 1), weights *wk* are calculated

�*r*(�*θ*(*t*)). (7)

(5)

points *θX*(Fig.1(c)), Simulated Annearling(SA)(Kirkpatrick, 1984) is applied to explore the corresponding joint angle vectors *θ*�� *<sup>X</sup>* at typical points(Fig.1(d)), and Kriging(Mase & Takeda, 2001) is applied to estimate all the proper joint angle vectors *θ*��(Fig.1(e)).

#### **2.1.1 Extraction of typical points**

For cutting costs of exploration, the number of exploration points should be reduced. *K*(*K* � *<sup>T</sup>*) number of typical points *<sup>θ</sup>X*(*k*)(1 <sup>≤</sup> *<sup>k</sup>* <sup>≤</sup> *<sup>K</sup>*) are extracted from the desgined joint angle vectors*θ*. In humanoids, because the new motions would be added from users or adjusted for adaptation to environments and so on, typical points cannot be determined beforehand. It is necessary to extract typical points which are represented distribution of all the designed joint angle vectors *θ* on joint coordinate system.

In this method, several typical points where the target positions are explored are extracted by VQ. VQ is used in many applications such as image compression, voice compression, voice recognition and so on. Some codewords represent a given set of input vectors on coordinate system. *K* number of typical points *θX*(*k*) as codewords resulting from VQ represent all the designed joint angle vectors *θ*. The number *K* is determined by quantization distortion which is given based on the number of joints, range of joint motion, accuracy of desired trajectories and so on. Robots can get *K* number of typical points *θ<sup>X</sup>* autonomously based on given quantization distortion.

As mentioned, by applying VQ to all the designed joint angle vectors *θ* distributing on joint coordinate system, some representative joint angle vectors *θ<sup>X</sup>* are extracted autonomously.

#### **2.1.2 Exploration on typical points**

By applying conventional exploration method at a typical points *θX*(*k*), the corresponding joint angle vectors *θ*�� *<sup>X</sup>*(*k*) is explored. There is position error between the target position *sX*(*k*) and the current indicating position *s*� *<sup>X</sup>*(*k*). By minimaizing these position errors at all the typical points, the proper joint angle vectors *θ*�� *<sup>X</sup>* are aquired. In proposed method, the proper joint angle vectors are explored by SA. SA is one of the famous global optimization method and often used when the search space is discrete. It is considered that the structure changes cause the joint angle coordinate system to go into some discrete changes.

By applying SA at a typical point *θX*(*t*), a corresponding joint angle vector *θ*�� *<sup>X</sup>*(*t*) is aquired. From the difference between the original vector *θX*(*k*) and the corresponding one *θ*�� *<sup>X</sup>*(*k*), a transformation vector*rX*(*θ*(*k*)) is calculated as (1).

$$
\vec{r}(\vec{\theta}\_X(k)) = \vec{\theta}\_X^{\prime\prime}(k) - \vec{\theta}\_X(k). \tag{1}
$$

Each transformation vector is acquired at each typical point. By exploring *K* target positions *sX*, datasets of typical points *θ<sup>X</sup>* and transformation vectors*rX* can be aquired.

#### **2.1.3 Estimation of the proper joint angle vectors**

All the proper joint angle vectors *θ*�� indicating the target positions on changed structure is generated by Kriging; one of the spatial estimation method in geostatistics. Kriging is a technique to predict the value at any point of space from some sample sets of the space points and the values. Mukai(Mukai & Kuriyama, 2005) achieved creating a lot of similar CG motions from limited sample motions by Kriging. By applying interpolation method Kriging, exploration results at typical points can reflect all the designed joint angle vectors. 4 Will-be-set-by-IN-TECH

points *θX*(Fig.1(c)), Simulated Annearling(SA)(Kirkpatrick, 1984) is applied to explore the

For cutting costs of exploration, the number of exploration points should be reduced. *K*(*K* � *<sup>T</sup>*) number of typical points *<sup>θ</sup>X*(*k*)(1 <sup>≤</sup> *<sup>k</sup>* <sup>≤</sup> *<sup>K</sup>*) are extracted from the desgined joint angle vectors*θ*. In humanoids, because the new motions would be added from users or adjusted for adaptation to environments and so on, typical points cannot be determined beforehand. It is necessary to extract typical points which are represented distribution of all the designed joint

In this method, several typical points where the target positions are explored are extracted by VQ. VQ is used in many applications such as image compression, voice compression, voice recognition and so on. Some codewords represent a given set of input vectors on coordinate system. *K* number of typical points *θX*(*k*) as codewords resulting from VQ represent all the designed joint angle vectors *θ*. The number *K* is determined by quantization distortion which is given based on the number of joints, range of joint motion, accuracy of desired trajectories and so on. Robots can get *K* number of typical points *θ<sup>X</sup>* autonomously based on given

As mentioned, by applying VQ to all the designed joint angle vectors *θ* distributing on joint coordinate system, some representative joint angle vectors *θ<sup>X</sup>* are extracted autonomously.

By applying conventional exploration method at a typical points *θX*(*k*), the corresponding

joint angle vectors are explored by SA. SA is one of the famous global optimization method and often used when the search space is discrete. It is considered that the structure changes

Each transformation vector is acquired at each typical point. By exploring *K* target positions

All the proper joint angle vectors *θ*�� indicating the target positions on changed structure is generated by Kriging; one of the spatial estimation method in geostatistics. Kriging is a technique to predict the value at any point of space from some sample sets of the space points and the values. Mukai(Mukai & Kuriyama, 2005) achieved creating a lot of similar CG motions from limited sample motions by Kriging. By applying interpolation method Kriging, exploration results at typical points can reflect all the designed joint angle vectors.

From the difference between the original vector *θX*(*k*) and the corresponding one *θ*��

*r*(*θX*(*k*)) = *θ*��

*sX*, datasets of typical points *θ<sup>X</sup>* and transformation vectors*rX* can be aquired.

cause the joint angle coordinate system to go into some discrete changes. By applying SA at a typical point *θX*(*t*), a corresponding joint angle vector *θ*��

*<sup>X</sup>*(*k*) is explored. There is position error between the target position *sX*(*k*)

*<sup>X</sup>*(*k*). By minimaizing these position errors at all the

*<sup>X</sup>* are aquired. In proposed method, the proper

*<sup>X</sup>*(*k*) <sup>−</sup>*<sup>θ</sup>X*(*k*). (1)

*<sup>X</sup>*(*t*) is aquired.

*<sup>X</sup>*(*k*), a

2001) is applied to estimate all the proper joint angle vectors *θ*��(Fig.1(e)).

*<sup>X</sup>* at typical points(Fig.1(d)), and Kriging(Mase & Takeda,

corresponding joint angle vectors *θ*��

angle vectors *θ* on joint coordinate system.

**2.1.1 Extraction of typical points**

quantization distortion.

joint angle vectors *θ*��

**2.1.2 Exploration on typical points**

and the current indicating position *s*�

typical points, the proper joint angle vectors *θ*��

transformation vector*rX*(*θ*(*k*)) is calculated as (1).

**2.1.3 Estimation of the proper joint angle vectors**

Based on *K* sets of typical points �*θX*(*k*) and transformation vectors�*rX*(�*θX*(*k*)), an estimation transformation vector ˆ �*r*(�*θ*(*t*)) at arbitrary joint angle vector �*θ*(*t*) is calculated as (2).

$$\hat{\vec{r}}(\vec{\theta}(t)) = \sum\_{k=1}^{K} w\_k \vec{r}\_\mathbf{X}(\vec{\theta}\_\mathbf{X}(k)), \quad \sum\_{k=1}^{K} w\_k = 1. \tag{2}$$

Here, weight *wk* is derived from variogram *γ* which is calculated from *K* number of sample sets(�*θ<sup>X</sup>* and�*rX*). A variogram is an indicator of spatial autocorrelation. The variogram for any two samples(�*θ*X(*i*) and �*θ*X(*j*)(*i*, *<sup>j</sup>* ∈ {1, ...,*K*})) is calculated as (3).

$$\gamma\_{ij} = \frac{1}{2}Var[\vec{r}\chi(\vec{\theta}\_{\mathbf{X}}(i)) - \vec{r}\_{\mathbf{X}}(\vec{\theta}\_{\mathbf{X}}(j))].\tag{3}$$

Here, we define�*<sup>h</sup>* <sup>=</sup> �*θ*X(*i*) <sup>−</sup>�*θ*X(*j*), the experimental variogram cloud *<sup>γ</sup>*<sup>∗</sup> is shown as a function of�*h* like (4).

$$\gamma^\*(\vec{h}) = \frac{1}{2}Var[\vec{r}\_\mathcal{X}(\vec{\theta}\_\mathcal{X}(j) + \vec{h}) - \vec{r}\_\mathcal{X}(\vec{\theta}\_\mathcal{X}(j))], \quad (\forall j \in \{1, ..., K\}).\tag{4}$$

The variogram *γ* is determined by modeling of the experimental variogram cloud *γ*∗. We adopt a spherical model which is commonly used in geostatistics. A spherical model is shown as (5).

$$\gamma(\vec{h};\vec{a}) = \begin{cases} a\_0 + a\_1(\frac{3}{2}\frac{||\vec{h}||}{a\_2} - \frac{1}{2}\{\frac{||\vec{h}||}{a\_2}\}^3), & 0 < ||\vec{h}|| \le a\_2\\ a\_0 + a\_1, & ||\vec{h}|| > a\_2\\ 0, & ||\vec{h}|| = 0 \end{cases} \tag{5}$$

Here, �*a*(*a*0, *a*<sup>1</sup> ≥ 0, *a*<sup>2</sup> > 0) shows model parameters and is determined by applying least squares to fit to the experimental variogram cloud. We assume that the joint coordinate system is satisfied locally stationary, an estimation varience of Kriging *σ*<sup>2</sup> is calculated as (6).

$$\begin{split} \sigma^2 &= E\left[ (\vec{\vec{r}}(t) - \vec{r}(t))^2 \right] \\ &= -\sum\_{i=1}^{K} \sum\_{j=1}^{K} w\_i w\_j \gamma(\vec{\theta}\_\mathbf{X}(i) - \vec{\theta}\_\mathbf{X}(j)) + 2\sum\_{k=1}^{K} w\_k \gamma(\vec{\theta}\_\mathbf{X}(k) - \vec{\theta}(t)). \end{split} \tag{6}$$

Hera, *E* denotes the average. Under the constraints(∑*<sup>K</sup> <sup>k</sup>*=<sup>1</sup> *wk* = 1), weights *wk* are calculated by applying Lagrange's method of undetermined multipliers to minimize the *σ*2. The estimation transformation vectors ˆ �*r* is calculated from aquired *wk* and (2).

The proper joint angle vectors �*θ*��(*t*) is calculaed as (7) using the designed joint angle vector �*θ*(*t*) and the estimated transformation vector ˆ �*r*(�*θ*(*t*)).

$$
\vec{\theta}^{\prime\prime}(t) = \vec{\theta}(t) + \hat{\vec{r}}(\vec{\theta}(t)). \tag{7}
$$

By applying (7) to all the designed joint angles �*θ*, the proper joint angle vectors �*θ*�� achiving the desired trajectory can be genereted autonomously.

**Shoulder pitch Shoulder yaw Elbow yaw**

*θE*

angle vectors *θ*��*<sup>E</sup>* are generated in expanded joint DOF.

100mm

Fig. 4. The structure of the target humanoid

50mm

*, 3 , 1 <sup>2</sup>* :

*θθθ θ*

Joints for designed motion *<sup>0</sup>* : Redundant joint

: Tools

**Default end-effector**

*Nr* redundant joints is shown as (8).

The transformation vectors *r<sup>E</sup>*

transformation vectors ˆ

**3. Experiments**

DOF.

Fig. 3. An example of staged expansion of joint DOF on a humanoid

**+ Waist yaw + Waist pitch +**

joint DOF at typical points, the proper joint angle vectors are estimated in expanded joint

The proposed motion adaptation method is evaluated on simulation. The structure of the target humanoid robot is shown in Fig.4. To exclude the discussion of stability, only the upper

*1*

*3 2*

*θ θθ*

210mm 70mm 200mm

body was modeled. A motion "draw a circle" achieving a desired circular path on Y-Z plane with right hand was designed with 100 time-series joint angle vectors in 3 DOF consisting of shoulder yaw joint *θ*<sup>1</sup> , shoulder pitch joint *θ*<sup>2</sup> and elbow yaw joint *θ*3. All the range of joint motion was −130[*deg*] ≤ *θ*1, *θ*2, *θ*<sup>3</sup> ≤ +130[*deg*]. The desired trajectory *S* was a circular path

There is a typical point*θX*(*k*) in designed *Nd* joint DOF. The expanded typical point*θ<sup>E</sup>*

**3 DOF 4 DOF 5 DOF 9 DOF**

Autonomous Motion Adaptation Against Structure Changes Without Model Identification 35

**Right hip pitch Right hip roll Left hip pitch Left hip roll**

*<sup>X</sup>* = (*θ*1, *θ*2, ..., *θNd* , *θNd*+1, ..., *θNd*+*Nr* ) (8)

*r<sup>E</sup>* are acquired in expanded joint DOF by Kriging. So the proper joint

*0*

*θ*

Z X

Y

300mm

*<sup>X</sup>* are acquired in expanded joint DOF by SA. The estimation

*<sup>X</sup>* adding

#### **2.2 Expansion of joint DOF**

For achieving the desired trajectories on changed structure, the joint DOF should be expanded using redundant joints if necessary. When the generated proper joint angle vectors could not achieve the target positions in designed joint DOF, the new joint angle vectors should be explored in expanded joint DOF adding redundant joints.

The concept of deterioration of the reachable area and expansion of joint DOF is shown as Fig.2. A motion "draw a circle" is designed in 3 DOF consisting of shoulder yaw joint,

Fig. 2. Deterioration of the reachable area and expansion of joint DOF

shoulder pitch joint and elbow yaw joint. The desired trajectory is achieved in designed 3 DOF before structure changes. When the robot structure has changed by frame distortion, the desired trajectory cannot be achieved in designed DOF, because the reachable area has deteriorated. A redundant waist yaw joint should be added in order to extend the reachable area.

The fewer the joint DOF in which the robot can indicate all the target positions is, the lower exploration costs are. It is difficult for robots to find autonomously the combination of joints in which the robot can indicate all the target positions. In this method, experts of the robots select beforehand the right combination of joints to reach the target positions based on their experimental rule. The prioritization of joints to each end-effector is given in advance. The number of joint DOF is expanded in stages based on the prioritization. An example of expansion of joint DOF to right hand end-effector on a humanoid is shown as Fig.3. If a trajectory cannot be achived, first, robot generates proper joint angle vectors in the designed DOF using the method as mentioned above. When the robot explores the target positions at extracted typical points, he can obtain the differences between the target positions and the explored positions. If these differences are not sufficiently-small, then, the robots explore the target positions again in 4 DOF adding waist yaw joint based on given prioritization of joints. Even if one target position cannot be explored in 4 DOF, the corresponding joint angle vectors are explored in 5 joints adding waist pitch joint. By adding the redundant joints in stages, the corresponding joint angle vectors are acquired with low exploration costs. Proposed method consisting of VQ and Kriging is independent of joint DOF. Only by exploring in expanded

Fig. 3. An example of staged expansion of joint DOF on a humanoid

joint DOF at typical points, the proper joint angle vectors are estimated in expanded joint DOF.

There is a typical point*θX*(*k*) in designed *Nd* joint DOF. The expanded typical point*θ<sup>E</sup> <sup>X</sup>* adding *Nr* redundant joints is shown as (8).

$$\vec{\theta}\_{\text{X}}^{\text{E}} = (\theta\_{\text{1}}, \theta\_{\text{2}}, \dots, \theta\_{\text{N}\_{\text{d}'}}, \theta\_{\text{N}\_{\text{d}} + \text{1}\_{\text{I}'}} \dots, \theta\_{\text{N}\_{\text{d}} + \text{N}\_{\text{r}}}) \tag{8}$$

The transformation vectors *r<sup>E</sup> <sup>X</sup>* are acquired in expanded joint DOF by SA. The estimation transformation vectors ˆ *r<sup>E</sup>* are acquired in expanded joint DOF by Kriging. So the proper joint angle vectors *θ*��*<sup>E</sup>* are generated in expanded joint DOF.

#### **3. Experiments**

6 Will-be-set-by-IN-TECH

For achieving the desired trajectories on changed structure, the joint DOF should be expanded using redundant joints if necessary. When the generated proper joint angle vectors could not achieve the target positions in designed joint DOF, the new joint angle vectors should be

The concept of deterioration of the reachable area and expansion of joint DOF is shown as Fig.2. A motion "draw a circle" is designed in 3 DOF consisting of shoulder yaw joint,

**Expansion of DOF**

shoulder pitch joint and elbow yaw joint. The desired trajectory is achieved in designed 3 DOF before structure changes. When the robot structure has changed by frame distortion, the desired trajectory cannot be achieved in designed DOF, because the reachable area has deteriorated. A redundant waist yaw joint should be added in order to extend the reachable

The fewer the joint DOF in which the robot can indicate all the target positions is, the lower exploration costs are. It is difficult for robots to find autonomously the combination of joints in which the robot can indicate all the target positions. In this method, experts of the robots select beforehand the right combination of joints to reach the target positions based on their experimental rule. The prioritization of joints to each end-effector is given in advance. The number of joint DOF is expanded in stages based on the prioritization. An example of expansion of joint DOF to right hand end-effector on a humanoid is shown as Fig.3. If a trajectory cannot be achived, first, robot generates proper joint angle vectors in the designed DOF using the method as mentioned above. When the robot explores the target positions at extracted typical points, he can obtain the differences between the target positions and the explored positions. If these differences are not sufficiently-small, then, the robots explore the target positions again in 4 DOF adding waist yaw joint based on given prioritization of joints. Even if one target position cannot be explored in 4 DOF, the corresponding joint angle vectors are explored in 5 joints adding waist pitch joint. By adding the redundant joints in stages, the corresponding joint angle vectors are acquired with low exploration costs. Proposed method consisting of VQ and Kriging is independent of joint DOF. Only by exploring in expanded

**Frame distortion**

Reachable area

Unreachable area

**Extended**

**reachable area**

Y

Shoulder yaw Shoulder pitch Elbow yaw

**3 DOF**

Shoulder yaw Shoulder pitch Elbow yaw

**3 DOF**

Shoulder yaw Shoulder pitch

**Waist yaw** Elbow yaw

**4 DOF**

**2.2 Expansion of joint DOF**

explored in expanded joint DOF adding redundant joints.

X Y

X Y

Fig. 2. Deterioration of the reachable area and expansion of joint DOF

Z

Z

X

Z

area.

The proposed motion adaptation method is evaluated on simulation. The structure of the target humanoid robot is shown in Fig.4. To exclude the discussion of stability, only the upper

Fig. 4. The structure of the target humanoid

body was modeled. A motion "draw a circle" achieving a desired circular path on Y-Z plane with right hand was designed with 100 time-series joint angle vectors in 3 DOF consisting of shoulder yaw joint *θ*<sup>1</sup> , shoulder pitch joint *θ*<sup>2</sup> and elbow yaw joint *θ*3. All the range of joint motion was −130[*deg*] ≤ *θ*1, *θ*2, *θ*<sup>3</sup> ≤ +130[*deg*]. The desired trajectory *S* was a circular path

0 50 100 150 200 250 300 350 400

[mm]

Desired trajectory Trajectory with joint locking

0

Fig. 7. Observed trajectories with joint locking(*θ*<sup>3</sup> = 0[*deg*])

100

200

300

Z

400

500

[mm]

0 50 100 150 200 250 300 350 400

<sup>X</sup> <sup>Y</sup>

[mm] [mm]

0

Fig. 6. Observed trajectories with 100mm tool

**3.2 Adaptation to joint locking**

100

200

300

Z

400

500

Desired trajectory Trajectory with 100mm tool


[mm]

Explored typical points in 3 DOF Generated trajectory in 3 DOF Explored typical points in 4 DOF

[mm] Generated trajectory in 4 DOF

Autonomous Motion Adaptation Against Structure Changes Without Model Identification 37

<sup>X</sup> <sup>Y</sup>

Proposed method can apply to correspond not only between the same DOF but also higher DOF, as mention above. So, the robot generates a new motion by exploring in 4 DOF adding redundant waist yaw joint *θ*0. In Fig.6, blue squares show the explored typical points and blue line shows the generated trajectory in 4 DOF. The generated trajectory in expanded 4 DOF is nearer by the designed one than that of in 3 DOF, and blue line is very consistent with green line. The desired trajectory is recovered on changed structure by expanding joint DOF.

Then, we assumed another change. Another structure change was assumed as elbow yaw joint *θ*<sup>3</sup> locking to 0 degree. Each line shows each trajectory along with Fig.6. Along with

> Explored typical points in 3 DOF Generated trajectory in 3 DOF Explored typical points in 4 DOF Generated trajectory in 4 DOF

> > -400 -300 -200 -100 0 100 200

whose radius was 150mm and center position was (200[mm],-100[mm],300[mm]) on world coorinate system.

So that the quantization distortion on world coordinate system was less than 60mm, 8 typical points were extracted by VQ. If the generated motion in designed 3 DOF cannot achieve the desired trajectory, the new motion is generated according to proposed method in expanded 4 DOF adding waist yaw joint *θ*0.

#### **3.1 Adaptation to tools**

Assuming the users install the tools like a pen, we extended length of the lower arm by 50mm or 100mm as structure changes(Fig.4).

The results of adaptation to using 50mm tool is shown in Fig.5. In Fig.5, green line shows

Fig. 5. Observed trajectories with 50mm tool

the desired trajectory, red dots show the changed trajectory with 50mm tools. Undesired trajectory was expressed with changed structure. 8 blue circles show the explored typical points *θ <sup>X</sup>* which modified by conventional exploration method SA. 100 proper joint angle vectors *θ* ware estimated by Kriging based on results of exploration at 8 blue circles. The generated trajectory(blue line) is very consistent with the desired trajectory(green line). The desired trajectory is recovered with about 8% exploration cost on changed structure.

The results of adaptation to using 100mm tool is shown in Fig.6. In Fig.6, red dots show the changed trajectory with 100mm tool. 8 light blue circles show explored typical points in 3 DOF and light blue line shows the generated trajectory in 3 DOF. Attached tool was so long that the robot could not express all the target position in designed 3 DOF. In other words, using the 100mm tool cause deterioration of the reachable area. Even in that case, the generated trajectory(light blue line) represents nearer by the desired one(green line) than the changed one(red dots). The generated trajectory is matched the optimum trajectory acquired from exploration at all the 100 joint angle vectors. It is considered that even if the robot cannot express the desired trajectory on changed structure, by applying porposed method, the robot can generate new motions which achieve the trajectories matching to the desired ones as much as possible.

Fig. 6. Observed trajectories with 100mm tool

Proposed method can apply to correspond not only between the same DOF but also higher DOF, as mention above. So, the robot generates a new motion by exploring in 4 DOF adding redundant waist yaw joint *θ*0. In Fig.6, blue squares show the explored typical points and blue line shows the generated trajectory in 4 DOF. The generated trajectory in expanded 4 DOF is nearer by the designed one than that of in 3 DOF, and blue line is very consistent with green line. The desired trajectory is recovered on changed structure by expanding joint DOF.

#### **3.2 Adaptation to joint locking**

8 Will-be-set-by-IN-TECH

whose radius was 150mm and center position was (200[mm],-100[mm],300[mm]) on world

So that the quantization distortion on world coordinate system was less than 60mm, 8 typical points were extracted by VQ. If the generated motion in designed 3 DOF cannot achieve the desired trajectory, the new motion is generated according to proposed method in expanded 4

Assuming the users install the tools like a pen, we extended length of the lower arm by 50mm

The results of adaptation to using 50mm tool is shown in Fig.5. In Fig.5, green line shows

0

*<sup>X</sup>* which modified by conventional exploration method SA. 100 proper joint angle

<sup>X</sup> <sup>Y</sup>

the desired trajectory, red dots show the changed trajectory with 50mm tools. Undesired trajectory was expressed with changed structure. 8 blue circles show the explored typical

vectors *θ* ware estimated by Kriging based on results of exploration at 8 blue circles. The generated trajectory(blue line) is very consistent with the desired trajectory(green line). The

The results of adaptation to using 100mm tool is shown in Fig.6. In Fig.6, red dots show the changed trajectory with 100mm tool. 8 light blue circles show explored typical points in 3 DOF and light blue line shows the generated trajectory in 3 DOF. Attached tool was so long that the robot could not express all the target position in designed 3 DOF. In other words, using the 100mm tool cause deterioration of the reachable area. Even in that case, the generated trajectory(light blue line) represents nearer by the desired one(green line) than the changed one(red dots). The generated trajectory is matched the optimum trajectory acquired from exploration at all the 100 joint angle vectors. It is considered that even if the robot cannot express the desired trajectory on changed structure, by applying porposed method, the robot can generate new motions which achieve the trajectories matching to the desired ones as much

desired trajectory is recovered with about 8% exploration cost on changed structure.


[mm]

Explored typical points Generated trajectory

0 50 100 150 200 250 300 350 400

Desired trajectory Trajectory with 50mm tool

[mm]

coorinate system.

DOF adding waist yaw joint *θ*0.

or 100mm as structure changes(Fig.4).

0

Fig. 5. Observed trajectories with 50mm tool

points *θ*

as possible.

100

200

300

Z

400

500

[mm]

**3.1 Adaptation to tools**

Then, we assumed another change. Another structure change was assumed as elbow yaw joint *θ*<sup>3</sup> locking to 0 degree. Each line shows each trajectory along with Fig.6. Along with

Fig. 7. Observed trajectories with joint locking(*θ*<sup>3</sup> = 0[*deg*])

positions near the body. As the result, the generated trajectory was away from the body. On the other hand, in 4 DOF, in order to express the target positions on near the body, the robot was taking advantage of the redundant waist joint. We looked that robot used redundant

Autonomous Motion Adaptation Against Structure Changes Without Model Identification 39

As a case study of the multi DOF humanoid robots, we introduced the study to execute autonomous motion adaptation against robot mechanical structure changes. To apply for humanoids which have multi DOF and sophisticated complicated structure, we proposed an autonomous motion adaptation method without model identification. We showed that the adaptation method could execute efficiency by exploring the corresponding joint angle vectors at a small number of typical points and estimating all the proper joint angles based on the result in exploration. Using proposed method, the generated trajectories are well matched the desired one on unobservable changed structure. Even if the generated motions wouldn't have achieved the designed trajectories, it is expected that the new motion achieving the desired trajectories would be generated by exploring in expanded DOF adding redundant joints. Now, we showed experiments only for the trajectory "draw a circle". In general, humanoid robots should achieve various trajectories to provide various services. Even if the robot has several designed motions to achieve various trajectories, it is expected using VQ that the effective typical points for modifying are extracted and the designed motions can adapt to changed structure efficiently. It is needed to evaluate the effectiveness of proposed method applying for various motions. Now, we deal with only the motions based on trajectory control. This method is not limited control system. The robot chooses the evaluation function based on control system and explores the corresponding joint angle vectors using the evaluation function at typical points, the robot will generate the adapted motions for another control system. It calls for further researches and experiments. We showed the possibility to adapt motions in expanded DOF, but in this paper, adding redundant joints ware determined by experts. It is necessary to consider the joint selection method to expand joint DOF. This method realized to reduce the number of exploration points, but exploration costs increase exponentially with increasing robot joint DOF. There are some humanoid having over 30 DOF, it is difficult to explore in real time. New adaptation method which is not independent on

increasing of joint DOF is needed. It calls for further researches and experiments, too.

In our method, stability problems are not resolved. On typical points, by recovering not only position sensor values but also the sensor values observing the stability such as acceleration, gyro, force and so on, the designed trajectories can be recovered in stable condition. In addition, this problems will be resolved in combination with the other methods such as Maufroy(Maufroy et al., 2010), Otoda(Otoda et al., 2009). Further studies are required.

Dominey, P., Mallet, A. & Yoshida, E. (2007). Real-time cooperative behavior acquisition

El-Salam, I. A., El-Haweet, W. & Pertew, A. (2005). Fault-tolerant kinematic controller design for underactuated robot manipulators, *ACSE 05 Conference*, pp. pp.117–123. Furui, S., Tazaki, S., Kotera, H. & Watanabe, Y. (1998). *Vector Quantization adn Signal*

*Compression*, CORONA PUBLISHING Co., Ltd. (in Japanese).

by a humanoid apprentice, *Proceedings of IEEE/RAS 2007 International Conference on*

waist yaw joint effectively to recover the effect of locked joint.

**4. Conclusion**

**5. References**

*Humanoid Robotics*.

the adaptation to using 100mm tool, in designed 3 DOF, 8 light blue circles are not on the designed trajectory and the generated trajectory(light blue line) is not matched the desired one(green line). It is to be sure that the generated trajectory represents nearer by the designed one than the changed one, satisfactory trajectory could not be obtained. Joint locking causes degrade of joint DOF, and the reachable area of end-effector has deteriorated. Even in this case, the generated trajectory is matched the optimum one acquired from exploration at all the 100 joint angle vectors, too.

So the robot generates a new motion by exploring in 4 DOF adding redundant waist yaw joint *θ*0. The new trajectory(blue line) in expanded 4 DOF is very nearer by the designed one than that of in 3 DOF. Because the generated trajectory is well matched the optimum one which is explored at all the 100 joint angle vectors, it is considered that some of the target positions could not be existed on reachable area even if the joint DOF was expanded to 4 DOF. It is expected that adding the other redundant joints will make the generated trajectory nearer and nearer. Average of position error is about 216mm on failure. The difference between the generated trajectory in 3 DOF and the designed one is about 30mm. The difference 7.4mm is observed by proposed method, which is accomplished about 97% similar trajectory with the desired one.

The observed acrual movements of the robot with the designed motion and the generated motions in each joint DOF are shown in Fig.8. The horizontal axis indicates the time of motion *t*. In 3 DOF, because the robot cannot bend the elbow, the robot cannot express the target

(a) The desigend motion

(b) The generated motion in 3 DOF with joint locking

(c) The generated motion in 4 DOF with joint locking

Fig. 8. The obsreved robot motions and trajectories

positions near the body. As the result, the generated trajectory was away from the body. On the other hand, in 4 DOF, in order to express the target positions on near the body, the robot was taking advantage of the redundant waist joint. We looked that robot used redundant waist yaw joint effectively to recover the effect of locked joint.
