310 likes | 432 Views
先端論文紹介ゼミ. An optimized modular neural network controller based on environment classification and selective sensor usage for mobile robot reactive navigation. 2009/12/15 M1 井上誉允. Abstract. 移動ロボットが先の地図なしで事前に定義された目標位置に移動する NN ベースのナビゲータ アプローチを提案 する 。
E N D
先端論文紹介ゼミ An optimized modular neural network controller based on environment classification and selective sensor usage for mobile robot reactive navigation 2009/12/15 M1 井上誉允
Abstract • 移動ロボットが先の地図なしで事前に定義された目標位置に移動するNNベースのナビゲータアプローチを提案する。 • 限られた環境において専門化している振舞いを学ぶことと対照的に、一般的な屋内の環境における一般的な目標で指示されたナビゲーションのために効率的な方法論を開発する。 • さまざまな環境のシミュレートと、不統一な屋内 環境の両方に関して、移動ロボットを使用することで提案されたアルゴリズムについて確かめる。
1.序論 • 局所最小解にロボットを対応させるため、異なった「振舞い」がセンサの機能としてナビゲーションの世話をする、振舞いベースのアプローチを導入した。 これらの(学習されるか、またはあらかじめ設計した)振舞いが新しい状況を切り抜けるように、同時にいくつかの振舞いを使用する協力的な振舞いを適用。 • 移動ロボットが環境の少しも先の地図なしで目標位置に安全に効率的に移動するNNアプローチに基づく新しい手法を提案。 唯一の前提はロボットが、目標がどの相対的な方向に有るかを知っているものとする。
2.ロボットナビゲーションのためのNN制御2.1 ロボットとそのNNコントローラモジュール M(モジュール)NN構造の詳細を説明 • ロボットは図1に示されるように8個の超音波センサを装備。8個の超音波センサが15cmから10mまでの範囲で±1%前後の制度を持つ。 • 変数θgは目標の相対的な定位方向を指示します。
8つのセンサ読み込みと目標定位方向θgからなり、図2で入力から操縦命令を発生させるのを示す。8つのセンサ読み込みと目標定位方向θgからなり、図2で入力から操縦命令を発生させるのを示す。 • センサ読み込みから来る局所の情報とグローバルな (目標)情報の両方の同時の考慮が同時に障害物回避と目標探知を実行する操縦命令の系列を発生させる。 • NNの出力は-1~+1まで及ぶ連続した実数を取る。 そして、この評価された出力は1°の精度で -90°~+90°まで及ぶ舵取り角に写像される。
2.2 MNN構造 • ナビゲーション環境が複雑かつ部分的に未知で、予測できないので、シングルNNコントローラは全体のタスクをほとんど担当できない。 • MNNは、一般化と耐障害性能力で多くの非線形の問題を解決するために採用。 • MNNがそれぞれ特定の局所環境をカバーする多くの簡単なNNモジュールを使用し、良い局所解決策を容易に見つけることができる。
2.3 NNコントローラモジュールの環境分類 • 環境分類は複雑なナビゲーション上のタスクをより簡単なサブタスクに分解する目的で使用。測定した30000の超音波データをクラスタリングする。
2.4 NNコントローラモジュールの協力的調整 • 局所の経路計画におけるそれぞれの制御モジュールはクラスタ原型と呼ばれる特定の知覚の環境に関して最適化される。現在の環境がこの原型環境から移動し離れると、性能は徐々に下る。(最も遠いポイントは2個の隣接しているクラスタの間の中点) • この場合、1つの振舞いだけを採用するケースと比べて、2つ以上のコントロールの振舞いの適切な混合によって性能を高める。
一般に、屋内環境のサイズ変化はナビゲーション性能に影響する。比較的狭い屋内の環境で、ナビゲーションが難しい環境の場合、壁に従うテクニックが、より望ましい。一般に、屋内環境のサイズ変化はナビゲーション性能に影響する。比較的狭い屋内の環境で、ナビゲーションが難しい環境の場合、壁に従うテクニックが、より望ましい。 • モジュールの出力を混合して、現在の知覚のパターンと原型パターンの間の距離情報は、図3での混合機能(Blending Function)を計算するのに使用。 • 問題は、協力的なコーディネートのためどのように関連モジュールを選択するか、そして、どのように選択されたモジュールの出力を結合するか。
距離に基づく簡単なコーディネート方法 • 平均した相互クラスタ距離 はモジュール選択に使用。 : モジュールが協力に入るべきかどうかを決定。 • 平均した距離0.94から、協力か切り替えるための敷居は 半分になるように選択 : 0.47 • 入力の知覚のパターンと最も近い環境原型の間の距離が0.47の敷居を超えているなら、協力的なコーディネートメカニズムは重みを加える。 • ここで、⊿θはロボットのための最終的な操縦制御コマンド、 sは超音波領域パターン、 はi番目モジュールの出力、は現在の範囲パターンとi番目原型間のユークリッド距離。
3 NNコントローラの発展 • NNコントローラモジュールは特定の局所の環境の周りのナビゲーションを担当し、それぞれの、EAを使用する ことで最適に訓練される。 3.1 進化的アルゴリズム(EA) • EAは良い解決策を作成するために適者生存の原則を当てはめ、解の選択を行っていく。 • EAの動作は主に解の再生産過程、生き残った解の変化過程、より良い適応度を持つ解の選択過程、の3つからなる。
3.2 コントローラモジュールの発展 • NNコントローラモジュールの発展は図7に従う。 • GAは直接NN構造に結びつけられるセンサ用法を発展するのに使用され、NNコントローラの実際評価された重みがEPを使用することで行動特性を最適化する。
図8に示されたハイブリッド発展手法は階層的な輪の構造を持つ。図8に示されたハイブリッド発展手法は階層的な輪の構造を持つ。 • GAは外側の輪でNN構造の最も良い解を探し、内側の輪のEPは、選択されたNN構造でコントローラの重みを調整。
NNコントローラを発展するための染色体は図9に示されるようにセンサ使用ビットと実際評価されたNN重みから成る。NNコントローラを発展するための染色体は図9に示されるようにセンサ使用ビットと実際評価されたNN重みから成る。 • ブーリアン部分が、NNコントローラが関連しているセンサを使用すると‘1‘を評価し操縦命令を生成。 • 染色体は、接続 (Link)iと重み(Weight)jを掛けることによって、表される。 • GA部分:一点交叉を利用
EPでは変化オペレータに以下を使用 • がi番目の個体のj番目の要素、 はi番目の個体のj番目の標準偏差、τとτ‘はオペレータにセットするパラメータとする。Nが正規分布を表す。 • EAにおいて使用されるパラメータはTable1に表示
3.2.1 コスト関数 • 総計コスト「Cost」は構造(ストラクチャ)的なコストと性能(パフォーマンス)コストの荷重している合計と定義される。 • 構造的なコスト「CostS」は、操縦命令を発生させる場合に実際に使用されたセンサの数に比例。 • 性能コスト「CostP」は以下の5つの要素の合計。
「Osc」は実際の続いている経路の振動(oscillation)の量「Osc」は実際の続いている経路の振動(oscillation)の量 • 「Col」は衝突の発生を測定 • 「Lng」が軌道の全長を測定 • 「Arr」、目標への集合を目的 • 「Clr」は障害物クリアランス
3.2.2 選択メカニズム • 染色体は評価の結果に基づいて選択 • ランキングとトーナメント選択方法を結合する選択方法 • ランキング選択は全部の順位を付け選択、 トーナメント選択では、現在の人口からの手当たりしだいに選択された相手により多く勝利している染色体を選択。 • トーナメント選択:比較的劣った染色体の有限生存確率を持ち検索の多様性を保証。 • ランキング選択:最も良い解決策を保存。
コンピュータ上でシミュレーションを行う。 前提としてロボットにNNコントローラを使用する個体候補にはスタートと目標位置を対にしたものを与える。 4.実験結果4.1 シングルNNコントローラの結果 • NNコントローラモジュールは図5(6)に示されたそれぞれの局所の環境原型のために最適化される。
図10は、障害が点在する環境で初期の人口を発生させるための全てのセンサ使用でのNNコントローラの発展を示す。図10は、障害が点在する環境で初期の人口を発生させるための全てのセンサ使用でのNNコントローラの発展を示す。 a:総性能コスト b:振動コスト c:経路長コスト d:障害クリアランスコスト
総費用を最小にするために実行されるため、個々のコストは時々上がるケースが存在。総費用を最小にするために実行されるため、個々のコストは時々上がるケースが存在。 • 例として、「障害クリアランスコスト:Cost of obstacle clearance」と比べて、総費用における重要性が比較的低い 図10(b)の「振動コスト:Cost of oscillation」は終盤につれより高くなった。
図11はいくつかのステージの発展に実際の制御経路を示している。図11はいくつかのステージの発展に実際の制御経路を示している。
図12はある程度訓練された初期人口でのNNコントローラモジュールの発展を示す。図12はある程度訓練された初期人口でのNNコントローラモジュールの発展を示す。 a: 総計コスト b:性能的コスト c:構造的コスト
図13は対応する環境で最も良い発展した各NNコントローラの実際の制御軌道を示す。図13は対応する環境で最も良い発展した各NNコントローラの実際の制御軌道を示す。 a:広い空間 b:広い廊下 c:細長い廊下 d:左壁 e:右壁 f:左コーナー g:右コーナー h:U字壁 i:分離している障害
4.2 MNNコントローラの結果 • 発展されたNNコントローラモジュールと環境分類モジュールは図3のMNNコントローラに結合される。
同じナビゲーション上のタスクに関しては、図14はあらかじめ訓練されたシングルコントローラとモジュールコントローラに関する実績をTable3に記載されている結果コスト関数と比較する。同じナビゲーション上のタスクに関しては、図14はあらかじめ訓練されたシングルコントローラとモジュールコントローラに関する実績をTable3に記載されている結果コスト関数と比較する。 シングルNNとM(モジュール)NNコントローラ間のコストの比較
シングルNNコントローラは障害の特定の状態と環境におけるスタート・ゴール構成に最適化され(図14a)、特定の環境においては好成績を上げる。シングルNNコントローラは障害の特定の状態と環境におけるスタート・ゴール構成に最適化され(図14a)、特定の環境においては好成績を上げる。 • 図14b,cのMNNは一般的な環境で、独身のNNよりはるかに良い成績を残した。 • 現在の重み計画では、統計コストは振動を犠牲にしている間、クリアランスを機能アップすることによって、向上する。 (クリアランスの重みを減少させて、振動の重みを増加させることによって、より滑らかな軌道を得た可能性は有る。)
コストについての動的な範囲を観測することで、個々のコスト計算の重みを選択する必要性が存在。コストについての動的な範囲を観測することで、個々のコスト計算の重みを選択する必要性が存在。 • ロボットが図15に示された長い障害タイプを含む異なった 環境にナビゲートするよう指定された時、シングルNNは局所解のトラップのために失敗したが、MNNは目標到達した。 シングルとMNNコントローラの間の制御軌道の比較
NNコントローラに関する、同じ環境で競争の激しい調整と協力的な調整を使用するという結果は図16で比較。NNコントローラに関する、同じ環境で競争の激しい調整と協力的な調整を使用するという結果は図16で比較。 • 競争の激しい調整では、ロボットは最初の施行でドアに入るのに失敗したが、協力的なコーディネートは廊下モジュールと左折モジュールの出力を適切に混合することによって成功した。 a:競争の激しい調整 b:協力的な調整
4.3 実際のロボット実験 • 検証のために図17でロボットに適用。 • ナビゲーション環境は、図17bに示される経路になるようにRoom301とRoom302の間で選択。 • 図16のシミュレーション結果と異なり、ロボットはRoom301入るのに失敗。ドアへ斜角と狭い幅のため検出されなかった。 障害物回避と目標認識は作動した。
5結論と今後の活動 • NNは、センサの接続性とコントロール性能の両方の機能として任意のユーザによって選択された目的を最適化するようにGAとEPの両方を使用することで設計され、その上、シングルNNの一般化能力を高めるために、MNNアプローチは使用された。 • 最終的に、1つのモジュールだけが選択される競争の激しい調整と比べて、数個のモジュール出力を混合する協力的なモジュール調整アルゴリズムはさらにナビゲーション性能を高めることができた。 • 重みを最適化するEAの使用により良い結果を生む可能性が有る。