ポーカーゲームにおけるCPUの思考ルーチンの実装

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
サンタクロース
記事: 8
登録日時: 13年前

ポーカーゲームにおけるCPUの思考ルーチンの実装

#1

投稿記事 by サンタクロース » 13年前

こんばんわ

今回はポーカーゲームにおけるCPUの思考ルーチンの実装の仕方について質問したいと思います

私が現在作っているポーカーゲームでは、プレイヤーとCPU4人の計5人で行われるものです

そこでCPUには以下の動作をさせたいのです
・「レイズ」「ドロップ」「コール」の選択する
・カードチェンジする時に、どのカードを捨てるかを決める

今の私では、これらの動作を実現するためには、状況ごとにif文を多用して力技で実装するくらいしか思いうかばないのですが、よりスマートな実装方法は存在するのでしょうか?
もしあるのならば、さわり程度にご教授いただければと思います

ちなみにif文を多用して力技で実装するというのは、
例えば、「手札の役が良ければ、レイズ(掛け金を上げる)する」
   「手札に役がなく明らかに勝てなそうであれば(ドロップ)する」というものです。
もちろんこれだけでは相手の手が丸わかりになってしまうので、
「たまに、手札に役が無くてもレイズ(掛け金を上げる)する」というブラフ行為を
乱数によって実装しようと思っています

beatle
記事: 1281
登録日時: 13年前
住所: 埼玉
連絡を取る:

Re: ポーカーゲームにおけるCPUの思考ルーチンの実装

#2

投稿記事 by beatle » 13年前

基本的にはif文多用になると思います。
スマートと言えるかは分かりませんが、その他には機械学習を用いる手法もあります。
まあ要するに、ポーカーの対戦記録をいっぱい集めてきて、その中から勝利パターンを見つけてくるってわけです。
if文多用より難しいかもしれませんね。データ集めも、学習も。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: ポーカーゲームにおけるCPUの思考ルーチンの実装

#3

投稿記事 by softya(ソフト屋) » 13年前

まあ間違いなくif文と条件テーブルになるでしょう。
ニューラルネットワークなどのAI学習システムを導入して学習させる方法もあります。

googleで参考になるリンクを検索してみて下さい。
「人工知能 ポーカー - Google 検索」 人工知能なので難しい内容が多いとは思います。
https://www.google.co.jp/search?num=50& ... 3l0.frgbld.
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

サンタクロース
記事: 8
登録日時: 13年前

Re: ポーカーゲームにおけるCPUの思考ルーチンの実装

#4

投稿記事 by サンタクロース » 13年前

>>beatleさん、softyaさん 回答ありがとうございます

人工知能を理解し組み込もうとすると大分時間がかかると思うので、いったんはif文の分岐によって完成させたいと思います

人工知能については、麻雀ゲーム(作るとしたらですが)を作るときに、そのあたりに学習しようと思います

閉鎖

“C言語何でも質問掲示板” へ戻る