【論文メモ】How to select and use tools? : Active Perception of Target Objects Using Multimodal Deep Learning (ICRA2021)

# はじめに
* 著者：Namiko Saito, Tetsuya Ogata, Satoshi Funabashi, Hiroki Mori and Shigeki Sugano (Waseda University)

* 論文：https://arxiv.org/pdf/2106.02445.pdf

* **Best Paper Award** of Cognitive Robotics in ICRA2021 IEEE Robotics and Automation Letters 2021

<iframe width="560" height="315" src="https://www.youtube.com/embed/utYuPuYO_A0" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

以下、画像に関しては特に断りがない場合、論文中の図・表を引用しています。

# 概要
* 物体の移し替えタスクにおける，道具の選択と操作のための動作を生成するDNNモデルの提案
* 能動的な知覚から得たマルチモーダル情報から，未知の物体の外在的・内在的な特性を認識
* 対象物体に応じた道具の選択とその操作が可能に


# 背景
* 日常的な作業を行う際に，適切な道具を選択して使用することは，生活支援ロボットを導入する上で重要な機能
    * 例えば，食材の移し替えタスク

* 既存研究では，対象物体への適応性が限られていた
    * 未知の物体に対応できない
    * 新たな物体に対応するためには，制御システムの再設計が必要

能動的に対象物体の特性を知覚して，対象物体に応じた道具の選択と操作を実現したい

# 食材の移し替えタスク：Active Perception ＋ Motion Generation
### Active Perception
* 木べらで鍋の右端から左端までを往復して攪拌(固定動作)
* 画像とセンサデータから対象物体の外在的・内在的特性を認識
### Motion Generation
* 適切な道具を選択し，適切な軌道を決定
* リアルタイムで動作を生成


# 提案手法
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1396504/e7a5e6b3-22ae-4505-2831-809057304811.png)
1. Experience: Collect data
    * 手動操作で能動的知覚と動作生成を行い，感覚運動データを収集
2. Training DNN model
    * 収集したデータを使用してDNNモデルの学習
3. Evaluation experiments
    * 未知の対象物体に対する能動的知覚を行った後，学習したモデルで動作生成の評価を行う

### DNNモデル：CAE + MTRNN
* 画像の特徴を抽出するConvolutional Autoencoder(CAE)と，次のステップの動作を生成するMultiple Timescale Recurrent Neural Network(MTRNN)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1396504/fe6539c4-f23f-9265-9ad4-dcf5c55bb55c.png)

### Convolutional Autoencoder (CAE)
* カメラ画像から特徴量を抽出

* 入力と出力が同じになるように学習
    * $E = 0.5 \sum (y_i - x_i)^2$
        * $x$：入力データ
        * $y$：出力データ
* 全14層の中から，次元数が最も少ない中間層(第7層)から画像特徴量を抽出
* 36,864次元(128×96×3)のデータから15次元に圧縮
* epochs：1000

### Multiple Timescale Recurrent Neural Network (MTRNN)
* 現在の状態データから次のステップを予測
* 時定数の異なる3種類のノードで構成
    * Slow context (Cs) nodes
    * Fast context (Cf) nodes
    * Input-Output (IO) nodes
* 時定数の大きいCsノードはデータシーケンスを学習し，時定数の小さいCfは詳細なmotion primitivesを学習
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1396504/2b8ab13b-6985-069b-6425-fe91fecb9588.png)

#### Forward calculation
* $t$ステップにおける出力$y(t)$
    * $u_i(t) = (1-\frac{1}{\tau_i})u_i(t-1) + \frac{1}{\tau_i}[\sum_{j \in N}w_{ij}x_j(t)]$
    * $y_i(t) = \tanh (u_i (t))$
        * $x_j(t)$：ニューロン$i$からニューロン$j$への入力
        * $\tau_i$：ニューロン$i$の時定数
        * $u_i(t)$：$t$ステップにおけるニューロン$i$の内部値
* $t+1$ステップにおける入力$x(t+1)$
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1396504/4cd91b4e-f662-68c9-e9de-479108169f4a.png)
        * $T_𝑖(𝑡+1)$：$t+1$ステップにおける感覚運動データ
        * $\alpha (0≤ \alpha ≤1)$：feedback rate

#### Backward calculation
* Back propagation through time (BPTT)
    * $E = \sum_i \sum_{i \in IO}(y_i(t-1)-T_i(t))^2$
    * $w_{ij}^{n+1} = w_{ij}^{n} - \eta\frac{\partial E}{\partial w_{ij}^{n}}$
        * $\eta$：learning rate (=0.0001)
* Cs層の初期ステップ値Cs(0)を潜在空間として機能させるために，以下のように更新
    * $Cs_{i}^{n+1}(0) = Cs_{i}^{n}(0) - \eta\frac{\partial E}{\partial Cs_{i}^{n}(0)}$




# 実験設定
* 道具
    * turner
    * ladle
* Train
    * 6種類×2種類の量(1or2block，300or600ml)×4回＝48個の時系列データ
* Test
    * 9種類(1block，600ml)

* 成功：道具を落としたり食材をこぼしたりせず，1block or 50ml移すこと

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1396504/7f759579-3e9c-7118-e6b8-3260c43f2aea.png)

# 定量的評価
### 潜在空間Cs(0)の主成分分析
* PC2(寄与率32.07%)は適切な道具を示し， PC3(寄与率8.57%)は道具の操作性を示している
    * PC1は食材の色に関係（図示せず）
* 未学習の物体の特性を理解
    * 牛乳と米はなめらかで重い特性

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1396504/dcc313e2-2ac9-8142-e318-85e16c70960d.png)

### 物体の特性に応じた動作生成
* パンの場合，ターナーを小さく傾けて持ち上げる
* 牛乳の場合，お玉を深く傾けて持ち上げる

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1396504/c903e598-ab31-4e5d-6fe5-f13c2079cc0e.png)

### リアルタイムの動作調整
* 物体や状況に応じてモーターの角度や握力をリアルタイムに調整している
    * 実線：牛乳(未学習)，破線：米(学習)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1396504/0f34900b-33a4-1405-a619-8ed822ce20ad.png)

# 定量的評価
### 道具の選択や把持は高い成功率
* 物体の持ち上げや移動について，クロワッサン，オレンジジュース，炒りぬかの成功率が低かった
    * 鍋と同じような色をしていたため，位置の認識が難しかったのでは

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1396504/dbd612a9-b076-efae-4ca7-88e5ea85d66c.png)

### マルチモーダル情報の組み合わせによる考察
* 道具の把持成功率は「image＋tactile」の方が「image＋force」よりも高い
    * 触覚センサデータが道具把持に寄与
* 食材の持ち上げと移動の成功率は「force＋tactile」では0%
    * 物体の外在的特性を知覚するには画像データが必要
* 最終的な成功率は「image＋force」の方が「image＋tactile」よりも高い
    * 力覚データは物体の内在的特性の知覚に貢献



![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1396504/7537596e-5a1b-a834-3e3f-67e44982d0cc.png)




# reference