どのスロットマシンが当たりやすいか分からないカジノで、限られた手持ちのコインをどう使えば儲けを最大にできるか——この問題設定から生まれたのがバンディットアルゴリズムです。強化学習の核心「活用と探索」を最も純粋な形で学べるキーワードです。

📖 ひと言でいうと

バンディットアルゴリズムとは、「うまくいくと分かっている行動を選ぶ(活用)」と「未知の行動を試して情報を得る(探索)」のバランスを取りながら、得られる報酬の合計を最大化しようとする手法の総称です。名前の由来はスロットマシンの俗称「バンディット(盗賊)」です。当たり確率の異なる複数の台を前に、どの台にコインを入れるかを繰り返し決める「多腕バンディット問題」を解く手法群で、ε-greedy方策やUCB方策がその代表例にあたります。

🖼 1枚でわかるバンディットアルゴリズム

バンディットアルゴリズム — 活用と探索の綱引き
  • 活用 — 既知の情報を基に、報酬が最大となる行動を選ぶ
  • 探索 — 未知の情報を得るために、新たな行動を試す
  • 正体 — 活用と探索のバランスを取る手法の「総称」
  • 代表例 — ε-greedy方策、UCB方策
  • 由来 — スロットマシン(バンディット)の台選び問題
つくもち屋「G検定対策」SUMMARY

📘 公式テキストの説明

バンディットアルゴリズムは、強化学習において将来の累積報酬を最大化する行動を選択する際に活用される手法である。行動の組み合わせが無数に存在するため、「活用」と「探索」という2つの考え方が重要となる。活用では、既知の情報を基に報酬が最大となる行動を選択する。一方、探索では、未知の情報を得るために新たな行動を試みる。バンディットアルゴリズムは、この活用と探索のバランスをうまく取りながら、エージェントが最適な行動を選択する能力を向上させることを目指す。強化学習においてはどちらも重要な要素であり、この活用と探索のバランスを取る手法の総称をバンディットアルゴリズムという。ε-greedy方策やUCB方策がある。

覚えるべき骨格は3つです。①「活用=既知の情報で報酬最大の行動」「探索=未知の情報を得る新たな行動」という2つの定義、②バンディットアルゴリズムは単一の手法ではなく「バランスを取る手法の総称」であること、③具体例としてε-greedy方策とUCB方策が挙げられることです。

🔍 しっかり理解する

活用と探索は、どちらか一方では失敗する

🅰 活用(exploitation)
  • 既知の情報を基に報酬が最大となる行動を選ぶ
  • 目先の報酬を確実に稼げる
  • 偏りすぎると、まだ見ぬ最良の行動を永遠に見逃す
🅱 探索(exploration)
  • 未知の情報を得るために新たな行動を試す
  • より良い行動を発見するチャンスが生まれる
  • 偏りすぎると、報酬の低い行動に資源を浪費する

序盤にたまたま小さな当たりが出た台に張り付く(活用一辺倒)と、実はもっと当たりやすい台があっても気づけません。逆にいつまでも全部の台を均等に試す(探索一辺倒)と、ハズレ台にもコインをつぎ込み続けることになります。総報酬を最大化するには、どこかで両者の折り合いをつける必要があります。この折り合いのつけ方を具体的なルールにしたものがバンディットアルゴリズムです。

代表例①ε-greedy方策と②UCB方策

ε-greedy方策は、確率εでランダムに探索し、残りの確率で報酬平均が最高の行動を活用する、最もシンプルなバランスの取り方です。UCB方策は、報酬の期待値に「試行回数が少ないほど大きい不確かさの上乗せ」を加えた評価値で行動を選び、情報が足りない行動を狙って探索します。どちらも「活用と探索のバランスを取る」という同じ目的を、異なる方法で実現している点を押さえましょう。

強化学習の中での位置づけ

強化学習では行動の組み合わせが無数にあり、すべてを試し尽くすことはできません。そこで「どの行動にどれだけ試行を割り振るか」という配分の考え方が必要になり、その理論的な原型がバンディット問題です。なお厳密には、古典的なバンディット問題は「状態の変化を考えない(どの台を選んでも次の場面が変わらない)」という、強化学習を最も単純化した設定で研究されてきました。状態遷移まで含む本格的な強化学習の入り口として、活用と探索の考え方を教えてくれる存在です。

💡 具体例で考える

ウェブサービスのA/Bテストの進化形が、バンディットアルゴリズムの代表的な応用です。従来のA/Bテストでは、ボタンのデザイン案AとBを一定期間きっちり半々で表示し(全部探索)、期間終了後に勝者だけを使います(全部活用)。この方式では、テスト期間中ずっと劣った案にも半分のユーザーを割り当て続ける損失が発生します。バンディットアルゴリズムを使うと、成績データがたまるにつれて優勢な案への表示を自動的に増やしつつ、劣勢な案にも検証のための少量の表示を残せるため、「テストしながら稼ぐ」ことができます。

ニュースアプリの見出し選択、ECサイトのレコメンド、広告配信の最適化も同じ構造です。いずれも「どの選択肢が当たりか事前に分からず、表示してみて初めてクリック率が分かる」というスロットマシンの台選びと同型の問題だからです。

⚠️ よくある誤解・紛らわしい用語

💡 ポイント
  • 単一のアルゴリズム名ではない — バンディットアルゴリズムは「活用と探索のバランスを取る手法の総称」です。ε-greedy方策やUCB方策は、その傘の下にある具体的な手法です。並列の別概念だと誤解しないようにしましょう。
  • 「活用だけが合理的」は誤り — 目先の報酬最大の行動だけを選び続けると、推定が不正確なまま固定され、真に最良の行動を見逃す恐れがあります。探索は無駄ではなく、情報収集への投資です。
  • A/Bテストとの違い — A/Bテストは「探索期間」と「活用期間」を完全に分けます。バンディットアルゴリズムは両者を同時並行で行い、配分を動的に調整します。
  • Q学習との違い — Q学習は状態から状態への遷移を前提にQ値を更新する学習法です。バンディット問題は基本的に状態遷移を考えない、より単純な設定の行動選択問題です。

📝 試験でのポイント

💡 ポイント
  • 「活用=既知の情報を基に報酬が最大となる行動を選択」「探索=未知の情報を得るために新たな行動を試みる」という定義の対応付けが最頻出ポイントです。入れ替えた誤答に注意しましょう。
  • 「活用と探索のバランスを取る手法の総称」というフレーズからバンディットアルゴリズムを選ばせる問題が想定されます。
  • 具体例としてε-greedy方策・UCB方策の2つを挙げられるようにしておきましょう。
  • 事例文(広告配信・レコメンドなど)からバンディットアルゴリズムの適用場面を判定させる問題も考えられます。

📚 まとめ

バンディットアルゴリズムは、既知の最良を選ぶ「活用」と、未知を試す「探索」のバランスを取りながら報酬の最大化を目指す手法の総称です。名前はスロットマシンの台選び問題に由来し、代表例にε-greedy方策とUCB方策があります。活用と探索それぞれの定義と、偏りすぎるとどう失敗するかをセットで理解し、「総称である」という位置づけと具体例2つを確実に答えられるようにしておきましょう。