SARSAとQ Learningを選択する場合


18

SARSAとQ Learningは、どちらも同様の方法で機能する強化学習アルゴリズムです。最も顕著な違いは、SARSAがポリシーに基づいており、Qラーニングがポリシーに基づいていないことです。更新ルールは次のとおりです。

Q学習:

Q(st,at)Q(st,at)+α[rt+1+γmaxaQ(st+1,a)Q(st,at)]

SARSA:

Q(st,at)Q(st,at)+α[rt+1+γQ(st+1,at+1)Q(st,at)]

ここで、st,atおよびrtは、タイムステップtでの状態、アクション、および報酬であり、γは割引係数です。

SARSAでは実際のアクションを実行し、Q Learningでは最高の報酬でアクションを実行するという点を除いて、ほとんど同じように見えます。

一方が他方よりも優先すべき理論的または実用的な設定はありますか?Q Learningで最大限に活用することは、継続的なアクションスペースではコストがかかり、さらに高くなる可能性があることがわかります。しかし、他に何かありますか?


連続アクションスペースでは、さまざまなポリシーグラデーションメソッドなどの直接ポリシー検索メソッドが一般的に使用されます。 (次元の呪いのため)。
HelloGoodbye

回答:


27

SARSAでは実際のアクションを実行し、Q Learningでは最高の報酬でアクションを実行するという点を除いて、ほとんど同じように見えます。

実際、両方で、実際に生成されたアクション次に「実行」します。Qラーニングでは、実行したアクションに関係なく、可能な次のアクションの最大推定値から推定値を更新します。SARSAでは、それに基づいて推定値を更新し、同じアクションを実行します。at+1

これはおそらくあなたが質問で「取る」ことを意味しますが、文献では、アクションを取ることは、例えば値になり、、影響を与えることを意味します。atrt+1st+1

一方が他方よりも優先すべき理論的または実用的な設定はありますか?

Qラーニングには、SARSAと比較して次の利点と欠点があります。

  • Qラーニングは最適なポリシーを直接学習しますが、SARSAは探索しながら最適に近いポリシーを学習します。あなたがサーザを使用して、最適な政策を勉強したい場合は、戦略を決定する必要があります崩壊にで調整する手間のかかるハイパーなることが-greedyアクションの選択、。ϵϵ

  • Qラーニング(および一般にポリシー外学習)は、SARSAよりもサンプルごとの分散が大きく、結果として収束する問題が発生する可能性があります。これは、Qラーニングを介してニューラルネットワークをトレーニングするときに問題として現れます。

  • SARSAは収束に近づき、探索的移動によるペナルティを可能にしますが、Qラーニングはそれらを無視します。これにより、SARSAはより保守的になります-最適なパスに近い大きな負の報酬のリスクがある場合、Qラーニングは探索中にその報酬をトリガーする傾向がありますが、SARSAは危険な最適なパスを回避し、ゆっくりとそれを使用することだけを学びます探査パラメータが削減されたとき。この効果を実証する古典的なおもちゃの問題は、クリフウォーキングと呼ばれます。

実際には、ミスに費用がかかる場合、最後の点が大きな違いを生む可能性があります。たとえば、シミュレーションではなく現実の世界でロボットをトレーニングしている場合です。ロボットが損傷した場合にリアルタイムでお金がかかった場合、高リスクを回避するより保守的な学習アルゴリズムを好むかもしれません。

シミュレーションで、または低コストで高速な繰り返し環境で最適なエージェントをトレーニングすることが目標である場合、最初の点(最適なポリシーを直接学習する)により、Qラーニングが適切な選択です。エージェントがオンラインで学習し学習中に得られる報酬に関心がある場合は、SARSAの方が適している可能性があります。


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.