多機能型水中ロボットの統一的動作計画について○白石耕一郎 (九州大学) 木村元 (九州大学)

On a Uniﬁed Motion Planning for a Multifunctional Underwater Robot*Koichiro SHIRAISHI (Kyushu University), Hajime KIMURA (Kyushu University)
Abstract— The ﬁeld of underwater robotics is currently enjoying a period of high interest and growth.
Application for such robots includes exploration of deep sea environment, monitoring of subsurface structures, and biological surveys. Authors have been developing a multifunctional underwater robot which canaccomplish various missions, e.g., reaching task and generating thrust force task in ﬂuid. It is necessary for a
multifunctional underwater robot to ﬁnd optimal motions for various missions. A new uniﬁed motion planning algorithm for a multifunctional underwater robot has been presented in this paper. Our approach is tomodel optimal motion planning problems as a ﬁnite horizon discrete time Markov Decision Process. Optimalmotion planning is generated by Dynamic Programming. The eﬀectiveness of the proposed algorithm has
been veriﬁed by numerical simulation.
Key Words: Multifunctional Underwater Robot, Uniﬁed Motion Planning, Fluid Drag, Markov DecisionProcess, Dynamic Programming

1.

緒言

近年，海洋調査や海底資源探索において様々な水中ロボットが利用されており，利用範囲の拡大・作業効率の向上のために更なる高性能化が要求されている．
現在，海中探索やモニタリングにおいて実用化されている水中ロボットとして，Remotely Operated Vehicle(ROV) や Autonomous Underwater Vehicle (AUV) が開発され，様々な成功事例が報告されている [1]．これらの水中ロボット以外にも，魚型ロボットや蛇型ロボットなどが開発されており，実用化に向けて研究が進められている [2][3]．ROV のような水中ロボットにはマニピュレータが装備されており，サンプリングや障害物の排除などの作業を行うための有用な手段となっている．また，多自由度マニピュレータは自由度の高さを活かすことで，複数の障害物が存在する環境下においても各リンクが障害物との衝突を避け，エンドエフェクタを任意の目標位置に到達させることができ，リンクを巻きつけて物体を握るなどの複雑な作業も可能である．さらに高い冗長性をもつので，もし１つのリンクが故障したとしても他のリンクで故障したリンクの機能を補うことで，故障後も作業を続けることが可能である．著者らは水中ロボットの手足として上記のような特長をもつ多自由度マニピュレータを用いることで，水生昆虫のゲンゴロウのように歩行・遊泳が可能な多機能型水中ロボットの開発を目指している．
しかしながら，水中ロボットを動かすためには人間が予め動作をプログラムする必要がある．生物を模倣したロボットは，対象とする生物の動作を分析し，そのデータから動作をプログラムする必要があるため，水中ロボットの開発に多大な時間が必要となる．さらに，タコのように複雑な動きをし，手足を器用に使って動くような動作を人間が予めプログラムすることは非常に困難である．また，従来の動作計画手法は作業に応じて動作計画アルゴリズムを作成する必要があり，様々な作業を行う多機能型水中ロボットに用いる場合には，作業の数だけアルゴリズムが必要となるといった問題が生じる．そこで，本研究では作業に目的に応じて報酬を設定するだけで，様々な作業の最適な動作計画を獲得することが可能な統一的動作計画アルゴリズムを開発する．多機能型水中ロボットの動作計画問題をマルコフ決定過程としてモデル化し，動的計画法を用いることで，その作業に最も適した動作を獲得することが可能である．
本論文の構成は，まず第 2 節で多自由度水中マニピュレータを用いた多機能型水中ロボットについて説明し，第 3 節で動的計画法を用いた統一的動作計画アルゴリ
ズムについて述べる．そして，第 4 節において，水中環境におけるリーチング動作と推進力獲得動作のシミュレーションに提案アルゴリズムを適用し，その有用性を検証する．第 5 節で本研究のまとめと今後の課題について述べる．

2.

多機能型水中ロボットの動作計画問題

本研究では，多機能型水中ロボットの動作計画として，リーチング動作と推進力獲得動作の動作計画問題を取り扱う．
End Effector

Uniform Flow

Fluid Drag

Thrust Force

Manipulator
TargetFig.1 Reaching task and Generating thrust force task

リーチング動作は，流体抗力によるエネルギー消費をできるだけ小さくし，障害物と衝突することなくエンドエフェクタを目標座標に到達させる動作計画問題を取り扱う．一方，推進力獲得動作では，マニピュレータを搭載した台車型水中ロボットを考える．この水中ロボットはマニピュレータを動かすことで流体抗力を発生させ，その力によって台車を前進させることができる．本研究では，台車型水中ロボットが前進する距離を最大とする動作計画を推進力獲得動作の動作計画問題として取り扱う．

y 方向

2·1 マニピュレータの構成
リンクの形状は円柱とする．関節はリンクと比べ十分に小さく，流体抗力の計算上無視できるとする．マニピュレータの座標系を Fig.2 のように定める．

Mi = Mi+1 + Ti + Fx,i+1 li cos θi − Fy,i+1 li sin θi (7)Fy,i = Fy,i+1 − fi sin θi(6)θ 方向vyθi+1θi r iθiy
θ3Tipθ

Joint_3

θ2l3

Joint_2xMi+1

θi-1

Ti

Link_3fiFi+1l2

θ1Link_2

Joint_1

Fig.3 Forces acting on a link

l1x

Link_1

2·3

Fig.2 Conﬁguration of three-link manipulator

ここで，li は i 番目のリンクの長さ，θi は i 番目のリンクの角度とする．マニピュレータの姿勢を表す各リンクの角度をベクトル S として次式のように定める．

S = (θ1 , θ2 , · · · , θi , · · · , θn )(1)

また n 番目のリンクの先端がエンドエフェクタの位置となり，その座標は次式で与えられる．

xT ip =n∑i=1

li sin θi ,yT ip =n∑li cos θi(2)

リーチング動作の定式化

本研究では，海中環境におけるリーチング動作の動作計画問題を取り扱うため，一様流によって生じる流体抗力の影響を考慮しなければならない．そこで，エンドエフェクタが目標座標に到達するまでに流体抗力によって損失するエネルギーを最小にする動作計画問
題を取り扱う．姿勢変化において流体抗力から受けるエネルギーは，関節にかかるトルクとリンクの動作角度によって定まる．本動作計画問題では，このエネルギーをコスト関数と定める．姿勢 Sa から隣接する姿勢
Sb に変化するときにかかるコストは次のように近似的に表される．

i=1

他のリンクの座標も (2) 式と同様に求めることができる．
マニピュレータが動き始める姿勢を初期姿勢，エンドエフェクタが目標座標に到達する姿勢を目標姿勢とし，初期姿勢から目標姿勢になるまでのマニピュレータの姿勢の列をベクトル列 P として次式で表現する．

P = (Sinit , S2 , · · · , Sj , · · · , Send )(3)

ここで Sinit は初期姿勢，Send は目標姿勢，j は姿勢変化の回数，Sj は j 番目の姿勢を意味している．

2·2 多自由度水中マニピュレータにかかる流体抗力
本研究では，各リンクはゆっくりとした速度で動くと仮定し，マニピュレータに作用する流体抗力を求めるために次式の Morison 式を用いる [4]．
πdu1
f = Cd ρDu|u| + Cm ρ D224dt(4)

D は円柱の直径，Cd は抗力係数，Cm は質量係数，uは流体速度，ρ は流体密度である．またリンクの動作速度は十分に小さいので (4) 式の右辺の第 2 項は無視する．(4) 式を用いて，各リンクにかかる流体抗力は次のように表される．
x 方向
Fx,i = Fx,i+1 + fi cos θi(5)

Cost(Sa , Sb ) =n ∫ θS ,i∑bi=1

Mi dθi + ∆E(8)θSa ,i

ここで n はマニピュレータのリンク数，θS,i は姿勢 Sの i 番目のリンクの角度，∆E はマニピュレータが流体抗力に関係なく動くだけで消費するエネルギーを表す．
よって，初期姿勢から目標姿勢になるまでの動作計画の総コストは (8) 式を用いて次のように定められる．
|P|−1

T otal Cost(P) =∑Cost(Si , Si+1 )

(9)

i=1

本研究では流体抗力の影響ができるだけ小さい動作計画を求めようとしているので，リーチング動作の最適動作計画問題は (9) 式の総コストを最小化する最適化問題として次のように定式化される．

Optimal P lanning = min T otal Cost(P)P∈PAll(10)

ここで PAll とは本問題において考えられる全ての動作計画の集合である．(10) 式を満たす動作計画 P が最適動作計画となる．ただし，本研究では流体抗力によるマニピュレータの損失エネルギーを最小とすることを考え，潮流から得られる正のエネルギーは無視する．

2·4 推進力獲得動作の定式化
本研究では，台車型水中ロボットがマニピュレータに作用する流体抗力を利用して前進する推進力獲得の動作計画問題を取り扱う．台車型水中ロボットは地面にレールで拘束してあり，鉛直方向には動かないとする．台車型水中ロボットの運動方程式は x 軸方向，つまり前進後進方向についてのみ考慮する．また，本研
究ではモデルの簡略化のために付加質量効果は考慮していない．各リンクと台車型水中ロボットの本体に作用する流体抗力を考慮すると，マニピュレータ台車の運動方程式は次式のようになる．
M ẍ = Fcarrige +n∑

Fx,i(11)i=0

ここで，M は台車型水中ロボットの質量，Fcarrige は台車に働く流体抗力，Fx,i は i 番目のリンクにかかる流体抗力の x 軸方向成分，n はマニピュレータのリンク数である．(11) 式で表される台車型水中ロボットの前進距離を最大にする動作計画が推進力獲得動作における最適動作計画となる．

3.

統一的動作計画アルゴリズム

3·1 マルコフ決定過程としてモデル化
本研究では，多機能型水中ロボットの動作計画問題をマルコフ決定過程としてモデル化する [5]．マニピュレータが各リンクを動かしながら，姿勢を変えていく
様子は Fig.4 のようなネットワークで表現できる．

f(3,2)

f(2,1)
state2f(1,0)

f(0,3)

state1f(6,1)

f(4,3)

f(0,4)

f(6,0)
state0f(4,0)

f(0,6)

f(4,5)

f(6,5)
state6f(5,4)

f(5,6)s′ ∈S

ここで，S は状態の集合，A は行動の集合，γ は割引率である．動作計画問題における最適方策は，次節で述
べる動的計画法を用いて (12) 式を解くことによって得られる．つまり，作業に応じて報酬を設定し，Bellman方程式を解くだけで，その作業の最適な動作計画を得ることが可能である．

3·2 動的計画法
動的計画法は，R.Bellman によって提案された最適化問題の解法の一種であり，問題に微分可能性などの特別な条件を必要としない適用範囲の広い手法である[6][7]．本研究では，動的計画法のひとつである価値反復を用いて動作計画問題の最適方策を求める．価値反復は，以下の手順で実行される．
1. 全ての s において V (s) の値を初期化．V (s) の初期値を V0 (s) と表す．
2. 全ての s に対して以下を実行 (k = 1, . . .)．
∑Vk (s) ← max
P (s′ |s, a) (R(s′ |s, a) + γVk−1 (s′ ))a∈A4.

state3f(3,0)
f(3,4)

f(0,1)
f(1,6)a∈As′ ∈S

3. 全ての s ∈ S において計算した |Vk (s) − Vk−1 (s)|の最大値が任意の小さな値 δ 未満となるまで 2. を繰り返し．最終的に得られた最適な状態価値関数に対してグリーディな方策が最適方策となる．

f(2,3)

f(1,2)

目的関数の値を報酬 R(s′ |s, a)，状態価値関数を V (s)とする．状態価値関数 V (s) は，状態 s において方策 πに従って行動した場合に得られる期待報酬を表す．マルコフ決定過程では，最適な状態価値関数 V ∗ (s) において次式の Bellman 方程式が成り立つ．
∑V ∗ (s) = maxp(s′ |s, a) (R(s′ |s, a) + γV ∗ (s′ )) (12)state4state5

Fig.4 State transition network of a multifunctional
underwater robot

ネットワークのノードはマニピュレータの姿勢，矢印の方向が姿勢変化の方向，f (si , si+1 ) は動作計画問題における目的関数である．リーチング動作の場合は損失エネルギー，推進力獲得動作の場合は前進距離が目的関数となる．ここで，状態遷移と目的関数は現在の状態にのみ依存し，それ以前には依存しないというマルコフ性が成立すると仮定すると，本問題はマルコフ決定過程として考えることができる．そして，マニピュレータの姿勢を状態 s，姿勢変化における各リンクの動作を行動 a，状態 s において行動 a を選択し状態 s′への遷移する確率を p(s′ |s, a)，その状態遷移における数値実験

本研究で提案する手法を用いて，リーチング動作と推進力獲得動作の数値実験を Fig.5 の設定で行った．リー
チング動作では，4 リンクマニピュレータを用いる．リンクの形状を円柱，li = 0.7[m], Di = 0.2[m], Cd =1.17, ρ = 1.023, |u| = 2.0[m/s], ci = 1[◦ /s]，リンクの可動角度を θlimit = ±90◦ とする。また，状態空間を量子化するために可動角度を 11 分割する．一方，推進力獲得動作では，3 リンクマニピュレータを用いる．リンクの形状は四角柱，li = 0.5[m], Di = 0.2[m], Cd =2.07, ρ = 1.023，リンクの可動角度を θlimit = ±60◦とし，可動角度を 15 分割する．計算機環境は，CPU：
Core2Duo E4500 2.2GHz，Memory：2038MB，OS：Windows，プログラム言語：JAVA である．
Initial Posture

Initial Posture

Uniform Flow
Goal PostureFig.5 Numerical simulation settings for a reachingtask and a generating thrust force task

4·1 リーチング動作の数値実験結果
Case1) 障害物が存在しない場合
Case1 では障害物が存在せず，図の左方向に一様流が流れている条件で数値実験を行った．Fig.6 は得られた最適動作を 2 段階に分けて示している．Fig.6 から分かるように，最短時間で到達するために動かす角度を最小とした動作ではなく，一様流を利用して損失エネルギーを小さくして目標座標に到達する動作を獲得している．

抗力が前後の両方向への推進力となるからである．さらに効率良く前進させるためには，ブレーキを搭載し，後進しないようにする方法が考えられる．

Fig.8 A numerical simulation result of generating
thrust force task. Lefthand side: A advancing
motion. Righthand: A reverse motion
ｘ [m]
0.03
0.02

Fig.6 Optimal motion of reaching task (Case1)

0.010

Case2) 障害物が存在する場合
Case2 では障害物が存在し，図の上方向に一様流が流れている条件で数値実験を行った．Fig.7 は数値実験で得られた最適動作を 2 段階に分けて示し，Table.1 はCase1 と Case2 のコスト関数の値と計算時間を示している．Fig.7 より，障害物に衝突せずに目標座標に到達する動作を獲得しているのが分かる．さらに，Case2 の動作でも障害物を避けつつ，一様流の流れを利用した動きをしている．しかし，Case2 では障害物との衝突判定が動作計画アルゴリズムに加わるため，Case1 と比べ計算時間が長くなっている．

‑0.01
0100200

300 time [s]Fig.9 Time series graph for x coorcinate value of acarriage type underwater robot

5.

結言

本研究では，多機能型水中ロボットの動作計画問題をマルコフ決定過程としてモデル化し，動的計画法を用いることで 1 つのアルゴリズムで様々な作業の動作計画が可能な統一的動作計画アルゴリズムを開発した．
そして，リーチング動作と推進力獲得動作の数値実験を通して提案アルゴリズムの有用性を検証した．今後の課題として，実機を作成し，水槽実験を通して提案手法の有用性を検証することが挙げられる．また，高次元問題において生じる状態数の爆発を回避した動的計画法アルゴリズムの開発が必要である．

謝辞
Fig.7 Optimal motion of reaching task (Case2)
Table 1 Simulation results of reaching task

Cost Function [J]Calculate Time [s]Case10.00479

526

Case20.00833

731

4·2 推進力獲得動作の数値実験結果
一様流が存在しない水中環境下において推進力獲得動作の数値実験を行った。Fig.8 は獲得した最適動作を示しており，Fig.9 は獲得した動作におけるロボットの位置の x 座標の時系列を示している．数値実験の結果，Fig.8 と Fig.9 で示されるような前進と後進を繰り返しながら前進する動作を獲得した．このような動作となる理由は，マニピュレータを動かすことで生じる流体

本研究の一部は，笹川科学研究助成に基づいて実施されたことを付記し，関係各位に感謝の意を表します．

参考文献[1] 浦 環, 高川 真一: “海中ロボット総覧”，成山堂書店,
1994.
[2] 加藤 直三: “アクアバイオメカニズム研究の海洋工学への応用”，第 16 回海洋工学シンポジウム，pp.131-138,2001.
[3] 横山 健，松尾 貴之，石井 和男: “多関節型水中ロボットの開発” 第 8 回計測自動制御学会 システムインテグ
レーション部門講演会, pp.39-40, 2007.
[4] 日本造船学会海洋工学委員会性能部会: “実践 浮体の流体力学 後編”, 実験と解析，成山堂書店，2003.
[5] R.S.Sutton, A.G.Barto: “Reinforcement Learning:
An Introduction”, Bradford Books，1998.
[6] D.P. Bertsekas and J.N. Tsitsiklis: “Neuro-DynamicProgramming”, Athena Scientiﬁc, 1996.
[7] Abhijit Gosavi: “Simulation-Based Optimization”,
Kluwer Academic Publishers, 2003.