SARSA法

提供: testwiki
ナビゲーションに移動 検索に移動

テンプレート:Machine learning bar SARSA法State–Action–Reward–State–Action)はマルコフ決定過程でのポリシーを学習するためのアルゴリズムであり、機械学習のサブカテゴリーである強化学習の分野で使われる。RummeryとNiranjanのテクニカルノート[1]の中で、「Modified Connectionist Q-Learning(MCQ-L, 修正コネクショニストQ学習)」という名前で提案された。リチャード・サットンにより提案された、「SARSA」という名前は、脚注で言及されるに留まった。

このネーミングは、行動価値関数Qの更新アルゴリズムが、現在の状況S1、現在の行動A1、行動による報酬R2、次の状態S2、その状態で選ぶ行動A2の5つ組で決まることに由来する。一般化すると、(St,At,Rt+1,St+1,At+1)である[2]。なお、Rt+1は報酬の定義によっては、Rtとも書かれるが、リチャード・サットンの『強化学習(第2版)』の表記法に合わせた[3]

アルゴリズム

状態 St のエージェントが行動 At を選び、報酬 Rt+1 を得て、状態が St+1 に遷移し、その次の行動が At+1 だとする。このとき行動価値関数 Q(St,At) を次の式で更新する。Q(St,At)Rt+1+γQ(St+1,At+1) に近づくように学習される。

Q(St,At)(1α)Q(St,At)+α[Rt+1+γQ(St+1,At+1)]

SARSAでは、エージェントは環境と相互作用し、行われた行動ベースでポリシーを更新する。そのため、オンポリシー型の学習アルゴリズムである。

学習率 0<α<1 は、古い情報を、新しく獲得した情報によってどの程度上書きするかを決定する。0にすれば、エージェントは何も学ばないし、1にすれば、最近の情報だけを近視眼的に考慮するようになる。

割引率 0<γ<1 は、将来の報酬の重要度を決定する。0にすれば、エージェントは日和見主義的、近視眼的[4]になる。要するに、現在の報酬だけを考慮するようになる。1に近づければ、長期的視野で高い報酬を求めるようになる。1にしたり、1を超えたりすると、Q値は発散してしまう可能性がある。

関連項目

出典

テンプレート:Reflist