Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

確率ロボティクス第十回

3,378 views

Published on

POMDPの解決法の例。

Published in: Technology
  • Dating for everyone is here: ❶❶❶ http://bit.ly/2F4cEJi ❶❶❶
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Dating direct: ❤❤❤ http://bit.ly/2F4cEJi ❤❤❤
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

確率ロボティクス第十回

  1. 1. 確率ロボティクスと移動ロボットの行動生成 第10回 上田隆一
  2. 2. 本日の内容 • POMDPを(完全ではないが)解いて、 ロボットを動かす実装例を見る –probabilistic flow control(PFC) [ueda2015] Oct. 7, 2015 確率ロボティクスと移動ロボットの行動生成 2
  3. 3. PFC(おさらい) • 期待値計算において 「重み = パーティクルの重み/価値」とする – ゴールに近いパーティクルが 行動決定に大きな影響を与える • 投機的な行動が生成され、 ロボットがゴールを探すようになる – ただしこれでもデッドロックは 発生する • 問題を完全には解いていないので Oct. 7, 2015 確率ロボティクスと移動ロボットの行動生成 3 G 4 3 2 1 5 6 7 8 9 重み1/3 重み1/7
  4. 4. 環境 • 自己位置推定・価値反復で用いたもの • 本講義で見せた実装で 自己位置推定 – perceptual aliasing (後述) Oct. 7, 2015 確率ロボティクスと移動ロボットの行動生成 4 Y X
  5. 5. タスク • 価値反復で行ったもの • ゴールに入る • ただし、自己位置は 最初、未知とする Oct. 7, 2015 確率ロボティクスと移動ロボットの行動生成 5 ゴール
  6. 6. 克服すべき課題 • perceptual aliasing – 別の場所が同じ風景 – 環境が点対称なので 動き回っても解消しない Oct. 7, 2015 確率ロボティクスと移動ロボットの行動生成 6
  7. 7. PFCでの価値計算 • 信念がbelのとき、ある行動aをとる価値Q(bel,a)を計算 • 手順(状態の離散化が細かい場合) – 行動aで仮にパーティクルを動かし、以下を計算 • q = 重み/動作前の価値*(報酬+動作後の価値) – qを足し合わせたものがQ(bel,a) Oct. 7, 2015 確率ロボティクスと移動ロボットの行動生成 7
  8. 8. PFCでの行動選択 • Q(bel,a)の値が最良の行動aを選択 – Qがコストを表す時は最小になるものを選択 • ただしどのQ(bel,a)も1より悪いと、 状況の改善は望めない – 別の方策(+観測戦略)を使った方が良いかもしれない – Qがコストを表す時は1より大きい場合 – 理由 • S[重み/動作前の価値*(報酬+動作後の価値)] - S[重み/動作前の価値*(動作前の価値)] = S[重み/動作前の価値*(報酬+動作後の価値)] - 1 • この値が0より大きいと価値が下がる Oct. 7, 2015 確率ロボティクスと移動ロボットの行動生成 8
  9. 9. PFCに必要なパーティクルの操作 • 終端状態でパーティクルを消す、 あるいはパーティクルを動かさない – こうしないとロボットが動いてパーティクルが 終端状態から出てきて無限ループになる – 手法自体に、終端状態は推定位置以外の情報から 得られるという仮定が必要だということ – パーティクルを動かさないと推定に悪影響が出るので 重みを減らしてリサンプリングする Oct. 7, 2015 確率ロボティクスと移動ロボットの行動生成 9
  10. 10. 実際のコード • GitHubにあります – ryuichiueda/ProbabilisticRaspiMouse/pfc • コードの泥臭いところ – Qの値が改善しない場合は前進(fw)を選択 – 仮にパーティクルを動かしたときに 価値が無限大に悪くなる(=壁にぶつかる) 場合は元の状態にパーティクルを戻して計算 • fwの価値が低く見積もられるため Oct. 7, 2015 確率ロボティクスと移動ロボットの行動生成 10
  11. 11. 実際の動作 • https://www.youtube.com/watch?v=qs7JUygUzy I – 10倍速 – ゴール(100円玉)にタッチしたら適当に置き直し – たまにゴールの時以外にいじっているのは IMUの不具合でUSBを挿し直しているだけ Oct. 7, 2015 確率ロボティクスと移動ロボットの行動生成 11
  12. 12. ポイント • 特に賢そうにも役に立ちそうでもないが・・・ – 止まらない(理論上は止まることもある) • 「止まらない」動作を手でコーディングすることはかなり難しい – 稚拙だがゴール候補の部屋を探すような行動が発現 • もともと「探す」行動は価値反復では得られていなかった – 位置推定が完璧に出来ればロボットは最適方策で動作 • Qの値が改善しない場合にfwを選択するので良い? – 観測戦略が欲しい。ただ、Qの値で情報不足が明確に分かる Oct. 7, 2015 確率ロボティクスと移動ロボットの行動生成 12

×