官术网_书友最值得收藏!

第2章 怎么玩一手完美的撲克

既有隨機成分,玩家又只知道不完整的信息,這就是兩人德州撲克的難題。這個難題已經被解決了:人們提出了一個不可能被打敗的策略。

要用計算機解決雙人游戲有兩種方法:要么編寫一個程序,讓它能打敗所有人類對手,這種做法不一定一勞永逸,因為人類玩家有可能迎頭趕上,這就是“弱解決”;要么編寫一個以最優(yōu)策略運作、從而不能被打敗的程序,這就是“強解決”。

對于國際象棋來說,我們已經完成了弱解決:自從1997年加里·卡斯帕羅夫與計算機深藍(Deep Blue)的著名對局以后,機器就一直比所有人類選手都強大,在今天,人類選手已經絕無可能逆轉局勢。但由于游戲局面的大量組合(據計算,大概有10120種可能的對局),大部分專家認為我們不可能在可預見的將來完成強解決。有些游戲編程的專家,比如說法國的西蒙·維耶諾和朱利安·勒穆瓦納,也就是最優(yōu)秀的萌芽游戲萌芽游戲(Sprouts)是一種紙筆游戲,雙方開始前先在紙上畫上一定數量的點,然后雙方交替,每次畫上一條線連接任意兩點,然后在線上畫上一點。但畫線時,每個點最多只能引出三個線頭,而且畫出的線不能跟別的線或者自身相交,但可以是任意的直線或者曲線。——譯者注程序的締造者,則認為簡化雙方決策樹的方法,即他們做出貢獻并完善的方法,也許在大約20年后能用于得出國際象棋的最優(yōu)策略,即完成強解決。馬克西姆·瓦西耶–拉格拉夫,自菲利多爾(1726—1795)后最優(yōu)秀的法國棋手,認為最優(yōu)策略會導致平局。

對于英國跳棋來說(跟法國跳棋很相似,但它用的是8×8的棋盤),加拿大阿爾伯塔大學的喬納森·謝弗團隊開發(fā)的Chinook程序從2007年開始就提出了強解決方法。這個程序還由此證明了先手至少也能打成平局:如果Chinook的對手犯錯的話,那么Chinook就能贏;如果對手完美應對的話,那么就會打成平局(見第5章)。對于圍棋來說,2016年AlphaGo已經完成了弱解決。

上面提到的游戲都是所謂的完全信息游戲:玩家沒有隱藏任何信息,游戲中也沒有隨機性。紙牌游戲(勃洛特勃洛特(belote)是法國流行的牌類游戲,只用32張牌,跟橋牌有相通之處,但要簡單得多。——譯者注、撲克之類)的性質就完全不同:一來,在發(fā)牌的時候就有隨機因素,我們拿到的牌可好可壞,攥著一手壞牌基本上就贏不了;二來,有關牌如何分配的信息,每個玩家都只知道一部分,而且不知道對手拿到了什么牌。但我們還是可以討論這類游戲的弱解決和強解決。如果一個程序能在足夠多輪(足以平衡運氣好壞)的游戲中打敗所有人類玩家,那么它就完成了游戲的弱解決。如果一個程序再沒有改進的余地,也就是說對于任意在想象范圍內的玩家,如果它在輪數足夠多的游戲中都能勝利或者打個平手的話,那么它就完成了強解決。2015年1月,加拿大阿爾伯塔大學邁克爾·鮑林領導的研究團隊發(fā)表了一篇論文,講述了如何強解決一種人類玩家眾多的撲克變種:一對一限注德州撲克(Heads up limit Hold'em,以下簡稱HULHE撲克)。這是德州撲克的一個變種,只有兩名玩家,對下注也有限制(見框1)。

1.德州撲克

《007:大戰(zhàn)皇家賭場》讓德州撲克大受歡迎。在電影里,詹姆斯·邦德用一手同花順(黑桃45678)打敗了對手的葫蘆(三條A和一對6)。在德州撲克每一局開始時,每位玩家都會接到兩張只有自己能看到的底牌,然后會有五張牌逐漸被發(fā)到牌桌上。

首先發(fā)三張牌(“翻牌”),然后發(fā)一張牌(“轉牌”),最后發(fā)一張牌(“河牌”)。每位玩家用手里底牌的兩張或一張,或者一張不用,與臺上五張牌中的一部分湊成一手一共五張的牌,而且要組成最強大的牌組(從弱到強是一對、兩對、三條、順子、同花、葫蘆、四條、同花順、同花大順)。游戲開始時的強制下注構成了彩池;然后,在牌桌上的公用牌逐步被翻開時,玩家可以放棄(就此輸掉之前下的注)、跟注或者加注;在加注完畢后,沒有退出的玩家亮出各自的底牌(“斗牌”),誰的組合最強,誰就贏得整個彩池;在平手的情況下,彩池也會被平分。

在加注階段用到的術語如下。

蓋牌(fold):認輸并放棄已下的注。

跟牌(call):追加下注,使得總下注與臺面最大的下注相等,這樣才能留在牌局中。

加注(raise):追加下注,使得總下注超出其他玩家的下注,其他玩家只能蓋牌、跟牌或者加注。

全下(all-in):將手頭所有籌碼用于追加下注;在限注德州撲克中,開局就限定了每位玩家能下注的最大數目。

德州撲克有很大的運氣成分,但有關撲克的電影讓人印象深刻的通常是那些賭桌英雄的推斷能力、控制表情以免泄露天機的能力和夸張演技。在所有電影中,雙方的最后一手都強得不像話。

主站蜘蛛池模板: 梁河县| 桐乡市| 韩城市| 泉州市| 平遥县| 沙洋县| 徐水县| 十堰市| 吴堡县| 白沙| 郸城县| 贵德县| 江西省| 红河县| 高淳县| 大连市| 通州市| 东台市| 扬中市| 杨浦区| 塔河县| 太湖县| 金秀| 上栗县| 闸北区| 星座| 时尚| 乐陵市| 定远县| 和顺县| 阳西县| 宁德市| 通道| 巴南区| 南溪县| 富民县| 马鞍山市| 永定县| 莎车县| 余庆县| 柘荣县|