paper_readings icon indicating copy to clipboard operation
paper_readings copied to clipboard

DeepLoco: Dynamic Locomotion Skills Using Hierarchical Deep Reinforcement Learning

Open kogaki opened this issue 7 years ago • 1 comments

物理シミュレーションに基づく運動学習を、短期と長期の学習に分離することで解く

論文本体・著者

  • http://www.cs.ubc.ca/~van/papers/2017-TOG-deepLoco/
  • Xue Bin Peng, Glen Berseth, KangKang Yin, Michiel van de Panne
  • SIGGRAPH 2017

解きたい問題

  • 物理モデル(関節、地面、重さetcがあるモデル)が与えられたときに、あるタスクを遂行する動きを生成する
    • タスクはある程度高レベルなもの。論文中では以下の2つ
        1. 決められた道筋をたどる
        • 報酬は exp( - ( 線に沿った進行速度 - 1 )^2 )
          • つまり、1m/sで進めってこと
        1. ドリブルする
        • 報酬は (-(キャラクターからみてボールを前に蹴る速度が1m/sから離れてる度合い) + (ボールからの距離) + (ボールがターゲットに向かっていく速度が1m/sから離れてる度合い) + (ターゲットからの距離))
        • 離れてる度合い系は1と同じ関数
    • 問題は、このような報酬は高レベルすぎて、各関節の動かし方まで、直接学習するのが難しい

新規性

image
論文 Fig. 2 より
  • 2Hzで高レベルなアクションaHを出力するHLC(High Level Controller)と30Hzで低レベルアクションaLを出力するLLCの2つの系に分けて学習する

実装

image
論文 Fig. 6 より
  • HLCの

    • 入力は、タスク依存な状態。基本てきにキャラクターやボールの座標だが、周辺の環境マップもふくむ。
      • なので、図のような、CNNを途中でconcatするモデルになる
    • 出力aHは、次の2歩の目標座標(LLCに伝える)
    • 報酬は (解きたい問題) の段に書いた報酬
  • LLCの

    • 入力は、現在の各関節の姿勢と、aH
    • 出力は、各関節の目標関節角
    • 報酬は?
      • 既存のビデオの動きに近くなるようにする!

実験・議論

  • LLCを学習させることによって、姿勢が崩れることに頑健な移動が学習できるので、横から石投げられても歩ける!

読んだ中での不明点などの感想

  • HLCの報酬が職人芸ですね。他のタスクに拡張するときにどれくらい大変なんだろう。
  • 二段階にしても、やはりここまで職人芸な中間報酬を作らないとタスクは解けないんだなぁ
  • LLCはどちらかと言うと教師あり学習っぽいような

関連論文

kogaki avatar Jul 03 '17 06:07 kogaki

物理エンジン上でのキャラクタモーションについては、5年前ですが、下記の文献が参考になると思います。 Interactive Character Animation Using Simulated Physics: A State-of-the-Art Review, Geijtenbeek, T. & Pronost, N.G. (2012) In Computer Graphics Forum)

制御方法は3つに大別されて、当時の流行りはOptimization Controlだったようです。

  • Joint-Space Motion Control:
    • 各関節で目的の軌跡をトラックすることで制御。
  • Stimulus–response network:
    • 刺激反応系の制御。人工生命の分野で多く使われているが低自由度のキャラクタに限られ、近年目立った成果はない
  • Constrained Dynamics Optimization Control:
    • 最適化計算を一定時間ごとに実行。制約条件の入れ方等職人芸ではあるけど、顕著な成果を上げている。

masayoshi-nakamura avatar Jul 03 '17 06:07 masayoshi-nakamura