3. 評価方法
CMA-ES を用いた二足歩行ロボットの起き上がり動作の改善
鈴木湊,渡邊真哉,伊藤暢浩 ( 愛知工業大学 )
1. 背景・目的
2. 実験方法
4. 結果
5. 今後の課題
今回は最適化手法の 1 つである進化的戦略 (Evolution Strategy : ES) を共分散行列で拡張した共分散行列適応進化戦略 (Covariance Matrix Adaptation - ES : CMA-ES) を用いて実験を行った.以下の 手順を 1 施行として 300 世代行った.
①エージェントの頭部座標と位置座標を取得する
②エージェントの足首のヒンジを曲げ,転倒させる
③起き上がりを行わせる
④起き上がりの評価を行う
我々はエージェントの頭部の座標と足の中心座標の差分 ( 図 1) が 小さいほど,エージェントが起き上がっている状態にあるものと 仮定した.また,起き上がり動作中に得られるこの差分を連続的 に取得し,起き上がり動作終了後に平均を求めることで,平均が 小さいほど早く安定していると考えた ( 式 1).さらに,エージェ ントが起き上がり動作によって移動してしまうことを抑制するた め,起き上がり動作前後でエージェントの足の中心座標を取得し ておき,移動距離を加えることで評価を下げることとした ( 図 2)( 式 2).これにより,適合度が低くなるほど起き上がり時間が短く, 安定した起き上がり動作が実現出来たことになる.
実験を2回を行い,結果を図3に示す.図3は各世代の最も良かっ た個体の適応度と各世代毎の個体の分散値のグラフである.図3 より適応度が一度良い値になると値のぶれはあるが一定の値に なってしまった.また,分散値より収束する前に実験が終わって しまったことが分かる.
今回の結果より,以下の検討が必要である.
・パラメータ数が多く収束しなかったと考えられるため,最適化を 行うパラメータ数の再検討
・一定の値になってしまったため,個体差が詳細になるような適合 度関数の見直し
・他の最適化手法を用いて実験を行い,CMA-ES との比較検討
① ② ③ ④
起き上がり最適化開始の初期段階では,起き上がること事態を失 敗してしまう個体も存在した.そのため,失敗しても適合度 ( 評価 値 ) を取得することが出来る適合度関数 ( 目的関数 ) を提案する. その式を以下に示す.
図 3: 最大適合度の推移と適応度の分散値の推移
displacement
起き上がり動作開始時の足の中心座標 起き上がり動作終了後の足の中心座標
x4,y4
x3,y3
図 2: エージェントの起き上がり 動作による移動
x1,y1
起き上がり動作中の足の中心座標 起き上がり動作中の頭部座標
x2,y2
図 1: エージェントの頭部座標と 足の中心座標の差分
- (1)
- (2)
fitness = 1
count (x1 x2)
2 + (y1 y2)2 + displacement
displacement = (x3 x4)2 + (y3 y4)2
120
-120 -95
120 -120
90
-1
25 100
-25 90
1
-130
75 -45
-25 45
120
-120 95
-1
120 -120
1
-90
45 -25 100
-25
1
1
-130
75
-45 -45 25
-120 120
45
-45
head2 Rarm2
Rarm3 Rarm4
Rleg3
Rleg1 Rleg4
Rleg5 Rleg6 Rleg2
Larm2 Larm1
Larm3 Larm4 Lleg2
Lleg3
Lleg1 Lleg4
Lleg5 Lleg6 head1 Rarm1
1
-45
1 -90
nao の関節図 我々のエージェントには,起き上がり動作
が正確に行えない問題がある.起き上がり 動作の最適化を行い,改善を行うことを考 えた.起き上がり動作全体は6つの動作に 分かれる.各動作はモーション時間,各関 節の角度,関節を曲げる速度で構成される. そのため,パラメータ数が 198 個存在する. パラメータ数が多すぎる場合,結果が収束 しないことが考えられる.ゆえに,上体の 動作を固定し,55 個のパラメータで最適化 を行った.