䣔䣕䣌䢴䢲䢲䢻䣃䣅䢳䣎䢳䢯䢲䢵

不完全な知覚のセンサ同士の統合によるロボットの行動生成法○栗田英介 (東京農工大学) 里悠太 (東京農工大学) 小林祐一 (東京農工大学 / 理研 RTC)

Behavior generation for robots by integration of multiple sensors*Eisuke KURITA (Tokyo University of Agriculture and Technology),
Yuta SATO (Tokyo University of Agriculture and Technology),
Yuichi KOBAYASHI (Tokyo University of Agriculture and Technology / RIKEN RTC)
Abstract—
We propose a state estimation method for robots with incomplete perception. There is acase that cannot robots observe the state adequately for sensor information. For example, in a task of hand
position control with a manipulator, the hand cannot be seen if it is out of vision range of camera. Therobot estimates virtual state with diﬀusion-based learning. The propose method is veriﬁed by estimating avirtual state of mobile robot with vision range of camera.
Key Words: incomplete perception, state estimation, behavior generation

1.

はじめに

近年，ロボットは，産業用ロボット以外に，ペットロボットや掃除ロボット，介護ロボット，惑星探査ロボットなど様々な場で利用されることが期待されている．しかし，従来のように工場などの既知環境を主な活動範囲とし，組み立て作業などあらかじめ決められた行動を繰り返すようなロボットと同じ設計方法では，このようなロボットを実現することは難しい．そのため，状況に応じて柔軟な対応が可能なロボットを実現するためには，環境に応じてロボットが自律的に行動を決定する方法が必要である．そのアプローチとしてロボットが自身の経験から学習する方法が考えられる．
学習には多様な問題があるが，その中の 1 つにロボットの観測情報と行動の間の関係を学習する問題がある．
この関係を用いて，観測情報の望ましい変化を実現するための行動を求めることができる．
しかし，観測情報にはカメラの視野制限やセンサの測定範囲の限界等により，適切に観測が行えない場合がある．例えば，Fig.1 に示すようにロボットアームの手先位置をカメラを用いて観測することを想定した場
合，カメラの視野範囲外に手先位置が出てしまうと，手先位置が観測できなくなる．そのため，ロボットに学習を行わせるとき，センサが適切な観測情報を獲得できない状況が存在することを考慮する必要がある．
郷古らの提案した行動創発のための自己組織的学習
モデル [1] は，ロボットに搭載したセンサ情報をロボットの状態パターンとして観測し，ロボットに様々な行
observation
observational
range

cameracamera image
Fig.1 適切な観測が行えない例➨䢴䢹ᅇ᪥ᮏ兑兀儧儬Ꮫ఍Ꮫ⾡ㅮ₇఍凚䢴䢲䢲䢻ᖺ䢻᭶䢳䢷᪥ࠥ䢳䢹᪥凛

動を行わせ，行動前と行動後の状態パターンの差とその時の行動を対にしてモデルとして記憶させるものである．十分にモデルの記憶をさせた後，ロボットに目標となる状態パターンを与える．現在の状態パターンと目標パターンの差をとり，その差に一番近いモデルを選び，行動を生成する．これにより，徐々にロボットは状態を目標に近づけることが出来る．郷古らは，この手法を 2 輪走行ロボットに適用して，障害物回避運動や壁沿い走行運動等のシミュレーションを行っている．
三柳らはロボットに，ある環境中で目的に応じた作業をさせるために，ロボットが作業を行う環境に複数の視覚センサを設置した．これらのセンサから得られる情報を，ネットワークを通じてロボットに送信することで，ロボットに必要となる情報を補うという手法を提案した [2]．三柳らはこの手法で，移動マニピュレー
タによる対象物の把持や環境中の移動ロボットの自己推定位置の修正等を行っており，ロボットの活動範囲が限定された環境下での情報獲得において有効な手法であることを示している．
西村らは，複数のロボットが互いに情報を共有することで高精度の自己位置推定を行う方法を提案している[3]．この手法では環境中にランドマークというロボットの環境情報収観測のための目印をいくつか配置している．まず，カメラでランドマークのデータを獲得し，各ロボットはランドマーク位置の情報のみで自己位置推定を行う．次に自己の推定した位置情報を他のロボットと相互交換する．そして，得られた情報から他のロボットもランドマークと見なし，再度自己位置推定を行う．西村らはこの手法で，高性能な観測装置等を用いなくても，複数のロボットが互いに情報を共有することで高精度の自己位置推定を行えることを示している．
背景でも述べたとおり，環境情報の獲得には，適切に状態を観測できない状況が存在し，学習の際に誤った経験をロボットに蓄えてしまう恐れが存在する．[1]では，誤った状態パターンを観測しても，正常な状態パターンと同様にロボットに記憶させてしまう．対して，[2] では，誤った観測を防ぐため，センサを環境中に設置したが，その方法ではロボットの活動範囲を制限してしまうことになる．また，[3] では，複数のロボット䣔䣕䣌䢴䢲䢲䢻䣃䣅䢳䣎䢳䢯䢲䢵を協調行動させるため，協調行動を行わせるための複雑な制御則が必要となる．
そこで本研究では，複数のセンサをロボットに搭載することで，適切に観測が行えない状況を減らし，さらに，どのセンサも適切な観測が行えない場合には，ロボットに仮想的に観測値を推定をさせることで観測が行えない状況を無くし，目的達成のための行動生成を目指す．以上の 2 つを組み合わせてロボットの行動と観測情報の関係を獲得し，ロボットの行動生成を行わせる．提案する手法の利点としては，観測できない状況を防ぐための特別な機構や制御則を必要としないことである．そのため，設計者によるロボットのハードウエア設計コストを減らし，ロボットの適用範囲を拡大することができる．

不完全なセンサ同士の統合法

2.

2·1 問題設定
ロボットの状態空間を X とし，ロボットの状態を x ∈X ⊂ R2 ，複数のセンサによる観測を y 1 , y 2 , · · · , y h ∈R2 ，行動を u ∈ R2 とする．h はセンサの総数である．
ロボットは運動学や状態方程式など，自身の運動や観測に関するモデルを用いず，状態と各センサの観測は1 対 1 対応の関係が成り立っているものとする．セン
サにはそれぞれ観測範囲が存在し，範囲外の領域では適切な観測 y が得られない．また，範囲外かどうかはロボットは判断可能であるものとし，ノイズ等によるセンサ情報の不完全性は考慮しないものとする．
センサ i が適切な観測が行える状態空間の部分空間をX i ⊂ X とする．Fig.2 に示すように，観測 y 1 = (s1 , s2 )が観測可能範囲外の状態でも，観測 y 2 = (s3 , s4 ) では観測可能範囲内となる状態や，すべてのセンサが観測範囲外の状態も存在する．
ロボットに初期状態 xstart から目標状態 xgoal に遷移させる時，これら 2 つの状態は次式の関係が成り立つものとする．
xstart ∈ X , xstart ∈/Xixgoal ∈/ X , xgoal ∈ X jij(1)(2)

上式より，ロボットの初期状態では，センサ i は観測範囲内でセンサ j が範囲外．目標状態では，センサ jは観測範囲内でセンサ i は範囲外となる．初期状態にiあるときのセンサ i の観測を ystart，目標状態にあると

s2

observatio nal
range

s3
observed variable spaceof sensor number 2

observatio nal
range

s3

observed variable spaceof sensor number 1Fig.2 複数のセンサ空間の統合➨䢴䢹ᅇ᪥ᮏ兑兀儧儬Ꮫ఍Ꮫ⾡ㅮ₇఍凚䢴䢲䢲䢻ᖺ䢻᭶䢳䢷᪥ࠥ䢳䢹᪥凛

j間を観測範囲外まで仮想的に拡張し，ygoalに対応する
センサ i の仮想的な観測空間上での位置を目標とした制御を行う．遷移の途中で状態が x ∈ X j となったら，j
センサ j の観測を目標状態での観測 ygoalに遷移させる
行動をとる．
ロボットの行動は次式を用いて求める．

u = Jy−1 (yt+∆t − yt )(3)

Jy を観測 y に対するヤコビ行列と言い，正則行列であるとする．yt+∆t − yt は時刻 t での観測 yt から微小時
間 ∆t だけ行動 u を行ったときの観測 yt+∆t との変化量を表す．式 (3) より，目標に応じた望ましい観測の変化を実現する行動を求めることができる．しかし，ロボットの状態によっては搭載するすべてのセンサが適切な観測 y が得られない状況も存在する．その場合，式(3) のヤコビ行列を用いて観測 y を仮想的に推定する．
次節より，ヤコビ行列の獲得法，複数センサを用いた目標状態に遷移するための行動生成を示す．
2·2 観測範囲内のヤコビ行列の獲得法
時刻 t での観測 yt から行動 u を微小時間 ∆t だけ行い，観測が yt+∆t に変化した時，観測と行動の関係を次のように表す．
yt+∆t − yt = Jy u(4)このヤコビ行列 Jy を求めるため，y を離散化し 2 次元格子の a, b ∈ Z 番目の格子を (a, b) と表し，離散観測(a, b) に対応したヤコビ行列を Ja,b と定義して学習を行う．観測範囲内のヤコビ行列 Ja,b の学習は，式 (4) の両辺の二乗誤差を最小化する方法で行う．両辺の二乗誤差を E とし，次式に示す．

E=∥ {yt+∆t − yt − Ja,b u} ∥2∥ u ∥2(5)ここで ∥ u ∥2 は二乗誤差を正規化するために挿入している．二乗誤差 E を最小化するため，勾配法にもとづいて Ja,b を更新を次式で行う．

Ja,b ← Ja,b − cα1∂E∂Ja,b(6)

ここで c は学習率と言い，過度に Jy が変化するのを防ぐ定数である．α1 は離散観測値 (a, b) のヤコビ行列の学習回数に応じたガウス関数 exp(−d/K)，d はヤコビ行列の学習回数，K は定数である．このガウス関数 α1により，学習回数を重ねる度に更新する割合が小さくなっていく．

s4s4j
きのセンサ j の観測を ygoalとする．センサ i の観測空

s12·3 観測範囲外の状態のヤコビ行列の獲得法
Fig.3 のようなカメラ画像からロボットアームの手先位置を観測すると想定した場合，手先位置がカメラの視野範囲外に出ると，手先位置の観測情報が取得できなくなるため，観測範囲外の状態のヤコビ行列の更新が行えない．そこで，観測範囲外の状態での信号を仮想的に推定し，ヤコビ行列の学習を行う．
今，範囲外の状態で行動を q 回行い，再び範囲内の状態に戻ってきたと仮定する．q 回行動後のロボットが䣔䣕䣌䢴䢲䢲䢻䣃䣅䢳䣎䢳䢯䢲䢵s2

推定する観測 yJ は次式のようになる．

yJ =q∑(Jap ,bp up ) + y0s4

ここで，y0 は範囲外に出る直前に観測できた観測値，up は範囲外に出てから p 回目にとった行動，ap , bp はp 回目の離散化された観測値である．この時，再び観測できた観測値と観測範囲外のヤコビ行列を用いて仮想的に推定した観測値が等しくなる必要がある．整合性を持たせるため観測範囲内のヤコビ行列の学習同様に q 回行動に再び観測できた yr と推定した yJ の二乗誤差を最小にする方法で学習を行わせる．
∑q∥ {yr − y0 − p=1 (Jap ,bp up )} ∥2∑q
E=(8)∥ 1q p=1 up ∥2(9)Jap −1,bp + Jap +1,bp + Jap ,bp −1 + Jap ,bp +1(10)4これにより，ヤコビ行列同士に連続性が生まれ，解を一意に定めることが出来る．式 (9) と式 (10) を合わせた式を次式に示す．

Jap −1,bp + Jap +1,bp + Jap ,bp −1 + Jap ,bp +14∂E+cα2(11)∂Jap ,bp

こ こ で ，α2 は 学 習 回 数 に 応 じ た ガ ウ ス 関 数 1 −exp(−d/K) である．α1 , α2 を加えることにより，初め，連続性の重みを大きく整合性の重みを小さくしている．
更新を重ねるごとに連続性の重みは小さくなっていき，逆に整合性の重みは大きくなっていく．
camera image

actioncamera image q times camera image
actionyry0
Fig.3 適切な観測が行えない例➨䢴䢹ᅇ᪥ᮏ兑兀儧儬Ꮫ఍Ꮫ⾡ㅮ₇఍凚䢴䢲䢲䢻ᖺ䢻᭶䢳䢷᪥ࠥ䢳䢹᪥凛s1

initial state(a)

(b)

s1(c)

s3

Fig.4 複数のセンサ空間の結合

2·4 複数センサ空間の結合センサ i の観測変数空間を格子状に離散化し，各格子点を m, n ∈ Z と表す．各格子点 (m, n) には，i 以外のセンサの観測変数（仮想変数を含む）を次式のように記憶させる．
(i)
1(i)
2(i)
h(i)
ym,n
= [ym,n, ym,n· · · , ym,n]

(12)

k(i)

∂E
∂Jap ,bpこのような方法で仮想的な観測値に対するヤコビ行列を推定する方法の問題点として，整合性を満たす観測範囲外の観測値が無限に存在することが挙げられる．そのため，解を一意に定めることができない．そこで，解を一意に定めるため，Luo et al. が提案した拡散学習[4] を用いる．拡散学習とは，解が無限に存在する問題を解く際，格子上の空間的変化に対する観測行列の変化を最小にするという拘束条件をロボットに与え，無限に存在する解を一意に定める手法である．拡散学習の拘束を勾配法で更新式に直したものを次式に示す．

Jap ,bp ← α1

s3observational
range

観測範囲内のヤコビ行列の更新と同様，勾配法にもとづいて Jap ,bp の更新を次式で行う．

Jap ,bp ←s4(7)p=1

Jap ,bp ← Jap ,bp + cα1s2goal state

ここで，ym,n は格子点 (m, n) で得られるセンサ k の観測変数ベクトルを表す．ロボットが目標状態にある
とき，適切な観測が行えるセンサ j の目標状態にある
jときの観測 ygoalに最も近い値を記憶しているセンサ i∗の離散値 (m , n∗ ) を次式より求める．
jj(i)(m∗ , n∗ ) = arg min ∥ ygoal− ym,n∥m,n(13)

ロボットは前節で示した学習法により獲得したヤコビ行列を用いて，次式より行動を生成する．
jj
(J j )−1 γ ygoal − yt
if xt ∈ X j
 m,nj∥ ygoal− ytj ∥(14)u=ii
ym∗ ,n∗ − yti−1otherwise
(Jm,n ) γ i∥ ym∗ ,n∗ − yti ∥ここで yti , ytj は，時刻 t でのロボットの状態 xt でのセjiはセンサ i, j のヤ, Jm,n
ンサ i, j の観測値を表し，Jm,nコビ行列である．γ は遷移率と言い，センサ i の観測値が過度に変位する行動を生成するのを防ぐ定数である．
上式によって，状態が xt ∈/ X j のときは，センサ iの観測変数空間で現在の観測 yti からセンサ j が目標状j態にあるときの観測 ygoalに最も近い値を記憶している
センサ i の離散値 (m∗ , n∗ ) をセンサ i の目標観測値として行動を求める．状態が xt ∈ X j のときは，センサj の観測変数空間で現在の観測 ytj から目標状態にある
jときの観測 ygoalに遷移する行動を求める．

3.

ロボットアームを用いたシミュレーション

3·1 ロボットアームの条件設定
Fig.5 に示すように 2 リンクロボットアームを想定し，自身の手先位置 (x, y) を図中に示すカメラより観測する．ロボットに各関節角 (θ1 , θ2 ) の変化量を行動として与える．カメラには視野範囲の制限があり，手先が視野範囲外に出ると観測が行えなくなる．また，ロボットの手先には Fig.5 に示すように 2 つの距離センサ sl , srが θs だけ向きを変えて搭載されている．この距離セン
サは障害物までの距離に比例した数値を観測値として獲得できるとし，シミュレーション上では地面までの䣔䣕䣌䢴䢲䢲䢻䣃䣅䢳䣎䢳䢯䢲䢵yθ2observation ( x,y)0.55

200.50180.45160.40
14θ1120.30

sly [m]0.35
100.25

θs80.2060.15

x0
range sensor ( sl , sr )camera

40.10
20.05
00.4

0.5

0.6

0.7x [m]

0.8

0.9

00510
sr

1520

Fig.7 複数のセンサ空間の統合による遷移結果
Fig.5 シミュレーション条件

距離を 2 つの距離センサで獲得し，ロボットの状態を獲得する目的で使用するものとする．距離センサにも観測範囲の制限があり，距離が離れ過ぎるとある観測値を境に値の変化が止まるものとする．ロボットアー
ムの第 1 関節から第 2 関節までの長さと第 2 関節から手先までの長さをそれぞれ 0.6[m]，θs を 30[deg]，カメラの視野範囲を 0.25 ＜ x ＜ 0.5[m]，0 ＜ y ＜ 0.25[m]，距離センサの観測距離限界を 0.2[m] までとした．

3·2 カメラの視野範囲外にある手先位置の推定
カメラからの観測情報と行動の関係を学習させ，カメラの視野範囲外にある手先位置を推定できるかどうか検証を行った．Fig.6 に検証結果を示す．図中の×印
を手先の初期位置とし，赤線が実際のロボットの手先位置，青線がロボットが推定した手先位置の変化である．
カメラの視野範囲外に手先が出た状態でも，ロボットは視野範囲外の手先位置の推定が行えていることがわかる．実際の手先位置と推定した手先位置の誤差を比べると，1 回目の行動後は 6.03 × 10−4 [m]，2 回目の行動後は 9.83 × 10−4 [m]，3 回目の行動後は 3.71 × 10−3 [m]，再び視野範囲内に戻って来たときは 6.29 × 10−3 [m] の誤差がでた．このことから，推定を重ねるごとに誤差が大きくなることがわかる．
3·3 複数のセンサ空間の統合による行動生成
Fig.5 に示すカメラと距離センサの 2 つを用いてロボットに行動生成を行わせるシミュレーションを行った．カメラをセンサ 1，距離センサをセンサ 2 とし，初期状態1にあるときのセンサ 1 の観測を ystart= (0.44，0.25)，
2
目標状態にあるときのセンサ 2 の観測を ygoal= (2.2，3.84) とした．Fig.7 にシミュレーションの結果を示す．左図が手先位置の遷移を表した図，右図が距離センサの観測範囲内に入ってから観測の遷移を表した図である．最終的に距離センサの観測変数空間上における目標状態に遷移していることがわかる．手先位置の遷移方向が終盤で変化しているのは，行動の生成が距離センサ空間上で行われたためと考えられる．

4.

おわりに

本研究では，拡散学習にもとづいたヤコビ行列の推定により観測範囲外での観測変数を仮想的に推定し，仮想変数空間同士を組み合わせることで 1 つのセンサの観測範囲外への動作を実現し，目標状態に到達するための状態推定法および行動生成法を提案した．さらに，本提案手法を用いてロボットアームでのシミュレーションを行った．その結果，実際の観測の変化と推定した観測の変化は同じ傾向を示した．これにより，目的に応じた望ましい観測情報の変化を実現する行動を求めることが可能になる．また複数のセンサ空間の統合による行動生成の検証から，本提案手法が有効であることを確認した．
今後の展望として，実機を用いての本提案手法の検証を考えている．実機を用いる場合，今回は考慮に入れていなかったノイズによるセンサの観測誤差が含まれる問題が出てきてしまう．そのため，より実用的な問題に研究を拡大する予定である．

0.040
0.035
0.003

y [m]

0.025
0.020
0.015
0.010
0.005
00.48

0.49

0.50

0.51

x [m]

0.52

0.53

0.54

0.55

Fig.6 実際の手先位置と推定した手先位置の比較図➨䢴䢹ᅇ᪥ᮏ兑兀儧儬Ꮫ఍Ꮫ⾡ㅮ₇఍凚䢴䢲䢲䢻ᖺ䢻᭶䢳䢷᪥ࠥ䢳䢹᪥凛[1] 郷古学, 登美直樹, 長野智晃, 伊藤宏司: ”行動創発のための自己組織的学習モデル”. 第 20 回自律分散システム・シンポジウム資料,pp.91-94,2008.
[2] 三柳秀人, 永谷圭司, 五福明夫: ”自律移動ロボットのための環境埋め込み型視覚センサシステムの構築”. 第 10 回 ロボティクスシンポジア予稿
集,pp.543-548,2005.
[3] 西村能輝, 堀浩一: ”相互の観測を用いた自己位置推定”. 第 22 回人工知能学会全国大会,3J2-1,2008.
[4] Zhiwei Luo, Hideyuki Ando, Shigeyuki Hosoe,Keiji Watanabe and Atsuo Kato:”Spatial generalization of optimal control forrobot manipilators”. Journal of Robotics andMechatronics,Vol.13,No.5,pp.533-539,2001.