コンピュータポーカープレイヤーとは、人間または他のコンピュータ相手にポーカー(一般的にはテキサスホールデム)をプレイするように設計されたコンピュータプログラムのことです。一般的にはポーカーボット、または単にボットと呼ばれます。2019年現在、コンピュータはポーカーで人間のプレイヤーに勝つことができます。[ 1 ] [ 2 ] [ 3 ]
これらのボットやコンピュータプログラムは、オンラインポーカーにおいて、人間のプレイヤーの正当な対戦相手として、あるいは不正行為の一形態として頻繁に使用されています。2020年現在、すべてのオンラインポーカーサイトでは、リアルタイムアシスタンス(RTA)や自動ボットの使用はすべて不正行為とみなされていますが、サイト運営者による取り締まりの程度は大きく異なります。
オンラインポーカーをプレイ中にプレイヤーボットやコンピュータ支援を使用することは、ほとんどすべてのオンラインサイトで禁止されています。違反した場合の措置は、永久追放と賞金の没収です。ボットの一種は、人間のオペレーターの助けなしにポーカークライアントとインターフェースできます(つまり、自動プレイヤーとして自分でプレイできます)。リアルタイムアシスタンス(RTA)は、コンピュータプログラムを使用するもう1つの方法です。RTAは、人間のプレイヤーが、別のコンピュータ上で実行されているPioSOLVERやPokerSnowie [ 4 ]などの「ソルバー」と呼ばれるプログラムを使用して意思決定を行う場合です。[ 5 ]
不公平な優位性の問題には2つの側面があります。1つ目は、ボットは疲労などの人間の弱点なしに何時間もプレイでき、人間の感情(または「ティルト」)に影響されることなくゲームの自然な変動に耐えることができることです。2つ目は、2019年以降、コンピュータープログラムPluribus(ポーカーボット)はブラフの読み取り、オッズの計算、戦略の調整において十分な成功を収めており、6人制ノーリミットホールデムでプロのポーカープレイヤーに一貫して勝利しています。[ 6 ] [ 7 ] [ 8 ]
ポーカーサイトの利用規約では一般的にボットの使用は禁止されていますが、その執行レベルはサイト運営者によって異なります。一部のサイトは、さまざまなソフトウェアツールを使用してボットユーザーを特定し、BANします。ポーカークライアントをプログラムしてボットを検出するようにすることもできますが、これはクライアントソフトウェアにスパイウェアを埋め込むのと同等と見なされる可能性があるため、それ自体が議論の的となっています。別の方法としては、プレイ中にランダムな間隔でCAPTCHAを 使用して自動ボットを検出する方法がありますが、リアルタイムアシスタンスには効果がありません。
「ハウスボット」は利益相反を引き起こす可能性がある。厳密に言えば、ハウスボットとはオンラインポーカーサイト自体が操作する自動プレイヤーのことである。こうしたボットは、実店舗におけるサクラに相当する。
実店舗型カジノのサクラもオンラインカジノのボットも、ゲームに参加している他のプレイヤーが知らない情報にアクセスできないように設計されている。問題は、オンライン環境では、カジノ側がボットがカードサーバーから機密情報を受け取っていないことを証明する方法がないことだ。さらに、デジタル環境では秘密裏に情報共有が容易に行えるため、この問題はより深刻化する。カジノ側でさえ、一部のプレイヤーを操作していないことを証明することは事実上不可能である。
チェスや囲碁、その他多くのゲームと同様に、人工知能システムはポーカーでも最高の人間を打ち負かします。[ 9 ] [ 10 ]ポーカーは不完全な情報ゲームです(プレイ中のカードの一部が隠されているため)。そのため、(コンピュータを含め)誰にとってもハンドの最終結果を推測するのは困難です。この情報不足のため、コンピュータのプログラマーは、ベイズの定理、ナッシュ均衡、モンテカルロシミュレーション、ニューラルネットワークに基づくシステムを実装する必要がありましたが、これらはすべて不完全な手法です。しかし、 Pluribusは、ゲーム終了まで全ての動きを評価しようとするのではなく、数手先だけを見てどのような行動を取るかを決定することで、ポーカーを完璧にしました。
PokerSnowieやClaudicoといった古いAIは、コンピュータ自身に膨大な数の対戦をさせることで最適な戦略を導き出すという手法で開発されました。長年にわたり、人間のようにプレイするコンピュータを作ろうとするのではなく、この手法がポーカーAI開発の主流でした。その結果、賭け金の配分が奇数になったり、人間が慣れ親しんでいる戦略とは大きく異なる戦略が採用されるようになりました。
ゲーム理論の観点から、まず1対1(2人)のポーカーゲームにおける完璧なポーカー戦略を近似する方法が開発され、その後、マルチプレイヤーゲームにも適用されました。この文脈における「完璧な戦略」には複数の意味があります。ゲーム理論的な最適の観点から言えば、完璧な戦略とは、他のプレイヤーのどの戦略に対しても負ける可能性がない戦略です。しかし、最適ではないプレイヤーが存在し、弱点を突かれる可能性がある場合、最適な戦略は変化する可能性があります。この場合、完璧な戦略とは、上記で説明したような弱点を正しく、あるいはそれに近い形でモデル化し、それを利用して利益を得る戦略です。
AI は 2010 年代にポーカーで超人的なパフォーマンスを達成し、その経緯は以下のとおりです。2015 年、コンピュータはCepheusを介してヘッズアップ リミット ホールデムを解決しました。このブレークスルーは、3.19×10^14 個の決定ポイントを分析してゲームを効果的に解決する CFR+ (Counterfactual Regret Minimization Plus) アルゴリズムを使用して達成されました。[ 11 ] CFR+ は、繰り返し自己と対戦し、反事実的後悔 (実行されたアクションの期待値と実行できた最善のアクションとの差) を分析することによって機能します。2018 年頃、Libratus はヘッズアップ ノーリミット ホールデムで超人的な能力を示しました。2019 年、Pluribus (Libratus の新しいバージョン) [ 12 ]は、世界で最も一般的にプレイされている単一のポーカーの種類である 6 プレイヤー ノーリミット ホールデムで超人的な能力を示しました。[ 13 ] 2021年、マイクロソフトは古いポーカープログラムであるLibratusを商用リリースし、その後、リバーズカジノで行われた20日間のポーカー大会で4人のプロポーカープレイヤーを打ち負かした。
最近の発展により、ポーカーAIに大規模言語モデル(LLM)アプローチが導入され、中でもPokerGPTが注目されています。膨大な計算リソースを必要とする従来の反事実後悔最小化(CFR)システムとは異なり、PokerGPTは軽量でテキストベースのポーカーAIへのパラダイムシフトを表しています。[ 14 ]このアプローチでは、数百万の実際のポーカーハンド履歴でトレーニングされた微調整された言語モデルを活用し、従来の方法よりも大幅に少ない計算リソースで、人間が読める意思決定をAIが行えるようにします。
Neo Poker Labは、ポーカーの人工知能の研究に特化した実績のある研究チームでした。数年にわたり、後悔最小化法や勾配探索平衡近似法、決定木、再帰探索法、エキスパートアルゴリズムといった最先端のアルゴリズムと手法を開発・応用し、ポーカーゲームに関連する様々な問題を解決してきました。Neo Poker Labのウェブサイトneopokerlab.comは現在閉鎖されています。
2017年まで、オークランド大学の少数の科学者からなるチームは、事例ベース推論を用いてテキサスホールデムポーカーのエージェントを作成・改良していた。このグループは、商用プロジェクトであるSmall WorldsやCivilization(ビデオゲーム)への参加を含め、さまざまなゲームに異なるAI技術を応用した。
2019年まで、コンピュータポーカープレイヤーに関する研究の大部分は、マイケル・ボーリング博士率いるアルバータ大学のコンピュータポーカー研究グループによって行われていました。このグループは、 Poki、PsOpti、Hyperborean、Polarisというエージェントを開発しました。Poki は、カナダのポーカープレイヤー、ダニエル・ネグレアヌをフィーチャーしたエンターテイメントゲーム「STACKED」にライセンス供与されています。PsOpti は、ポーカートレーニングプログラム「Poker Academy」で「SparBot」という名前で利用可能でした。Hyperboreanシリーズは、毎年開催されるコンピュータポーカー競技会に出場し、最近では2012年の競技会で6つのイベントのうち3つの金メダルを獲得しました。同じ研究の流れからPolarisも生まれ、2007年と2008年に人間のプロと対戦し、意義のあるポーカー競技会で優勝した最初のコンピュータポーカープログラムとなりました。
2015年1月、マイケル・ボーリング、ニール・バーチ、マイケル・ヨハンソン、オスカリ・タメリンによるサイエンス誌の記事[ 15 ]は、彼らのポーカーボットCepheusがヘッズアップ・リミット・テキサスホールデムのゲームを「本質的に弱く解決した」と主張した。[ 16 ] [ 17 ] [ 18 ]
カーネギーメロン大学のT・サンドホルムとA・ギルピンは、2004年にロードアイランド・ホールデムと呼ばれる3枚カードゲーム用の無敵のAIエージェントの開発からポーカーAIの研究を始めた。次のステップはGS1で、市販されている最高のポーカーボットを凌駕した。2006年には、このグループのポーカーエージェントが毎年開催されるコンピュータ競技会に参加するようになった。「いずれは最高の人間プレイヤーよりも優れたプログラムが完成するだろう」とサンドホルムは主張し、彼のボットであるクラウディコは2015年に4人の人間と対戦した。
2017年、このプログラムのソフトウェアであるLibratusは、4人のプロのポーカープレイヤーと対戦した。実験終了までに、4人の人間プレイヤーはLibratusに合計180万ドルの仮想資金を失った。[ 19 ]
2019年、LibratusはPluribus(ポーカーボット)と呼ばれる最終バージョンに置き換えられました。
初期のノーリミットポーカーボット競技会の1つは、2004年に国際認知モデリング会議によって開催されました。[ 20 ]このトーナメントには、世界中のさまざまな大学から5つのボットが参加しました。優勝者はトロント大学のエース・グルーバーでした。[ 21 ]
かつて、Association for Computing Machinery(ACM)は、参加者がそれぞれのプラットフォーム上でポーカーをプレイできるソフトウェアを提出するコンテストを開催していました。イベント主催者は、ソフトウェアを操作して結果を報告することでコンテストを運営していました。
2005年夏、オンラインポーカーサイトのゴールデンパレスは、ラスベガスの旧ビニオンズで、賞金10万ドルのプロモーショントーナメントを開催した。このトーナメントは「2005年ワールドシリーズオブポーカーロボット」と銘打たれ、参加費無料のボット限定トーナメントとなった。ボット開発者は6カ国のコンピュータ科学者で、自費で参加した。ホストプラットフォームはポーカーアカデミーだった。このイベントでは、フィル・ラークによるデモンストレーションのヘッズアップイベントも行われた。
2007年夏、アルバータ大学は、カナダ・ブリティッシュコロンビア州バンクーバーで開催されたAAAI(米国人工知能学会)の会議において、人間とPolarisボットによる高度な対戦型トーナメントを開催した。開催プラットフォームはアルバータ大学が開発した。賞金総額は最大5万ドルで、人間が好成績を収めるよう促す特別なルールが設けられていた。参加費は無料だった。このユニークなトーナメントは、500ハンドずつの4つのセッションで構成され、人間が僅差で勝利した。
2008年夏、アルバータ大学とポーカーコーチングウェブサイトのStoxpokerは、ラスベガスで開催されたワールドシリーズオブポーカー期間中に2回目のトーナメントを開催した。このトーナメントは、500ハンドずつ6つのセッションに分かれており、参加者はヘッズアップリミットのスペシャリストだった。Polarisが3勝2敗1引き分けで優勝した。トーナメントの結果(各試合のハンド履歴を含む)は、大会ウェブサイトで閲覧できる。
2015 年 4 月から 5 月にかけて、カーネギー メロン大学サンドホルムのボットClaudico は、ノー リミット テキサス ホールデムの一連の試合で 4 人の人間の対戦相手と対戦しました。[ 22 ] [ 23 ]最終的に、80,000 ハンドをプレイした後、人間は合計で $732,713 を獲得しました。しかし、技術的には人間が勝ったものの、科学者たちは、その $732,713 を総賭け金 $170,000,000 ($170 百万) と比較すると、その勝利は統計的に有意ではない (むしろ統計的に引き分け) と考えました。しかし、この主張は不誠実であると判断した人もいます。[ 24 ]ここで統計的に有意ではないとは、Claudico のプログラマーが、人間がコンピュータ プログラムよりも優れていると 95% の信頼度 (95% 信頼区間) で言えないことを意味します。しかし、90% の信頼区間では統計的に有意な勝利です。これは、人間のプレイヤーが10対1から20対1のどちらかのオッズで有利であることを意味する。[ 24 ]
トーナメントは、2人ずつの2つのセットで行われました。各セットで、プレイヤーは反対のカードを受け取ります。つまり、一方のコンピューターがスペードのエースとクラブのナイン(As9c)を持ち、人間がJh8dを持っている場合、セット内のもう一方のプレイヤーは、コンピューターのJh8dに対してAs9cを持つことになります。しかし、人間プレイヤーがコンピューターよりも多く勝利したとしても、すべてのプレイヤーが直接対決でプラスの成績を収めたわけではありません。
各選手の賞金総額は以下のとおりです。
2006年から2018年にかけて、年間コンピュータポーカー競技会では、ポーカープログラムを対象とした一連の競技会が開催されました。2010年以降、ヘッズアップ・リミット・テキサスホールデム、ヘッズアップ・ノーリミット・テキサスホールデム、3人制リミット・テキサスホールデムの3種類のポーカーがプレイされました。各イベントでは、最も多くのマッチに勝利したエージェント(バンクロール・インスタント・ランオフ)と、最も多くの賞金を獲得したエージェント(トータル・バンクロール)の2人の勝者が選ばれます。バンクロール・インスタント・ランオフは強豪プレイヤーに有利であり、トータル・バンクロールは他のエージェントのミスをうまく利用したプレイヤーに有利であるため、これらの勝者は同じエージェントではないことがよくあります。この競技会は科学的研究に基づいており、何百万ものポーカーハンドを実行することで、すべての結果が統計的に有意であることを保証することに重点が置かれました。2012年の競技会では、運の要素を排除するために7000万ハンド以上がプレイされ、同じ形式で行われました。
一部の研究者は、人々がAIをプレイしてその品質を評価できるウェブアプリケーションを開発しました。2012年12月時点で、以下の主要なグループおよび個々の研究者のエージェントが見つかりました。
最後のポーカー大会は非公開だった。Pluribus (ポーカーボット)プログラムが6ハンドノーリミットホールデムでプロに勝ち続けた結果が、Facebookの投稿でひっそりと発表された。[ 29 ]