rrtを用いて学習する ニューラルネットワークによる パス...

12
山下 貴大 35回 日本ロボット学会学術講演会 九州工業大学大学院工学府 機械知能工学専攻 RRTを用いて学習する ニューラルネットワークによる パスプランニング 西田 九州工業大学大学院工学研究院 機械知能工学研究系

Upload: others

Post on 21-Nov-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: RRTを用いて学習する ニューラルネットワークによる パス ...lab.cntl.kyutech.ac.jp/~nishida/paper/2017/RSJ3I3-06ppt.pdfRRT + 多層ニューラルネットワーク

山下 貴大

第35回日本ロボット学会学術講演会

九州工業大学大学院工学府 機械知能工学専攻

RRTを用いて学習するニューラルネットワークによる

パスプランニング

西田 健九州工業大学大学院工学研究院 機械知能工学研究系

Page 2: RRTを用いて学習する ニューラルネットワークによる パス ...lab.cntl.kyutech.ac.jp/~nishida/paper/2017/RSJ3I3-06ppt.pdfRRT + 多層ニューラルネットワーク

1. 背景と目的

障害物が存在する環境におけるロボットの軌道計画(パスプランニング)

自律走行ロボット

産業用ロボット

サービスロボット

様々なロボットにおいて重要な技術

様々な手法

一長一短あり

ダイクストラ法 RRT (Rapidly-Exploring Random Trees)ポテンシャル法

機械学習 ニューラルネットワーク(NN)

Page 3: RRTを用いて学習する ニューラルネットワークによる パス ...lab.cntl.kyutech.ac.jp/~nishida/paper/2017/RSJ3I3-06ppt.pdfRRT + 多層ニューラルネットワーク

RRT +多層ニューラルネットワーク

1. 背景と目的

RRT(学習不要だが不安定) NN(安定だが学習が重い)

制約条件を伴う軌道計画が得意.平滑化処理で品質の高い軌道生成.同一の始点と終点の組に対して

生成される軌道が変動.

学習後には高速に軌道を生成.同一の始点と終点の組に対して同一の軌道が生成される.学習に多数の教師つきデータが必要.

1. 様々な組み合わせの始点と終点を与えRRTで軌道を大量に生成.

2. 多層ニューラルネットワーク(MLN: Multi Layerd Neural Network)で学習.3. 回帰的に中間点のみを想起する戦略.

提案ポイント

統合により短所を克服!

Page 4: RRTを用いて学習する ニューラルネットワークによる パス ...lab.cntl.kyutech.ac.jp/~nishida/paper/2017/RSJ3I3-06ppt.pdfRRT + 多層ニューラルネットワーク

2. 提案手法

様々な組み合わせの始点と終点を与えRRTで軌道を大量に生成 (データセットの作成)1

RRTで軌道を生成(障害物を0.1 [m]大きく見積もる)

生成経路から中間の三点を抽出

望ましい軌道を選別

軌道生成の例

経路の概略図

𝒙𝒙𝑎𝑎(𝑛𝑛)

𝒙𝒙𝑠𝑠(𝑛𝑛)

𝒙𝒙𝑔𝑔(𝑛𝑛)

𝒙𝒙𝑏𝑏𝑏(𝑛𝑛)

𝒙𝒙𝑏𝑏𝑏(𝑛𝑛)

Page 5: RRTを用いて学習する ニューラルネットワークによる パス ...lab.cntl.kyutech.ac.jp/~nishida/paper/2017/RSJ3I3-06ppt.pdfRRT + 多層ニューラルネットワーク

2. 提案手法

多層ニューラルネットワーク(MLN: Multi Layerd Neural Network)で学習2

𝒙𝒙𝑎𝑎(𝑛𝑛)

𝒙𝒙𝑠𝑠(𝑛𝑛)

𝒙𝒙𝑔𝑔(𝑛𝑛)

𝒙𝒙𝑠𝑠(𝑛𝑛) 𝒙𝒙𝑔𝑔

(𝑛𝑛)

𝒙𝒙𝑎𝑎(𝑛𝑛)

MLNモジュール

始点と終点を入力すると中間点を想起

Page 6: RRTを用いて学習する ニューラルネットワークによる パス ...lab.cntl.kyutech.ac.jp/~nishida/paper/2017/RSJ3I3-06ppt.pdfRRT + 多層ニューラルネットワーク

𝒙𝒙𝑎𝑎(𝑛𝑛)

𝒙𝒙𝑠𝑠(𝑛𝑛)

𝒙𝒙𝑔𝑔(𝑛𝑛)

2. 提案手法

回帰的に

中間点のみを想起する戦略3

MLNモジュール 𝑁𝑁𝑏

MLNモジュール 𝑁𝑁𝑏

MLNモジュール 𝑁𝑁3

𝒙𝒙(𝑛𝑛) =𝒙𝒙𝑠𝑠

(𝑛𝑛)

𝒙𝒙𝑔𝑔(𝑛𝑛)

�𝒙𝒙𝑎𝑎(𝑛𝑛)

𝒙𝒙3(𝑛𝑛) =

�𝒙𝒙𝑎𝑎(𝑛𝑛)

𝒙𝒙𝑔𝑔(𝑛𝑛)𝒙𝒙𝑏

(𝑛𝑛) =𝒙𝒙𝑠𝑠

(𝑛𝑛)

�𝒙𝒙𝑎𝑎(𝑛𝑛)

�𝒙𝒙𝑏𝑏𝑏(𝑛𝑛) �𝒙𝒙𝑏𝑏𝑏

(𝑛𝑛)

𝒙𝒙𝑎𝑎(𝑛𝑛)

𝒙𝒙𝑠𝑠(𝑛𝑛)

𝒙𝒙𝑔𝑔(𝑛𝑛)

𝒙𝒙𝑏𝑏𝑏(𝑛𝑛)

𝒙𝒙𝑎𝑎(𝑛𝑛)

𝒙𝒙𝑠𝑠(𝑛𝑛)

𝒙𝒙𝑔𝑔(𝑛𝑛)

𝒙𝒙𝑏𝑏𝑏(𝑛𝑛)

始点と終点を入力すると軌道の中間点を回帰的に想起

単純な環境:少ないモジュール複雑な環境:モジュールを追加

ポイント!

Layered-MLN

Page 7: RRTを用いて学習する ニューラルネットワークによる パス ...lab.cntl.kyutech.ac.jp/~nishida/paper/2017/RSJ3I3-06ppt.pdfRRT + 多層ニューラルネットワーク

c

3. シミュレーション環境(二次元平面)

中間層のユニット数 : 30

中間層数 : 4層ミニバッチ : 50学習回数 : 20中間層の活性化関数 : ReLU関数誤差関数 : 平均二乗誤差学習率の減衰 : Adam法フレームワーク : Chainer

構築モデル

テスト環境の例

Page 8: RRTを用いて学習する ニューラルネットワークによる パス ...lab.cntl.kyutech.ac.jp/~nishida/paper/2017/RSJ3I3-06ppt.pdfRRT + 多層ニューラルネットワーク

4. 二次元平面でのシミュレーション

RRTによる経路生成結果start

goal

ランダムに生成した始点、終点の組に対して軌道生成

データセットの作成

Page 9: RRTを用いて学習する ニューラルネットワークによる パス ...lab.cntl.kyutech.ac.jp/~nishida/paper/2017/RSJ3I3-06ppt.pdfRRT + 多層ニューラルネットワーク

4. 二次元平面でのシミュレーション

Layered-MLNの学習結果

生成された経路(100テストデータ)

• 学習した環境.• 始点と終点を100通り与えた.

goal

start

• 同一の始点と終点の組に対しては必ず同

じ軌道が想起されることを確認.• 衝突しない軌道が生成できることを確認.

項目 RRT MLN

平均軌道生成時間 [ms] 1.78 2.08

障害物に接触した軌道の数 0 0

Page 10: RRTを用いて学習する ニューラルネットワークによる パス ...lab.cntl.kyutech.ac.jp/~nishida/paper/2017/RSJ3I3-06ppt.pdfRRT + 多層ニューラルネットワーク

4. 二次元平面でのシミュレーション

他の環境での実験結果

Page 11: RRTを用いて学習する ニューラルネットワークによる パス ...lab.cntl.kyutech.ac.jp/~nishida/paper/2017/RSJ3I3-06ppt.pdfRRT + 多層ニューラルネットワーク

4. 二次元平面でのシミュレーション

他の環境での実験結果

複雑な環境に対しては L-MNLの層数を増加させる 軌道生成後に最適化手法を適用

障害物の位置が変化した場合にも再学習することで適応可能

Page 12: RRTを用いて学習する ニューラルネットワークによる パス ...lab.cntl.kyutech.ac.jp/~nishida/paper/2017/RSJ3I3-06ppt.pdfRRT + 多層ニューラルネットワーク

5. 結論

経路の生成時間はRRT手法の方が優れている(二次元環境)

環境が高次元になるにつれてMLN手法の優位性が顕著になると考えられる

RRTによる生成軌道を学習するNNを構築

障害物のある空間のロボットの軌道を自動生成 学習から想起まで一連の手順を自動化可能(チューニングも可能) 同じ始点と終点に対して再現性のある経路を生成 RRTとほぼ同等の速度での軌道生成