2016-09-24 10 views
0

私は物理学によってアニメーションが決定される生物を含むUnityでゲームを作っています。例えば、クリーチャーの肢を動かすためには、それが関連している剛体に力を加えることができます。私はスクリプトを使ってプログラム的に力を加えて動きを作り出す方法を知っていますが、私はより複雑で有機的な動きを作りたいと思っており、これを行うためにニューラルネットワークを使用できるかもしれないと思いました。手の動きの訓練セットに基づいて動きを生成するためにニューラルネットワークを訓練する方法は?

私は、それぞれの生き物が世界ではっきりとした動きを持つことを望みます。私は最初に自分の手を使って(Leap Motionコントローラを使って)手作りの人形を擬人化し、自分の手で行ったトレーニングに基づいてニューラルネットワークに新しい動きを生み出させたいと思っています。

もっと具体的には、自分の手を動かすと、私の手動の人形武器のセットアップは、クリーチャーの剛体に力を加えるでしょう。だから私が指を上に上げれば、システムは自分の指に写っている四肢に一連の上向きの力を加えるでしょう。私はそのクリーチャーを傀儡しているので、NNは各剛体に対してVector3の力を受け取ります。これは、テキストのコーパスに基づいて新しいテキストを生成するのと同じタスクですが、この場合、私の入力は文字列ではなく強制です。

このトレーニングセットに基づいて、NNは手で行った動きを模倣するキャラクタ(手足にかかる力)の動きを生成することは可能ですか?

私はニューラルネットワークに関する多くの経験はありませんが、このプロジェクトのために特に勉強したいと思っています。 Unityで行われた同様のプロジェクト、または実装を単純化するために使用できる関連ライブラリについて知っておくといいでしょう。また、明らかにできることがあれば教えてください!

答えて

1

そうでもない答えが、私はあなたがあなたのモデルを訓練するために適用する戦略が正しいものであるかわからないコメント

には向いていないでしょう。

例えば、x軸上の生物の質量中心がフィットネスとして移動した距離を使用して、強化学習方法(詳細についてはthis questionを確認できます)に行きます。これが奇妙な行動(like this well known robot)につながる場合、たとえば、同じ平面にCoMを保持する人を持つようにするために、y軸とz軸(まだCoMによって)で移動した距離を与えられた人にペナルティを課すような戦略を考えることができます。

あなたがこれを達成したいものを正確に知らなければ、より多くのアドバイスを与えるのは難しいです。ニューラルネットワークベースのテクニックのためにと表示されていない場合は、this really great paperがあります(はその結果のビデオです)。

+0

これは素晴らしいです、提案していただきありがとうございます!私は強化学習に目を向けるつもりです。 – Miles

関連する問題