計測自動制御学会東北支部 第 334 回研究集会(2021.9.17)
資料番号 334-2

深層強化学習を用いた準受動歩行および走行の実現
Realization of Quasi-Passive walking and Running
Using Deep Reinforcement Learning○ 古関駿介，沓澤京，大脇大，林部充宏，○ Shunsuke Koseki, Kyo Kutsuzawa, Dai Owaki, Mitsuhiro Hayashibe
東北大学
Tohoku University
キーワード： 受動歩行(Passive Walking)，深層強化学習(Deep Reinforcement Learning)，歩容(Gait), 二脚ロボット(Biped Robot)，エネルギー効率(Energy Efficiency)
連絡先: 〒 980-8579 仙台市青葉区荒巻字青葉 6-6-01 東北大学 工学部 機械知能・航空工学科 林部研究室
古関駿介, Tel.: (022)795-6970, Fax.: (022)795-6970, E-mail: shunsuke.koseki.q4@dc.tohoku.ac.jp

1 緒言
ヒトは，歩行，走行と大きく分けて２つの歩容で移動を行っている．歩行と走行を使い分ける利点の１つに，幅広い速度で移動を行えることが挙げられる．一般的な歩行では約3.0[m⁄s]以上の速度が出せないと言われているが 1)，走行に歩容を切り替えることにことでより速い速度域での移動が可能となる．また，速度に応じ消費エネルギーの少ない歩容を選択し，エネルギー効率のよい移動を可能としているとも考えられている（ここでのエネルギーとは，単位質量を単位距離移動させるのに必要なエネルギー[𝑐𝑎𝑙 ⁄𝑘𝑔 ∙ 𝑚]を指す）．前述の通り，歩行では約3.0[m⁄s]までの速度を出すことができると言われている
が，実際にヒトが歩行から走行へと歩容を変える速度は約2.1[m⁄s]であることが知られている．ヒトの運動データから，移動速度がおよそ2.2~2.3[m⁄s]より遅いときには歩行，速いときには走行を選択すればエネルギー効率がよいことが示されており，ヒトの歩容が変わる速度とよく一致している．このようなヒトと同様の歩行および走行運動をロボットで再現することができれば，エネルギー効率がよく幅広い速度で移動することのできる二足ロボットの実現が期待できる．
ロボットの分野では，ヒトのような自然な歩容を再現しエネルギー効率のよいロボットを実現するために受動歩行が注目されている
2)．受動歩行とは，アクチュエータなどの駆動機構を持たない完全に受動な歩行機械が，適切な初期値さえ与えられれば，緩やかな斜面を安定的に歩き下る現象のことを指す
2),3)．重力による位置エネルギーを運動エネルギーに変換することで移動を行い，実現される歩容は自然かつ滑らかであり，ヒトの歩行に似ている．ヒトは歩行時，振子のように前方に倒れ込む動作を繰り返し行うことで巧みに重力場を使用し，高いエネルギー効率で移動していることが知られているが，受動歩行はその最も単純かつ本質的な形である．一存在する歩容を走行と定義する．

方，平地では重力場からエネルギーを継続的に得ることができないため，完全に受動的な移動はできない．そこで，簡単なアクチュエータを代わりのエネルギー供給手段として付け足すことにより，斜面以外での歩行を目指した準受動歩行に関する研究も行われている．例えば，足首にモータをつけることにより地面を蹴り出す力を与える方法，地面から支持脚先端にインパルス入力を与える方法，支持脚方向に出力する簡単な直動アクチュエータを付ける方法，といった手段が提案されている 4),5),6)．
このように，準受動歩行を実現させた研究は数多くある．しかし，ヒトは歩行だけでなく，走行で移動することがあるにもかかわらず，実現されてきた準受動な歩容は歩行のみにとどまっている．ヒトのような移動をロボットで再現するために走行の実現は欠かせないが，準受動歩行と準受動走行を同時に実現させた研究は筆者の知る限り存在しない．
そこで，本研究では同一のモデルで準受動歩行および走行を実現させるための手法を提案する．具体的には，深層強化学習を用いて準受動歩行モデルの持つアクチュエータの出力を学習させることで歩行と走行それぞれの発現を目指す．深層強化学習で用いる報酬関数をどのように設計し，学習を行えば歩行と走行が実現できるかを検証し，それぞれの歩Fig. 1 歩行と走行の移り変わり

2.2 準受動歩行モデル
ヒトは走行中，位置エネルギーと運動エネ
ルギーの一部を手足や胴の弾性要素に保存することで，エネルギーの損失を抑えている 9)．
このことから，走行には身体に弾性要素を持たせることが重要とわかる．実際に，股関節に巻きばね(Fig.2 オレンジ色のらせん部分)と，支持脚に直列につながれた直動のばね(Fig2. 赤色の部分)を持つ，ばね付き受動歩行モデルを用いることで受動的な走行を実現できることが報告されている 10)．このばね付き受動歩行モデルを参考に，簡単なアクチュエータを搭載したばね付き準受動歩行モデルを用いて歩行，走行の再現を試みた．

容で身体の使い方にどのような違いがあるかを比較した．

2 提案手法2.1 歩行と走行の定義

Fig. 2 参考にしたばね付き受動歩行モデル 10)

Fig.1 に歩行と走行の移り変わりの様子を示す．歩行では図中の紫色の線で示すように，両脚が地面に接地している両脚支持期と呼ばれる期間がある．一方，走行では図中のFig.3 に本研究で用いたばね付き準受動歩行モデルを示す．また，部位のパラメータはtable1 の 通 り で あ る ． モ デ ル に は 脚 方 向

緑色の線で見られるように，どちらの脚も空中に浮いている両脚遊脚期と呼ばれる期間がある 7),8)．本研究では両脚支持期が周期的に存在する歩容を歩行，両脚遊脚期が周期的に(Fig.3(c)の赤点線)に沿って脚を上下させる直動アクチュエータが搭載されている．このアクチュエータを搭載することで，脚を地面に押しつけることにより蹴り出す力，脚を地面に衝突させず前に運ぶための持ち上げる力を生むことを期待する．受動的な脚のふりを実現させるために付けた腰関節の巻きばねは，脚が地面に対して垂直なとき(Fig.3(c),𝜑 =0)が平衡点であり，Fig.3(c)の青点線周りにトルク𝑘ℎ𝑖𝑝 𝜑を与え，脚を前後に振らすことができる．
また，直動ばね𝑘2 , 𝑘3 に𝑚𝑡𝑖𝑏𝑖𝑎 を挟んだ揺動慣性と呼ばれる部品(Fig.2(b))を実装した．揺動慣性をつけることで，モデルが床に衝突したとき，柔らかい着地をすることができる11),12)．Fig4 はモデルを高さ 5m から速度5[m/s]で地面に向かって落としたときの床反力である．揺動慣性を付けたとき(赤)は付けていないとき(青)と比べ，衝突したときに受ける最大床反力が小さくなっていることがわ
かる．揺動慣性を付けることによって，モデルが歩行および走行中に弾んでしまう問題の解決が期待できる．

(a)

(c)

Fig. 3 本研究で使用した磐ばね付き準受動歩行モデル(a)シミュレーション環境上，(b)機構図，(c)ばねとアクチュエータの働き方
table 1 モデルのパラメータ𝑚ℎ𝑖𝑝10[kg]

𝑘16[kN/m]

𝑚𝑡ℎ𝑖𝑔ℎ6[kg]𝑘2

6[kN/m]𝑚𝑡𝑖𝑏𝑖𝑎3[kg]𝑘3

10[kN/m]

𝑚𝑓𝑜𝑜𝑡

1[kg]

𝑐1300

[Ns/m]𝑘ℎ𝑖𝑝

87[Nm/rad]𝑐2

650[Ns/m]

𝑐ℎ𝑖𝑝

0.2[Nms/rad]𝐹𝑎𝑐𝑡𝑢𝑎𝑡𝑜𝑟

|𝐹|

[N]
≤ 400

(b)
Fig. 4 𝒎𝒕𝒊𝒃𝒊𝒂の効果

2.3 深層強化学習
強化学習はエージェント(学習者)と，エージェントが置かれた環境との相互作用によって進行する．エージェントは(1)環境から状態

𝑠𝑡 を観測し，(2)𝑠𝑡 に基づいて行動𝑎𝑡 を起こし，(3)その結果として状態𝑠𝑡+1 へ遷移する共に報酬𝑟𝑡 を受け取る，と(1)～(3)のサイクルを繰り返しながらタスクを実行する．ここで，(2)において，現在の状態から次の行動を導き出す
エージェントが持つ規則を方策𝜋と呼ぶ．強化
学習とは(1)～(3)のサイクルを繰り返すこと(Ⅰ)エネルギーの消費を抑えた安定した運動を獲得させる(Ⅱ)歩行か走行か，歩容を決定する項を導入
する(Ⅲ)効率よく学習をさせるで得られる経験から，タスク終了までに累計報酬を大きくする方策𝜋を学習する枠組みである 13)．
強化学習では，最適な方策を決定する指標に状態価値関数𝑉(𝑠𝑡 )や行動価値関数𝑄(𝑠𝑡 , 𝑎𝑡 )などの関数が用いられる．しかし，取り得る状態𝑠，行動𝑎が多いとき(例えば連続値の場合)，価値関数を求めるには計算量が多すぎる

以上の方針のもと設計した報酬関数𝑟を式(2.2)に示す．(Ⅱ)をもとに設定した項が歩容を決定しているかを知るために，歩行用と走行用の報酬関数は，𝜔2 の値のみが異なり，他は全て同じである．

ため現実的ではない．そこで，ニューラルネットワークを用いて価値関数を近似する手段がある．深層強化学習とは，このように強化学習中の関数にニューラルネットワークを用いる手法のことである．
本研究では，深層強化学習のアルゴリズムに SAC(Soft Actor-Critic) を使用した．SACの特徴は，報酬に加えてそのときの方策𝜋のエここで𝜔は重み係数と呼ばれ，項の数値のバランスを調整することや，報酬関数の中での重視度を決めることができる．
第１項は(Ⅰ)エネルギー消費を抑え，安定した運動を獲得させるために設定した項である．𝐸𝑡 は𝑡ステップ時におけるモデルの総エネルギー(位置エネルギー+運動エネルギー+弾性エネルギー)である．この項によってモデルントロピーℋ(𝜋)に比例したボーナス報酬を得ることのできる点である．エントロピー項を加えることにより，広範囲の探索が可能となるため局所解に陥りにくくなる，ロバスト性のある方策を得やすくなる，といったメリットがある 14)．式(2.1)で示す目的関数𝐽(𝜋)をの総エネルギーの変化が大きいほど負の報酬が与えられる．モデルが運動中に失ったエネルギーはアクチュエータの仕事により補充をしなければならないので，総エネルギーの変化が大きいほどエネルギー消費が大きくなる．
よって，この項によりエネルギー消費を抑え最大にする確率的方策𝜋を学習する．

た運動の学習が期待できる．さらにエネルギ
ー変化が小さい行動を学習させることにより，安定した運動の獲得も望める．
第２項は(Ⅱ)歩行か走行か，歩容を決定するための項であり，速度の重視度を決める．
𝑣𝑚𝑜𝑑𝑒𝑙 はモデルの速度であり，この項によって速度が大きいほどもらえる報酬が大きくなる．重み係数𝜔2 が大きいときは，報酬関数の中で速度の重視度が高まるので，エージェン
トはより速度を出すことに重点をおいた運動を学習すると考えられる．𝜔2 を小さくすることで歩行，大きくすることで走行の発現が期待できる．
第３項は，(Ⅲ)学習を効率的に行うために𝑇

𝐽(𝜋) = ∑ 𝐸(𝑠𝑡 ,𝑎𝑡 )~𝜌𝜋 [𝛾 𝑡 (𝑟(𝑠𝑡 , 𝑎𝑡 ) + 𝛼Η(𝜋(∙ |𝑠𝑡 )))]
𝑡=0(2.1)

ここで，𝛼は温度パラメータと呼ばれ，報酬に対し方策のエントロピーをどの程度重視するかを決める．

2.4 報酬設計
歩行と走行を学習させるために設計した深層強化学習の報酬関数𝑟について説明する．報酬関数の設計には (Ⅰ)～(Ⅲ)の３つの方針を立てた．

𝑟 = −𝜔1 |𝐸𝑡 − 𝐸𝑡−1 | + 𝜔2 𝑣𝑚𝑜𝑑𝑒𝑙 + 𝑎𝑠𝑠𝑖𝑠𝑡(2.2)

設定した項である．詳細を式(2.3)に述べる．
𝑎𝑠𝑠𝑖𝑠𝑡 = 𝜔3 |𝜃̇| − 𝜔4 𝑠𝑦𝑚𝑚𝑒𝑡𝑟𝑦 + 𝑎𝑙𝑖𝑣𝑒 𝑏𝑜𝑛𝑢𝑠 (2.3)

第１項の𝜃̇ は右脚と左脚の角度差(Fig.2 の𝜃𝑠 + 𝜃𝑛𝑠 にあたる)の時間微分である．股関節の巻きばねによって脚を振る動きの学習が困難であったため設定した．第２項は，方策に左右対称性を与える項である 15)．ヒトは正常歩行および走行時，周期的に見て左右の動きが対称になるので，この項を設定した．第３項は，モデルが転ばないようにするための項である．

ギー(total energy) の平均値は 294.5[J]，標準偏差は 25.4[J]であった．Fig.6，Fig.7 にはそれぞれモデルが受ける床反力，アクチュエータの出力を示す．上が右脚，下が左脚である．
Fig.7 ではアクチュエータの出力が正のとき，脚を床に押しつける力が働き，負のときは脚を持ち上げて床から離れる方向に力を生む．
左右両方合わせたアクチュエータの仕事率は414.2[J/s]であった．

2.5 シミュレーション環境
Fig.3 で示したばね付き準受動歩行モデルにアクチュエータの出力を SAC で学習させることにより，歩行と走行の実現を試みる．
シミュレーションには物理エンジン MuJoCoを用いた．MuJoCo は接触の多い複雑な動的システムへの適用が可能であり，ロボット工学，バイオメカニクスなどの高速で正確なシミュレーションが必要とされる分野で使用さFig. 5 歩行時のエネルギー変化れる 16)．式(2.2)を報酬関数として使用し，𝜔2の値のみを変更してシミュレーションを行った．学習は 1000 万ステップ行った．
Fig. 6 歩行時の床反力

3 シミュレーション結果
𝜔2 を変えて学習させたところ，𝜔2 が小さいときには歩行を，大きいときには走行を実現することに成功した．

3.1 歩行(𝝎𝟐 = 𝟎. 𝟎𝟐𝟓)
Fig.5 に歩行時のエネルギー変化の様子を示す．ここで，ピンク色の領域は右脚のみが支持脚となっている期間，青色の領域は左脚のみが支持脚となっている期間，紫色の領域は左右の脚がどちらも支持脚，つまり両脚支持期のときである．ピンク色または青色の領域から紫への領域へと変わるときに遊脚が地面に着く(例：図中の濃い赤の丸)．シミュレー
ション開始から 1~51[s]のモデルの総エネル

Fig. 7 歩行時のアクチュエータの出力

3.2 走行(𝝎𝟐 = 𝟏. 𝟐)
走行時のエネルギー変化の様子を Fig.8 に示す．白色の領域は両脚とも地面についていない両脚遊脚期である．図中の濃い赤の丸で示すように遊脚が地面に着くときに運動エネ

4 考察

ルギーが大きく減少していることがわかる．
また，衝突直後に運動，位置エネルギーは減り，弾性エネルギーが増えていることから，衝突時に運動，位置エネルギーの一部は弾性エネルギーとして身体に蓄えられていることがわかる．シミュレーション開始から

4.1 報酬関数とシミュレーション結果1~51[s]のモデルの総エネルギーの平均値は412.7[J]，標準偏差は 28.2[J]であった．Fig.9，Fig.10 にはモデルが受ける床反力，アクチュエータの出力を示す．左右両方合わせたアクチュエータの仕事率は 547.7[J/s]であった．

を学習させることで歩行と走行がそれぞれ実現できると考えられる．

式(2.2)のモデルの速度重み係数𝜔2 が小さいときには歩行，大きいときには走行の発現に成功した．よって，本研究で使用したばね付き準受動歩行モデルでは，速度の重視度を決め，エネルギー消費が少ない安定した運動

4.2 歩行と走行の違い
遊 脚 が 支 持 脚 と な る と き に 注 目 し た．
Fig.7，Fig10 の赤丸からわかるように，歩行では脚が床に衝突するときにアクチュエータの出力がほぼ 0 であり静的な着地を行うのに対し，走行では出力が大きな正の値，つまり床に向かって脚を勢いよく打ちつけているこ

Fig. 8 走行時のエネルギー変化

Fig. 9 走行時の床反力とがわかる．その結果，Fig.5，Fig.8 の濃い赤丸で示すように走行では歩行時に比べて衝突時に失う運動エネルギーが非常に多い．アクチュエータの仕事率は歩行時が 414.2[J/s]，走行時は 547.7[J/s]であり，歩行時の方が少ないエネルギーで移動していることから，歩行では静的な着地などを行うことでエネルギー損失を抑えているのではないかと考える．
一方，走行時は脚を勢いよく床に打ちつけている．ヒトが前方に推進するのは地面がヒトに及ぼした力の結果であるので 17)，走行では大きな床反力を獲得することで，前に進むための推進力を得るために，このように脚を床に勢いよく打ち付けていると考えられる．
Fig.6，Fig.9 から，支持脚中の平均床反力を求め る と ， 歩 行 で は 248.9[N] ， 走 行 で は403.0[N]となり，たしかに走行時の方が大きな床反力を得ていることがわかる．

5 結言

Fig. 10 走行時のアクチュエータの出力

本研究では，深層強化学習を用いてばね付き準受動歩行モデルにアクチュエータの使い方を学習させることで，準受動的な歩行および走行の実現に成功した．発現させたい歩容が歩行のときは速度の重視度を小さく，走行のときは大きくし，エネルギー消費が少ない安定した移動を行わせるように報酬関数を設計すればよいことが示された．
また，歩行と走行の違いについても比較をした．歩行では脚を床に静かに衝突させることでエネルギー損失を少なくしており，逆に走行では脚を勢いよく打ちつけることで前に進むための大きな床反力を得ていると考えられる．
今後の課題としては，モデルのパラメータを変えてシミュレーションを行った場合，どのように歩容が変わるかの調査が挙げられる．
また，今回は歩行と走行でそれぞれ別にシミュレーションを行ったが，歩行と走行の安定した切り替えを行い，歩行と走行を連続的に再現できるようにすることも挙げられる．

参考文献
1)

2)

3)

4)

5)

6)

7)

Frederic J. Diedrich, Willian H. Warren,
Jr.: Why Change Gaits? Dynamics of theWalk-Run Transition, Journal ofExperimental Psychology: HumanPerception and Performance 1995,
vol.21, No.1, 183/202 (1995)
衣笠哲也, 大須賀公一, 土師貴史: 受動
歩行ロボットのすすめ, 5/29, コロナ社
(2016)
土屋和雄: 身体適応-歩行運動の神経機
構とシステムモデル, 148/153,237/259, オーム社 (2010)
Steve Collins, Andy Ruina, Russ
Tedrake, Martijn Wisse: Efficient
Bipedal Robots Based on PassiveDynamic Walkers, SCIENCE, vol. 307,
No. 5712, 1082/1085 (2005)
Deniz Kerimoglu, Omer Morgul, Uluc
Saranli: Stability of a compass gait
walking model with series elastic ankle
actuation, 2015 International
Conference on Advanced Robotics(ICAR), 351/356, (2015)
清水寛子: 深層強化学習を用いたばね付
き準受動歩行モデルにおける歩容生成,
修士論文 (2021)
R. McNeill Alexander: Walking andRunning, American Scientist, Volume72,348/354 (1996)
George H. Z. Liu, Michael Z. Q. Chen,
Yonghua Chen: When joggers meetrobots: the past, present, and future ofresearch on humanoid robot, Bio-Designand Manufacturing 2, 108/118 (2019)9) Andrew.A.Biewener: Patterns of
Mechanical Energy Change in Tetrapod
Gait: Pendula,Spring and work, journalof experimental zoology 305A:, 899/911(2006)
10) Dai Owaki, Koichi Osuka, Akio Ishiguro:
On the Embodiment That Enables
Passive Dynamic Bipedal running, 2008
IEEE International Conference on
Robotics and Automation, 341/346(2008)
11) Z. Yue, J. Mester: A model analysis ofinternal loads, energetics, and effects ofwobbing mass during the whole-bodyvibration, Journal of Biomechanics,
639/647 (2002)
12) Nikooyan AA, Zadpoor AA: Massspring-damper modelling of the humanbody to study running and hopping--anoverview, Proc Inst Mech Eng H. doi:
10.1177/0954411911424210. PMID:
22320052, 1121/35 (2011)13) 森北肇: 学習とそのアルゴリズム,
155/180, 森北出版 (2002)
14) Tuomas Haarnoja, Aurick Zhou, KristianHartikainen, George Tucker, Sehoon Ha,Jie Tan, Vikash Kumar, Henry Zhu,
Abhishek Gupta, Piter Abbeel, Sergey
Levine: Soft Actor Critic Algorithm andApplications, Cornell University, (2018)15) Whenhao Yu, Greg Turk, C.Karen Liu:
Learning Symmetric and Low-Energy
Locomotion, ACM Transactions on
Graphics 37(4), (2018)16) E. Todorov, T. Erez and Y. Tassa:
MuJoCo: A physics engine for modelbased control, 2012 IEEE/RSJ
International Conference on Intelligent
Robots and Systems, 5026/5033, (2012)17) 金子公宥, 福永哲夫: バイオメカニクス―身体運動の科学的基礎, ８章, 杏林書院 (2004)
8)