方策勾配法とは?仕組み・Q学習との違い・代表手法をわかりやすく解説

AIの初心者
「方策勾配法」は、最適な行動を見つける方法ですよね?Q学習のように行動の価値を計算する方法とは、何が違うのでしょうか?

AI専門家
Q学習は、各行動の価値を学び、その値を見て行動を選びます。方策勾配法は、状態から行動を選ぶ戦略、つまり方策そのものを直接調整する方法です。

AIの初心者
戦略そのものを学ぶとは、具体的にどういうことでしょうか?

AI専門家
たとえば盤面を見たときに、候補手を一つずつ採点する代わりに、どの手を選ぶ確率を高めるべきかを学びます。行動が多い場合や、ロボットの関節角度のような連続値を決める場合に力を発揮します。

方策勾配法(Policy Gradient Method)は、強化学習において状態から行動を決める「方策」を、期待報酬が大きくなる方向へ直接最適化する手法です。Q学習などの価値ベース手法とは学習対象が異なり、確率的な行動選択や連続的な制御を自然に表現できます。
この記事では、方策勾配法の定義、学習の流れ、数式の意味、Q学習との違い、REINFORCEやActor-Criticなどの代表手法、長所と注意点を順に解説します。
方策勾配法とは
強化学習では、行動する主体を「エージェント」、エージェントが置かれる状況を「状態」、行動の良し悪しを伝える数値を「報酬」と呼びます。そして、ある状態でどの行動を選ぶかを定めるルールが方策です。
方策勾配法では、方策をパラメータ\(\theta\)で表した関数\(\pi_\theta(a\mid s)\)として扱います。これは「状態\(s\)で行動\(a\)を選ぶ確率」を表します。たとえば迷路の分岐で、右へ進む確率を70%、左へ進む確率を30%と出力するイメージです。
試行の結果、右へ進んだときに高い報酬を得たなら、同じような状態で右を選ぶ確率が高くなるように\(\theta\)を更新します。ここでいう「直接」とは、行動価値の最大値を毎回求めて行動を決めるのではなく、方策のパラメータ自体を最適化するという意味です。
方策勾配法はどう学習するのか
学習は、エージェントが環境で試行錯誤し、その結果を方策へ戻すサイクルで進みます。
- 現在の状態を観測する。
- 方策が出力した確率分布から行動を選ぶ。
- 環境が次の状態と報酬を返す。
- 一連の行動で得た報酬を集計する。
- 高い報酬につながった行動が選ばれやすくなるように方策を更新する。

迷路なら、ゴールへの到達に正の報酬、壁への衝突や長い遠回りに負の報酬を設定できます。ただし、一回の行動だけでなく、その後に得た報酬まで考える必要があります。そこで、ある時点から先の割引報酬の合計である「収益(Return)」を使います。
方策が確率的であるため、現時点で最善に見える行動だけに固定されず、別の行動も試せます。これが「探索」です。一方、すでに良いと分かった行動を多く選ぶことを「活用」といい、方策の確率分布が両者のバランスを担います。
方策勾配の数式を直感的に読む
\(J(\theta)=\mathbb{E}_{\tau\sim\pi_\theta}[R(\tau)]\)目的関数\(J(\theta)\)は、方策\(\pi_\theta\)に従って得られる軌跡\(\tau\)の収益\(R(\tau)\)について、その期待値を表します。方策勾配法の目標は、この値を最大にする\(\theta\)を見つけることです。
基本的な勾配は、次の形で理解できます。
\(\nabla_\theta J(\theta)=\mathbb{E}\left[\nabla_\theta\log\pi_\theta(a_t\mid s_t)\,G_t\right]\)\(G_t\)は時刻\(t\)以降の収益です。\(G_t\)が大きい行動では、\(\log\pi_\theta(a_t\mid s_t)\)の勾配を使って、その行動の選択確率を高める方向へ更新します。反対に、結果が基準より悪ければ確率を下げます。
パラメータ更新は、概念的には次の形です。
\(\theta\leftarrow\theta+\eta\,\widehat{\nabla_\theta J(\theta)}\)\(\eta\)は学習率で、一度にどれだけパラメータを動かすかを決めます。大きすぎると学習が不安定になり、小さすぎると改善が遅くなります。実装では\(G_t\)をそのまま使わず、平均的な期待値を差し引いたAdvantageを用いてばらつきを抑えることも一般的です。
Q学習など価値ベース手法との違い
Q学習は、状態と行動の組み合わせが将来どれほどの報酬を生むかを表す行動価値関数を学び、通常は価値が最大の行動を選びます。方策勾配法は、状態から行動確率や連続値の分布を出す方策を学びます。

| 比較項目 | Q学習などの価値ベース手法 | 方策勾配法 |
|---|---|---|
| 主な学習対象 | 状態価値・行動価値 | パラメータ化した方策 |
| 行動の決め方 | 価値が高い行動を選ぶ | 方策の確率分布から選ぶ |
| 連続行動 | 離散化などの工夫が必要 | 確率分布の平均・分散として表現しやすい |
| 確率的な方策 | 探索規則を別に加えることが多い | 方策そのものとして自然に表現できる |
| 主な難しさ | 行動数が多いと最大値探索が重い | 勾配推定のばらつきが大きい |
なお、「方策勾配法は価値関数を一切使わない」と覚えるのは正確ではありません。REINFORCEの基本形は方策だけでも構成できますが、Actor-Criticでは価値関数を学ぶCriticが、方策を学ぶActorを支援します。違いの中心は、最終的な行動方針を表す方策を明示的に学習することです。
代表的な方策勾配系の手法
「方策勾配法」は単一のアルゴリズム名ではなく、方策の勾配を使って最適化する手法群の総称です。代表例は次のとおりです。
- REINFORCE:エピソードで得た収益を使う基本的なモンテカルロ方策勾配法。考え方は明快ですが、勾配の分散が大きくなりやすい手法です。
- Actor-Critic:方策を担当するActorと、状態や行動の価値を評価するCriticを組み合わせます。Criticの評価を基準にすることで、更新のばらつきを抑えます。
- PPO:一度の更新で方策が変わりすぎないように制限し、性能と実装のしやすさのバランスを取る手法です。
このほか、連続制御向けに決定論的な方策を学ぶ系統もあります。初心者はまずREINFORCEで原理を理解し、次にActor-Criticで価値推定を併用する理由を学ぶと整理しやすいでしょう。
方策勾配法の長所
方策勾配法の大きな長所は、行動を確率分布として直接表現できることです。
- 連続行動を扱いやすい:ロボットの関節角度、速度、操舵量などを、正規分布などのパラメータとして出力できます。
- 行動候補が多い問題に対応しやすい:すべての行動価値を列挙して最大値を探す構成を避けられます。
- 確率的な戦略を学べる:同じ状態でも複数の行動を使い分ける問題や、相手に行動を読まれたくないゲームに適します。
- ニューラルネットワークと組み合わせやすい:画像などの高次元な状態から複雑な方策を表現できます。

ただし、行動数が多ければ常に方策勾配法が有利というわけではありません。離散行動が少なく、価値を安定して推定できる問題では、価値ベース手法のほうが効率的な場合もあります。
学習時の注意点
方策勾配法は柔軟な一方、学習結果が試行で得た報酬に強く左右されます。実務や実験では次の点に注意が必要です。

- 勾配の分散:同じ方策でも試行結果が変わり、更新方向がばらつきます。ベースライン、Advantage推定、報酬の正規化などで抑えます。
- サンプル効率:多くの環境とのやり取りが必要になりがちです。実機での試行が高価または危険なら、シミュレーターやオフラインデータの利用を検討します。
- 局所解と更新幅:目的関数は複雑で、望ましくない方策に収束することがあります。学習率、初期値、エントロピー項などの調整が重要です。
- 報酬設計:指標の抜け道を学ぶ「報酬ハッキング」が起こり得ます。期待する振る舞いを報酬が本当に表しているかを検証します。
学習曲線は一回だけで判断せず、複数の乱数シードで平均とばらつきを確認します。また、自動運転や実機制御のような安全性が重要な用途では、方策の性能だけでなく、制約違反や失敗時の停止設計も欠かせません。
方策勾配法の主な適用例
| 分野 | 方策が決める行動 | 向いている理由 |
|---|---|---|
| ロボット制御 | 関節角度、力、移動速度 | 連続値を直接出力でき、複数関節の協調を学べる |
| ゲームAI | 移動、攻撃、資源配分 | 多数の選択肢と確率的な戦略を扱える |
| 運用・資源制御 | 割り当て量、制御量、順序 | 時間をまたぐ判断と累積報酬を最適化できる |
| 自動運転の研究 | 操舵、加減速、車線選択 | 連続制御と環境変化への適応をモデル化できる |
ゲームやロボットの例では、単に行動候補が多いだけでなく、現在の行動が将来の結果へ影響する点が重要です。方策勾配法は累積報酬を目的にするため、このような連続した意思決定を一つの問題として扱えます。
一方、医療、金融、自動運転などへの適用は、研究例があることと、そのまま実環境で安全に使えることを分けて考える必要があります。データの偏り、説明可能性、法規制、人間による監督も含めて設計します。
まとめ
方策勾配法は、期待報酬が大きくなるように方策のパラメータを直接更新する強化学習手法です。確率的な方策や連続行動を自然に扱えるため、ロボット制御やゲームAIなど、複雑な意思決定で活用されます。
Q学習との違いは、主に学習対象と行動の決め方にあります。ただし、Actor-Criticのように価値関数を補助的に用いる手法もあります。方策勾配法を選ぶときは、表現力だけでなく、勾配の分散、サンプル効率、報酬設計、安全性まで含めて判断することが大切です。
更新履歴
| 日付 | 内容 |
|---|---|
| 2025年2月1日 | 初回公開 |
| 2026年7月22日 | 数式の読み方と代表手法を補い、Q学習との比較と学習上の注意点を改訂 |
