2016-09-28 13 views
0

私はTensorflowでa3c implementationのオープンソースバージョンを使用していますが、これはatari 2600実験ではうまく動作します。しかし、私がoutlined in the paperのようにMujocoのネットワークを変更すると、ネットワークは何か意味のあることを学ぶことを拒否します。誰も、継続的なドメインの問題を持つa3cの仕事のオープンソースの実装を作ることができましたか?例えばmujoco?非同期効果の俳優批評家をMujoco実験で使用できる人はいますか?

+0

こんにちは@Sahil、私はA3C連続制御の実装も探しています。私はDQNのビジュアル入力を使用して、https://cs.stanford.edu/people/karpathy/convnetjs/demo/rldemo.htmlと非常によく似たゲームをプレイするエージェントを訓練しようとしています。 DQNで2Dモーションゲームを試して成功したかどうか知りたいですか? –

+0

私はあなたのコメントを理解するとは思わない。あなたはそれを言い換えることができますか? – Sahil

答えて

4

私は振り子の連続的な行動をしており、うまくいきます。

まず、ニューラルネットワークを構築し、アクションを選択するための平均(mu)と標準偏差(sigma)を出力します。

連続動作の本質的な部分は、正規分布を含むことです。関数tensorflowが与える使用し、あなたがしたいアクションをサンプリングする場合

normal_dist = tf.contrib.distributions.Normal(mu, sigma) 
log_prob = normal_dist.log_prob(action) 
exp_v = log_prob * td_error 
entropy = normal_dist.entropy() # encourage exploration 
exp_v = tf.reduce_sum(0.01 * entropy + exp_v) 
actor_loss = -exp_v 

sampled_action = normal_dist.sample(1) 

振子の完全なコードは、私の中に見つけることができるコードがあるので、私は次のようになり、tensorflowを使用していますGithub。 https://github.com/MorvanZhou/tutorials/blob/master/Reinforcement_learning_TUT/10_A3C/A3C_continuous_action.py

+1

これは本当に適切な答えのようには見えません。外部サイトへのリンクはありません。本当の夏を思い出して、そしておそらくいくつかのコードスニペット。 – GhostCat

1

は、私はうまくいけば、これは私の靴の誰かを助け、長い時間のために、この上でハングアップした離散空間における

アドバンテージ俳優、評論家は簡単です:あなたの役者が予想よりも優れていた場合、確率を高めますその動きをする。それが悪化したら、それを減らしてください。

連続したスペースでも、どうやってこれを行いますか?あなたのポリシー機能が出力するベクトル全体があなたの動きです。あなたがポリシー上で、あなたが予想以上に優れている場合、「そのアクションをさらに出力してください」という言い方はありません。あなたが既にそのベクトルを正確に出力しているからです。

ここで、モルバンの答えが出てきます。単なる動作を出力するのではなく、各出力機能に対して平均と標準出力を出力します。アクションを選択するには、入力を渡して各出力フィーチャの平均/標準偏差を作成し、この正規分布から各フィーチャをサンプリングします。

もしうまくいくならば、ポリシーネットワークの重みを調整して平均/標準偏差を変更して、この動作を促してください。あなたがうまくいけば、あなたは逆のことをします。

関連する問題