遺伝的アルゴリズムによる人体モデルの動作獲得

遺伝的アルゴリズムによる人体モデルの動作獲得

木曽湧斗

遺伝的アルゴリズム(Genetic Algorithm:GA)とは最適解を近似的に探索する進化的アルゴリズムである。 生物の進化を模倣しアルゴリズム化したものであり、確率的な要素を用いて最適解を学習的に求める。 本研究ではGAを用いて物理演算エンシンODE(Open Dynamics Engine)で実装した人体モテルに 自律的な学習を行わせ動作を獲得していく。各関節を角度変化させることにより姿勢を変化させる。

GAでは与えられた問題に対する1つの解候補を1つの個体とする。 個体の持つ性質を遺伝子と考える。個体の集団では個体間に差異があれば異なる遺伝子を持っていることになる。 この差異により各個体が環境に適応しているかを評価し、選択や交叉、突然変異などの遺伝子操作を行う。 これを繰り返し世代を重ね、最終世代で最も環境に適している個体を解として出力する。 GAは最適化問題に有効であるが最適解に対して近似解を求めるに過ぎず、 必すしも最適解が出力されるアルゴリズムではない。

本研究では一つの遺伝子か人体モテルの一連の動作を決定する。 遺伝子情報は全て関節の角度の変化として構成される。 一連の動作には幾つかの姿勢変化があり、姿勢変化は人体の各関節の変化により表している。 したがって人体モテルの関節数、関節の角度ハターン、動作に必要な姿勢変化数の3つて遺伝子長が決まる。

1つ目の実験である寝返りの動作では、人体モテルの頭部の回転によって個体を評価する。 この実験では、早期の収束が見られ人体モテルでの寝返りの動作を獲得する事か出来た。

2つ目の実験である立ちあがり動作ては、人体モテルの頭部の座標位置を評価し適応度を計算する。 この実験では前半動作と後半動作の遺伝子を分けて獲得する。 最終的に、姿勢変化を終えた時に開脚状態で姿勢を維持する立ちあがりの動作を獲得できた。