このブログ内を検索可能

2024年7月2日火曜日

テキサスホールデムの確率(2) 勝つためにはどうすればよいか

 テキサスホールデムはプレイヤー同士の戦いのため、ディーラーとの基本1対1のペイアウト率100%割のゲームに比べて勝てる可能性がある。

しかし相手はほとんどカジプロをやりこんでいる者ばかりなので、普通にやっているとおそらく勝てない。実際リバーシもことごとく惨敗している。

しかしテキサスホールデムで稼いで売っているRMT業者もいるので、おそらくここが攻略所だと踏んでいる。とりあえず現時点ではカジプロではRMT購入側であるが、このプログラムがうまく行けばチップの自給自足が可能で、かつ売却もいずれは視野に入れる。

ダイヤ購入での時間短縮はどうにもならないが、とりあえずチップを稼げば楽しめるし金も稼げる。できれば維持のために月100万はほしいがおそらく買い手があまりいない。

さてテキサスホールデムにおいてはまず自身の勝率を正確に把握することが重要で、そのうえで相手の掛け金で相手の手の良さが尤度比で変わることを考慮し、確率分布を再計算する必要がある。

しかしながら尤度比は人によって異なる(ワンペアでも強気にいく者の場合は尤度比は低くなり、確実に勝てると踏んだ時のみBET額を上げる者の場合は尤度比は大きくなる)ので、ここに関しては自分の(=一般的な人の考え方)データで学習させたいが、機械学習はあまり知らないがもしかすると遺伝的アルゴリズムでいけるかもしれない。多数のCPUで長期間対戦させて相手の尤度比をどのように決定すれば全体的な勝率(実際はペイアウト率すなわち時間チップ高率)があがるかでできるかもしれないができないかもしれない。

さすがに10年くらい経った普通のゲームで、ここまでデータとプログラムを駆使してできるプレイヤーはおそらくほぼいないと思うので、おそらく通常のプレイヤー相手ならば勝てるかと思われる。

ただ初の試みなのでこれが成功するかどうかはわからないし失敗に終わる可能性もある。しかしやってみる価値はあるので、とりあえずまずは5つのカードから役を判定するプログラムを作る。順番としては

カードから役を判定

手元の札の全パターンに役を取得し確率分布(離散)を計算

相手にも同様のことを行う

なおそれぞれの確率分布は役の個数分しかデータはないので先に計算したものを利用する手もあるがそのあたりはデータ量と計算時間で都度判断する

勝利確率を計算

相手の挙動により勝利確率を調整

という流れになる。